Ali Brown
253 posts

Ali Brown
@AliBeeGfx
Senior Technical Director, Graphics & Procedural Tech at CIG (Star Citizen) - my views are my own and not CIGs. Won’t answer questions about SC dates/schedules!
Wilmslow, England Katılım Kasım 2009
129 Takip Edilen492 Takipçiler

@SoftEngineer For extra responsiveness we mimic both pupil and cones/rods by having pupils give +/- 2 stops very rapidly (ensures quick camera rotations tend to be exposed correctly), then cones/rods giving a much larger range but much slower (but faster than reality).
English

Finished working on automatic exposure for my WebGPU graphics engine.
It's also often called "eye adaptation".
Details:
* Applies metering mask (same as Unreal), pixels on the edges affect adaptation less
* Histogram-based, tolerant to outliers and different lighting conditions.
* Reuses first mip of bloom downsampling pass to build histogram. This makes it very stable and cheap, we already perform filtering for bloom.
* Separate UP and DOWN adaptation speeds, mimicking human eye behavior
* Hybrid adaptation curve: linear for large distances and exponential on approach (same as Unreal)
* Extremely wide luminance range from 0.001 nits all the way up to 32,000 nits.
* Manual exposure compensation parameter in f-stops for artistic control. This is applied after adaptation to control overall brightness of the image.
English

@SebAaltonen Going with DDA march? Rasterising a half-cube/rect per brick? Or something more funky like scatter atomic UAV writers, or tile based?
English

@redorav @vassilis3D @moguzhan_k @aortizelguero For Star Citizen we use a combination of techniques for world positions. World space calculations are performed in 64bit, however objects are stored relative to their frame of reference (planet, spaceship, etc) with 32bit or 64bit, and rendering is 32bit camera relative.
English

I have a new article! It took a long time but I think it was worth it, hopefully you'll enjoy it too. elopezr.com/the-art-of-pac…
Many thanks to @vassilis3D, @moguzhan_k and @aortizelguero for the help and encouragement
English

@KostasAAA We had a bug where our tiled lighting shader broke on some new GPUs after working fine for years and it turned out to be due an operation the compiler repeated twice, once with and once without FMA, which we then compared and precision difference broke the logic.
English

This post discusses floating point accuracy and how the fused multiply-add instruction can improve precision slightly using one rounding operation compared to the 2 used by separate mul and add instructions docs.nvidia.com/cuda/floating-…
English

@miketuritzin @vassilis3D, your wonderful website still being noticed :)
English

Ran across this great article on sampled SDFs that has *great* interactive WebGL illustrations that work really well for building intuition on how this works.
This technique works for SDF-based text rendering or baking of 3D geometry like in my project.
renderdiagrams.org/2017/12/28/sig…
English

@valdagher @Morphologis @RobertsSpaceInd It’s actually relates to the shadows being centered on the camera, and will be massively improved on the next release.
English

@Morphologis @RobertsSpaceInd I'm assuming that 1 second interval "tick" of the shadow movement (seen on the clouds ) is the day night cycle?
English

Stunning... Pyro is a visual feast, it's hard to convey just how beautiful it can be. @RobertsSpaceInd #StarCitizen
English

@Darjanator @DanM3D While RT opens the door for reflections, the quality of characters would be lower than the main view, and only some users would have it enabled, so personally I’d prefer we went harder on the camera approach and had it dynamically zoom in and have UI to show health and such.
English

I come with more gifts! I was fixing some bugs yesterday on Polaris with the fabled mirrors (which now are more like mirrors and more performant) while doing that I took a trip across the corridor to throw down an interactable Chess board I made while on props team! #StarCitizen

English

Hour long live gameplay intro for Squadron dropped :) The crazy thing here is all the cinematics are in game with actual ships! youtu.be/1H-0x4xk2Xk?si…

YouTube
English
Ali Brown retweetledi

@Kirby0Louise Requires way too many people to put out content on a consistent basis. Look at how big Bungie is and they been delivering new expansions and stuff consistently. I don't consider any game that doesn't deliver new content/expansions live service. It's just multiplayer with updates.
English

@SebAaltonen @LeoVasanko All meshes are 16bit integer, which is enough for all our tiny and massive meshes.
Inputs to renderer subtract camera position and can then happily cast down from 64f to 32f which is generally enough for any scale/scene.
English

@LeoVasanko Did they do fp64 or int64? fp64 isn't enough for simulating space, since it has only 1 million times more range at 0.3cm precision than int32. fp64 is just enough to present one solar system at this precision, but not more.
English

@SebAaltonen @LeoVasanko Any code working across zones (eg random game code) uses 64bit floats for operations, but that has no real perf cost as that kind of code is typically branch heavy and not “hot” or suitable for vectorisation.
English

@SebAaltonen @LeoVasanko We only use floats, but a mixture of both 32 bit and 64 bit depending on the scenario.
Each zone (planet/spaceship/spacestation) automatically picks the best format based on its size. Most performance crucial code operates within a single zone at 32bit.
English

@SebAaltonen We do space and day/night on planets in 16f linear. Scene EV varies from 14 to 2 so 12 stops (x4096). Starlight is much darker in reality, but the exposure/tone-mapping/display tech can’t handle it, just like real cameras! Human eyes+brains are VERY good!
youtu.be/nWm_OhIKms8?si…

YouTube
English

@SuperMacBrother Sometimes people say we should give you the option, but aside from the dev time involved, I’m very cautious of something that could be unfair to those with high power machines.
English

@SuperMacBrother It’s not an impossibility for the future if we could also blur the outer view to obscure some shortcuts we’d need to take. The big problem is some systems like clouds and fog aren’t trivial to draw twice without almost double the cost.
English

@AliBeeGfx hey Ali, quick question regarding the updated scopes/sights for star citizen. Love the new look, but wondered if the whole screen will zoom in when peering through scopes with magnification? Looked this way on the demo but wasn’t sure if it will during fps
English

@SuperMacBrother Yes, as with the vast majority of games. In the games that offer two zoom levels at once, you either have a big frame rate hit at the most crucial moment, or a much simpler visual style/engine.
English

@Lam0rakWasGone Very. We only got it to the stage you see here a few days ago, so there’s still testing and bug fixing to do, plus we’re missing some VFX. But you won’t need to wait long.
English

Really proud of the tech we’ve shown at Citizen Con! Multi scale water simulation, voxel fire simulation, global illumination prototype, and sever meshing!
Star Citizen@RobertsSpaceInd
Making waves 🌊 Shown during The Future of StarEngine panel at #CitizenCon2953
English




