Java 3DTM 1.5.0-beta2 Pre-Release Notes

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

System Requirements

The 1.5.0-beta2 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-beta2 version of Java 3D for Solaris SPARC requires the following:

Solaris x86

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

Linux

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

Windows

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

Mac OS X

The 1.5.0-beta2 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-beta2


Issue   Description
84   Rendering pauses after Canvas3D disposal until AWT event
238   Exception in thread "J3D-MasterControl-1" when setting TextureUnitState to 0-length array
252   Offscreen Canvas3D/Screen3D error reporting (pbuffer allocation)
295   Texture3D throws ArrayIndexOutOfBoundsException when scaleImage
312   Exception while detaching ModelClip from ViewSpecificGroup
324   Lockup Java3D program and throw exception using JOGL renderer
336   Unable to redraw when resizing using JOGL pipeline
341   Initializing audio device using Webstart throws ClassNotFoundException
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

Issues Fixed in 1.5.0-beta1


Issue   Description
40   Transparency color not correct on UCIO geometry and OffScreen canvas
75   Memory leak in SetLiveState when branchGroup remove
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
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
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
229   Need to implement JOGL renderer
235   Null Pointer in AttributeBin
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
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
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
308   WakeupOnElapsedTime occasionally doesn't wake up on elapsed time
311   Broken build for linux on ppc.
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
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.
338   Bug in glPushAttrib usage in NativePipeline
339   Java crashes when using GLSL shaders
340   Resource leak in setOffScreenBuffer, NPE in JOGL pipeline
342   Raster.setDstOffset() set the destination pixel offset in opposite direction

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 and go to the "Early access test program" section at bottom of the page 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.