o.K. So I was a business/marketing major and did it for a while but I have dabbled in programming here and there for a while so I decided to get a bachelors in computer science with a focus on game development. Well mannnnn the math is insanity lol does the knowledge of math have to be this deep for game dev? I mean is software/game development really this dependent on math? I always thought the more financial aspect would be more math orientated but I have already taken 4 pr 5 math classes and barely squeeked by, I hate math so just curious from you programmers is everything really this math intensive especially in game development? And if so is there any books or etc you recommend to make someone better at it?
I can attest to the fact that math is very important in computer programming, but keep in mind that some math used in computer programming is much different than anything that you will learn in high-school. If you are just working on a simple PVP shooter, you can probably get by with just high-school math knowledge, but if you are diving into things like calculating trajectories for a robot, then you’ll need to learn some more advanced math (Vector math, etc…)
What kind of games do you want to work on?
A lot depends on your preferred game genre and the amount of customization that’s needed. For example you can create a vanilla FPS without any complex math, or maybe even no math at all. But RTS or 6DOF action space-fighter will normally entail some serious math. Just working on something simple like a customized character or weapon movement / rotation system, can take you into unexpected complexity (quat / slerp). But often you can just leverage a game-kit’s built-in functionality. Game math is generally easier than college study, because its practical as opposed to purely theoretical. You can be more experimental, plug-in values, observe, tweak…
I am more just curious about the math level. I thought that the engines cut a lot of the math out. and I am still not sure I understand why math is so heavy in computer science as I do not get where it really fits into it other then the financial area or building your own engine. that is what is all confusing me.
College math can be hard, but Game math is more fun, as its a lot more experimental than theoretical. So try not to be put off. Some of the heaviest math around is in the area of derivatives. But you can compartmentalize it into black boxes and understand the inputs and outputs just enough to work with it, without needing to be a Nasa / JPL / Qaunt type savant. Most likely you’ll be working from samples of someone else’s code and using that as a template, rather than writing your own from scratch. Game kits are great because of all the editors, but a lot of the code you still must write yourself or borrow from others. But remember you can borrow ideas from other game sites including UDK and Unity…
Noooo, nononononono. Programming == Math == Game Programming. Math, big data, money/pos, just about anything that does anything is going to require varying degrees of math. Math is the language of logic, and programming is a user friendly way of setting up that logic. You must always be striving to improve in math. Sorry, but there is no way out of that. If an engine tells you “No programming or math required.” run, it’s a waste of your time. (Blueprints are programming, it’s just visual.)
So you want your camera to stop “looking up” at a certain angle? Euler Angles. Do you want a material or object to pulse/faded in and out? COS/SIN. Do you want to get the frustum of your camera? ATan, Tan, ect.
If you have a strong knowledge of linear algebra, you are well on your way, but you really won’t have control until you have (at least) some basic calculus down.
Don’t let that scare you though, game design is a perfect way to develop your math skills. Personally, I can’t really learn something until I am applying it. I need a reason to learn it. I need tangible results. Game design gives me those results/reasons.
Hmm, yes and no… When I was building engines, math of course was at the very core for shaders, matrix calculations, setting up quaternion references, vector references, VBO, Lighting… But even then, I built a math library and just referenced it for various calculations. I didn’t try and do the base calculations every time I decided I wanted something to happen. The math core (base confusing calcs) was a need to know once basis and forget about it from there on out.!
Most of this is abstracted in a pre-made engine, sure there is no escaping the fundamentals… You need to know what linear interpolation does, you need to know how to manipulate quaternions and you should understand how transforms / vectors / bool’s / int’s / floats / doubles yada yada yada works. But you don’t exactly have to be a math geek or really deeply know most of it…
Here, check out how a basic game engine is made:
There’s nothing here that blows the mind…
You certainly don’t need to be a math geek to make good games, that’s 100% true, but you are only hindered by a lack of advanced maths. You built your math library once and forgot about it, but at the same time, you built it once. If you are working with physics, as an example, a strong knowledge of linear algebra goes a long way.
Yall are killing me lol , Do any of you have any recommendations of where I can build up my knowledge of math? I hear mixed reviews about the khan academy so I do not know if its good or not.
Khan Academy helped me through college and beyond. That site is amazing.
Seriously? Then im using it bro i just didnt know anyone who used it and could only rely on articles now that you cosign it im goibg to use it