After attending GDC I wanted to try some of the things I learned out. This is a result of that learning…
After attending GDC I wanted to try some of the things I learned out. This is a result of that learning…
NOTE: Sorry for the obsessive amount of links in here… just want to make sure you can easily dig into anything that you might not know about (most go to Wikipedia).
GDC is still settling itself into my mind. But I best get what’s left of it before it goes fully into hibernation and I can’t remember the details anymore, only to be left with a warm feeling about the conference on a whole.
So, day four was pretty hectic. Lots of talking with folks at the booths set up. I talked a few companies about their procedural techniques and tools that I had run across while trying to make my terrain generator. It was a lot of fun actually meeting people behind these products and learning what it is they do to get these tools to where they need to be commercially viable.
I also attended a couple more sessions on day four. The first talk was “Streaming Massive Environments from 0 to 200 MPH” by Chris Tector (Software Architect for Turn 10). Lots and lots of useful information about what exactly you have to do to get streaming to do what you need, and to make sure you’re not wasting what little memory consoles afford you.
The second talk was all about the future of connected games, folks from Facebook game companies as well as some pretty well known AAA companies. The basic idea behind the session was the fact that games are becoming less of a piece of entertainment and more of a service or part of an entertainment platform. Rob Pardo (Blizzard) said that they didn’t make action figures because they thought it’d be profitable, they made them because the staff wanted the figures for their desks. The general mindset here was, if you’re a fan of your IP, then make stuff you’d want for it and you won’t have to worry about your fans not liking it.
Both sessions were really informative and I still need to write down all the notes I took from them so I can reference back to them later. Day four ended with a bit of party hoping and generally talking with a lot of great folks. As a result though, day five was probably the hardest to get up for.
For the final day of GDC, I didn’t have that much left to see on the show floor. I’d already played quite a number of the IGF games, talked with all the career folks I thought I’d be a good fit for, and seen all the neat tech on display, so I packed it with three more sessions. First up was “Make ‘Em Laugh: Comedy in Games” with Rhianna Pratchett, Sean Vanaman (Telltale Games), and Tim Schafer (Double Fine) on a panel moderated by John Teti (The A.V. Club/The Onion). It was an enjoyable session and a pretty good insight into what it takes to follow through on getting comedy into a game. It’s not easy, and we’re a long ways out from having comedy as a genre, but it’s something I believe all three of these folks would like to see one day.
Second I attended “Rendering with Conviction” by Stephen Hill (Ubisoft). The cool thing about this session is it was about a rendering pipeline for a game that had been in production for 5 years, and thusly started production (and it’s pipeline) before quite a number of our modern day techniques were developed. So rather than using SSAO, Splinter Cell: Conviction uses it’s own (and in my opinion better) ambient occlusion model as well as visibility systems. Talks like this show you that there’s always another way to skin that cat, you just have to try some new things to get it there.
And my final session for GDC’10 was “Uncharted 2: HDR” by John Hable (Naughty Dog). This is probably by far the most practical of the talks I attended in reference to my current project. While we won’t be using bloom (which is the first thing I always thought of when I thought of HDR) or AO, the gamma correction and filmic tone mapping should make our colors more rich and really brighten up our world (something we need desperately).
So, once GDC was over, we grabbed dinner and went of to the airport. It was a wonderful time, we all had a lot of fun, and I can’t wait to do it again next year. Hope to see you there.
Talks are what this show is all about in my mind. The talks here are intense and I can tell it’s going to take a while to get all I can out of these. The first talk of the day was the programming keynote which was optimization tools in-game for Starcraft II. The ability to drill into functions and figure out what’s slowing down your game in real time or to see what the game is doing under the hood in a histogram allows for quick turn around on slow downs. These are tools I’m going to have to work on implementing myself in order to drop them into games and projects in the future. That way, I don’t have to deal with 3rd party programs slowing down my own software, trying to learn the interface for it, or how to read the data.
Second talk was on Bungie’s approach to design. Being as that I have very little experience with design myself, this was a highly insightful talk into what I might be doing to designers and making their life harder. Also looks like a lot of fun to play around with design elements, or to assist the designers in making sure their vision can be followed through on.
Other than that it was a pretty solid day of walking around and talking to the fine people running the booths. Talked to a lot of folks about procedural generated content and it’s role in games, which is one of my personal passions. Also got a chance to hang out at a couple parties and just generally talk about gaming in general. It’s a very refreshing feeling to just find a large group of people who know all about games and are passionate about it.
Tomorrow is more talks, namely Sid Meir’s keynote on Game Design: Everything you Know is Wrong and DX11 Tessellation from AMD.
So, the big day is tomorrow. The show floor opens up, and all the lectures begin. Today however I spent a large chunk of the day driving around San Francisco and enjoying the sites. San Francisco is any interesting city. when looking out across the lay of the land, it looks like a wave of suburbia crashing up against the water. Houses are placed up and down the hillsides unlike any other city I’ve seen. Only real site that I went to see was the Golden Gate Bridge, which was quite impressive.
After site-seeing I went back to GDC just as it was shutting down. After, I attended a couple of small parties for indie game developers, lots of interesting ideas floating around those rooms. Tomorrow is going to be packed with information and new people to meet, I’m very much looking forward to it.
First real day in San Fransisco; enjoyed a breakfast at the cafe downstairs. Took the morning to visit the city (and take pictures) before checking in with GDC proper. The conference thus far is not nearly as large as I had expected, but is definitely full of people who love what they do and are excited to talk about what they’re doing. I look forward to Thursday when the booth crawl opens up and I’ll get a chance to meet more people. I should have a lot more to say on those days, mostly just meeting up with classmates and getting a lay of the land for now. I will say that I got to meet Ryan McCaffery (Senior Editor of OXM), which was pretty cool.
I can’t upload pictures that I’m taking because I don’t have the cables for it with me, but I’ll be sure to throw some up when I get back to Orlando. That’s all for now, more to follow tomorrow.
I don’t travel too often, but when I do I try and keep it as brief as possible. Orlando airport has made this even better for me. First, I printed my boarding pass, and then when I got to the airport they had something called the expert traveler lane. Basically, people who know what they’re doing get in a different line and don’t have to wait for everyone who either has a family or doesn’t know exactly how to set up their bag. Basically, I was through security in about 5 minutes.
From there it was two flights to San Fransisco and the last nosiest subway ride to the heart of the city. A brief one block walk to our hotel and we were checked in. Easy as pie, but boy my arms are killing me. Tomorrow is the big show, and I’m pretty excited. I’ll be trying to post every night after the conference on what I see and learn as well as posting on Twitter from the show floor. But for now, rest.
Sorry it’s been sort of dead around here, been super busy making our hot new game Tension Rising. It’s been a crazy ride so far, and I’m amazed almost every day at what our team has been putting together. But I’m getting ahead of myself.
Before I get into it, I’d like to mention a few new things. First, I’d like to give a shout out to my good friend Adam Files who finally got his blog together. Second, I’d like to mention my twitter @Zilchius as well as my dev team’s account @Tension_Rising, both should be aflutter with new information as it comes in. Finally, I’m headed to GDC next week, and if anyone who is attending would like to meet up, just shoot me a tweet.
Anyway, for those who are not yet aware, I’m currently the Technical Lead of Limitless Entertainment under the studio Plutonium Pixel Productions working on our final project Tension Rising for Full Sail University… that’s a lot of name dropping. To sum up, I’m acting as the go-to guy about how our systems are interacting, ensuring that the game runs smooth and the underlying technology only enhances the game play rather than holding it back. As I constantly tell anyone who asks (and some who don’t), we can do anything. It’s something I firmly believe, and something the team keeps pushing themselves to prove.
Looking at our game now, I feel we’re at the level that most final projects finish. Not to say we haven’t had our challenges to overcome, but our team is actually the size of some studios that pass through final project. We currently have 13 developers, 1 artist, and 1 manager. As a result, the rest of our project looks like it’s going to be bug fixing and polish. We’ve laid down all of our core systems and almost all of our managers and sub-systems. This allows for plenty of time for us to tweak, balance, bug fix, and tighten up graphics, time that plenty of projects simply don’t have.
So, I’ll leave you with some screenshots from our most recent build, and hopefully will find more time from here on out to keep you posted on our progress.
This sort of ties into the whole ‘do violent video games cause violence’ debate, but that’s not a subject I’m going to touch on too much. I’ve just been thinking about morality in games, what it means to kill an NPC, and how that reflects on the gamer doing it, if at all. You see, in real life, I’m not a violent person. I don’t get into fights, I don’t yell at people, I don’t secretly contemplate murdering everyone around me, that’s not me. But in games, it’s what I do. I don’t view NPCs as people. They’re just bits of code I can interact with in interesting ways. I laugh at ragdolls tumbling through the air and smashing into things, but I imagine the real life equivalent would be a thing of sear horror for me to witness. So what does this say about me? Maybe I have some dark underlying personality that actually revels in other’s pain? No, I don’t think so at least.
Now, I’ve been playing video games for a long time, I started playing way back when 8-bit sprites were our NPCs. These weren’t very convincing at being people with families, a past, and a possible futures that I was robbing them of, they were just a picture (and more often than not, non-human). So ‘killing’ them meant very little, they’d just respawn on the next screen. Still these are things we see. NPCs don’t have much depth, they can’t. Development teams simply don’t have the sort of time it would take to build a city full of compelling people. And what happens if you kill one? More are going to spawn. So they’re hardly even entities, they’re just moving objects that you can interact with via combat, training robots even. What remorse do you have over experiencing additional interactivity, over learning how to play the game better? None I would imagine, and this is simply how those who have played games for a long time view our current cast of players in games.
So what’s wrong with this picture? Should I care when I kill PED1357? Should PED1356 miss him? The thought of a troupe of compelling of players is intriguing. What if a development team had the time to actually generate a set number of truly interesting people for you to interact with? What if they all had different faces, voices, lines, and personalities? What if once you killed them, your game world was a little emptier? Then you would care. Then I would care. This would stop my rampant attacking of anything that moved just to see how the game handled my input. Fighting off an endless wave of guards would cease to exist. Eventually they’d all be dead and you’d be left alone.
In the Fable series, I play an evil character almost every time (I kill people for calling me names). I find the noble route a far less interesting one in those games, but maybe that’s by design in this series. In the first game, I wanted to own every town, but you couldn’t buy a house that someone was living in. So I proceeded to go around the world, and town by town I would slaughter the citizens there and then buy their houses. At first, the towns were empty, they were boring, and I had nothing good or bad I could really do there. But slowly, they would repopulate (who would want to live in a town that had just been ransacked I can only imagine), and the populous would begin to pay me rent. It seemed as if the game wanted me to going on killing rampages, because now all of the citizens of Albion were paying me for my ransacking of their country. This strange approach to land acquisition was fixed in the second iteration of the series wherein you could just buy any property outright, provided you had the money. Now I wasn’t running around killing everyone, but I was jacking the rent up as far as I could.
So, Peter Molyneux has taught me that good is boring, and evil pays well. I doubt that’s what he was going for, but there it is. I’m sure I’ll just have to be an evil dictator in Fable III.
Maybe I’m missing the point here however. Maybe it’s not that I view these game worlds as code and interactive art rather than a story full of characters and people who matter, but maybe games are just my outlet. Maybe because I’m not evil in life, this is my safe way of trying something juxtaposed to my own beliefs while still preserving my own conscious. If I do something terrible to people in a game, I can laugh it off and point to my avatar, claiming he’s the evil one and not me. It doesn’t matter that he was just acting on what I asked him to do, he still did it, and he’s the evil one! Now I have a safe outlet for all of the frustrations that I build up throughout the day, and I can just shut it off when I’m done.
Recently I’ve been playing quite a bit of Assassin’s Creed II. In this game, you can’t kill too many civilians at once, because that’d be against your character’s creed. You can however kill as many guards, pickpockets, messengers, and (the actual evil guys) Templars that you want. At first I was worried about killing the pickpockets since the thieves sort of align themselves with me, but the thieves don’t seem to mind. So I then went about killing every pickpocket I would see (to collect the money they stole from me). At another point in the game, I was killing every guard I came across. This wasn’t senseless violence though; I was training myself in the combat system. Learning how to counter, disarm, and dodge properly. So these guards turned into experience points for me as a player, the more I killed, the better I got at killing them. I didn’t think twice about the fact that I was killing them, they meant nothing to me.
Only once did I feel sorry for killing an NPC in Assassin’s Creed II. I was asked to find a wife’s cheating husband, give him a solid beating, and send him home with his tail between his legs. I came across the adulterer, talking with his mistress, who was (to my surprise) a guard. I promptly beat him into submission, and once he said he begged forgiveness he started to make his way home. Before he got far however, I assassinated him. He was an adulterer, he was a guard, he was a bad person… but, he was someone’s bad person. He had a connection with someone else in the game, and I honestly regretting killing him. I had been asked to let him live, she was going to give him a second chance, and I had just ruined that. But it’s just game code, right? I just modified a series of bits, and the wife didn’t actually exist anymore, she would never lament her loss to me, even if I looked for her.
That’s what our medium needs: compelling characters. Who cares that you can now fit 10,000 NPCs on screen at once if I don’t care about any of them? No one should, this is something movies have learned. You can throw extras at a movie all day, but if you don’t have a solid core cast of deep characters, it won’t be an interesting story. This isn’t to say that no game has a compelling story; it’s something that Bioware strives to do in all of their games, and they make you make tough moral choices. But are they the only ones who get it? It’s not long until the game industry gets over making just action games and starts making games with earnest drama. Heavy Rain and Alan Wake are who I’m looking for to push this new style of game.
If I’m not careful, all I’ll do is make posts to the other blogs I’m a part of… but this blog is my final project studio dev blog. It’s full of all of the team leads across two teams (I’m Tech Lead for Limitless Entertainment), and our two internal producers. Should be interesting stuff about our process of making a game. I’ll have the RSS feed on the sidebar just like *null. Here’s the link: http://www.plutoniumpixelproductions.com/
With any project, you’re bound to run into little hiccups… unless you’re amazing at preproduction, know something the rest of us don’t, and have luck on your side, or if you’re like me, you hit a lot of them. These hiccups in 3D graphics are usually comical, because a model might look wrong, or things might not animate at the correct times. So I decided fairly early on in my project, I wanted to be able to take screenshots. This was an amazing idea, simply because it allows me to fly around my scene (that I just broke in some new fashion) and snap some pictures with the press of a button. And when taking a screenshot is that painless, you’re bound to do it more often.