Most Helpful Customer Reviews on Amazon.com (beta)
18 of 20 people found the following review helpful
Where is the gaming part?May 11 2005
- Published on Amazon.com
I've bought this book because I wanted to learn how to programm physics in my video games. Unfortunately the book boils down to presenting only basic mechanics to you. First, you need to skip about 150 pages of the book introducing Direct3D and the chapter dealing with DirectInput and game loops. If I start programming physics I'm most likely ready to do 3D graphics. Next, skip the appendix that contains an introduction to C++ and Windows programming.
Okay, now there are still 350 pages left that really deal with physics in this book. The good news is that the layout of the content for the physics chapters are a good selection. Even without any knowledge of mechanics the author guides you carefully from simple physical movement of point masses to the more complex behavior of rigid bodies. I really enjoyed how the whole topic is divided into single chapters to take them on one by one.
But then there are the drawbacks of this book. The biggest problem is that collision detection is nearly ignored at all. Okay, you have nice rigid bodies with realistic looking physics effects. But you cannot really use them in your programs because you need to read another book about collision detection first. Don't underestimate the need for a decent and *stable* collision detection system. Without that even the best physics implementation is lost. How do you want to let your body respond to a collision if you can't tell that there had been a collision? The author just uses static bounding spheres. That's a real pity because you would at least need collision detection for dynamic bounding boxes. You would also need this to calculate the points of collision needed for the physical collision response.
I'm stressing this point so much because with the what you learn from this book you are not able to have something as simple as a bunch of cubes falling down from the ceiling, colliding with platforms hovering in the air, and then resting on the floor. Obviously, you also can't have something more complex such as building a stack of two or more boxes piled on top of each other.
One thing that really annoyed me was the chapter about aircraft and spacecraft physics. Sounds like an interesting topic if you want to program your own flight sim, right? But you need to know that the demo of this chapter does not involve physics at all. Just a camera moving foward which can be rolled along the Z axis. But at least the author mentions the equations you can use to calculate lift and drag and strongly recommends that you do more research on aerodynamics if you want to implement a flight sim.
To conclude: Add 2 stars for a very good layout of the introduction from point masses to rigid bodies. But cut off three stars due to the lack of everything that would let you implement a simple but stable physics system you could use even in a simple 3D video game. In order to be able to do physics programming with this book you need to study another book about (dynamic) collision detection such as Ericson as well as a lot of papers you can find throughout the internet that discuss intermediate and advanced physics programming such as stacking and resting contact problems.
This book is nicely laid out and quite concise with its information. One need not read it from front to back to use the material within. A basic grasp of math and scripting is really all that one needs to implement many of the models presented, especially the vehicular models. The book is geared toward the Torque engine, however I was able to use it as a simple referance to help write a multi vehicle physics model for an Unreal Engine based game. For what its worth, I am not a programmer by trade or volition. I am an artist, with some scripting knowledge who knows how to use google search to find what things I don't know. The math and concepts are all quite plainly visible and easy to implement in a variety of situations. This book, like any referance or tutorial will not be a magic bullet for physics solutions. It will not be "push this button to add physics models to your simulations", however it will give all the mathematical and technical knowledge one needs to write one's own real time physics systems.
4 of 7 people found the following review helpful
Great book if you're not a physics or math guruSept. 23 2005
- Published on Amazon.com
The reviewer Juan "Valdez" doesn't know what he's talking about. This is a great book, especially if you haven't got advanced degrees in math or computing.
On the whole, I found this book to be a great read. The author doesn't treat you like some idiot. He also doesn't assume you live and breathe math and physics. Unlike the other books on game physics, this one isn't written like a textbook. It's really easy to understand. It also has the only discussion I've found on simulating flexible hair and ponytails. The author makes complex topics easy to understand.
The author, David Conger, starts out by introducing the common types of physics used in games. He then introduces Windows/DirectX programming. This book is part of the very popular Andre LaMoeth series on game programming and they all start out with an intro to Windows/DirectX programming. A lot of them also have intros to C++ programming either at the beginning or in an appendix. These intros seem to be one of the features that make the LaMoeth series so popular.
Next, Conger covers basic 3D concepts like coordinate systems and vectors. This is a great help if it's been a while since you had a math class. One of the best features about this book is that unlike other books on game physics, the author doesn't assume you're a math guru. He teaches you all the math you need to understand the book.
The author finishes the first part of the book by covering transformations in 2D and 3D, and showing how to create what is basically a 3D sprite.
The real meat of the book starts in part 2. It covers particle systems, collisions, rigid body dynamics, gravity, mass and spring systems, water, and waves. Juan Valdez's comments about the sample code being useless are totally wrong. Because collision detection isn't physics (it's a programming task), the author just uses basic collision detection. However, the methods Conger introduces are used in probably 90% of games. The code he gives in his physics framework classes can be used for all but the most high-end games without any problem. It gets you up and running fast. And anything else you want to know about collision detection is freely available on [...]. It was by looking on those sites that I found out how widely the author's methods of collision detection are used.
The last section of the book shows some really good simulations that apply all of the physics the book teaches. I especially liked the flight simulator.
I did find some typos, but they are all minor. All of the sample code runs and does what it's supposed to. In spite of the typos, I gave this book 5 stars our of 5.
5 of 9 people found the following review helpful
What I Thought of Physics Modeling for Game ProgrammingFeb. 27 2005
- Published on Amazon.com
The book has been excellent so far (I'm only through Part 1). Some of the examples have a misprint or two (that's why I'm only giving the book a 4), and I have yet to find the author's email address or a website through which to contact him.
This book explains things in almost every detail when it relates to its topic. The reader will still need to work out a few things on their own to gain a complete understanding of where the author gets his results at times, but it's nothing that persistance won't overcome.
I would definintely recoomend this book to anyone interested in this information! (I just wish I could find a way to contact the author.)
0 of 1 people found the following review helpful
Great Intro, Not too hard with the MathNov. 9 2006
- Published on Amazon.com
If you've taken a college level course on Calculus that deals with Derivatives, then this book is excellent. The reason why I only gave it 4 stars was that it lacked some in-depth coverage on collision detection, namely space partitions. Most physics engines do include some sort of space partition in the collision detection. Other than that, it's excellent on basic physics.