- Aug 28, 2019
Again, not being hostile.. but lets not forget how this started:We might define culling differently? If the number of triangles that the GPU needs to process for a given scene is reduced, culling is occuring. There are multiple ways of achieving this such as off-face culling but also if several triangles are reduced to a single pixel in the final rasterized image (which is one of the primary ways that EU5 seems to do polygon reduction) all those triangles do not need to be processed, i.e. culling. This allows the use of raw complex source geometry which is great for development but also increases the polygon count of objects that you move close to.
They used 8K source data on that SSD, for example the statue consisted of 24 8K assets. The assets are then streamed into VRAM on a per view basis and in a compressed format in VRAM (they did not state the compression ratio except that it was less than a fully compressed file on your storage device so I would assume 3x or something like that) was 768MB or in other words a single view used roughly 2 GB of uncompressed assets to render a frame. Since the compression is better on your storage device it probably means that around 0.5GB of compressed data needs to be read from storage, uncompressed, sorted and moved to VRAM in parts of a second - and that probably represents something in the vincinity of 100 individual files (really roughly - but it is not 10 and not 1000 files). That requires SFS or the PS5 I/O and an SSD to achieve.
That last sentence was my whole point in this thread - not sure anymore if we disagree or agree tbh. I am confused...
The key point of the I/O complex in the PS5 is exactly what MS is trying to achieve through SFS, DirectStorage etc, i.e. to expand the usable VRAM pool to increase the quality and number of assets that the GPU works with in a given virtual environment. That is also what they used to achieve the high amount of 8K textures in the UE5 demo since a normal graphics card would run out of VRAM very fast with so many high quality assets.
They are not using 8k assets at runtime.. The key to UE5 is not anything similar to what SFS is doing. Culling is removing something from an image; you can't scale by simply removing things.. that's not what scaling is, and scaling is not a type of culling. You repeated this idea that UE5 depended on streaming tons of 8K assets when it's not true.
You also described.. culling.. not scaling, in your post I was responding to. They aren't doing some "pre-raster step to determine which geometry to send to the GPU".. they are, scaling.. both in the engine way before the game is even put on the console, and at runtime.
And yes, it's still insanely detailed.. a ton of data.. and requires a fast SSD to hit the detail level of the UE5 demo running on PS5. But it's not streaming a bunch of 8k assets.. that's not why it needs so much memory for the view. It's extremely efficient compared to what it is losslessly scaling.. it's just also starting at such detail, that the scaled object/maps/textures are still an insane amount of data if you truly want 1440p levels of detail w/ that technique. If you had half the SSD speed, instead of their 768MB streaming pool, you'd need 1.5 GB or so.. but that would only be a small loss of detail on the same amount of RAM because the vast majority of the RAM pool is dedicated to the view. UE5 demo is likely going to look nearly identical to the naked eye even with an SSD 1/3rd the speed of Sony's, w/ a 16GB of VRAM system.