Am I reading the source code correctly? It looks like in novodex_pal.cpp that Iterate() calls StartIterate() and then immediately calls WaitForIteration(). And in WaitForIteration(), the fetchResults() is called with blocking on the results. This doesn't give the rest of my engine the ability to do some work while the physics crunches the numbers.
This wouldn't be a problem if the paSolver was exposed to my engine. (Thus allowing me to get access to StartIterat(), QueryIterationComplete(), and WaitForIteration().) But right now I don't see where I can get a pointer to the current paSolver.
Am I missing something?
Thanks!
-john
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Am I reading the source code correctly? It looks like in novodex_pal.cpp that Iterate() calls StartIterate() and then immediately calls WaitForIteration(). And in WaitForIteration(), the fetchResults() is called with blocking on the results. This doesn't give the rest of my engine the ability to do some work while the physics crunches the numbers.
This wouldn't be a problem if the paSolver was exposed to my engine. (Thus allowing me to get access to StartIterat(), QueryIterationComplete(), and WaitForIteration().) But right now I don't see where I can get a pointer to the current paSolver.
Am I missing something?
Thanks!
-john
Hi John,
You can expose the palSolver by doing a dynamic cast from the palPhysics.
eg:
palSolver *ps = dynamic_cast<palSolver *>( palphysicspointer);
if (ps)....
I see. Might be a good tip to document somewhere.
Thanks!
-john