A really good introductory book
|
This book does a great job of covering all the basics required for a physics engine. With the exception of quaternions all other material is high school level Maths and Mechanics so it's quite easy to follow. It covers both particle and rigid body dynamics. It contains a very accessible introduction to collision detection and resolution. It presents algorithms and considers their stability and optimisation aspects. It's concise but provides a good base for further exploration.
The text does contain a lot of code though, which in my opinion is a distraction and should have been entirely omitted. This would reduce the size of the book, increase it's information density, and make it even better. Where absolutely required algorithms could be presented using pseudocode.
|
|
Tough initially, but excellent
|
Initially, this book is quite tough - there's no denying that. Even with knowledge of vectors etc. I did struggle to begin with -obviously this book is based very much on mathematics.
But once you see how the maths is used in code, this book starts to shine - if you're pro-efficient in C++, this is an excellent book, from the viewpoint of it creating a usable and quite sophisticated physics engine through the duration of the book; it also has a few extras that I was surprised (and pleased) to see in the book (although they are only lightly covered): ragdolls and fracture physics, as well as explosions.
The only place where this book is slightly weak, is that of collision detection. The book says the collision detection is fairly primitive, and covers a few methods for different shape types, but does recommend a stand alone collision engine, however this isn't terribly convenient seeing as though this is supposed to create a complete usable physics engine. Note however, that this is collision detection in general, not contact resolution; the latter is covered fully and very competently.
Overall, an excellent book; either to build your own, or to give you an insight on how other engines work (which is useful for when you wish to modify them, for example, or understanding the application of certain values, e.g. damping)
|
|
Nice but quite tricky for beginners.
|
Hi,
This is a very nice book for about the first 150 pages where it starts to become quite thin on the ground with regards to adequate explanations of what is going on. It is not really a book suitable for beginners. You will need alot more knowledge than the introductory pages lead you to believe such is the way with oh so many games books on the market today.
Personally I find the book quite frustrating although the author is clearly an absolute master both in theory and practice of his subject but he struggles to get his vast intellect and knowledge across to the reader.
I didn't want to rate it any less than three stars as it deserves respect because there is a clear attempt to help but it is over-shadowed by a far too brisk pace for beginners in the middle-late chapters. This is a shame really, perhaps if the same pace had been kept from the start it would have been a five star review.
Avoid this one if you are a novice, or like me are just very rusty at physics. If you are an experienced game developer you will probably love this book. Buy it, if your skill level is matched to it.
|
|
|