見出し画像

【VRChat】ロロミちゃんアバター向け・アバターアップロード方法

 VRChatにアバターをアップロードする方法を解説します。

 念のため記載しておきますが、VRChatではトラストランクがNewuserにならないとアバターをアップロードする事は出来ません。

 基本的にロロミちゃんアバター向けに解説するものであり、仕様が違う他作者さんのアバターには当てはまらない部分もありますのでご注意ください。

 ロロミちゃんアバターそのものについてはこちら↓

 もしもこのページの最終更新が古い場合は、必ず最新の情報を探すようにしてください。VRChatのシステム周りは常にアップデートされており、解説が陳腐化するスピードが速いです。

 また、解説中に分からない単語が出てきた場合は必ずググってください。

最終更新 24/03/10 Unity2022.3.6f1


UnityとVCCの準備

 ダウンロード方法そのものは解説しません。ググってください。
 「VRC アバター アップロード」といった単語がおすすめ。とっても親切な解説サイトや動画がたくさん出てきます。必ず最新の情報をry
 VRChat公式が指定するverのUnity最新のVRChat Creator Companion(以下VCC)を用意し、開くことまでは出来たという前提で話を勧めます。
 ※unityをインストールする時に「Android Build Support」も一緒に入れないとQuest対応できませんので注意してください。初期設定ではチェックが入っていないと思います
 なお、PCのホスト名に日本語を使っているとアップロードできないというUnity2022のバグが存在している為、注意してください。

VCCへliltoon(とModular AvatarとAvatar Optimizer)の追加

 すでに追加済みの方はOKです。
 まずはliltoonとModular Avatar(以下MA)とAvatar Optimizer(以下AAO)をVCCに追加します(VPMリポジトリの追加)。以下の公式サイトからワンクリックしてくるだけでOK!(各サイトの解説に従って導入してください) 
 ロロミちゃんアバターではこれらを導入しないとアップロードできない物もあります。
 そうでなくとも便利なツールですので追加を推奨します。

新しいプロジェクトを作成

 まずはVCCのCreate New Projectから新しいプロジェクトを作成します。
 既存のプロジェクトでも構いませんが、その場合は必ずバックアップを取ってください。

VCCの画面。右上のボタンを押そう!
Avatars2022を選ぶ。隣のAvatarsはunity2019用なので無視して良い

 Manage Packagesの画面が開くので、liltoon、MA、AAOをそれぞれインストールします。右の+ボタンか、Installed Versionから任意のverを指定します(基本は最新verでOK)
 プロジェクトの準備が出来たら、右上のOpen ProjectボタンでUnityを開きます。時間がかかるので、お茶でも飲んで過ごしましょう。

必須ツールはVCCで簡単に管理できる

 開いたらアバターアップロードの準備に進みましょう。

初期画面はこんな感じ

アバターアップロード

Sceneファイルの作成

 unityにおけるセーブファイルのようなものとご理解ください。
 というわけで、Assetsタブ上で右クリックし、画像の要領でSceneファイルを作成してください。名前は任意の物で構いません。
 そうしたらダブルクリックしてSceneを開きます。

プロジェクトを作成したらまずシーンファイルを作成する癖をつけておこう

アバター.unitypackageのインポート

 エクスプローラーから、(アバター名).unitypackageをUnity画面上のAssetsタブへ直接D&Dしてください。画像左のような小窓が出てきますので、そのままいじらず「Import」ボタンを押します。

インポートに成功するとAssetsタブにアバター名のフォルダが出来ます

Prefabの設置

 アバター名フォルダを開くと、一番右にアバターが映っているものがありますね。これがプレハブです、HierarchyにD&Dする事で、sceneビュー(※はじめに作ったsceneファイルとは別物)にアバターが現れます。
 scene上のカメラを動かすのであれば、画像に書いた操作方法でどうぞ。ちなみに、Hierarchy上のオブジェクト(アバター名)をダブルクリックするとscene上のオブジェクト(アバター)に注視します。

Assetsは素材、使うものはHierarchyへ。実際の見た目はsceneビューで確認

VRCSDKを開く

 上部メニューからVRChatSDK>Show Control Panelへと進みます。
 まずは画面の指示に従ってVRCにログインしてください。

IDとパスワードを入力

 ログインしたら、Builderタブに切り替えます。アバターをアップロードする為に、「アバターの名前」「アバターの説明」「アバターのサムネイル」を設定する必要があります。
 必ずprivateでアップロードしてください。(※規約上問題ないアバターは除く)

スクロールバーを動かせます

 名前、説明は任意に名付けてください。
 サムネにつきましては、「TXandMT」フォルダにsamune画像を準備しているので、Select New Thumbnailから選ぶか、もしくはオリジナルの画像を準備して頂く、または、Capture From SceneからSceneビューに映っている物をそのままサムネとして撮影する事もできます。
 ちなみに、アバターアップロード後、サムネだけ変更したくなった、という場合は、この画面で新しいサムネに差し替えた後、上部に出てくるボタン「SaveChanges」をポチる事で更新できます(新たにアップロードし直す必要はありません)

実際にアップロード

 準備ができたら、SDK下部の「私はVRCの規約を理解し、同意します」的な事が書かれたボックスにチェックをつけ、Build&Publishボタンを押しましょう。
 これでPC用アバターとしてVRCにアップロードできました。お疲れさまでした。Quest対応したい方は次へ。

アップできたらVRC内で確認してみよう

Quest対応(Android対応)する

 ロロミちゃんアバターはQuest対応しておりますが、Quest対応する為にはandroidビルドでもう一度アップロードする必要があります。せっかくなのでそこまでやってください。
 ちなみに読む必要はありませんが、Quest対応とはつまりどういう事なのか書いたnoteもあるので参考にどうぞ

Androidビルドへ切り替える

 SDK下部にSelected PlatformのボタンがありますのでそこからAndroidに切り替えてください。これには少し時間がかかります。
 Assetsに沢山データがあればあるほど時間がかかるので、なるべくプロジェクトには余計な物を置かず、スッキリさせておきましょう。(理想としては1アバター1プロジェクト)

unityをインストールする時に「Android Build Support」も入れましたよね?

マテリアルを差し替えてアップロード

 ロロミちゃんアバターは一部を除いて、マテリアル(シェーダー)のみ切り替えればそのまま同じアバターをアップロード出来るようになっています。
 「TXandMT」フォルダにある、「MT_(アバター名)Q」マテリアルをSceneビュー上のアバターにそのままD&Dして差し替えてください。
 アップロードしたいモデルに複数メッシュがある場合は、全てのメッシュのマテリアルを同じように差し替える必要があります。

少し黄色みがかっているのはDirectionalLightの影響なので問題ありません

 差し替えたら、PC版と同じようにそのままアップロード可能です。
 重要なのは、PC版、Quest版ともに「同じBlueprint ID(以下BPID)でアップロードする事」です。
 hierarchy上にある別のアバターを同じBPIDでアップロードしたい場合は、VRCSDKのControl PanelからContent Managerを開き、目当てのアバターのCopy IDを押した後、hierarchyのアバターのInspectorにあるBPIDを入力する場所に「Ctrl+V」だ!!

Fallbackアバターとして設定する

 Fallback版アバターをご利用の場合は、アップロードした後にもうひと手間必要です(※フォールバックアバターとして利用するつもりがないのであれば不要)

 アップロードした後に、まだSDKを閉じないで下さい!
 スクロールバーを少し上へ上げると、Fallback Avatarに設定する為のボタンが出てきています。押しましょう。

今まで説明に使ってたアバターと違う? 気にしないで

 押した後に再度アップロードなどの操作は必要ありません。押すだけでOK。実際にVRChat内でフォールバックとして使う為には、VRC内で「このアバターを使います」と設定が必要ですのでお忘れなく。

 以上でアップロード作業は全て終了です。お疲れさまでした。

補足

DirectionalLightの設定

 アバターアップロードには特に支障がないので省きましたが、初期設定では逆光な上若干黄色みがかっている光の設定を変えたい場合は、まずHierarchyのDirectionalLightをクリックしてInspectorを開き、色を真っ白に変更した後、rotationのYの上を適当にドラッグして自分が見やすい、いい感じの位置にしましょう。

自分が見やすければ数字はなんでも良い

 ちなみにこの設定はUnity画面上のみの物であり、実際のアバターには一切関係ありません。(VRCはワールドごとに独自の設定がされています)

赤いビックリマークのエラー

基本はAitofixでOK

 verypoorのマークではなく、解消しなければアップロードできないエラーが現れる事があります。
 私が忘れてミスしている場合もあって申し訳ないのですが、基本的にAitofixを押せばアップロードできるようになるので押してください。
 ちなみに画像のエラーは「Quest用のテクスチャをASTC圧縮にしてください」的なエラーで、一度押してもらえばその後同プロジェクトでは出てこなくなると思います。

シェイプキーで操作するパーツのオンオフ

 アバターによっては、人間耳やケモミミなどのパーツをシェイプキーでオンオフできるようにしている場合があります。これらは、操作した後にアップロードしてください(基本的にVRC上で操作できるように作っていません)
 どのようなシェイプキーが実装されているかは、各アバターのreadmeで確認してください。
 シェイプキーによっては、PB側も操作する必要があります。
 ここでは例として、素体あり佐々斗くんのケモミミを消して人間耳を出します。

何か操作したい時はInspector

 まずはHierarchy上のアバターの左にある小さな矢印をクリックし、中身を開きましたらBody(目当てのシェイプキーがあるメッシュ)を選んで、InspectorからBlendshapeの項目を開きます。※下の方に同名のBodyオブジェクトがありますがこれは関係ありません、ご注意ください

上の画像と見比べてみてね

 Inspectorを下にスクロールしていきますと「mimi_out」「kemomimi_out」といった項目がありますので、これを操作します。今回の場合は100にすると消え、0にすると出てきます。

シェイプキーの詳細はreadmeで

 佐々斗くんの場合は、Hairメッシュにも「mimi_out」シェイプキーがありますのでこちらも操作します。これは、耳があろうがなかろうが髪型としての違和感を少なくする為のシェイプキーになります。(素体なし版はBodyに統合されているので別で操作する必要はありません)

アバターによって仕様が違うので分かりにくいかも。すみません

 このままですと、シェイプキーで消したケモミミはまだPBで揺れる状態なので動くと頭の外に飛び出してきます。PBの設定をしましょう。
 まずPB>Earの項目を開きます。通常であればこれをそのまま消すか非表示にしてもらえば良いのですが、佐々斗くんの場合、ここに後ろのみつあみボーンも含まれているので消すとそれが揺れなくなってしまいます。ですので、Root transformにmitu_01ボーンをD&DしてEar_rootから差し替えてください。mitu_01ボーンは、Amatureの階層を下に潜っていった先にあります(画像参照)

 以上のような感じで、シェイプキーを操作>PBがあるならその設定をする>アップロード という手順を踏んでください。

Bodyの下にあるもうひとつのBody

 素体あり版や着せ替えprefabには、BodyメッシュではないBodyオブジェクトがついている事があります。

本来同名オブジェクトは好ましくありませんが、仕様上あえてこうしてあります

 これはAAOの設定をする為のオブジェクトです。アップロード時にマージされて無くなるのでVRC上では問題ありませんが、Unity上でanimationを操作したい場合などは邪魔になると思うので、一時的に削除したり、animationを制作する時は素体なし版を使用するか、prefabではなくFBXを使用するなどで対処お願いします。

アップロード時にここで指定されたメッシュがこのオブジェクトにマージされるのです

AnchorOverrideやBoundsの設定

 これらは素体あり版や着せ替えprefabの場合、MA Mesh Sttingsによって設定されている為、通常いじる必要はありません。衣装やアクセサリーなどを後から追加した場合もこの設定が適用されます。
 ただし、素体なし版(支援版mediumも同様、改変を想定していない為)には設定されていませんので、必要であれば後から追加したり、独自に設定されてください。

このコンポーネントはアバターのrootに設定してください。AAOのTraceOptimizeも同様

アニメーターが上書きされる?

インポート時に出てくるウインドウ。上書きされる場合、右側に更新マークがついている

 アニメーターに限りませんが、ロロミちゃんアバターに限らず複数のアバターを同一プロジェクトで管理している場合、一部フォルダがアバターのインポート時に上書きされてしまう事があります。基本的には1プロジェクト1アバターで運用するようにしてください。あえて複数アバターを管理する場合は、上書きされたくない物についてはインポート時に気を付けて見るようにし、必要に応じてインポートしない選択を取ってください。
 詳しい方は「GUIDを変更すれば良いのではないか」と思ったと思うのですが、ロロミちゃんアバターの場合はむしろ上書きできるようにしておきたい為、あえてGUIDを変更していません。仕様になりますのでご了承ください。

何か不具合やミスを見つけた

 BOOTHのメッセージで教えてください。
 ツイッターにはマシュマロもありますので匿名でも大丈夫です。
 絶対にミスは起こるので、小さな事でも「これはミスかな?」と思ったらお気軽に教えてください!!!!
 直接メッセージを送るのは敷居が高いのであれば、なんなら #vgaro3D をつけて空リプとかでも構いません。(ただし、ツイッター以外のSNSでは気づかない可能性が高いです……)

着せ替えprefabについて

 素体ありQuestMedium版に着せ替えprefabがついている場合がありますので仕様を解説します。
 まず、prefabは「kisekae」フォルダの中にあります。(アバター名)_Nakedとか、(アバター名)_sotaiと書いてあるのがそうです。

いきなり真っ裸が現れたらびっくりしますもんね?

 大司教やノンネちゃんのような例外を除いて、HierarchyにD&Dすると体が紐みたいになっているアバターが表示されるでしょうが、それで正常です。シェイプキーによって体が細くなっています。
 これの上に服を着せて、アップロードする為のprefabです。シャレでもこのまま(裸のまま)でアップロードしないでください。そういう用途で作っていません……。

 対応衣装をアバターに直接D&Dし、その後アバターの干渉防止用シェイプキーを調整すればそのままアップロードできます(setup outfitなど、特別な操作は必要ありません)
 Questに対応させる場合は、アバターアップロード時と同様に、それぞれのマテリアルをQuest用に差し替えてからアップロードしてください。
 どのシェイプキーを動かすかは、衣装のreadmeを読んでください。

実際に服を着せ替える

 詳細を解説します。ここでは例として、アスティアちゃんに付属の水着を着せます。
 まず、素体あり版や支援版にある「kisekae」フォルダから、アバターの素体prefabをHierarchyにD&Dします。
 その次に、着せ替えたい衣装のprefabを、そこに直接D&Dします。

つまり、衣装をアバターの子にします

 このままでは紐が衣装を着ていてかなり悲しいので、アバターの干渉防止シェイプキーを調整します。(どのシェイプキーを調整すれば良いのかは、衣装のreadmeに書いてある為確認してください)

干渉防止用シェイプキーを調整

 干渉防止シェイプキーは、アバターのBodyのInspectorを開いてBlendshapeツリーの下の方にあります。衣装のreadmeの指示に従って調整してください。水着の場合は、「Body_slim_upleg以外をすべて0に」します。
 このままでもアップロード可能ですが、アスティアちゃんはタイツを履いているので、裸足にしようと思います。

髪の毛のマテリアルも変更してください

 すでに裸足に編集されたマテリアルを作成されているならそれと、もしまだ無ければ、「astia>TXandMT>HADASI」フォルダの中に「astia_barefoot」マテリアルがありますので、それをアスティアちゃんのBodyとHairにそれぞれD&Dし、差し替えてあげてください。
 この場合、見た目上の変化がなくても、髪の毛のマテリアルも差し替えなければ無駄なマテリアルが増えてしまう為注意してください。

 この後は、通常のアップロード手順を踏んで頂ければ大丈夫です。Quest対応もお忘れなく。(こちらも通常通りの手順で大丈夫です)
 大抵の場合は、衣装を変えてもQuestMediumにおさまるように制作しているのでマテリアルを差し替えるだけで対応可能です。(なっていなかったらミスしている可能性が高いので教えてください)

アップロード時にverypoorと言われる

衣装を着せただけなのに……

 複数の衣装や小物を盛ったわけではないのにSDK上でverypoorと言われた! と不安に思われたかもしれませんが、これはMAやAAOといった非破壊ツールを利用している事によりSDK上の計算がアテにならなくなった事によります。(最適化はアップロード時にかかる為)
 アップロード後、VRC上で確認できるものが実際のランクとなります。

 anatawaさんが公開しているanatawa12’s gist packに付属しているActualPerformanceWindowで、アップロード時の実際のパフォーマンスランクを確認できる為ご利用ください。
anatawa12’s gist pack(ドキュメント)
https://vpm.anatawa12.com/gists/ja/docs/basic-usage/

プレイモードに入る事でウインドウが現れて確認できます

 Unity上でプラットフォームを切り替えずにどちらのパフォーマンスランクも確認できる為、とても便利です!

 大体のロロミちゃんアバターは(例外はありますが)素体のみでQuestGoodになるように制作されている為、素体の上に(ローポリの)服を着せるだけのような簡単な改変であればQuestMediumに収まります。対応衣装はがんばって制作しているのでSHOPをチェックしてね! 改変してもQuest対応を諦めなくても良い!! ご要望はSHOPのメッセージやツイッター(X)のマシュマロとかにどうぞ。
 じゃあ髪型も服もどちらも変えたい場合はpoor確定かと思われると思うのですが、服を着替えた場合って、素体テクスチャに使われている服の部分が遊んでいる事になりますよね。なので、そこに髪の毛のテクスチャを入れるようにすれば、mediumに収まるのではないかなと考えています。それを実現するのがAAOです。テクスチャは手動で合わせてもらう必要がありますが、メッシュはUnity上で少し設定するだけで非破壊でひとつにすることが出来ます。
 対応髪型についてはまだ制作した事がないので、作る事ができたら説明を追記しますね。


この記事が気に入ったらサポートをしてみませんか?