Java 3DTM 1.5.0 Release Notes

This file contains important release information for users of the Java 3DTM API, version 1.5.0.

NOTE: We recommend that you uninstall all previous versions of Java 3D before installing this version.

System Requirements

The 1.5.0 version of the Java 3D API has been released for Solaris (both sparc and x86/amd64), Linux (both x86 and amd64), Windows (both x86 and amd64), and Mac OS X (both PPC and x86).

Solaris Sparc

The 1.5.0 version of Java 3D for Solaris SPARC requires the following:

Solaris x86

The 1.5.0 version of Java 3D for Solaris x86/amd64 requires the following:

Linux

The 1.5.0 version of Java 3D for Linux (x86 or amd64) requires the following:

Windows

The 1.5.0 version of Java 3D for Windows 2000, and Windows/XP (x86 or amd64) requires the following:

Mac OS X

The 1.5.0 version of Java 3D for Mac OS X (PPC or x86) requires the following:

Improvements in 1.5.0

New Features / Enhancements

Issues Fixed in 1.5.0


Issue   Description
40   Transparency color not correct on UCIO geometry and OffScreen canvas
75   Memory leak in SetLiveState when branchGroup remove
84   Rendering pauses after Canvas3D disposal until AWT event
85   Optimize the downloading of ARGB textures
92   ImageComponent2D.setSubImage() uses incorrect image sizes
93   ImageComponent2D.setSubImage() does not correctly update the display
113   NPE in updateAlphaInVertexData on multiple screens
121   Stop using finalize() to clean up state
123   Reduce or eliminate use of memory free lists
131   Lightweight Canvas3D
147   Need Windows/amd64 port of Java 3D
152   NPE in updateNodeComponent
160   AlternateAppearance behaves defferently in J3D 1.3.2 comparing to J3D 1.3.1
162   Textures are randomly incorrect in multi-screen mode with LG3D
172   Texture.setImage fails to check ImageComponent sizes when not live
180   Frame-dependent Large Texture Updates leads to OOM Exception
194   Provide NIOBuffer texture components
198   Need more shader example programs
209   PolygonAttributes.isCompiled() returns false after the scenegraph's BranchGroup is compiled.
216   J3DTimer should use clock_gettime on Linux
219   Add support for Non Power of Two textures
220   Matrix3d.set(AxisAngle4d) sets incorrectly if axis vector not normalized
221   UnsatisfiedLinkError if shading language set to Cg on d3d
224   NPE While Toggling Visibility
225   BY_REF Support for CoordinateIndices To Reduce Memory Bloat
227   Serialization problem with vecmath
229   Need to implement JOGL renderer
235   Null Pointer in AttributeBin
238   Exception in thread J3D-MasterControl-1 when setting TextureUnitState to 0-length array
240   Canvas3D.queryProperties reports stencil available even when it is not
241   Texture3D by Reference Fails
244   ClassCastException in Group.setChild
245   Problem with ALLOW_RENDERING_ATTRIBUTES_WRITE in Appearance
246   Move compressed geometry code from core to utils
247   SHADER_ATTRIBUTE_TYPE_ERROR is fired when ShaderAttributeArray is used (OpenGL and GLSL shaders used)
248   Wrong spec. on the setFlags() method of com.sun.j3d.utils.pickfast.PickTool
249   NullpointerException in MasterControlThread when adding a Light
251   Typo, in spec. PickTool.PickAny and PickTool.PickClosest return is wrong
252   Offscreen Canvas3D/Screen3D error reporting (pbuffer allocation)
253   Transform3D's incorrectly identified as Affine
260   Obsolete graphics library version kills renderer thread, cannot be detected by app
264   Behaviors that throw an Error cause the BehaviorScheduler to die
266   Canvas3D should throw NPE by default for null graphicsConfig
267   TextureLoader should autodetect alpha and colours
268   Replace native getNumberOfProcessor() with pure Java equiv?
269   GLSL on nVidia cards: Confict of a builtin vertex attribute (named gl_Normal) and a bound generic vertex attribute
275   sleep for setMinimumFrameCycleTime should not hold lock
279   Intermittent hang in MasterControl while running lg3d
283   Add Eclipse plugin defs to manifest
288   Objects in RenderBin free lists keep reference to user data
295   Texture3D throws ArrayIndexOutOfBoundsException when scaleImage
308   WakeupOnElapsedTime occasionally doesn't wake up on elapsed time
311   Broken build for linux on ppc.
312   Exception while detaching ModelClip from ViewSpecificGroup
313   Geometry Stress Test results in OOM Error
318   Cannot build on Itanium Linux
320   Shader Appearance update is asynchronous to transform update
321   bug in vecmath.Matrix3d.set(AxisAngle a1)
323   Deprecate optional detail texture functionality
324   Lockup Java3D program and throw exception using JOGL renderer
325   This Tuple4d is epsilonEquals to all others: (NaN, NaN, NaN, NaN)
326   PrintCanvas3D on JOGL pipeline crashes on Linux and Solaris
327   javadoc for VIew class doesn't list correct clip policy defaults
328   JOGL pipeline : Geometry fails to render in Cosmic Birdie
331   Add .cvsignore file to root of vecmath.
336   Unable to redraw when resizing using JOGL pipeline
338   Bug in glPushAttrib usage in NativePipeline
339   Java crashes when using GLSL shaders
340   Resource leak in setOffScreenBuffer, NPE in JOGL pipeline
341   Initializing audio device using Webstart throws ClassNotFoundException
342   Raster.setDstOffset() set the destination pixel offset in opposite direction
344   Too much time to load image as Texture
349   OffScreen Canvas3D needlessly forces power-of-two for its buffer
351   Need a new mechanism to free D3D surface
352   VC compiler generates warning on Windows AMD64 build
353   GeometryArray Memory Leak
355   IndexedXXXStripArray throws NPE with ByRef Indices
356   Exception in RenderBin when removing a Shape3D with no geometry
358   Document that OGL 1.2 is supported, but at reduced functionality
360   SceneGraphStreamWriter.writeBranchGraph throws exception
366   Raster appears without image on systems without NPOT support
367   Clip throws NPE in case of region = null in a live scene
368   Background texture doesn't work on system with no NPOT support
370   Deadlock when calling Raster.setimage from user thread
371   Poor raster quality for systems that don't support NPOT textures
372   ImageComponent.set(BufferedImage) ignored when used by Raster
373   ImageComponent.set(BufferedImage) ignored when used by Background
374   Exception when calling Background.setImage on live scene graph
379   Needs NPOT support documented in Texture, Texture3D and TextureCubeMap
380   NPE when uncheck Show Color Texture in Dot3 demo
383   JCanvas3D's offscreen Canvas3D is inverted.
392   Texture loading regression for optimized RGB PNG files
393   TextureLoader regression on BufferedImage.TYPE_BYTE_INDEXED
395   JCanvas3D / JOGL: Program freezes
400   Lighting differs with various renderers
403   AssertionError while changing (offscreen) Texture size

JOGL Rendering Pipeline

A JOGL rendering pipeline, as described in issue 229, is now available on all supported platforms, including Apple Mac OS X (x86 or PPC). The easiest way to run Java 3D applications using the JOGL pipeline is via Java Webstart from your browser (with no setup required). Click here to run a Java 3D example program from your browser via the JOGL pipeline. These examples will use JOGL on Mac OS X and the native OpenGL pipeline on all other platforms.

The JOGL renderer is the default on Mac OS X. You can select the JOGL renderer on other platforms by setting the "j3d.rend" system property to "jogl", for example:

You will need to download JOGL and install it into the JRE along with the Java 3D jar files (or include it in your PATH/CLASSPATH).

More Information

For the latest information on Java 3D, see the main Java 3D project page on java.net.

Click here for a list of open issues.