モーフィングアニメーション
はじめに
モーフィングアニメーション(頂点アニメーションとも呼ばれる)は、柔らかい素材の変形をシミュレートする方法です。ある形状を別の形状へと滑らかに変化させます。これは、各頂点に対して複数の位置を含むメッシュを作成することで実現されます。追加される位置のセットごとに、形状(morph target )が定義されます。アニメーション実行時には、各ターゲットにweight が割り当てられます。 各頂点の実効位置は、重みに応じて、そのターゲットの位置間の線形補間によって計算されます。
モーフィングは、架空のスケルトンを作成し、モデルの各頂点とそのスケルトンのノードとの関係を定義することでモデルにリグを適用するスケルトンアニメーションとは異なります。
各モーフターゲットの基本構造は同一でなければならない点に注意してください。つまり、ベースモデルで 3 つの頂点が三角形を形成している場合、すべてのモーフターゲットでもそれらが三角形を形成することになります。その三角形は、位置、向き、サイズがまったく異なるものであってもかまいません。あるいは、サイズを 0 にして縮退三角形にすることで、事実上削除することも可能です。
ほとんどの場合、メッシュは外部ツールで作成され、Balsamのアセットインポートツールを使用してインポートされます。たとえば、Blender 3Dエディタでは、モーフターゲットは「シェイプキー」と呼ばれ、Autodesk Mayaでは「ブレンドシェイプ」と呼ばれます。
モーフィングの例では、Blenderからインポートしたモデルのウェイトを制御する方法を示しています。
カスタムモーフィングアニメーションの例では、QQuick3DGeometry をサブクラス化して、C++でモーフィングターゲットを作成する方法を示しています。
© 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.