game engine architecture

30
GAME ENGINE ARCHITECTURE

Upload: attila-jenei

Post on 26-May-2015

1.233 views

Category:

Technology


4 download

DESCRIPTION

Use a game engine to create a video game. Its reusable components provide the general functionality. Define resources and building blocks. What are the key elements of a game engine?

TRANSCRIPT

Page 1: Game Engine Architecture

GAME ENGINE ARCHITECTURE

Page 2: Game Engine Architecture
Page 3: Game Engine Architecture

MAIN CLASSES

Page 4: Game Engine Architecture

VIEW CONTROLLER, VIEW

• Update loop

• Render loop

• Events

Page 5: Game Engine Architecture

SCENE MANAGER

• On update and render cycle

• Swaps scenes

• Handles events

Page 6: Game Engine Architecture

SCENE

• Content into scenes

• Nodes to be rendered

• Per-frame processing

Page 7: Game Engine Architecture

NODE

• Basic elements

• Tree hierarchy

• Selected properties are applied from parent

Page 8: Game Engine Architecture

RESOURCES

Page 9: Game Engine Architecture

TEXTURES

• Graphical data

• Avoid from multiple memory usage

• Preloading

Page 10: Game Engine Architecture

FONTS

• Image, or

• Pre-generated bitmapfrom vector font

Page 11: Game Engine Architecture

SOUNDS

• Short sound effects

• Instant play

• Simultaneous play

• Uncompressed data

• Preloading

Page 12: Game Engine Architecture

SHADERS

• Programs for GPUs

• Visual effects

• Less CPU usage

Page 13: Game Engine Architecture

MATERIALS

• Lighting properties

• Shader Program selection

• Used by Buffer Nodes

Page 14: Game Engine Architecture

VERTEX AND INDEX BUFFER

• Vertex data

• Index data

• Points, lines, or triangles

• Owned by Buffer Nodes

Page 15: Game Engine Architecture

NODES

Page 16: Game Engine Architecture

BUFFER NODE

• Draws a Vertex Buffer

• Index Buffer is optional

Page 17: Game Engine Architecture

SPRITE NODE

• Textured sprite

• Rectangular 2D image

• Clipping

Page 18: Game Engine Architecture

LABEL NODE

• Draws a string

• Uses Font resource

• Align modes

• Word-wrap

• Clipping

Page 19: Game Engine Architecture

EMITTER NODE

• Particle systems

• Visual effects

• Own coordinate-system

• Source of particles

Page 20: Game Engine Architecture

CAMERA NODE

• Represents the viewer’s point of view

• Used by the Render Pipeline

Page 21: Game Engine Architecture

LIGHT NODE

• Ambient, directional, point source

• Lighting is enabled by the used Material

• Limited count

Page 22: Game Engine Architecture

SOUND NODE

• Plays a sound

• 3D or stereo sound effect by its position

• Attach to graphical representation

Page 23: Game Engine Architecture

MUSIC NODE

• Plays the background music

• Single

• Compressed data

• Buffered play

• Looping

Page 24: Game Engine Architecture

RENDER PIPELINE

Page 25: Game Engine Architecture

RENDER PIPELINE

• Executed on render cycle

• For the presented scene

• Single or multiple steps

Page 26: Game Engine Architecture

RENDER STEP

• Selects destination buffer

• Specifies root source node (generally the scene)

• Uses a camera for the point of view

Page 27: Game Engine Architecture

OTHER COMPONENTS

Page 28: Game Engine Architecture

GAME RELATED

• 2D or 3D physics simulation

• Game Center or similar gaming network

Page 29: Game Engine Architecture

MONETIZATION, MEDIA

• In-app purchases

• Advertising

• Social media interactions

Page 30: Game Engine Architecture

by Attila Jenei

!http://www.attilajenei.com

Game Engine Architecture