HOME CONSULTING PUBLICATIONS PROJECTS CV (PDF)
OpenScene OpenScene
A Ygdrasil Interface for Scene Development within Multigen Creator

A typical virtual world is composed of separate 3D models in order to control level-of-detail, collision detection and object dynamics. This routinely forces a world developer to position independent models using tools more suited to behavior specification than scene composition. Multigen Creator includes grouping and transform nodes that let a user to specify the needed scene segmentations and object reference frames. I developed a set of Ygdrasil nodes that allow a single OpenFlight file to be segmented and augmented with behaviors while preserving overall scene composition.

Scene Composition
Applications such as Multigen Creator and Maya are excellent tools for composing the look of a 3D scene. However, these scenes usually have to be broken up into individual model files and repositioned within a vritual world when they need to establish interaction areas or be rotated about their own origin. Mutigen is unique because it is tightly intergrated with the SGI OpenGL Performer rendering library and allows grouping and transform nodes to be added to a 3D scene. The Performer file loader can be configured to preserve these grouping and transform nodes when loading OpenFlight files.
Multigen Creator allows you to add a) named grouping nodes and b) degree-of-freedom (DOF) nodes that are preserved when OpenGL Performer loads an openFlight file.
Multigen Creator

Ygdrasil Scene
Ygdrasil Scenes
The fltObject and fltTransform nodes allow a Ygdrasil scene to load a single OpenFlight (flt) file and create object subgraphs and transforms respectively. In the Ygdrasil example above, the subgraph representing the fountain has been pruned from the myPlaza OpenFlight file and placed below a level-of-detail node. The file also includes a subgraph representing the sky that has been transformed from the origin. In the example above, the sky object is made to rotate about the position defined by the skyDCS transform by a Ygdrasil timer node.

RELATED LINKS

The Ygdrasil website.
Ygdrasil documentation for the fltObject and fltTransform nodes.
The original project documentation site with example code.

MORE DETAILS

Static Transforms
Multigen allows both dynamic and static transforms to be created in the scene hierarchy. Both can be accessed in a Ygdrasil scene graph using the fltTransform node. The object in question should first be moved to the origin in order to establish its local origin. Because Multigen allows you to interactively move them back to their location within the scene, static transforms added above an object are preferred.
A dynamic transform a) has to be setup manually, while a static transform b) can be assigned its values through the interactive process described below.
Dynamic vs. Static

1) Insert Transform 2) Move Object
Select a) insert transform from the manuever tool dialog. Choose b) "Add Before" and OK to insert a transform above the currently selected node in the hierarchy. Select a) move object from the manuever tool dialog. Choose b) "To Point" to initiate the move procedure.
3) Position Object 4) Inspect Transform
Click a) on the new location in the scene and then b) press the OK button to finish the object placement. Check the final position of the object by a) clicking again on the transform icon in the dialog. The transform dialog b) allows you to view and edit the resulting translation.