home *** CD-ROM | disk | FTP | other *** search
-
- Java 3D(TM) 1.3
-
- README file for Win32/DirectX
-
- This file contains important information for users of Java 3D(TM).
- The first three sections (Requirements, Installation, and Running
- Java 3D(TM) in a Browser) are of interest to all Java 3D(TM) users.
- The rest of this file applies only to developers of Java 3D(TM)
- applications.
-
- ** It is recommended that any previous version of Java 3D(TM) be
- ** uninstalled before installing this version.
-
- ============
- REQUIREMENTS
- ============
-
- This version of Java 3D(TM) for Windows 98, Mindows ME and Windows 2000
- requires the following:
-
- Java 2 (Runtime or SDK) version 1.3.1 or later from Sun
- Microsystems (http://java.sun.com/jdk/). This includes
- the Java Plug-In (JPI) to update Java(TM) in your browser.
-
- DirectX 8.0 or later, available from Microsoft
- (http://www.microsoft.com/directx/default.asp).
-
- ============
- INSTALLATION
- ============
-
- You must have permission to write files in your Java(TM) Runtime
- Environment and/or SDK directories. If you do not have this
- permission, the installer will run to completion but Java 3D(TM)
- will not be installed. Make sure you are running Java(TM) from
- your local machine and that you are the same user who installed
- Java.
-
- To install Java 3D(TM), execute the InstallShield binaries.
-
- Runtime only: java3d-1_3-windows-i586-directx-rt.exe
- Runtime and SDK: java3d-1_3-windows-i586-directx-sdk.exe
-
- The installers will upgrade your most recently installed Java
- Runtime Environment and SDK.
-
- The Java 3D(TM) SDK includes several demo programs that can
- verify correct installation. Assuming your Java 2 SDK is installed
- at \jdk1.3, try the following:
-
- cd \jdk1.3\demo\java3d\HelloUniverse
- java HelloUniverse
-
- Note: Many more demos are available under the demo\j
- ava3d directory. Some of the demos require a maximum memory
- pool larger than the default in java. To increase the
- maximum memory pool to 64 meg, add the following command
- line options to java or appletviewer:
- java: -mx64m
- appletviewer: -J-mx64m
-
- Java 3D(TM) consists of four jar files and three shared libraries.
- You do not need to include the jar files in your CLASSPATH,
- nor do you need to include the shared libraries in your PATH.
- You should include "." in your CLASSPATH or ensure that CLASSPATH
- is not set.
-
- Java 3D documentation and tutorials are available from the Java 3D(TM)
- Home Page: http://java.sun.com/products/java-media/3D/
-
- ===========================
- Multisampling Antialiasing
- ===========================
-
- By default, full scene antialiasing is disabled if a
- multisampling pixel format (or visual) is chosen.
- To honor a display drivers multisample antialiasing
- setting (e.g. force scene antialiasing), set the
- implicitAntialiasing property to true.
- This causes Java3D to ignore its own scene antialias
- settings, letting the driver implicitly implement the
- feature.
-
- java -Dj3d.implicitAntialiasing=true MyProgram
-
- ================================
- RUNNING JAVA 3D(TM) IN A BROWSER
- ================================
-
- You can run Java 3D(TM) programs in your browser. Java 2(TM)
- from Sun includes the Java Plug-In (JPI) to upgrade the Java(TM)
- in the browser to Java 2(TM). To verify proper installation,
- point your browser to file:/jdk1.3/demo/java3d/index.html
-
- If you are getting permission exceptions while running the Java 3D
- demo programs in your browser, it may be because of bug 4416056.
-
- First, upgrade your Java SDK to the latest release. The bug may
- have been fixed by the time you read this.
-
- To work around the problem, the path to your JRE must not
- contain spaces. By default, it does ("c:\Program Files\JavaSoft\. . .").
- The Java SDK installer automatically installs the JRE in
- c:\Program Files\JavaSoft, so you must run the installers in
- this order:
- Java SDK installer
- Java JRE installer (choose a directory with no spaces)
- Java 3D SDK installer (will default to the correct directories)
-
- NOTE: Many Java 3D(TM) programs will require a larger heap size
- than the default 16M in the JPI. Run the Java Plug-In Control
- Panel from Start/Programs (JPI 1.2.2) or Start/Settings/Control
- Panel (JPI 1.3) and in "Java Run Time Parameters" put "mx64m"
- for 64M of heap memory.
-
- To create a web page with Java 3D, you need to use special HTML
- code to force the browser to use the JPI VM. Refer to the
- following URL for information on using Java Plug-In "HTML
- Converter" and running applets using Java Plug-in:
-
- http://java.sun.com/products/plugin/
-
- ====================================================
- DISTRIBUTING Java 3D(TM) WITH YOUR JAVA(TM) PROGRAMS
- ====================================================
-
- Sun Microsystems allows vendors to distribute the Java 3D(TM) Runtime
- environment with their Java programs, provided they follow the terms
- of the Java 3D(TM) Binary Code License and Supplemental License Terms
- agreement.
-
- This document uses the term "vendors" to refer to licensees,
- developers, and independent software vendors (ISVs) who license and
- distribute Java 3D(TM) with their Java programs.
-
- REQUIRED vs. OPTIONAL FILES
- ---------------------------
- Vendors must follow the terms of the Java 3D(TM) Evaluation License
- agreement, which includes these terms:
-
- - Don't arbitrarily subset Java 3D(TM). You may, however, omit those
- files that have been designated below as "optional".
-
- - Include in your product's license the provisions called out
- in the Java 3D(TM) Evaluation License.
-
- BUNDLING Java 3D(TM)
- --------------------
- Java 3D(TM) comes with its own installer that makes it suitable for
- downloading by end users. Java(TM) application developers have the
- option of not bundling Java 3D(TM) with their software. Instead,
- they can direct end-users to download and install the Java 3D(TM)
- software themselves.
-
- Required Files
- --------------
-
- <JREDIR>\bin\J3D.dll
- <JREDIR>\bin\j3daudio.dll
- <JREDIR>\bin\J3DUtils.dll
- <JREDIR>\lib\ext\vecmath.jar
- <JREDIR>\lib\ext\j3dcore.jar
- <JREDIR>\lib\ext\j3daudio.jar
- <JREDIR>\lib\ext\j3dutils.jar
-
- Optional Files
- --------------
-
- An application developer may include these files and directories
- with their Java 3D(TM) application, but is not required to do so:
-
- <JDKDIR>\j3d-utils-src.jar
- <JDKDIR>\demo\java3d
-
- ========================
- CHANGES SINCE 1.2.1_03
- ========================
-
- ============
- NEW FEATURES
- ============
-
- For a list of API changes please see the Java 3D API 1.3
- Specification at:
- http://java.sun.com/products/java-media/3D/releases.html
-
- GeometryInfo utility now supports multiple texture coordinates as well as
- INTERLEAVED, BY_REFERENCE, USE_NIO_BUFFER and USE_COORD_INDEX_ONLY
- GeometryArray formats.
-
- The .obj loader has improved URL support.
-
- A new scenegraph io utility has been added. This utility can save and restore
- Java 3D scene graphs. See the javadocs for the package
- com.sun.j3d.utils.scenegraph.io for more information.
-
- A new high resultion interval timer has been added to the utilities package.
- See the javadocs on the package com.sun.j3d.utils.timer for more information
- as well as the TimerTest example program in the examples/Timer directory.
-
- New ConfiguredUniverse utility.
-
- The com.sun.j3d.utils.universe package has been extended with a new
- ConfiguredUniverse utility class. This utility requires JDK 1.4 or later
- when running in a display configuration that consolidates two or more
- physical screens in a single virtual device, such as the X11 Xinerama
- extension.
-
- The new utility is an extension of SimpleUniverse that can set up an
- interactive viewing environment based upon the contents of a site-specific
- configuration file. This is useful when an application needs to run without
- change across a broad range of viewing configurations and locally available
- input devices.
-
- Viewing configurations that can be described in the configuration file
- include windows on conventional desktops, stereo-enabled views, fullscreen
- immersive displays on single or multiple screens, and virtual reality
- installations such as cave and head-mounted displays incorporating
- 6-degree-of-freedom sensor devices.
-
- InputDevice and ViewPlatformBehavior implementations can be instantiated
- by ConfiguredUniverse from their descriptions in the configuration file.
- Sensors provided by InputDevice implementations can be given descriptive
- names in the file and retrieved by applications to allow them to tailor
- their interaction mechanisms at runtime.
-
- See programs/examples/ConfiguredUniverse for an example application and
- sample configuration files.
-
- Support for multiscreen-aware applications in virtual-screen environments
-
- With this release applications can use GraphicsConfigTemplate3D to retrieve
- a GraphicsConfiguration from a specific physical screen device even when a
- virtual screen is being used to consolidate them. The GraphicsConfiguration
- can then be used to create Canvas3D objects on that physical screen.
-
- This allows a separate Screen3D object to be associated with the Canvas3D so
- that physical parameters such as the screen's position and orientation
- relative to other screens in the viewing environment can be specified.
-
- This support is only available when running JDK 1.4 or later.
-
-
- =======================
- Constructing a Canvas3D
- =======================
-
- Many Java 3D programs pass null to the Canvas3D constructor. By doing
- this, Java 3D will select a default GraphicsConfiguration that is
- appropriate for Java 3D. However, this is a bad practice, and can lead
- to errors when applications try to run in alternate environments, such as
- stereo viewing. Java 3D will now print out a warning if the Canvas3D
- constructor is passed in a null argument for the GraphicsConfiguration.
-
- ====================================
- Multipass Texture support limitation
- ====================================
- If an application has setup more texture unit states than the graphics
- hardware can support, COMBINE mode will not be supported and Java 3D will
- fallback to the REPLACE mode.
-
- =========
- Utilities
- =========
-
- This release includes utilities for Java 3D. These utilities are still
- being defined and under development. Much of the source for these utilities
- is also provided. The API for these utilities may change in future releases.
-
- The following utilities are provided in this release:
-
- - Some predefined Mouse based behaviors
- - Picking utilities including predefined picking behaviors
- - Geometry creation classes for Box, Cone, Cylinder, and Sphere
- - A Text2D utility
- - Universe Builders - SimpleUniverse and ConfiguredUniverse
- - An Image Loading utility
- - A Normal Generator utility
- - A Polygon Triangulator utility
- - Triangle stripifier
- - Geometry compression utilities
- - Spline-based path interpolators
- - Wavefront .obj loader
- - Lightwave 3D File Loader
- - A scenegraph io utility
- - A high resolution interval timer
-
- ===================================
- Enabling Stereo with SimpleUniverse
- ===================================
-
- The SimpleUniverse utility does not, by default, request a
- GraphicsConfiguration that is capable of Stereo rendering. To enable this,
- you need to set a property when running your application. Here is an
- example.
-
- java -Dj3d.stereo=PREFERRED MyProgram
-
- Some framebuffers only have one Z buffer and share this between the left
- and right eyes. If you are experiencing problems using stereo try the
- following property:
-
- java -Dj3d.stereo=PREFERRED -Dj3d.sharedstereozbuffer=true MyProgram
-
- =====================================================
- Information on the Direct3D Implementation of Java 3D
- =====================================================
-
- Unsupported Features
- --------------------
- The following features are currently unsupported in the Direct3D
- implementation of Java 3D:
- Line width
- Line antialiasing
- Point antialiasing
- PolygonAttributes backFaceNormalFlip
- RenderingAttributes ROP_XOR
- Stereo
-
- Texture features not support:
- Texture color table
- Base/Maximum Level
- Max/Minimum LOD
- LOD offset
- Detail Texture
- Sharpen Texture Function
- Filter4 Function
- Boundary width
- Boundary mode CLAMP_TO_EDGE & CLAMP_TO_BOUNDARY
- (will fall back to CLAMP)
- Texture blend color when multiple pass is used
- to simulate multiTexture.
-
- Limited Support
- ---------------
- FullScreen antialiasing is supported only if the device returns
- D3DPRASTERCAPS_ANTIALIASSORTINDEPENDENT in its raster capabilities
- list. (OpenGL supports fullscreen antialiasing if an accumulation
- buffer exists.)
-
- TransparencyAttributes.TransparencyMode values FASTEST, NICEST and
- SCREEN_DOOR are the same as BLENDED under D3D.
-
- DepthComponent in certain display mode when stencil buffer
- is selected (use for DecalGroup) since depth Buffer Component
- Read/write can't coexist with Stencil buffer in DirectX8.0.
-
- OffScreen rendering with width/height > current desktop size
-
- Texture coordinates outside the range [0,1] when boundaryModeS
- and boundaryModeT are set to CLAMP will not use the Texture Boundary'
- color unless BASE_LEVEL_LINEAR filtering is turned on.
-
- If the driver did not expose D3DPTADDRESSCAPS_BORDER capability bit
- (viathe directX SDK utility Caps Viewer). Then it didn't support
- Texture Border color mode. Default color as in Clamp mode will be
- used in this case. Most driver currently available need to
- workaround using reference mode (-Dj3d.d3dDevice=Reference).
-
- if the driver did not expose D3DPMISCCAPS_LINEPATTERNREP capability
- bit then it didn't support line patterns. A solid line will be shown
- in this case. Most driver currently available need to workaround
- using reference mode.
-
- Only negative polygon offsets are supported. The limit of this offset
- corresponds to the depth of the z-buffer.
-
- Float anisotripic filter degree did not support. They will round off
- to integer value and pass down to the DirectX library.
-
- Texture environment combiner :
-
- COMBINE_REPLACE - Support if driver expose TextureOpCaps
- D3DTOP_SELECTARG1. Only combine scale 1 is support.
- COMBINE_MODULATE - Support if driver expose TextureOpCaps D3DTOP_MODULATE,
- D3DTOP_MODULATE2X, D3DTOP_MODULATE4X for scale 1, 2 & 4
- respectively.
- COMBINE_ADD - Support if driver expose TextureOpCaps D3DTOP_ADD,
- only combine scale 1 is support
- COMBINE_ADD_SIGNED - Support if driver expose TextureOpCaps D3DTOP_ADDSIGNED,
- D3DTOP_ADDSIGNED2X for scale 1 & 2 respectively. Combine
- scale 4 will fall back to 2.
- COMBINE_SUBTRACT - Support if driver expose TextureOpCaps D3DTOP_SUBTRACT.
- Only combine scale 1 is support.
- COMBINE_INTERPOLATE - Support if driver expose TextureOpCaps D3DTOP_LERP.
- Only combine scale 1 is support.
- COMBINE_DOT3 - Support if driver expose TextureOpCaps
- D3DTOP_DOTPRODUCT3 Only combine scale 1 is support.
-
- Rendering Different between OGL & D3D
- --------------------------------------
- - SpotLight formula is different, OGL will normally have a bigger bright spot.
-
- - TexCoordGeneration Sphere Map formula is different, OGL will normally
- has texture map that zoom closer than D3D.
-
- - Specular hightlight in Texture mapping mode may different. If OGL driver
- support separate specular color, then resulting specular highlight in
- texture are the same. Otherwise D3D verson will have a brighter and
- more obviously specular highlight compare with OGL.
-
- Fullscreen Support
- ------------------------
- The Direct3D implementation of Java 3D can be run in fullscreen mode.
- To start an application in fullscreen mode, use the property j3d.fullscreen.
- The values for j3d.fullscreen are:
- REQUIRED - A fullscreen canvas is required. If not available, do not
- start up the application.
- PREFERRED - A fullscreen canvas is desired for this invocation of the
- Java 3D application. If a fullscreen canvas cannot be
- created, a windowed canvas is acceptable.
- UNNECESSARY - States that a fullscreen canvas is not necessary for this
- application. Create a windowed application (this is the
- same behavior as not setting this property).
-
- Example:
- java -Dj3d.fullscreen=REQUIRED HelloUniverse
-
- Further, an application can be toggled between fullscreen and windowed mode
- by use of the <Alt><Enter> keyboard combination.
-
- Direct3D Driver Selection
- -------------------------
-
- When there is more then one device associated with a
- monitor, by default, Java 3D uses the first driver found
- on a given display. This order can be found by
- using the -Dj3d.debug=true property during Java startup.
-
- In order to use a 3D only graphics card such as Voodoo1/2
- A new property has been added
-
- -Dj3d.d3ddriver=idx
-
- where idx is the driver order number (starting with 1) found
- using the debug property above. This will force Java 3D to use
- the driver specified by the user (this may fail if the driver is
- not compatible with the display). For a typical setup with a 3D
- only card attached to a single monitor system, use idx=2. This
- will automatically toggle to fullscreen hardware acceleration mode.
-
- Direct3D Device Selection
- -------------------------
- In order to aid in development and debugging, Java 3D has added a property
- to allow the D3DDevice to use for rendering to be selected. The property,
- j3d.d3ddevice can have the following values:
- tnlhardware - select a device that supports transform and lighting in
- hardware, if present. If no such device is present,
- a dialog box is displayed to alert the user and the
- application will exit.
- hardware - select a Direct3D device that performs hardware
- rasterization, if present. If no such device is present,
- a dialog box is displayed to alert the user and the
- application will exit.
- reference - use the Direct3D reference pipeline (only available if
- the Direct3D SDK is installed).
-
- By default Java 3D first tries to select a TnLhardaware device, if that fails
- a Hardware device, if that also fails then finally Java 3D selects an
- Emulation device.
-
- Ignored Java 3D Properties
- --------------------------
- The following Java 3D properties are ignored by the Direct3D implementation:
- j3d.sharedctx
- j3d.stereo
- j3d.sharedstereozbuffer
- j3d.g2ddrawpixel
- j3d.usecombiners
- j3d.disableSeparateSpecular
- j3d.backgroundtexture
- j3d.disableXinerama
-
- ===================================================
- Information on Java 3D Audio Device Implementations
- ===================================================
-
- Java 3D sound is rendered via the use of a specific implementation
- of the AudioDevice3D interface. This release includes two AudioDevice3DL2
- implementations: HeadspaceMixer and JavaSoundMixer. Both of these
- implementations are included in the j3daudio.jar.
-
- Please read README.release in program examples Sound directory for details
- regarding the feature and format limitations of each of these implementations
- and for examples of these use.
-
- =============================================
- HeadspaceMixer AudioDevice3DL2 Implememtation
- =============================================
-
- The HeadspaceMixer implementation is part of the Sun Java 3D
- com.sun.j3d.audioengines.headspace package. This implementation
- uses a version of the Headspace Audio Engine licensed from Beatnik
- which does all rendering in software and pipes the stereo audio image
- to the platform's audio device.
-
- The implemention that was called JavaSoundMixer in previous Sun
- releases of Java 3D has been renamed to HeadspaceMixer.
- It was renamed in anticipation of the release of a new AudioDevice
- implementation that uses the JavaSound API which will be called
- JavaSoundMixer (described below).
-
- The HeadspaceMixer audio device will be created and initialized when the
- utility SimpleUniverse.Viewer.createAudioDevice() method is called.
- If your application uses this utility, no change will be required to
- use the recommended HeadspaceMixer implementation.
-
- If your application explicitly used the older JavaSoundMixer audio device
- implemention from the package com.sun.j3d.audioengines.javasound, you should
- change the reference to JavaSoundMixer, at least for this release,
- to HeadspaceMixer:
-
- import com.sun.j3d.audioengines.headspace.HeadspaceMixer;
- :
- HeadspaceMixer mixer = new HeadspaceMixer(physicalEnvironment);
-
- Most of the Java 3D Audio features have been implemented but there are
- a few exceptions. Additionally, some Java 3D Audio features are only
- only partially implemented. Please read the README.release document in
- programs/examples/Sound for more information.
-
- Note that the HeadspaceMixer is not supported in the 64 bit Solaris
- version of Java 3D.
-
- =============================================
- JavaSoundMixer AudioDevice3DL2 Implememtation
- =============================================
-
- The JavaSoundMixer implementation is part of the Sun Java 3D
- com.sun.j3d.audioengines.javasound package. This implementation uses
- the Java Sound API. All low-level access to the platforms audio device
- are dependent on the Java Sound mixer implementation(s) installed on
- the machine you're running on.
-
- The JavaSoundMixer Java 3D audio device implementation uses Java Sound
- SourceDataLine streams for non-cached data and Java Sound Clips for
- cached data. Support for specific sound cards, the exact input formats
- that can be passed as data to Java 3D MediaContainers, and which feature
- are rendered in software verses accelleration hardware is dependent on
- the Java Sound implementation installed on your machine.
- There is guarenteed to be at least one Java Sound mixer implementation
- available with all J2SE releases (such as Sun's JDK 1.3 and above).
- Please read the README.release document in programs/examples/Sound.
-
- ==========
- BUGS FIXED
- ==========
-
- Documentation
- -------------
- 4386872 Docs for Behavior.postId is too terse
- 4501813 Documentation should state that AA lines/points are
- rendered as transparent
- 4702908 OrbitBehavior class overview says to call non-public method
-
- Core Graphics and Vecmath
- -------------------------
- 4366511 OGL: Multisampling does not support under windows for fullscene
- antialiasing
- 4468303 javax.vecmath.Tuple3d serialVersionUID not compatible
- 4661574 D3D : setValidVertexCount on byRef quad array is not working right
- 4663280 D3D: multitextue not work in jtest.essential.SimpleLeaf.MorphBasicTest1
- 4664809 FullScene antialiasing disable under wildcat III even though driver
- enable it
- 4667098 Windows-apps/Enigma: keyboard panel flashes when box is rotated / key
- is pressed
- 4667539 IllegalMonitorStateException throws from Renderer if other Exception
- happen
- 4669051 setValidVertexCount has performance issues
- 4671012 Incorrect multipass Texture if TextureUnitState[] not contiguously
- enable
- 4672391 ImageComponent2D/3D getImage() throws ClassCastException for non
- BufferedImage
- 4672530 Deadlock when using WakeupOnTransformChange
- 4678251 Texture attributes and TexCoordGen mode sometimes fail to apply
- 4678932 setPointAntialiasingEnable will turn z buffer off even though
- surface is drawn
- 4679787 Antialias Polygon Line and Polygon Point mode are classify as opaque
- 4683152 ClassCast exception in core when setAutoComputeBounds(false)
- 4684982 At setLive(), if boundsAutoCompute is false, j3d's bounds didn't
- set correctly
- 4685156 Crash under Linux Nvidia driver if texture destory without a
- non-shared ctx
- 4685686 Raster Image flicking and NullPointerException throws when
- CLIP_IMAGE is used
- 4685682 NullPointerException when clone Appearance with TextureUnitState
- 4685691 setupMirrorInterleavedColorPointer throws ArrayIndexOutOfBoundsException
- 4686650 Transform3D.setTranslation() does not classify correctly
- 4684150 Lock up when using J3DGrpahics2DImpl
- 4687351 Polygon line width/point size may drawn larger than expected in
- some case
- 4691511 REGRESSION: setConstantScaleEnable(true) does not work on 1.3 beta2
- 4691654 State change that causes displaylist to be rebuilt may result in
- missing geometr
- 4686766 Deadlock when same geometry share by different VirtualUniverse is
- updated
- 4693468 Incorrect Texture display after Texture object GC
- 4698695 Appearance may mess up when Material is shared by geometries w
- and w/o normal.
- 4693307 TRANSPARENCY_SORT_GEOMETRY : State update may cause Shape3D to
- lose geometry
- 4703460 Update of J3DGraphics2D damage extent is not MT-Safe
- 4475677 Current Sensor hotspot semantics are broken
- 4690060 OGL: Texture Transform affects Background Image
- 4697067 BoundingPolytope doesn't report intersection
- 4701430 Infrequent NPE at RenderBin.java:544
-
- Utilities
- ---------
- 4666597 GeometryInfo: getIndexedGeometryArray() ignore useCoordIndexOnly
- parameter
- 4678136 SceneGraphIO API - UseSuperClassIfNoChildClass implementation incomplete
- 4682760 SceneGraphIO node references not resolved before user code called
- 4683145 Extra null geometry added to Shape3D when loading j3f
- 4690159 dublicateOnCloneTree flag not save in SceneGraph IO NodeComponentState
- 4702256 ViewingPlatform.setViewPlatform() doesn't add ViewPlatform to
- TransformGroup
-
- ==============
- KNOWN PROBLEMS
- ==============
-
- To get the very latest list of known Java 3D bugs, look on the Java
- Bug Parade (http://developer.java.sun.com/developer/bugParade/index.html)
-
- Documentation Bugs
- ------------------
- 4120197 Docs for Vector-like methods (e.g., addChild, setChild) need improvement
- 4303052 Quaternion documentation is inadequate
- 4303054 Lighting equations should be updated to reflect color override
- 4303062 Need to specify which attributes are passed by reference versus by value
- 4307547 Need to doc. : scene graph needs to have at least a Canvas3D to keep
- j3d working
- 4331677 setWindowResizePolicy(View.VIRTUAL_WORLD) needs better docs
- 4303056 Docs should specify thread-safety behavior of Java 3D methods
- 4352922 JFTC: light InfluencingBounds (user specified BoundingSphere) seems
- to be broken
- 4357879 JFTC: Ambiguous specification of Shape3D.addGeometry()
- 4364767 JFTC: Java3D's render loop doesn't run continuously.
- 4372654 JFTC: Ambiguous spec of the RemoveChild()
- 4391492 Rotation matrix of Transform3D constructor not extract
- 4415029 JCK: Ambiguous spec on View.removeCanvas(null) should throw
- exception or not
- 4421250 JFTC: Lack of doc on the application of BoundingSphere
- 4500608 TextureAttributes.setColorTable() should document value
- 4514880 results of changing geometry and texture are not well documented
- 4693320 Javadoc missing for TCBKeyFrame, CubicSplineSegment, and
- CubicSplineCurve
- 4698350 Spec. did not mention alpha component for Texture Mode REPLACE,
- MODULATE clearly
-
- Core Graphics and Vecmath
- -------------------------
-
- 4193466 GMatrix SVD does not work correctly for some cases.
- 4269784 vecmath.GMatrix.LUD inefficient
- 4476558 Matrix classes consume too much memory.
- 4154445 PathInterpolator's setKnot method does not validate inputs
- 4160172 Access to some aggregate data is not MT-safe
- 4181344 Java 3D cannot handle more than 64 lights
- 4181340 Updating the view cache could be a problem if other canvas running
- on same view
- 4181417 Need to add an internal epsilonEquals method for bounds objects
- 4179923 ReadRaster does not clip to screen correctly
- 4189092 HEAD_PREDICTOR and HAND_PREDICTOR policies not implemented
- 4191172 Text3D rendering problems
- 4259345 Text3D does not correct convert geometry of Japanese-text
- 4266866 Text3D handles badly the 2-byte international characters.
- 4299480 readRaster() and waitForOffScreenRendering() will not work if
- threadLimit=1
- 4305676 Native method error message is not I18N ready
- 4313678 Java3D disables invalid lights (lights 24-31 on an Expert3D)
- 4335245 Raster type RASTER_COLOR_DEPTH did not work as expect
- 4334312 In CanvasViewCache : vprNotDirty shouldn't be peeked at.
- 4340607 Node and NodeComponent's set* methods not synchronized with
- set/clearLive
- 4344034 jftc: jtest.bugs.b4335549.HelloUniverse still fails on Windows NT and 2K
- 4344060 jftc: jtest.bugs.b4336095.PickTest still fails on Windows NT and 2K
- 4351579 APIs issue : Shape3D intersect method -- multiple geometry support
- 4357843 Picking doesn't handle OrientedShape3D's orientation when doing
- intersect test.
- 4358284 JFTC: readRaster() ignore StereoMode context
- 4361566 JFTC:jtest.raster.Ras seems wrong where transparent triang and
- raster overlapped
- 4359764 Java3D do not support > 32 canvas
- 4363899 APIs issue : OrientedShape3D's intersect method needs view info.
- 4370378 ImageComponentByReferenceTest raster image disappeared after window
- maximized
- 4387641 Canvas3D stays clipped when another window is brought in front
- and removed
- 4396630 JFTC: Transparency obviously wrong in BLEND mode
- 4396453 Bounding polytope should check for NaN bounds
- 4407825 JFTC: Scope setting in ModelClip works incorrectly in compile mode
- 4416086 JFTC: light.DLight5 and light.PLight1 fail when using
- setLocalEyeLightingEnable
- 4420305 sound/animation sometimes disrupted by menus
- 4428412 AxisAngle set(Matrix ) fail when rotation is PI about X/Y/Z
- 4429560 DecalGroup not working for some graphics card like TNT card
- 4431186 performance, setAmbientColor, setDiffuseColor on Material
- 4440657 GetBounds() on Link throws NullPointerException when SharedGroup not set
- 4446477 Please make Canvas3D transparent while rendering a vitual universe
- 4446580 JFTC: Text3D.setString() throws NullPointerException when font3D=null
- 4459561 JFTC: Depth works wrong in tests on raster.
- 4451050 View.setVpcToEc() not updating
- 4466779 NullPointerException using MoveTo when BG not in scenegraph
- 4466854 Overloaded TRANSFORM_CHANGED message for setting activation radius
- or scheduling
- 4470264 JCK: View.removeCanvas() behaves inconsistently.
- 4471205 JFTC: Text3D.setPosition() doesn't work properly
- 4471773 Behavior scheduling did not stop under IE/Netscape when window iconified
- 4473656 Java3D/JFTC: timing/synchronization is not always consistent when
- running tests
- 4475320 JFTC coverage: bounds hash mismatches bounds set by setBounds
- 4481974 RFE: Use common j3dcore.jar for both D3D/OGL
- 4483754 ImageComponent*D getRenderedImage returns null
- 4487553 Group index off in compiled mode
- 4488217 JFTC: Morph doesn't work correct with Indexed*StripArray and
- Indexed*FanArray
- 4485743 JFTC: readRaster() intermittently fails in a JFTC test's first frame
- 4494458 j3d.utils.geometry creates unnecc. mem - TexCoord2f pool was
- created w/o texture
- 4492873 Static scene not update for View VIRTUAL_WORLD policy
- 4502094 JFTC: Point size in BackGround geometry set incorrect.
- 4504095 Loose AWT events after iconifying and then de-iconifying
- 4508697 performance regression on win32
- 4508747 JFTC: OrientedShape3D object disappears when rotating around X or Z
- axis.
- 4509357 example program - raster image incorrect until mouse moved into window
- 4504143 Menu accelerators do not work when changing the viewer position
- with mouse
- 4512031 JFTC: Wrong cube color rendered in LOD test
- 4512410 Ydown Raster by-reference images are always copied
- 4512666 JFTC:GeometryStrip constructor throws exception with 0 length
- stripVertexCounts
- 4512179 Undeterminable behavior caussed by Appearance.setTexture
- 4513264 JFTC: Appearance of geometries as Background looks incorrect.
- 4513820 ArrayIndexOutOfBoundsException when global alpha is disabled
- and screen = 1
- 4514253 Cycles in scenegraph are not detected
- 4513029 J3dI18N: Error using IndexedGeometryArray.getInitialIndexIndex
- 4515257 JFTC: MultiUniverses intermittently failed
- 4515468 CompressedGeometry constr (CGH, J3DB) and getCompressedGeometryBuffer()
- not impl
- 4515558 Rendering artifacts in DEMViewer when Labels option is turned on
- 4515939 Fog color and background color are not updated synchronously
- 4515950 Setting AlternativeCollisonTarget not work after live
- 4515966 setAlternateCollisionTarget throws ArrayIndexOutOfBounds at
- getCachedTargets()
- 4516005 AddRemoveCanvas2 fail to show cube intermittently
- 4516966 Font extrusion for 3D text can generate NaN
- 4517265 window color changes with View in Maze
- 4515352 SDRC-Xu axis jumps around when model is rotated
- 4517322 No canvases displayed in AddRemove canvas test
- 4511651 JFTC: Regressions in Text3D - letters disppear and incorrectly
- positioned
- 4518080 Light scoping sometimes not working for compiled geometry
- 4513376 GeometryArray.setTextureCoordinate(int, int, TexCoordX) different
- from API
- 4476109 OGL: DecalGroup afffect render of other primitive under windows
- 4524590 FPSCounter applet hangs when run in netscape via plugin
- 4525664 LOD test Zoom does not work in mouse with 2 button under
- windows JDK1.4 beta3
- 4529297 TCK: Group.removeAllChildren() inconsistent with expected behavior
- 4514395 Deadlock in waitForOffScreenRendering() in canvas callback with
- multiple screen
- 4599536 T3D.setRotation(Q4d) throws exception but not with T3D.setRotation(AA4d)
- 4524594 Cloning and reloading PureImmediate applet throws NullPointerException
- 4634463 Node.getCollidable() throws incorrect exception text if capability
- not set
- 4636676 Canvas3D not resizing properly
- 4653688 REGRESSION: No textures with beta J3D 1.3 DirectX on WinXP and ATI
- 4656945 jtest.other.Examples.AddRemoveCanvas2 sometimes throws
- ArrayIndexOutOfBoundsExce
- 4667088 sas applications gets VerifyError running with 64-bit JVM
- 4667052 Some models loaded with bgfViewer are not initially visible
- using JDK 1.4
- 4669211 SharedGroup.getLinks().length is always zero for non-live Link node.
- 4674146 Background texture fail to render for RenderedImage and byref
- ImageComponent2D
- 4653840 Multipass texture blending mode problem
- 4676483 Geometry by Reference change alpha color component of user data
- 4674843 ImageComponent3D byReference always make an internal copy
- 4676808 View class needs getTrackerBaseToVworld()
- 4679790 Fail to trigger WakeupOnViewPlatformEntry event when branchgroup
- reattach
- 4681750 Texture3D throws ArrayIndexOutOfBoundsException when scaleImage
- 4681863 OGL: OffScreen canvas ignore GraphicsConfigTemplate under windows
- 4683493 CompressGeometry should render as transparency for polygon line
- antialias mode
- 4684405 j3d holds a reference to user's bounds (via setBounds()) for use
- in getBounds().
- 4684807 NullPointerException in NodeComponent during setAppearance()
- 4686527 Deadlock between MasterControl and user thread when using ByRef
- updateData()
- 4680305 Detaches of SharedGroups from user threads is not Mt-Safe
- 4687389 View isBehaviorSchedulerRunning() may always return true
- 4688070 Memory not immediately reclaim when branchgroup remove
- 4676035 Off screen rendering has off-center view
- 4697155 ByRef USE_COORD_INDEX_ONLY geometry not yet implement for
- optimizeForSpace=false
- 4702086 D3D: crash when fallback to software mode also fail
- 4703478 Test MCBug sometime hangs when Attach Canvas
- 4703944 MasterControl.viewActivate throws NullPointerException
-
- Sound
- -----
-
- 4187092 Filtering causes loud, sweeping resonance to be added to most sounds
- 4187093 Cross-talk cancellation for sound playback in not implemented
- 4315018 Garbage sound in TestFilter
- 4360462 HeadspaceMixer: InputStream MediaContainers not fully functional
- 4515883 JavaSoundMixer: u-Law and A-law formated files can not be loaded
- 4519963 Transformation of sound position behind that of graphics
- 4521219 Resetting MediaContainer with null sound data causes ClassCastException
- 4634751 BackgroundSound fails to activates with the view intersects it's bounds.
- 4655845 Sound fail to load if Sample is BUFFERED and frameLength > 1048576
- 4680280 JavaSoundMixer play sound only once
-
- Utility Bugs
- ------------
-
- 4252349 First viewport may jump when using KeyNavigatorBehavior
- 4259533 getTexture() throws NullPointerException when using proxies
- 4327643 RFE: LW3Dloader needs to be able to load 'other' image file formats
- 4331669 setRectangleScaleFactor will not change text size unless
- setString called (doc?)
- 4337833 Java 3D: KeyNavigator has a race condition
- 4336679 In examples/PickTest program, a pick miss can happen on morph object.
- 4343427 Loader interface has no facility to monitor progress of Load Operation
- 4308592 texture loader does not scale non-power-of-2 RGBA textures properly
- 4372722 ObjectFile loader hangs when loader .jpg file
- 4374631 CompressedGeometryFile can't be used by applets with default security
- 4376368 Adding KeyNavigatorBehavior will keep cpu busy
- 4386880 TextureLoader should use imageio loaders
- 4431105 PickResult.getNode should take a class not an integer
- 4431675 PickTool can't handle Text3D with pickmode set to
- GEOMETRY_INTERSECT_INFO.
- 4450545 KBRotPosScaleSplinePathInterpolator does not support nonuniform scale
- 4474221 KBRotPosScaleSplinePathInterpolator pitch and heading are incorrect ?
- 4485451 Orbit behavior freezes
- 4484437 cancel() method for Loader?
- 4493945 NormalGenerator wasting memory in IndexedGeometryArrays
- 4507498 modify J3dGrpahics2D for more methods to use optimized version
- of validate
- 4518203 cloneNode() is not implement in MouseRotate/Zoom/Translate
- 4518767 OrbitBehavior redraws scene graph on any mouse movement
- 4625565 GeometryInfo provokes exception from GeometryArrayRetained in ObjectFile
- 4627740 GeometryCompressor should store original material attributes in header
- 4633705 J3DTimer in Java3D under linux not working properly
- 4676082 possible NullPointerException in ViewPlatformAWTBehavior
- 4690609 GeometryArray: cannot directly access data in BY_REFERENCE mode
- 4692475 saveChildren() return is ignored
- 4702800 HelloUniverseConfig throws IllegalArgumentException
- 4702248 Canvas passed to ViewPlatformAWTBehavior ignored if from a
- different view
-
- Direct3D specific Bugs
- ----------------------
- Problem in the NVidia GForce
- -----------------------------
- Make sure you have the latest driver from http://www.nvidia.com/
-
- ModelClip did not work under DirectX8.0 debug build, use
- Eumulation mode to workaround this.
-
-