Game Development Reference
In-Depth Information
was coined in the 1990s, when first-person shooters such as Doom and Quake be-
came a very popular genre. These games were so popular that the manufacturer—iD
Software—decided to license a part of the game code to other game companies as
a separate piece of software. Reselling the core game code as a game engine was
a very lucrative endeavor, because other companies were willing to pay a lot of
money for a license to use the engine for their own games. These companies no
longer needed to write their own game code from scratch anymore, but they could
reuse the programs contained in the game engine and focus more on graphical mod-
els, characters, levels, and so on.
Nowadays, a lot of different game engines are available. Some game engines
are built specifically for a platform such as a game console or an operating system.
Other game engines can be used on different platforms without having to change the
programs that use the game engine code. This is especially useful for game compa-
nies who want to publish their games on different platforms. Modern game engines
provide a lot of functionality to game developers, such as a 2D and 3D rendering
engine, special effects such as particles and lighting, sound, animation, artificial
intelligence, scripting, and much more. Game engines are used a lot, because devel-
oping all these different tools is a lot of work and game companies prefer to put that
time and effort into creating beautiful environments and challenging levels.
Game middleware— Sometimes, a game engine is also called game middle-
ware , because it forms a layer between the basic programming language and
the actual game code.
Because of this strict separation between the core game functionalities and the
game itself (levels, characters, and so on), many game companies nowadays hire
more artists than programmers. However, programmers are still necessary for im-
proving the game engine code, as well as for writing programs that deal with things
that are not included in the game engine or that are specific to the game. Further-
more, game companies often develop software to support the development of games,
such as level editing programs, extensions of 3D modeling software to export mod-
els and animations in the right format, prototyping tools, and so on.
2.5.3 The XNA Game Engine
This topic uses the XNA game engine. XNA is developed by Microsoft and it is
used together with the programming language C#. With XNA it is possible to de-
velop games for different platforms, such as the PC, the XBox, or the Windows
Phone. Although we focus on developing 2D games in this topic, it is also possible
to develop 3D games in XNA. XNA provides a number of tools for things like load-
ing and displaying sprites, playing sounds, checking for collisions, and much more.
In this topic, we will introduce a number of these tools and we will build upon them
to create our own games.
Search WWH ::




Custom Search