----- Original Message ----- From: "Chien Yang" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Wednesday, February 13, 2002 2:00 PM Subject: Re: [JAVA3D] Three performance questions
> > 2. > > --------------- > > > > It seems that everybody believes that the placement of viewer > > should be controlled in the transform just above the view platform. > > > > However, doing so to look in a certain direction using lookAt > > requires a matrix inversion (v is the Transform3D class > > above the Viewplatform): > > > > v.lookAt(cameraPos, endPoint, upVector); > > v.invert(); > > > > because of the way the modelview matrix is calculated. > > (See the Java3D 1.3 beta 1 spec pages 294 and 295). > > > > If I placed the same transform at the top of the scene graph > > and dropped the transform above the viewplatform I > > could avoid this invertion. > > > > Is there any way I can avoid the matrix invert while still > > placing the view transform as recommended? I would > > rather like to avoid compatibility mode since it is not > > recommended for java3D applications but just > > included to make porting easier. > > The invertion to the view's transform, is a once per frame cost. > The transform change above the scene is a per object cost (including > TG, SG, S3D ... ), and such operation can be very expensive. Really? You compute the whole chain from scratch for every object for every frame? This means I'm going to have to take another look at how I do things. Fred Klingener =========================================================================== 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".