The differences
between Console and Arcade development are a bit subtler. The
first thing is that Arcade machines tend to be built around the
demands of the game. If you need to put 100,000 polys on the screen
each frame, then a machine can be built that will let you do that.
However, it will be expensive, which affects the final sales price
of the game, which directly affects the numbers you will sell.
Im sure you can all see the implications for cabinets, monitors
and so on. Another point is that arcade machines are what are
called pick up games. This means that there is no
save function, little in the way of cinematic eye candy, and you
have to be able to be able to play an entire game in 2 minutes.
The idea of an Arcade machine is to provide a 1 to 2 minute experience
that the player wants to repeat, paying for the privilege. You
dont have time for long exploration games, or anything that
requires too much reading and so on, although we are starting
to get into the topic of design rather than implementation here.
How
to get into games development
The simplest
way to is to write a hit game :)
Seriously,
well start with the skills you will certainly need if you
want to be a coder. C is a must, preferably C++. Assembler is
never a bad thing, since it gives you an idea of whats going
on at the CPU level. A grounding in trigonometry is helpful, so
you know whats going on in 3D translations and transformations,
as well as perspective correction and so on.
Understanding
memory management is useful, and having at least a passing knowledge
of physics works too. Something thats indefinable but always
helps is having a passion for games. Knowing what games are hot
and why is a must if you want to create one yourself. There are
some obvious things that most jobs require, time management and
so on, but its more important that you have a passion to
do this, so you bring something to the table.
These
days you can afford to specialize a bit, so if you want to do
network programming, deciding that you want to know more about
how the Internet works, and how others have solved the latency
and lost packet problems would be a good start. Whatever you decide
to specialize in, know your subject cold. This I cant reiterate
that enough. You may come in my office telling me you know all
about renderers, but if you dont know how a BSP tree works,
then your going to get tossed out on your ear.
To get
your foot in the door, have a comprehensive one-page resume. Have
some examples of your work. We can all talk a good game, but if
you can provide a little demo that exemplifies some point you
are trying to make, it looks very good on you, both that you can
do it, and that you have.
Dont
be afraid to email some of the more notable examples of industry
gurus. I did this myself when I was a kid, and I leant a ton!
Most will respond to your emails since they remember when they
were learning too. Plus, this builds up your list of contacts
in the trade, and in this trade, just like any other, a lot of
it is not what you know, but who you know.
The last
thing that you should know is that you arent going to be
a millionaire over night. Everyone makes a lot out the amount
of cash John Carmack has made by owning Id software. Well, hes
the odd one out. Most of us arent millionaires, or even
in the neighborhood. We just scrape by like the rest of the world.
However we do have at least the opportunity to make a ton of cash
should lightning strike. Which brings us on to....
Pros
and Cons of the trade.
Well,
being in the right place with the right product can make you heaps
of cash. And lets face it, if that isnt a Pro, I dont
know what is :) There are other less life changing pros
too, like casual dress. Most game developer houses I know dont
expect you to come to work in a tie, you can get away with shorts
and T-shirt almost all of the time, even at trade shows.
Another
thing that most game houses offer is flextime. This is a huge
bonus, and is very helpful when developing games. Often, its
passion that keeps you going, so youll end up working till
4 in the morning trying to get something finished. Flextime gives
you the freedom to do this, and not worry about being in to work
by 9 the next morning. Traditionally, games houses have always
been very flexible about stuff like this. They need to, for reasons
that will become obvious in a moment.
Financially,
besides the whole royalty deal, you can get paid pretty well in
this industry. To start with, you wont, but thats
the same with all industries. Once you have a title or two under
your belt, your bank ability goes up, and you can start racking
in the cash. Its no unusual for you to be earning plus 50k
after a few (5+) years of experience. To a certain extent, its
the same as other industries, where you dont get what you
are worth, but what you negotiate.
Another
nice thing is the games playing. You get to play a ton of games,
and get paid for it. We call it research. My wife calls it goofing
off. The atmosphere at most developers is like a bunch of kids
with really cool toys. And when I say toys, I mean it. Most people
are rabid star wars of Sci-fi fans, and deck out their offices
with action figures and so on. And the toys do get more exotic
many of my friends own Harley Davidson motorcycles.
Occasionally,
if you have a movie tie in, you can get to meet famous people
too. When working at Midway, we had Aerosmith come in for a game
tie in, which was fun.
Con wise,
the work is hard. Its fun, but its hard. In crunch
mode, - the weeks before the release of a title we put
in16 hour days for weeks on end, weekends too. I would say we
think nothing of it, but I certainly do. Friends think youve
dropped off the face of the earth, and home life can be severely
disrupted. You dont see the sun for days on end, and you
end up pasty white.
You must
be on top of your game. This industry changes month to month,
and for you to still be useful, you must keep track of technology
and new techniques. There
are other things, but I dont want to put anyone off this
industry, since it can totally rock if you are the right person
for it.
-
Jake Simpson is a code monkey for Raven Software. He's badass.