.
A few people supported and a few were very against it.
However, our project has reached a point where we MUST have correct sync between the behaviors and render per frame.
Now we have completely implemented our own behavior management system already. However this system currently gets it's update from a Java3D behavior that is trigger by a WakeOnFrameElapsed = 1.
So, for our behaviors everything seems to work fine but there are times when we still need or would like to use standard Java3D behaviors, such as Billboard or the utils-KeyNavigator behaviors.
Therein lies the problem. Because these multiple Java3D behaviors throughout the graph are NOT guaranteed to be updated "atomically" before the render, jitter becomes a way of life.
Unfortunately, our project has reached a point where we can no longer
have jitter in our demos.
So we are about to insert our behavior execution into a Canvas3D object
that will call our update in the pre-render. This will make sure
our updates get done before the frame. This does not fix the normal
Java3D behaviors - Billboard etc. so we CAN NOT use them. We are
force to rewrite any Java3D behavior we wish to use to work in our update.
Additional, we will be writing our behavior management code to run threaded,
so on our multi-processor systems we will get processor utilization.
If you guys are interested I can explain how we are multi-threading AND
synching (I'm sure you guys understand this, just other people on the list
posted it can't be done).
The point of this detail explanation is that it is extremely disappointing
that we must do this at all! It is ridiculous to have to reimplement
the Java3D behavior system and behaviors and/or remove then from the graph
to get correct execution. A simple sync option should exist in the
View class that guarantees this execution. And it's not particularly
difficult to implement, at least not how we do it.
On a side note, we have done this for years using SGI's Performer,
and it is a must for many, many 3D apps.
Is this the only option. Any suggestions on a better work around
would be greatly appreciated?
___________________________________________________________
Shawn Kendall
Full Sail Real World Education
Course Director
3300 University BLVD
Real Time 3D for Gaming Winter Park FL
32792
[EMAIL PROTECTED] http://www.fullsail.com
___________________________________________________________
