home *** CD-ROM | disk | FTP | other *** search
/ Chip 2005 March / CMCD0305.ISO / Software / Demo / Elearn / Fizica / required / Java / Java3D.exe / Disk1 / data1.cab / README / README.java3d.win32d3d.txt
Encoding:
Text File  |  2003-04-18  |  27.6 KB  |  641 lines

  1.  
  2. Java 3D(TM) 1.3.1
  3.  
  4. README file for Win32/DirectX
  5.  
  6. This file contains important information for users of Java 3D(TM).
  7. The first three sections (Requirements, Installation, and Running
  8. Java 3D(TM) in a Browser) are of interest to all Java 3D(TM) users.
  9. The rest of this file applies only to developers of Java 3D(TM)
  10. applications.
  11.  
  12. ** It is recommended that any previous version of Java 3D(TM) be
  13. ** uninstalled before installing this version.
  14.  
  15. ============
  16. REQUIREMENTS
  17. ============
  18.  
  19. This version of Java 3D(TM) for Windows 98, Mindows ME and Windows 2000
  20. requires the following:
  21.  
  22.         Java 2 (Runtime or SDK) version 1.3.1 or later from Sun
  23.     Microsystems (http://java.sun.com/jdk/).  This includes
  24.     the Java Plug-In (JPI) to update Java(TM) in your browser.
  25.  
  26.         DirectX 8.0 or later, available from Microsoft
  27.         (http://www.microsoft.com/directx/default.asp).
  28.  
  29. ============
  30. INSTALLATION
  31. ============
  32.  
  33. You must have permission to write files in your Java(TM) Runtime
  34. Environment and/or SDK directories.  If you do not have this
  35. permission, the installer will run to completion but Java 3D(TM)
  36. will not be installed.  Make sure you are running Java(TM) from
  37. your local machine and that you are the same user who installed
  38. Java.
  39.  
  40. To install Java 3D(TM), execute the InstallShield binaries.
  41.  
  42.    Runtime only:      java3d-1_3_1-windows-i586-directx-rt.exe
  43.    Runtime and SDK:   java3d-1_3_1-windows-i586-directx-sdk.exe
  44.  
  45. The installers will upgrade your most recently installed Java 
  46. Runtime Environment and SDK.  
  47.  
  48. The Java 3D(TM) SDK includes several demo programs that can
  49. verify correct installation.  Assuming your Java 2 SDK is installed
  50. at \j2sdk1.4.1, try the following:
  51.  
  52.         cd \j2sdk1.4.1\demo\java3d\HelloUniverse
  53.         java HelloUniverse
  54.  
  55.         Note: Many more demos are available under the demo\j
  56. ava3d              directory.  Some of the demos require a maximum memory
  57.               pool larger than the default in java.  To increase the
  58.               maximum memory pool to 64 meg, add the following command
  59.               line options to java or appletviewer:
  60.                   java: -mx64m
  61.                   appletviewer: -J-mx64m
  62.  
  63. Java 3D(TM) consists of four jar files and three shared libraries.
  64. You do not need to include the jar files in your CLASSPATH,
  65. nor do you need to include the shared libraries in your PATH.
  66. You should include "." in your CLASSPATH or ensure that CLASSPATH
  67. is not set.
  68.  
  69. Java 3D documentation and tutorials are available from the Java 3D(TM)
  70. Home Page: http://java.sun.com/products/java-media/3D/
  71.  
  72. ======================
  73. Compiled Vertex Array
  74. ======================
  75.  
  76. Compiled Vertex Array extension is used in IndexedGeometryArray
  77. when it's USE_COORD_INDEX_ONLY flag is set and it is not in display list mode.
  78. You may disable the use of this extension by setting the new property,
  79. j3d.compliedVertexArray, to false.
  80.  
  81. Compiled Vertex Array extension is used extensively, on SUN XVR-4000, for
  82. all GeometryArray type when display list mode is not used.
  83. You may disable the use of this extension by setting the new property,
  84. j3d.compliedVertexArray, to false.
  85.  
  86. ===========================
  87. Multisampling Antialiasing
  88. ===========================
  89.  
  90. By default, full scene antialiasing is disabled if a
  91. multisampling pixel format (or visual) is chosen.
  92. To honor a display drivers multisample antialiasing
  93. setting (e.g. force scene antialiasing), set the 
  94. implicitAntialiasing property to true. 
  95. This causes Java3D to ignore its own scene antialias
  96. settings, letting the driver implicitly implement the 
  97. feature. 
  98.  
  99.       java -Dj3d.implicitAntialiasing=true MyProgram 
  100.  
  101. ================================
  102. RUNNING JAVA 3D(TM) IN A BROWSER
  103. ================================
  104.  
  105. You can run Java 3D(TM) programs in your browser.  Java 2(TM)
  106. from Sun includes the Java Plug-In (JPI) to upgrade the Java(TM)
  107. in the browser to Java 2(TM).  To verify proper installation,
  108. point your browser to file:/j2sdk1.4.1/demo/java3d/index.html
  109.  
  110. If you are getting permission exceptions while running the Java 3D
  111. demo programs in your browser, it may be because of bug 4416056.
  112.  
  113. First, upgrade your Java SDK to the latest release.  The bug may
  114. have been fixed by the time you read this.
  115.  
  116. To work around the problem, the path to your JRE must not 
  117. contain spaces.  By default, it does ("c:\Program Files\JavaSoft\. . .").
  118. The Java SDK installer automatically installs the JRE in 
  119. c:\Program Files\JavaSoft, so you must run the installers in
  120. this order:
  121.   Java SDK installer
  122.   Java JRE installer (choose a directory with no spaces)
  123.   Java 3D SDK installer (will default to the correct directories)
  124.  
  125. NOTE: Many Java 3D(TM) programs will require a larger heap size
  126. than the default 16M in the JPI.  Run the Java Plug-In Control
  127. Panel from Start/Programs (JPI 1.2.2) or Start/Settings/Control 
  128. Panel (JPI 1.3) and in "Java Run Time Parameters" put "mx64m"
  129. for 64M of heap memory.
  130.  
  131. To create a web page with Java 3D, you need to use special HTML
  132. code to force the browser to use the JPI VM.  Refer to the
  133. following URL for information on using Java Plug-In "HTML
  134. Converter" and running applets using Java Plug-in:
  135.  
  136.         http://java.sun.com/products/plugin/
  137.  
  138. ====================================================
  139. DISTRIBUTING Java 3D(TM) WITH YOUR JAVA(TM) PROGRAMS
  140. ====================================================
  141.  
  142. Sun Microsystems allows vendors to distribute the Java 3D(TM) Runtime
  143. environment with their Java programs, provided they follow the terms
  144. of the Java 3D(TM) Binary Code License and Supplemental License Terms
  145. agreement.
  146.  
  147. This document uses the term "vendors" to refer to licensees,
  148. developers, and independent software vendors (ISVs) who license and
  149. distribute Java 3D(TM) with their Java programs.
  150.  
  151. REQUIRED vs. OPTIONAL FILES
  152. ---------------------------
  153. Vendors must follow the terms of the Java 3D(TM) Evaluation License
  154. agreement, which includes these terms:
  155.  
  156.  - Don't arbitrarily subset Java 3D(TM). You may, however, omit those
  157.    files that have been designated below as "optional".
  158.  
  159.  - Include in your product's license the provisions called out
  160.    in the Java 3D(TM) Evaluation License.
  161.  
  162. BUNDLING Java 3D(TM)
  163. --------------------
  164. Java 3D(TM) comes with its own installer that makes it suitable for
  165. downloading by end users. Java(TM) application developers have the
  166. option of not bundling Java 3D(TM) with their software.  Instead,
  167. they can direct end-users to download and install the Java 3D(TM)
  168. software themselves.
  169.  
  170. Required Files
  171. --------------
  172.  
  173.         <JREDIR>\bin\J3D.dll
  174.         <JREDIR>\bin\j3daudio.dll
  175.         <JREDIR>\bin\J3DUtils.dll
  176.         <JREDIR>\lib\ext\vecmath.jar
  177.         <JREDIR>\lib\ext\j3dcore.jar
  178.         <JREDIR>\lib\ext\j3daudio.jar
  179.         <JREDIR>\lib\ext\j3dutils.jar
  180.  
  181. Optional Files
  182. --------------
  183.  
  184. An application developer may include these files and directories
  185. with their Java 3D(TM) application, but is not required to do so:
  186.  
  187.         <JDKDIR>\j3d-utils-src.jar
  188.         <JDKDIR>\demo\java3d
  189.  
  190. ========================
  191. CHANGES SINCE 1.3
  192. ========================
  193.  
  194. ============
  195. NEW FEATURES
  196. ============
  197.  
  198.   A set of new methods is added to the Viewer, a utility class, to 
  199.   support dynamic video resize, specificially targeted for SUN  
  200.   framebuffer : XVR-4000.
  201.   Dynamic video resize is a new feature in Java 3D 1.3.1.   
  202.   This feature provides a means for doing swap synchronous resizing
  203.   of the area that is to be magnified (or passed through) to the
  204.   output video resolution. This functionality allows an application
  205.   to draw into a smaller viewport in the framebuffer in order to reduce
  206.   the time spent doing pixel fill. The reduced size viewport is then 
  207.   magnified up to the video output resolution using the SUN_video_resize
  208.   extension. This extension is only implemented in XVR-4000 and later
  209.   hardware with back end video out resizing capability.
  210.  
  211.  
  212. =======================
  213. Constructing a Canvas3D
  214. =======================
  215.  
  216. Many Java 3D programs pass null to the Canvas3D constructor.  By doing
  217. this, Java 3D will select a default GraphicsConfiguration that is
  218. appropriate for Java 3D.  However, this is a bad practice, and can lead
  219. to errors when applications try to run in alternate environments, such as
  220. stereo viewing.  Java 3D will now print out a warning if the Canvas3D
  221. constructor is passed in a null argument for the GraphicsConfiguration.
  222.  
  223. ====================================
  224. Multipass Texture support limitation
  225. ====================================
  226. If an application has setup more texture unit states than the graphics 
  227. hardware can support, COMBINE mode will not be supported and Java 3D will 
  228. fallback to the REPLACE mode.
  229.  
  230. =========
  231. Utilities
  232. =========
  233.  
  234. This release includes utilities for Java 3D.  These utilities are still
  235. being defined and under development.  Much of the source for these utilities
  236. is also provided.  The API for these utilities may change in future releases.
  237.  
  238. The following utilities are provided in this release:
  239.  
  240.         - Some predefined Mouse based behaviors
  241.         - Picking utilities including predefined picking behaviors
  242.         - Geometry creation classes for Box, Cone, Cylinder, and Sphere
  243.         - A Text2D utility
  244.         - Universe Builders - SimpleUniverse and ConfiguredUniverse
  245.         - An Image Loading utility
  246.         - A Normal Generator utility
  247.         - A Polygon Triangulator utility
  248.         - Triangle stripifier
  249.         - Geometry compression utilities
  250.         - Spline-based path interpolators
  251.         - Wavefront .obj loader
  252.         - Lightwave 3D File Loader
  253.         - A scenegraph io utility
  254.         - A high resolution interval timer
  255.    
  256. ===================================
  257. Enabling Stereo with SimpleUniverse
  258. ===================================
  259.  
  260. The SimpleUniverse utility does not, by default, request a
  261. GraphicsConfiguration that is capable of Stereo rendering.  To enable this,
  262. you need to set a property when running your application.  Here is an
  263. example.
  264.  
  265. java -Dj3d.stereo=PREFERRED MyProgram
  266.  
  267. Some framebuffers only have one Z buffer and share this between the left
  268. and right eyes.  If you are experiencing problems using stereo try the
  269. following property:
  270.  
  271. java -Dj3d.stereo=PREFERRED -Dj3d.sharedstereozbuffer=true MyProgram
  272.  
  273. =====================================================
  274. Information on the Direct3D Implementation of Java 3D
  275. =====================================================
  276.  
  277.   Unsupported Features
  278.   --------------------
  279.   The following features are currently unsupported in the Direct3D
  280.   implementation of Java 3D:
  281.     Line width
  282.     Line antialiasing
  283.     Point antialiasing
  284.     PolygonAttributes backFaceNormalFlip
  285.     RenderingAttributes ROP_XOR
  286.     Stereo
  287.  
  288.   Texture features not support:
  289.     Texture color table
  290.     Base/Maximum Level
  291.     Max/Minimum LOD
  292.     LOD offset
  293.     Detail Texture
  294.     Sharpen Texture Function
  295.     Filter4 Function
  296.     Boundary width 
  297.     Boundary mode CLAMP_TO_EDGE & CLAMP_TO_BOUNDARY 
  298.     (will fall back to CLAMP)
  299.     Texture blend color when multiple pass is used
  300.     to simulate multiTexture.
  301.  
  302.   Limited Support
  303.   ---------------
  304.   FullScreen antialiasing is supported only if the device returns
  305.   D3DPRASTERCAPS_ANTIALIASSORTINDEPENDENT in its raster capabilities
  306.   list.  (OpenGL supports fullscreen antialiasing if an accumulation
  307.   buffer exists.)
  308.  
  309.   TransparencyAttributes.TransparencyMode values FASTEST, NICEST and
  310.   SCREEN_DOOR are the same as BLENDED under D3D.
  311.  
  312.   DepthComponent in certain display mode when stencil buffer
  313.   is selected (use for DecalGroup) since depth Buffer Component
  314.   Read/write can't coexist with Stencil buffer in DirectX8.0.
  315.  
  316.   OffScreen rendering with width/height > current desktop size
  317.   
  318.   Texture coordinates outside the range [0,1] when boundaryModeS
  319.   and boundaryModeT are set to CLAMP will not use the Texture Boundary'
  320.   color unless BASE_LEVEL_LINEAR filtering is turned on.
  321.  
  322.   If the driver did not expose D3DPTADDRESSCAPS_BORDER capability bit
  323.   (viathe directX SDK utility Caps Viewer). Then it didn't support 
  324.   Texture Border color mode. Default color as in Clamp mode will be
  325.   used in this case. Most driver currently available need to
  326.   workaround using reference mode (-Dj3d.d3dDevice=Reference).
  327.  
  328.   if the driver did not expose D3DPMISCCAPS_LINEPATTERNREP capability
  329.   bit then it didn't support line patterns. A solid line will be shown
  330.   in this case. Most driver currently available need to workaround 
  331.   using reference mode.  
  332.  
  333.   Only negative polygon offsets are supported.  The limit of this offset
  334.   corresponds to the depth of the z-buffer.
  335.  
  336.   Float anisotripic filter degree did not support. They will round off 
  337.   to integer value and pass down to the DirectX library.
  338.  
  339.   Texture environment combiner :
  340.  
  341.   COMBINE_REPLACE     - Support if driver expose TextureOpCaps
  342.                         D3DTOP_SELECTARG1. Only combine scale 1 is support.
  343.   COMBINE_MODULATE    - Support if driver expose TextureOpCaps D3DTOP_MODULATE, 
  344.                         D3DTOP_MODULATE2X,  D3DTOP_MODULATE4X for scale 1, 2 & 4
  345.                         respectively.
  346.   COMBINE_ADD         - Support if driver expose TextureOpCaps D3DTOP_ADD, 
  347.                         only combine scale 1 is support
  348.   COMBINE_ADD_SIGNED  - Support if driver expose TextureOpCaps D3DTOP_ADDSIGNED,
  349.                         D3DTOP_ADDSIGNED2X for scale 1 & 2 respectively. Combine
  350.                         scale 4 will fall back to 2.
  351.   COMBINE_SUBTRACT    - Support if driver expose TextureOpCaps D3DTOP_SUBTRACT.
  352.                         Only combine scale 1 is support.               
  353.   COMBINE_INTERPOLATE - Support if driver expose TextureOpCaps D3DTOP_LERP.
  354.                         Only combine scale 1 is support.               
  355.   COMBINE_DOT3        - Support if driver expose TextureOpCaps
  356.                         D3DTOP_DOTPRODUCT3 Only combine scale 1 is support.               
  357.  
  358.   Rendering Different between OGL & D3D
  359.   --------------------------------------
  360.   - SpotLight formula is different, OGL will normally have a bigger bright spot.
  361.  
  362.   - TexCoordGeneration Sphere Map formula is different, OGL will normally 
  363.     has texture map that zoom closer than D3D.
  364.  
  365.   - Specular hightlight in Texture mapping mode may different. If OGL driver 
  366.     support separate specular color, then resulting specular highlight in
  367.     texture are the same. Otherwise D3D verson will have a brighter and
  368.     more obviously specular highlight compare with OGL.
  369.  
  370.   Fullscreen Support
  371.   ------------------------
  372.   The Direct3D implementation of Java 3D can be run in fullscreen mode.
  373.   To start an application in fullscreen mode, use the property j3d.fullscreen.
  374.   The values for j3d.fullscreen are:
  375.     REQUIRED  -   A fullscreen canvas is required. If not available, do not
  376.                   start up the application.
  377.     PREFERRED -   A fullscreen canvas is desired for this invocation of the
  378.                   Java 3D application.  If a fullscreen canvas cannot be
  379.                   created, a windowed canvas is acceptable. 
  380.     UNNECESSARY - States that a fullscreen canvas is not necessary for this
  381.                   application.  Create a windowed application (this is the
  382.                   same behavior as not setting this property).
  383.  
  384.   Example:
  385.     java -Dj3d.fullscreen=REQUIRED HelloUniverse
  386.  
  387.   Further, an application can be toggled between fullscreen and windowed mode
  388.   by use of the <Alt><Enter> keyboard combination. 
  389.  
  390.   When using JDK1.4 fullscreen API with Java3D DirectX version, it is
  391.   necessary to set the following property :
  392.  
  393.    -Dsun.java2d.noddraw=true 
  394.  
  395.   Direct3D Driver Selection
  396.   -------------------------
  397.  
  398.   When there is more then one device associated with a
  399.   monitor, by default, Java 3D uses the first driver found
  400.   on a given display.  This order can be found by
  401.   using the -Dj3d.debug=true property during Java startup.
  402.  
  403.   In order to use a 3D only graphics card such as Voodoo1/2
  404.   A new property has been added
  405.  
  406.    -Dj3d.d3ddriver=idx  
  407.  
  408.   where idx is the driver order number (starting with 1) found
  409.   using the debug property above.  This will force Java 3D to use
  410.   the driver specified by the user (this may fail if the driver is
  411.   not compatible with the display).  For a typical setup with a 3D
  412.   only card attached to a single monitor system, use idx=2.  This
  413.   will automatically toggle to fullscreen hardware acceleration mode.
  414.  
  415.   Direct3D Device Selection
  416.   -------------------------
  417.   In order to aid in development and debugging, Java 3D has added a property
  418.   to allow the D3DDevice to use for rendering to be selected.  The property,
  419.   j3d.d3ddevice can have the following values:
  420.     tnlhardware - select a device that supports transform and lighting in
  421.                   hardware, if present.  If no such device is present,
  422.                   a dialog box is displayed to alert the user and the
  423.                   application will exit.
  424.     hardware    - select a Direct3D device that performs hardware
  425.                   rasterization, if present.  If no such device is present,
  426.                   a dialog box is displayed to alert the user and the
  427.                   application will exit.
  428.     reference   - use the Direct3D reference pipeline (only available if
  429.                   the Direct3D SDK is installed).
  430.  
  431.   By default Java 3D first tries to select a TnLhardaware device, if that fails
  432.   a Hardware device, if that also fails then finally Java 3D selects an
  433.   Emulation device.
  434.  
  435.   Ignored Java 3D Properties
  436.   --------------------------
  437.   The following Java 3D properties are ignored by the Direct3D implementation:
  438.     j3d.sharedctx
  439.     j3d.stereo
  440.     j3d.sharedstereozbuffer
  441.     j3d.g2ddrawpixel 
  442.     j3d.usecombiners
  443.     j3d.disableSeparateSpecular
  444.     j3d.backgroundtexture
  445.     j3d.disableXinerama
  446.  
  447. ===================================================
  448. Information on Java 3D Audio Device Implementations
  449. ===================================================
  450.  
  451. Java 3D sound is rendered via the use of a specific implementation
  452. of the AudioDevice3D interface.   This release includes two AudioDevice3DL2
  453. implementations: HeadspaceMixer and JavaSoundMixer.  Both of these
  454. implementations are included in the j3daudio.jar.
  455.  
  456. Please read README.release in program examples Sound directory for details
  457. regarding the feature and format limitations of each of these implementations
  458. and for examples of these use.
  459.  
  460. =============================================
  461. HeadspaceMixer AudioDevice3DL2 Implememtation
  462. =============================================
  463.  
  464.  The HeadspaceMixer implementation is part of the Sun Java 3D
  465.  com.sun.j3d.audioengines.headspace package.  This implementation
  466.  uses a version of the Headspace Audio Engine licensed from Beatnik
  467.  which does all rendering in software and pipes the stereo audio image
  468.  to the platform's audio device.
  469.  
  470.  The implemention that was called JavaSoundMixer in previous Sun
  471.  releases of Java 3D has been renamed to HeadspaceMixer.
  472.  It was renamed in anticipation of the release of a new AudioDevice
  473.  implementation that uses the JavaSound API which will be called
  474.  JavaSoundMixer (described below).
  475.  
  476.  The HeadspaceMixer audio device will be created and initialized when the
  477.  utility SimpleUniverse.Viewer.createAudioDevice() method is called.
  478.  If your application uses this utility, no change will be required to
  479.  use the recommended HeadspaceMixer implementation.
  480.  
  481.  If your application explicitly used the older JavaSoundMixer audio device
  482.  implemention from the package com.sun.j3d.audioengines.javasound, you should
  483.  change the reference to JavaSoundMixer, at least for this release,
  484.  to HeadspaceMixer:
  485.  
  486.      import com.sun.j3d.audioengines.headspace.HeadspaceMixer;
  487.              :
  488.      HeadspaceMixer mixer = new HeadspaceMixer(physicalEnvironment);
  489.  
  490.  Most of the Java 3D Audio features have been implemented but there are
  491.  a few exceptions.  Additionally, some Java 3D Audio features are only
  492.  only partially implemented.  Please read the README.release document in
  493.  programs/examples/Sound for more information.
  494.  
  495.  Note that the HeadspaceMixer is not supported in the 64 bit Solaris 
  496.  version of Java 3D.
  497.  
  498. =============================================
  499. JavaSoundMixer AudioDevice3DL2 Implememtation
  500. =============================================
  501.  
  502.   The JavaSoundMixer implementation is part of the Sun Java 3D
  503.   com.sun.j3d.audioengines.javasound package.  This implementation uses
  504.   the Java Sound API.  All low-level access to the platforms audio device
  505.   are dependent on the Java Sound mixer implementation(s) installed on
  506.   the machine you're running on.
  507.  
  508.   The JavaSoundMixer Java 3D audio device implementation uses Java Sound
  509.   SourceDataLine streams for non-cached data and Java Sound Clips for
  510.   cached data.  Support for specific sound cards, the exact input formats
  511.   that can be passed as data to Java 3D MediaContainers, and which feature
  512.   are rendered in software verses accelleration hardware is dependent on
  513.   the Java Sound implementation installed on your machine.
  514.   There is guarenteed to be at least one Java Sound mixer implementation
  515.   available with all J2SE releases (such as Sun's JDK 1.3 and above).
  516.   Please read the README.release document in programs/examples/Sound.
  517.  
  518. ==========
  519. BUGS FIXED
  520. ==========
  521.  
  522. Core Graphics and Vecmath
  523. -------------------------
  524. 4685686 Apps Particles sometimes throws ArrayOfBoundsException at GeometryArrayRetained
  525. 4794994 Memory leak when SharedGroup removed 
  526. 4792478 ArrayIndexOutOfBoundsException with two ViewSpecificGroups with Lights
  527. 4793926 Incorrect collison report when geometry close to each other 
  528. 4794382 NullPointerException if SharedGroup not set in Link under SwitchGroup 
  529. 4798443 RenderBin findOrderedCollection throws IndexOutOfBoundsException 
  530. 4800640 D3D: Garbage line appear in TexCubeMap negative & postive Y surface
  531. 4805797 View setLocalEyeLightingEnable() does not work
  532. 4807209 View setMinimumFrameCycleTime() fail to free CPU time for other applications
  533. 4809037 OGL: glLockArrayEXT() should invoke after vertex pointer defined
  534. 4826575 J3D fail to run on JDK1.5
  535. 4829457 Missing object when lighting change in SDSC ExHenge
  536. 4829458 Texture stage fail to disable in accelerated mode for multiTexture apps
  537. 4836232 TextureUnitState setTextureAttributes() & setTexCoordGeneration() may not work
  538. 4838311 D3D: TextureAttributes in texture stage need to reset for multitexture
  539. 4839757 OGL: Incorrect rescale normal extension use for non-uniform scale
  540. 4840952 TransformGroupRetained throws NullPointerException if sharedGroup link set null
  541. 4843212 AWTEvent disable if canvas remove from panel and add back later after SG Live
  542. 4843221 GraphicsContext3D flush(true) hangs for non-visible Canvas3D
  543. 4846822 NullPointerException in MasterControl addFreeImageUpdateInfo
  544.  
  545. Utilities
  546. ---------
  547.  
  548. 4331669 setRectangleScaleFactor will not change text size unless setString called (doc?)
  549. 4780878 ConfiguredUniverse needs a way to access multiple behaviors
  550. 4801176 Sphere Texture map reverse when GENERATE_NORMALS_INWARD is used
  551. 4803241 EdgeTable & Edge.java use by NormalGenerator missing in java3d-utils-src.jar
  552. 4822946 Picking throws NullPointerException for BoundingBox/Sphere/Polytope PickShape 
  553. 4822988 SceneGraphIO throws NullPointerException when Morph Node is read
  554. 4827900 TransformInterpolatorState source missing in j3d-utils-src.jar
  555. 4830842 Triangulator fails for polygons with holes in YZ or XZ plane
  556.  
  557. ==============
  558. KNOWN PROBLEMS
  559. ==============
  560.  
  561. To get the very latest list of known Java 3D bugs, look on the Java
  562. Bug Parade (http://developer.java.sun.com/developer/bugParade/index.html)
  563.  
  564. Documentation Bugs
  565. ------------------
  566.  
  567. 4303056  Docs should specify thread-safety behavior of Java 3D methods
  568. 4350033  JFTC: possible conflict between implementation and spec on PolygonOffset
  569. 4391492  Rotation matrix of Transform3D constructor not extract
  570. 4514880  results of changing geometry and texture are not well documented
  571. 4632391  Typo in doc j3d_tutorial_ch2.pdf
  572. 4698350  Spec. did not mention alpha component for Texture Mode REPLACE, MODULATE clearly
  573.  
  574. Core Graphics and Vecmath
  575. -------------------------
  576.  
  577. 4509357  example program - raster image incorrect until mouse moved into window
  578. 4512179  Undeterminable behavior caussed by Appearance.setTexture
  579. 4516005  AddRemoveCanvas2 fail to show cube intermittently
  580. 4518080  Light scoping sometimes not working for compiled geometry
  581. 4529297  TCK: Group.removeAllChildren() inconsistent with expected behavior
  582. 4667088  sas applications gets VerifyError running with 64-bit JVM
  583. 4669211  SharedGroup.getLinks().length is always zero for non-live Link node.
  584. 4674146  Background texture fail to render for RenderedImage and byref ImageComponent2D
  585. 4674843  ImageComponent3D byReference always make an internal copy
  586. 4676035  Off screen rendering has off-center view
  587. 4676483  Geometry by Reference change alpha color component of user data
  588. 4680305  Detaches of SharedGroups from user threads is not Mt-Safe
  589. 4681750  Texture3D throws ArrayIndexOutOfBoundsException when scaleImage
  590. 4681863  OGL: OffScreen canvas ignore GraphicsConfigTemplate under windows
  591. 4684405  j3d holds a reference to user's bounds (via setBounds()) for use in getBounds().
  592. 4684807  NullPointerException in NodeComponent during setAppearance()
  593. 4686527  Deadlock between MasterControl and user thread when using ByRef updateData()
  594. 4697155  ByRef USE_COORD_INDEX_ONLY geometry not yet implement for optimizeForSpace=false
  595. 4701430  Infrequent NPE at RenderBin.java:544
  596. 4705053  OrientedPtTest example program displays frame lag
  597. 4712205  Window panels disappear when BranchGroup.compile() is used.
  598. 4714426  compile() removes null child eventhough ALLOW_CHILDREN_READ is set.
  599. 4720938  IndexedGeometry shouldn't consider vertex not reference by index in computeBound
  600. 4736484  Big alpha value in byRefColor render geometry even though transparency = 1.0
  601. 4740086  Picking cause lots of GC in PickShape intersect() routine
  602. 4751162  View TRANSPARENCY_SORT_GEOMETRY throws NullPointerException when viewpoint move
  603. 4751283  Transform3D.normalize() and Matrix4d.get(Matrix3d) permute matrix columns
  604. 4753957  Morph only consider first GeometryArray when compute bounds
  605. 4762021  Transform3D setScale() fail to return negative scale in some case
  606. 4762753  Precision problem of OrientedShape3D.ROTATE_ABOUT_POINT if far away from origin
  607. 4768237  RuntimeException in pickIntersection.getPointNormal()
  608. 4768353  JBrawl does not run smoothly with > 2 cpus
  609. 4774341  Locale need a wait between changing HiRes and adding branch graph
  610. 4782718  NPE if boundingLeaf in SchedulingBoundLeaf not attach to scenegraph
  611. 4783638  WakeupOnAWTEvent does not support MouseWheelEvent
  612. 4789101  J3D.dll is accessing jniGetObjectClass inside the critical region
  613. 4790016  PickObject generatePickRay return wrong PickShape if View compatibility enable
  614. 4794998  hashKey output TROUBLE message when OutOfMemory
  615. 4828096  Morph doesn't work correctly with Java3D 1.3
  616. 4828098  Morph doesn't use its weights, when it was cloned with cloneTree()
  617.  
  618. Sound
  619. -----
  620.  
  621. 4634751  BackgroundSound fails to activates with the view intersects it's bounds.
  622. 4680280  JavaSoundMixer play sound only once
  623. 4760772  BackgroundSounds not looping with HeadspaceMixer mixer
  624.  
  625. Utility Bugs
  626. ------------
  627.  
  628. 4717595  SceneGraph IO bug in J3DFly
  629. 4718786  Incorrect coefficients in CubicSplineSegment computeCommonCoefficients()
  630. 4805076  Transform3D.get(Matrix3f ) occasionally returns incorrect values
  631.  
  632. Direct3D specific Bugs
  633. ----------------------
  634.   Problem in the NVidia GForce
  635.   -----------------------------
  636.   Make sure you have the latest driver from  http://www.nvidia.com/
  637.  
  638.   ModelClip did not work under DirectX8.0 debug build, use
  639.   Eumulation mode to workaround this.
  640.  
  641.