Tuesday, March 16, 2010

GDC 2010: Conference Report

Game Developers Conference 2010
Real-world UV Texture Mapping of a Car. Found on the side of a building just outside GDC.

  • Social Games
    • High growth area, many publishers and developers looking to take advantage of social games. Investors looking to... invest. Designers considering how to make their games more social.
      Note: Social had a spectrum of meaning to people, from viral marketing games with little multiplayer, to games played with friends, or random strangers. 
  • Indie Games
    • Indie games have established a significant movement now. They are becoming more influential, with significant number of sessions devoted to them, and references to them from non-indie.
  • Digital Distribution
    • Major impact to publisher/developer relationships; enabling indie movement; changing design and productization strategies. Also requiring different marketing strategies. Also tied to social games and viral games.
  • Design, Psychology, Achievements
    • Achievements discussed often (disliked). Common theme that designers need to understand psychology well to build successful games.
  • Mobile / Android
    • Google distributed phones with 12 month service - Lots of buzz about this.
    • Unity announced Android support.
    • iPhone discussed in many sessions, but Apple wasn't courting developers.
    • Little to no mention of Microsoft.
  • Cloud based Games
    • OnLive, Gaikai, and OToy are products announced to enter cloud serving of games (and apps) via compressed video to clients. They were news in 2009, in 2010 we will see some of these services ship (OnLive has a June 17 date).
  • Uncharted 2 drake's fortune (ps3 game)
    • Several sessions from Naughty Dog, well attended, represented the quality bar developers are after.
  • Gamification
    • Companies are seeking to add “gameplay” to their products to succeed with the increasing adoption of games in culture. E.g. adding game aspects to taxes, health-care, or training.

Handing out hundreds of phones got Google attention. Developers felt that Android needs better games, that they’re a “killer-app”, and that iPhone’s successf is tightly linked with the app market and games.

iPhone sessions were well attended. Unity is a middleware engine offering iPhone support and is apparently quite successful by counting licenses sold. Unreal has been ported to iPhone.

Microsoft win 7 phones will run XNA games and silverlight, popular technologies among “small” game developers.

Social & Facebook
Facebook and Zynga received much attention.

Facebook exposes the social graph to app developers for fun and profit -- to great commercial success for some of those developers. Much of this success is tied to the spamming / viral marketing done by these games. And most seemed to have you play with strangers, not friends. Facebook has changed the permissions for apps, which will reduce the previous spam methods, interesting to see how this affects games.

Asian markets have years of experience in monetizing virtual goods and building social games. These methods are of high interest now in western games. 2009 Asian market had $7 Billion in virtual goods, compared to ~ $500 Million of social games in western markets just starting to move towards virtual goods or social monitization.

Notes From the Expo Floor
  • Human Hamster Ball demoed, allowing Virtual Reality with walking in any direction. Single user enters large plastic ball through access hatch. Ball is on wheels, and tracks movement. User wears VR headset. Targeting instalation at entertainment venues, malls, etc.
  • Mono will ship full compatibility with C# 4.0 when Microsoft does
  • Sony’s WiiMote competitor, “Move”. A combination of accelerometers, gyroscopes, and optical tracking makes this “WiiMote with a light bulb on the end” very accurate for location tracking. It’s still very poor for pointing at the screen (worse than WiiMote?), and rather laggy, maybe .1 second of lag or more. The need to be in the EyeToy web-camera view frustum will also limit the use of this device.
  • There was a great eye tracker that worked from 6 feet away, just sit in a chair and it finds you.

  • Indies and Publishers: Fixing a System That Never Worked
    • Ron Carmel (2D Boy) discussed 2 main points: The classic model of publishers doesn't seem relevant with digital distribution, and the remaining need is just funding. Cue introducing theIndie Fund. There weren’t any new details on that. There were some tidbits of World of Goo costing $120,000 and Braid $180,000.
  • Case Studies: AI in Recent Games
    • My takeaway was that the future of AI is in handling specialized cases without requiring explicit coding to set them up. That calls for generative AI instead of just expert systems. With online games pouring in huge amounts of human game play data, there's good opportunity for training AI.
  • The State of Social Gaming: Industry Overview and Update
    • More (mostly for a fee) info at http://insidenetwork.com
    • Asia had $7 Billion in virtual goods business in 2009. In the West social games are growing fast, but still only $.5 Billion last year.
    • Zynga is over 700 employees now, and is overtaking Facebook in headcount! (Oh, and $200 Million for them last year)
    • Facebook will be introducing their own currency "Facebook Credits", but with a 30% tax.
  • Bringing UE3 to Apple's iPhone Platform
    • They moved as much of the build to Windows as possible, running commands on the mac over PuTTY.
    • Executables still in “teens” of megabytes.
    • Materials are rendered offline and only a small set of shaders used at runtime. This is due to required compiling of shaders at runtime, and memory constraints making multi-texture materials too costly.
  • Advanced Visual Effects ... [Full day session]
    • Order Independent Transparency (AMD)
      • The framebuffer is simply a list of linked-list targets per pixel, and another buffer is used to store many samples. There is a demo released 2009 that shows this. Multisampling of course is an issue, and it’s clearly an expensive effect and requires guessing how many transparent fragments you’ll need to store.
    • [Indirect lighting with blockers]
      • Linked lists used again, sourcing from a 3D grid of the entire scene to look up blockers of indirect light used with reflective shadow mapping.
  • V-Con 2010: David Perry Keynote
    • Dave convinced me that the critical feature from cloud streaming services such as Gaikai, OnLive, and O-Toy will be frictionless entry. How many clicks does it take to get someone a demo of your game? Gaikai will do it in 1. Just 1 click and you're in the demo.
    • Gaikai is targeting 300 data centers, he claims OnLive 5, and OToy 2
    • WOW takes 30+ clicks to enter into gameplay. ;) Multiple EULAs.
  • Designing for Performance, Scalability & Reliability: StarCraft II's Approach
    • Starcraft scalability and perf discussed how they felt custom built profiling tools were necessary. They did have nice features:
      • Historical frame perf data
      • Single button press to sent data to engineers from QA
      • Butterfly view for CPU time & Memory too
      • Post game results with worst frames sorted out and worst “moments” spanning multiple frames.
  • Data is a Four Letter Word [Brutal Legend]
    • They built directed graphs for data dependencies offline. These were processed into indices that could easily locate the needed assets. They were also used to build disk layout information to reduce seek times.
  • Physics Meets Animation : Character Stunts in Just Cause 2
    • They have highly coupled physics, character movement from animation and gameplay code, and IK. The results looked good, but also very delicate to work with. Some tidbits:
      • Start with gameplay code driven movement of character
      • Use physical simulation data to drive blending of animation tracks (e.g. rotational acceleration of car influences “hang on leaning left” blend weight)
      • Use ragdolls to add physicality to animations
      • Use IK to correct everything that went wrong. ;)
  • GDC Microtalks 2010
    • Many speakers, mostly touching on design elements. A good view on GDCVault if you’d like a bit of inspiration.
    • Random data: TV Ads have gone from 13% to 36% of programming time over the last 60 years.
  • Nuevo Sessions
    • Several indie developers discussing their games
    • Hazard - Artsie First Person (non)shooter. Heavily abstract and metaphor puzzle based
    • Interesting to see on GDCVault if you’re interested in indie games.
  • The Implementation of Rewind in Braid
    • Encoding similar to video:
      • initial state
      • key frames
      • delta frames
  • Animation and Player Control in Uncharted: ...
    • Strong use of blending and layering to achieve desired effects, but primarily to reduce memory.
    • 3000 to 4000 animations for main character in a given level.
      • 20%-40% level data is animation, 15-30MB
    • 10Hz sampled animation data (except where artist overridden). Engine runs at 30FPS.
    • Additive animation layers, partial animation sets, pose based root animations.
      • E.g. one idle animation that is additively blended onto simple standing poses, those poses can easily be changed to have new idle effects.
      • Variation animation 10 times as long as most run cycles adds variation to different runs etc and can be reused to give lots of variation.
    • Mixture of gameplay code driven movement and animation data movement, IK.
  • Metaphysics of Game Design - Will Wright
    • (unannounced presentation by Will Wright)
    • Will packed a dense and sprawling presentation into the hour. It’s not really summizable into a few points.
    • You’re best to seek video on GDCVault - it’s a treat.


    1. Kenny wrote:
      Hey Vince, I'm confused about your write-up on the sony motion controller:

      1) laggy? it is on the scale of the frame time (around 22 ms). Even normal controllers have nearly that much "lag" (wireless itself is on that scale).

      2) very poor for pointing? very much disagree considering how much I have used it for that, hehe. In fact, the system has many different ways of implementing the pointer: everything from true 6dof laser pointing (you can even "twist" the laser, hehe) to absolute position/angle to relative gyro mouse controls.

      I'm not sure what you tested with. If it was a game, the tracking will feel about as good as the framerate, especially if the tracking update is in sync with the framerate. In augmented reality, it is in sync with the video, so I'm really surprised you'd think that was laggy (at least no laggier than a standard 60 Hz video update).

      We did find out that many of the demo stations were not running the TVs in game mode, lol. That would add a LOT of latency as it tries to integrate frames for motion smoothing.

      My Response:
      The demo I tried had video up with me in it and game objects overlaid. Told to swat at objects, I did, and the video + tracking felt sluggish. Jerk left, wait, see me do it on the TV. The TV settings may have made that worse, and perhaps if the video is up it's worse too? I didn't see a demo the just used tracking but no video. I had to infer what pointing would be like, since the game didn't use it directly, so I'll eat my words there a bit if indeed it works well and my guess from the demo was wrong.

    2. Social games, eh? Do you think a mashup of urban farming (real urban farming) and social media (aka farmville) could fly? I know people that spend hours tending their and their friends' digital farms ... and they won't grow a single carrot that way that they can actually eat.

      Who can help me make "downtownfarm" the next big social game on facebooks, ipads, , ...?