This project contains the source code
for the core Java 3D 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 terms that are yet to be disclosed.
Until such time as these terms are disclosed, you may not do anything
at all with the source code in this CVS repository.
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 terms under which we will license this source code will facilitate
this, while ensuring that the API is not fragmented with incompatible
versions being released.
Three types of binary builds are available in the Documents
& Files
section of this project on java.net: Release (or FCS) builds;
Experimental (early access) builds; and Daily/Weekly builds. The latest
release build of Java 3D v1.3.1 is available. A fairly stable
experimental build, labeled as Java 3D v 1.3.2-buildXX is now
available. We will set up daily or weekly builds in the near future.
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.
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.
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.
Anyone who wants to contribute source code, even in the form of
e-mailed bug fixes,
must have a signed contributor agreement [TODO link] on file. The
Java 3D
team regrets that we are unable to even look at submitted bug fixes
unless this author
has the
contributor agreement on file. This may seems harsh, but it is a policy
designed to protect the project from patent infringement and copyright
issues. We encourage all developers to download the agreement [TODO
link], sign it, and
fax it
to the number indicated [TODO link]. Then you are more than welcome to
send in fixes for your favorite bugs!
We invite anyone to be a project observer.
As the community matures and contributors demonstrate their
familiarity
with the API internals they will be invited to join the project as a
developer with full CVS commit
privilege. The last thing we want is
lots of people hacking on the source in the central repository and
destabilizing the API, so we will be taking a cautious approach.
The Java Community Process (JCP) also
has a significant impact on how people can
contribute to the project. Although the source of the API is available,
and we actively encourage the community to contribute to it's
development, the API itself (that is, the public and protected classes,
interfaces, methods, fields, and so forth in the javax.media.j3d
and javax.vecmath
packages) are
controlled by the JCP and can not be freely modified.
Modifications to the API will be created within the Java 3D JSRs
by an Expert Group of JCP members. A call for experts will be
made once this process is launched.
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.
[TODO: list of feedback and participation options including mailing
lists, issue tracking, project owners/contacts, discussion forum,
wikis, etc.]