I agree,
For the application I am writing It is very important that the influence of
each behavior be merged into the subsequent animation frame, and unless
everyone else is frantically creating new behavior objects for each
different type of motion they need, the current API won't perform
satisfactorily for anything but the simplest of applications.
The use of a tree scene graph structure in J3D suggests that the influence
of each transform above a specified node (regardless of how many behaviors
are attached the parent transforms) will be merged to produce the resultant
behavior. If the influence of a behavior on any of the parent transforms is
not realized in the next frame, why even have multiple transforms or
behaviors in an application. The animation will always be out of sync.
I, like many other users I'm sure, assumed that issues related to behavior
scheduling and influence would be cleared up eventually. If they are not,
J3D will not be a realistic tool for gaming nor for many other animation
applications.
-----Original Message-----
From: Discussion list for Java 3D API
[mailto:[EMAIL PROTECTED]]On Behalf Of Shawn Kendall
Sent: Monday, April 03, 2000 1:38 PM
To: [EMAIL PROTECTED]
Subject: Re: [JAVA3D] View and Scene synchronization bug still in Beta2
Kelvin Chung wrote:
> Hi Shawn,
>
> >> The synchronization bug 4313347 is fixed in FCS release.
> >> However it is too late for us to make it into the upcoming v1.2beta2.
> >>
> >> In FCS release, you will see that the view is
> >> much less jitter than before. But there is still a little bit jitter
> >> sometime, since Java 3D spec. don't gurantee the result of the update
in
> >> two different behaviors will reflect in the same frame at the same
time.
> >
> >Ok, that's great to hear. So, as long as ALL of a scene's updates happen
in
> >only ONE behavior, we can have true frame synchronization. is that
correct?
> >
>
> Yes it is correct.
This is a serious core problem with Java3D IMHO. For many applications
there
must be a way to guarantee that all behaviors in a scene are updated before
the
scene is drawn. For certain animations, camera motion, etc., the playback
must
be on a per frame basis. At ANY frame rate, the savvy user will detect it
if it
is not. The only solution I can see is nothing short of replacing the
entire
Java3D behavior framework with our own!
Also, what is to guarantee that ANY behavior is updated before the scene is
drawn. I mean if two different behaviors aren't, why would one Behavior
work?
I don't believe it would. Is the only guaranteed way to create frame sync
to
inherit from Canvas3D and do updates in PreRender perhaps?
Does this matter to anyone else out there? I can't imagine this not being
VERY
important to many users... In gaming, we must have this to perform
correctly.
Some engines out there are time based, most are still frame based and will
be
for a long time. It all depends on the game.
--
__________________________________________________________
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
__________________________________________________________
===========================================================================
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".