En esta página

BlendedClipAnimator QML Type

BlendedClipAnimator es un componente que proporciona capacidades de reproducción de animación de un árbol de nodos de mezcla. Más...

Import Statement: import Qt3D.Animation 2.11
In C++: QBlendedClipAnimator
Inherits:

AbstractClipAnimator

Status: Deprecated

Propiedades

Descripción Detallada

Una instancia de BlendedClipAnimator puede ser agregada por una Entidad para añadir la capacidad de reproducir clips de animación y aplicar los valores de animación calculados a propiedades de QObjects.

Mientras que un ClipAnimator obtiene sus datos de animación de un único clip de animación, BlendedClipAnimator puede mezclar múltiples clips. Los datos de animación se obtienen evaluando el llamado árbol de mezcla. Un árbol de mezcla es una estructura de árbol jerárquica en la que los nodos hoja son nodos de valor que encapsulan un clip de animación (AbstractAnimationClip); y los nodos internos representan operaciones de mezcla que operan sobre los nodos señalados por sus propiedades operando.

Para asociar un árbol de mezcla con un BlendedClipAnimator, establezca la propiedad blendTree del animator para que apunte al nodo raíz de su árbol de mezcla:

BlendedClipAnimator {
    blendTree: AdditiveClipBlend {
        ....
    }
}

Un árbol de mezcla puede construirse a partir de los siguientes tipos de nodos:

Nota: El árbol de nodos de mezcla sólo debe editarse cuando el animador no se esté ejecutando.

Con el tiempo se añadirán más tipos de nodos.

Como ejemplo considere el siguiente árbol de mezcla:

Clip0----
        |
        Lerp Node----
        |           |
Clip1----           Additive Node
                    |
            Clip2----

Esto puede ser creado y utilizado de la siguiente manera:

BlendedClipAnimator {
    blendTree: AdditiveClipBlend {
        baseClip: LerpClipBlend {
            startClip: ClipBlendValue {
                clip: AnimationClipLoader { source: "walk.json" }
            }

            endClip: ClipBlendValue {
                clip: AnimationClipLoader { source: "run.json" }
            }
        }

        additiveClip: ClipBlendValue {
            clip: AnimationClipLoader { source: "wave-arm.json" }
        }
    }

    channelMapper: ChannelMapper {...}
    running: true
}

Mediante la creación de un conjunto de clips de animación y la mezcla entre ellos dinámicamente en tiempo de ejecución con un árbol de mezcla, abrimos un enorme conjunto de posibles animaciones resultantes. Como ejemplos sencillos del árbol de mezcla anterior, donde alfa es el factor aditivo y beta es el factor de mezcla lerp, podemos obtener un continuo 2D de posibles animaciones:

(alpha = 0, beta = 1) Running, No arm waving --- (alpha = 1, beta = 1) Running, Arm waving
        |                                               |
        |                                               |
        |                                               |
(alpha = 0, beta = 0) Walking, No arm waving --- (alpha = 0, beta = 1) Running, No arm waving

Los árboles de mezcla más complejos ofrecen aún más flexibilidad para combinar tus clips de animación. Ten en cuenta que los valores utilizados para controlar el árbol de mezcla (alfa y beta) son simples propiedades de los nodos de mezcla. Esto significa que estas propiedades también pueden ser controladas por la estructura de animación.

Documentación de propiedades

blendTree : AbstractClipBlendNode

Esta propiedad contiene la raíz del árbol de mezcla de animación que será evaluado antes de ser interpolado por el animador.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.