gaming since 1997

The Programmers – Part 1

Well, it was about time we had a new interview feature here at and since last time we spoke with several level designers, I thought “What would be going on in the minds of programmers ?”.
I shot off a couple of questions to several whizzkids and Aaron R. Leiby from Legend Entertainment (Unreal 2) and Robert Aronsson from The Other Guys (Side-Scene) were the first to respond.

How did you start in the gaming business ?

Aaron : I “officially” started in the gaming business with Legend Entertainment a scant two years back – about a year before Wheel of Time hit the store shelves. I haven’t turned back yet.

Robert : Got bored developing real-time combat management systems for a large European defense contractor, one morning when I came to work I realized that I should do what I’ve always have dreamed about , make computer games, I quit the same day and went home starting to write my first 3D engine.

What’s first ? The idea for an engine, or the idea of a game ?

Aaron : Game. What’s the point of an engine if you don’t have a game to shape it? Sure you can write a lot of individual pieces, but without a game to “prove” them, you might as well be writing screensavers

Robert : It depends, in my case the idea for Sidescene was first

How do you start on programming for a game ?

Aaron : Paper. Get all the ideas out in a malleable form. It’s a lot easier to rearrange a couple ideas spread across a few pages than it is to rewrite a couple hundred thousand lines of code.

Robert : Well , first of all you have to be skilled in math , otherwise its going to be a hard and painful trip down 3D lane. Another *must* is a good knowledge about the language you will use (in my case C++). Another pitfall is that many tend to start with too big projects that never will be finished. Start with small and well defined projects and let the projects grow as you get more experienced

What programming language do you use for making/modifying an engine ?

Aaron : Whatever is needed to get the job done. Each language has its purpose, and you need to use the tool that fits. I don’t hammer nails with a screwdriver, why should I code game logic in assembly? I’d have to say that the great bulk of my work is done in C++ though. Also, because we’re working with the Unreal engine currently, we do a lot of game logic in UnrealScript.

Robert : C++ (Is there any other language ;o))

What the most difficult part about programming a game ?

Aaron : Finishing it. The first 90% is always the easiest part. It’s that last 90% that always gets you.

Robert : Not enough time

What do you like most about programming games ?

Aaron : Hmm… I guess seeing things happen. I often feel like a sorcerer conjuring up images out of pure ether. But all the conjuring in the world isn’t going to impress anyone – they want to see the fireball leap from your fingers. I can program till my fingers bleed, but in the end all I want to see is pretty pictures dance across the screen. Not to impress others, but just to entertain my relentless thirst for creating something from nothing.

Robert : That everyday I come to work (almost) I have a new interesting task to solve

What is the ultimate goal for a programmer ?

Aaron : To make their programming skills match their ego.

Robert : hmm, none that I know of ….. :o)

Any last comments on your job for future game programmers ?

Aaron : Read. Read everything you can get your hands on. Turn off your TV, pull up your pants, turn your hat around and read a frickin’ book for a change. Oh, and master the art of living on Mountain Dew and 2 hours of sleep every 36 hours – its amazing how much work you can accomplish when you break down the barriers of the solar calendar.

Robert : Learn math, work hard, never give up, have fun and don’t expect to get rich over a night ….


posted in: Specials
tags:


Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>