Re: Question about Java3D and Transformations.
Posted by philjord on Feb 03, 2019; 7:26pm
URL: https://forum.jogamp.org/Question-about-Java3D-and-Transformations-tp4039441p4039463.html
The tree traversal is totally automatic and happens on each render pass. You don't need to fire the change or tell anything to update, calling setTransform() will cause the next rendered frame to be updated.
Java3D manages a somewhat complex structure to achieve this, with the values used for rendering being copies of the values you set, so there is never any concurrent modification issues, you can call the setTransfrom whenever you like.
If you are doing something that needs to update on a per frame basis or even on a transform update called by a different thread then the Behavior mechanism of Java3D is very powerful and full featured.
One exception to the concurrency rule is that you can't update by reference geometry data at will, so in that case you need to give a call back GeometryUpdater to the GeometryArray.updateData()
These sorts of complexity removal features are the heart and soul of why a scene graph engine exists.