![]() |
Murl Engine Lua Addon API
Version 1.0 beta
|
The IClipTransition graph node interface.
Clip transition nodes must be defined as direct children of a node implementing the Graph::IClipSequencer interface, which is responsible for managing any transitions between those clips. See Graph::IClipSequencer and Graph::IClip.
A clip transition must always reference exactly two Graph::IClip nodes: one representing the "from" state and another one for the "to" state. See GetFromClipNodeTarget() and GetToClipNodeTarget().
When a transition is triggered, the given "from" node is blended out (towards a blend factor of 0.0). and the "to" node is synchronously blended in (towards 1.0), both with their respective duration and offset.
The actual trigger used to start a transition can be any combination of bits from the IEnums::TriggerCondition enumeration, set via SetTriggerConditionEnabled(). The following trigger types are available:
Note, that if a transition to a certain clip is started, and there is another transition for that new clip whose condition is true at the same moment, that transition gets also started at the same time. This means, that it is possible to chain transitions together without any delay. However, the same clip cannot be processed twice in the same tick, otherwise an infinite loop would occur. In such a case, the transition is delayed until the next tick.
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()
Enable/disable a given trigger condition.
Boolean SetTriggerConditionEnabled(Murl.IEnums.TriggerCondition condition, Boolean enabled)
condition | The condition to enable or disable |
enabled | If true, the given condition gets enabled. |
Check if a given trigger condition is enabled.
Boolean IsTriggerConditionEnabled(Murl.IEnums.TriggerCondition condition)
condition | The condition to check. |
Get the constant Graph::IVariableNodeTarget container referencing a trigger variable. This method returns a constant pointer to the node's Graph::IVariableNodeTarget container, which allows to query a reference to an optional trigger variable.
Murl.Graph.IGenericNodeTarget.GraphIVariable GetTriggerVariableNodeTarget()
Get the constant Graph::IClipNodeTarget container referencing the "from" clip. This method returns a constant pointer to the node's Graph::IClipNodeTarget container, which allows to query a reference to the "from" clip node.
Murl.Graph.IGenericNodeTarget.GraphIClip GetFromClipNodeTarget()
Get the constant Graph::IClipNodeTarget container referencing the "to" clip. This method returns a constant pointer to the node's Graph::IClipNodeTarget container, which allows to query a reference to the "to" clip node.
Murl.Graph.IGenericNodeTarget.GraphIClip GetToClipNodeTarget()
Set the duration of the "from" node's out transition.
Boolean SetOutDuration(Number duration)
duration | The duration in seconds. |
Get the duration of the "from" node's out transition.
Number GetOutDuration()
Set the out transition time offset.
Boolean SetOutOffset(Number offset)
offset | The offset in seconds, with positive values in the future. |
Get the out transition time offset.
Number GetOutOffset()
Set the duration of the "to" node's in transition.
Boolean SetInDuration(Number duration)
duration | The duration in seconds. |
Get the duration of the "to" node's in transition.
Number GetInDuration()
Set the in transition time offset.
Boolean SetInOffset(Number offset)
offset | The offset in seconds, with positive values in the future. |
Get the in transition time offset.
Number GetInOffset()