home *** CD-ROM | disk | FTP | other *** search
/ S283 Planetary Science &… the Search for Life CD 3 / 0_CD-ROM.iso / install / jre1_3 / readme_java3d_win32d3d.txt < prev    next >
Encoding:
Text File  |  2002-06-19  |  38.9 KB  |  867 lines

  1.  
  2. Java 3D(TM) 1.3
  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-windows-i586-directx-rt.exe
  43.    Runtime and SDK:   java3d-1_3-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 \jdk1.3, try the following:
  51.  
  52.         cd \jdk1.3\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. Multisampling Antialiasing
  74. ===========================
  75.  
  76. By default, full scene antialiasing is disabled if a
  77. multisampling pixel format (or visual) is chosen.
  78. To honor a display drivers multisample antialiasing
  79. setting (e.g. force scene antialiasing), set the 
  80. implicitAntialiasing property to true. 
  81. This causes Java3D to ignore its own scene antialias
  82. settings, letting the driver implicitly implement the 
  83. feature. 
  84.  
  85.       java -Dj3d.implicitAntialiasing=true MyProgram 
  86.  
  87. ================================
  88. RUNNING JAVA 3D(TM) IN A BROWSER
  89. ================================
  90.  
  91. You can run Java 3D(TM) programs in your browser.  Java 2(TM)
  92. from Sun includes the Java Plug-In (JPI) to upgrade the Java(TM)
  93. in the browser to Java 2(TM).  To verify proper installation,
  94. point your browser to file:/jdk1.3/demo/java3d/index.html
  95.  
  96. If you are getting permission exceptions while running the Java 3D
  97. demo programs in your browser, it may be because of bug 4416056.
  98.  
  99. First, upgrade your Java SDK to the latest release.  The bug may
  100. have been fixed by the time you read this.
  101.  
  102. To work around the problem, the path to your JRE must not 
  103. contain spaces.  By default, it does ("c:\Program Files\JavaSoft\. . .").
  104. The Java SDK installer automatically installs the JRE in 
  105. c:\Program Files\JavaSoft, so you must run the installers in
  106. this order:
  107.   Java SDK installer
  108.   Java JRE installer (choose a directory with no spaces)
  109.   Java 3D SDK installer (will default to the correct directories)
  110.  
  111. NOTE: Many Java 3D(TM) programs will require a larger heap size
  112. than the default 16M in the JPI.  Run the Java Plug-In Control
  113. Panel from Start/Programs (JPI 1.2.2) or Start/Settings/Control 
  114. Panel (JPI 1.3) and in "Java Run Time Parameters" put "mx64m"
  115. for 64M of heap memory.
  116.  
  117. To create a web page with Java 3D, you need to use special HTML
  118. code to force the browser to use the JPI VM.  Refer to the
  119. following URL for information on using Java Plug-In "HTML
  120. Converter" and running applets using Java Plug-in:
  121.  
  122.         http://java.sun.com/products/plugin/
  123.  
  124. ====================================================
  125. DISTRIBUTING Java 3D(TM) WITH YOUR JAVA(TM) PROGRAMS
  126. ====================================================
  127.  
  128. Sun Microsystems allows vendors to distribute the Java 3D(TM) Runtime
  129. environment with their Java programs, provided they follow the terms
  130. of the Java 3D(TM) Binary Code License and Supplemental License Terms
  131. agreement.
  132.  
  133. This document uses the term "vendors" to refer to licensees,
  134. developers, and independent software vendors (ISVs) who license and
  135. distribute Java 3D(TM) with their Java programs.
  136.  
  137. REQUIRED vs. OPTIONAL FILES
  138. ---------------------------
  139. Vendors must follow the terms of the Java 3D(TM) Evaluation License
  140. agreement, which includes these terms:
  141.  
  142.  - Don't arbitrarily subset Java 3D(TM). You may, however, omit those
  143.    files that have been designated below as "optional".
  144.  
  145.  - Include in your product's license the provisions called out
  146.    in the Java 3D(TM) Evaluation License.
  147.  
  148. BUNDLING Java 3D(TM)
  149. --------------------
  150. Java 3D(TM) comes with its own installer that makes it suitable for
  151. downloading by end users. Java(TM) application developers have the
  152. option of not bundling Java 3D(TM) with their software.  Instead,
  153. they can direct end-users to download and install the Java 3D(TM)
  154. software themselves.
  155.  
  156. Required Files
  157. --------------
  158.  
  159.         <JREDIR>\bin\J3D.dll
  160.         <JREDIR>\bin\j3daudio.dll
  161.         <JREDIR>\bin\J3DUtils.dll
  162.         <JREDIR>\lib\ext\vecmath.jar
  163.         <JREDIR>\lib\ext\j3dcore.jar
  164.         <JREDIR>\lib\ext\j3daudio.jar
  165.         <JREDIR>\lib\ext\j3dutils.jar
  166.  
  167. Optional Files
  168. --------------
  169.  
  170. An application developer may include these files and directories
  171. with their Java 3D(TM) application, but is not required to do so:
  172.  
  173.         <JDKDIR>\j3d-utils-src.jar
  174.         <JDKDIR>\demo\java3d
  175.  
  176. ========================
  177. CHANGES SINCE 1.2.1_03
  178. ========================
  179.  
  180. ============
  181. NEW FEATURES
  182. ============
  183.  
  184.   For a list of API changes please see the Java 3D API 1.3
  185.   Specification at:
  186.     http://java.sun.com/products/java-media/3D/releases.html
  187.  
  188.   GeometryInfo utility now supports multiple texture coordinates as well as
  189.   INTERLEAVED, BY_REFERENCE, USE_NIO_BUFFER and USE_COORD_INDEX_ONLY
  190.   GeometryArray formats.
  191.  
  192.   The .obj loader has improved URL support.
  193.  
  194.   A new scenegraph io utility has been added.  This utility can save and restore
  195.   Java 3D scene graphs.  See the javadocs for the package
  196.   com.sun.j3d.utils.scenegraph.io for more information.
  197.  
  198.   A new high resultion interval timer has been added to the utilities package.
  199.   See the javadocs on the package com.sun.j3d.utils.timer for more information
  200.   as well as the TimerTest example program in the examples/Timer directory.
  201.  
  202.   New ConfiguredUniverse utility.
  203.   
  204.    The com.sun.j3d.utils.universe package has been extended with a new 
  205.    ConfiguredUniverse utility class.  This utility requires JDK 1.4 or later
  206.    when running in a display configuration that consolidates two or more
  207.    physical screens in a single virtual device, such as the X11 Xinerama
  208.    extension.
  209.  
  210.    The new utility is an extension of SimpleUniverse that can set up an
  211.    interactive viewing environment based upon the contents of a site-specific
  212.    configuration file.  This is useful when an application needs to run without
  213.    change across a broad range of viewing configurations and locally available
  214.    input devices.
  215.  
  216.    Viewing configurations that can be described in the configuration file
  217.    include windows on conventional desktops, stereo-enabled views, fullscreen
  218.    immersive displays on single or multiple screens, and virtual reality
  219.    installations such as cave and head-mounted displays incorporating
  220.    6-degree-of-freedom sensor devices.
  221.  
  222.    InputDevice and ViewPlatformBehavior implementations can be instantiated
  223.    by ConfiguredUniverse from their descriptions in the configuration file.
  224.    Sensors provided by InputDevice implementations can be given descriptive
  225.    names in the file and retrieved by applications to allow them to tailor
  226.    their interaction mechanisms at runtime.
  227.  
  228.    See programs/examples/ConfiguredUniverse for an example application and
  229.    sample configuration files.
  230.  
  231.   Support for multiscreen-aware applications in virtual-screen environments
  232.  
  233.    With this release applications can use GraphicsConfigTemplate3D to retrieve
  234.    a GraphicsConfiguration from a specific physical screen device even when a
  235.    virtual screen is being used to consolidate them.  The GraphicsConfiguration
  236.    can then be used to create Canvas3D objects on that physical screen.  
  237.    
  238.    This allows a separate Screen3D object to be associated with the Canvas3D so
  239.    that physical parameters such as the screen's position and orientation
  240.    relative to other screens in the viewing environment can be specified.
  241.   
  242.    This support is only available when running JDK 1.4 or later.
  243.  
  244.  
  245. =======================
  246. Constructing a Canvas3D
  247. =======================
  248.  
  249. Many Java 3D programs pass null to the Canvas3D constructor.  By doing
  250. this, Java 3D will select a default GraphicsConfiguration that is
  251. appropriate for Java 3D.  However, this is a bad practice, and can lead
  252. to errors when applications try to run in alternate environments, such as
  253. stereo viewing.  Java 3D will now print out a warning if the Canvas3D
  254. constructor is passed in a null argument for the GraphicsConfiguration.
  255.  
  256. ====================================
  257. Multipass Texture support limitation
  258. ====================================
  259. If an application has setup more texture unit states than the graphics 
  260. hardware can support, COMBINE mode will not be supported and Java 3D will 
  261. fallback to the REPLACE mode.
  262.  
  263. =========
  264. Utilities
  265. =========
  266.  
  267. This release includes utilities for Java 3D.  These utilities are still
  268. being defined and under development.  Much of the source for these utilities
  269. is also provided.  The API for these utilities may change in future releases.
  270.  
  271. The following utilities are provided in this release:
  272.  
  273.         - Some predefined Mouse based behaviors
  274.         - Picking utilities including predefined picking behaviors
  275.         - Geometry creation classes for Box, Cone, Cylinder, and Sphere
  276.         - A Text2D utility
  277.         - Universe Builders - SimpleUniverse and ConfiguredUniverse
  278.         - An Image Loading utility
  279.         - A Normal Generator utility
  280.         - A Polygon Triangulator utility
  281.         - Triangle stripifier
  282.         - Geometry compression utilities
  283.         - Spline-based path interpolators
  284.         - Wavefront .obj loader
  285.         - Lightwave 3D File Loader
  286.         - A scenegraph io utility
  287.         - A high resolution interval timer
  288.    
  289. ===================================
  290. Enabling Stereo with SimpleUniverse
  291. ===================================
  292.  
  293. The SimpleUniverse utility does not, by default, request a
  294. GraphicsConfiguration that is capable of Stereo rendering.  To enable this,
  295. you need to set a property when running your application.  Here is an
  296. example.
  297.  
  298. java -Dj3d.stereo=PREFERRED MyProgram
  299.  
  300. Some framebuffers only have one Z buffer and share this between the left
  301. and right eyes.  If you are experiencing problems using stereo try the
  302. following property:
  303.  
  304. java -Dj3d.stereo=PREFERRED -Dj3d.sharedstereozbuffer=true MyProgram
  305.  
  306. =====================================================
  307. Information on the Direct3D Implementation of Java 3D
  308. =====================================================
  309.  
  310.   Unsupported Features
  311.   --------------------
  312.   The following features are currently unsupported in the Direct3D
  313.   implementation of Java 3D:
  314.     Line width
  315.     Line antialiasing
  316.     Point antialiasing
  317.     PolygonAttributes backFaceNormalFlip
  318.     RenderingAttributes ROP_XOR
  319.     Stereo
  320.  
  321.   Texture features not support:
  322.     Texture color table
  323.     Base/Maximum Level
  324.     Max/Minimum LOD
  325.     LOD offset
  326.     Detail Texture
  327.     Sharpen Texture Function
  328.     Filter4 Function
  329.     Boundary width 
  330.     Boundary mode CLAMP_TO_EDGE & CLAMP_TO_BOUNDARY 
  331.     (will fall back to CLAMP)
  332.     Texture blend color when multiple pass is used
  333.     to simulate multiTexture.
  334.  
  335.   Limited Support
  336.   ---------------
  337.   FullScreen antialiasing is supported only if the device returns
  338.   D3DPRASTERCAPS_ANTIALIASSORTINDEPENDENT in its raster capabilities
  339.   list.  (OpenGL supports fullscreen antialiasing if an accumulation
  340.   buffer exists.)
  341.  
  342.   TransparencyAttributes.TransparencyMode values FASTEST, NICEST and
  343.   SCREEN_DOOR are the same as BLENDED under D3D.
  344.  
  345.   DepthComponent in certain display mode when stencil buffer
  346.   is selected (use for DecalGroup) since depth Buffer Component
  347.   Read/write can't coexist with Stencil buffer in DirectX8.0.
  348.  
  349.   OffScreen rendering with width/height > current desktop size
  350.   
  351.   Texture coordinates outside the range [0,1] when boundaryModeS
  352.   and boundaryModeT are set to CLAMP will not use the Texture Boundary'
  353.   color unless BASE_LEVEL_LINEAR filtering is turned on.
  354.  
  355.   If the driver did not expose D3DPTADDRESSCAPS_BORDER capability bit
  356.   (viathe directX SDK utility Caps Viewer). Then it didn't support 
  357.   Texture Border color mode. Default color as in Clamp mode will be
  358.   used in this case. Most driver currently available need to
  359.   workaround using reference mode (-Dj3d.d3dDevice=Reference).
  360.  
  361.   if the driver did not expose D3DPMISCCAPS_LINEPATTERNREP capability
  362.   bit then it didn't support line patterns. A solid line will be shown
  363.   in this case. Most driver currently available need to workaround 
  364.   using reference mode.  
  365.  
  366.   Only negative polygon offsets are supported.  The limit of this offset
  367.   corresponds to the depth of the z-buffer.
  368.  
  369.   Float anisotripic filter degree did not support. They will round off 
  370.   to integer value and pass down to the DirectX library.
  371.  
  372.   Texture environment combiner :
  373.  
  374.   COMBINE_REPLACE     - Support if driver expose TextureOpCaps
  375.                         D3DTOP_SELECTARG1. Only combine scale 1 is support.
  376.   COMBINE_MODULATE    - Support if driver expose TextureOpCaps D3DTOP_MODULATE, 
  377.                         D3DTOP_MODULATE2X,  D3DTOP_MODULATE4X for scale 1, 2 & 4
  378.                         respectively.
  379.   COMBINE_ADD         - Support if driver expose TextureOpCaps D3DTOP_ADD, 
  380.                         only combine scale 1 is support
  381.   COMBINE_ADD_SIGNED  - Support if driver expose TextureOpCaps D3DTOP_ADDSIGNED,
  382.                         D3DTOP_ADDSIGNED2X for scale 1 & 2 respectively. Combine
  383.                         scale 4 will fall back to 2.
  384.   COMBINE_SUBTRACT    - Support if driver expose TextureOpCaps D3DTOP_SUBTRACT.
  385.                         Only combine scale 1 is support.               
  386.   COMBINE_INTERPOLATE - Support if driver expose TextureOpCaps D3DTOP_LERP.
  387.                         Only combine scale 1 is support.               
  388.   COMBINE_DOT3        - Support if driver expose TextureOpCaps
  389.                         D3DTOP_DOTPRODUCT3 Only combine scale 1 is support.               
  390.  
  391.   Rendering Different between OGL & D3D
  392.   --------------------------------------
  393.   - SpotLight formula is different, OGL will normally have a bigger bright spot.
  394.  
  395.   - TexCoordGeneration Sphere Map formula is different, OGL will normally 
  396.     has texture map that zoom closer than D3D.
  397.  
  398.   - Specular hightlight in Texture mapping mode may different. If OGL driver 
  399.     support separate specular color, then resulting specular highlight in
  400.     texture are the same. Otherwise D3D verson will have a brighter and
  401.     more obviously specular highlight compare with OGL.
  402.  
  403.   Fullscreen Support
  404.   ------------------------
  405.   The Direct3D implementation of Java 3D can be run in fullscreen mode.
  406.   To start an application in fullscreen mode, use the property j3d.fullscreen.
  407.   The values for j3d.fullscreen are:
  408.     REQUIRED  -   A fullscreen canvas is required. If not available, do not
  409.                   start up the application.
  410.     PREFERRED -   A fullscreen canvas is desired for this invocation of the
  411.                   Java 3D application.  If a fullscreen canvas cannot be
  412.                   created, a windowed canvas is acceptable. 
  413.     UNNECESSARY - States that a fullscreen canvas is not necessary for this
  414.                   application.  Create a windowed application (this is the
  415.                   same behavior as not setting this property).
  416.  
  417.   Example:
  418.     java -Dj3d.fullscreen=REQUIRED HelloUniverse
  419.  
  420.   Further, an application can be toggled between fullscreen and windowed mode
  421.   by use of the <Alt><Enter> keyboard combination. 
  422.  
  423.   Direct3D Driver Selection
  424.   -------------------------
  425.  
  426.   When there is more then one device associated with a
  427.   monitor, by default, Java 3D uses the first driver found
  428.   on a given display.  This order can be found by
  429.   using the -Dj3d.debug=true property during Java startup.
  430.  
  431.   In order to use a 3D only graphics card such as Voodoo1/2
  432.   A new property has been added
  433.  
  434.    -Dj3d.d3ddriver=idx  
  435.  
  436.   where idx is the driver order number (starting with 1) found
  437.   using the debug property above.  This will force Java 3D to use
  438.   the driver specified by the user (this may fail if the driver is
  439.   not compatible with the display).  For a typical setup with a 3D
  440.   only card attached to a single monitor system, use idx=2.  This
  441.   will automatically toggle to fullscreen hardware acceleration mode.
  442.  
  443.   Direct3D Device Selection
  444.   -------------------------
  445.   In order to aid in development and debugging, Java 3D has added a property
  446.   to allow the D3DDevice to use for rendering to be selected.  The property,
  447.   j3d.d3ddevice can have the following values:
  448.     tnlhardware - select a device that supports transform and lighting in
  449.                   hardware, if present.  If no such device is present,
  450.                   a dialog box is displayed to alert the user and the
  451.                   application will exit.
  452.     hardware    - select a Direct3D device that performs hardware
  453.                   rasterization, if present.  If no such device is present,
  454.                   a dialog box is displayed to alert the user and the
  455.                   application will exit.
  456.     reference   - use the Direct3D reference pipeline (only available if
  457.                   the Direct3D SDK is installed).
  458.  
  459.   By default Java 3D first tries to select a TnLhardaware device, if that fails
  460.   a Hardware device, if that also fails then finally Java 3D selects an
  461.   Emulation device.
  462.  
  463.   Ignored Java 3D Properties
  464.   --------------------------
  465.   The following Java 3D properties are ignored by the Direct3D implementation:
  466.     j3d.sharedctx
  467.     j3d.stereo
  468.     j3d.sharedstereozbuffer
  469.     j3d.g2ddrawpixel 
  470.     j3d.usecombiners
  471.     j3d.disableSeparateSpecular
  472.     j3d.backgroundtexture
  473.     j3d.disableXinerama
  474.  
  475. ===================================================
  476. Information on Java 3D Audio Device Implementations
  477. ===================================================
  478.  
  479. Java 3D sound is rendered via the use of a specific implementation
  480. of the AudioDevice3D interface.   This release includes two AudioDevice3DL2
  481. implementations: HeadspaceMixer and JavaSoundMixer.  Both of these
  482. implementations are included in the j3daudio.jar.
  483.  
  484. Please read README.release in program examples Sound directory for details
  485. regarding the feature and format limitations of each of these implementations
  486. and for examples of these use.
  487.  
  488. =============================================
  489. HeadspaceMixer AudioDevice3DL2 Implememtation
  490. =============================================
  491.  
  492.  The HeadspaceMixer implementation is part of the Sun Java 3D
  493.  com.sun.j3d.audioengines.headspace package.  This implementation
  494.  uses a version of the Headspace Audio Engine licensed from Beatnik
  495.  which does all rendering in software and pipes the stereo audio image
  496.  to the platform's audio device.
  497.  
  498.  The implemention that was called JavaSoundMixer in previous Sun
  499.  releases of Java 3D has been renamed to HeadspaceMixer.
  500.  It was renamed in anticipation of the release of a new AudioDevice
  501.  implementation that uses the JavaSound API which will be called
  502.  JavaSoundMixer (described below).
  503.  
  504.  The HeadspaceMixer audio device will be created and initialized when the
  505.  utility SimpleUniverse.Viewer.createAudioDevice() method is called.
  506.  If your application uses this utility, no change will be required to
  507.  use the recommended HeadspaceMixer implementation.
  508.  
  509.  If your application explicitly used the older JavaSoundMixer audio device
  510.  implemention from the package com.sun.j3d.audioengines.javasound, you should
  511.  change the reference to JavaSoundMixer, at least for this release,
  512.  to HeadspaceMixer:
  513.  
  514.      import com.sun.j3d.audioengines.headspace.HeadspaceMixer;
  515.              :
  516.      HeadspaceMixer mixer = new HeadspaceMixer(physicalEnvironment);
  517.  
  518.  Most of the Java 3D Audio features have been implemented but there are
  519.  a few exceptions.  Additionally, some Java 3D Audio features are only
  520.  only partially implemented.  Please read the README.release document in
  521.  programs/examples/Sound for more information.
  522.  
  523.  Note that the HeadspaceMixer is not supported in the 64 bit Solaris 
  524.  version of Java 3D.
  525.  
  526. =============================================
  527. JavaSoundMixer AudioDevice3DL2 Implememtation
  528. =============================================
  529.  
  530.   The JavaSoundMixer implementation is part of the Sun Java 3D
  531.   com.sun.j3d.audioengines.javasound package.  This implementation uses
  532.   the Java Sound API.  All low-level access to the platforms audio device
  533.   are dependent on the Java Sound mixer implementation(s) installed on
  534.   the machine you're running on.
  535.  
  536.   The JavaSoundMixer Java 3D audio device implementation uses Java Sound
  537.   SourceDataLine streams for non-cached data and Java Sound Clips for
  538.   cached data.  Support for specific sound cards, the exact input formats
  539.   that can be passed as data to Java 3D MediaContainers, and which feature
  540.   are rendered in software verses accelleration hardware is dependent on
  541.   the Java Sound implementation installed on your machine.
  542.   There is guarenteed to be at least one Java Sound mixer implementation
  543.   available with all J2SE releases (such as Sun's JDK 1.3 and above).
  544.   Please read the README.release document in programs/examples/Sound.
  545.  
  546. ==========
  547. BUGS FIXED
  548. ==========
  549.  
  550. Documentation
  551. -------------
  552. 4386872 Docs for Behavior.postId is too terse
  553. 4501813 Documentation should state that AA lines/points are 
  554.         rendered as transparent
  555. 4702908 OrbitBehavior class overview says to call non-public method
  556.  
  557. Core Graphics and Vecmath
  558. -------------------------
  559. 4366511 OGL: Multisampling does not support under windows for fullscene 
  560.         antialiasing
  561. 4468303 javax.vecmath.Tuple3d  serialVersionUID not compatible
  562. 4661574 D3D : setValidVertexCount on byRef quad array is not working right
  563. 4663280 D3D: multitextue not work in jtest.essential.SimpleLeaf.MorphBasicTest1
  564. 4664809 FullScene antialiasing disable under wildcat III even though driver 
  565.         enable it
  566. 4667098 Windows-apps/Enigma: keyboard panel flashes when box is rotated / key 
  567.         is pressed
  568. 4667539 IllegalMonitorStateException throws from Renderer if other Exception 
  569.         happen
  570. 4669051 setValidVertexCount has performance issues
  571. 4671012 Incorrect multipass Texture if TextureUnitState[] not contiguously 
  572.         enable
  573. 4672391 ImageComponent2D/3D getImage() throws ClassCastException for non 
  574.         BufferedImage
  575. 4672530 Deadlock when using WakeupOnTransformChange
  576. 4678251 Texture attributes and TexCoordGen mode sometimes fail to apply
  577. 4678932 setPointAntialiasingEnable will turn z buffer off even though 
  578.         surface is drawn
  579. 4679787 Antialias Polygon Line and Polygon Point mode are classify as opaque
  580. 4683152 ClassCast exception in core when setAutoComputeBounds(false)
  581. 4684982 At setLive(), if boundsAutoCompute is false, j3d's bounds didn't 
  582.         set correctly
  583. 4685156 Crash under Linux Nvidia driver if texture destory without a 
  584.         non-shared ctx
  585. 4685686 Raster Image flicking and NullPointerException throws when 
  586.         CLIP_IMAGE is used
  587. 4685682 NullPointerException when clone Appearance with TextureUnitState
  588. 4685691 setupMirrorInterleavedColorPointer throws ArrayIndexOutOfBoundsException
  589. 4686650 Transform3D.setTranslation() does not classify correctly
  590. 4684150 Lock up when using J3DGrpahics2DImpl
  591. 4687351 Polygon line width/point size may drawn larger than expected in 
  592.         some case
  593. 4691511 REGRESSION: setConstantScaleEnable(true) does not work on 1.3 beta2
  594. 4691654 State change that causes displaylist to be rebuilt may result in 
  595.         missing geometr
  596. 4686766 Deadlock when same geometry share by different VirtualUniverse is 
  597.         updated
  598. 4693468 Incorrect Texture display after Texture object GC
  599. 4698695 Appearance may mess up when Material is shared by geometries w 
  600.         and w/o normal.
  601. 4693307 TRANSPARENCY_SORT_GEOMETRY : State update may cause Shape3D to 
  602.         lose geometry
  603. 4703460 Update of J3DGraphics2D damage extent is not MT-Safe
  604. 4475677 Current Sensor hotspot semantics are broken
  605. 4690060 OGL: Texture Transform affects Background Image
  606. 4697067 BoundingPolytope doesn't report intersection
  607. 4701430 Infrequent NPE at RenderBin.java:544
  608.  
  609. Utilities
  610. ---------
  611. 4666597 GeometryInfo: getIndexedGeometryArray() ignore useCoordIndexOnly 
  612.         parameter
  613. 4678136 SceneGraphIO API - UseSuperClassIfNoChildClass implementation incomplete
  614. 4682760 SceneGraphIO node references not resolved before user code called
  615. 4683145 Extra null geometry added to Shape3D when loading j3f
  616. 4690159 dublicateOnCloneTree flag not save in SceneGraph IO NodeComponentState
  617. 4702256 ViewingPlatform.setViewPlatform() doesn't add ViewPlatform to 
  618.     TransformGroup
  619.  
  620. ==============
  621. KNOWN PROBLEMS
  622. ==============
  623.  
  624. To get the very latest list of known Java 3D bugs, look on the Java
  625. Bug Parade (http://developer.java.sun.com/developer/bugParade/index.html)
  626.  
  627. Documentation Bugs
  628. ------------------
  629. 4120197 Docs for Vector-like methods (e.g., addChild, setChild) need improvement
  630. 4303052 Quaternion documentation is inadequate
  631. 4303054 Lighting equations should be updated to reflect color override
  632. 4303062 Need to specify which attributes are passed by reference versus by value
  633. 4307547 Need to doc. : scene graph needs to have at least a Canvas3D to keep 
  634.         j3d working
  635. 4331677 setWindowResizePolicy(View.VIRTUAL_WORLD) needs better docs
  636. 4303056 Docs should specify thread-safety behavior of Java 3D methods
  637. 4352922 JFTC: light InfluencingBounds (user specified BoundingSphere) seems 
  638.         to be broken
  639. 4357879 JFTC: Ambiguous specification of Shape3D.addGeometry()
  640. 4364767 JFTC: Java3D's render loop doesn't run continuously.
  641. 4372654 JFTC: Ambiguous spec of the RemoveChild()
  642. 4391492 Rotation matrix of Transform3D constructor not extract
  643. 4415029 JCK: Ambiguous spec on View.removeCanvas(null) should throw 
  644.         exception or not
  645. 4421250 JFTC: Lack of doc on the application of BoundingSphere
  646. 4500608 TextureAttributes.setColorTable() should document value
  647. 4514880 results of changing geometry and texture are not well documented
  648. 4693320 Javadoc missing for TCBKeyFrame, CubicSplineSegment, and 
  649.         CubicSplineCurve
  650. 4698350 Spec. did not mention alpha component for Texture Mode REPLACE, 
  651.         MODULATE clearly
  652.  
  653. Core Graphics and Vecmath
  654. -------------------------
  655.  
  656. 4193466 GMatrix SVD does not work correctly for some cases.
  657. 4269784 vecmath.GMatrix.LUD inefficient
  658. 4476558 Matrix classes consume too much memory.
  659. 4154445 PathInterpolator's setKnot method does not validate inputs
  660. 4160172 Access to some aggregate data is not MT-safe
  661. 4181344 Java 3D cannot handle more than 64 lights
  662. 4181340 Updating the view cache could be a problem if other canvas running 
  663.         on same view
  664. 4181417 Need to add an internal epsilonEquals method for bounds objects
  665. 4179923 ReadRaster does not clip to screen correctly
  666. 4189092 HEAD_PREDICTOR and HAND_PREDICTOR policies not implemented
  667. 4191172 Text3D rendering problems
  668. 4259345 Text3D does not correct convert geometry of Japanese-text
  669. 4266866 Text3D handles badly the 2-byte international characters.
  670. 4299480 readRaster() and waitForOffScreenRendering() will not work if 
  671.         threadLimit=1
  672. 4305676 Native method error message is not I18N ready
  673. 4313678 Java3D disables invalid lights (lights 24-31 on an Expert3D)
  674. 4335245 Raster type RASTER_COLOR_DEPTH did not work as expect
  675. 4334312 In CanvasViewCache : vprNotDirty shouldn't be peeked at.
  676. 4340607 Node and NodeComponent's set* methods not synchronized with 
  677.         set/clearLive
  678. 4344034 jftc: jtest.bugs.b4335549.HelloUniverse still fails on Windows NT and 2K
  679. 4344060 jftc: jtest.bugs.b4336095.PickTest still fails on Windows NT and 2K
  680. 4351579 APIs issue : Shape3D intersect method -- multiple geometry support
  681. 4357843 Picking doesn't handle OrientedShape3D's orientation when doing 
  682.         intersect test.
  683. 4358284 JFTC: readRaster() ignore StereoMode context
  684. 4361566 JFTC:jtest.raster.Ras seems wrong where transparent triang and 
  685.         raster overlapped
  686. 4359764 Java3D do not support > 32 canvas
  687. 4363899 APIs issue : OrientedShape3D's intersect method needs view info.
  688. 4370378 ImageComponentByReferenceTest raster image disappeared after window 
  689.         maximized
  690. 4387641 Canvas3D stays clipped when another window is brought in front 
  691.         and removed
  692. 4396630 JFTC: Transparency obviously wrong in BLEND mode
  693. 4396453 Bounding polytope should check for NaN bounds
  694. 4407825 JFTC: Scope setting in ModelClip works incorrectly in compile mode
  695. 4416086 JFTC: light.DLight5 and light.PLight1 fail when using 
  696.         setLocalEyeLightingEnable
  697. 4420305 sound/animation sometimes disrupted by menus
  698. 4428412 AxisAngle set(Matrix ) fail when rotation is PI about X/Y/Z
  699. 4429560 DecalGroup not working for some graphics card like TNT card
  700. 4431186 performance, setAmbientColor, setDiffuseColor on Material
  701. 4440657 GetBounds() on Link throws NullPointerException when SharedGroup not set
  702. 4446477 Please make Canvas3D transparent while rendering a vitual universe
  703. 4446580 JFTC: Text3D.setString() throws NullPointerException when font3D=null
  704. 4459561 JFTC: Depth works wrong in tests on raster.
  705. 4451050 View.setVpcToEc() not updating
  706. 4466779 NullPointerException using MoveTo when BG not in scenegraph
  707. 4466854 Overloaded TRANSFORM_CHANGED message for setting activation radius 
  708.         or scheduling
  709. 4470264 JCK: View.removeCanvas() behaves inconsistently.
  710. 4471205 JFTC: Text3D.setPosition() doesn't work properly
  711. 4471773 Behavior scheduling did not stop under IE/Netscape when window iconified
  712. 4473656 Java3D/JFTC: timing/synchronization is not always consistent when 
  713.         running tests
  714. 4475320 JFTC coverage: bounds hash mismatches bounds set by setBounds
  715. 4481974 RFE: Use common j3dcore.jar for both D3D/OGL
  716. 4483754 ImageComponent*D getRenderedImage returns null
  717. 4487553 Group index off in compiled mode
  718. 4488217 JFTC: Morph doesn't work correct with Indexed*StripArray and 
  719.         Indexed*FanArray
  720. 4485743 JFTC: readRaster() intermittently fails in a JFTC test's first frame
  721. 4494458 j3d.utils.geometry creates unnecc. mem - TexCoord2f pool was 
  722.         created w/o texture
  723. 4492873 Static scene not update for View VIRTUAL_WORLD policy
  724. 4502094 JFTC: Point size in BackGround geometry set incorrect.
  725. 4504095 Loose AWT events after iconifying and then de-iconifying
  726. 4508697 performance regression on win32
  727. 4508747 JFTC: OrientedShape3D object disappears when rotating around X or Z 
  728.         axis.
  729. 4509357 example program - raster image incorrect until mouse moved into window
  730. 4504143 Menu accelerators do not work when changing the viewer position 
  731.         with mouse
  732. 4512031 JFTC: Wrong cube color rendered in LOD test
  733. 4512410 Ydown Raster by-reference images are always copied
  734. 4512666 JFTC:GeometryStrip constructor throws exception with 0 length 
  735.         stripVertexCounts
  736. 4512179 Undeterminable behavior caussed by Appearance.setTexture
  737. 4513264 JFTC: Appearance of geometries as Background looks incorrect.
  738. 4513820 ArrayIndexOutOfBoundsException when global alpha is disabled 
  739.         and screen = 1
  740. 4514253 Cycles in scenegraph are not detected
  741. 4513029 J3dI18N: Error using IndexedGeometryArray.getInitialIndexIndex
  742. 4515257 JFTC: MultiUniverses intermittently failed
  743. 4515468 CompressedGeometry constr (CGH, J3DB) and getCompressedGeometryBuffer() 
  744.         not impl
  745. 4515558 Rendering artifacts in DEMViewer when Labels option is turned on
  746. 4515939 Fog color and background color are not updated synchronously
  747. 4515950 Setting AlternativeCollisonTarget not work after live
  748. 4515966 setAlternateCollisionTarget throws ArrayIndexOutOfBounds at 
  749.         getCachedTargets()
  750. 4516005 AddRemoveCanvas2 fail to show cube intermittently
  751. 4516966 Font extrusion for 3D text can generate NaN
  752. 4517265 window color changes with View in Maze
  753. 4515352 SDRC-Xu axis jumps around when model is rotated
  754. 4517322 No canvases displayed in AddRemove canvas test
  755. 4511651 JFTC: Regressions in Text3D - letters disppear and incorrectly 
  756.         positioned
  757. 4518080 Light scoping sometimes not working for compiled geometry
  758. 4513376 GeometryArray.setTextureCoordinate(int, int, TexCoordX) different 
  759.         from API
  760. 4476109 OGL: DecalGroup afffect render of other primitive under windows
  761. 4524590 FPSCounter applet hangs when run in netscape via plugin
  762. 4525664 LOD test Zoom does not work in mouse with 2 button under 
  763.         windows JDK1.4 beta3
  764. 4529297 TCK: Group.removeAllChildren() inconsistent with expected behavior
  765. 4514395 Deadlock in waitForOffScreenRendering() in canvas callback with 
  766.         multiple screen
  767. 4599536 T3D.setRotation(Q4d) throws exception but not with T3D.setRotation(AA4d)
  768. 4524594 Cloning and reloading PureImmediate applet throws NullPointerException
  769. 4634463 Node.getCollidable() throws incorrect exception text if capability 
  770.         not set
  771. 4636676 Canvas3D not resizing properly
  772. 4653688 REGRESSION: No textures with beta J3D 1.3 DirectX on WinXP and ATI
  773. 4656945 jtest.other.Examples.AddRemoveCanvas2 sometimes throws 
  774.         ArrayIndexOutOfBoundsExce
  775. 4667088 sas applications gets VerifyError running with 64-bit JVM
  776. 4667052 Some models loaded with bgfViewer are not initially visible 
  777.         using JDK 1.4
  778. 4669211 SharedGroup.getLinks().length is always zero for non-live Link node.
  779. 4674146 Background texture fail to render for RenderedImage and byref 
  780.         ImageComponent2D
  781. 4653840 Multipass texture blending mode problem
  782. 4676483 Geometry by Reference change alpha color component of user data
  783. 4674843 ImageComponent3D byReference always make an internal copy
  784. 4676808 View class needs getTrackerBaseToVworld()
  785. 4679790 Fail to trigger WakeupOnViewPlatformEntry event when branchgroup 
  786.     reattach
  787. 4681750 Texture3D throws ArrayIndexOutOfBoundsException when scaleImage
  788. 4681863 OGL: OffScreen canvas ignore GraphicsConfigTemplate under windows
  789. 4683493 CompressGeometry should render as transparency for polygon line 
  790.     antialias mode
  791. 4684405 j3d holds a reference to user's bounds (via setBounds()) for use 
  792.     in getBounds().
  793. 4684807 NullPointerException in NodeComponent during setAppearance()
  794. 4686527 Deadlock between MasterControl and user thread when using ByRef 
  795.     updateData()
  796. 4680305 Detaches of SharedGroups from user threads is not Mt-Safe
  797. 4687389 View isBehaviorSchedulerRunning() may always return true
  798. 4688070 Memory not immediately reclaim when branchgroup remove
  799. 4676035 Off screen rendering has off-center view
  800. 4697155 ByRef USE_COORD_INDEX_ONLY geometry not yet implement for 
  801.     optimizeForSpace=false
  802. 4702086 D3D: crash when fallback to software mode also fail
  803. 4703478 Test MCBug sometime hangs when Attach Canvas
  804. 4703944 MasterControl.viewActivate throws NullPointerException
  805.  
  806. Sound
  807. -----
  808.  
  809. 4187092 Filtering causes loud, sweeping resonance to be added to most sounds
  810. 4187093 Cross-talk cancellation for sound playback in not implemented
  811. 4315018 Garbage sound in TestFilter
  812. 4360462 HeadspaceMixer: InputStream MediaContainers not fully functional
  813. 4515883 JavaSoundMixer: u-Law and A-law formated files can not be loaded
  814. 4519963 Transformation of sound position behind that of graphics
  815. 4521219 Resetting MediaContainer with null sound data causes ClassCastException
  816. 4634751 BackgroundSound fails to activates with the view intersects it's bounds.
  817. 4655845 Sound fail to load if Sample is BUFFERED and frameLength > 1048576
  818. 4680280 JavaSoundMixer play sound only once
  819.  
  820. Utility Bugs
  821. ------------
  822.  
  823. 4252349 First viewport may jump when using KeyNavigatorBehavior
  824. 4259533 getTexture() throws NullPointerException when using proxies
  825. 4327643 RFE: LW3Dloader needs to be able to load 'other' image file formats
  826. 4331669 setRectangleScaleFactor will not change text size unless 
  827.     setString called (doc?)
  828. 4337833 Java 3D: KeyNavigator has a race condition
  829. 4336679 In examples/PickTest program, a pick miss can happen on morph object.
  830. 4343427 Loader interface has no facility to monitor progress of Load Operation
  831. 4308592 texture loader does not scale non-power-of-2 RGBA textures properly
  832. 4372722 ObjectFile loader hangs when loader .jpg file
  833. 4374631 CompressedGeometryFile can't be used by applets with default security
  834. 4376368 Adding KeyNavigatorBehavior will keep cpu busy
  835. 4386880 TextureLoader should use imageio loaders
  836. 4431105 PickResult.getNode should take a class not an integer
  837. 4431675 PickTool can't handle Text3D with pickmode set to 
  838.     GEOMETRY_INTERSECT_INFO.
  839. 4450545 KBRotPosScaleSplinePathInterpolator does not support nonuniform scale
  840. 4474221 KBRotPosScaleSplinePathInterpolator pitch and heading are incorrect ?
  841. 4485451 Orbit behavior freezes
  842. 4484437 cancel() method for Loader?
  843. 4493945 NormalGenerator wasting memory in IndexedGeometryArrays
  844. 4507498 modify J3dGrpahics2D for more methods to use optimized version 
  845.     of validate
  846. 4518203 cloneNode() is not implement in MouseRotate/Zoom/Translate
  847. 4518767 OrbitBehavior redraws scene graph on any mouse movement
  848. 4625565 GeometryInfo provokes exception from GeometryArrayRetained in ObjectFile
  849. 4627740 GeometryCompressor should store original material attributes in header
  850. 4633705 J3DTimer in Java3D under linux not working properly
  851. 4676082 possible NullPointerException in ViewPlatformAWTBehavior
  852. 4690609 GeometryArray: cannot directly access data in BY_REFERENCE mode
  853. 4692475 saveChildren() return is ignored
  854. 4702800 HelloUniverseConfig throws IllegalArgumentException
  855. 4702248 Canvas passed to ViewPlatformAWTBehavior ignored if from a 
  856.     different view
  857.  
  858. Direct3D specific Bugs
  859. ----------------------
  860.   Problem in the NVidia GForce
  861.   -----------------------------
  862.   Make sure you have the latest driver from  http://www.nvidia.com/
  863.  
  864.   ModelClip did not work under DirectX8.0 debug build, use
  865.   Eumulation mode to workaround this.
  866.  
  867.