Skip to main content

Contributing to Java 3DTM Projects

The Java 3DTM source code is available to anyone to use according to the individual project's licensing terms. Development of the projects happens in public and is open to individuals and companies. Everyone benefits by having better projects when the fixes or enhancements are implemented. See the JavaDesktop Community Governance Guidelines for general guidelines on participating in JavaDesktop community projects, such as Java 3D.

Sun Contributor Agreement

All contributers of source code, object code, documentation, or other materials must complete the Sun Contributor Agreement before any contributions can be included in the project. See the SCA project page on for instruction on how to submit the Sun Contributor Agreement form, and a list of Frequently Asked Questions (FAQ).

Individuals and companies who have signed and submitted the Sun Contributor Agreement are listed here.

Alternatively, those who have already signed the older Java 3D Joint Copyright Assignment (JCA) form may continue to contribute code under the terms of that agreement. Individuals and companies who have signed and submitted the JCA are listed here.

How You Can Contribute

Here are some of the ways you can contribute to the Java 3D projects:

  • Participate on Forums and Mailing Lists
    The Java 3D project forum and mailing lists provide a way for people using the software to benefit from each other's expertise. To really be useful, these lists need your input! Please don't be afraid to post: help out others when you can, post your questions, comments and ideas as you see fit. See the Feedback & Discussion section for more information.

  • File a Bug Report
    Bug reports are very helpful to developers, and a great way to contribute to a project! Please use the Issue Tracker in the parent java3d project to file bugs (defects). Remember to take a little time when filing a bug report; make sure you can reproduce the problem, and be very explicit in your description of the problem.

  • File an Enhancement Request
    If there's something you'd like to see in a project and don't, or something you can imagine improving, let us know by filing an enhancement request. Use a component project's Issue Tracker and file an "Enhancement" rather than a "Defect".

  • Contributing Code
    As mentioned above, all of the source code is available, and if there's a feature you'd like to see, or a bug you'd like to see fixed, you have the power to make that happen. See the sections on contributing patches for more information. Don't forget to submit a Sun Contributor Agreement form if this is your first contribution.

  • Become a Project Developer
    To become a Developer, with CVS commit privilege, you should be an experienced user of Java 3D, demonstrate a good understanding of the technology and source code, and be an active member in the project's forums. You should already have contributed one or more code changes in the form of a patch. See the Developer Rules for Java 3D Projects for other requirements.

Evolution of Java 3D and vecmath API specifications

The Java Community Process (JCP) has an impact on how people can contribute to the j3d-core and vecmath projects. 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 and javax.vecmath packages) is controlled by the JCP. Modifications to the Java 3D API will be created via Java Specification Requests (JSRs).

Please Confirm