Académique Documents
Professionnel Documents
Culture Documents
'ome game engines onl! provide real(time %$ rendering capabilities (providing attachment hoo&s for the other t!pes of needed game functionalit!). 'uch engines are generall! referred to as a graphics engine or rendering engine.
orporation)
,endering engine
Audio
'cene Gra h ) Culling Collision and Ph"sics ,enderer ,esource -anagement and Game Assets Core 'u ort and +tilit" '"stems
/etwor0ing
Hardware Hardware
-he target hardware la!er on which the game will run. A game engine ma! be capable of running on top of a number of hardware la!ers.
??)
.ile '"stem
&hreadi ng *ibrar"
In order to function game engines t!picall! depend upon underl!ing utilit! and support classes. $epending upon the game engine, this might include"
Core 'u ort and +tilit" '"stems -ath *ibrar"
Debug Printing and *ogging
*ocali2ati on 'ervices
/etwor0 &rans ort *a"er
Parser s
-ovie Pla"er
-he resource manager provides a unified means of accessing the different t!pes of game asset and other engine input data, including but not necessaril! limited to model meshes, te2tures, fonts, s&eletal animation data, game/world maps, etc.
.ront!end
-he rendering engine within a game engine tends to be a large and comple2 component which is often decomposed into separate la!ers
Rendering engine
,endering Engine
,enderer
,enderer
-his component encapsulates all the raw rendering facilities of the engine, providing a means of rendering a collection of geometric primitives as @uic&l! as possible. 'upported geometric primitives ma! include triangle meshes, line lists, point lists, particles, etc.
-his component t!picall! accesses the graphics device interface (possibl! through a defined platform independence la!er) and acts to configure the hardware state and game shaders using some defined material system and dynamic lighting system.
$isual Effects
-he rendering engine might provide support for the following t!pes of visual effect"
+article effects $ecal s!stem $!namic shadows /ight/environmental mapping 4ull(screen post render effects
$isual Effects
.ront End
A front end component provides a means of rendering #$ graphics (possibl! overlaid on top of a %$ scene), providing"
Game front end and menus In game 3ead(up(displa! (30$) In game graphical user interface (e.g. for
.ront!end
Bhilst collision detection and a real(time d!namics simulator can be separate entities, the! are often found together given the interdependence of ph!sics on collision detection. Given the comple2it! of both areas, most engines rel! upon a %rd part! '$= (e.g. 3avo&, etc.). A collision detection s!stem is often of use within a wide range of non(ph!sics related component.
Animation
)ost current game engines support s&eletal animation, permitting a mesh to be posed using a s!stem of bones. +oses are t!picall! interpolated or combined to produce a palette of matrices used to render the mesh parts (a process &nown as s&inning).
Animation
Animation
Inverse (inemati cs
Animati on Pla"bac 0
Games often support a number of different forms of pla!er interface device, including"
=e!board and )ouse Gamepad 'pecialised
It is often the role of this component to abstract the mapping of ph!sical controls and logical game functions. -he component ma! also embed support for detecting multiple simultaneous button presses and/or input se@uences, etc.
Audio
Audio
-he sophistication of audio engines between different game engines differs considerabl!. )ore advanced audio engines offer wide support for different input sound formats, including streaming, and output spea&er arrangements. Additionall!, different forms of pla!bac& support, including audio effects, ma! also be supported.
/etwor0ing
Game engines t!picall! provide support permitting multiple computers/ consoles to be lin&ed together in some form of mutli(pla!er game. -his is a different environment to massivel! multipla!er online games ()).Gs) where thousands of pla!ers are t!picall! managed using a server farm.
/etwor0ing
/etwor0ing
-atch! ma0ing and Game -agagement %b4ect Authorit" Polic"
Game la" .oundations High!level Game .low '"stem 'cri ting '"stem Game 1orld
D"namic Game %b4ects
3igh(/evel Game 4low '!stem 3igh(level control mechanisms, such as finite(state machines, etc. ma! be embedded within the gamepla! foundations la!er and made avaiable to the game specific sub(s!stems.
-esh
Particle '"stem
Borld Editor
Game Engine
be read sufficientl! @uic&l! at run time. A game engine which targets multiple platforms ma! also wish to store assets in a common game engine format suitable for deplo!ment across multiple platforms.
$irected >eading
Directed reading on game engine architecture
Directed reading
)ore information on an overview of game engine architecture can be found
game obAects (d!namic and static) within a game engine can be found pages EFG(G7% of Game Engine Architecture
'ummar"
-oda! we e2plored"
1hat is a
game engine
&he t" es of
&o do6
,ead the
ected ir d d e d n e m recom reading he t f o s t c e s a Identif" ou " h ic h w e in g game en l" find articular interesting