This past week has been a real trial, and I have learned a lot. I have, above all else, learned that I have a long way to go before I can say I am a game engine programmer – but that is definitely where I want to go. Monday I was able to see into the more artistic, and as such a more nebulous view of the world of game development through the eyes of a level developer. In sharp contrast, sitting through a number of programming and engineering related talks on Tuesday and Wednesday, each talk was followed with a mentioning of a white paper and/or at least a published discussion of the intricate details of what is going on in the slides.
Art and Science need to come together
How do we know what is effective or better in the sciences? Arguments are made at length, published in journals, magazines and on the web regarding these new (horribly complex) equations and eventually explaining why their path is faster, more resource efficient or all around better for a certain domain. This does not exist in the artistic realm, and that worries me. Part of the reason that I was so troubled by the Level Design in a Day Sessions is that I came out of it having almost exclusively heard views that reinforce my own experiences and beliefs. The only exception to that was a talk by Forrest Dowling – of Irrational Games – who helped explain how and why levels in FPS games are built.
As I admitted above, I am far from a perfect human being, and my beliefs/experiences/goals are evolving with each week of further contribution and study of/to games. I find it troubling that the discussions within the level design realm have such a seemingly shallow sloped learning curve, while the tools themselves are so immensely complicated. Being a level designer is by no means a simple process, usually involving the complicated process of setting up an environment, artistry and gameplay elements in such a way as to increase the amount of enjoyment that is felt by the players, but also including some of the more intricate details like lighting, flow control, logic control, and even though I was explicitly told not to bother with it, optimization. Part of why this realm is so frustrating is the lack of cemented justification for something. Forrest’s talk even ended with saying “sometimes you have to break these rules,” after having set up some very good guidelines.
Fortunately, Physics doesn’t actually bend to visitors cares.
Science is the devil
The discussions on Tuesday were far more impressive, and I was able to understand some of that quite well. Don’t get me wrong, it is all in the right terms, the benefit was that I was able to figure it out as I go. One amazing aspect of software engineering is that no matter what opinions are on the matter there is often going to be a better way to do something, and it will depend on the domain. Admitting this is often the first step. Every artist will admit that the work they do will change from day to day, and domain, but once you step into domain you will have the ability to define a means for success. Artistry tends to sound more feng-shui-like, for lack of a better fitting term, where two artists may come up with differing thoughts on a matter, with only opinions backing things up.
Admittedly, this is painting the realm with a VERY broad brush, but the devil is in the details. Part of the reason I want to be involved in engine programming, is because while I enjoy building cool looking things, understanding the things going on under the hood will likely improve high level understanding. One of the most impressive talks came from Valve Software – Forensic Debugging: How to Autopsy, Repair, and Reanimate a Release-built Game. Part of me was hoping for some controversy, some frustration from the community of game developers that have been using Source for the last decade of time, but I was quite amazed at the control, interest and clarity that I saw. Maybe that is just my own bias, but Elan Ruskin’s talk made me want to get up on stage someday.
Walking through The Expo
The expo illustrated something that is key to the GDC experience, and it attracts an entirely different genre of people – those who want to see what games are doing. When compared to those who want to see what and who are building games these people stand out as not really caring about the details. They want the experience of gaming and to be able to rant to their friends about having done so. These are the ones looking at the Samaritan or Crysis demo, awestruck by the visuals and the booths take this to an extreme at times.
This year Playstation, Crytek, Unity and Bethesda appeared in force, just to name a few. The booths were energetic and interestingly enough I skipped most of them. It has become quite difficult to tell the difference between iterations of the engines and as such I rely on sites like gametrailers.com and gamasutra to help filter out the chaff. Instead those who had awesome badges were more focused on the tools and improving pipeline for getting information back from the user to your studio, since that is ultimately where the money lies. Dan Miede and I walked around talking to Perforce, Autodesk and a few other tools type development studios in order to see what was available to us. If memory serves me right, the only place I stopped was the Playstation booth to get a new badge strap to replace the Infernal Engine.
Overall, GDC has been a lot of fun, and I look forward to going again, although hopefully on someone else’s dime. I met some very interesting people and look forward to one day interacting with them on a more interesting and less fevered pace. I am now on my way back up to SF to have a final meal with Dan before he heads back to New York, an almost poetic end to a long week of procrastination.