Also, how difficult is it to get a position as a game programmer, and what are "extras" that many companies would be more likely to select an applicant for? |
Not personally employed as a game programmer, but I do go to college for game programming and a lot of the people that went to get a job in game programming (a decent chunk just do something in general software development) did so through their professors and their portfolio. I've heard it everywhere, and I'll say it as well: You will probably need contacts to get into game development if you're going for anything above indie-level. (That isn't to say that indie development is a bad route by it being easier to get into. I'd prefer to do indie dev if I could keep myself afloat.)
Depending on what part of development you end up doing, you might not touch math at all, but that's not very common. If you're tweaking collision detection, you'll need to know a decent chunk of math. The amount varies based on what the collision system is. If you're the guy that writes shaders for the game, then you better know a metric-shit-ton of math.
The specific type of math varies but tends to stick around linear algebra, geometry, and statistics. Calculus is used for more complex situations, such as procedural generation and shaders. 2D games can be built without thinking in vectors, even though you will probably end up using them without knowing it. A 3D game can be made without the mindset, but you're not going to get very far since libraries can only abstract so much.
Something else that's handy to know is micro-optimizations through hardware. Information about SSE, cache misses, branch prediction, swizzled textures, etc. are used quite frequently to get decent performance.
So really all you need to program a 2d game is game logic and simple math. 3d shouldn't be that much harder. |
As I (and others) have mentioned, this isn't the case. 3D games tend to require a much more sophisticated level of math. This is for movement, collision detection, rendering/shaders, etc.
My advice when aspiring to be any specific type of profession is to look at job listings. |
Very,
very good advice.