Struct MotionSynthesizer
The motion synthesizer is the actual core component of Kinematica.
Namespace: Unity.Kinematica
Assembly: solution.dll
Syntax
[BurstCompile]
public struct MotionSynthesizer
Remarks
The motion synthesizer represents the actual core implementation of Kinematica which can be used in a pure DOTS environment directly.
It provides a raw transform buffer which represents the current character pose and does not provide any infrastructure to feed the current pose to the character.
The motion synthesizer continuously "plays" an sequence of animation poses. The current time can be changed by "pushing" a new time to the synthesizer. Upon pushing a new time, the synthesizer automatically removes any deviations between the previous pose and the new pose.
The motion synthesizer also has a convenient method of creating semantic queries, which filter the poses stored in the motion library based on tags and markers.
Last but not least, the motion synthesizer contains a task graph that consist of a hierarchy of nodes that collectively can operate on a sequence of poses to perform a user defined processing step in order to arrive at a single new "push time" each frame.
Fields
Name | Description |
---|---|
trajectory | The trajectory model maintains a representation of the simulated character movement over the global time horizon. |
Properties
Name | Description |
---|---|
Binary | Allows direct access to the underlying Kinematica runtime asset. |
Blend |
Return blend duration between segments in seconds |
Current |
Velocity from binary at current sampling time, in meters per second, in character space |
Is |
|
Is |
|
Query | Introduces a new semantic query expression. |
Time | Denotes the current sampling time of the motion synthesizer. |
Trajectory |
Allows access to the trajectory of the motion synthesizer. |
World |
Denotes the world space root transform of the character. |
delta |
Denotes the delta time in seconds during the last update. |
Methods
Name | Description |
---|---|
Add |
|
Adjust |
Allows for non-continuous root displacements. |
Clear |
|
Create |
|
Debug |
|
Debug |
|
Debug |
|
Debug |
|
Dispose() | Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. |
Find |
|
Find |
|
Get |
return the currently active animation frames |
Get |
Calculates the curent root displacement transform. |
Loop |
|
Match |
|
Match |
|
Play |
Switches the pose generation stream to read from the sampling time passed as argument. |
Play |
Switches the pose generation stream to read from the time index passed as argument. |
Play |
Play the first sequence from
|
Rewind(Sampling |
Retrieves the time index at the beginning of the interval that the sampling time passed as argument belongs to. |
Rewind(Time |
Retrieves the time index at the beginning of the interval that the time index passed as argument belongs to. |
Select |
|
Set |
Teleport character to a target transform |
Steer |
Returns the interpolated transform between the root delta transform from Kinematica binary for the current frame, and the desired delta transform. |
Update(float) | Update method that needs to be called each frame to advance the state of the motion synthesizer. |
Update |