Why all physics engines differ each other

Post Reply
Posts: 1
Joined: Thu Sep 07, 2017 4:36 pm

Why all physics engines differ each other

Post by MichaelD »

Hello friends! Sorry me for my noobish question but can you please clarify why all physics engines differ each other?
For example:
https://homes.cs.washington.edu/~todoro ... ICRA15.pdf
http://www.bulletphysics.com/ftp/pub/te ... gRolin.pdf
http://v2.gamasutra.com/view/feature/19 ... php?page=1

I don't have any knowledge about How to make physics engine and I don't understand all this math, but I want to understand everything and read&understand the Bullet code as easy as I read&understand sentences and words.
For that I learning c++ (Encapsulation right now).

Thanks in advance!
Brian Beuken
Posts: 24
Joined: Sat Jul 29, 2017 9:19 pm

Re: Why all physics engines differ each other

Post by Brian Beuken »

hmm there's lots of reasons, here's some.

Physics is a big topic, and though the maths for it is pretty much constant in all systems, the main thing about using a physics engine in a C++ project, is that it has to simulate real world massively parallel mechanics, on a non real world linear and mostly sequential computing system.

Different programmers approach that problem differently and put different constraints/needs as a priority, do we want speed, accuracy, compactness of code, use of existing data systems etc. These different approaches often also have programmers using different data structures access methods causing a lot of divergence in the code base while still maintaining the core physics formulae

So different engines usually achieve the same result, but compromise one or other of the constraints and ask for data to be in different formats to suit, or convert them to internal formats that allows them to function.

Then there is the vastness of the topic, physics is a huge area, most engines tend to focus on the dynamics of motion and collision of bodies of mass, but they may offer other parts and subtopics and the engine might then veer off from the mainstream needs.

Finally for me, there is what the engines designers original need was, many game physics engines started off as the motion mechanics of particular games or game engines and were branched off as stand alone engines, which have been expanded and polished. That engine will probably be optimal for the original coders needs, but may not be suitable for other concepts.

Hence different engines. Some are better suited to 2D, some 3D, some for rigid, some for soft bodies...and so on. You pick the engine that best suits your own constraints and work with it, perhaps enhancing and expanding it as your needs dictate
Posts: 235
Joined: Tue Feb 20, 2007 4:56 pm

Re: Why all physics engines differ each other

Post by bone »

^^^ What he said. ^^^

Nice concise explanation.
Post Reply