| JazzB1987 said: Little question for dummies. Every file can be compressed. (even so it looks/sounds/feels lossless) Cant they just come up with a super algorithm and decrease filesize by 50%? I know it will take a hit on the CPU/GPU performance but still. Can this be the reason for the 64 fits into 32? |
That has been the standard practice for textures for a long time. For screenbuffers it's not so trivial as it's required that they are a fixed size for easy access of individual pixels. Super lossless algoithms are not an option because you don't know where each pixel ends up, and you'll have to unpack a large part of the buffer to be able to work on it. No problem for textures as they are processed linearly, screenbuffers however need random access.
You can pack them into a bitstream, which is fixed size compression by throwing away high frequency detail and packing the rest together with as few bits as possible. (Which is what this thread is about http://gamrconnect.vgchartz.com/thread.php?id=179094&page=1)
To give a very simple example, say you need to store 2 values ranging from 0 to 31. Normally you would use 1 byte each or 16 bits total. But you decide that dividing them by 2 and only storing 0 to 15 is good enough for what you're trying to achieve. (rounding to an even number basically) Those can be stored in 4 bits. Multiply the second value by 16 and add both together, you get a final value ranging between 0 and 255. Which fits in 1 byte. 50% saved.
Now you use half the memory and can still easily calculate where each individual value is located. However every time you want to access or update the real value you need to unpack it from the bitstream. It's not a lot of overhead but since you access the screenbuffer constantly is does add up.
Short answer: Yes.
But it's no super algorithm nor anything new, and it does take a hit on performance. That performance hit might be less than the benefit of being able to fit everything in the faster esram. A 1080p game that previously used tiling might be optimized that way to run faster, at a small loss of fine detail. A 900p game that already fit in esram will still take a performance hit. Maybe less than tiling, but more than going from 900p to 1080p on ps4.







