License | Downloads | How to Contribute | Reporting Issues | Feedback and Discussion | Project Highlights | Project Suggestions | Examples
This project contains the source code
for the core Java 3DTM API
package, javax.media.j3d
.
Related projects include: vecmath (the 3D vector math package), j3d-core-utils (the Java 3D core utilities), and j3d-examples (the Java 3D example programs). The vecmath and j3d-core-utils projects are required to build j3d-core. Refer to the download and build instructions for information on downloading and building j3d-core.
The source code for the core Java 3D API reference implementation is licensed under the Java Research License (JRL) for non-commercial use. The JRL allows users to download, build, and modify the source code in the j3d-core project for research use, subject to the terms of the license.
Java 3D is also licensed for commercial use under a new no-fee Java Distribution License (JDL). The JDL allows commercial use of Java 3D with or without modification, as long as compatibility with the entire API Specification is maintained. This includes passing the TCK tests for Java 3D, and retaining the javax namespace as defined by the JCP.
The API specification will continue to evolve as part of the Java
Community Process (JCP). We welcome community participation, and
encourage developers to contribute both bug fixes and new
implementation code to the API. The combination of the JRL and the JDL
was chosen to facilitate this, while ensuring the integrity and
compatibility of the API.
Three types of Java 3D binary builds
are available on java.net: Release (or FCS) builds;
Stable (experimental, early access) builds; and Daily builds. The
latest
release build of Java 3D v1.3.1 is available. Stable
builds of Java 3D 1.3.2 (beta) are available.
Daily builds of both 1.3.2 and 1.4.0 are now available.
The javadoc for the beta2 build of Java 3D v 1.3.2 can be found here. The javadoc for a recent daily build of Java 3D v 1.4.0 can be found here.
We invite developers to contribute to Java 3D. Please refer to the Contributing to Java 3D page in the parent java3d project to learn how to contribute to this project or any other Java 3D-related project. See the JavaDesktop Community Governance Guidelines for general guidelines on participating in JavaDesktop community projects, such as j3d-core.
We have set up the Issue Tracker
in the parent java3d
project
to track issues (bugs, feature requests, etc.) for
Java 3D-related
sub-projects. Please use the above link rather than the Issue Tracker
in this j3d-core project. Refer to the Reporting
Issues section in the parent java3d project for more information.
We have created four Java 3D mailing lists in the parent java3d project: interest 'at' java3d.dev.java.net, announce 'at' java3d.dev.java.net, issues 'at' java3d.dev.java.net, and cvs 'at' java3d.dev.java.net (replace 'at' with @). Click here to subscribe to any of these lists. The interest list is an open mailing list for discussing all aspects of Java 3D, the reference implementation for the Java 3D core, vecmath, utilities, example programs, etc. The annouce list is a low-volume moderated mailing list for announcing Java 3D-related news and information. The issues list is for automated issues tracking, and the cvs list is for automated CVS change messages (for changes to the parent java3d web pages only).
For those who prefer a forum to a discussion mailing list, we have
created the
Java 3D
forum, hosted as part of the JavaDesktop Community. Messages
posted on the forum are cross-posted to interest
'at' java3d.dev.java.net
and vice-versa.
Finally, each sub-project has its own cvs mailing list. Click here to subscribe to this list. The cvs 'at' j3d-core.dev.java.net list is for automated CVS change messages and discussion of those changes.
Release project Source code
The current, experimental fork of the of the Java 3D source
code is an early access of version 1.3.2. It is
available for download from the CVS repository of this project. The
following page describes the naming scheme for CVS
tags used in this project.
This source release differs from the the current 1.3.1 release in
the following
ways:
com.sun.j3d.*
packages have been split out into
their own project (j3d-core-utils).The reason the Headspace AudioEngine was removed is that we do not have the rights to ship the source code for the native Headspace sound mixer. Our plan going forward is to implement an AudioEngine using JOAL.
Java 3D 1.3.x bug fixes
We will work with the community to address bugs identified in
Java 3D
1.3.1, and will release new versions of Java 3D 1.3.x as
needed.
Bug fixes will be immediately available in the CVS source, or from the
weekly builds on this site. We will release official 1.3.x versions no
more often than twice a year.
Java 3D 1.4
We will file a new JSR (or revive the existing JSR-189)
under the Java
Community Process (JCP) shortly, and form an Expert Group of community
members to
design and implement the next version of the Java 3D API. We
envision 1.4
including features such as programmable shaders. Our goal is to
minimize large scale changes to the system in order to deliver 1.4 as
quickly as possible. This initial direction could be changed by the
Expert Group.
17-Sep-2004 - We have just posted a very rough first draft
of what we
are thinking for Programmable Shaders in
Java 3D 1.4.
Java 3D 1.5/2.0
The scope of this release will be driven by the JSR Expert Group.
Our initial
thoughts are that this work will include large scale changes to support
features such as extensibility and pluggable renderers.
Here are some project ideas for the j3d-core project. Please see the Project Suggestions in the j3d-core-utils project for more ideas.
The j3d-examples
project includes a set of simple example programs. The Java 3D
Fly Through v 2.0 Beta sample application shows you how to take
advantage of the capabilities of Java 3D technology. You can
download
the source code via http://java3d.netbeans.org.