public override void skipTo(float timelineTime) { start(); lastTime = timelineTime; float blendFactor = (timelineTime - StartTime) / Duration; if (blendFactor > 1.0f) { blendFactor = 0.0f; } startState.blend(targetState, blendFactor); }
void updateListener_OnUpdate(Clock clock) { blendPositionMicro += clock.DeltaTimeMicro; if (blendPositionMicro < durationMicro) { float percent = blendPositionMicro / (float)durationMicro; start.blend(end, percent); } else { start.blend(end, 1.0f); updateListener.unsubscribeFromUpdates(); } }