Take the 2-minute tour ×
Game Development Stack Exchange is a question and answer site for professional and independent game developers. It's 100% free, no registration required.

I am trying to study XNA for game programming. XNA has many methods that can simplify developer's life, such as reflecting the vector when it hits a solid plane.

I know these are good and developers almost always work at an abstracted level, which is also the basic fundamental of OOP. I am not comfortable with physics, nor have I studied physics anytime during my schooling and so it gets difficult for me to understand how these abstracted methods work.

Do developers need to be physics gurus in order to make good, not necessarily excellent, games? Are all professional game developers good at physics? Put simply, are they all Einstein types? Or is it just fine even we are not aware of what goes under the hood in abstracted XNA methods?

share|improve this question

migrated from stackoverflow.com Jun 2 '11 at 16:57

This question came from our site for professional and enthusiast programmers.

2  
-1 what's the problem you're trying to solve here? The answer to your question is simply "no". –  Tetrad Jun 2 '11 at 21:01
1  
What kind of game? Text adventures don't require you to know that there's such a thing as physics. Good pinball simulators require you to handle nasty collisions. –  Peter Taylor Jun 3 '11 at 12:24

5 Answers 5

up vote 9 down vote accepted

Developers don't need to be physics experts to make good games. If you're developing a physics based game like Gish for example, at a minimum you need to understand how to properly use your physics library.

There are tons of great physics libraries out there and IMO it's more important that you understand how use a library and iterate on your implementation to make something fun than understand the math at a deep level. Of course understanding the math helps too :)

I made my own soft body physics game for XBLIG a couple years ago and my physics code was mostly based around implementing the math for springs and pressure bodies.

share|improve this answer

You can't get much better than the answers to this question :-)
What math should all game programmers know?

Also, just to be clear, XNA itself doesn't provide any physics functionality. For that, you will need to look to an engine like Farseer Physics which is based on Box2D

share|improve this answer

Lets step back a bit - as much as it might seem challenging to implement physics in games (or not, depending on your experience), this is really basic physics we are talking about here - usually nothing much more complicated than equations of motions + gravity or thermodynamics equations.

Einstein developed general relativity (with a heavy dosage of tensor math) and quantum mechanics, which are orders of magnitude more difficult to understand and calculate compared to those classical and usually simplified topics covered in games. In fact, most of the physics covered in computer games can be learned at the high-school level (at least, where I went to it was being taught).

If you finished a degree in CS (or even if you didn't), getting those equations down and understanding how they work shouldn't be a problem for a decent programmer.

share|improve this answer

You only need as much physics as your game needs. Some games don't have "physics" at all. At most you'll find games use at most your standard F=ma type algorithms. The hard part is not the physics itself, but how to make it so your simulations are fast, stable, and predictable.

share|improve this answer
    
I'd add that game developers don't really need to know math either - beyond like addition, subtraction, multiplication and division. –  Tim Holt Jun 2 '11 at 22:23
1  
They need to know linear algebra, at the very least –  Eran Galperin Jun 3 '11 at 12:49

When hiring programmers, we ensure they understand and can solve problems with basic 3D vector math: dot products, cross products, simulating simple trajectories, etc. Reflecting a vector is a perfect example of a question we might ask. A working knowledge of basic 3D math is crucial for developing 3D games.

That said, very few professional game developers have the knowledge to write a good physics engine. This is still a very specialized skill.

If you want to go pro, I strongly recommend that you learn to be comfortable with basic vector algebra. If you don't, you will eventually struggle to keep up, even in 2D games.

share|improve this answer
    
Hi Gary, your suggestion is invaluable but how do I learn such stuff? I am basically from commerce stream (studied Accounts etc). I have never taken any physics course. Can you recommend any book which is very clear to read or any videos. I've seen few MIT videos but they are way too complex. I am not able to get them as they assume one already has some knowledge of physics. –  TCM Jun 4 '11 at 3:21

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.