Class AnimationController

    • Field Detail

      • queuedTransitionTime

        public float queuedTransitionTime
        The transition time which should be applied to the queued animation. Do not alter this value.
      • transitionCurrentTime

        public float transitionCurrentTime
        The current transition time. Do not alter this value.
      • transitionTargetTime

        public float transitionTargetTime
        The target transition time. Do not alter this value.
      • inAction

        public boolean inAction
        Whether an action is being performed. Do not alter this value.
      • paused

        public boolean paused
        When true a call to update(float) will not be processed.
      • allowSameAnimation

        public boolean allowSameAnimation
        Whether to allow the same animation to be played while playing that animation.
    • Constructor Detail

      • AnimationController

        public AnimationController​(ModelInstance target)
        Construct a new AnimationController.
        Parameters:
        target - The ModelInstance on which the animations will be performed.
    • Method Detail

      • update

        public void update​(float delta)
        Update any animations currently being played.
        Parameters:
        delta - The time elapsed since last update, change this to alter the overall speed (can be negative).
      • setAnimation

        public AnimationController.AnimationDesc setAnimation​(java.lang.String id,
                                                              int loopCount)
        Set the active animation, replacing any current animation.
        Parameters:
        id - The ID of the Animation within the ModelInstance.
        loopCount - The number of times to loop the animation, zero to play the animation only once, negative to continuously loop the animation.
        Returns:
        The AnimationController.AnimationDesc which can be read to get the progress of the animation. Will be invalid when the animation is completed.
      • setAnimation

        public AnimationController.AnimationDesc setAnimation​(java.lang.String id,
                                                              int loopCount,
                                                              float speed,
                                                              AnimationController.AnimationListener listener)
        Set the active animation, replacing any current animation.
        Parameters:
        id - The ID of the Animation within the ModelInstance.
        loopCount - The number of times to play the animation, 1 to play the animation only once, negative to continuously loop the animation.
        speed - The speed at which the animation should be played. Default is 1.0f. A value of 2.0f will play the animation at twice the normal speed, a value of 0.5f will play the animation at half the normal speed, etc. This value can be negative, causing the animation to played in reverse. This value cannot be zero.
        listener - The AnimationController.AnimationListener which will be informed when the animation is looped or completed.
        Returns:
        The AnimationController.AnimationDesc which can be read to get the progress of the animation. Will be invalid when the animation is completed.
      • setAnimation

        public AnimationController.AnimationDesc setAnimation​(java.lang.String id,
                                                              float offset,
                                                              float duration,
                                                              int loopCount,
                                                              float speed,
                                                              AnimationController.AnimationListener listener)
        Set the active animation, replacing any current animation.
        Parameters:
        id - The ID of the Animation within the ModelInstance.
        offset - The offset in seconds to the start of the animation.
        duration - The duration in seconds of the animation (or negative to play till the end of the animation).
        loopCount - The number of times to play the animation, 1 to play the animation only once, negative to continuously loop the animation.
        speed - The speed at which the animation should be played. Default is 1.0f. A value of 2.0f will play the animation at twice the normal speed, a value of 0.5f will play the animation at half the normal speed, etc. This value can be negative, causing the animation to played in reverse. This value cannot be zero.
        listener - The AnimationController.AnimationListener which will be informed when the animation is looped or completed.
        Returns:
        The AnimationController.AnimationDesc which can be read to get the progress of the animation. Will be invalid when the animation is completed.
      • animate

        public AnimationController.AnimationDesc animate​(java.lang.String id,
                                                         float transitionTime)
        Changes the current animation by blending the new on top of the old during the transition time.
        Parameters:
        id - The ID of the Animation within the ModelInstance.
        transitionTime - The time to transition the new animation on top of the currently playing animation (if any).
        Returns:
        The AnimationController.AnimationDesc which can be read to get the progress of the animation. Will be invalid when the animation is completed.
      • animate

        public AnimationController.AnimationDesc animate​(java.lang.String id,
                                                         int loopCount,
                                                         AnimationController.AnimationListener listener,
                                                         float transitionTime)
        Changes the current animation by blending the new on top of the old during the transition time.
        Parameters:
        id - The ID of the Animation within the ModelInstance.
        loopCount - The number of times to loop the animation, zero to play the animation only once, negative to continuously loop the animation.
        listener - The AnimationController.AnimationListener which will be informed when the animation is looped or completed.
        transitionTime - The time to transition the new animation on top of the currently playing animation (if any).
        Returns:
        The AnimationController.AnimationDesc which can be read to get the progress of the animation. Will be invalid when the animation is completed.
      • animate

        public AnimationController.AnimationDesc animate​(java.lang.String id,
                                                         int loopCount,
                                                         float speed,
                                                         AnimationController.AnimationListener listener,
                                                         float transitionTime)
        Changes the current animation by blending the new on top of the old during the transition time.
        Parameters:
        id - The ID of the Animation within the ModelInstance.
        loopCount - The number of times to play the animation, 1 to play the animation only once, negative to continuously loop the animation.
        speed - The speed at which the animation should be played. Default is 1.0f. A value of 2.0f will play the animation at twice the normal speed, a value of 0.5f will play the animation at half the normal speed, etc. This value can be negative, causing the animation to played in reverse. This value cannot be zero.
        listener - The AnimationController.AnimationListener which will be informed when the animation is looped or completed.
        transitionTime - The time to transition the new animation on top of the currently playing animation (if any).
        Returns:
        The AnimationController.AnimationDesc which can be read to get the progress of the animation. Will be invalid when the animation is completed.
      • animate

        public AnimationController.AnimationDesc animate​(java.lang.String id,
                                                         float offset,
                                                         float duration,
                                                         int loopCount,
                                                         float speed,
                                                         AnimationController.AnimationListener listener,
                                                         float transitionTime)
        Changes the current animation by blending the new on top of the old during the transition time.
        Parameters:
        id - The ID of the Animation within the ModelInstance.
        offset - The offset in seconds to the start of the animation.
        duration - The duration in seconds of the animation (or negative to play till the end of the animation).
        loopCount - The number of times to play the animation, 1 to play the animation only once, negative to continuously loop the animation.
        speed - The speed at which the animation should be played. Default is 1.0f. A value of 2.0f will play the animation at twice the normal speed, a value of 0.5f will play the animation at half the normal speed, etc. This value can be negative, causing the animation to played in reverse. This value cannot be zero.
        listener - The AnimationController.AnimationListener which will be informed when the animation is looped or completed.
        transitionTime - The time to transition the new animation on top of the currently playing animation (if any).
        Returns:
        The AnimationController.AnimationDesc which can be read to get the progress of the animation. Will be invalid when the animation is completed.
      • queue

        public AnimationController.AnimationDesc queue​(java.lang.String id,
                                                       int loopCount,
                                                       float speed,
                                                       AnimationController.AnimationListener listener,
                                                       float transitionTime)
        Queue an animation to be applied when the current animation is finished. If the current animation is continuously looping it will be synchronized on next loop.
        Parameters:
        id - The ID of the Animation within the ModelInstance.
        loopCount - The number of times to play the animation, 1 to play the animation only once, negative to continuously loop the animation.
        speed - The speed at which the animation should be played. Default is 1.0f. A value of 2.0f will play the animation at twice the normal speed, a value of 0.5f will play the animation at half the normal speed, etc. This value can be negative, causing the animation to played in reverse. This value cannot be zero.
        listener - The AnimationController.AnimationListener which will be informed when the animation is looped or completed.
        transitionTime - The time to transition the new animation on top of the currently playing animation (if any).
        Returns:
        The AnimationController.AnimationDesc which can be read to get the progress of the animation. Will be invalid when the animation is completed.
      • queue

        public AnimationController.AnimationDesc queue​(java.lang.String id,
                                                       float offset,
                                                       float duration,
                                                       int loopCount,
                                                       float speed,
                                                       AnimationController.AnimationListener listener,
                                                       float transitionTime)
        Queue an animation to be applied when the current animation is finished. If the current animation is continuously looping it will be synchronized on next loop.
        Parameters:
        id - The ID of the Animation within the ModelInstance.
        offset - The offset in seconds to the start of the animation.
        duration - The duration in seconds of the animation (or negative to play till the end of the animation).
        loopCount - The number of times to play the animation, 1 to play the animation only once, negative to continuously loop the animation.
        speed - The speed at which the animation should be played. Default is 1.0f. A value of 2.0f will play the animation at twice the normal speed, a value of 0.5f will play the animation at half the normal speed, etc. This value can be negative, causing the animation to played in reverse. This value cannot be zero.
        listener - The AnimationController.AnimationListener which will be informed when the animation is looped or completed.
        transitionTime - The time to transition the new animation on top of the currently playing animation (if any).
        Returns:
        The AnimationController.AnimationDesc which can be read to get the progress of the animation. Will be invalid when the animation is completed.
      • action

        public AnimationController.AnimationDesc action​(java.lang.String id,
                                                        int loopCount,
                                                        float speed,
                                                        AnimationController.AnimationListener listener,
                                                        float transitionTime)
        Apply an action animation on top of the current animation.
        Parameters:
        id - The ID of the Animation within the ModelInstance.
        loopCount - The number of times to play the animation, 1 to play the animation only once, negative to continuously loop the animation.
        speed - The speed at which the animation should be played. Default is 1.0f. A value of 2.0f will play the animation at twice the normal speed, a value of 0.5f will play the animation at half the normal speed, etc. This value can be negative, causing the animation to played in reverse. This value cannot be zero.
        listener - The AnimationController.AnimationListener which will be informed when the animation is looped or completed.
        transitionTime - The time to transition the new animation on top of the currently playing animation (if any).
        Returns:
        The AnimationController.AnimationDesc which can be read to get the progress of the animation. Will be invalid when the animation is completed.
      • action

        public AnimationController.AnimationDesc action​(java.lang.String id,
                                                        float offset,
                                                        float duration,
                                                        int loopCount,
                                                        float speed,
                                                        AnimationController.AnimationListener listener,
                                                        float transitionTime)
        Apply an action animation on top of the current animation.
        Parameters:
        id - The ID of the Animation within the ModelInstance.
        offset - The offset in seconds to the start of the animation.
        duration - The duration in seconds of the animation (or negative to play till the end of the animation).
        loopCount - The number of times to play the animation, 1 to play the animation only once, negative to continuously loop the animation.
        speed - The speed at which the animation should be played. Default is 1.0f. A value of 2.0f will play the animation at twice the normal speed, a value of 0.5f will play the animation at half the normal speed, etc. This value can be negative, causing the animation to played in reverse. This value cannot be zero.
        listener - The AnimationController.AnimationListener which will be informed when the animation is looped or completed.
        transitionTime - The time to transition the new animation on top of the currently playing animation (if any).
        Returns:
        The AnimationController.AnimationDesc which can be read to get the progress of the animation. Will be invalid when the animation is completed.