Advertisement

have some questions about being a game developer

Started by July 26, 2014 05:51 PM
4 comments, last by Lxke 10 years, 4 months ago

I am 16 years old next year going to start high school and study Pure Mathematics and Computing A level. I would like to pursue a career in either game development or in software development, I would prefer game development(programmer) but there is no courses at the university about that. I have checked the website of certain game dev companies and they require a degree in computer science which is offered at uni here and they want some C/C++ experience and game dev experience. Does that mean that If I get the computer science degree and find a job as C/C++ programmer and do an indie game aside of my job I would be able to join a game company? I have some C++ knowledge too. This summer I have a lot of free time and have nothing to do with it so I decided to develop a game not by myself me and another guy who will be the designer. I was thinking about doing a simple but addicting iOS game and put it on the app store for 0.99 (I already own a mac) or if we should do a platformed game with java or C++ and SDL or allegro.

What do you think? any help where I can get started to learn how to put sprites on screen and use a physics engine for gravity etc and collision detection.

Thanks

Firstly, some general advice (as I am in your shoes right now). What I have found is there isn't any "direct" approach. You won't be learning "how to get into game development" but instead "learning a component of game development".

There are many components to game dev and lower level programming is only one of them. Learning C++ will give you the "know-how" to get yourself up and running, managing objects, function calling and making everything work smoothly. However, you'll find other uses using C++ which you'd pretty much apply the same concept, only the design is different.

As a software development career you'll find yourself using different approaches and most definitely get yourself into different areas such as using .NET for web things (example), looking at pure number crunching, working with databases to managing network connections.

"Joining the game industry" - unless you are very talented and have a portfolio I doubt it straight away. However, build yourself up, get a skill in one area and build from there. I have found working with C++ and SFML to be a nice learning curve which will form your baseline for future projects.

My advice would be to continue learning C++ and if you and your friend are up to the challenge it may work very well. One of you focusing on managing the game code and objects whilst the other focuses on all the graphics and designs.

But first you want to test yourself, any online "SDL tutorial" guide will help you get a good grasp. BOX2D is popular for physics, however if you can't get a sprite moving on the screen then I wouldn't want to start looking at physics just yet until you've got the baseline.

Important advice many have gave me on here and in general, always set an achievable target and don't look at the money! :) $$$ shouldn't be on your mind at this stage otherwise you'll be disappointed.

Advertisement

Like anyone else's, my answers are biased, but they are so by years of experience working in both indie and AAA game development.


I would prefer game development(programmer) but there is no courses at the university about that.

Good. Don't do that. If you care at all about software development, a program targeted at game development will almost certainly be detrimental to your education. Game development isn't a separate entity from any other kind of software development, and programs that are specific to game development will be inclined to get to "the good stuff" faster, overlooking a lot of the foundation of programming. You are far better off studying computer science, or some other non-specific programming. Keep in mind that the people looking to hire you will most likely be people who have been in the industry a while, meaning they went to school before there were "game development" programs, and they are often looked down on. Learn how to program - don't just learn some library that helps you make games.

I'm not saying that there are no good game development programs, but I've never heard of one equal to a good old fashioned computer science program.


Does that mean that If I get the computer science degree and find a job as C/C++ programmer and do an indie game aside of my job I would be able to join a game company?

That would definitely be a good way to go. You may even want to put together a small game while in university. If you come out of university with a computer science degree and a prototype for a game, you're ahead of the curve. Just beware of trying to start a game development team. Other people, especially non-programmers, are more likely to complicate your game, and make it harder to complete even a prototype. If you do get a group together to make a game, make sure it's mostly programmers.

Get your degree and have a small game project to show, and you should have a pretty easy time finding a game development job.

Edit: I'll address the last part.


This summer I have a lot of free time and have nothing to do with it so I decided to develop a game not by myself me and another guy who will be the designer.

This is the exact kind of thing I warned against. Especially for your first project, having a "designer" can be disastrous. I don't know a single person who finished their first project. I would actually argue that the purpose of first projects is not to have a complete product at all, but simply to learn from your mistakes. Then, when you have a better idea of what you're doing, start a new project, fixing all of the things that went wrong the first time.

For a programmer, failures are useful. For a designer, it just means that someone didn't make their ideas come to life. When you're just learning how to get started, you don't want the added complexity and stress of trying to implement someone else's ideas.

You should always aim to finish a project, but know that in the case of your first project, the goal is not to finish it; it's to learn from it.

I agree with DavidGaames fullheartedly! Try to get an engineering degree first, worry about games in your sparetime. University isn't making you a game programmer yet but it'll teach the foundations upon which you can learn game specific skills and techniques. Then aim for an internship. Usually companies don't expect interns to bring the skills and experience to work on arbitrary tasks right from the start. From my experience it works like this: If he fits in he'll pick the skills up while working on an easy task. If he's does a good job he'll get more interesting, challenging, fun stuff to do. After half a year (typical duration of an internship at our company) we usually try to keep the good interns in some working relation with us even if they return to complete their studies. (e.g. 2 days a week)

The following coding internship applicant would get the job:

- Passion for games & gaming.

- A solid foundation in coding, design patterns, OOP. C++ or C# experience. Visual Studio experience.

- Some basic understanding of game programming. computer-graphics, game-architecture.

(We need some common ground, shared vocabulary, shared experience so we have a chance to explain the game/task specific stuff.)

- Have some kind of intuition when to ask for help & opinions and when to just try to figure it out with google.

- Know what you don't know. Ignorance often makes people overconfident. It's annoying to argue with someone with zero work experience about how we could improve our approach to do things. We're not looking for a consultant but for someone that fits in and makes everyones life easier, not harder!
We look for normal guys that we can form a healthy long term relationship with. Showing dedication by working overtime to a point where you're basically living in the office isn't a plus. Neither are the attempts to make everyone your new best friend. The easiest way to make a postive impression when you apply as an intern isn't grades. It's to show something game related that you've made yourself. (No 10 man student projects where it isn't clear what YOU actually contributed.) Something small, interesting, made in your sparetime that as a token of motivation and skill. It's also great because you got something to talk about in your interview that you know really well and are passionate about.

This post is highly subjective: I don't know if this applies to other companies beyond the two I've worked for.

I agree with the above posts stating not to go to one of the "Game Design/Game Programming schools" as most of these are cash grabs and you will end up leaving school with nothing to help you find a job.

I went to one of these schools and it took me 4 years to get a job as an engineer after graduating because I did not have a Computer science degree from a proper university. The reason for this is you don't even make it to the interview because your resume doesn't have a CS degree on it and they just skip you without a thought.

I had to do 2 years of QA at one job, then another 2 years of QA at another company before they transitioned me into QA/bug fixing role. After this I had experience on my resume which helped land interviews and I am now at my third engineering position. I could of skipped the whole QA area of my career by going to a proper university with a bachelors degree.



This summer I have a lot of free time and have nothing to do with it so I decided to develop a game not by myself me and another guy who will be the designer.

This is the exact kind of thing I warned against. Especially for your first project, having a "designer" can be disastrous. I don't know a single person who finished their first project. I would actually argue that the purpose of first projects is not to have a complete product at all, but simply to learn from your mistakes. Then, when you have a better idea of what you're doing, start a new project, fixing all of the things that went wrong the first time.

For a programmer, failures are useful. For a designer, it just means that someone didn't make their ideas come to life. When you're just learning how to get started, you don't want the added complexity and stress of trying to implement someone else's ideas.

You should always aim to finish a project, but know that in the case of your first project, the goal is not to finish it; it's to learn from it.

The other guy is not a professional designer or something, he is the same age as me, tough he knows how to use photoshop and is more creative in getting the characters design etc, He will be programming too not only designing. What is a great first game we could go for? I was thinking of doing a simple ios game or a C++ and SDL to be cross platform.

This topic is closed to new replies.

Advertisement