Do You Need To Be Good At Maths To Build A Game?

It seems to be a common notion that maths is something to be dreaded. Maths use to be something that I had very little confidence with, but I don’t think I had particularly good teachers in this area. Some of them were very strict and would ask you really hard questions on the spot; Just the thought of attending class would fill me with apprehension. Others covered material that was too basic so that I wasn’t learning anything new by attending. I got placed in the 2nd to highest maths group, which resulted in me missing out on the opportunity to learn a lot of additional material and capped the grade I could achieve; My parents didn’t agree with this and believed that I was capable of doing better in the subject. Nonetheless, when I realized that my lifelong dream of wanting to build games required maths skills I was a little distraught.

As I mentioned in my previous post ‘The Creative Mind,’ when I attended a course on games programming I came to realize that it was less common to come from a creative background. There was one other person who enjoyed drawing and they switched courses to do design and 3D modelling. All of my friends come from subjects such as maths and science; Despite this, there were some assignments that seemed to require more creativity (even benefited by having drawing skills.) I found that I had to offer my advice and encouragement to others on these assignments because they felt a little disheartened at being marked on abilities that can take many years to nurture. In turn however, they had to pick me up during maths class where I would have a confidence crisis, even though I had already been programming for a couple of years prior.

I stated off as a self-taught programmer, after treating myself to my first book on game development. It took me a little while to build up my logic skills, but it was like problem solving and I enjoyed the challenge. It felt like a creative thing to do; like adding interactivity to my ideas. I loved programming so much that I actually decided to quit my fine art classes because I wanted to focus my time better. At no point did it ever dawn on me that what I was doing involved maths because it was so fun. Even though I wasn’t well practised with maths, I never felt like it held me back from being able to create what I wanted to. Of course, looking back, the games I attempted to build weren’t exactly well put together either.

On my games programming course there was a maths module; That’s when I realized that I couldn’t avoid it for any longer and so I decided to put in extra practice and study time. Surprisingly, I found myself able to enjoy the time I spent doing this. Without all of the pressure and apprehension associated with maths, it can actually be interesting and fun – like solving a puzzle. Some of you will probably be thinking it’s pretty lame that I just admitted to that, but it’s worth trying to find the joy in doing something if it’s of a benefit to us. It might also be that I personally have a preference for the type of maths involved in games programming. We covered a lot of concepts that we were never taught at school and there were others that I suddenly understood how to use – algebra, probability, trigonometry, Pythagoras’ theorem, matrices and vectors… etc… The grades I got in this module were pretty good, so it seems my parents were right when they claimed that I was capable of it. Even so, it can still affect my confidence knowing that it hasn’t come as naturally to me as it does for a lot of other programmers.

I was able to build things to varying degrees of success before I started to study up on maths, but I do feel the additional knowledge has helped a lot; It’s like having an extra tool in your box, it allows me to form better solutions for what I want to achieve. It doesn’t really make sense to restrict ourselves either, when taking the time to learn something can make our lives easier. I don’t believe you have to be an expert however, but it all depends on what you want to create and how. Different types of games can require different types of skills to put together. I recently came to realize that I’m not so good at physics heavy games, but I love anything built upon data structures. There is also a lot of software available these days, some of which allows you to put an entire game together without needing any programming skills at all. Creativity is also important and something that one of my lecturers tried to encourage, as we often have to form solutions for how to get the game to work.

To me, building a game is like solving a large problem, requiring a mix of creativity and logic; I guess that’s why I enjoy doing it because it allows you to delve into multiple skill-sets to bring it together; It’s also why it can be very challenging to do. There are definitely ways to put a game together without needing too many maths skills, but it can’t hurt to brush up on them either. If you’re wanting to build games as a hobby then it doesn’t really matter so long as you’re content with your abilities. If you’re considering a professional career then – depending on the role you want to fill – improving your maths ability may be essential and obviously it will look better on your CV. If you’re like me and had a bit of a shaky start when it comes to maths, don’t panic, this doesn’t have to be the end of your dreams. I found that I gradually improved as I learnt to build games anyway, and it’s also never too late to learn and practice new skills; You may even be surprised to find that it can even be enjoyable. My creative background has also helped me to bring something new to the table at times too.


Tags: , , , , ,

About wallcat

I have a strong passion for computing. In particular programming for which I am able to use a variety of languages including C++, Visual C#, Blitz Basic, Actionscript 2.0, Python and Lua. I also enjoy web-design and have some knowledge of HTML/CSS, PHP/SQL and Javascript. As well as programming I have a strong background in art and enjoy drawing in my spare time. When I’m not sat at my computer I like to keep fit by going to the gym or using my exercise ball.

11 responses to “Do You Need To Be Good At Maths To Build A Game?”

  1. Aura Eadon says :

    Having a solid maths background can help with programming but I never treated it as something absolutely essential without which it would be impossible to do anything. The point is that if you want to write physics code from scratch you need to breathe, drink, and eat physics. Otherwise you just need to understand the basic concepts in order to be able to use an existing physics engine.

    Nowadays I am a firm believer that any skill can be learnt on the job. I didn’t always believe that and I used to limit myself heavily much like your maths capping at school. The idea is simple: everyone can learn anything with the correct motivation. Instead of sitting down to learn all the math you may need for coding you can learn what you need to finish your current project. Learning maths is like learning anything else: needs perseverance and presence but nothing more.

    I like the comparison of building a game with putting together a large puzzle. You have to put together the pieces in a specific order and much like a puzzle, regardless of how strange the intermediate stages look like, it’s the final result that actually matters. 😀

    • wallcat says :

      That’s a great way to think about things. I think we often mistakenly restrict ourselves by feeling like we can only do something if we already have the skills to do it, or feeling like we have to learn everything at once prior to starting. I usually learn something new on every project I take on. I find I take things on board better when I have have a practical use for it too. Unfortunately, I think many of us limit ourselves through the fear that everything might go wrong if we don’t go in with that assurance in our abilities.

      What we need to know depends on what we want to build, but it tends to come to us naturally if we’re directed there by our own interest in it. I automatically picked up the maths I needed for the kinds of things I enjoy building. For everything else that I needed on my course, I found that I could pick it up with perseverance. I’ve spoken to a lot of people that consider maths to be something that they just can’t do, but I think a lot of that goes down to how they were taught. While some may be naturally gifted with it, anybody is capable of improving their maths skills. I just wish I’d realized that earlier.

  2. KG says :

    I love what you said about the fear of what could go wrong if we go in without assurance in our abilities. It is true. But it is what we need to overcome to learn or gain something through new experiences.

    • wallcat says :

      Thanks. It’s a problem that I’ve been trying to deal with for a while. I’m a bit of a perfectionist, but worrying about how well something will turn out can prevent me from even getting started. It’s silly because I’d learn more form doing a bad job to doing nothing at all.

      • Aura Eadon says :

        It took me a million years to understand that doing a bad job is a good thing because this is how we learn. We stand, try to walk, fall, get up, try again. It’s the same with writing a novel. First drafts are crap. So are the subsequent drafts until you refine your art and yourself and learn how to do it better. It’s exactly the same with coding. You write some code to implement an algorithm for example, but the initial result is not necessarily correct or elegant or even working at all. You refine and refine and through that refinement you refine yourself as a coder. 😀

        But of course such realisations come painfully slow. Still I think it’s better late than never, so not complaining from this girl. 😀

      • KG says :

        I agree but we usually realize it in hindsight. But it can’t be helped sometimes. There’s always fear, for me at least, of how people would judge something that I worked so hard at. Reading other developer’s experiences and seeing how open and supportive they are make the field less intimidating and more conducive to learning and trying out different things.

      • wallcat says :

        I’ve had times when I have felt a little intimidated by other programmers. I don’t think it’s unusual for intellectual or creative insecurities to arise when you put a lot developers together. A lot of people struggle with anxiety over how others may judge their work. Unfortunately, if we enjoy being creative we also have to deal with this flip side to the coin. I’ve heard it gets easier the more we do it though, so keep at it.

      • Aura Eadon says :

        @KG: Yes the fear of the judgemental attitude is something I am still fighting to expunge. In order to do that I had to stop judging people a lesson that is not easy to learn. Should I say habit? The thing is the less I judged the more I cared less for people judging me. Having said that I am still in that process. Work in progress, lol. But accepting that bad or wrong work is not a reflection on me as a person but part of the learning process also stopped me judging my own work and thus treating it with love. It also freed me creatively. I like to call my work “relative perfectionism” meaning that it’s as good as it possibly can be within the limits of what I know and the time I have to complete it. 😀

      • wallcat says :

        The problem is basing our self-value on what we do, rather than on who we are. I realized that my ego and moods were very closely linked to how well my work is going at the time, which results in me fluctuating quite a lot – even the best programmers can’t expect things to work every time. Programming seems to be a good way to learn this, as there will always be things to fix and improve. Although I’m a bit shy when it comes to showing my creations for the first time, hoping that people will bare in mind that it is still a work in progress. We can also choose who’s feedback we want to take on board and think of it as a way to improve what we’re doing rather than something to be fearful of. Of course, it can still sting a bit when we’ve put a lot of time and effort into something. I usually have to pause for a moment before I’m ready to start making changes. Being open to refining our ideas over and over definitely benefits in the long run though.

        It’s good advice to try and be less judgemental of others too and to base our confidence on trying our best rather than on reaching some impossible goal of perfection. I love the term “relative perfectionism.” 🙂

      • Aura Eadon says :

        “basing our self-value on what we do, rather than on who we are”
        Just totally love this. And yes I am now slowly switching on self-values based on who I am instead of what I do. It’s a hard lesson to learn and follow and accepting criticism that is constructive is probably a large part of it whether it’s about code or written work. On top of that I always fight the notion of what the other person will think of me when they see such and such mistake and that’s toxic shame. It’s also interesting that toxic shame is shaming us for who we are instead of what we do. Today I accepted criticism gracefully and with a smile. I also learnt something. I’m so grateful for that.

      • wallcat says :

        It’s something that I keep trying to remind myself, but it takes time to change old habits. I think when we work so closely with something the mistakes are also more obvious to us; I always make justifications for them to others, even though they may have never noticed. I find it very difficult not to interfere with play testing too, lol. I think we’re also stronger than we realize and can take criticism better than our minds will lead us to believe. Good on you for facing it and taking something positive away with you. 🙂

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: