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".

Reply via email to