Unityの備忘録的な

つくったものとか

MMD4Mecanimアドオン MecanimJitter作ってみた


*プロシージャルの誤字です。

前置き

 キャラクターに会いにいけるツールとしてのVR。
 しかしただ単に配置するだけでは、キャラクターは虚空を見つめるばかりです。ダンスを踊ってもらっても、こちらを意に介さない様子から疎外感を感じたことのある人も多いのではないかと思います。

 そんな中、キャラクターに命を吹き込んだようなMikulusを初めて体験した時の衝撃は大きく、それ以降生きてる感を出す為のアプローチを続けているいちかです。こんにちは。


 モデル製作者であるおんだ氏のご厚意に甘えて、当時から引き続きモデルを使わせて頂いております。足を向けて寝られませんね!時津風かわいい!

 あえてストーリーテリングをせず、呼吸や視線など受動的なインタラクションに割り切ることで実在感を高めることに成功したMikulus。では次に試みるべきは何だろうかと勝手に考えた結果、生理的な反射の再現という結論に至りました。勝手に。
 反射であれば入力に対して出力がほぼ一意に定まるので、プレイヤーが期待した反応から大きく逸れることはありません。技術的に難易度が低いという点も大きい。


 VRにおいて、物を掴もうと伸ばした手がすり抜ける等、期待が外れるというのは没入感を損ねるトリガーとなり得ます。キャラクターにおいてもこれは同様で、大きな音に反応しない、目の前を物が通り過ぎてもまばたきせず、目で追うこともない、というような生理的な反射が見られないと気味悪ささえ感じてしまいます。


まだ前置き

 生理的な反射を再現する過程でモーフや関節をランダムに揺らす必要が出てきた為、自前でアセットを作成しました。ようやくタイトルに触れますが、今回作成したものはこれになります。

 実は同様の機能を持ったものは過去に制作/公開しています。周期毎にランダムに周期や振幅を設定しループ再生するというものです。
 が、再生中の波形に任意のタイミングで別の波形を足す必要が出てきました。

 この動画は、ループ中のまばたきを強制的に次の周期へ移行する形で実装しています。
 しかし周期の長い緩やかな波形に対して同様の手法をとると、モーフや関節の動きが不連続になってしまいます。結局全面改修する運びとなりました。前回のがnull参照やらかすような拙作だったのでいい機会ではあります。

アセット

 今回作成したアセットはこちらです。初のGitHub利用で少々使い方を誤っているような気がしないでもないですが、DLは問題なく出来るかと思います。
github.com

解説

 チュートリアルとして動画を用意しました。



チュートリアル MMD4Mecanim MorphJitter



チュートリアル MMD4Mecanim BoneJitter


 相変わらずの拙作ではありますが、感想等頂けるととても励みになります。