VRChatアバターで手をわしわし動かすジェスチャーの実装(Unity)

改変:手をわしわしするやつの実装

(この記事は2025年5月時点での記事です。アップデート等によりこの内容ではうまく設定できなくなる可能性があります。)

前回、トリガを引いて手動でまばたきするやつのやり方を書いたが、これは手の形でも同じことができる。基本的には前回の焼き増しになるが、みんな手をわしわしするやつはやりたいと思うので、この記事でやり方を書いておく。

こういうやつ。ビナアは純正でこの機能がある、というか今どきのアバターは手動まばたきのやつほどじゃないけど大体ついてる。ついてないやつとか少し古めのやつとかにつけてデティールアップというか使用感をよくしたい人向け。

前回も書いた気がするが、VRChatのジェスチャーはindexコンならトリガ、questコンなら中指のやつの押し込み具合でジェスチャーに登録されているアニメーションの再生箇所を調整できる。指を置いただけなら0、トリガを引き切るとアニメーションの最後のところが再生される。

そして、複数のアニメーションをいい感じにつないでくれる機能がunityにあるので、握りこぶしと半開きのアニメーションをその機能を使ってつないでジェスチャーの部分に入れてしまえばこの話は終わりである。前回の記事のblend treeを使う方法をジェスチャーでやるだけなのでやり方がわかる人はもうこの記事を読む必要がない。

今回は桒梗でやってみる。桒梗はVRC公式サンプルのやつと構造は同じで中身が違うだけなので、凝った内装のアバターじゃなければ大体同じやり方でできるはずである。

桒梗のgestureのやつを開く。hieralcyの親のinspectorの中くらいのとこにある。このまま触ってもいいが、アップデートのときやうっかりどこか壊したとかでアバターを再インポートしたときデフォルトの名前のままだと上書きされて消えて悲しいので、複製したものを設定しなおしていじるのが良いとおもう。(これはマテリアルやテクスチャにも言えることで、直にいじると後々消えかねないから複製すること。ctrl+Dで複製できる)

右側の青枠に囲まれてるやつのこと。クリックするとproject内での位置も出される。(金枠のやつ)

複製してinstector側のやつを入れ替えた。

ダブルクリックするとanimatorタブに飛ばされるのでleft handを開き、fistで右クリックしcreate new blendtree~を左クリック。instectorのmotionのところがblend treeになるのでこれをダブルクリックで開く。

こんなかんじの画面になる

create new blendtree in state

fistのmotionがbelnd treeになる

inspector中のプラスを押し、add motion fieldから枠を二個足し、gestureのアニメーションを登録する。ehresholkが1の方に桒梗純正のfist、0にVRC公式サンプルの手のidleモーションを入れる。(もし他のアバターで設定するとき、純正で手のidle用アニメーションが用意されているならそれでよい。桒梗は純正で手のidleが用意されていないのでVRC公式サンプルを使っただけ)

これでfistのとき左手がトリガに応じて動くようになるはずである。右手もrighit handで同じ操作をすればよい。(ただし、blend treeのparameterをGestureRightWeightにしておくこと)

blend treeをひらいたところ

add motion fieldから枠を足した

桒梗のジェスチャーアニメーションはここ(assets\kikyo\animation\gesture)

VRC純正idleアニメーションはここ(Packages\com.vrchat.avatars\Samples\AV3 Demo Assets\Animation\ProxyAnim)二種類あるので好きな方を選んで登録す

左手がわしわしできるようになった

別に大したことをやる訳でもない割に表現が広がるので、とりあえず組み込んでみるのもいいかもしれない。(撫で方のバリエーションも増えるし、なにかをつまむようなしぐさもできる)

たしか有名なアバターだとMAポン付けでわしわしできるようになるギミックもあったはずなので面倒ならそれでいいと思う。

なおこのサイトではVRChat向けパソコンを販売している。ブログから閲覧が伸びたりパソコンが買われると筆者が評価されるので、買い替えのときは是非検討してほしい。

あわせて読みたい

ブログに戻る