Which OpenGL 1.2 implementations support MAX_3D_TEXTURE_SIZE greater than 64? ATIs RADEON supports greater textures, but I want to use a Geforce2 Ultra. Are there such OpneGL versions for this GPU?


Well, 3D textures are not supported in hardware on GF2, so no matter what size you use, you will get bad performance…

  • Matt

Which cards support 3D textures by hardware? On my TNT2 it runs very slowly and I hoped the GF2 would be faster. But without hardware support…

Wiz -

The only consumer card that supports 3d texturemapping in hardware right now is the Radeon.

<begin Rumors>

The Geforce3 (NV20) is rumored to be released Feb 27th. It is also rumored to have full hardware support for OGL 1.2, so this would include 3d texturemapping. If it has this and linux support, I will buy one immediately. Matt - I assume you can’t say if it will have 3d texmap support, or you would have. Can you say if linux drivers will be released with this chipset (I’m not even asking you to confirm this release date)? Pretty please?

<end Rumors>


The leaked pdf states that the nv20 will have hardware support for 3d textures.

Originally posted by wiz:
Which cards support 3D textures by hardware?

If you mean - “relatively cheap cards”,
take a look at 3Dlabs Oxygen VX/GVX.


Maybe I’ll have to use the Radeon. The 3Dlabs Oxygen seems to be interesting, too.

Do the Linux driver for the Radeon support GL 1.2 functionality (I need 3D Texture support.) ?

I hope GeForce3 will be released soon.


why you NEED the texture3D support? you can do much without, its just more complicated…

daveperman -

It’s a question of performance. I’m trying to write a Volume Renderer using 3D Textures. It would run without hardware support, I think. But how fast ? I’m looking for a fast alternative to marching cube.

Daveperman -

If you want to do pretty much anything volumetric, it is almost always easier and better looking to use 3d texturemaps. This would include smoke, clouds, fog, ghosts, fire, and tons of other things.

Check out my thesis page:

The bottom picture was done using 3d texturmapping. Compare it in quality to the picture that is third from the bottom. (I used png’s so unfortunately they don’t work on all browsers…if you don’t see the pics, try a different browser).

What sucked is that I had to go out of my way and borrow time on an Onyx to get that to work at a reasonable frame rate.

I look forward to doing that type of thing at home someday

– Zeno

[This message has been edited by Zeno (edited 02-20-2001).]


3D texturing does not do volumetric rendering. It still textures a 2D primitive
positioned in 3D space; it just introduces
another dimension in how to choose the
color for the pixels.

Yes, you’re right. But they can get very handy for volumetric effects… (FOG !!! AARERRRRGGGG!!! NICE FOGGGGG!!!)

Wait, they are no good for fog. Sorry. They are good for dynamic lighting! Yeah, nice dynamic lighting! Really nice and good!

hm 3d texturing is done bether with a 1d and a 2d map… much less memory (when you want to save memory, use 3 1dtextures ) lighing textures are parametric… and most of it you can calculate instead of saving into a texture without problem… (go on ->demos and you find infos bout per pixel lighing on geforce2, severall times…)

its not difficult, its fast (in some demos not, but anyways ), and you dont need all of the memory…

for volumetric fog effects/light effects like in disco’s, its nice… but who need this today, wait for nice hw… one year and it will rock

bgl -

take a look at VolVis

I think it’s an interesting way of using textures, isn’t it?


It isn’t nice for fog. It would still be many transparent faces, and geometry itself can’t be fogged woth a 3d texture. (at least I think).

It can be used for fog. You just have each texel in the texture represent the amount of fog that the viewer will have to see through to that point of space. Then use multitexure to blend that in with the usual texture.


“This sample shows a volume being drawn as textured shells.”
In other words, they’re eating the hell out of their fill rate. You could probably get
the same effect by just uploading each slice
as a 2D texture.

“You just have each texel in the texture
represent the amount of fog that the viewer
will have to see through to that point of
If the texture is actually the SUM of all fog
from the viewer to that place in space, then
you are correct; this will accelerate fog.

Unfortunately, when you move the camera, or
the fog distribution changes, you have to
re-calculate the entire fog volume texture,
which might be more expensive than just
calculating fogging, say, per-vertex. Filling
even a 64x64x64 texture means calculating and
writing 256 k voxels… And each step in
quality multiplies that by 8.

Dynamic lighting using 3D texturing seems to
have the most going for it, because the
texture doesn’t change, and it can be very
low resolution for still getting good results.
But of course occlusion is still an issue.

I know that it is inefficient, I was just pointing out that in theory it can be done.



you’re right. I would get the same effect by uploading each slice as 2D texture. But if you want to rotate the volume you have to use the trilinear interpolation of 3D textures. 2D textures use just bilinear interpolation. This works fine if the viewplane and the slices are parallel to each other. But if you rotate the slices in the volume, you have to calculate new 2D textures. With 3D textures the graphic hardware does this job.