Murl Engine Lua Addon API  Version 1.0 beta
Murl.Graph.ILightTransform

The ILightTransform graph node interface.

A light node defined in the scene graph only defines the general parameters of a light in the virtual world; to be able to position and rotate the light, it is necessary to define an ILightTransform node that refers to a specific light. By separating a light from its transform, it is possible to already use a light before its actual world position and rotation are evaluated; this way, the light can be quickly attached as a child to e.g. a moving object that is supposed to be also influenced by that light.

See Graph::ILight for defining individual light sources and their group assignment.
See Graph::ILightState for activating lights for rendering.


Table members

Methods


GetNodeInterface()

Get the constant Graph::INode interface. This method returns a constant pointer to the node's Graph::INode interface, to be able to query common node properties such as active state, visibility or ID.

Murl.Graph.INode GetNodeInterface()

Returns
Murl.Graph.INode The constant Graph::INode interface, or null if not available

GetTransformInterface()

Get the constant Graph::ITransform interface. This method returns a constant pointer to the node's Graph::ITransform interface, to be able to query the node's transformation matrix and depth order.

Murl.Graph.ITransform GetTransformInterface()

Returns
Murl.Graph.ITransform The constant Graph::ITransform interface, or null if not available

GetLightNodeTarget()

Get the constant Graph::ILightNodeTarget container. This method returns a constant pointer to the node's Graph::ILightNodeTarget container, which allows to query the light this transform node refers to.

Murl.Graph.IGenericNodeTarget.GraphILight GetLightNodeTarget()

Returns
Murl.Graph.IGenericNodeTarget.GraphILight The mutable Graph::ILightNodeTarget container, or null if not available.

GetAnchorNodeTarget()

Get the constant Graph::IAnchorNodeTarget container for the target position. This method returns a constant pointer to the node's Graph::IAnchorNodeTarget container, which allows to query the referenced Graph::IAnchor node used as a view target.

Murl.Graph.IGenericNodeTarget.GraphIAnchor GetAnchorNodeTarget()

Returns
Murl.Graph.IGenericNodeTarget.GraphIAnchor The constant Graph::IAnchorNodeTarget container, or null if not available

SetUpVector(upVector)

Set the target anchor up vector. The up vector is used to orient the view when a target anchor node is given.

Boolean SetUpVector(Murl.Math.Vector upVector)

Parameters
upVectorThe up vector.
Returns
Boolean true if successful.

GetUpVector()

Get the target anchor up vector.

Murl.Math.Vector GetUpVector()

Returns
Murl.Math.Vector The up vector.