SceneGraphNode¶
-
class
guerilla.
SceneGraphNode
¶ Bases:
guerilla.HostNode
Base class of all the objects that can be stored in the scene graph like primitives and groups
-
FreezeTransform
¶ Indicate if the SceneGraphNode’s parameters are to be frozen
Type: types.bool
-
Hidden
¶ The visibility state.
If true, the primitive and its children are hidden from all the layers, the shadow maps and the trace sets.
Type: bool
-
HierarchyMode
¶ Indicates the transform mode of the node (local, world as PRMan, Maya or Max)
Type: types.enum
-
Instances
¶ The dpendencies on instanced SceneGraphNodes
Type: None
-
InvWBounds
¶ Invalidated when the world transform and/or bounds of the object has changed.
This plug is used to invalidate data the depends on the hierarchy rendering aspect. Notably, this plug is invalidated whenever a parent or child has its own InvWBounds invalidated.
Type: None
-
IsHidden
¶ The visibility state. This plug tells if this node is visible, regarding its state and the state of its parents.
Type: bool
-
Mermbership
¶ The list of tags the node owns
Type: types.string
-
RibAttributes
¶ The dependency on the additional Rib Attributes to be assigned
Type: None
-
Transform
¶ The SceneGraphNode’s local to world transform
Type: transform
-
createinstance
(instance)¶ Create an instance at this node
Parameters: instance ( SceneGraphNode
) – The SceneGraphNode to instanciate
-
static
displayrenderattribute
(category, name, show)¶ Enable/disable the display of a specific attribute in the properties
This function returns the attribute definition in the given category. Note thatnot all values in the attribute can be overloaded.
param category: The name of the attribute category type category: str param name: The name of the attribute, either its renderer name, or display name or its plug name type name: str param show: Whether the attribute is displayed or not type show: bool
-
fillanimationtemplate
(template)¶ Fill a template table with the “Animation” attributes
Parameters: template (table) – The template table to fill
-
fillarealighttemplate
(template)¶ Fill a template table with the “Area Light” attributes
Parameters: template (table) – The template table to fill
-
fillcurvestemplate
(template)¶ Fill a template table with the “Curves” attributes
Parameters: template (table) – The template table to fill
-
fillgeometrytemplate
(template)¶ Fill a template table with the “Geometry” attributes
Parameters: template (table) – The template table to fill
-
filllinkingtemplate
(template)¶ Fill a template table with the “Linking” attributes
Parameters: template (table) – The template table to fill
-
fillopengltemplate
(template)¶ Fill a template table with the “OpenGL” attributes
Parameters: template (table) – The template table to fill
-
fillparticlestemplate
(template)¶ Fill a template table with the “Particles” attributes
Parameters: template (table) – The template table to fill
-
fillraytracingtemplate
(template)¶ Fill a template table with the “Raytracing” attributes
Parameters: template (table) – The template table to fill
-
fillsamplingtemplate
(template)¶ Fill a template table with the “Sampling” attributes
Parameters: template (table) – The template table to fill
-
fillscenenodetemplate
(template)¶ Fill a template table with the “Primitive” attributes
Parameters: template (table) – The template table to fill
-
fillshadertemplate
(template)¶ Fill a template table with the “Surface” attributes
Parameters: template (table) – The template table to fill
-
fillshadingtemplate
(template)¶ Fill a template table with the “Shading” attributes
Parameters: template (table) – The template table to fill
-
fillsubdivtemplate
(template)¶ Fill a template table with the “Subdivision” attributes
Parameters: template (table) – The template table to fill
-
filltransformtemplate
(template)¶ Fill a template table with the “Transform” attributes
Parameters: template (table) – The template table to fill
-
fillvolumetrictemplate
(template)¶ Fill a template table with the “Volumetric” attributes
Parameters: template (table) – The template table to fill
-
flatteninstance
(name)¶ Flatten an instance by name, or all instances if name is nil
Parameters: name (str or None) – The instance name to flatten
-
getmatrix
()¶ Returns the node’s first transform matrix.
Returns the node’s first transform matrix. Note that the result is possibly only a part of the whole node transform. The matrix is given in the space of the node, that is is either local or world, depending on the HierarchyMode plug value.
Returns: The node matrix Return type: matrix
-
getparentworldmatrix
()¶ Returns the exclusive world matrix of the node
Returns: The parent world matrix Return type: matrix
-
getparentworldtransform
()¶ Returns the exclusive world transform of the node
Returns: The parent world transform Return type: transform
-
getposition
()¶ Returns the node’s position.
Returns the node’s position. Note that the result is possibly only a part of the whole node transform. The position is given in the space of the node, that is is either local or world, depending on the HierarchyMode plug value.
Returns: The node position Return type: point3
-
static
getrenderattributedefinition
(category, name)¶ Lookup the render attributes definition by for a category and aan attribute name
This function returns the attribute definition in the given category.
Parameters: Returns: The attribute definition
Return type: table
-
static
getrenderattributes
(path, origin)¶ Get the rendering attributes of a node/path
>>> result = guerilla.SceneGraphNode.getrenderattributes ("Group|Object", False) >>> attributes = result['attributes'] >>> for name, value in attributes.iteritems (): ... if isinstance (value, guerilla.subshader): ... print (name, value.getname ()) ... for k, v in value.getparameters ().iteritems (): ... print (k, v) ... else: ... print (name, value)
Parameters: Returns: The resulting attributes
Return type: dictionary
-
getsgparent
()¶ Returns the node’s hierarchical parent.
This method returns the parent SceneGraphNode in case the parent is not a SceneGraphNode.For instance, ShaderNodeGizmo may be contained in a ShaderNodeMacro, which is not a SceneGraphNode.
return: The node parent rtype: SceneGraphNode
-
gettransform
()¶ Return the top
Transform
node of the transform stack of thisSceneGraphNode
or this if the stack is emptyReturn type: Node
-
getworldmatrix
()¶ Returns the node’s world transform first matrix.
Returns: The node world matrix Return type: matrix
-
getworldposition
()¶ Returns the node’s world position.
Returns: The node world position Return type: point3
-
getworldtolocalmatrix
()¶ Returns the inverse of the world matrix
Returns: The node world to local matrix Return type: matrix
-
getworldtolocaltransform
()¶ Returns the inverse of the world transform
Returns: The node world to local transform Return type: transform
-
getworldtransform
()¶ Returns the node’s world transform.
Returns: The node transform Return type: transform
-
isinstance
(path)¶ Returns true if the given path contains an instance
Parameters: path (str) – The path from this node
-
isleafinstance
(path)¶ Returns true if the lath item of the path is an instance
Parameters: path (str) – The path from this node
List children nodes (include self) that have specified tags
Available arguments:
Parameters: tags (str or {string}) – The tag or list of tags to check Returns: The list of SceneGraphNode
that have this tag.Return type: { SceneGraphNode
}or
Parameters: tags (str or {string}) – The tags to match, as a list of string or a single string to match a single tag Returns: The list of SceneGraphNode
children that share the input tagsReturn type: { SceneGraphNode
}
-
static
listrenderattributes
()¶ Get the list of available render attributes
This function returns a dictionary of categories of attributes,each category is a list of attributes.
-
removeinstance
(path)¶ Remove an instance
Parameters: path (The) – path to the instance
-
setmatrix
(m)¶ Set the local matrix of the node
Parameters: m ( matrix
) – The new local matrix of the node
-
static
setrenderattributeproperty
(category, name, property, value)¶ Set a render attribute property
The following properties can be modified:ptysheet: bool, the attribute is displayed in the property sheet
param category: The name of the attribute category type category: str param name: The name of the attribute, either its renderer name, or display name or its plug name type name: str param property: The name of the attribute property to set type property: str param value: The value of the attribute property to set type value: any
-
setworldmatrix
(world)¶ Set the world matrix of the node
Parameters: world ( matrix
) – The new world matrix of the node
-
setworldposition
(position)¶ Set the world position of the node, leaving the rest of the transform unchanged
Parameters: position ( point3
) – The new world position of the node
-
traverse
(map, *args)¶ Traverse the hierarchy and call a map function on every node
Parameters: - map (function) – a function called at every node of the hierarchy
- *args –
optional parameters given back to the map function
-
traverserender
(traversal, *args)¶ Traverse the hierarchy with a traversal object
The traverserender method calls the traversal traverse method on each childand instance of this node. The traverse method of the traversal, in turn, can call the traverserender on the passed node.
-