0

Thanks a lot for your attention to this question in advance!

It is my first try to ask for help on this amazing StackExchange. If I do something inappropriate, please point it out directly so that I can correct this question to be better.

Please let me clear my background first: Recently I am investigating the simulation of rigid bodies.It's really interesting!

Till now, I have implemented 3 different kinds of rigid body/multibody simulators, one of them is by Featherstone method, one of them is by Lagrangian method(Generalized coordinates), and the left one is simply for isolated rigid bodies governed by Newton-Euler equations, respectively。

I use bullet as a collision detection backend in my simulator and begin to implement the collision resolving algorithms(for example, interactive Sequential Impulse or MLCP problem then solve it by PGS, etc) by myself.

The question: in lots of papers and books, people mentioned 2 different concepts. They say that the rigid body simulation can be roughly classified into "constraint-based" and "impulse-based", later then they reference some famous papers of Mirtich or David Baraff... For example the book "Physics-based animation" written by Kenny Erleben in 2005, chapter 6 and chapter 7.

But I really can not get the point. I felt quite hard to distinguish these 2 concepts "constraint-based" and "impulse-based". It nearly drove me crazy.

I can use a constraint solver in collision resolving to solve the contact impulse or contact force then push the contacting objects away.

I can also use a constraint solver between rigid bodies and make them into a chain connected by joints.

I can also calculate the force in contact points or user-customed external force and forward the simulation from the second-order "acceleration" term, or vice versa calculate the impulse and drive my simulator from the first-order "velocity".

Would you kindly please help me to sort out my confused thoughts? :(

Xudong
  • 1
  • I think this is the wrong community for your question since it is not really about computer graphics. I think Game Development might be better suited for your question. – wychmaster Jun 18 '20 at 10:52
  • Thanks a lot for your reply! Maybe I should move it to GameDev StackExchange. Btw, does physical-based simulation belong to Computer Graphic Communnity? :O – Xudong Jun 18 '20 at 11:34
  • I don't think so. See this link. This site is mainly about ... well, computer graphics. So if your question would be about turning a simulation result or animated character into a visual representation, that would be a topic for this community. But purely simulation/animation related questions are discussed in other StackExchange network sites. – wychmaster Jun 18 '20 at 11:58
  • Thanks a lot for your patient explanation! Though I still felt a little hard to understand the exactly difference between them, I still will move this question to another place. :D – Xudong Jun 18 '20 at 12:15
  • How about physics stack exchange? – Felipe Gutierrez Jul 14 '20 at 06:16

0 Answers0