-
Notifications
You must be signed in to change notification settings - Fork 9
Terminology
The underlying data model is an attributed, typed, hierarchical, directed graph consisting of graph nodes and graph edges. Edges are always directed and have source and target node. Nodes and edges have a type and may have attributes (string, toggle, integer, and float).
A game node is the visual representation of a graph node as a Unity GameObject. The name attribute of a game node is identical to the ID of a graph node. A graph node can be reached from a game node via its NodeRef component. The game node for a graph node can be looked up with the GraphElementIDMap via its ID.
Dually, a game edge is the visual representation of a graph edge as a Unity GameObject. The name attribute of a game edge is identical to the ID of a graph edge. A graph edge can be reached from a game edge via its EdgeRef component. The game edge for a graph edge can be looked up with the GraphElementIDMap via its ID.
The ID of a game node / graph node as well as the ID of a game edge / graph edge must be unique in the scene.
A code-city is a Unity GameObject holding an instance of a subclass of AbstractSEECity. It is the child of a table game object. Game nodes and game edges are placed underneath the code-city object as children. Generally, there is only one root game node and all other game nodes are transitive descendants of the root game node. The game edges are likewise children of the root game node, but they do not form a hierarchy.
A table is a Unity GameObject upon which a code city will be rendered. Its immediate child is a code-city game object. The table game object renders as a table furniture.