Scene Graphs in Games and 3D Applications
Scene graphs are useful for modern games using 3D graphics and increasingly large worlds or levels. In such applications, nodes in a scene graph (generally) represent entities or objects in the scene.
For instance, a game might define a logical relationship between a knight and a horse so that the knight is considered an extension to the horse. The scene graph would have a 'horse' node with a 'knight' node attached to it.
As well as describing the logical relationship, the scene graph may also describe the spatial relationship of the various entities: the knight moves through 3D space as the horse moves.
In these large applications, memory requirements are major considerations when designing a scene graph. For this reason, many large scene graph systems use instancing to reduce memory costs and increase speed. In our example above, each knight is a separate scene node, but the graphical representation of the knight (made up of a 3D mesh, textures, materials and shaders) is instanced. This means that only a single copy of the data is kept, which is then referenced by any 'knight' nodes in the scene graph. This allows a reduced memory budget and increased speed, since when a new knight node is created, the appearance data does not need to be duplicated.
Read more about this topic: Scene Graph
Famous quotes containing the words scene and/or games:
“An age is the reversal of an age:
When strangers murdered Emmet, Fitzgerald, Tone,
We lived like men that watch a painted stage.
What matter for the scene, the scene once gone:
It had not touched our lives.”
—William Butler Yeats (18651939)
“In 1600 the specialization of games and pastimes did not extend beyond infancy; after the age of three or four it decreased and disappeared. From then on the child played the same games as the adult, either with other children or with adults. . . . Conversely, adults used to play games which today only children play.”
—Philippe Ariés (20th century)