Murl Engine Lua Addon API  Version 1.0 beta
Animation

A collection of system-wide constant enumerations.

All enumerations can be accessed by a corresponding Enum accessor.


Group members

Enumerations


Interpolation

Predefined interpolation curves (easing functions).

Murl.IEnums.INTERPOLATION_CONSTANTConstant y=0
Murl.IEnums.INTERPOLATION_LINEARLinear y=x
Murl.IEnums.INTERPOLATION_EASE_INEase (cubic) "in" EaseIn(x)=x^3, y=EaseIn(x)
Murl.IEnums.INTERPOLATION_EASE_OUTEase (cubic) "out" y=1-EaseIn(1-x)
Murl.IEnums.INTERPOLATION_EASE_IN_OUTEase (cubic) "in-out" y=(x < 0.5) ? EaseIn(2*x)/2 : 1-EaseIn(2-2*x)/2
Murl.IEnums.INTERPOLATION_EASE_OUT_INEase (cubic) "out-in" y=4*EaseIn(x-0.5)+0.5
Murl.IEnums.INTERPOLATION_SMOOTHSTEP_INSmoothstep "in" y=SmoothstepInOut(x/2)*2
Murl.IEnums.INTERPOLATION_SMOOTHSTEP_OUTSmoothstep "out" y=SmoothstepInOut((x+1)/2)*2-1
Murl.IEnums.INTERPOLATION_SMOOTHSTEP_IN_OUTSmoothstep "in-out" SmoothstepInOut(x)=(x^2)*(3-2*x), y=SmoothstepInOut(x)
Murl.IEnums.INTERPOLATION_SMOOTHSTEP_OUT_INSmoothstep "out-in" y=(x < 0.5) ? SmoothstepInOut(x+0.5)-0.5 : SmoothstepInOut(x-0.5)+0.5
Murl.IEnums.INTERPOLATION_SMOOTHERSTEP_INSmootherstep "in" y=SmootherstepInOut(x/2)*2
Murl.IEnums.INTERPOLATION_SMOOTHERSTEP_OUTSmootherstep "out" y=SmootherstepInOut((x+1)/2)*2-1
Murl.IEnums.INTERPOLATION_SMOOTHERSTEP_IN_OUTSmootherstep "in-out" SmootherstepInOut(x)=(x^3)*(x*(6*x-15)+10), y=SmootherstepInOut(x)
Murl.IEnums.INTERPOLATION_SMOOTHERSTEP_OUT_INSmootherstep "out-in" y=(x < 0.5) ? SmootherstepInOut(x+0.5)-0.5 : SmootherstepInOut(x-0.5)+0.5
Murl.IEnums.INTERPOLATION_EASE_QUART_INEase Quart "in" EaseQuartIn(x)=x^4, y=EaseQuartIn(x)
Murl.IEnums.INTERPOLATION_EASE_QUART_OUTEase Quart "out" y=1-EaseQuartIn(1-x)
Murl.IEnums.INTERPOLATION_EASE_QUART_IN_OUTEase Quart "in-out" y=(x < 0.5) ? EaseQuartIn(2*x)/2 : 1-EaseQuartIn(2-2*x)/2
Murl.IEnums.INTERPOLATION_EASE_QUART_OUT_INEase Quart "out-in" y=(x < 0.5) ? 0.5-EaseQuartIn(1-2*x)/2 : 0.5+EaseQuartIn(2*x-1)/2
Murl.IEnums.INTERPOLATION_EASE_EXPONENTIAL_INEase Exponential "in" EaseExponentialIn(x)=(2^8x)*x/256, y=EaseExponentialIn(x)
Murl.IEnums.INTERPOLATION_EASE_EXPONENTIAL_OUTEase Exponential "out" y=1-EaseExponentialIn(1-x)
Murl.IEnums.INTERPOLATION_EASE_EXPONENTIAL_IN_OUTEase Exponential "in-out" y=(x < 0.5) ? EaseExponentialIn(2*x)/2 : 1-EaseExponentialIn(2-2*x)/2
Murl.IEnums.INTERPOLATION_EASE_EXPONENTIAL_OUT_INEase Exponential "out-in" y=(x < 0.5) ? 0.5-EaseExponentialIn(1-2*x)/2 : 0.5+EaseExponentialIn(2*x-1)/2
Murl.IEnums.INTERPOLATION_EASE_CIRCULAR_INEase Circular "in" y=1-sqrt(1-x^2)
Murl.IEnums.INTERPOLATION_EASE_CIRCULAR_OUTEase Circular "out" y=sqrt((2-x)*x)
Murl.IEnums.INTERPOLATION_EASE_CIRCULAR_IN_OUTEase Circular "in-out" y=(x < 0.5) ? 0.5-EaseCircularHelper(x+0.5) : 0.5+EaseCircularHelper(x-0.5)
Murl.IEnums.INTERPOLATION_EASE_CIRCULAR_OUT_INEase Circular "out-in" EaseCircularHelper(x)=sqrt(x-x^2), y=(x < 0.5) ? EaseCircularHelper(x) : 1-EaseCircularHelper(x)
Murl.IEnums.INTERPOLATION_EASE_BACK_INEase Back "in" EaseBackIn(x)=(x^3)-x*sin(x*PI), y=EaseBackIn(x)
Murl.IEnums.INTERPOLATION_EASE_BACK_OUTEase Back "out" y=1-EaseBackIn(1-x)
Murl.IEnums.INTERPOLATION_EASE_BACK_IN_OUTEase Back "in-out" y=(x < 0.5) ? EaseBackIn(2*x)/2 : 1-EaseBackIn(2-2*x)/2
Murl.IEnums.INTERPOLATION_EASE_BACK_OUT_INEase Back "out-in" y=(x < 0.5) ? 0.5-EaseBackIn(1-2*x)/2 : 0.5+EaseBackIn(2*x-1)/2
Murl.IEnums.INTERPOLATION_EASE_ELASTIC_INEase Elastic "in" EaseElasticIn(x)=sin(13*PI/2*x)*2^(10*(x-1)), y=EaseElasticIn(x)
Murl.IEnums.INTERPOLATION_EASE_ELASTIC_OUTEase Elastic "out" y=1-EaseElasticIn(1-x)
Murl.IEnums.INTERPOLATION_EASE_ELASTIC_IN_OUTEase Elastic "in-out" y=(x < 0.5) ? EaseElasticIn(2*x)/2 : 1-EaseElasticIn(2-2*x)/2
Murl.IEnums.INTERPOLATION_EASE_ELASTIC_OUT_INEase Elastic "out-in" y=(x < 0.5) ? 0.5-EaseElasticIn(1-2*x)/2 : 0.5+EaseElasticIn(2*x-1)/2
Murl.IEnums.INTERPOLATION_EASE_BOUNCE_INEase Bounce "in" three and a halve growing bounces
Murl.IEnums.INTERPOLATION_EASE_BOUNCE_OUTEase Bounce "out" a halve and three shrinking bounces
Murl.IEnums.INTERPOLATION_EASE_BOUNCE_IN_OUTEase Bounce "in-out" combined in-out bounces
Murl.IEnums.INTERPOLATION_EASE_BOUNCE_OUT_INEase Bounce "out-in" combined out-in bounces
Murl.IEnums.NUM_INTERPOLATIONS
Murl.IEnums.INTERPOLATION_HERMITE_EASE_INDeprecated, equal to IEnums::INTERPOLATION_SMOOTHSTEP_IN
Murl.IEnums.INTERPOLATION_HERMITE_EASE_OUTDeprecated, equal to IEnums::INTERPOLATION_SMOOTHSTEP_OUT
Murl.IEnums.INTERPOLATION_HERMITE_EASE_IN_OUTDeprecated, equal to IEnums::INTERPOLATION_SMOOTHSTEP_IN_OUT
Murl.IEnums.INTERPOLATION_HERMITE_EASE_OUT_INDeprecated, equal to IEnums::INTERPOLATION_SMOOTHSTEP_OUT_IN

AluOperation

Arithmetic/logic operations.

Murl.IEnums.ALU_OPERATION_COPYCopy
Murl.IEnums.ALU_OPERATION_REPLACEReplace
Murl.IEnums.ALU_OPERATION_ADDAddition
Murl.IEnums.ALU_OPERATION_SUBTRACTSubtraction other - this
Murl.IEnums.ALU_OPERATION_SUBTRACT_REVERSESubtraction this - other
Murl.IEnums.ALU_OPERATION_MULTIPLYMultiplication
Murl.IEnums.ALU_OPERATION_DIVIDEDivision other / this
Murl.IEnums.ALU_OPERATION_DIVIDE_REVERSEDivision this / other
Murl.IEnums.ALU_OPERATION_MAPMap input values to output values
Murl.IEnums.ALU_OPERATION_MAP_CLAMPEDMap input values to output values with clamping
Murl.IEnums.ALU_OPERATION_LESS
Murl.IEnums.ALU_OPERATION_LESS_OR_EQUAL
Murl.IEnums.ALU_OPERATION_GREATER
Murl.IEnums.ALU_OPERATION_GREATER_OR_EQUAL
Murl.IEnums.ALU_OPERATION_EQUAL
Murl.IEnums.ALU_OPERATION_NOT_EQUAL
Murl.IEnums.ALU_OPERATION_NEGATE
Murl.IEnums.ALU_OPERATION_INVERT
Murl.IEnums.ALU_OPERATION_AND
Murl.IEnums.ALU_OPERATION_OR
Murl.IEnums.ALU_OPERATION_XOR
Murl.IEnums.NUM_ALU_OPERATIONS

AnimationState

Animation states, e.g. for timelines.

Murl.IEnums.ANIMATION_STATE_STOPPEDAnimation is stopped.
Murl.IEnums.ANIMATION_STATE_PAUSEDAnimation is paused.
Murl.IEnums.ANIMATION_STATE_RUNNING_FORWARDAnimation is running forward.
Murl.IEnums.ANIMATION_STATE_RUNNING_BACKWARDAnimation is running backward.
Murl.IEnums.NUM_ANIMATION_STATES

AnimationKey

Available predefined resource animation keys (bit mask).

Murl.IEnums.ANIMATION_KEY_NONENo key.
Murl.IEnums.ANIMATION_KEY_ACTIVEControls Graph::ITraversable::SetActive().
Murl.IEnums.ANIMATION_KEY_VISIBLEControls Graph::ITraversable::SetVisible().
Murl.IEnums.ANIMATION_KEY_INDEXIndex animation key, for e.g. Graph::ISwitch or Graph::IPlaneSequenceGeometry.
Murl.IEnums.ANIMATION_KEY_DEPTH_ORDERDepth order animation key, for Graph::ITransformable::SetDepthOrder().
Murl.IEnums.ANIMATION_KEY_ALPHAAlpha component.
Murl.IEnums.ANIMATION_KEY_VOLUMESound volume, e.g. for Graph::IAudible.
Murl.IEnums.ANIMATION_KEY_TIMETime value.
Murl.IEnums.ANIMATION_KEY_AMBIENT_COLORAmbient color, for e.g. Graph::IColored.
Murl.IEnums.ANIMATION_KEY_DIFFUSE_COLORDiffuse color, for e.g. Graph::IColored.
Murl.IEnums.ANIMATION_KEY_SPECULAR_COLORSpecular color, for e.g. Graph::IColored.
Murl.IEnums.ANIMATION_KEY_EMISSIVE_COLOREmissive color, for e.g. Graph::IColored.
Murl.IEnums.ANIMATION_KEY_POSITIONPosition key, for Graph::ITransformable:
Murl.IEnums.ANIMATION_KEY_ROTATIONRotation key, for Graph::ITransformable:
Murl.IEnums.ANIMATION_KEY_SCALEScaling key, for Graph::ITransformable:
Murl.IEnums.ANIMATION_KEY_BLEND_FACTORBlend factor key, for Graph::IBlendable:
Murl.IEnums.ANIMATION_KEY_ALLAll keys combined.

Waveform

Wave forms.

Murl.IEnums.WAVEFORM_NONENo waveform.
Murl.IEnums.WAVEFORM_CONSTANTConstant waveform, i.e. flat line.
Murl.IEnums.WAVEFORM_SINESine wave, in the range [-1,+1].
Murl.IEnums.WAVEFORM_TRIANGLETriangle wave, in the range [0,+1].
Murl.IEnums.WAVEFORM_SAWTOOTHSaw tooth wave, in the range [0,+1].
Murl.IEnums.WAVEFORM_RECTANGLERectangular wave, in the range [0,+1].
Murl.IEnums.WAVEFORM_NOISENoise, in the range [-1,+1].
Murl.IEnums.NUM_WAVEFORMS

TriggerCondition

Trigger conditions.

Murl.IEnums.TRIGGER_CONDITION_NONENo trigger.
Murl.IEnums.TRIGGER_CONDITION_CLIP_FINISHEDImmediate trigger
Murl.IEnums.TRIGGER_CONDITION_LOOP_FINISHEDExpiration trigger
Murl.IEnums.TRIGGER_CONDITION_VARIABLEVariable trigger
Murl.IEnums.TRIGGER_CONDITION_ALLAll triggers combined.

BlendReference

Blending reference types.

Murl.IEnums.BLEND_REFERENCE_UNDEFINEDUndefined blend reference.
Murl.IEnums.BLEND_REFERENCE_NONENo blend reference,
Murl.IEnums.BLEND_REFERENCE_IDENTITYUse the identity as reference.
Murl.IEnums.BLEND_REFERENCE_SUMUse the sum of previous blend operations as reference.
Murl.IEnums.BLEND_REFERENCE_FIRST_WEIGHTEDUse the first blend target with non-zero weight as reference, without actually considering its weight.
Murl.IEnums.BLEND_REFERENCE_FIRST_UNWEIGHTEDUse the first blend target with non-zero weight as reference, considering its weight.
Murl.IEnums.NUM_BLEND_REFERENCES

BlendDirection

Blending directions.

Murl.IEnums.BLEND_DIRECTION_UNDEFINEDUndefined blend direction.
Murl.IEnums.BLEND_DIRECTION_ARBITRARYBlend in arbitrary direction.
Murl.IEnums.BLEND_DIRECTION_SHORTESTBlend the shortest way, considering a given blend reference.
Murl.IEnums.BLEND_DIRECTION_LONGESTBlend the longest way, considering a given blend reference.
Murl.IEnums.NUM_BLEND_DIRECTIONS