3DO is a major publisher of video games, with several popular titles for the Nintendo 64 and other this edition of How Stuff Works , we will follow the development of Portal Runner TM, a
Trang 1How 3DO Creates Video Games
by Jeff Tyson
Video games are enormously popular all over the world In fact, the video game industry is a multibillion dollar a year machine A successful video game, just like a popular music CD, can sell hundreds of thousands or even millions of copies!
You have probably wondered what goes into making a good video game You may even want to get into the business yourself Here are some of the questions that you may be wondering about:
• Where do game ideas come from?
• How many people are involved in making a game and what do they do?
• How is a game developed?
• How does a game get to my local store?
Photo courtesy 3DO
3DO's newest game is called Portal Runner.
To understand the entire process of video game development,
we went to the folks at 3DO 3DO is a major publisher of video
games, with several popular titles for the Nintendo 64 and other
this edition of How Stuff Works , we will follow the development of Portal Runner TM, a new game from 3DO You will learn about the game's technology, how the idea was developed and how the game will be distributed
Where the Game Comes From
All games start with an idea But where that idea originates can be traced to one of several sources:
Trang 2• An original concept presented by an employee
• An original concept pitched to the company by an outsider
• A sequel to an existing game
• A spinoff based on a character from an existing game
• A game based on an existing character or story (such as movie, TV or comic characters)
• A simulation of another game medium (such as board games and card games)
• A game targeted to a specific demographic
• A simulation of a real world event
• A game designed to take advantage of a specific game platform (such as the Internet or
an advanced interactive game system)
Once the idea is accepted by the company as a viable game, then a preproduction team is
assembled to begin developing the idea into a fully realized game How the game develops depends greatly on what type of game it is The story line and design of a game based on an existing movie or comic character are going to be much more restricted than those for a
completely original game concept Likewise, a simulation based on a real world event, such as a baseball game, has definite boundaries in what can be done
Video games can be extremely different from one another And while there is a huge variety of games available, most fall into certain broad categories:
• 3D Action/Adventure (Portal Runner, Army Men, Tomb Raider)
• Simulation (Army Men: Air Combat, Aero Fighters' Assault, Maestro Music)
• Sports (Sammy Sosa High Heat Baseball, Tony Hawk Pro Skater)
• Strategy/Role-playing/Adventure (Heroes of Might and Magic, Zelda, Final Fantasy)
• Fighting (Mortal Kombat, SoulFighter)
• Puzzle (Tetris, Pokemon Puzzle League)
• Shooter (Defender, Silpheed)
• Platform (Sonic, Super Mario Brothers)
• Racing (Mario Kart, Tokyo Xtreme Racer)
• Conversion (American Arcade Pinball, Who Wants to Be a Millionaire?)
Of course, a lot of games include aspects from more than one of these categories, and a few games are in a category all their own
games in the Army Men series
Trang 3In the case of Portal Runner, 3DO took a character from one of its most popular franchises and
gave her a spinoff title of her own that falls into the 3D Action/Adventure category The
character, Vikki Grimm, has figured prominently in the Army Men TM universe Portal Runner is not considered a sequel because 3DO is taking one character and building an entirely new game universe around her As you learn about the development of Portal Runner, remember that many
of the steps in the process could change significantly for a different title based on the nature of the game being developed
Planning the Game
The preproduction team normally includes one each of the following people:
• Director
• Designer
• Software Engineer/Programmer
• Artist
• Writer
Sometimes a team will not have every one of these people and other times it will have more than one person in a particular category Another person assigned to the game from the outset is the
producer While the director provides the overall vision and direction for the game and is in
charge of managing all the team members, the producer is in charge of the business side For example, the producer maintains the production and advertising budgets and makes sure that the game stays within budget
The first thing that the preproduction team does is develop the story line for the game Think of
this like writing the outline for a novel The story line identifies the theme of the game, the main
characters and the overall plot Also, areas in the game where a full motion video (FMV)
sequence would help the story along are established An important part of developing the story line is knowing the nature of the game This means that the game designer is typically involved from the very beginning; he/she is responsible for things like:
• identifying traits and features of the game
• the type of gameplay and user interaction that is developed
• how the game will use the technology available on a particular platform (video game
Trang 4Vikki in a spacesuit
Brigitte Blue, Vikki's nemesis
Portal Runner is a linear game This means that you follow a predetermined path and accomplish
specific goals to complete the game The pattern of the game is: FMV1, Play1, FMV2, Play2, FMV3, Play3 and so on until the end Each play portion has a different look, theme and goal, all
of which combine to form the game world Linear play makes the story line much easier to create
than it would be for a game that branches or has multiple endings Branching games can
contain a series of paths that all lead to the same ending Even more difficult are branching games that can result in one of several different endings, depending on the path taken Of
course, the type of game largely determines what the story line and style can be A puzzle or sports game would not require as detailed a story line as a 3D action or role-playing game
Once the story line is developed, the team creates a set of storyboards A storyboard is a
collection of still drawings, words and technical instructions that describe each scene of the game These include storyboards for the FMV sequences that introduce the story and continue it between the periods of actual gameplay Here are several examples:
Trang 5A storyboard for the opening FMV in Portal Runner
Close-up view of the storyboard images
In addition to storyboarding the game, the designers will map out the different worlds, or levels of
play, within the game during the preproduction phase The attributes of each world and the elements contained within it are pulled directly from the story line
Developing the Game
Once the storyboards and overall game level designs are complete, the game enters the
production phase The preproduction team expands as needed to include additional artists,
programmers and designers
3DO's artists begin developing the 3D modelsthat will make up the worlds of Portal Runner using
a software application called 3D Studio Max Richly detailed texture maps are created for each object While the game developers at 3DO create the actual game environment using these
models and textures, another division of the company, PlayWorks, will use the same models to
develop the animated FMV sequences for the game
Trang 6A good example of the models and textures in Portal Runner
FMVs.
Meanwhile, the programmers are writing custom code in C programming language that will
provide the framework for the game objects A lot of code is pulled from the company's library,
which is a bank of already-developed code that can be repurposed for different games Some of
the code is the 3D engine, an application that generates all the polygons, shadows and textures that you see Another piece of code is the artificial intelligence component This is the logic of the game It establishes the physics of the game, detects interaction and collisions of objects and controls movement of the characters Development of the game code is done using a special development version of the particular game system that has increased memory, a SVGA monitor connection, a network connection and a hard drive
All the bits and pieces objects, textures and code are fed into a special utility called a tool
chain that combines the pieces into one big piece of code The tool chain makes code that is executable on a specific platform, which basically means that the game code will actually run on
the game system that it was designed for To test the game, Portal Runner director John Salera uses another specialized game console built for debugging games
The Game World
Portal Runner uses an over-the-shoulder perspective You, as the game player, seem to be hovering in the air slightly behind the character you are controlling As your character moves around, you see the world of the game stretch out into the distance But what you are really seeing is a very clever illusion reminiscent of the backlots of Hollywood!
The world that Vikki can actually interact with in Portal Runner is a very defined area If you could pull the camera view up in the air, you would see that the play area is completely self-contained Other parts of the world that you can see in the distance are actually two-dimensional images mapped onto a flat surface that surrounds the play area like a barrel The sky is created in the same way, by mapping the sky image onto a large dome or cylinder that fits over everything else Look at the example below to get a better idea of how this works
Trang 7Click on the magnifying glass to move your viewpoint away from the game character As you move farther away, you will see the edges of the game world and the dome that surrounds
it with the city skyline and sky mapped onto it
The production team constantly looks for ways to add cool effects without degrading the
performance of the game A good example of this is the reflections of objects on shiny surfaces, like the chess board in the medieval world of Portal Runner The chess pieces and characters moving around on the chess board appear to have detailed reflections on the polished surface of the chess board What is actually happening is that a second version of each object is positioned upside-down just below the semi-transparent surface of the chess board! The upside-down version moves in concert with the "real" version of the object, providing an illusion of reflection
Polygons, Shading and Skeletons
The vast majority of 3-D objects created for computer games are made up of polygons A
polygon is an area defined by lines To have a polygon, you must have at least three lines
A simple triangular polygon Each point of the triangle is a vertex.
The lines connect a series of coordinates in the three-dimensional "space" the computer creates
The point where the lines connect is known as a vertex Each vertex has X, Y and Z coordinates
• X determines the position relative to right or left in the virtual space
• Y determines the position relative to top or bottom in the virtual space
• Z determines the position relative to front or back in the virtual space
Once each polygon has a set of vertices to define its shape, it needs information that tells it what
to look like There are four common ways to do this:
• Flat shading
Trang 8• Gouraud shading
• Phong shading
• Texture mapping
Flat shading simply assigns a single color to a polygon It is very simple and fast, but makes the
object look artificial Gouraud shading is more involved Colors are assigned to each vertex and
then are blended across the face of the polygon Since each vertex is typically associated with at least three distinct polygons, this makes the object look natural instead of faceted Look at this example:
The same object with flat and Gouraud shading applied.
You will notice that the ball with Gouraud shading appears much smoother than the flat shaded one But look closely at the outlines of the two balls That is where you can tell that both balls have the exact same number of polygons!
A more complex version of shading, Phong, is rarely used in games Whereas Gouraud shading
interpolates colors by averaging between the vertices, Phong shading averages each pixel based
on the colors of the pixels adjacent to it
Another common technique for determining the appearance of a polygon is to use texture
mapping Think of texture mapping as wrapping a present Each side of the box you are
wrapping is a blank polygon You could paint the box, but it would be very difficult to make it match all the designs on the wrapping paper However, if you take the wrapping paper and tightly cover the box with it, you have completely transformed the box with just a little effort
Texture mapping works the same way Mapping requires the use of another image Essentially, this other image is stretched over the object like a skin Most video game consoles and computer graphics adapters contain a special chip and dedicated memory that store the special images used for texture mapping and apply them to each polygon on the fly This allows games such as Portal Runner to have incredibly detailed 3-D environments that you can interact with in real time
The characters in a game have skeletons Similar to our own skeleton, this is a hidden series of objects that connect with and move in relation to each other Using a technique called parenting,
a target object (the child) is assigned to another object (the parent) Every time the parent object
moves, the child object will follow according to the attributes assigned to it A complete hierarchy can be created with objects that have children and parents Here's an example for a human character:
Trang 9The closeup shows the skeleton's arm You see that the finger objects are children to the hand object, which in turn is a child
to the forearm object.
Once the skeleton is created and all of the parenting controls put in place, the character is
animated Probably the most popular method of character animation relies on inverse
kinematics This technique moves the child object to where the animator wants it, causing the
parent object and all other attached objects to follow Another method that is popular for games is
motion capture, which uses a suit of sensors on a real person to transmit a series of coordinates
to a computer system The coordinates are mapped to the skeleton of a game character and translated into fluid, realistic motion
Each character's range of motion is programmed into the game Here's a typical sequence of events:
• You press a button on the controller to make the character move forward
• The button completes a circuit, and the controller sends the resulting data to the console
• The controller chip in the console processes the data and forwards it to the game
application logic
• The game logic determines what the appropriate action at that point in the game is (move the character forward)
• The game logic analyzes all factors involved in making the movement (shadows, collision models, change of viewing angle)
• The game logic sends the new coordinates for the character's skeleton, and all other changes, to the rendering engine
• The rendering engine renders the scene with new polygons for each affected object, redrawing the scene about sixty times each second
• You see the character move forward
Finishing Touches
After the basics are in place, the production team begins to refine the game Part of this
refinement involves optimizing the game code, polygon count and logic, including adjusting the
clipping planes and culling The polygon count (number of polygons on screen at the same
time) is a major factor in the smooth rendering and quick response of a game Portal Runner often has more than 50,000 polygons on screen!
Trang 10Clipping planes determine whether or not polygons in the field of view will be rendered This
depends on how close to the camera the polygons are Typically, the near clipping plane will not
render polygons that are close enough to intersect the plane of the camera This keeps your
viewpoint in the game from intersecting another object and thus blanking out And the far
clipping plane is normally set at the point where the screen resolution causes the details to
become impossible to see There is no need to render objects that you cannot see
Only the portions of the objects in view are rendered.
This leads to another area of optimization While the far clipping plane does not render entire objects that are too far away, culling means that the video game system does not render the parts
of objects that are outside your viewing area For example, when you look at a building, you normally only see one or two sides of the building In a game, you can increase performance by not rendering the other sides of the building until you move around to the point that you can see them And as you move, the game can stop rendering the things you can no longer see
One of the refinements that John Salera said 3DO wanted to make to Portal Runner was to determine where they could eliminate polygons through culling in order to increase the polygon count for Vikki, from 1,500 polygons to 3,000 They want to do this without increasing the overall number of polygons onscreen By increasing the polygon count of a specific object (like Vikki), the object can be made to look smoother and more realistic
Periodically during the development of the game, 3DO sends builds (partially complete versions)
of the game to the game console maker This is done to keep the console maker informed about how the game is developing and to ensure that there are no surprises that the manufacturer might take issue with
As the game nears completion, it enters the post-production phase This phase has several
parts:
• Game versions
• Product testing
• ESRB review
• Marketing and advertising
• Distribution
Once the game is done, an alpha version is sent to designated game testers This preliminary