xissburg wrote:I'm very frustrated : (
. . . it is unrealistic and inaccurate and have lots of problems that I could see in some simulations in Box2D, and it also need some workarounds to make things look a bit better. What I wanna know now is what method do the developers of games like Need For Speed Underground/ProStreet, Gran Turismo, Test Drive Unlimited, etc use?! I cant believe they use SI, but if they do, its a very different SI because I don't see any problems at there. . .
The racing games mentioned, since I don't recall much (any) stacking or complex configurations (knocking over light posts, mailboxes, etc., in addition to car bumping), could be using simple penalty-spring methods or weighted/averaged impulses (which are easy to implement, fast, and work very well when there is no stacking or complex configurations).
While it's not clear what problems you see with Box2D, many more demos, papers, and source examples exist which show that SI is one of the best ways to implement real-time physics.
Check out the videos next to Nonconvex rigid bodies with stacking:
http://www.graphics.stanford.edu/~erang/.
http://www.cs.ubc.ca/~rbridson/
http://www.graphics.stanford.edu/~fedkiw/
Jan Bender's page:
http://www.impulse-based.de/, see the videos and try the demos (
http://i31www.ira.uka.de/docs/LinearTime.pdf (papers) and source code as well).
Impulse-based methods are fast, accurate, look great, and can realistically handle stacking and complex configurations.