1.6 Summary | JAVA 3D Programming | Chapter 1
1.6 Summary
Straddling the worlds of content creation and
scripting on the one hand and low−level pipeline−based rendering programs on
the other, the Java 3D API fills an important gap in 3D graphics APIs. With
careful design and implementation, performance of Java 3D applications can
rival native OpenGL applications and will exceed JNI−based Java wrappers over
OpenGL.
As a Java API, Java 3D is relatively mature, first
appearing at the end of 1998. But compared to OpenGL, which first appeared in
the early 1990s, Java 3D is still an upstart. For example, OpenGL contains an extension
facility that allows vendors to write proprietary extensions to the API—a
feature that is not yet implemented in Java 3D, though it is rumored to be appearing in
Java 3D 1.4. The Architecture Review Board (ARB) controls additions to
OpenGL—while Java 3D may be placed under the Java Community Process (JCP),
allowing experts and vendors to influence the direction of the API.
Java 3D is the right choice if you want to program
3D applications using Java. Just as Java introduced many useful abstractions
over C++ and includes a rich library of standard APIs, Java 3D introduces
abstractions over OpenGL/Direct3D and includes many features that will bring
your applications to market faster. Java 3D can be frustrating at
times—abstraction is not always a good thing—but it will save you time as you
leverage years of API development by Sun’s engineers. While absolute
performance is sometimes a requirement, 3D graphics hardware, processor, and
memory availability are advancing so rapidly that any disparity between Java/Java3D
and C/OpenGL is shrinking for all but the most memory−intensive applications.
Comments
Post a Comment