見出し画像

【初心者向け】VRoid>VRCアバター変換講座2024② #VRoid #VRChat

ご近隣の皆様こんにちは!
ご近所系Vtuberおじさんのがそさんです。

今回は前回の記事に引き続き、初心者向けのVRoidモデル>VRChatアバターへの変換講座です。
第2回となる今回は、出力したVRoidモデルにいくつかの加工を加えながら、可能な限り「簡単に」「きれいな」アバターとして利用できるような手順を解説していきます。

また、この記事の中で「もっと細かく調整したいな…」という箇所があれば、それぞれ細かい設定に関して解説している記事を併記しておきますので、気になる箇所があればぜひそちらもお試しください!


更新履歴

2024/06/04 現在のVRCSDKの仕様、VRChatガイドラインに合わせて、手順の追加、内容の変更をおこないました。
2024/09/06 一部記載内容の修正、追記を行いました

1.VRMエクスポート~事前調整

1-①VRoidStudioで最低限やっておくべき調整

まず、VRoidStudioからエクスポートする前に最低限確認しておくべき項目について列挙します。

・肌マスク
服から地肌の貫通を防ぐために肌テクスチャを削る「肌マスク」について、基本的には自動である程度適用されてはいますが、VRで動くには不十分な状態である場合があります。
例えば「ワンピース(ペンシル)」の腰部分などは座る姿勢の際に腹が引っ込むだけで容易に貫通してしまうので、撮影モードでいろんな姿勢をとらせて貫通しないか確認してあげましょう。

▲姿勢を変えると地肌が貫通する例

特に今回の手順でフルトラにも挑む場合、控えめな肌マスクにしておくと腹回りの地肌が貫通しがちになってしまうので、気を付けておきましょう。

逆に「ミニTシャツ」等はデフォルトの肌マスクだと肌を消しすぎているので、十分に気を付けて修正しましょう。

▲肌を消しすぎて裏地が見えている例

・表情設定
表情設定は重要です。実際にVRChat上で対象の表情を使うことになりますし、「あ」「い」「う」「え」「お」はリップシンクに影響があります。
忘れずに自分好みの表情にしてあげましょう。

▲「表情設定」は「顔」の一番下の項目です

また、VRChat上の「サムズアップ(親指を立てる、所謂「グッジョブ」)」のハンドサインは、現行のVRMConverterだと「悲しい」の表情が割り当てられるので、サムズアップの時にポジティブな表情をしたい場合は表記を無視してポジティブな表情に編集してあげましょう。

▲親指立てながらこの表情はしたくない…はず

最低限上記2つが確認できていれば問題ありません。

【STEP UP!】髪の毛の揺れ物にこだわりたい人へ
髪の毛の揺れもの設定をよりこだわりたい方は、以下の記事を参考により細かくセットしてみましょう。

・サムネイル作成
VRChatにアップロードする際のアバターサムネイル用画像を撮影します。

▲撮影メニューはVRoidStudio右上のカメラマークから
▲サムネ用の解像度は「プリセットサイズ」の中にあります

今回エクスポートしたモデルはこちら。

▲CLCTマシマシでいきます

ここまで出来たら、早速エクスポートしていきましょう。
ちなみに、VRMエクスポート時は現状「VRM0.0」を選択しておくのが無難です。
現状VRM1.0非対応アプリケーションなども多いため、VRC以外のVRM対応アプリケーションで遊ぼうとしたときに問題が起きるかもしれません。
必要であればVRM0.0版とVRM1.0版の両方をエクスポートしてもいいかもしれません。

エクスポートしたら、Unityでの作業!…を楽にするためのちょっとした加工を行います。

1-②スカート調整、ボーン調整

VRoidStudioでモデルの作成が完了したら、今度は簡単な変換ツールを使ってスカートや胴体の構造を調整していきます。
ただし
・ワンピーススカートを使わない人
・フルトラをしない人

上記二つに当てはまる人は、それぞれ対応する手順を飛ばしても問題ありません。

【ワンピーススカート調整】VRM スプリングボーン調整ツールを使う

1)以下のサイトにアクセス

2)「ファイルを選択」でエクスポートしたVRMファイルを読み込み

3)「VRoidおすすめ設定」を選択

3)「スカートに重力を追加する」「スカート後ろ側を曲げない」にチェックが入っていることを確認し「OK」

▲他の3項目は好みでどうぞ

4)スカートの挙動が変わっていることを確認出来たら「エクスポート」で任意の場所にファイルを保存

ちなみに、この作業を実施しておくと以下の記事の手順の一部(Unityでのスカート背面ボーンの移動)が省略できます。

【フルトラ用調整】胴体ボーン調整ツールを使う

【STEP UP!】よりフルトラ適性を高めたい人へ
よりフルトラ適性を高めたい人は、胴体のボーン調整を実施する前に、以後は以下の記事を参考にしてみてください。(要Blender・VRMConverter使用不可)


1)以下のサイトにアクセス

2)ページ下部「使い方」のところの「リリース版」というリンクをクリック

3)移動先のページで「vrm_upperchest_remover.exe」をクリックしダウンのロード
【注意】
*ダウンロード時やプログラムの実行時、Windows、ないしブラウザ側のセキュリティが警告を発する場合があり、その際は無視する、許可する等で回避する必要があります。
また、本ツールそのものは安全なものではございますが、ページ内の説明文の通り当該操作は自己責任でご実施ください。ツール制作者への問い合わせはツール制作者の負担になりますのでお控えください。

4)調整後のモデルを保存したいフォルダにダウンロードしたexeファイルを移動

5)VRMを上記ツールにドラッグ&ドロップ

これで調整が行われたモデルが「【元のファイル名】_mod.vrm」という名前で同じフォルダ内に出力されます。

今回のモデルはこのような状態になりました。

▲左から「元のVRM」「スカート調整モデル」「スカート調整モデルにフルトラ調整をしたモデル」

ここまで出来たらいよいよUnity上での作業です!

2.Unityへのインポート~変換

VCC導入~VRMConverterの導入は前回の記事を参照してください。

2-①VRMのインポート

1)ウィンドウ上部のメニューから「VRM0」>「Import from VRM 0.x」を選択

2)インポートしたいVRMを選択し「開く

3)保存先の場所を選択し、ファイル名を確認の上「保存

▲ファイル名はデフォルトだと「【VRMのファイル名】.prefab」になっています

保存先の場所にこのようなデータがあればインポート成功です。

▲今回はAssetフォルダ内に「test」というフォルダを作成し、そこに保存しました

2-②モデルの変換

1)インポートしたモデルを選択した状態で「VRM0」>「Duplicate and Convert for VRChat」を選択

2)「肩の高さ」を「0.01」にして、あとはデフォルトのまま「複製して変換
*自分で揺れもの設定を細かく調整したい人はこのまま作業せず読み進めてください

▲肩の高さの数値は好みがあると思いますがひとまずこの数値から始めましょう

3)変換後の保存先の場所を選択し「保存

▲VRMモデルの保存先と同じにすると混乱してしまう可能性があるので分けたほうがいいかもしれません

scene上に変換されたモデルが自動で出現し、変換完了のポップアップが出れば変換成功です。

ここまでの作業で一応これでもVRChatへアップロードできるようにはなっていますが、より「快適に」「きれいな」アバターとして利用するにはもうすこし調整を重ねる必要があります。

【STEP UP!】揺れもの調整をより細かく行いたい人へ
揺れもの設定をより細かく詰めたい方は、下記の記事を参照したあと、この後の手順に進んでください。

3.変換したアバターの調整

3-①アバターの基本設定を調整する

VRモードで利用しやすいよう、アバターの基本設定を調整します。

1)Hierarchy上のアバターを選択する

▲この後の調整を間違えてもHierarchy上のモデルを削除して保存先からモデルをD&Dしなおせば最初の状態にもどります。
▲やり直す場合

2)「View Position」のZの値を「0.06~0.08」程度に変更
*デフォルメアバターなど極端なサイズのアバターは数値を調整してください。

▲グレーの球が眉間のあたりから出てきていればOK

3)「Eye」の「Rotation State」の各数値を10%~30%程度に調整

▲デフォルト値
▲調整後の数値(参考値)
▲デフォルトの視線
▲調整前の挙動
▲調整後の挙動

これでアバター設定の調整は完了です。
ここまでできればラストスパート!
ゴールはもうすぐです。

【STEP UP!】ハンドサインをより細かく設定したい方へ
ハンドサインの設定をより細かく設定したりアバターの指が変な曲がり方になってしまうのを防ぎたい方は以下の記事を参照してみてください。

3-②シェーダーを変更する

手前の手順まででVRChat上の挙動のほとんどは改善しました。
しかしVRMに使用されている「MToon」というシェーダーはVRChatのワールドで多用されているライティングと非常に相性が悪いため、これを別のシェーダーに差し替えます。

▲VRChatのワールドでよく使われてる「Point Light」環境下の描画比較。
左が今回使う「ArxCharacterShaders」右が「MToon」。
MToonの描画がおかしくなっているのがわかるだろうか。

今回は変更先のシェーダーとして「ArxCharacterShaders」を使用します。

今回このシェーダーを利用する理由としては以下のとおりです。

  • シェーダー変更後に引き継がれるマテリアル設定が多い(マテリアルのメイン色など)

  • 複数選択したマテリアルを調整できる

  • Unity上の挙動が軽い

ここでは上記シェーダーの導入手順から変更後の調整までを解説します。

1)BoothでダウンロードしたZipを解凍後、中のUnityPackageを「Unityプロジェクトを開いた状態で」実行する

2)下図のような画面が出たら「Import」を選択

▲インポートが成功すればAsset直下に「ArxCharacterShaders」というフォルダが表示されます

3)一覧から「【モデル名】(VRChat).materials」という名前のフォルダを選択する

4)表示されているマテリアルの中からどれか一つを選択し「CTRL+A」で全選択

5)右上「VRM/MToon」と表示されているところをクリックし、出てきた一覧の中から「ArxCharacterShaders」>「AlphaCutout」を選択

▲本来不透明なマテリアルは「Opaque」にすべきですが、描画結果に違いがないので今回は手順優先

6)マテリアルの「Common」内「Cull」を「None」に変更

▲こちらも手順省略のためまとめて変更します(顔などのマテリアルは本来変更不要です)

7)マテリアルの「Shadeing/Shadow」の項目の中の「Default color shading」内「Strength&Mask」の値を「0」にする

これで基本的な手続きは完了です。
なお、この作業で描画に影響が出ている項目は以下のとおり。

  • 半透明表現(瞳のハイライト、メガネのレンズなど/シェーダーをさらに変更する必要あり)

  • アウトライン(顔、体、衣服など/シェーダーをさらに変更する必要あり)

  • 影色(このシェーダーには「影色」の項目がないため)

  • マットキャップ(メガネのレンズ)

上記が省略されていても問題ない場合はこのままアップロードしても構いません。
半透明表現アウトラインが必要な方はこの後の手順で解説します。
影色、マットキャップについては今回の記事の趣旨の都合上省略します。

【STEP UP!】より細かいシェーダー設定がしたい方へ
より細かいシェーダーの調整がしたい方は、「liltoon」を使用したなるとさんの下記の記事を参照してみましょう

3-③半透明、アウトラインの描画設定

1)半透明の描画が必要な個所(半透明表現が使われている場合の瞳ハイライト/眼鏡レンズ)のマテリアルを選択

▲マテリアルの見た目で判別できないときは選択後のinspectorタブで名称を確認してみましょう

2)inspector内のシェーダー名をクリックし「ArxCharacterShaders」>「Fade」を選択

▲マテリアルのプレビューがちゃんと半透明表示になっていればOK

【注意】メガネと瞳ハイライトについて
メガネレンズと瞳のハイライトを両方「Fade」にすると描画が乱れやすいので「Fade」を使うのはひとまずどちらか一方にしましょう
*描画順の調整で対応することも可能です

3)アウトラインを表示させたいマテリアルを選択

▲Ctrlキーを押しながらクリックすると複数選択できます

4)inspector上のシェーダー名をクリックして「ArxCharacterShaders」>「_Outline」>「AlphaCutout」を選択

この手順でMToonと同じアウトライン設定になります。

ここまでやればおおむね問題ない場合が多いです。早速アップロードしましょう!
アウトラインのトラブル(ほうれい線問題)などを解決したい方はさらに以下の【STEP UP!】を実行しましょう

【STEP UP!】顔にほうれい線のようなラインが出るのを防ぐ
1)以下のアイテムをダウンロード

2)ダウンロードした画像ファイルをAsset内の適当な場所にドラッグ&ドロップしてインポート

3)顔のマテリアルを選択し、inspector上の「Outline」内「Width&Mask」左の枠に画像をドラック&ドロップ

▲ドラッグ&ドロップがうまくいかない場合はinspector右上の鍵マークを押してinspectorをロックしておきましょう(作業が終わったら解除を忘れずに!)

4.アップロードする

ここまでくればあとはアップロードするだけです。
今回は初心者向けということで、アップロードの手順も解説します。

1)上部メニュー「VRChat SDK」>「Show Control Panel」を選択

2)ポップアップしたウィンドウでVRChatアカウントでサインイン
*念のためですが「Visitor」ランクの人はアップロード権限がないので注意!

▲サインイン時の挙動については2ファクタ認証の状況などにもよるので割愛します

3)サインイン後「Builder」タブを選択、前の章でほうれい線マスクを適用している場合はエラーが出るので「Auto Fix」を選択

【注意】「Auto Fix」について

黄色い「!」で示されている項目の「Auto Fix」は別の問題が発生する可能性があるので、押さないでください。
赤い「!」で示されている項目の「Auto Fix」は、解決しなければアップロードできないたぐいのエラーです。


▲赤い「!」マークのみを実行しましょう

4)アバター名、利用可能範囲、各種センシティブフラグの設定をします

▲アバター名は下線部に入力しましょう

利用可能範囲は下図下線部でご選択ください。自分以外のユーザーにもこのアバターを使用させる場合は「Public」に変更しましょう。
*使用している衣装やアクセサリ、メイクなどの利用規約には注意!

コンテンツ警告は以下を基準にチェックを入れましょう。
該当しない項目にチェックを入れる必要はありません。
*あくまで私が公式ドキュメントおよび翻訳記事を要約したものになります。内容の正確性について担保できないこと、予めご理解ください。

Sexually suggestive
水着やバニー服、股上までスリットの入ったチャイナ服など、露出度高めセクシー系の恰好、衣装。
R-18という意味ではないので要注意。

Adult language and themes
ブラックユーモア、賭博、薬物使用など、性的なもの以外の成人向けコンテンツ。

Graphic violence
リアルな暴力的コンテンツ。自傷表現、暴力表現など。
デフォルメされたものではなく、リアリティのある暴力表現に限ります(たとえば、かわいいたんこぶなんかはこれにあたりません)

Excessive gore
いわゆるグロテスクな表現。流血や内臓漏出などの表現がこれに当たるかと思われます。

Extreme horror
強いホラー表現。一般的なホラー表現よりもさらに強烈なもの(体調に影響が出かねない強烈な表現)を指します。
ちょっとしたホラー要素がある程度であればチェック不要かと思われます。

5)サムネイル画像の設定をします。「Select New Thumbnail」のボタンを押した後、最初にVRoid Studioで作成したサムネイル用画像を選択してください。
なお、この画像はUnityにインポートする必要はありません

▲正しく設定できると画像が表示されます

ここまでできたら、一番下の規約同意のチェックボックスにチェックを入れ、「Build &Publish」を押してください。

▲規約等については事前にご確認ください

5)新規sceneの場合は保存先指定があるのでAssetフォルダ内の任意の場所にファイル名を設定の上「保存
*Assetフォルダの外、たとえば「マイピクチャ」等には保存できません。

以下の表示が出ればアップロード成功です!あなたのVRoidアバターで、自由にVRCをお楽しみください!

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