10 Essential Skills For Budding
Games Programmers
Matt Curtis
AIE Melbourne
Lea Bartlett
AIE Canberra
Learn About the Middleware
That Industry Use
Artificial intelligence
Scripting languages
The cost of high level
• Examine the cost of high level language features
– From assembler to C to C++ to...
• Know how the language works “under the hood”
• Things like: virtual functions, the STL,
inheritance, exceptions.
– Are they all suitable for games? What are the
Learn About the Tools That
Industry Use
Game Editor
Stop hacking!
• Develop professional coding skills
• Being a game programmer is more than just “cutting
• Coding style
• Team and individual work practises
• Language feature restraint
• Working within a timeline
• Learn to spot feature creep
• Read – start with Robert L. Read’s “How to be a
programmer” e-book (search Google)
Learn How Particle Effects and
Shaders Are Used
The benefit of shaders in games is
not just a fantastic looking effect
Particle effects and shaders used
together create a more immersive
Particle Effects and Shaders
Learn real time
programming techniques
You can’t put an hourglass on the screen!
60 FPS means 16 ms per frame
State machines and OO programming
Enemies of real time programming
Be prepared to throw away the rulebook!
You could be moved from one game to
another mid project if the resource needs
Be prepared to learn a new scripting
languages and tools on the fly
Learn to absorb documentation overnight
Refine your debugging skills
• Practise getting rid of all the bugs
• All the bugs!
• Take notes: what could you have done to
avoid each bug?
Fit in to the Game Developers
Like coke or coffee, not much else exists
Develop the skill to eat the team's staple
diet while playing the latest fad game
Play as many different types of games as
physically possible – then play some more
Know your tools
Design patterns
Off the shelf scripting languages like Lua
Data formals like XML and ASN.1
The Standard Library including the STL
Tools and libraries
Game Programming Gems
A good programmer could do without them all
A great programmer needs them all
Read websites and journals
Tip #11...
• Read Gamasutra and Gamedev.net
• Practise! Practise! Practise!
• Learn what the industry wants
– What languages
– What skills and abilities
• Never stop learning
• Was anybody listening?

Slide 1