I figured it would be quite nice to have some sort of introductory post here on #altdevblogaday, so what could be better than telling my story of how a guy from the small country of Austria (we’re the ones without the kangaroos, we’re living next door to Germany/Italy/Switzerland) ended up working in the games industry? So here goes…
It all started more than 20 years ago, when my father introduced me to video gaming on the ColecoVision console at the age of 5 or so – I still have fond memories of playing Mouse Trap, Donkey Kong, and Pitfall on our old TV. Because games were so expensive back then (around ~100€ nowadays, not taking into account inflation!), my family used to buy games only twice or three times a year, leaving us with an incredible collection of about 8 games. Still, we used to play them whenever we were allowed to.
Arrival of the C64
One or two years later, my father invested his money in our first computer – the Commodore 64. Ah, the C64!
Not only did it feature a vast collection of games, it also made it possible to copy games (piracy was a big problem) – there weren’t many legal retailers around in Austria at that time, so we more or less had to get them by copying from somebody. Turned out my father knew a few people, so we ended up playing tons of games. Even though it’s been more than 20 years ago, thinking of some of the games and especially some of the SID chiptunes gives me goosebumps. Everybody of us put up with loading times somewhere around 10 mins. (possibly more) for larger games on the datasette, simply because the games were great. What a machine the C64 was, I loved it!
In addition to having a great collection of games, you could also write and run BASIC programs on the C64. Before even knowing what BASIC and programming in general was all about, my father introduced me to LOGO (which supported turtle graphics!), which must have been my very first contact with a simple programming language. Not long after figuring out how to draw simple snow-flakes using the turtle and its “turn-left”, “move-forward”, “turn-right” commands, I got introduced to BASIC.
Even though I was not able to grasp high-level concepts like for-loops and GOSUBs at that age, I remember that writing very simple BASIC programs was a lot of fun, and I used to sneak into my parents’ bedroom when they weren’t around, just to use the C64. More often than not, I was trying to recreate simple stuff I had seen in other games, just to figure out how you could actually do something like that. Of course I had no idea how to use sprites, or what the C64′s architecture was all about, but getting the computer to do something I wanted was so enthralling.
Baby steps in programming
A few years later, my father spent an awful lot of money on our first PC – a 386 with 33MHz. We used to play all-time classics like Wing Commander, Syndicate, UFO, and Doom – and invite people to our home, in order to participate in nights full of Doom deathmatches. I still remember how much I admired people working in the games industry, and I knew that being a game developer working on such a game would be like a dream come true for me. We still used to play games on the C64, but the PC was able to do so much more, so it attracted my attention. Around that time, my older brother began programming using Turbo Pascal for MSDOS, so naturally I wanted to learn as much as possible about PC programming, bothering him with questions endlessly.
That’s when one day I got introduced to the PC demo scene.
This must have been the point which sparked my thirst for low-level programming, hardware details, working at the assembly level, and getting the most out of any hardware. I just didn’t believe how something like Second Reality or Crystal Dream 2 was possible on my father’s poor 386 (those demos have to be one of the best demos ever made, and will always be remembered by me). I was stoked. I wanted to know every little detail about texture mapping, 3d algorithms, and mode 13h programming. But I didn’t know where to start. Luckily, my brother was already in college, and helped me learn a lot about vectors and matrices, some assembly, and programming in general.
I soon went to college (called HTL here in Austria) myself, and slowly started to learn C/C++ in my spare time – surprisingly, we were never really taught any programming language in school (except for a bit of Pascal), which is kind of uncommon for a college specialized in engineering. At that time, I was still tinkering around with texture mapping and the likes, but never really got that far with my own game. I was always more impressed with technological stuff, technical articles I read on the internet. All that mumbo-jumbo about 3d graphics and complicated sounding stuff just made it so much more interesting. I was addicted to technology and low-level details.
After having finished college, I knew that I didn’t want to go back to engineering, because somehow that topic lost its appeal over the years. Not really knowing what and where to study, I came upon a computer science master’s program at the Vienna University of Technology, so I ended up moving to Vienna and studying Computer Graphics & Digital Image Processing there.
In retrospective, some of the stuff I was taught at university wasn’t the stuff I expected (to say the least), but some of it paved my way into the games industry. It was in the third semester of the Bachelor’s program where groups of students had to program their own 3d game using OpenGL. I knew that this was my chance to enhance my skills, and learn some state-of-the-art 3d programming. And of couse I was thrilled by the idea that we could write a game and actually get a grade for it, that I put lots and lots of time into it. In the end, our game ended up getting the “Best Game of 2004” award!
Later that year during summer, I contacted one of the guys I knew from university who was working for a local game development studio (the Austrian game development scene is very, very small), and asked whether his employer was offering internships. It turned out that this guy was no longer working for said company, so he wasn’t aware of any internships. But he told me he could maybe arrange a job interview at his current employer if I’d be interested. Well, of course I was, so I took the chance, showed them my portfolio, showed them the game we did at university, and started work the next monday. After all those years, that’s how I ended up in the games industry.
In the last 7 years, I’ve learned a lot about programming during my time in the industry. I’ve worked with some very talented, passionate and creative people. And even though I have been through times of crunch where I had to put in more than 100 hours a week, I can whole-heartedly recommend the industry as a great place to work with like-minded people. Joining the games industry has been one of the best decisions in my life, and it has always been a dream of mine.