What's the difference between Java 3D and OpenGL/Direct3D/PHIGS/, etc? Java3D
is another 3D programming API that exists on a similar level to OpenGL, Direct3D,
PHIGS and similar systems. It is designed to use hardware accelaration wherever
possible based on the underlying graphics architecture of the OS. That is, J3D
provides a 3D rendering API for the Java language, but at the same time it may
use OpenGL to do the interface to the hardware. J3D does not require direct
hardware device driver support like the other APIs because it could rely on
them to build its functionality. Sun is encouraging graphics board vendors to
provide native implementations of J3D, but nothing has beenseen yet.
For unix users Sun's Java3D is implemented on top of OpenGL. For Win32 users
Java3D is available for OpenGL and Direct3D.
There are Java bindings to the other APIs. GL4Java is an OpenGL binding written
in Java.