VRCAvatars3.0で色変えギミックをつくる
VRChatの2020年8月7日のアップデートで、Avatars3.0なるものが追加されました。
Avatars3.0ではExpression MenuというユーザーがUnityで拡張できるメニューが使用できます。
今回は、そのExpression Menuでアバターの色を変えるギミックについて解説していきます。
ちなみに当記事は
・Unity2018.4.20があること
・VRCSDK3(Avatars3.0)がUnityにインポートされていること
・ある程度Unityがいじれること
が前提です。
導入
今回はあすかろさんのかわいいかわいい謎生物を使用します。
白いテクスチャだと望ましいかも。
①アニメーションコントローラーをコピペしてくる
Asset/VRCSDK/Example3/Animation/Controllers内のvrc_AvatarV3HandsLayer(Avatars3.0用のアニメーションコントローラ)をコピペしてくる。
こんな感じ。今回はMatの色をExpressionMenuで変えられるようにします。
➁vrc_AvatarV3HandsLayerをいじる-その1
Animatorのウィンドウから、vrc_AvatarV3HandsLayerのパラメーターを開きます。
赤枠の+から新しいパラメーター(Float)を追加します。
今回はColorChangeというパラメーター名にしました。
赤枠の+から新しいレイヤー(ColorChange)を追加し、黄色枠の歯車アイコンからWeightを1にします。
赤枠内で右クリック⇒Create state⇒ From New Blend TreeでBlend Treeを作ります。
③色が変わるアニメーションを作る
先ほど作ったBlend Treeはいくつかのアニメーションを混ぜて表示することができるもの。
なので、変更したい色の数だけアニメーションを作ります。
今回は白⇒赤⇒青⇒緑と色を変えたいので四つのアニメーションを作りました。
ここら辺はAvatars2.0で腐るほどやってきただろうから、大雑把にいきます。
上の画像二枚のようにアニメーションウィンドウでマテリアルのカラーを変えます。
⚠マテリアルのカラーを変える際、使用してるシェーダーによって一枚目の赤線部分の名前が変わっているので注意。
(例)
Standard Shaders,Arktoon Shaders,VRC標準のシェーダー⇒_Color
UnityChanToonShaderVer2⇒_Base Color
画像は赤色のアニメーションのバージョンです。
これを4色やります。
④vrc_AvatarV3HandsLayerをいじる-その2
➁で作ったBlend Treeを選び、赤枠のBlend Treeを押します
すると上の画像のようなものが出ると思うので
BlendTypeに1D、Parameterに➁で追加したパラメーター(今回はColorChange)を入れます。
赤枠の+からAdd Motion Fieldで、変更したい色の数だけリストを追加します。
リストには③で作ったアニメーションを入れましょう。
⑤Expression Parametersをいじる
続いてExpression Parameterの設定です。
フォルダで右クリック⇒Create⇒VRChat⇒Avatarsにある"Expression Menu"と"Expression Parameters"を追加します。
当記事内ではExpression Menu⇒Ex_Menu
Expression Parameters⇒Ex_Parameters
と名前を変えてます。
Ex_Parametersのparameterに➁で追加したパラメーターと全く同じ名前のパラメーターをFloatで追加します。
⑥アバター本体の設定
アバター本体にSDK3用のVRC Avatar Descriptorを追加します。
追加したら赤枠で囲んだCustomizeを押しましょう。
Playable Layersがコントローラを入れる場所、ExpressionsがExpressions Menuを入れる場所です。
Customizeを押すと上のようなリストが出てくるので、画像のようにセットアップしましょう。
Playable Layerss⇒Base⇒FXに➁で作ったアニメーションコントローラ
Expression⇒Menuにさっき作ったEx_MenuとEx_Parameters
を入れます。
⑦Ex_Menuをいじる
⑤の最初で作ったEx_Menuの設定をします。
ControlsのAdd Controlで新しいメニューを追加します。
新しいリストが出てくるので、上の画像のように設定します。
Name⇒何でもよい。今回はColor_Changer。
Type⇒メニューの種類。今回はRadial Puppet
Parameter⇒今回はNone
Parameter Rotation⇒⑤で追加したパラメーターを入れる。今回はColorChange,Float。
以上です。
あとは視点の設定とかしてVRCSDKからアップロードして終了!おつかれさまでしたー!
参考
https://ask.vrchat.com/t/av3-walkthrough-index/2148
仕様モデル:あすかろの謎生物
https://booth.pm/ja/items/1299971
この記事が気に入ったらサポートをしてみませんか?