Game Development Reference
and affect the game. The user interface can consist of multiple elements such as on-
screen displays and menus. The game control includes the way players control and
operate their characters (or teams, cars, armies, and so on) during the game, as well as
the way they can control their experience through point-of-view and lighting settings.
The game should also support a variety of controllers, such as joysticks for air combat
and steering wheels for driving, that are especially suited for the game's genre.
Another factor in providing a quality experience for the user is to ensure game code
and assets are compatible with the memory constraints of the target platform. This
includes the available working memory required for the game to run properly and
both the size and number of target media such as cartridges, CD-ROMs, or DVDs
used for distribution of the game.
Higher memory requirements may affect game performance while time is spent
switching game assets in and out of memory during play. Each additional disk or
higher-capacity memory card affects the cost of manufacturing and distributing the
game. A price increase to compensate for the additional media cost could affect sales.
Adding a disk without increasing the price will reduce profits. The vast majority of
console games are expected to fit on only one disk, but complex PC games can take up
anywhere from 2-6 disks. Handheld device memory is not upgradeable like PCs are.
Games have to fit within the memory constraints of the onboard memory chips and
removable memory devices that are supported. Mobile games tend to be the most
constrained in terms of available fixed and removable memory.
Any efforts at “code crunching�? get more and more expensive the later they happen in
the game development cycle. The cost isn't just in the labor to do the reduction work.
Shrinking game code or reformatting assets to fit on the target media or memory foot-
print can introduce new hard-to-find bugs late in the project. This creates an extra
burden on development, project management, defect tracking, version control, and
The actual quality of the game is established by its design and subsequent implemen-
tation in code. However, appraisal activities are necessary to identify the difference
between what was produced and what should have been produced. Once identified,
these differences can be repaired before—and sometimes after—releasing the game.
Testing is considered an appraisal activity. It establishes whether the game code per-
forms the functions for which it was intended. But testing is not the most economical
way to find game defects; it's best to catch problems at the point they are introduced.