Does anyone know if/when more than 2 textures per rendering pass will be supported by consumer level hardware? One often wants shadows, bumpmaps, AND reflections on an object.
Why do glDeleteLists() and glDeleteTextures() take their parameters in opposite order (i.e. one is number,base and the other is base,number)? I can never remember which is which
I’m not so sure you guys (richardve & XBCT) are right about the Geforce ultra cards. For whatever reason, it’s impossible to find actual statistics on Nvidia’s web site (there is a flashy animation with more music than content, though) or anywhere else for that matter. But I’m pretty sure I read somewhere 1 gigapixel / 2 gigatexel per second performance, which would indicate to me 2 textures per rendering pass.
I’ll have to look into the Radeon to see if it can do 3 textures per pass. It would effectively double it’s performance as compared with the Nvidia cards if that’s what I’m using it for.
As I understand it, there’s a difference between “per clock” and “per pass”. The “clock” number is the number of textures you get “for free”. The “pass” number is the number of textures you can composite together before bunging them out to the framebuffer - better performance (less memory bandwidth required) and more blending flexibility.
Snippet from the NVIDIA performance FAQ:
“Although performing 2 texture multitexture may be more expensive than a single texture on GeForce 256 and Quadro, it is still much cheaper than performing another pass. And under most conditions, GeForce 2 GTS can perform dual-texturing at the same rate as single-texturing.”
I guess the same holds for GF2, so although 4x multitexture is slower than 2x multitexture, it’s still much faster than doing 2 2x passes and blending in the framebuffer.
Hope that made some sense… man, my writing sucks tonight…
Geforce2 supports 2 multitexture units.
However, it has 4 separate pixel pipelines, which means it draw 8 texels at once. This still means that you can only use 2 textures per pass, though.
I know because I have one and I have tested it.
Radeon supports 3 multitexture units per pass, but I think it only has 2 separate pixel pipelines, so it can draw 6 texels at once.
In some cases, where the program can use 3 textures and save a rendering pass, Radeon will be faster. In other cases, where only 2 textures are needed at once, the GTS will be faster.
The next generation of NVidia graphics cards will probably have 4 texture units.