Physics Estimation Question,
Members - Reputation: 103
Posted 23 May 2011 - 11:36 AM
Got a thought that I want input on. I want to ramp up physics interactions a bit to make more "realistic" world where objects break and such. I'd also like to do this in a "living" world where NPCs are interesting in and of themselves. However, you can't simulate an entire world constantly. So, I'm wondering if I can make the trade-off of having my realistic simulations nearby the player but approximate what happens everywhere else. So, if the player walks into a pub recently after a brawl broke out you might see pieces of broken chairs and tables and such, for example. I tried Googling 'game physics estimations' and the only promising link I found was a book on game physics but I DON'T want to try to compute super accurate simulations where the player isn't located to keep things at a good framerate.
I suppose I could fake it by processing state in the background and upon entering an area have the game quickly JIT-calculate everything according to the state for that area. Would this be a good alternative? Though, I'd like to do without loading screens as much as possible so I'd like to dynamically load/unload areas. Would JIT-physics work with this?
Members - Reputation: 193
Posted 23 May 2011 - 05:30 PM
SW Hsu, J Keyser. "Statistical simulation of rigid bodies" Eurographics/SIGGRAPH Symposium on Computer Animation (2009). PDF
Another neat idea that I've seen used successfully is the concept of curl noise for fluid/flow field simulation. There was a neat paper on it at SIGGRAPH 2007 which describes the basics of the technique:
R Bridson, J Hourihan, M Nordenstam. "Curl noise for procedural fluid flow", SGGRAPH (2007). PDF
A slight refinement of this method is divergence free noise, which achieves similar looking results:
I DeWolf, "Divergence free noise" Technical Report PDF
In all these methods the general idea seems to be that you look for some invariant or statistical properties you want the physics to satisfy (which is not strict), then instead of trying to solve it exactly you just pick a random solution that satisfies these constraints. Of course this is probably not going to work too well with rigid body dynamics, since the entire work of solving a system is wrapped up in the constraints; but it may work better for doing things like faking fractures, particles or complex turbulent phenomena which are chaotically related to their initial conditions. And of course none of these things do exactly what you are asking, but maybe they can help inspire you to find a workable solution.
Members - Reputation: 103
Posted 23 May 2011 - 06:20 PM