Intel, Silicon Graphics, Apple, and Sun all had retained mode scene graph APIs under development in 1996. Since they all wanted to make a Java version, they decided to collaborate in making it. That project became Java 3D. Development was underway already in 1997. A public beta version was released in March 1998. The first version was released in December 1998. From mid-2003 through summer 2004, the development of Java 3D was discontinued. In the summer of 2004, Java 3D was released as a community source project, and Sun and volunteers have since been continuing its development.
On January 29, 2008, it was announced that improvements to Java 3D would be put on hold to produce a 3D scene graph for JavaFX1 JavaFX with 3D support was eventually released with Java 8.2 The JavaFX 3D graphics functionality has more or less come to supersede Java 3D.
Since February 28, 2008, the entire Java 3D source code is released under the GPL version 2 license with GPL linking exception.3
Since February 10, 2012, Java 3D uses JOGL 2.0 for its hardware accelerated OpenGL rendering. The port was initiated by Julien Gouesse.4
Java 3D is not the only high-level API option to render 3D in Java. In part due to the pause in development during 2003 and 2004, several competing Java scene graph technologies emerged:
General purpose:
Gaming:
Visualization:
In addition to those, many other C or C++ scene graph APIs offer Java support through JNI.
At a lower level, the JOGL (JSR 231) OpenGL bindings for Java are a popular alternative to scene graph APIs such as Java 3D. LWJGL is another such binding.
"ANNOUNCEMENT: Java 3D plans". Sun Microsystems. 2008-01-29. Archived from the original on 2012-03-10. Retrieved 2011-05-11. https://web.archive.org/web/20120310231138/http://www.java.net/node/674071 ↩
"What's New in JDK 8". Oracle Corporation. 2014-03-18. http://www.oracle.com/technetwork/java/javase/8-whats-new-2157071.html ↩
"ANNOUNCE: GPL open source release". Sun Microsystems. 2008-02-28. Archived from the original on 2008-03-24. Retrieved 2008-02-29. https://web.archive.org/web/20080324111722/http://forums.java.net/jive/thread.jspa?messageID=261477&tstart=0#261477 ↩
"Java3D now works with JOGL 2.0". Julien Gouesse. 2012-10-02. Retrieved 2012-10-02. http://forum.jogamp.org/Java3D-now-works-with-JOGL-2-0-td3732206.html ↩