Jump to content

  • Log In with Google      Sign In   
  • Create Account


#Actualphantom

Posted 07 July 2013 - 08:47 AM

I just wish they lifted the 16K texture size limit at the same time as they introduced tiled ressources, wonder if they'll do that in DX12, would be really nice to just load up those high res 64-128K textures and not have to manage them.


OK, so lets do the maths...

32k => 32768 bits
64k => 65536 bits
128k => 131072 bits

Of course we now need to square those numbers
32k => 1,073,741,824
64k => 6,294,967,296
128k => 1,721,115,869,184

But that's still only 1 bit per pixel, so lets make it RGBA8, x4 to get it into bytes, then /1024 a few times to get the number sane :
32k => 4,294,967,296 bytes => 4.0GB (BC3 -> 1GB, BC1 -> 0.5GB)
64k => 25,179,869,184 bytes => 16.0GB (BC3 -> 4GB, BC1 -> 1.0GB)
128k => 68,719,476,736 bytes => 64.0GB (BC3 -> 16GB, BC1 -> 4.0GB)

Of course that is only the top level mip, I think the maths is you need to add another 1/3 on for all the mip levels (so 5GB+, 21GB+ and 75GB+ all in).

Now, my GPU (AMD HD 7970 ) has 3GB of memory, the largest memory on a single GPU is 6GB on something like an NV Titan.

So, there is a slight size issue with trying to load textures that big into VRAM AND most of it will wasted as you simply won't be looking at the data.

16K with PRT is a sane solution, even if it does involve a bit more work.

#1phantom

Posted 07 July 2013 - 08:47 AM

OK, so lets do the maths...

32k => 32768 bits
64k => 65536 bits
128k => 131072 bits

Of course we now need to square those numbers
32k => 1,073,741,824
64k => 6,294,967,296
128k => 1,721,115,869,184

But that's still only 1 bit per pixel, so lets make it RGBA8, x4 to get it into bytes, then /1024 a few times to get the number sane :
32k => 4,294,967,296 bytes => 4.0GB (BC3 -> 1GB, BC1 -> 0.5GB)
64k => 25,179,869,184 bytes => 16.0GB (BC3 -> 4GB, BC1 -> 1.0GB)
128k => 68,719,476,736 bytes => 64.0GB (BC3 -> 16GB, BC1 -> 4.0GB)

Of course that is only the top level mip, I think the maths is you need to add another 1/3 on for all the mip levels (so 5GB+, 21GB+ and 75GB+ all in).

Now, my GPU (AMD HD 7970 ) has 3GB of memory, the largest memory on a single GPU is 6GB on something like an NV Titan.

So, there is a slight size issue with trying to load textures that big into VRAM AND most of it will wasted as you simply won't be looking at the data.

16K with PRT is a sane solution, even if it does involve a bit more work.

PARTNERS