I am getting 50 fps with this demo at 16-bpp, 1024x768, D3D, 700 MHz PIII on
32MB Diamond Viper V770D Ultra NVIDIA.

One thing that Java3d does that makes calculating performance difficult is
its handling of behaviors.  In other words, just because its running at a
certain framerate does not mean that is the fastest frame rate it can do.  I
think J3d is applying some sort of optimization to determine if anything is
changing to determine whether to make a new frame.  The other thing is that
your behavior might not actually be called according to your criteria, I
have found J3d to be liberal about deciding to call it, especially a wake up
on elapsed time.

In several cases I have found using seperate threads to update my transforms
produce smoother, faster transformations.  The other thing, if there is a
real problem with the transformation time, try another approach entirely.
Build your pool of particles, and set their transformations, then put them
in a switch node and animate by flipping children on and off.  You really
have the same memory overhead, but the particles arnt "moving" really, you
are just makeing them look that way.

Dave Yazel
----- Original Message -----
From: Mark Ferneau <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Friday, August 25, 2000 12:37 PM
Subject: Re: [JAVA3D] Why is TransformGroup.setTransform() is taking too
much time?


Fouad,

I ran six different tests on my platform, which is described below, with
the following results:

Screen @ 16-bpp:

         OGL App:  16 FPS (selected 16-bpp, 640x480, windowed)
         J3D On OGL: 11 FPS
         J3D On D3D: 38 FPS

Screen @ 32-bpp:

         OGL App: 11.5 FPS (selected 32-bpp, 640x480, windowed)
         J3D OGL: 9.8 FPS
         J3D D3D: 30 FPS

My configuration is:

         - Compaq Armada Laptop, Win2K, 192MB, Rage Mobility-P
         - JDK 1.3
         - J3D 1.2 OGL, J3D D3D 1.2  Beta

I think the performance you are not seeing with J3D on OGL is likely due to
J3D selected a configuration which is not utilizing your graphics hardware
driver (as opposed to rendering in software).  I know with J3D D3D you can
find out if J3D is actually using hardware but I don't think you can do
this with J3D on OGL.

I still would like to see someone from the J3D team respond to your
setTransform() question.

--Mark

At 05:33 PM 8/25/2000 +0200, you wrote:
>I downloaded last week an C++ OpenGL written particle system demo and i
>decided to write a particle system in Java 3D. The C++ OpenGL demo is using
>about 150 to 200 particles and getting by 640x480 at 32bpp 210 FPS. The one
>i tried to make in Java3D is making 40 FPS in the same system with 135
>particles (without doing any scales on the particles or any transparency
>manipulation). This is a huge difference.
>
>I profiled the example and the result was: 1000 Frames took about 26
>seconds. 14 seconds were spent in the TransformGroup.setTransform(...) of
>the particles update method. I think this is too much and it looks like the
>method blocks because of some synchronisation. Maby I am interpreting or
>doing something wrong ? so feel free to comment.
>
>I attached a zip file with both the OpenGL and the Java3D examples. I hope
>that no one is upset about that. If you have any suggestions to make the
>JAVA3D example faster or any comments I will be delighted to hear from you.
>
>In the OpenGL demo you can switch between the demos pressing the keys 1-8.
>Number 2 is the one close to what the Java3D demo does.
>
>Thank you
>
>Fouad.
>
>  <<particleSystem.zip>>
>
>
>


Mark Ferneau                    240-462-6262 (cell)
Director of Adv. Technology             801-437-4608 (efax)
Xtivia Technologies, Inc.               732-469-5954 x629 (NJ office)
[EMAIL PROTECTED]                      301-279-5703 (home office)
http://www.xtivia.com/          [EMAIL PROTECTED] (wireless email)

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