FlexiMotion.dll Assembly

Class Types

Class Summary
AccelerationModifier A FlexiMotion.Modifiers.FlexiMotionModifier which accelerates the simulated objects.
AverageFrameRateBenchmark A simble benchmark which records the average frame rate of an instances prefab over time.
ComponentSingleton<T> A simple singleton for UnityEngine.Component types.
CustomSceneGui [Editor-Only] A wrapper for UnityEditor.SceneView.duringSceneGui.
DistanceBasedUpdateRateModifier A FlexiMotion.Modifiers.FlexiMotionModifier which modifies the FlexiMotion.FlexiMotionRuntime.UpdatesPerSecond based on distance to a target object.
DistanceBasedUpdateRateModifier.Editor A custom editor for FlexiMotion.Modifiers.DistanceBasedUpdateRateModifier.
EditableFieldDrawer [Editor-Only] A UnityEditor.PropertyDrawer which adds an "Edit" button to a field.
FlexiMotionComponent The main component in FlexiMotion.FlexiMotionComponent which holds the core FlexiMotion.FlexiMotionDefinition and turns it into a FlexiMotion.FlexiMotionRuntime to run the simulation.
FlexiMotionDefinition [System.SerializableAttribute] Data from which a FlexiMotion.FlexiMotionRuntime can be initialized.
FlexiMotionEditor [Editor-Only] A custom editor for FlexiMotion.FlexiMotionComponent components.
FlexiMotionModifier A component which modifies the behaviour of FlexiMotion.FlexiMotionComponent.
FlexiMotionReadMe [Editor-Only] A welcome screen for FlexiMotion.FlexiMotionComponent.
FlexiMotionRuntime Manages the was the FlexiMotion.FlexiMotionRuntime.RuntimeSprings simulation is updates.
FlexiMotionRuntimeTransfer A utility for re-initializing a FlexiMotion.FlexiMotionRuntime from a different FlexiMotion.FlexiMotionDefinition.
FMEditorGUI [Editor-Only] GUI utilities used throughout FlexiMotion.FlexiMotionComponent.
FMEditorUtilities [Editor-Only] Utilities used throughout FlexiMotion.FlexiMotionComponent.
FMGUI [Editor-Only] GUI utilities used throughout FlexiMotion.FlexiMotionComponent.
FMStrings Strings used throughout FlexiMotion.FlexiMotionComponent.
FMStrings.DocsURLs URLs of various documentation pages.
FMStrings.Tooltips Tooltips used throughout FlexiMotion.FlexiMotionComponent.
FMUtilities Utilities used throughout FlexiMotion.FlexiMotionComponent.
JobModifierGroup A group of job modifier functions.
JobScheduller A component which schedules jobs.
JobSchedullerEditor [Editor-Only] A custom editor for FlexiMotion.Jobs.JobScheduller components.
JobSchedullerFixedUpdate A FlexiMotion.Jobs.JobScheduller which runs its jobs in FlexiMotion.Jobs.JobSchedullerFixedUpdate.FixedUpdate using UnityEngine.Time.deltaTime.
JobSchedullerLateUpdate A FlexiMotion.Jobs.JobScheduller which runs its jobs in FlexiMotion.Jobs.JobSchedullerLateUpdate.LateUpdate using UnityEngine.Time.deltaTime.
JobSchedullerLateUpdateUnscaled A FlexiMotion.Jobs.JobScheduller which runs its jobs in FlexiMotion.Jobs.JobSchedullerLateUpdateUnscaled.LateUpdate using UnityEngine.Time.unscaledDeltaTime.
MouseDraggable Allows the user to drag an object with a collider around on screen with the mouse.
OrbitControls Simple mouse controls for orbiting the camera around a focal point.
PreWarmModifier A FlexiMotion.Modifiers.FlexiMotionModifier which immediately updates the simulation several times on startup.
ReadMe [Editor-Only] A welcome screen for an asset.
ReadMe.Editor [Editor-Only] A custom Inspector for FlexiMotion.Editor.ReadMe.
ReadMe.Editor.Styles Various UnityEngine.GUIStyles used by the FlexiMotion.Editor.ReadMe.Editor.
ReadMe.LinkSection A heading with a link to be displayed in the Inspector.
RuntimeSphereColliders The runtime job manager of FlexiMotion.Modifiers.SphereCollidersModifier.
RuntimeSprings Manages jobs that execute a spring simulation.
SampleInput
ScaleModifier A FlexiMotion.Modifiers.FlexiMotionModifier which accounts for scaled objects.
SimulationRootModifier A FlexiMotion.Modifiers.FlexiMotionModifier which alters the simulation to be in an object's local-space instead of in world-space.
SphereColliderDefinitions [System.SerializableAttribute] Data from which a FlexiMotion.Modifiers.RuntimeSphereColliders can be initialized.
SphereColliderDefinitionsBuilder A utility for building FlexiMotion.Modifiers.SphereColliderDefinitions.
SphereColliderDefinitionsDrawer [Editor-Only] A UnityEditor.PropertyDrawer for FlexiMotion.Modifiers.SphereColliderDefinitions fields.
SphereColliderDefinitionsWindow An FlexiMotion.Editor.TransformTreeWindow`2 for editing sphere colliders.
SphereColliderHandle [Editor-Only] A custom transform gizmo for sphere colliders because they don't have an actual UnityEngine.Transform.
SphereCollidersModifier A FlexiMotion.Modifiers.FlexiMotionModifier which applies collisions against sphere colliders.
SphereCollidersModifierEditor [Editor-Only] A custom editor for FlexiMotion.Modifiers.SphereCollidersModifier components.
SphereColliderVisualiser A FlexiMotion.Editor.SphereVisualiser for FlexiMotion.Modifiers.SphereColliderDefinitions.
SphereVisualiser A FlexiMotion.Editor.CustomSceneGui for spheres.
SpringDefinitions [System.SerializableAttribute] Defines the core details for a spring simulation.
SpringDefinitionsBuilder A utility for building FlexiMotion.SpringDefinitions.
SpringDefinitionsDrawer [Editor-Only] A UnityEditor.PropertyDrawer for FlexiMotion.SpringDefinitions fields.
SpringDefinitionsWindow An FlexiMotion.Editor.TransformTreeWindow`2 for editing spring definitions.
SpringVisualiser A FlexiMotion.Editor.SphereVisualiser for FlexiMotion.SpringDefinitions.
TransformTreeView A UnityEditor.IMGUI.Controls.TreeView for displaying UnityEngine.Transforms alongside other data.
TransformTreeWindow<TTarget, TDefinition>
WindModifier An FlexiMotion.Modifiers.AccelerationModifier which randomizes its FlexiMotion.Modifiers.AccelerationModifier.Acceleration every frame and can apply temporary gusts.

Enum Types

Enum Summary
ActionOnDisable An action to perform when disabling a FlexiMotion.FlexiMotionComponent component.

Interface Types

Interface Summary
IComponent Interface for UnityEngine.Component.
ICopyable<T> Interface for objects that can be copied.
IFlexiMotionComponent The main component in FlexiMotion.FlexiMotionComponent which holds the core FlexiMotion.FlexiMotionDefinition and turns it into a FlexiMotion.FlexiMotionRuntime to run the simulation.
IFlexiMotionModifier An object which modifies the behaviour of FlexiMotion.FlexiMotionComponent.
IJobSource An object which can schedule a job with a given `deltaTime` value.
IOnValidate Interface for objects with an FlexiMotion.IOnValidate.OnValidate method.
ISphereCollidersModifier A FlexiMotion.Modifiers.FlexiMotionModifier which applies collisions against sphere colliders.
ITransformTreeViewSource An object that provides data to a FlexiMotion.Editor.TransformTreeView.
IValidatable An object with a FlexiMotion.IValidatable.Validate method.
JobModifierGroup.IOnInitialize A job modifier which runs when the simulation is initialized.
JobModifierGroup.IOnReEnable 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).
JobModifierGroup.IOnUpdate A job modifier which runs after each iteration of an update.
JobModifierGroup.IPostUpdate A job modifier which runs after all iterations of an update.
JobModifierGroup.IPreUpdate A job modifier which runs at the start of an update.

Struct Types

Struct Summary
ApplyRotationsJob A job which sets UnityEngine.Jobs.TransformAccess.localRotation.
ApplyTailPositionsJob A job which uses tail details to set UnityEngine.Jobs.TransformAccess.rotation.
DirectionLength A vector decomposed into FlexiMotion.DirectionLength.Direction and FlexiMotion.DirectionLength.Length.
ExtractRotationsJob A job which gets world rotations out of a UnityEngine.Jobs.TransformAccess.
Float3OffsetJob A job which adds an FlexiMotion.Jobs.Float3OffsetJob.offset to FlexiMotion.Jobs.Float3OffsetJob.values.
LocalToWorldPositionsJob A job which converts local positions to world positions.
OnIndexRemovedJob A job which adjusts UnityEngine.BoneWeight1.boneIndex as appropriate for a removed bone.
RecenterSpringsJob A job which resets transforms and tail positions to their starting values without affecting their velocity.
ResetSpringsJob A job which resets transforms and tail positions to their starting values.
ScaleValues1Job A job which scales values by the largest axis of object's scales.
ScaleValues2Job A job which scales values by the largest axis of object's scales.
SphereCollidersJob A job which pushes transforms out of sphere colliders.
SphereDefinition
SphereHandle A wrapper for drawing spheres in the scene view.
SpringDetails [System.SerializableAttribute] Parameters for a spring.
SpringSimulationJob A job which simulates the behaviour of springs.
TransformPositionsJob A job which multiplies positions by a matrix.