Joost Verschuren wrote: >Thanks for your quick answer, but I already mentioned that I tried placing the viewplatform in a transformgroup beneath the target object (which is IMHO probably the 'cleanest' solution). This still gave problems.
I'm sorry, obviously I did not read thoroughly enough. >About the single Behavior that updates all your objects: which WakeupCriterion did you use? I'm getting my position updates via a TCP InputStream. > A use 2 different options. Mostly it's WakeupOnElapsedTime() so that the app does run with a decent framerate (~30) but does not throttle other threads. As an alternative I can apply WakeupOnElapsedFrames(0) when it comes to measure performance/maximum framerates. I'm getting position updates asynchronously from the net as well, but that does not update the scenegraph immediately for I'm afraid of synchronization issues. The new position is stored somewhere else and evaluated as soon as the Behavior wakes up. For other things from the net that might influence the structure of the scenegraph (e.g. add/remove new objects), I use a command queue. Again, the queue is executed during Behaviors processStimulus(). Reading your first mail again it seems that the problem only occurs on MP machines?? AFAIK, Java3D adapts its thread layout to the number of available processors. IIRC there is a command line switch -Dj3d.something that controls the max. number of threads used. Maybe you can try that. Unfortunately I cannot figure out what this option was named.... But there are persons here on the list who should know far better! - J -- Joerg 'Herkules' Plewe http://www.hardcode.de =========================================================================== 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".