Hello folks,

I have an application that has a large amount of computation (real-time
physics + much more) before correct information is available to render a
new frame.  All of our subsystems are multi-resolution, that is to say, we
can tune their detail level such that per-step execution times are bounded
and the results are still correct and consistent.  Thus, we suspect that
the best solution for rendering is to lock-step render.  That is to say,
we'd like to loop { compute -> render a frame }.

I'm certain this must be a common problem when using Java3D as a rendering
engine, especially given the unreliability and under-specification of Java
thread behavior.

On investigation, I haven't found any specific information in the mailing
list or online for solutions to this problem.  I have seen that other folks
are doing work that is similar in nature and even in similar domain, given
the AI Robots game to which I saw reference and everyone's interest in
massive multi-player online experiences, so I'm sure there are some good
solutions out there.

Me, I'm just a computer scientist, so my solution is just to use two
mutexes to lock-step the rendering engine via a behavior that wakes on
every frame. Is this a reasonable thing to do?  I don't have any
information about what other threads in the Java3D framework might be up
to, but I do get the impression from previous posts that I'm guaranteed
that rendering will not continue until a behavior's trigger has returned.

I have seen the discussions about postId, but this doesn't help given you
have no guarantees about thread scheduling behavior, even with tuning
Java3D's priorities.

If more details are necessary, please ask.  Suggestions are welcome.

Best,
Joe Kiniry
--
Joseph R. Kiniry
DALi, Inc.

===========================================================================
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".

Reply via email to