Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I know this is obviously not true for some games, minesweeper, card games, etc. But what about any game involving simulating the real world environment. Obviously these games have some form of a physics engineer powering the graphics.

For someone like me who personally did not enjoy physics but loves video games, do I have a chance at ever getting involved in the development cycle of a video game such as this while disliking physics?

share|improve this question
Have you looked at ? – dwynne Sep 14 '10 at 0:35
I loved games but disliked maths and didn't excel in physics. I am however a good programmer, and did well with the maths in my computer science degree (including a subject on 3d computer graphics). Why? Because in high school, maths/physics is taught without context. I couldn't convince my brain it was worth retaining all that stuff when I couldn't imagine what it could possibly be used for. In the real world, this isn't a problem, because you're using the maths/physics to solve an actual problem, so it won't be so difficult (if you're like me). – MGOwen Jan 20 '11 at 3:56
@MGOwen I'm completely with you here, the exact same thing happend to me too :) – legends2k Dec 31 '12 at 9:06
Math should be easy (it's just high school math that is required for game programming), have a look @ this… – legends2k Dec 31 '12 at 9:07
up vote 8 down vote accepted

There are many aspects to game programing and you don't need to be an expert at all of them. If you're on a bigger team you may not even be doing the core game programming but just network communication for example.

For core game programming I would think that above a sound physics understanding you would need a strong mathematical background. Having a strong mathematical background will allow you to do things like modelling transformations, clippings, keyframe animation, ray tracing, image processing, texture mapping, etc.

Having a strong physics background may help you with coming up with new computer graphics methods, but it is not required if you want to become a game programmer.

share|improve this answer

It's very rare to write a physics engine for a game anymore. Usually, a third party library, either free or commercial, is used instead. The same goes for other aspects of game engines, too. Rendering, sound, AI, animation, GUI, networking, etc. It's rare that anyone writes a game engine from scratch these days. Usually people buy them. If they do make them, they buy a bunch of middleware to do the difficult tasks.

There's lots of places to start learning game programming. If you want to just go "make a game" I'd suggest diving into Unity. Unity is a fantastic, very easy to use game engine that can be used to make just about anything. It even provides most of the features of commercial engines (especially the upcoming version 3).

If you want to learn more about the fundamentals of game programming, check out PyGame or XNA. They take away a lot of the tedium normally found in managing graphics, input, sound etc. They won't do physics for you (they are not engines, just APIs), but there's a lot of free, easy to use solutions.

share|improve this answer

Your Answer


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.