Hi Jim,

>
>3. When a Shape3D is removed from a live tree in J3D 1.1.3 and earlier it can
>then be modified. In all versions of J3D 1.2, Java throws an exception claiming
>that the Shape3D is still live. A go-around is to place the Shape3D in a
>BranchGroup
>before adding it to the tree, and then removing the BranchGroup from the tree.
>This appears to work, but why is it necessary? It is hard to tell what is
>causing
>the performance problem (above) but this may be part of it.
>

Which API do you use to remove Shape3D from a live tree ?
Currently using setChild() to replace the old Shape3D and use
BranchGroup.detach() should reset the Shape3D status to non-live.


>
>4. Behaviors use SUBSTANTIAL CPU TIME when they should be idle. For example,
>when a RotationInterpolator is added to a live tree CPU usage goes to
>nearly 100%
>on a very fast Wintel machine even though the RotationInterpolator is disabled,
>and therefore should not be doing anything. Under J3D 1.1.3 and earlier,
>CPU is 0%
>under this circumstance.
>

A bug 4338168 is submit and we will consider checking
for the disable flag in order not to activate behavior
scheduler next time.
A workaround is to detach the branch contain the behaviors
instead of disable it.

Note that if you implement you own RotationInterpolator,
using a passive WakeupOnElapsedFrames condition should
solve the problem.

 public WakeupOnElapsedFrames(int frameCount, boolean passive)


Thanks for your bug report.

- Kelvin
---------------
Java 3D Team
Sun Microsystems Inc.

===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff JAVA3D-INTEREST".  For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".

Reply via email to