AI VR 注目記事

【AI】龍騎VR(仮)ゲームを作ってみる その5 モーション編 【VR】

記事内に広告・プロモーションを含む場合があります。

AIでVRゲーム制作、今度はモーション調整の沼へ……理想の動きにならない!

現在、Unreal Engine 5とBlenderを使ってVRゲームの制作を進めています。

ここ最近、特に多くの時間を使っているのが、召喚したドラゴン「ドラグレッダー」のモーション調整です。

以前はほぼ固定されたモデルを飛ばしていましたが、せっかく巨大なドラゴンが登場するのであれば、

「もっと生き物らしく動かしたい!」

と思い、本格的なアニメーション制作に挑戦することにしました。

Blender MCPを導入したことで、AIにBlenderを操作してもらえるようになり、

「これならモーション制作もかなり楽になるのでは?」

と思っていました。

ところが現在、モーション調整の沼に完全にはまっています。

まずはドラグレッダーを動かせるようにする

最初の大仕事は、そもそもモデルをアニメーションさせられる状態にすることでした。

元々使用していたドラグレッダーは、頭、胴体、尻尾、腕など複数のパーツから構成されていました。

そこでBlender上でボーンを入れ、

頭
↓
胴体
↓
尻尾

と連続して動かせる構造を作成。

さらに左右の腕もボーンに追従させ、Unreal EngineへSkeletal Meshとして取り込めるようにしました。

ここまででも、ボーン数や階層、FBXエクスポート時の設定などで何度も問題が発生。

ようやくUE上でアニメーションが動いたときには、かなり達成感がありました。

しかし、本当の苦労はここからでした。

「動く」と「自然に動く」は全く違った

ボーンが正常に動けば、それで完成というわけではありません。

最初に作った飛行モーションを再生すると、確かにドラグレッダーは動いています。

しかし何かがおかしい。

胴体が硬い。

頭の動きが不自然。

尻尾が機械的。

全体的に「モデルを上下に動かしている」ように見えてしまいます。

そこで、胴体の各ボーンに少しずつ位相をずらした動きを追加し、頭から尻尾へ波が伝わるようなモーションを作りました。

すると、かなり生き物らしくなりました。

ところが――。

一つ直すと、別の場所がおかしくなる

モーション制作で一番苦しんでいるのがこれです。

例えば、

「頭の上下運動をもう少し小さくしよう」

と調整します。

すると今度は胴体とのつながりが不自然になります。

胴体を直すと、今度は尻尾の動きが目立つ。

尻尾を滑らかにすると、今度は腕の付け根がおかしく見える。

腕を修正すると、今度は飛行中のシルエット全体が変わる……。

一ヶ所を直せば完成に近づくとは限らない。

これがモーション調整の難しいところでした。

AIに、

「もう少し自然にしてください」

とお願いするだけでは、こちらが想像している「自然さ」を完全に伝えることもできません。

結局、

修正
↓
確認
↓
違和感を発見
↓
原因を調査
↓
再修正

を何度も繰り返しています。

腕の追加ではさらに苦戦

特に大変だったのが腕です。

胴体だけを動かしていたときには問題なかったのですが、左右の腕を追加すると、飛行モーション中に腕が胴体から離れたり、不自然な方向へ垂れ下がったりする問題が発生しました。

ボーンの親子関係。

Weight設定。

Rest Pose。

ローカル座標。

FBXのエクスポート設定。

原因になりそうな部分を一つずつ確認していきました。

見た目では「腕の位置が少し変」というだけなのですが、その裏では複数の設定が関係しています。

3Dアニメーションの難しさを思い知らされました。

今度は「上下に揺れているだけ」に見える

腕の問題を修正した後は、飛行モーションそのものをさらに改善することにしました。

目標は、空中を泳ぐようなドラゴンらしい動きです。

単純に全身を同時に上下させるのではなく、

頭が動く
↓
胴体へ波が伝わる
↓
最後に尻尾が追従する

という動きを目指しています。

そこで位相や振幅を変更した複数のバージョンを作成しました。

通常版。

上下運動を強くした版。

胴体中央を基準にした版。

尻尾の動きを柔らかくした版。

さらにUE側で再生速度も変更して比較します。

ほんの少し数値を変えただけでも、巨大なドラゴンでは印象がかなり変わります。

Blenderで良くてもUEでは印象が変わる

もう一つ難しいのが、Blender上で良く見えたからといって、それで終わりではないことです。

最終的に使用するのはUnreal Engineです。

さらにゲームはVRです。

Blenderでは自然に見えていたモーションでも、UEへ持っていくと、

「思ったより動きが小さい」

「ちょっと速すぎる」

「巨大生物なのに軽く見える」

といった違いが出てきます。

そして最終確認はMeta Quest 3。

VRでは画面で見るよりもサイズ感や距離感が強く感じられるため、モニター上では問題なかった動きでも印象が変わります。

つまり、

Blender → Unreal Engine → VR実機

と確認しながら調整する必要があります。

これがなかなか終わりません。

それでも少しずつ完成形に近づいている

何度修正しても新しい問題が見つかるので、

「いつ完成するんだ……」

と思うこともあります。

しかし、最初のモーションと現在のモーションを比較すると、確実に良くなっています。

最初は硬い模型が飛んでいるようだったドラグレッダーが、少しずつ巨大な生物として動くようになってきました。

AIを使えば、ボーン構造を調べたり、モーションを生成したり、問題の原因を分析したりする作業はかなり効率化できます。

しかしAIが自動的に、

「これが一番かっこいいドラゴンの動きです!」

と完成品を作ってくれるわけではありません。

最後は実際に動きを見て、

「ここが違う」

「もう少しゆっくり」

「ここはもっと大きく動いてほしい」

と判断する必要があります。

以前MAP制作の記事でも感じましたが、今回も同じでした。

AIを使えば制作は楽になる。

しかし、

AIを使えば簡単に完成するわけではない。

特にモーション制作では、それを強く感じています。

まだ調整は続きます。

それでも、召喚したドラグレッダーがVR空間を自然に飛び回る姿を完成させるため、もう少しこの「モーション調整の沼」と付き合っていこうと思います。

完成したときに、

「あのとき何度も作り直してよかった」

と思えるところまで仕上げたいですね。

まだまだVRゲーム制作は続きます・・・

それではここまでご覧いただきありがとうございざいます

次回もよろしくお願いします!


-AI, VR, 注目記事