Sign in to follow this  

New to game programming need help

This topic is 819 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

I know this question is asked a lot but wherever I go I can't seem to find a definite answer. So here are my questions:

What are the different fields in video game programming?

Will finishing a course in computer science be enough?

Does a degree mean anything for getting into a job for game programming?

Or do I need to focus more on learning, practicing and proving that I can make games on my own first?

How much demand is there for video game programmers?

From what I read online people make it sound like going into any field of game programming is like becoming a slave. I hear things like "you'll be working 12 hour shifts 5-7 days a week or more" or "you're expendable so if you screw up more than a few times you'll get the boot". Is it really like that or is that a single persons gritty opinion?

 

I have so many more questions but I'll leave it at that. I'm sorry for bombarding a lot of questions but I really appreciate it. I have the determination to learn I just need a starting point.

Share this post


Link to post
Share on other sites

I never got a degree. I learned how to do everything by myself and got a job doing OpenGL programming for a digital signage company.

 

 

 

What are the different fields in video game programming?

There are many sub-fields. Graphics, AI, networking, Audio and many more.

 

 

 

Will finishing a course in computer science be enough?

Experience ALWAYS helps. Make some personal goals and jump right in. Oh and start small!

 

 

 

Does a degree mean anything for getting into a job for game programming?

Yes an employer will look at this when you apply for a job. I just had enough experience to squeeze by when I started.

 

 

Or do I need to focus more on learning, practicing and proving that I can make games on my own first?

This should always be a focus learn about programming before diving into games. The best and most successful programmers I meet are very self motivated and have side projects on the go.

 

 

How much demand is there for video game programmers?

There is always is a demand for good programmers. I can't help too much with this question.

 

 

From what I read online people make it sound like going into any field of game programming is like becoming a slave. I hear things like "you'll be working 12 hour shifts 5-7 days a week or more" or "you're expendable so if you screw up more than a few times you'll get the boot". Is it really like that or is that a single persons gritty opinion?

I've never worked for a large company so i wouldn't know. Here at a small office I get a large office, free snacks, lots of holidays and always done at 5.

 

 

A good starting point is learning how to program. In general many game programmers use the C++ programming language. This can be a bad place for beginners to start. Learning how to build websites can teach you the fundamentals of programming and you can create your own web based games.

Share this post


Link to post
Share on other sites


What are the different fields in video game programming?

I haven't done it in a while but I used to browse help wanted ads for game programmers (here/gamasutra/companywebsite), you could do the same and see what the requirements/resposibilities are in addition to job titles.

 


Will finishing a course in computer science be enough?

Hopefully somebody who works/worked in the industry can help you out with this one - is what I would have said if you had said a degree.  But since you said a course, I'll ask which course?  A first programming course?  If so probably not.

 


Does a degree mean anything for getting into a job for game programming?

Like I said above hopefully someone can answer from experience but you could also look through help wanted ads.

 


Or do I need to focus more on learning, practicing and proving that I can make games on my own first?

Personally I think game programming is both broad and deep so I would recommend learning at least a little on your own.  Making at least a few small games and read about the more complicated things so you become familiar with concepts.

 


From what I read online people make it sound like going into any field of game programming is like becoming a slave. I hear things like "you'll be working 12 hour shifts 5-7 days a week or more" or "you're expendable so if you screw up more than a few times you'll get the boot". Is it really like that or is that a single persons gritty opinion?

I've heard that in more than one place as well so I'm curious what answers you get.

Share this post


Link to post
Share on other sites

What are the different fields in video game programming?

Game programming as technical discipline is a very broad area, it goes from highly abstract algorithms such as used in NPC control, to video hardware and internals of the CPU.
If you extend towards making a game from scratch, you get game design (ie what should happen in the game, what are the problems that the user solves), and graphics as well.
For indie developers, you get marketing the product as well.
 

Will finishing a course in computer science be enough?

No.
Education is extremely helpful in pretty much any field, and by all means do it, and try to do more.

On the other hand, education only explains how you can look at things, common methods of how to solve certain problems, underlying theory.
Like any craftsmanship, practice makes perfect. Education is useful as foundation, but in practice, problems are a tangled mess that you need to unravel before you can think about solving them. In practice, you get a 25,000 lines piece of code which "has a bug". In practice, there are version control systems to work with, issue trackers, debugger tools, and library version compatibility problems.
By encountering these things, and working with them, you sharpen your developer skills. These skills are never too sharp, they always need more practice.
 

Does a degree mean anything for getting into a job for game programming?

If all other things are equal, and you are the one person with an education, yes it makes a difference.
On the other hand, if another person can show he made a game, he wins, most likely.
 

Or do I need to focus more on learning, practicing and proving that I can make games on my own first?

I don't want to answer this one, but I'll give you a question in return:

Why (deep down from your heart), do you want to program games? I don't need the answer, but find the truly honest answer for yourself.

At a simpler level (where the honest answer may help): Why do you aim for going into game programming industry if you don't know whether you like game programming?

 

How much demand is there for video game programmers?

No idea, not much is my guess. Pretty much everybody can program to some extent, and sure enough, it even works for some value of "works".
 

From what I read online people make it sound like going into any field of game programming is like becoming a slave.
I hear things like "you'll be working 12 hour shifts 5-7 days a week or more" or "you're expendable so if you screw up more than a few times you'll get the boot". Is it really like that or is that a single persons gritty opinion?

Programming is just plain factory line production most of the time.
You're paid to convert the raw materials (game design) into a nice looking product (the code), within the deadline, and preferably as fast and cheap as possible.
Writing software is just everyday business.

I'd say if you're looking for a nice and simple 9 to 5 job, where you forget all about work the moment you walk out the door from work, programming is not for you.

Share this post


Link to post
Share on other sites

Alright I'm pretty pleased with how much feedback I'm getting and some really helpful answers but I'll try a more simplified direct approach. What type of game programming would you recommend for someone who is good at math. I'm a very straight forward thinker and very logical like a machine. This may be a bit vague but I hope that it'll give me an Idea of which type of programmer I would be. I'm thinking of being a graphics programmer. This may sound really dumb but the words graphic and programmer don't match in my head. The way I see it is that someone who works at graphics needs to be skilled in art such as making meshes and sculpting and that programming is writing lines of code that makes the game run. I'm aware that's a very naive way of seeing it but be aware that I have no clue about anything with regards to what actually goes on in a video game developers workplace. So what do I need to be more inclined in to be a graphic programmer; art skills or math/coding knowledge?

Share this post


Link to post
Share on other sites
I'm a little confused that you first state you want to be a graphics programmer, then go on to ask what a graphics programmer is, but hey ho.

Graphics programming can be anything from writing shaders to using a graphics API to send triangles to the card.

A modern good graphics programmer will need to be very well versed in how current and next gen 3D hardware works, especially in the age of DX12/Vulcan etc which require a lot more understanding of this to write efficient code.

It's a very specialised and hard area. Not a beginners topic.

Share this post


Link to post
Share on other sites

Did I? I don't remember asking what a graphics programmer is. I remember asking if a graphics programmer needs to be better at math or art. I'm going to put this out there a lot of what I'm reading sounds like people telling me to not go any further and quit trying to be a programmer. I'm not asking you people how hard this is, nor am I asking for if you think I can handle it. I am simply asking what I need to learn in order to become a graphic programmer, such as: coding languages, categories of math, degrees in university, etc. I am also asking if I need to be any amount of good with art, such as: modeling, textures, sculpting, etc.

Share this post


Link to post
Share on other sites


I'm a very straight forward thinker and very logical like a machine.

Then you're a good match for programming in general.

 


What type of game programming would you recommend for someone who is good at math.

Lots of programming disciplines have math involved in them so if you're good at math you're blessed.  In game programming I would say A.I., physics, and graphics can be math heavy.  If you are implementing audio (DSP style algorithms) then that can be math heavy as well.

 


This may sound really dumb but the words graphic and programmer don't match in my head. The way I see it is that someone who works at graphics needs to be skilled in art such as making meshes and sculpting and that programming is writing lines of code that makes the game run. I'm aware that's a very naive way of seeing it but be aware that I have no clue about anything with regards to what actually goes on in a video game developers workplace. So what do I need to be more inclined in to be a graphic programmer; art skills or math/coding knowledge?


I am simply asking what I need to learn in order to become a graphic programmer, such as: coding languages, categories of math, degrees in university, etc. I am also asking if I need to be any amount of good with art, such as: modeling, textures, sculpting, etc.

Graphics has an artistic component, this is not the responsibility of the graphic programmer.  The programmers job is to get the graphics made by the artists on the screen at a realtime framerate, and to implement approximations and shortcuts to make graphics look better while still having a interactive framerate.  Coding I would say C++, math I would say statistics, linear algebra, calculus, differentals equations (IIRC).  I would also say you need to know the basics of computer hardware like caches, and of course graphics hardware like Aardvajk mentioned.  Also like he mentioned you have to study graphics API's and best practices for them so you can take advantage of the GPU hardware acceleration efficiently.

Share this post


Link to post
Share on other sites

Thank you Infinisearch that answers a lot of what I wanted to know. So one last question: should I go for a degree in computer science if I want to be a graphic programmer? If not any suggestions?

First off I think you should wait for other responses from people with actual industry experience since you are job oriented.  If somebody can chime in on the math necessary for graphics programming that would be nice as well.  Yes I think a degree in computer science would be both helpful and useful.  Like I said in my earlier post you should check out help wanted ads (here, gamasutra, game company website) to see what degree requirements if any they require.  However a CS curriculum will have math courses like calc as a requirement (right up your alley right?) have electives for graphics programming, and teach you a fair amount of useful things like bigO, and data structures and the like.  There were some courses which you could do without but they might in fact broaden your horizons.  Also a CS degree will open the door to programming jobs in general which gives you options which is always nice.  Also college is a good place to learn alot of advanced math which you might be interested in, and again broaden your horizons.  Another thing I would suggest is to start reading papers on graphics and seeing if you can follow them, and attempt to learn what you need to follow them.

 

edit - found this in regards to math and graphics: http://www.cc.gatech.edu/~turk/math_gr.html

Edited by Infinisearch

Share this post


Link to post
Share on other sites

The different types of programmer vary fro company to company.  Some of the largest ones have well defined groups such as AI programmer, audio programmer, physics programmer, graphics programmer.  Some may just be separated into engine programmers and gameplay programmers.  Some may just have programmers who have to pitch in everywhere, they may specialise in certain areas but this won't neccassarily be reflected in their job title.

To get a job in games you will need a degree AND some personal projects / samples of work.  There are people who have managed without a degree but these are exceptions to the rule. Some of the largest companies will get hundreds of applications and have a HR department who won't specifically be games dev experts. Not having a degree pretty much guarantees your application finds its way to the trash.  Once you get past HR the programmers reviewing your applications want to see some demos or evidence that you can do what your degree says you can do.

 

There is a lot of demand for video game programmers of varying skillsets.

 


From what I read online people make it sound like going into any field of game programming is like becoming a slave. I hear things like "you'll be working 12 hour shifts 5-7 days a week or more" or "you're expendable so if you screw up more than a few times you'll get the boot". Is it really like that or is that a single persons gritty opinion?

 

In the smaller companies it is usually nothing like this.  Hours are flexible, pay is good, holidays are good.  Some have zero crunch policies.  Once the companies get bigger (AAA), they make publishing deals and start promising specific work for specific deadlines and thats when things like crunch, free overtime, low pay etc.. come into play.  Basically the larger the company the worse it can be.  Thats not to say it is like this all the time.  Game developers don't particularly feel like slaves.  When there is no crunch things are usually lots of fun and there is an awful lot of kudos that goes with the job.

 


Alright I'm pretty pleased with how much feedback I'm getting and some really helpful answers but I'll try a more simplified direct approach. What type of game programming would you recommend for someone who is good at math. I'm a very straight forward thinker and very logical like a machine. This may be a bit vague but I hope that it'll give me an Idea of which type of programmer I would be. I'm thinking of being a graphics programmer. This may sound really dumb but the words graphic and programmer don't match in my head. The way I see it is that someone who works at graphics needs to be skilled in art such as making meshes and sculpting and that programming is writing lines of code that makes the game run. I'm aware that's a very naive way of seeing it but be aware that I have no clue about anything with regards to what actually goes on in a video game developers workplace. So what do I need to be more inclined in to be a graphic programmer; art skills or math/coding knowledge?

 

Some studios do have people who are referred to as "Technical Artists" who a primarily tasked with righting cool shaders and coming up with cool graphics effects.

Share this post


Link to post
Share on other sites

This topic is 819 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.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this