Obli
04-12-2005, 10:28 PM
We all know the advantages of texture atlases and bigger batch sizes.
I always liked the idea of having multiple 2d textures stored in a 3d texture, however as confirmed in a nv whitepaper, the mipmapping would screw up everything. By contrast, mipmapping is not a real problem with 2d atlases.
Now, I've already seen games with 1Kx1K textures so, since ATi cards handle only up to 2Kx2K this is bad news to me. A 2d atlas would store only up to 4 textures. NV is somewhat better.
The point is the fragment math I need to implement to re-map the texcoords. While I hardly believe it would introduce a serious performance drop, I don't like it.
The more I think at it, the more I convince myself it would be great if 3D textures could be mipmapped on (s,t) only, leaving (p) as a "texture slice selector".
Is there a possibility someone is evaluating this feature? What implications does it have on hardware? (i.e. does the hw really care if mipmaps are not resized "in the standard fashion"?)
This could sound strange, but after ARB_npot and the rumors on conditional_render I don't see this as so much strange.
I then realize maximum 3d texture size is 512³ on most video cards, but I believe this is a pixel-limit (so I believe I could also have 1024x1024x128, 2Kx2Kx32...).
Does someone have experience with those topics?
I would appreciate to see some feedback, at least to make up my mind.
I always liked the idea of having multiple 2d textures stored in a 3d texture, however as confirmed in a nv whitepaper, the mipmapping would screw up everything. By contrast, mipmapping is not a real problem with 2d atlases.
Now, I've already seen games with 1Kx1K textures so, since ATi cards handle only up to 2Kx2K this is bad news to me. A 2d atlas would store only up to 4 textures. NV is somewhat better.
The point is the fragment math I need to implement to re-map the texcoords. While I hardly believe it would introduce a serious performance drop, I don't like it.
The more I think at it, the more I convince myself it would be great if 3D textures could be mipmapped on (s,t) only, leaving (p) as a "texture slice selector".
Is there a possibility someone is evaluating this feature? What implications does it have on hardware? (i.e. does the hw really care if mipmaps are not resized "in the standard fashion"?)
This could sound strange, but after ARB_npot and the rumors on conditional_render I don't see this as so much strange.
I then realize maximum 3d texture size is 512³ on most video cards, but I believe this is a pixel-limit (so I believe I could also have 1024x1024x128, 2Kx2Kx32...).
Does someone have experience with those topics?
I would appreciate to see some feedback, at least to make up my mind.