Java 3D

Java 3D is a class library of Java classes for creating, manipulating and displaying three-dimensional graphics within Java application programs and applets. With Java 3D can therefore modeled three-dimensional objects, rendered, and the behavior and the view are controlled by a Java program.

Java 3D has been developed since 1997 by Sun Microsystems. Version 1.0 was released in December 1998. Version 1.4 has been available since March 2006, when important feature here is the possibility of shader programming for current graphics hardware highlight. The current version is 1.5, the rendering pipeline JOGL introduces, among others, on all platforms.

After Sun had the further adjusted in the meantime, the library has been released as open source since the summer of 2004. Currently, versions for OpenGL for Windows systems and various UNIX platforms available, as well as a version for Direct3D on Windows 9x, Windows 2000 and Windows XP. For Mac OS X there is a version for JDK 1.4 ( to 10.3), the JDK 1.5 for Mac OS X ( 10.4) already contains Java 3D ( version 1.3 ). Java 3D version 1.5 is available for Windows, Linux, Solaris and Mac OS X.

Scene graph

Java 3D encapsulates the functionality of the underlying OpenGL or DirectX interface in an easily understood object-oriented program design based on a scene graph. In the scene graph of the logical structure of the objects to be mapped to a similar structure, tree-like structure, which consists of definitions of transformations and geometry data substantially. The so- structured view of the scene allows convenient handling of the objects. The integration of a sound background in the scene graph is possible.

The library implements properties and methods for the representation of a scene and uses for their representation exclusively pre-implemented and adapted to the specific operating system function libraries. So that the video hardware used in the system is used to display all the objects produced. Potentially, therefore, the achievable rendering speed about as high as in direct programming with C and OpenGL or Direct3D. It is therefore possible to create powerful 3D graphical environments, which can be visualized in the GUI.

A direct access to OpenGL or Direct3D functionality is not provided by Java 3D. Performance of these interfaces, which are not encapsulated by Java 3D, can thus not be used by application programs on the basis of Java 3D. The ongoing development of video hardware, this has repeatedly led to the newly supported features in Java 3D were only delayed or not available.

Coordinate system

The orientation of the axes in Java 3D is a right-handed coordinate system. In the nomenclature of Java 3D as the space spanned is called the Virtual Universe. Only this coordinate system is provided, there is no way to assign a different orientation of the axes.

The so-called locales objects make it possible to use a very precise coordinate system by the coordinates that are implemented as a 256- bit fixed-point numbers, it is possible to calculate from the atomic level to the macroscopic scale all objects in a coordinate system. In order to use the API for many scientific applications is simplified.

423030
de