GDC 2011 Report

2011-03-10

Here are some notes from attending GDC 2011.

How to run a Game Lab:

This is the first talk I went to. It wasn’t a very good talk. There were representatives from 5 labs from 5 different universities and the format was something like they would show a graph saying “Our university gets its funding 40% corporate, 10% university, 5% donations” and then the next lab would put up the same graph with different percentages and go over it. Repeat for each lab 5 times. Then again with a different graph “Our university does 25% R&D, 15% UI dev, 14% games” etc. rinse repeat fall asleep.

The only thing I came away with is that one lab, the lab that flow came from, was originally funded by Electronic Arts and is now funded by Microsoft. Maybe Google should be funding game labs.

Google: WebGL

I gave this talk. The slides are not available yet. I didn’t get much feedback on whether they were any good or not. I hope the video is made available soon.

Google: NaCl

I stayed and attended this talk since it was directly after my own. My personal critique was while it was cool to understand how NaCl works it would have been far more compelling with much cooler demos. I heard people around me belittling the life demos. Of course they should have had more imagination but impressive demos do more than unimpressive demos.

For those of you who don't know what NaCl is, it less you run native code in the browser safely just like JavaScript. For you indie guys this means it should be possible to take your indie game you wrote using C++ and OpenGL or SDL, re−compile it and it will run in any browser that supports NaCl and Pepper. Users can go to a webpage it will just work similar to a flash app except it's not flash, it's c++ with full OpenGL ES 2.0 and audio support.

Physics Tutorial: Collisions

I don’t know physics well so I wish I could have gone to the all day tutorial but I had other things to do Tuesday afternoon so I only went to the first 2 hours. This first talk was AMAZING. Apparently these talks are repeated every year so this is old stuff but the speaker and his slides made this topic SUPER easy to understand and follow.

They showed the problem of games running at a time step and how say a ball moving toward a wall might pass through the wall if the time step is too large. They then went over the obvious solutions one buy one showing the problem with each solution and how to fix them until they got to the solution that actually works.

I wish I had seen a talk this clear 15 years ago.

Physics Tutorial: Acceleration, Velocity

This talk was also clear although it would have been helpful if the speakers was a little less meek in his speech. It was hard to hear him sometimes.

Anyway, he went over the standard euler acceleration physics of

velocity = velocity + acceleration * deltaTime position = position + velocity * deltaTime

And then proceeded to show why it doesn’t work using the example of a satellite orbiting the earth. He then went over various solutions and their pluses and minuses including both easy to follow slides and actual working demos.

Physics Tutorial: GPU physics by AMD

This talk seemed sponsored by AMD and was presented by a Japanese developer with a pretty thick accent making him a little hard to follow. It did have some good info.

He talked about how their GPU (all GPUs?) schedule work and if you have a conditional it will basically break the work up into 2 segments, one for the first condition, one for the second and will run them serially. If you have say 8 things to do, 4 that use the first condition and 4 that use the second and you are running on an 8 core GPU the system will use 4 cores to do the first condition and do nothing with the other 4 cores. Then when that’s finished it will do the other condition on the other 4 cores and do nothing with the first 4 cores. That’s a huge waste of the GPU. So, being aware of that you need to get rid of conditionals.

Next he went over the caching system inside AMD GPUs and something he called the Local Data Store which is 32k big. He walked over how to use it to make the GPU not stall and to make all the cores run in parallel but if I understood correctly it’s a manually programmed thing. In other words, to make use of it you have to write GPU instructions directly, not use GLSL or HLSL. Not sure about that.

He also mentioned AMDs new Fusion architecture where the GPU and CPU are on the same chip. This means they can talk to each other faster than before. He had a demo that did particle physics of various sizes of particles which generally is not something GPUs can do. They need a uniform size. This system used both the GPU and CPU and he claimed their fusion architecture really helped here. He really went over this briefly so it wasn’t clear how much it actually helped.

From AAA to Indie

This talk was 3 developers who used to work at AAA companies are are now doing indie dev. I only barely remember the first 2 guys. The first, Jake Kazdal is a friend of mine and used to work at UGA in Japan (part of Sega). The second is Daniel Cook (danc) who runs lostgarden.com and designed Steambirds.

I don’t know what to take away except that being an indie is both great fun and seriously hard.

Jake mentioned that when he worked at EA his day was pretty much draw art, lunch, draw art, break, draw art, dinner, draw art, leave. Now his day includes 20 more tasks like marketing, biz−dev, pr, sales, office management, etc etc etc, all stuff someone else used to take care of.

Danc mentioned that he always wondered why design never seemed to work well at his AAA company job and he believes it was because of design by committee. Even if there were not multiple designers there were producers, marketing people, and others who always wanted changes to the design.

Now that he’s 100% in charge he believes the designs are much better because he doesn’t have people second guessing what works. Of course he does tests with users to check that what he’s doing is working but he feels that designs are much better without a committee of people.

To be clear, he didn’t seem to be saying that he’s an amazing special designer. He seemed to be saying that less designers just leads to a better design period in the same way that less cooks in the kitchen leads to more delicious food and more cooks in the kitchen leads to worse food.

The Failure Workshop

This one was 5 developers talking about things that failed. I only remember 2.

Chris Hecker talked about a rock climbing game he worked on from like 2001 to 2004 that never shipped. It has a highly detailed physics simulation including muscle fatigue and all kinds of crazy constraint solvers.

His basic message was that he’s a programmer and that game design is hard so instead of figuring out what the game was he spent 3 years futsing with the physics because as a programmer it was much clearer what to do where as tackling the game design was much more airy fairy and therefore scary. He should have concentrated on game design first and then figured out what tech it needed rather than concentrating on tech.

The other I remember was from the guys that make Galactic Civilizations. They made GC2 which was a hit for them. It cost them $600k and they made $12 million. It had a 92 of 100 on Metacritic and their fans loved them. For GC3 they expanded from 6 to 18 people. With 6 people they each pretty much had unique responsibilities. Communication was easy. They all trusted each other. With 18 people they didn’t change anything about the way things were managed. They let each developer add whatever features they wanted for example and did nothing to foster good communication. GC3 shipped and got 56 of 100 on Metacritic. They pointed out that games are really rated on a scale of 70 to 90 and so 56 means the game was pretty bad.

They are making a new game and added more well defined roles and management including a product manager who’s job it is to make sure the product ships and reel in proposed features that don't fit or would effect the schedule adversely.

We don’t need no Stinking Badges

I don’t think I can really explain this talk. It was given by Jane McGonigal. You can listen to an interview with her on KQED or watch her Ted talk.

Personally I felt inspired by her talk. She hates the term “gamification” and what it represents which she categorizes as getting users to do things you want them to do that they don’t want to do. She’s trying to coin the term making things “gameful” which is the process of making something have the positive proprieties of games and helping users do the things they want to do.

If her talk comes online I’d recommend it. I personally found it inspiring but if not you’ll have to make do with the talks above.

Rapid Fire Indies

10 indie developers each gave a 5 minute talk. The sad thing is I don’t remember a single one 😞 I also don’t see anything when I google it to remind me. I guess it must not have been that good.

How to win the IGF in 15 weeks

This was about the game Monaco and was pretty inspiring. It was mostly about how much fun the author had making the game. He implelemented a new feature almost every day for the first 7 weeks. It then took another 8 weeks to change the lighting calculations from tile based to vector based.

It’s 4 player co−op game where you rob a bank. Each player has unique abilities and you have to all make it out together. If anyone gets caught by the guards you have to go help them. I didn’t get a chance to play but would love to try it out if we can get 4 people around and a PC with 4 xbox controllers.

He also mentioned at one point he was a little depressed with something so he decided he needed to do something “fucking cool” (his words) to get out of his funk. I guess you can design your own levels in Monaco. The system saves those levels as .PNG files with the actual level data encoded in the least significant bit of each pixel and the image in the .PNG is a highly processed screenshot of your level with extra stuff composited over it. So to share levels you’re sharing .PNG files which are screenshots of your level which is much cooler than a plain binary file would be.

Sony NGP

There was a HUGE line for the 3DS session and a much smaller line for the NGP session but my impression was people were hoping Nintendo was going to give away free 3DSes and had no expectation of free NGPs since only like 5 exist in the entire world.

The NGP sessions showed some cool stuff. The behind the screen touchpad seemed really cool and much better than on the screen touch pad we are used to for certain games. For example Jeff Minter's new Robotron clone for iOS is basically unplayable because your finger is always in the way. I guess that just means he should have designed a different game though.

NGP showed some augmented reality demos that were cool but augmented reality is also part of iOS games, Android games and even 3DS games (the built in game uses augmented reality) so it doesn't seem like NGP is going to be able to distinguish itself there. One demo was of them recognizing the cover of a game (no special marks on the game) and then having a character stick to the surface of the game. It worked but you had to move everything really sllloooowww or else the character bounced around.

They also showed a life size t−rex standing in the middle of the GDC audience. That was pretty neat but again the guy was careful to move really slow.

They showed an Uncharted game running on NGP using both the front and back touchscreen on top of using the joypads to play. Not sure it actually made sense for game play but it was an interesting experiment and was fairly beautiful.

Apparently by the time NGP ships this fall there will be phones shipping with the same hardware specs (4 core CPUs, high end GPUs). Of course that might mean nothing. 360/PS3 were behind PC when they shipped. They did hint that NGP has a LOT of ram and vram but they were not willing to say how much yet.

The Experimental Gameplay Project

Several games where shown here.

Maquette

The first, Maquette by Hanford Lemoore, was basically a first person engine. Imagine a small area like this.

map of Maquette

That’s a top down map.

The twist is inside the dome is a small 3d model of the city so you walk inside the dome, pick up the tiny model of the yellow block and set it down some where else. Now you come back outside the dome and the real yellow block has been moved. You pick up the key and go to the left and open the door but you can’t cross the chasm. So you walk back in the dome, take the key from the real world and set it across the chasm in the model. Come back out and now there is a giant key across the chasm so you can cross the chasm.

Basically at this point it’s just an experiment but he’s working on making it a game. I was surprised to learn he only spent 100 hours on it. I wish I had some code base I was comfortable enough with that I could make something like that in 100 hours. Although, hmmm, 100 hours is 12 full days of work? I guess that is quite a bit of time.

Meditation Game

Next up was a game by Tembac. I don’t see the game on this website. It’s goal was to get you to mediate. There was a rotating spiral in which is a line you control.

spinning

As the spiral spins you need to keep the line from touching the spiral. Along with that is a medication chant that is in tune to the spinning and has you play you are supposed to chant along with the chant and move the line in tune with the chant. Eventually you can play without even looking at the screen as you get more and more into a dream like flow state.

An interesting idea.

Loop Raccord

A Racoord is apparently the name of the process of editing two pieces of video together such that motion flows smoothly from one clip to the next. It’s very common technique in movies when cutting scenes together from the same act for example show guy turn around in his chair behind his desk to face the person coming in to the room, cut to a close up of the guys head just finishing the turn who then greets the person coming in the room. The motion of his whole body turning matching to his head turning after the cut is a Raccord. If it’s done well most people never even notice there was a cut from full body shot to head shot.

In the game you have a set of video clips. At the start 2 clips are running. You can control the second clip, stop it, scrub with with the mouse wheel and start it back up. Your job is to form a raccord from the first clip to the second. So say the first clip is of a guy passing a brick off the screen to the right and the second clip is a picture of a box on a conveyor belt going left to right. You’d want to change the timing of the box so that when the brick is passed off the right side of the first clip it looks like it’s becoming the box coming on the left in the second clip. After that the 3rd clip starts playing and you have to sync it to the second clip.

The game worked when the 2 clips were obvious like the example I just gave but when I played it the first clip was a woman picking up a phone then showing a face of surprise. The second clip was 3 guys in electric chairs where it showed an animated spark flowing down the wire to their chairs and then them showing comic expressions of shock. How are these 2 clips supposed to match up? Is it the motion of the woman picking up the phone that’s supposed to match the motion of the spark? Is it the expression of surprise on the woman that is supposed to match the expression of shock on the men? That expression of shock comes at the end of the clip. I could never figure it out and even the guy that made the game had trouble getting things to sync up when he demoed it.

Opera Omnia

Opera Omnia: http://www.increpare.com/2009/02/opera-omnia/

This one is doesn’t personally look any fun to me but the idea was interesting. Maybe it’s for a different target audience.

The idea is you have 2 or more rectangles that represent cities and their relative populations. There is a timeline that starts at the present and you can drag it into the past. You can not change the present. It is fixed. But you can change the past as long as the final result matches the present. In other words you can re−write history as long as it leads to the same present state.

Example: Present total population is 0.5 million people, previous population was 1.0 million people 25 years ago. Reason, a big war 5 years ago. Change the past so instead their was a famine. History has now been re−written. People used to think a bad war caused 0.5 million people to die, now instead it was a natural disaster. In actual game play the most common thing to do is to go to different times and mark that people migrated from city to city. The game would give you a goal of changing history and your job is to meet that goal by manipulating the past

A interesting idea but it’s not clear how to make it a fun game.

Inside a Star-filled Sky

Inside a Star-filled Sky is best described as inspired by Inception even if it’s not. It looks kind of like an 8bit Zelda game, top down action combat but when you die the camera zooms into your character and you enter a dream world (not really a dream world but that’s the easiest way to explain it). The dream plays the same as the real world though with a different map and different enemies. In that world when you find your way to the exit you’ll start the real world over but this time you have whatever weapon you left the dream world with.

So, let’s say you’re in the real world, you come to a narrow hallway and the enemy has long shots and your weapon can’t reach him without getting killed. So, you get killed, go into the dream world, find a rocket launcher, go to the exit. Now back in the real world you start the level over, go over to the narrow hallway and take out the enemy from a distance.

But, let’s say will in the dream world you get killed trying to get the rocket launcher. You go into a sub−dream world. This recursion is infinite. So you could keep getting killed and go deeper and deeper adding sub goal on sub goal trying to work your way back up to the real world. The goal was apparently to try to create a game where you’d lose track of the top most goal and then get that feeling of “oh yea, that’s what I was trying to do” once you popped back up a few levels.

Even crazier. You can enter enemies so for example instead of dying and descending into your own dream world you can go inside the enemy and change his power up so that when you come back he doesn’t have long shots. You can also enter power ups and reprogram them to be different power ups.

Again an interesting idea. It didn’t look all that fun but very cool to think about.

User Generated Content

The last part was about experiements in user generated content. One experiment is “the Abrupt Goodbye” . In it you’re told “You sit down on a bench, a women sits next to you. You say?” and then you are given 5 options. You pick one, get a response and are given more options. A few levels down you can add your own response. So that the tree does not get infinitely deep, if any choice has less that 5% of people pick it it is trimmed from the tree. If it is a top choice that means that entire sub tree is removed.

Of course being the internet it quickly devolved into sex and penis related choices.

Another experiment is Playpen where each page is like 60x30 pixels. Anyone can draw on the page and setup hot spots to go to other pages. Think user−editable Hypercard.

The next game, Infinite Blank is some platform game where users can wander around and then come to a blank section where they could fill in that part of the world. The difference here is that they own that part of the world, no one else can edit it.

The discussion was about the fact that generally 99% of user generated content sucks and how to get that to be better. Does allowing a user to own the content make more content better? Does anyone being able to edit anyone’s content make it better? How about super editors like wikipedia?

No answers were given, just a suggestion that it would be nice to see more experiments here to find out how to encourage better quality user generated content.

An Apology for Roger Ebert

Brian Moriarty gave this very entertaining talk about the topic of Roger Ebert declaring that games are not and will never be art in 2005 and some of the discussion that happened there. Professor Moriarty talked about the difference between art and kitsch and that most movies, music, books and most things we think of as “Art” with a capital A are actually kitsch and so are most if not all games so far.

I don’t think any conclusions were reached but it was a very entertaining and thought provoking talk. I hope it’s posted online.

Indie Game Festival

Not much really stuck out to me. I loved <a href="href=" http:="" brutallyunfairtactics.com="" "="">B.U.T.T.O.N. but not sure why it was at GDC 2011 since they had it at GDC 2010. It's a party game or even better, a bar game that requires 4 players pretty much. It’s better with 4 big buttons than 4 xbox controllers.

Nidhogg was fun to watch people play. It’s a 2 player game. The world is 7 sections long, each section is about 3 or 4 screens wide. The sections are mirrored. In other words if each section was represented by a letter the world map would look like DCBABCD. You start in the middle segment A in that list and try to fight your wait to D on your side of the world. If you kill the other player, as you progress toward your side of the world, he’ll appear alive again about ½ a screen in the direction of your goal. So the game is a long back and forth as you each try to kill the other guy and make it all the way to your side of the world.

I don’t know what the mythology is behind the game but when you do get to your goal you run in front of a stadium of fans and then are eaten by a giant flying snake!?!? I guess you are competing to see who gets to be the sacrifice?

Comments
The Problem with RAGE
Should Nintendo, Microsoft and Sony open their platforms?