Namespace Unity.Kinematica
Classes
DataAttribute
Attribute used to annotate data types that are used as elements in the task graph.
DataType
Data types are identified by annotating a user-defined struct with the data attribute. All data types are collected at startup in the data type collection.
DebugDraw
Extensions
Static class that contains various extension methods.
InputAttribute
InputUtility
Kinematica
This component is a wrapper around the motion synthesizer.
OutputAttribute
PropertyAttribute
Attribute used to annotate task properties.
ReadExtensions
Static class that contains various extension methods that allow reading data types from a buffer.
TraitAttribute
Attribute used to annotate traits.
Utility
Static class that contains various extension methods.
WriteExtensions
Static class that contains various extension methods that allow writing data types to a buffer.
Structs
ActionTask
An action task acts as a grouping mechanism for tasks.
AnimationFrameDebugInfo
Informations about a played animation during one given frame that will feed the animation timeline in the snapshot debugger
Binary
Memory-ready runtime asset that contains the animation library and supplementary information required by the Kinematica runtime.
Binary.CodeBook
A codebook contains the necessary information to perform fast comparisons for poses and trajectories. Poses and trajectories can be compared separately.
Binary.CodeBook.Encoding
An encoding contains the necessary information to perform fast comparisons between fragments. Fragments represent either poses or trajectories and are automatically created for all animation frames the codebook covers.
Binary.CodeBookIndex
Denotes an index into the list of codebooks contained in the runtime asset.
Binary.Interval
An interval contains information about a sequence of animation frames that collectively share the same set of tags.
Binary.IntervalIndex
Denotes an index into the list of intervals contained in the runtime asset.
Binary.Marker
Markers are used to associate a trait to a single animation frame.
Binary.MarkerIndex
Denotes an index into the list of markers contained in the runtime asset.
Binary.MetricIndex
Denotes an index into the list of metrics contained in the runtime asset.
Binary.PoseFragment
A pose fragment contains information necessary to perform similarity calculations between animation poses.
Binary.Segment
An segment contains information about animation frames that have been extracted from the supplied animation clips during the build process.
Binary.Segment.Interval
Denotes a sequence of animation frames
Binary.SegmentIndex
Denotes an index into the list of segments contained in the runtime asset.
Binary.Tag
Tags are used to associate a trait to a sequence of animation frames.
Binary.TagIndex
Denotes an index into the list of tags contained in the runtime asset.
Binary.TagList
Tag lists are created during the runtime asset build process based on the annotations that have been made at authoring time. Each unique combination of tags that is used for annotation purposes generates a unique tag list which is accessible via an index. This scheme is used extensively to speed up the execution of queries.
Binary.TagListIndex
Denotes an index into the list of tag lists contained in the runtime asset.
Binary.Trait
Traits are user-defined characteristics that can be associated to tags or markers.
Binary.TraitIndex
Denotes an index into the list of traits contained in the runtime asset.
Binary.TrajectoryFragment
A trajectory fragment contains information necessary to perform similarity calculations between trajectories.
Binary.TypeIndex
Denotes an index into the list of types contained in the runtime asset.
BinaryReference
Reference to the runtime asset.
BlittableBool
Plain struct that wraps a boolean value into a DOTS compatible data type.
ConditionTask
The condition task executes its child based on an internal condition that can be controlled externally.
CurrentPoseTask
The current pose task updates a sampling time based on the current sampling time of the motion synthesizer.
Default
Default trait used in the Kinematica asset builder tool.
DeltaSamplingTime
A delta sampling time is used to uniquely identfy a sub-sampled animation frame and optionally a root transform offset that occured while reading across segment boundaries.
Identifier<T>
Wrapper around a memory identifier that carries the type of the memory identifier.
Interval
Structure representing a contiguous interval of frames.
KinematicaJob
Example of Burstable animation job that can be ran in a separate thread to execute Kinematica animation pass for best performances.
MatchFragmentTask
The match fragment task accepts a list of animation pose sequences and a reference animation pose as its inputs. It outputs the animation pose from the input pose sequence that is most similar to the reference animation pose. A trajectory can optionally be supplied as an additional constraint.
MemoryArray<T>
A memory array is very similar in nature to a NativeArray. It stores a reference to an array of data elements and allows for retrieval of inidividual elements. This is a workaround for the inability to nest NativeArrays.
MemoryHeader<T>
A memory header maintains a chunk of memory that contains an arbitrary collection of nested value types. This is a workaround for the inability to nest NativeArrays.
MemoryIdentifier
Memory identifiers are used to uniquely identify data types and tasks that are part of Kinematica's task graph.
MemoryRef<T>
A memory reference allows a ref value to be stored in memory and later to be converted back into its ref value.
MotionSynthesizer
The motion synthesizer is the actual core component of Kinematica.
MotionSynthesizerHolder
This struct hold and setup the synthesizer and its dependencies. The synthesizer cannot hold directly its own dependencies because they are managed code and synthesizer need to be unmanaged in order to be used by Burst
NavigationParams
Parameters of navigation query asked to Kinematica in order to move an agent along a path made of control points
NavigationTask
ParallelTask
The parallel task executes all of its children in order until it encounters a non-success status.
PlayAtTimeTask
The task injects a referenced time index into the pose stream of the motion synthesizer.
PoseSequence
Data type that refers to a sequence of animation poses.
Query
Entry point for semantic filtering based query language.
QueryMarkerExpression
Marker expressions represent semantic filtering of animation poses that are based on marker types.
QueryResult
A query result is wrapper around a pose sequence and is the result of a semantic filtering query.
QueryTraitExpression
Trait expressions represent semantic filtering of animation poses that are based on tag traits.
RootTask
The root task is the only mandatory task that exsists in a task graph and is implicitely created as part of the task graph execution system. It is responsible for executing the optional part of the task graph.
SamplingTime
A sampling time is used to uniquely identfy a sub-sampled animation frame.
SelectorTask
The selector task executes all of its children in order until it encounters a non-failure status.
SequenceTask
The sequence task executes all of its children in order until it encounters a success status.
TaskPointer
Generic pointer to a task.
TaskReference
Self sufficient task reference that can be used to access the task data and create children to that task without needing to pass the
MotionSynthesizer
as argument
TimeIndex
A time index is used to uniquely identfy an animation frame.
TimerTask
The timer task returns a running status for a specified amount of time in seconds and a success status afterwards.
TimeSampler
TimeSampler allows to compute regularly spaced time samples inside a time interval
Trajectory
Data type to be used in a task graph that represents a trajectory.
TrajectoryHeuristicTask
The trajectory heuristic task compares the trajectories of a current and candidate pose to a desired trajectory.
TrajectoryModel
TrajectoryPrediction
Allows the generation of a desired future trajecory.
TrajectoryPredictionTask
The trajectory prediction task generates a desired future trajectoy subject to a desired displacement direction, desired forward direction and desired linear speed.
Interfaces
GenericTask<T>
Generic task interface allowing to do operations specifically on the task type
IMotionSynthesizerProvider
Interface to provide a reference to a Kinematica motion synthesizer. This interface should be implemented by all MonoBehaviours that use Kinematica, so that Kinematica tools (task graph, debugger) can have access to the synthesizer associated to the component
Implementing an interface is more flexible than inheriting a component with a strong reference to the motion synthesizer. It allows for example to not store directly the synthesizer inside the component, which can be useful if the synthesizer must be stored inside an optional playable graph the component have access to.
Task
Tasks represent executable code that runs as part of the motion synthesizer job and can control the pose selection process.
Trait
Interface for traits.
Enums
DataType.Flag
Optional flags used to control data type behavior.
Result
Result of a task execution.