SimulationRootModifier Class

Summary

A FlexiMotion.Modifiers.FlexiMotionModifier which alters the simulation to be in an object's local-space instead of in world-space.
graph BT Type-->Base0["FlexiMotionModifier"] click Base0 "/flexi-motion/api/FlexiMotion.Modifiers/FlexiMotionModifier" Base0-->Base1["MonoBehaviour"] Type-.->Interface0["IFlexiMotionModifier"] click Interface0 "/flexi-motion/api/FlexiMotion.Modifiers/IFlexiMotionModifier" Type-.->Interface1["IOnValidate"] click Interface1 "/flexi-motion/api/FlexiMotion/IOnValidate" Type-.->Interface2["JobModifierGroup.IOnReEnable"] click Interface2 "/flexi-motion/api/FlexiMotion.Modifiers/IOnReEnable" Type-.->Interface3["JobModifierGroup.IPreUpdate"] click Interface3 "/flexi-motion/api/FlexiMotion.Modifiers/IPreUpdate" Type-.->Interface4["JobModifierGroup.IPostUpdate"] click Interface4 "/flexi-motion/api/FlexiMotion.Modifiers/IPostUpdate" Type["SimulationRootModifier"] class Type type-node

Syntax

[AddComponentMenu(FMStrings.ModifiersMenuPrefix + "Simulation Root Modifier")]
[HelpURL(FMStrings.DocsURLs.ModifiersAPIDocumentation + "/" + nameof(SimulationRootModifier))]
public class SimulationRootModifier : FlexiMotionModifier, IFlexiMotionModifier, IOnValidate, 
    JobModifierGroup.IOnReEnable, JobModifierGroup.IPreUpdate, JobModifierGroup.IPostUpdate

Attributes

Type Description
AddComponentMenu
HelpURLAttribute

Fields

Name Constant Value Summary
PostExecutionTime 10000
FlexiMotion.Modifiers.SimulationRootModifier.PreUpdate(Unity.Jobs.JobHandle) before anything else and FlexiMotion.Modifiers.SimulationRootModifier.PostUpdate(Unity.Jobs.JobHandle) after.
static
PreExecutionTime -10000
FlexiMotion.Modifiers.SimulationRootModifier.PreUpdate(Unity.Jobs.JobHandle) before anything else and FlexiMotion.Modifiers.SimulationRootModifier.PostUpdate(Unity.Jobs.JobHandle) after.
static
TargetFieldName _Target
The name of the serialized backing field of FlexiMotion.Modifiers.FlexiMotionModifier.Target.
Inherited from FlexiMotionModifier
static

Properties

Name Value Summary
DeltaTime float
The FlexiMotion.FlexiMotionRuntime.DeltaTime.
Inherited from FlexiMotionModifier
SimulationRoot Transform
Inertia is simulated in this object's local-space. If not set, simulation will be done in world-space.
Target FlexiMotionComponent
Inherited from FlexiMotionModifier

Methods

Name Value Summary
Awake() void
Initializes this modifier.
Disable(JobModifierGroup) bool
Registers this modifier in the given FlexiMotion.Modifiers.JobModifierGroup.
Enable(JobModifierGroup) void
Registers this modifier in the given FlexiMotion.Modifiers.JobModifierGroup.
GetUsedBones() IEnumerable<Transform>
Returns the objects that are used by this modifier.
OnDisable() void
Calls FlexiMotion.Modifiers.FlexiMotionModifier.Disable(FlexiMotion.Modifiers.JobModifierGroup) if the FlexiMotion.Modifiers.FlexiMotionModifier.Target is set.
Inherited from FlexiMotionModifier
OnEnable() void
Calls FlexiMotion.Modifiers.FlexiMotionModifier.Enable(FlexiMotion.Modifiers.JobModifierGroup) if the FlexiMotion.Modifiers.FlexiMotionModifier.Target is set.
Inherited from FlexiMotionModifier
OnReInitialize(JobHandle) JobHandle
A job modifier which runs when the simulation is enabled again after having previously been disabled (i.e. not the first time it's enabled after being created).
OnValidate() void
Tries to find a FlexiMotion.Modifiers.FlexiMotionModifier.Target if none was assigned.
PostUpdate(JobHandle) JobHandle
A job modifier which runs after all iterations of an update.
PreUpdate(JobHandle) JobHandle
A job modifier which runs at the start of an update.

Extension Methods

Name Value Summary
LogTemp<SimulationRootModifier>(Object) T
Debug.Log(message, context) with an [System.ObsoleteAttribute] warning so you remember to remove any calls.
SafeGetHashCode<SimulationRootModifier>() int
Uses System.Collections.Generic.EqualityComparer`1.Default to get a hash code.