FYI, we're happy there is no performance problem with the Java3D rendering
(rotation by mouse) performance. We've profiled the test (using
OrbitBehavior), and most time is in the Canvas3D.callDisplayList method,
which we assume is just making native calls (OpenGL).  Also, for our own
geometry (using MouseRotateBehavior), most time is in
GeometryArrayRetained.execute method (again, we assume just making native
calls).  There are almost no heap allocations during rendering.

If anyone has understanding (or can point me to a document) of how to reduce
the work required of GeometryArrayRetained.execute() (except by reducing
geometry), I'd appreciate it.

My biggest problem is my hardware (433MHz i810).  We ran the test on
'better' PC (7xxMHz GeForceII), and the rotation by mouse was real time.

On my PC, and a 733MHz laptop, we did get a big improvement by changing the
display settings from true (24bit) colour to high (16bit) colour.  On
another animation test (with only 9000 triangles, we had a frame rate
increase from 14.7fps to 37fps.  Our graphics controllers obviously don't
support true colour natively.  I'm not sure this if is relevant to anyone,
as you may already know, or may have graphics controllers that support true
colour.

Regards,
Geoff.

----- Original Message -----
From: chris thorne <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Wednesday, April 11, 2001 12:39 PM
Subject: Re: [JAVA3D] Performance Problem: Creating Scene Graph
andRotationBy Mouse


> FYI I have been scanning performance content on the list and building a
performance
> perls document.  I'll put it up on the web if anyone is interested.
> I think the comment from Kevin Rushforth is the reference you are after:
>
> SetTransform
>
>    1.The setTransform(Transform3D t) method of the TransformGroup class
consumes a lot of memory.  It also slows
>      significantly
>      From:  roland
>    2.t3d.set and tg.setTransform(t3d) when called halve the framerate (28
TransformGroups and 3 Models).
>      From: Suris Mesdaghi
>
> If you create a Transform3D from a vecmath Matrix4 object, the matrix has
to be classified.  The current classification method is inefficient.  If you
use quaternions or the setScale, setRotate, setTranslate methods of
Transform3D, then the classification is more efficient.
> Another possibility is that Java 3D 1.2 currently has some performance
problems with changing transforms in the scene (as opposed to those above
the view platform).  Java 3D 1.2.1beta1 should improve the performance of
setting transform nodes.
> From: Kevin Rushforth
>
>
> Paraskevas Orfanides wrote:
>
> > I believe that in a previous discussion, quite some time above, someone
had
> > mentioned such a performance decrease due to the changing the values of
> > transforms.  I think a workaround was to use quads instead of transform
> > rots, or even direct access of the matrix in order to do the rotations.
> > But that's when you try to rotate objects, not the view.  I don't know
how
> > valid the above statement actually is, and I hope someone else gives
input
> > on that.  Anyhow, something like that may improve things a bit if you
are
> > willing to work on making the necessary changes.
> > Paraskevas
> >
> > --- Geoff Morris <[EMAIL PROTECTED]> wrote:
> > > Artur, thanks for your comments.
> > >
> > > When I reduced the sphere's divisions to four (as John suggested), the
> > > creation time for the scene graph was improved, but the mouse rotation
> > > was
> > > still too slow.  Perhaps this slowness may also have something to do
with
> > > the 2000+ TransformGroups and 2000+ Shape3Ds in the scene?  Perhaps,
I'm
> > > being too optimistic, and asking for too much?
> > >
> > > Thanks,
> > > Geoff.
> > >
> > > ----- Original Message -----
> > > From: Artur Biesiadowski <[EMAIL PROTECTED]>
> > > To: <[EMAIL PROTECTED]>
> > > Sent: Tuesday, April 10, 2001 8:01 PM
> > > Subject: Re: [JAVA3D] Performance Problem: Creating Scene Graph and
> > > RotationBy Mouse
> > >
> > >
> > > > > Geoff Morris wrote:
> > > > >
> > > > > Hi:
> > > > >
> > > > > I've attached example code that generates and displays about 2000
> > > > > spheres (I've tried ColorCubes).
> > > > >
> > > > > Creating the scene graph, and rotating by mouse is very slow, and
> > > it's
> > > > > really unusable.
> > > > >
> > > > > It may be that my PC is incapable of better performance, but I'm
> > > > > hoping someone can see something that I'm doing wrong, or can
offer a
> > > > > suggestion that may help improve the performance.
> > > >
> > > > As John already said, try to reduce detail level of spheres.
> > > >
> > > > Currently every sphere has 100 quads, which is similar to 200
> > > triangles.
> > > > Over 2000 spheres give about 400.000 triangles per frame. Of course
> > > some
> > > > of them are backfacing, but regardless, all data have to be sent to
> > > > graphic card. 400k triangles is really a big number. My Geforce 1
> > > > (cheapest variant) gives about 8-10 fps for this scene - I think it
is
> > > > really good for such amount of triangles. And most current graphics
> > > > cards are many times more powerful.
> > > >
> > > > If only it could render similar amount of textured triangles....
> > > >
> > > > Artur
> > > >
> > > >
> > >
> >
===========================================================================
> > > > 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".
> >
> > __________________________________________________
> > Do You Yahoo!?
> > Get email at your own domain with Yahoo! Mail.
> > http://personal.mail.yahoo.com/
> >
> >
===========================================================================
> > 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".
>
>
>
> --------------------------------------------------------------------------
--
> --------------------------------------------------------------------------
--
> This Email may contain confidential and/or privileged information and is
> intended solely for the addressee(s) named. If you have received this
> information in error, or are advised that you have been posted this Email
by
> accident, please notify the sender by return Email, do not redistribute
it,
> delete the Email and keep no copies.
>
>
===========================================================================
> 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