PDA

View Full Version : 3D texture mapping



yszhang
03-18-2004, 09:29 PM
Using 2D textures mapping of OpenGL, I have fulfilled volume rendering of Medical Volume Data. Then there are few display cards of personal computer to hold out 3D textures. As follows are two 3D images reconstructed by me from 2D CT images.




Now I find that many display cards of personal computer have held out 3D texture. So I want to improve my program with OpenGL 3D texture mapping for the better 3D reconstruction performance. However, I know the OpenGL 1.1 used by me has not 3D texture function.
How and where could I get newer OpenGL version with 3D texture function, or how could I extend OpenGL lib to 3D texture.

Relic
03-18-2004, 11:07 PM
Everything which is not supported by the interface in Microsoft's OpenGL32.dll needs to be initialized like any extension.
If your OpenGL Hardware supports a higher OpenGL version than 1.1 you can call wglGetProcAddress with any additional gl-Function in the versions above 1.1.
That is, just add the glTexImage3D prototype to your program, define a function pointer of that type and do glTexImage3D = wglGetProcAddress("glTexImage3D").
There are extension wrappers which ease the initialization of such functions. Search for the function glh_init_extensions in the NVDIA demos for example.

yszhang
03-19-2004, 03:33 PM
Thanks for your replies.I want to know where I can get NVDIA demos and a free higher OpenGL version supporting 3D texture mapping.

COZE
03-22-2004, 01:25 AM
On http://developer.nvidia.com/page/opengl.html
http://www.ati.com/developer/radeonSDK.html you can find header files and .libs with defines and redefinitions of pointers on opengl functions specified in upper as 1.1 version and extensions. Some of these libs have setup function but usualy you have to call wglGetProcAddress.

I didnt try it but chceck link on opengl.org main page to extglgen OpenGL extension loading library generator03/01/04