Return to The Java 3D FAQ

Java 3D Volume Rendering

I received the following from Doug Gehringer at Sun, who asked me to post this information here - Steve

To download these zip files, you may have to hold the shift key when clicking on the link.

Here is the program and data files for a Java3D Volume Rendering demo. The program shows several different volume rendering algorithms and the data files show how these algorithms work on medical and siesmic data.

The program and some basic data files are in:

Note that the 3D texture mapping cases will probably only work under Solaris (Windows OpenGL doesn't support 3D texture mapping yet). See the README for more information.

Volume Rendering is an intense user of CPU and graphics resources. Try out the small data files included in VolRend990524.zip first:

        cubes64.vol     : test data, 64x64x64, 8-bit volume
        cubes128.vol    : test data, 128x128x128, 8-bit volume
before you download the larger cases:

        CThead.vol      CT scan of human head, 256x256x113, 16 bit data
        CThead.vrs      CThead.vol, intensity map, initial view

        MRbrain.vol     MR of human head with skull removed, 256x256x109, 16 bit
        MRbrain.vrs     MRbrain.vol, intensity map, initial view
        MRslice.vrs     A 3D texture mapped "slice" through MRbrain.vol

        segy256.vol     Oil and Gas dataset from Segy file, 256x256x256, 8 bit
        segy.vrs        Segy Oil and Gas dataset, segy256.vol

        segy128.vol     Smaller version of segy256.vol, 128x128x128, 8 bit
        segySmall.vrs   Smaller version of segy.vrs, segy128.vol

On Solaris, you will need an Elite3D for the larger data files. Be sure to get the latest version of OpenGL and set the environment variable AFB_IMM_TEXTURE to set the best performance (you should see the message "ogl_afb: accelerate texture in immediate mode" mixed in with the output from the program).

I'm interested in hearing how well this program runs on PC graphics cards. Please drop me a line at ddg@west.sun.com if you find a PC card which can run these pretty well.

Doug Gehringer
Sun Microsystems

Return to The Java 3D FAQ