+ All Categories
Home > Documents > Game Engines

Game Engines

Date post: 25-Feb-2016
Category:
Upload: moanna
View: 61 times
Download: 0 times
Share this document with a friend
Description:
Game Engines. Non-game specific technology Game: Engine Assets ( models, animations, sounds, AI, and physics) Code (AI, Scripting, etc.). Game Engines: Rendering Pipeline. A pplication/Scene Scene database update/traversal Object/Camera Movement/Animation Visibility/LOD/Culling Geometry - PowerPoint PPT Presentation
Popular Tags:
20
Game Engines Game Engines Non-game specific technology Game: Engine Assets (models, animations, sounds, AI, and physics) Code (AI, Scripting, etc.)
Transcript
Page 1: Game Engines

Game EnginesGame Engines

Non-game specific technologyGame:

– Engine– Assets (models, animations, sounds, AI, and

physics)– Code (AI, Scripting, etc.)

Page 2: Game Engines

Game Engines:Game Engines: Rendering PipelineRendering Pipeline

1.1. AApplication/Scenepplication/Scene Scene database update/traversalScene database update/traversal Object/Camera Movement/AnimationObject/Camera Movement/Animation Visibility/LOD/CullingVisibility/LOD/Culling

2.2. GeometryGeometry Transforms: Model/World/ViewTransforms: Model/World/View Viewport & Backface CullingViewport & Backface Culling

3.3. TrianglesTriangles Scan-line conversionScan-line conversion

4.4. RasterizationRasterization ShadingShading Texturing/Fog/AlphaTexturing/Fog/Alpha DepthDepth

                                                 

                                                

Page 3: Game Engines

Game Engines:Game Engines: Shading Shading

FlatFlat Vertex (Gouraud)Vertex (Gouraud) Pixel (Phong)Pixel (Phong)

Light MapsLight Maps Programmable (Vertex & Pixel Shaders)Programmable (Vertex & Pixel Shaders)

                                                 

                                                

Page 4: Game Engines

Game Engines:Game Engines: Memory Management Memory Management

Cache ThrashingCache Thrashing– Group Primitives by Textures?Group Primitives by Textures?– Hardware T&LHardware T&L– CompressionCompression

Card MemoryCard Memory– Why isn’t 32 bit color (16.7M) enough?Why isn’t 32 bit color (16.7M) enough?– 1280x1024x12 (Front,Back,Z)= 15MB1280x1024x12 (Front,Back,Z)= 15MB

                                                 

                                                

Page 5: Game Engines

Game EnginesGame Engines

3D Engine3D LanguagesAuthoring SystemSpecialized Authoring (first or third

person shooters)

Page 6: Game Engines

Game EnginesGame Engines

3D Engine– library of 3D graphics functions. – free, $50-$100 up to $250,000 for commercial use. – Require programming with an external delevopment

system, normally Microsoft Visual C++. – maximum of flexibility– maximum of experience, work and time required.

Page 7: Game Engines

Game EnginesGame Engines3D Languages

– DirectX/OpenGL interface with a scripting language

– especially designed for 3D games– Simpler than 'real' programming. – Many based on Basic

easy to learn not very well suited for large or complex games

– Alternatives: C- or Javascript-based languages.

Page 8: Game Engines

Game EnginesGame Engines

Authoring System– 3D engine and a visual – very fast 'clicking together' a game prototype.– only simple games can be created without any

programming.– scripting language for programming or

customizing the game.

Page 9: Game Engines

Game EnginesGame Engines

Specialized FPS (first or third person shooters)  – offer no or limited scripting. – good alternative if you don't want to

script and are not interested in publishing a game commercially.

Page 10: Game Engines

Engine ConsiderationsEngine Considerations Platforms Performance Data Rendering/Features Animation Physics & Environment Scripting Authoring I/O Save/Load

Page 11: Game Engines

PerformancePerformanceOcclusion Culling

– Cell Based: BSP tree, Portal, Octree– Other: Potentially Visible Set, HOM

LODAdaptive NURBS/PatchesPolygon ReductionTerrain Primitives

Page 12: Game Engines

Data Import/ExportData Import/Export 3D file formats

– X, 3DS, MDL, MD2, MAP, WAD Texture/Image Formats Models/Animations:

– Maya, 3D Studio MAX Levels

– WorldcraftT or MilkshapeT Plugins

Page 13: Game Engines

RenderingRenderingFeaturesFeatures

OpenGL vs. DirectXOpenGL vs. DirectX– DX6-9DX6-9– OpenGL1.1-1.5,2.0OpenGL1.1-1.5,2.0

Shadow Maps (Lightmaps)Shadow Maps (Lightmaps) ShadersShaders Dynamic ShadowsDynamic Shadows MIP Maps/Multi Maps/ Bump MappingMIP Maps/Multi Maps/ Bump Mapping EffectsEffects

Page 14: Game Engines

AnimationAnimation Keyframe Bones (Skinning) Facial Animation Vertex Animation Inverse Kinematics (IK) Dynamics High-level Authoring

Page 15: Game Engines

Physics & Physical Physics & Physical EnvironmentEnvironment

Visibility Collision Detection Terrain Following Gravity Physics

– Rigid & non-rigid bodies

Page 16: Game Engines

ScriptingScripting

• Scripting languages add logic for controlling actors or objects

• Languages:• Javascript• Luo -http://www.lua.org/• Python• Basic• Custom:UnrealScript, C-Script, etc.

• Script Compilers for performance

Page 17: Game Engines

Save/Load SystemSave/Load System

• allows the end user to save a complete game state.

• 'freezes' all running scripts and all objects and variables of the game and writes them into a file

• Without such a system:• a script has to be written which stores the

state of every variable and object and the position within every script function

Page 18: Game Engines

Authoring/EditingAuthoring/Editing

• Level Editor• Model Editor• Script Editor• Terrain• Logic

Page 19: Game Engines

Sample EnginesSample Engines• Specialized Authoring (FPS, 3PS)Specialized Authoring (FPS, 3PS)

• 3DGM, RF3DGM, RF• AuthoringAuthoring

• Quest, Radish, Virtools, Gamestudio/A6, Alice, Adobe Quest, Radish, Virtools, Gamestudio/A6, Alice, Adobe Atmosphere, BlenderAtmosphere, Blender

• 3D Languages3D Languages• Jamagic, DarkBASIC, BlitzJamagic, DarkBASIC, Blitz

• 3D Engines3D Engines• TV3D, Irrlicht, Torque, Nebula, Crystal, Cipher, PR, Jupiter, TV3D, Irrlicht, Torque, Nebula, Crystal, Cipher, PR, Jupiter,

Quake3, Unreal2Quake3, Unreal2• Standards-based Engines & Tools (VRML/X3D)Standards-based Engines & Tools (VRML/X3D)

• Internet Scene Assembler, Cortona, Blaxxun,OpenWorlds, Internet Scene Assembler, Cortona, Blaxxun,OpenWorlds, VizX3DVizX3D

Page 20: Game Engines

Game Engine ResourcesGame Engine Resources

http://www.devmaster.net/engineshttp://www.pcplus.co.uk/reviews/ (->Software->Development and ->Software->Graphics) http://directory.google.com/Top/Computers/Pr

ogramming/Games/3D/ http://cg.cs.tu-berlin.de/~ki/engines.html http://fraktali.849pm.com/graphengines.html http://www.flipcode.com/links/


Recommended