3D TEXTURES ALL THE WAY

If your lucky enough to have hardware which accelerates OpenGL 1.2 functions, you will definately have tried out its 3d texture parameters. This is definately the way of the future, and all IHV’s should try on making that available to the consumers asap. A lot of industry names are pushing for the whole subdivisional/LOD of models to be integrated into the hardware (some form of GPU), but I feel that is a waste of time. That sort of thing would be great for todays techology, but not for the future. I think the future of graphics lies with volume representation of data, and your ability to manipulate that data in a similiar way todays 3d programs work (Maya/MAX). Basically I’m saying death to triangles (even though they are presently the fastest known way to draw graphics) and bring on the volume rendering.

For the immediate future (1-2 years), I think reflections/shadows are something which I feel OpenGL is fairly lacking in, something which is dying for improvement. The Stencil buffer is presently the “right” way for doing reflections, shadows, and such, which looks ok, however I think that the ARB can add a lot more features to the stencil buffer system than they presently have.

I hope the IHV’s are just realizing the potential with which game developers can use fully acclerated stencil buffer functions to their advantage (most stencil functions on the majority of cards are more of a mini-gl than anything).

Think how many tricks you can use now with the stencil buffer, and how many new tricks would be available applying those and new concepts to 3d textures.

Interesting - what hardware are you using, that accelerates 3D textures? I would have thought a lot of current hardware could do it, given driver support - after all, it’s really just trilinear filtering, which everybody can do. Mipmapped 3D textures might
take a bit longer though.

I agree that stencil support is good, but not that the stencil technique is “the” way to do shadows. Quite apart from anything else, finding silhouettes is going to be a pain for subdivision surfaces, and a MAJOR pain for your volume models if they ever take off. The degenerate cases where the camera is inside the shadow volume is also messy to handle.

I much prefer the shadow map approach - it’s an SGI extension at the mo, and I think Mark Kilgard at NVIDIA has implemented it using NV_register_combiners_EXT, but I’d love to see this functionality make it into the next GL spec. No application-side geometry-crunching, only one extra rendering pass per light, no degenerate cases (that I know of). Yum.

I believe 3d textures are only a OpenGL 1.2 feature. You could be right in saying that the present consumer hardware would be enough, however I truthfully don’t know what have to go on at the register/driver level, to have 3d textures properly accelerated.

Your absolutely right about finding the silhouettes for objects (I presume you are refering to models which case shadows upon themselves/other models), with LOD in play. Maybe that is where some kind of 3d stencil buffer could come into play, which would eliminate the need to rebuild the silhouettes.

I am going to look into the NV_register_combiners_EXT, I didn’t know that was available.

On another note, I do think that 3dfx is on the right track with pushing their anti-aliased scenes. Now if only they can combine the extentions the GForce256 card has for OpenGL (T&L, cube&bump mapping), we will have real life in a card. Or at least for us nerds.