ONE WAY TO THINK ABOUT GAME DEVELOPMENT
BUT VIDEO GAMES USUALLY HAVE THESE THINGS IN COMMON:
I'm part of an indie game studio working on our first game, and if I didn't know it before, I sure know it now: Game development is hard. Any kind of system you can use to help shape your project is helpful for making design decisions and moving forward. So let’s talk about this thing we've been kicking around the office, which we’re calling “The Game Triforce.” The Game Triforce consists of three distinct parts: Control, Display and Timekeeping.
Control is probably the easiest component to understand. It represents all of the inputs to your system. Controls require an interface (called a human-computer interface) which is how the player communicates with the box that holds the game program. (Here's a non-exhaustive list of inputs: button presses, key presses and holds, mouse clicks, analogue stick, input text, touch and multitouch, motion control, accelerometer, joystick, dance pad, voice...)
Display, which is the output of a system, is everything in the game that can be perceived by the player. Another way to look at it is as feedback to the player. Display can (and should) involve many senses, not just sight. (For example, in a fighting game, if you press the button for a punch, what kind of feedback could you expect? Punching animation on player character, punching sound effect, player character power level dropping, enemy character reaction [block, hit, dodge, etc], enemy character reaction sound effect, enemy character HP bar dropping...)
Timekeeping is the last corner on the Triforce. You might not have considered this before, but many aspects of a game require some kind of timekeeping. Timekeeping is necessary whenever an action needs to happen through time. This includes every character, background, and GUI animation, some physics calculations like velocity, and any time-based events like countdowns and cooldowns. In most games, this could happen in one of two ways: Using frame-rate - this is good for anything in the display or model that needs to update every frame, like an animation. The other is by using a timer - this is better for arbitrary or longer periods of time, like a countdown timer.
Now that you know how it works, try breaking down a single action of a game that you like into its control, display, and timekeeping. If you are a game designer, try breaking all the actions down for one of your current projects. This activity can make a great start to writing your Game Design Document.
If you host your own Wordpress blog, paste this code into the body of your post. Make sure the URL appears on its own line.
Copy the source code to your site: