【VRChat】【Avatar3.0】杖とかのアイテムを持つ時にハンドサインを固定にするやりかた
前提
Playable LayersのFXとGestureが別のアニメーターであること。
(最近のアバターは別なものが多いよね
改変手順
FXとGestureのアニメーターのパラメーターに、ハンドサイン固定状態を示すパラメーターとして「FixGestureRight」「FixGestureLeft」を追加する。
1つのパラメーターで複数のハンドサインに対応させるため、型はInt、初期値は0にする。
ハンドサイン固定状態の値は、基本的にはVRChatのハンドサイン識別に倣う。
(0:固定なし,1:Fist, 2:Open,3:Point,4:Peace,5:RockNRoll,6:Gun,7:Thumbs up,8:Idle,9~:独自のハンドサイン用)
↑0と8はハンドサイン識別と違うので注意。
(※ここから右手の例。左手についてはRightをLeftに読み替えること)FXのアイテムを持っていない状態のステートにVRC Avatar Parameter Driverビヘイビアを追加して、タイプ「Set」、Destination「FixGestureRight」、Value「0」を設定する。
FXのアイテムを持たせるためのステートにVRC Avatar Parameter Driverビヘイビアを追加して、タイプ「Set」、Destination「FixGestureRight」、Valueは固定するハンドサインの値(手順1参照)を設定する。
Gestureのレイヤー「Right Hand」の各ステートへの遷移条件に、「FixGestureRight」「Equals」「0」を追加する。
Gestureのレイヤー「Right Hand」の「Fist」への遷移を複製(2つを繋いでる矢印を選択してCtrl+CしてすぐCtrl+VでOK)する。
手順5で複製した遷移の名前を「Fix Fist」に変更して、「GestureRight」の遷移条件を削除して、「FixGestureRight」の遷移条件を「Equals」「1」に変更する。
図解
(以下は全てミュリシアちゃん改変の例。ミュリシアちゃんはいいぞ)