Jump to content
  • Advertisement
Sign in to follow this  
hopital

Strong maths background a criteria?

This topic is 3489 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi all, I'm new to the world of programming. After browsing through guides and threads on this forum, I've realised that some guides require the reader to be proficient in maths in order to accomplish certain tasks. My question is, do I have to be really good at maths in order to become a game programmer? Situation now: I'm trying to pick up C and C++ at the moment, spurred on with my interest in games, and eventually I hope to be able to create a tetris-clone, and take on more complicated games like breakout, pac-man etc... as a hobby, or maybe even as a career one day? PS: Sorry if this post is in the wrong location, I'm not quite sure if it should be here or in the maths section!

Share this post


Link to post
Share on other sites
Advertisement
Some basics in Vectors and Matrices won't do you any harm. I started with very little or no maths skills at all, and I'm doing fine. I have two full 3D engines under my belt and a deferred renderer on the way, along with various games and Unrealscript-based mods.

I just picked up what I needed along the way. one thing I will recommend highly, though, is "3D Math Primer for graphics and Games Development" by Dunn & Parberry, it'll be your lifesaver.

Share this post


Link to post
Share on other sites
I've been programming for years and I'm now reaching the end of my final (3rd) year at university studying games programming. I've never had particularly good maths skills, in-fact I'm almost embarrassed about it. Essentially, as long as you have a good reference book (I second the one listed above, I bought it recently) you will get along just fine. Make sure you understand basic 2D/3D vector and matrix theory and you'll learn the rest through practice.

Share this post


Link to post
Share on other sites
Quote:
Original post by hopital
My question is, do I have to be really good at maths in order to become a game programmer?


Well look at it this way, if you don't already love mathematics, game programming will one day make you love it.

Small anecdote:

When I was younger I started to game code and at the time I didn't care at all about mathematics. One day I was working on a RPG, and I was coding the character displacement with VERRRRRY poor code. And at one point I realized that I could use algebra to control the "X-Y" position of the character. And today my academic goal is to have a PhD in Mathematics...

Share this post


Link to post
Share on other sites
A rudimentary understanding of Mathematics will be useful to you, particularly in games programming. Gather a working knowledge of vectors, matrices, trigonometry and Pythagoras' Theorem; then that ought to be more than enough to make many games, particularly the ones you listed.

Share this post


Link to post
Share on other sites
Thank you everyone for the replies!

I'll check out the book mentioned by deadstar the next time I make a trip to the bookstore, and google out resources on matrices, vectors (linear algebra?) etc...

Now that I've located my starting point, I'm more confident on starting out on this journey called "Game programming"!

Share this post


Link to post
Share on other sites
Quote:
Original post by Lovens
Quote:
Original post by hopital
My question is, do I have to be really good at maths in order to become a game programmer?


Well look at it this way, if you don't already love mathematics, game programming will one day make you love it.

Small anecdote:

When I was younger I started to game code and at the time I didn't care at all about mathematics. One day I was working on a RPG, and I was coding the character displacement with VERRRRRY poor code. And at one point I realized that I could use algebra to control the "X-Y" position of the character. And today my academic goal is to have a PhD in Mathematics...


Game programming also made me interrested in math :D

Share this post


Link to post
Share on other sites
I would argue that it depends on what you're planning to do in game development. The projects you mentioned wouldn't require much more than a basic understanding of math, I doubt beyond early high school.

If you were to start taking on bigger projects, more complex ai, physics, 3d, etc... Get at least a basic understanding of algebra, calculus, etc...

Share this post


Link to post
Share on other sites
While I wouldn't say it's a necessary to be a genius at math, you should definitely be proficient at it.

Any good programmer will use as many tools as possible for his job.

For example, at school we were posed the challenge of creating a Mario Kart esque style camera. There are tons of ways to solve this challenge. For example, if you want the camera to "hold back" a little bit while the car accelerates to make it feel fast and then when the car breaks, the camera gets closer a little bit from momentum to simualte a fast break, how would you solve this?

You could create a linear function to solve this which could take in the accelereation of the car to give you the distance the camera should be. However, what happens if you weren't good at math? You should create a queue of the car's position of size 60 or so, and once the queue is full, set the camera's position to the top of the queue, etc... That's a more programmtic approach. Is one necessarily better than the other? Nope. Just different ways of thinking of the same problem.

So I say you should really learn it just because it opens up whole other avenues of thinking of how to solve your problems.

Share this post


Link to post
Share on other sites
Well for something like breakout, no advanced math is required

For anything 3d, you really need to understand matricies and transformations though

I remember one game I made, where I used
normal vectors, tangent planes, dot products, cross products, vector projection, basis vectors, etc.
It was actually all stuff I happened to be learning in school at the time

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!