Class TransitionPlayback

java.lang.Object
me.deecaad.core.transition.TransitionPlayback

public final class TransitionPlayback extends Object
Realizes a Transition into a schedule of TransitionPlayback.Segment pushes.

Continuous transitions are sampled into segments whose density matches the easing curve: linear segments contribute only their endpoints, while curved segments contribute additional intermediate samples. Consumers push each segment in turn, so client-side interpolation (e.g. a display entity's setInterpolationDuration) reproduces the eased curve as a chain of linear lerps.

Stepped transitions bypass sampling: one segment per keyframe, interpolationDuration = 0.

  • Method Details

    • sample

      @NotNull public static <T> @NotNull List<TransitionPlayback.Segment<T>> sample(@NotNull @NotNull Transition<T> transition)
      Builds a schedule for transition. Picks stepped or continuous sampling based on the transition's interpolator.
      Parameters:
      transition - The non-null transition.
      Returns:
      A non-null, non-empty, ascending-by-tickOffset list of segments.