Hi,

   There is one MasterControl Thread to schedule
the running of all Java3D threads for every JVM instance.
This is used to synchronized some resource and Java3D threads.
In particular, synchronization is needed for multiple Canvas
in the same screen to ensure that OGL context is access
in a thread safe manner per screen. An advantage is that the
resource (Texture/displayList) is shared among the same VM 
if property -Dj3d.sharedctx=true is set in OpenGL version.
By default, this property is true under Solaris and false
under windows.

- Kelvin
---------------
Java 3D Team
Sun Microsystems Inc.
   
>X-Unix-From: [EMAIL PROTECTED]  Fri Feb 22 03:02:24 2002
>Date: Fri, 22 Feb 2002 10:56:46 -0800
>From: Ant�nio Jos� Cacho <[EMAIL PROTECTED]>
>Subject: [JAVA3D] J3D resources shared among the same JVM?
>X-Sender: [EMAIL PROTECTED]
>To: [EMAIL PROTECTED]
>MIME-version: 1.0
>Delivered-to: [EMAIL PROTECTED]
>
>Hi
>I have been doing some research is performance tuning of j3d.
>I found that most of the times when spawning several SimpleUniverse from
>the same JVM, each with its own intended frame-rate, the result was that
>the frame rate would level to the slower.
>If the slower SimpleUniverse is terminated, then the others increase to the
>speed of the next slower one.
>This does not happen when launching from different JVM.
>(In fact it is even more convoluted, since twice I got really different
>frame-rates between SimpleUniverse spawn from the same JVM, with the same
>test app!)
>It seems to suggest that the optimization of Java 3D or of the
>SimpleUniverse itself established some shared resources from which the
>posting of frame buffers got synchronized.
>Is ti the case? Sometimes it seems necessary to understand more deeply the
>architecture of the implementation, so the resulting system behavior is
>more predictable.
>Thanks,
>               Antonio Cacho
>
>PS: This is part of a JADE (http://sharon.cselt.it/projects/jade/)
>multi-agent system I have been working in.
>Some of the agents have a 3D UI, establishing a virtual environment, some
>other have only a 3D representation in that virtual universe. I need to
>hand most of the CPU resources to the reasoning system of the agents, so I
>have tried both a sleepy Canvas3D.postSwap(), and the straightforward
>View.setMinimumFrameCycleTime().
>By the way, what would be the comparative benefits of using instead a
>behaviour?
>(I am running a dual Athlon with half giga registered DDR, an Elsa Quadro
>DCC 64MB DDR, on Win2K SP2, JDK1.3.1, and J3D1.3Beta1.)
>
>===========================================================================
>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".

==========================================================================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