Speeding up your game

The scene graph

Scene graph example

Using transforms for instancing…

…or hierarchical animations

Types of culling

Backface culling

(Hierarchical) view frustum culling

Variants

Portal culling

Simple algorithm  (Luebke and Georges ‘95)

Example

Variants

Detail culling

Estimating projected area

Occlusion culling

Sample occlusion culling algorithm

Sample occlusion culling algorithm

Sample occlusion culling algorithm

Hierarchical Z-buffer algorithm
(Greene, Kass, and Miller 1993)

Object-space octree
(shown using quadtree)

Object-space octree
(shown using quadtree)

Object-space octree
(shown using quadtree)

Object-space octree
(shown using quadtree)

Object-space octree
(shown using quadtree)

Object-space octree
(shown using quadtree)

Object-space octree
(shown using quadtree)

Hierarchical Z-buffer

Level-of-detail rendering

Level-of-detail rendering

Collision detection

Testing for collision between
two scene graphs

Triangle - triangle collision test

Simpler collision detection

Can you compute the time of a collision?

Resources and pointers