Structure Graph
The structure graph is the main component of the scene graph. The structure graph organizes the scene and all of the entities, functions and behaviours in it.
Structure graph templates are provided for various project types, that
identify the logical structure graph for that type of game or simulation.
The structure graph is the core of the Magnetar Extensible Scene Graph
(XSG). Structure graphs are made up of
structure nodes which are linked in a
hierarchical tree organized as a DAG. Entities,
behaviours, and functions
can be attached to these structure nodes to create the scene.
The structure graph organizes the content of a scene based on the proximity of
objects in the scene. In other words, entities that are found near each other will be
attached to the same node or to closely related nodes on the structure graph.
Each language has a data representation model (DRM) presented as a metagraph that describes how to
build the structure graph, that is, how to organise the content when working with the language. A
library of structure graph templates provide examples of the structure graph in
use.
The structure graph is a core set of code that can be extended by adding new
nodes. This method allows you extend the scene graph without having to
change the core code, making it easier to extend the scene graph. The structure
graph is kept as simple as possible, so that traversal can occur quickly.
Applications concerns, like functions, have been removed from the structure
graph, so that they do not need to impact the way the graph is traversed.
Structure graph templates are basic structure graphs that can be used to
build games and simulations. Structure graph templates provide you with a
backbone on which you can build your games and simulations. There are a
few different structure graph templates available, with each template indicating
the type of project for which they are most suitable.
You can build your project by attaching entities and functions directly to
the template, or you can modify the template to handle any extras you may need,
and proceed from there. Because structure graphs are extensible, you can find a
template that closely matches your needs, then modify the features until it
suits your purpose.
The templates provide a useful example for people who want to understand the
metagraph for the scene graph. They are a full working example of the scene
graph, that are structured using the metagraph.