Any demonstrations of 3D textures (or *gasp* GAMES?)

Guden Oden

Senior Member
Legend
3D textures have been available in hardware since the geforce 3 generation, that's four or five years now, but absolutely *nobody* seems to be using them for anything. Ok, so they're huge memory hogs with no good 3D texture compression formats, but surely there has to be some fringe uses for them, right?

For example, the holographic screens in half-life 2 is a couple duplicated layers of a standard transparent texture. If it instead had used a single 3D texture one texel deep and stretched an equivalent amount into the depth direction as the game does now with standard flat polys, I think the effect would have been more successful, especially when up-close. It might even been faster to draw...

Of course, lacking any actual implementations of 3D textures, I don't know what they'd look like when transparent or how fast they'd render... Maybe my idea is completely bogus, who knows. :p
 
According to a few presentations, NVIDIA seems interested in making mipmapping more flexible with 3D textures in the future, so that texture atlases can be done with them. That means a lot of games could be using 3D textures then, since they'd be a nice performance advantage (although it depends on whether compression is also available, I guess)
I'm not aware of any "serious" game using them much currently, though.

Uttar
 
Uttar said:
According to a few presentations, NVIDIA seems interested in making mipmapping more flexible with 3D textures in the future, so that texture atlases can be done with them. That means a lot of games could be using 3D textures then, since they'd be a nice performance advantage (although it depends on whether compression is also available, I guess)
I'm not aware of any "serious" game using them much currently, though.

Uttar

I don't know what the current implementation is like, but we looked at using them to animate particles on our Xbox game, the problem was that reading from one was 10x more expensive than reading from a standard texture. I haven't benchmarked them on anything since.
 
Murakami said:
If i remember well, Unreal 2 and Tron 2 use 3D textures
Use them for what? Don't remember ever seeing anything in U2 that looked that esoteric... It was all just standard multitexturing from what I could tell.
 
I'm sorry, i don't know: the developer that i referred to is called "Fek" and is a 3D Programmer of Black&White Studios, Lionhead Ltd. I remember one of his posts in a forum whose name is "NVITALIA", but...
1) You must know italian (my speech);
2) I'm trying, but not able to find the old database (probably it's gone).
EDIT: here's that archive: nothing more than the games that i already mentioned (Fek only speaks about "lighting algorithms")... :(
 
Guden Oden said:
Use them for what? Don't remember ever seeing anything in U2 that looked that esoteric... It was all just standard multitexturing from what I could tell.
How exactly do you think they will look? 3D textures are used mostly as look up tables in shaders like Humus already said. As I understand you, 3D textures should automaticly render as volumes, but they don't. If you render a triangle or a quad with a 3D texture the result will still be 2D texture sliced out of 3D texture. You still have to slice the volume and blend results together. Or you could use a shader to raytrace through the volume.
 
Not sure about the games side, but 3D textures are used extensively in the medical imaging field:

ATi Dev Sample
The greyscale rendering is better if modified to use the gl Min Max extension for MIP rendering, but its a nice quick demo of useful 3D texturing. Uses blended slices througth the texture volume.

OpenQVis
Very full featured visuliser using slices again.

Acceleration Techniques for GPU-based Volume Rendering
This describes the techniques for volume rendering using pixel shaders to do ray casting. There arent any downloadable demos of this type of rendering that I know of though. The first section of this also gives you a brief description of how the volume slicing is used to render 3D textures and therefore why they arent used as a quick fix for certain techniques in games like rendering holograms. (esp. if they are animated)
 
Didn`t NV have a proprietary compression algorithm for volume textures?I recall some VTC texture formats being exposed.Doom3 supports 3D textures, or at least the engine knows of the extension..
 
Guden Oden said:
3D textures have been available in hardware since the geforce 3 generation

Actually 3D Textures were available in hardware before the Geforce 3, the original Radeon supported them :) There's a sample app for the original Radeon that uses volume textures for volumetric lighting.
 
Morgoth the Dark Enemy said:
Didn`t NV have a proprietary compression algorithm for volume textures?
AFAIK they just chop the texture into layers and use DXTC on those. It's not rocket science.
 
Simon F said:
Morgoth the Dark Enemy said:
Didn`t NV have a proprietary compression algorithm for volume textures?
AFAIK they just chop the texture into layers and use DXTC on those. It's not rocket science.

What a half-assed lazy gimp approach to compressing 3D textures!

With a decent algortithm they'd be much more accessible.
 
Dave B(TotalVR) said:
What a half-assed lazy gimp approach to compressing 3D textures!
Hey! Don't slander "the gimp". It's quite a good paint package, IMHO :)
 
Back
Top