Game Engine

Only available on StudyMode
  • Topic: Id Software, 3D computer graphics, Bounding volume
  • Pages : 34 (3095 words )
  • Download(s) : 89
  • Published : March 31, 2013
Open Document
Text Preview
Gaming
Gaming Technologies

Alexandre Topol
ENJMIN
Conservatoire National des Arts & Métiers

Qui
Qui suis-je ?

Ingénieur (2000) et docteur (2002) en Informatique
Ancien programmeur Ubisoft (en 1996)
Enseignant au CNAM et à l’ENJMIN
Programmation 3D
Langages de shading
Physique
Animation
IHM


Chercheur au laboratoire CEDRIC
© Ubisoft – POD - 1997

50
50 years of evolution ...

1961
Spacewar!
Steve Russel
(MIT)

1972
PONG
Nolan Bushnell
(Atari)

1989
Prince of Persia
Jordan Mechner
(Brøderbund)

1993
Doom
John Carmack
(Id Software)

...
... of games ...

1997
Quake 2
Id Software
(Activision)
2004
Far Cry
Crytec
(UbiSoft)
2008
Assasin’s Creed
(UbiSoft)

...
... and programming ...

1960
BASIC

1972
C

1983
C++

...
... methods

1993
Mods

1995
3dfx ASM

1995
DirectX 1.0

2002
Renderware

50
50 years of evolution

Why these evolutions ?
For programming languages: need of more expressive power
For game programming methods : need of less development time

How did we get there ?
To get closer to the heart of the game :

the gameplay

Game
Game Components

Engine
Content
+
Rules
Platform

Content
Content Components
sound
effects

scripting

story

as well as …
• user interface

lighting
Content

modeling

level
design
texturing /
surfacing

animation

visual
technologies

Content
Content Creation

Method driven for some
Tool driven for others
Combination of tools forms “Art Pipeline”
Character Pipeline
3D Model/Sculpting
Animation/Rigging
Skinning
Texturing
Lighting/Shading

An artist often specializes on one part of pipeline
Some tools in Game Engines (Emergent AnimationTool)

Game
Game Engine Components

AI
Graphics

Engine

Physics

Audio

Networking
+
I/O

Plateforms

as well as …
• installation
• patching
• resource management
• multithreading
• disk i/o
• state save/restore

Game
Game Engines

Game
NPC System

Virtual Agent

Trading System

Fighting System

FX System

Terrain

Character Dynamics Sound FX

Collision

3D Scene Mngmt
3D Graphics API

2D Sprite

Game AI

Story

Gamepad

2D API
Hardware

Script System
UI

Audio

Network

Input Device

OS API

Game Play
Layer
Engine
Layer
System
Layer

Games Engines Vs Σ(APIs)
Games
For instance : DirectX or { Ogre3D + OSG + Bullet + Wwise… } Each element is tightly embedded
Same structures for different aspects
No need to dupicate objects
Same bounding boxes are used for both collision detection and object
object culling

Most important: higher levels are gameplay oriented
High level tools to design levels
Graphical & audio aspects
Triggers for audio or AI script
Physics parameters


Game
Game Engines

Studio chooses to build or buy
Quake Source, Unreal engines
Renderware, Gamebryo middlewares
Often come with great authoring tools (level editors, etc.)

Componentized software
May buy specialized components
How many people can write a physics engine?
And how many studios can afford writing one ?
Video codecs, etc

Engine may be optimized for game genre/style
Includes special features to answer special needs
Terrain vs indoor scenes, camera management, …

Game
Game Engines
Cost: ranges
from open
source
(CrystalSpace)
to $100K+
(Unreal Engine)

3D graphics tools
Physics engine
Audio
Animation
Character “AI”

Visual3D Architect .NET Screenshot RealmWare Corporation

Typically tailored to a particular kind of game
First person shooter (FPS)
Real time strategy (RTS)
massively multiplayer online role-playing game (MMORPG)

Game
Game Engines

Game
Game Engines

Unreal Engine 3

Game
Game Engines

Engines:
Unity3D
UDK (vs Unreal Engine)
Cry Engine
Torque – Low cost set of engines (2D, 3D, 3D+Shaders), large dev community 3D Game Studio – Hundreds of games, C-script, many...
tracking img