Solutions to the texture problem

There are several 3D chip developers who saw this problem coming. And there are already solutions to this texture problem. Lets sum them up:

1. S3: S3TC.
2. 3DFX: FXT1
3. PowerVR: VQTC and Deferred rendering.
4. DirectX: DXTC.
5. 3Dlabs: Virtual Texturing.
6. Adding more and faster RAM onboard: all major video card manufacturers
7. Embedded ram

1 - 3 Texture Compression
The first three all use a kind of compression technique, in order to use less memory. If you want to know more about Texture Compression (S3TC, VQTC and DXTC), I recommend reading my article about texture compression. 1 and 3: Texture compression is a way to solve the problem, but not the best way. While the compression rate is very good and thus saving precious ramspace, texture compression does deliver artifacts. Textures are blurrier and the quality is not that good. However TC does solve the problems around bandwidth and RAM shortage. I haven't looked into 3DFX's solution, as I do not own a 3DFX based V3 or V5 (Dave did have a look into 3DFX's FX1: http://www.beyond3d.com/conference/3dfx/fxt1). However you can assume that any TC technology would give image quality artifacts. There is no way that TC will give the same quality as with no TC. Nothing comes for free in 3D (Kristof Beets).

3. PowerVR: VQTC and Deferred rendering.
The PowerVR based cards (Neon 250 and Kyro) can use VQTC. This is also a way to compress textures, just like S3TC. But this is not the only solution PowerVR came up with. Due to the deferred rendering process, the bandwidth usage is far less as normal, traditional rendering techniques. (http://www.beyond3d.com/reviews/hardware/neon250/). Deferred rendering is finally showing off. As we see great limitations in the traditional way of rendering, PowerVR based cards (until now the only deferred rendering cards) only use Sdram or Sgram. DDRam isn't needed. Rumors are that other companies are looking into deferred rendering as well. The advantages are huge.

4. Virtual Texturing
VT is one of the subjects I want to discuss in detail here, so more about that later on.

5. Adding more and faster RAM.
This is a great solution, till a certain point. If game engines were going to use bigger textures and more of them, even 128MB of onboard ram would not be enough. On top of that there is the bandwidth problem.

Why does the GeForce II not deliver the huge performance increase what we would expect? The 3d core has gotten a boost of 67% (80/120), so why aren't the games running up to 67% faster? Well the memory can't deliver. When you are going to overclock the 3D core, the performance increase is minimal. When you overclock the ram of the GeForce II, the performance increase is huge.

The news that faster DDRAM is on its way will boost the GeForce II even more. But this all comes at great cost for the consumer. And there will be a limitation somewhere down the road. As we continue to expect to run games at resolutions above 1024*768 there will be the bandwidth problem somewhere down the road. Going to 64-bit color (Carmack is thinking about this…) will stress the bandwidth even more.

6. Embedded ram
This certainly fixes the bandwidth problem. Only the shortage of ram problem will even get bigger. We still have to see a chip manufacturer that can cram 64 or 128MB of ram into the 3dcore. Maybe there is a solution in embedded ram and an external framebuffer. I don't know if this is possible, but let me rant here for a moment.

Pixelfusion just introduced a new 3D chip with 24MB of embedded ram. Imagine 4 chips working in sync with each other, enabling a 96MB frame buffer that has a huge amount of bandwidth. Also, an external framebuffer of 64MB DDRAM would be enabled if possible. So in the end you would have: (4*24)=96MB + 64MB = 162MB The costs will be huge, but the first part of the ram would be very very fast enabling 96MB, backed up with another 64MB to have space enough to handle enormous textures.

While this is at the moment only dreaming and I don't know if it would be possible to work in such a way with 4 chips and another frame buffer, at the end the costs would be so high that nobody would buy your card.

Carmack had made a plan update a while ago; telling the world that virtual textures are the way to go. I will try to explain what they are and why virtual texturing is one of the best ways to solve both the bandwidth and ram issue.