Awesome Game Design Presentation by Google

Discussion about everything. New games, 3d math, development tips...
Post Reply
slavik262
Posts: 753
Joined: Sun Nov 22, 2009 9:25 pm
Location: Wisconsin, USA

Awesome Game Design Presentation by Google

Post by slavik262 »

A friend who works as a game developer showed me this presentation:

http://www.google.com/events/io/2009/se ... droid.html

While it is about writing games in Java for the Android OS, the first half has some extremely useful lessons on general game design which aren't language or platform specific. I highly recommend it to anyone who is starting out on developing a game.

In the presentation, the speaker strongly recommends an aggregate component model, where each game object is simply a list of components that do different tasks, e.g., physics, logic, rendering, etc. While I know that I didn't really agree with this type of model in the past, I've come around to see that if done properly, a component system offers lots of key advantages, mostly related to flexibility. My past issues with a component system were mostly about the layout of the particular system.

He also strongly suggests decoupling the framerates of the game code and the graphics. He does this by using two different threads. The game thread maintains a graphics state of things to draw, and when the graphics thread is ready to draw another frame, it just copies the state and draws it. This way, your game code can run much faster than your graphics code, producing smoother gameplay.

Another cool thing is that you can take a look at his code if you want more details, as it's all open-source.

All and all, it is an excellent primer on game design that definitely helped me out. I hope it helps you as much as it helped me.
Kalango
Posts: 157
Joined: Thu Apr 26, 2007 12:46 am

Post by Kalango »

The source code he provides is a great help on how to implement a good and organized game engine. Since its in JAVA, C++ programmers shouldnt have trouble to understand it and implement it themselves.
Good post ;)
Post Reply