Sample 7はモーフ処理です
NumPadの1と2でモーフの切り替えを行います
ソフトウェアレベルでのモーフ処理なので
ハードウェアレベルに比べるとかなり重い処理だと思います
ハードウェアレベルで実装する方法は、XNAの公式フォーラムに載っているので
そこを参照してください
(360版では使えません)
実装方法は、ほぼAnimationPlayerの時と一緒です
まず、フィールド内で
MorphTargetの記述をし、初期化部分で
- MorphTarget morph = new MorphTarget(Model model);
- でモデルからモーフターゲットを作ります
次にプレイヤーの設定です
変数フィールド内でMorphingPlayerの記述をし、初期化部分で
- MorphingPlayer morphingPlayer = new MorphingPlayer(Model model);
- と書きます
- この時に設定したモデルが最初に表示されるモデルになります
次にUpadate処理内で
MorphTargetの切り替えを行います
- MorphingPlayer.PlayeMorph(MorphTarget morph, float weight);
- MorphTargetには目的のMorphTarget、weightには切り替える重みを設定してください
コメント