Unityの使い方を理解してVRChatアバターを改変したい!【入門編】

未分類

こんにちは!みなさんVRChatやってますか?

今回はアバターを改変するにあたっての必要な知識機能を紹介したいと思います。
初心者トラップが多いUnityと和解していきましょう!

アバターの基本的な仕組みが分かっていると理解が深まるのでこちらを先に見ておくといいかもしれません。

VRChatにアバターをアップロードしたい!Unityの使い方を理解しよう!【入門編】
こんにちは!みなさんVRChatやってますか?今回はVRChatユーザーにとって簡単なようで案外分かりにくいUnity入門の足掛かりとなればと思いまとめました!購入したアバターのアップロード方法や自作アバターのアップロード方法など、紹介して

 

購入アバターの場合は大体のセットアップが完了しているので触ることがない部分が多いと思うので、

触れる機会が多い順に紹介していきます。

見た目を変えたい

マテリアルから見た目の調節ができます。

マテリアル・シェーダー・UVデータ(テクスチャ)を変更することで肌の色や見た目を変更することができます。

服や肌の色、金属光沢など3Dで見た目にまつわる諸々を設定します。

3Dモデリングを実際にやってみないとイメージがわかないかもしれないですが、マテリアルはUnityにおける材質の見た目にまつわる機能で最低でも1つ以上存在します。

製作者によってマテリアルの数や仕組みは違っており、分析する必要があります。

今回はBoothに販売されているシャルロッテというアバターを分析していきます。

アバターをアップロードする際と同様にヒエラルキーに追加し、展開すると内部構造を確認することができます。

このアバターの場合、服ごとにオブジェクトが分かれているため1つのオブジェクトに1つのマテリアルが用意されています。

製作者によっては1つのオブジェクト5個くらいのマテリアルを割り当てる場合もあります。

▼顔のマテリアルの例

シェーダーの種類で発生する見た目の違いはまた別の機会に紹介します
ユニティーちゃんシェーダー(UTS2)の場合、
BaseMap基本色
1st ShadeMap2nd ShadeMap影や色合いを再現できます。
BaseMap左の小さい画像をクリックで参照元を開くことができ、この画像を変更もしくは別の画像に割り当てることで見た目を変更することができます。
同一UnityProject内にある画像であれば割り当てすることができるため、別名保存改変用イラストデータをもってきて割り当てることでも変更可能です。
右クリックからShow in Explorer画像がどのフォルダにあるか確認できます。
直接イラストソフトで変更してあげても変えることができます。
png画像photoshopデータなどレイヤー構造がある画像データでも大丈夫です。

顔や体格を変えたい

製作者によってはシェイプキー(モーフ)という機能で形状差分や見た目を調整する素材を用意しています。

逆に言えば、用意されたもの以外の形状の改変の難易度はかなり高いということになります。

シェイプキーリップシンクの口目の瞬きなどを元の位置からどのくらい動かしたかという頂点移動を記録しています。

▲Blender上でのシェイプの移動

Unity上ではオブジェクトのインスペクターのBlendShapesからシェイプキーを確認・変更できます。

このシェイプキーが笑顔など差分の元になっています。

このパラメーターを変更してアップロードすることで見た目を変えてVRChatに反映させることができます。

「blink」などの目の瞬き、「vrc.v_sil」などのリップシンクの数値を変えてアップロードすると正しい動作にならないため触らない様に注意してください。

対応衣装を着せ替えしたい

VRChatでは既存アバターの衣装を作っている個人のクリエイターが沢山います。
無限大に着せ替えして遊びたい!と思ったことはありませんか?

仕組みさえ分かってしまえば簡単ですが、うまくいかない場合には理由もあるので
順を追って着せ替えしていきましょう。

まずリグについて理解しましょう

Unityでは3Dアバターメッシュ(3Dオブジェクト)とアーマチュア(骨)に分かれて表示されます。▼

アーマチュアの階層にあるボーンを動かすことでメッシュオブジェクトが変形するといったイメージになります。

※ちなみにVRChatアバターはUnityの“Humanoid”という人型に準拠したボーン配置になっています。
この設定は製作者が行っているので変更する必要はありません。

着せ替え衣装を追加する

今回は「あいかわらぼ」さんの着せ替え衣装を使っていきたいと思います。

VRChatアバター可愛い改変衣装や、きれいなアクセサリーを制作している方なのでチェックしてみてください!

Unityに導入したい衣装をインポートが終わったらヒエラルキーに追加します。

アーマチュアの階層を変更する

VRChatでは1体分のアーマチュアを認識するため、着せ替え用の服アーマチュア元の身体に割り当てる必要があります。

実は面倒くさい作業?

“Hips”アーマチュア群の大本になっています。

Armature→Hips(お尻)→     Spine(腰)→       Shoulder(肩)→・・・

この流れを下の様に変更します。

Armature→Hips→        Spine→        Shoulder→・・・
└→Hips(ゆるだぼ)  └→Spine(ゆるだぼ)  └→Shoulder(ゆるだぼ)

元となっているアーマチュアの直下に一つずつ配置していくことで身体と服のボーンを疑似的に連結することができます。

▼動画手順

子ボーンは親ボーンを追従するしくみを用いてHips(だぼゆる)をHipsの下層に配置することで疑似的に全く同じ動きにします。

面倒くさくないですか?

移動済みアーマチュア・未移動アーマチュアの違いが分かりにくくなり
「あれ?面倒くさくないか?」
と思った方いますよね?

これが一番間違いがない設定方法ですが、有志の方が作ったUnityの着せ替えツールがあるので積極的に使っていきましょう!

特に販売アバター向け衣装同じアーマチュア名・階層になっていることが多く設定が簡単です。

Auto Dresser

Auto Dresser - sentz-A生命維持機関 - BOOTH
◆お知らせ(2023/08/24)◆ ◆PhysBones対応しました(beta版) ◆ベータ版なので不具合等あればお知らせください。 特定のアバター専用として作られた服装モデルでの着せ替えを補助するUnity用Scriptです。 Unity2019でも動作していると思います。(試した限りでは) Unity上で行う場合...

まとめ

VRChatを購入したアバターをアップロードするだけでも実はちょっとした知識が必要なUnityですが、一度仕組みさえ分かってしまえば何てことないソフトです。

この着せ替えを活用すれば服以外にも
顔は京狐さんにして体は幽狐さんにして・・・というキメラも制作が可能です。

  • 目線やリップシンク等を制御するAvatarDescriptorや互換性のないとされる2.0アバター3.0アバターに変更する方法
  • SDK2.0と3.0で何が違うのか
  • オリジナルアバターをアップロードしたいけれど設定が分からない

次回はVRChatSDK2.0アバター3.0に変更する方法と

オリジナルアバターを作る上で必須なAvator Descripterについて解説していきます。

コメント

タイトルとURLをコピーしました