The class definitions for the internal nodes of the scene graph can be found in the VulkanSceneGraph/include/vsg/nodes directory. All scene graph nodes are subclassed from the vsg::Node base class. Examples that illustrate use of various node classes can be found in the vsgExamples/examples/nodes directory.
Node Base class
Class |
Header |
Functionality |
vsg::Node |
Node.h |
Node base class |
Group nodes
Class |
Header |
Functionality |
vsg::Group |
Group.h |
Group node |
vsg::QuadGroup |
QuadGroup.h |
QuadGroup is a fixed sized group for building high performance quad trees |
vsg::Switch |
Switch.h |
Switch node provides support for switching between children |
Culling nodes
Class |
Header |
Functionality |
vsg::CullGroup |
CullGroup.h |
Culling group that culls a bounding sphere against view frustum |
vsg::CullNode |
CullNode.h |
Culling node that culls a bounding sphere against view frustum |
vsg::LOD |
LOD.h |
Level of Detail node that culls based on projected size of bounding sphere |
vsg::PagedLOD |
PagedLOD.h |
Level of Detall node that has a low res child and high res child with file reference |
vsg::TileDatabase |
TileDatabase.h |
|
Class |
Header |
Functionality |
vsg::Transform |
Transform.h |
Transform base class for nodes that provide an interface for defining transforms of a subgraph |
vsg::MatrixTransform |
MatrixTransform.h |
Transform node that provides a 4x4 matrix to transform relative to parent coordinate frame |
vsg::AbsoluteTransform |
AbsoluteTransform.h |
Transform node that provides a 4x4 matrix that ignores parent coordinate frame to provide an absolute frame of reference |
Geometry nodes
Class |
Header |
Functionality |
vsg::Geometry |
Geometry.h |
General purpose geometry node, provides a list of arrays and list of draw commands |
vsg::VertexDraw |
VertexDraw.h |
High performance geometry node, provides a list of arrays and a single draw command |
vsg::VertexIndexDraw |
VertexIndexDraw.h |
High performance geometry node, provides a list of arrays, an index array and a single indexed draw command |
State nodes
Class |
Header |
Functionality |
vsg::StateGroup |
StateGroup.h |
State group node that provides a list of StateCommands to decorate a subgraph |
vsg::Light |
Light.h |
Light node provides all the settings for positioning a light source, and controlling its type and color |
Draw order control
Class |
Header |
Functionality |
vsg::Bin |
Bin.h |
Bin node provides a way of controlling the record order of its children |
vsg::DepthSorted |
DepthSorted.h |
Depth sorted node provides controls for depth sorting of its subgraph |