Unity
VR
FinalIK
Youtuber

VRYoutuber環境構築のときのメモ(走り書き)

大手(企業がバックについている)以外のVtuberはだいたい服とかの貫通はしょうがないって感じ。
結構HMDを使わないで、facerigだけを利用してVtuberを名乗り認められている実況者もいる。
モデルにバーチャル空間でなりきる方法は大体ググればでてくるので、以降はそのような基礎的な部分でなく、躓く部分の解説をしていく。

モデルになったときの関節の動きを制御する

Humanoid型ボーンを入れたモデルリグにFinal IKを入れて、rHandやlHand、HeadTargetを設定すれば、動くっちゃ動く。でもそれは、腕の可動域が決められてないので、人間には到達不可能な角度までグルングルン回せてしまう。ここでだいぶ躓いた。Rotationを制限したいのに、Mayaなどでのpdx作成において制限を加えてもUnityにfbxへと変換すると正常に作動してくれない。
海外のフォーラムを読み漁ってようやく発見した(見落としていた。。)
RotationLimitってFinal IKにあったんでござるね。。。
でもこのLimit、なんか4種類あるからどれを使えば良いのかわからんし、どこにアタッチすれば良いのかも不明だった。
はい、これ見ろ。
https://www.youtube.com/watch?v=b7EgN0X-TsI
なるほど、わかったがわからん。

なんかできた。↓
できたわ.PNG

左右の肘、及び手首にFinal IK のRotationLimitHingeをつけてやり、それぞれのMin、Maxを人間の動くであろう可動域に設定してやる。これで「手首がグルングルン」やコントローラーを後ろに持っていったときに「肘が90度に後ろに曲がる」といった妖怪も阿鼻叫喚な事象は防げそう。
未だにわかっていないのは、「肩の可動域ってどうやって設定すればいいんだろう」ということ。
人間の骨の動きって、1つの動きに連動して他の骨も微調整のために動くっていう複雑な仕組みだから、それを再現するのマジムリ…リスカしょ…ってなるわな。
暇な時に海外のフォーラム漁っときます。。