BlendedClipAnimator QML Type

BlendedClipAnimatorは、ブレンドノードのツリーのアニメーション再生機能を提供するコンポーネントです。詳細...

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

AbstractClipAnimator

Status: Deprecated

プロパティ

詳細説明

BlendedClipAnimatorのインスタンスをEntityに集約することで、アニメーションクリップを再生したり、計算されたアニメーション値をQObjectのプロパティに適用する機能を追加することができます。

ClipAnimator が単一のアニメーションクリップからアニメーションデータを取得するのに対し、BlendedClipAnimator は複数のクリップをブレンドすることができます。アニメーションデータは、いわゆるブレンドツリーを評価することで得られます。ブレンド・ツリーは階層ツリー構造で、リーフ・ノードはアニメーション・クリップ(AbstractAnimationClip)をカプセル化した値ノードで、内部ノードはオペランド・プロパティが指すノードを操作するブレンド操作を表します。

ブレンド・ツリーをBlendedClipAnimatorに関連付けるには、アニメーターのblendTree プロパティを設定して、ブレンド・ツリーのルート・ノードを指します:

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

ブレンドツリーは、以下のノードタイプから構築できます:

注意: ブレンド・ノード・ツリーの編集は、アニメーターが動作していない時に行ってください。

ノードの種類は、今後追加される予定です。

例として、次のブレンドツリーを考えてみましょう:

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

これは、次のように作成し、使用することができます:

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
}

アニメーション・クリップのセットをオーサリングし、ブレンド・ツリーを使って実行時に動的にブレンドすることで、膨大なアニメーションの可能性が広がります。上記のブレンドツリーの簡単な例として、アルファが加算係数、ベータがレープのブレンド係数で、2Dの連続したアニメーションが可能です:

(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

より複雑なブレンドツリーでは、アニメーションクリップを組み合わせる柔軟性がさらに高まります。ブレンドツリーをコントロールするための値(上記のアルファとベータ)は、ブレンドノードの単純なプロパティです。つまり、これらのプロパティ自体も、アニメーションフレームワークで制御できます。

プロパティの説明

blendTree : AbstractClipBlendNode

このプロパティは、アニメーターによって補間される前に評価される、アニメーションブレンドツリーのルートを保持します。


© 2025 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.