Queston about initial Shape3D Transform.

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

Queston about initial Shape3D Transform.

Zachary1234
Is there any screen flickering involved from any particular Shape3D,
the first time the Scene Graph is read, when the Shape3D
is transformed for the very first time?

Root
|
TransformGroup (Contains Transform3d)
|
Shape3D (Is a Leaf Node)
Reply | Threaded
Open this post in threaded view
|

Re: Queston about initial Shape3D Transform.

philjord
There won't be any screen flicker as such, the scene tree is fully processed and compiled before the first frame is rendered.

However there is a one frame delay between calling setTransform on a TransformGroup and the result begin shown on screen. normally this is not perceptible to a user at 60fps but a heavily loaded system running 5fps may become apparent.

I have only once found trouble with this limit; in that case it was because the GeometryUpdater callback to modify ByRef geometry data does not have a delay so if you want TransformGroups and geometry updates to be aligned it will cause visual artifacts. My solution was to do the Transform calcs myself and multiply that into the geometry changes that were happening.
Reply | Threaded
Open this post in threaded view
|

Re: Queston about initial Shape3D Transform.

ZacharyABCD
Was this in the case of a non-affine Transform3D, and not simply a case
where you were deforming the Geometry separately, but only using a
Transform3D to move and/or turn the object?
Reply | Threaded
Open this post in threaded view
|

Re: Queston about initial Shape3D Transform.

philjord
The Java docs for TransformGroup state that all Transform3D's must be affine and in the case of Transforms in the view brnach they must also be congruent
http://jogamp.org/deployment/java3d/1.6.0-final/j3dcore/javadoc/javax/media/j3d/TransformGroup.html

In my case it was morphing horse heads (for animation of shaking it's mane etc) that needed to have the connection to the neck geometry line up perfectly with the bone weighted skin geometry of the neck.It that used TransformGroups as each bone, so the head would move one frame ahead of the neck and the tiny difference would be very noticeable as a fracture in the horse at the chin/neck interface.