1. Game engines
All engines are similar in terms of what they actually do on a binary level, but their purpose and
outcome can be very different. There are also other differences, for example, 2D game engines use only two
coordinates (x,y), while a 3D game engine uses three coordinates (x,y,z). Game engines are different from a
game; A game engine is what makes the game run, but games made using the same engine might turn out
completely differently.
Graphic rendering, collision detection, artificial intelligence, sound and physics are all elements which
can be included in any of the game engines. However they must be applied differently depending on the type
of engine and language used.
A lot of game engines produce their own game engines rather than using commercial ones, however
using a ready made one it makes things a whole lot easier by often added a more simple drag and drop
element and makes tracking down bugs much easier. As a result of this, game engines often use languages
which are object oriented. Free game engines are a popular choice for solo developers as they are usually just
as effective as the commercial equivalent and do not come with the large price tag, they are also often open
source so constantly evolving and improving at the hands of the public domain and community.
Some 3D game engines include…
Blender: A game engine working with both 2D and 3D although generally 3D
oriented. Comes with it’s own built in 3D modeller for quick and easy access and
intuitive use. It is integrated with the bullet physics library. A popular choice due to
it’s powerful nature and the fact that it’s free, complicated for beginners however so
often not a good choice for novices. Not usually used to produce large, commercial
gaming productions. It can be used to produce games for many different platforms,
and can be used with a few programming language although python is the main
one. Many indie games have been built including ‘Yo Frankie!’ and ‘colour cube’.
Unity: This 3D game engine is not fitted to suit one type of game style but works for
use to produce games on the web, Windows, and Mac OS X. Although there is a free
version, it has only limited features in comparison to the pro version. Although a
commercial game used for some high industry level games, it is also very easy to use
due to the drag and drop nature of the program. It supports iPhone, Android,
Nintendo Wii, Playstation 3 and Xbox 360 so is very flexible. Games produced with
the software include indie games such as ‘fly like a bird’, ‘feralheart’, ‘Wolfquest’ and
‘slender’ but also more commercial games such as ‘Guns of icarus online’ and
‘Badpiggies’.
Panda3D: Panda’s primary programming and scripting language is Python,
although C++ can also be used. It is free as well as open source, suitable for cross
platform, and does not support SDL. It has been used to produce commercial level
games such as ‘Toon town online’ and ‘Pirates of the Caribbean’.
Some 2D game engines include…
Box2D: Uses python as it’s main scripting language and C++ as it’s primary Allegro
programming language. Very good as physics engine but also used for the ClanLib
production of many games such as ‘Angry birds: Sleepy hollow’. Coscos2d
Lavgine: Scripting in Lua, uses C++ and Lua as its main programming Construct classic
language. Has produced games such as ‘Journey to the centre of Corona SDK
Hawkthorne’. DGD
Exult
Flexible isometric free engine: This engine’s scripting is in python. C++ is
Flexible Isometric
it’s main programming language, however. It is a free, 2D engine,
optimised for RTS and RPG games. It has produced games such as Free Engine
‘Unknown horizons’. Flixel
Examples of some 2D Terreria Wonder boy
games you might Sonic Rollercoaster tycoon
recognise would include… Mario Sim city
2. Graphic rendering
Rendering is the process of producing a still image form a model. A scene file contains objects in a strictly
defined language or data structure; it would contain geometry, viewpoint, texture, lighting, and shading
information as a description of the virtual scene. The data contained in the scene file is then passed to a
rendering program to be processed and output to a digital image or raster graphics image file.
Collision detection
Collision detection is an essential part in 3D games. It ensures the game physics are relatively realistic, so an
object does not cut through other objects or hover when it should fall. How well a game can detect collisions is
an integral part of the believability and enjoyment of the game. A poorly implemented collision detection
system can be a bane to a product, whereas an excellent implementation can produce amazing results.
Artificial intelligence
Game artificial intelligence (AI) refers to techniques used in computer and video games to produce the illusion
of intelligence in the behaviour of non-player characters (NPCs). Since game AI is centred on appearance of
intelligence and good game play, its approach is very different from that of traditional AI; workarounds and
cheats are acceptable and, in many cases, the computer abilities must be toned down to give human players
a sense of fairness. This, for example, is true in first-person shooter games, where NPCs otherwise perfect
aiming would be beyond human skill.
Sound
Sound can range from a primitive synthesizer tune to an orchestral piece, usually such that the older the
game, the simpler the music. In recent times, many games have had complex soundtracks similar to those of
movies, and sometimes even interactive soundtracks which change in order to create an appropriate
atmosphere, based on what the player does. It is also much more common for video game soundtracks to be
commercially sold or even be performed in concerts that focus on video game music
Physics
Computer animation physics or game physics involves the introduction of the laws of physics into a simulation
or game engine, particularly in 3D computer graphics, for the purpose of making the effects appear more real
to the observer. Typically, simulation physics is only a close approximation to real physics, and computation is
performed using discrete values.
There are two different kinds of physics placed within a game;
‘Ragdoll Physics’(This is a procedural animation and simulation technique to display the movement of a
character when killed) and ‘Particle Physics’(A particle system model allows a variety of other physical
phenomena to be simulated, including smoke, moving water, precipitation, and so forth.
Mobile game engines -Cocos 2D - Sparrow Framework -ISGL3D
Some games produced with a mobile game engine include:- Dead end Bird Smash
Finger Kicks Stick wars
Game mods Megabad Pero the pig
A game mod is a modification or addition to a game. This may include tweaking the code to behave
differently or adding and taking away from the source code. Some game mods include:-
MINERVA - Episodic single-player mod based in the Half-Life 2 universe, with a style of storytelling
inspired by classicgames such as Marathon and System Shock.
Nightmare House 2 - This horror-themed mod was nominatedat the ModDB 2010 Mod of the Year
awards for Best OriginalArt, Best Singleplayer Mod and Player's Choice Mod of the Yearcategories,
eventually winning 2nd place at the latter.
Portal: Prelude - An unofficial prequel to Portal, set before theactivation of GLaDOS when scientists
used to watch over the testchambers and instruct the test subjects. Gameplay is similar toPortal in its
basic aspects: There are 19 Test Chambers in whichpuzzles must be solved in conjunction with a "portal
device".