見出し画像

Nomad SculptでモデリングしたデータをVRChatのアバターに!体験レポート③Unityにインポート

こんばんは!川島田です。
先日投稿したこちらのノートの内容を、実践してみました!
↓↓↓↓
はじめに
検証中!Nomad SculptでモデリングしたデータをVRChatのアバターに!

この記事はレポート②の続きです
Nomad SculptでモデリングしたデータをVRChatのアバターに!体験レポート②blenderで作業

iPadでモデリングができるアプリ「Nomad Sculpt」を買ったため、なにかしたいなーというところから始まりました。

この記事ではNomad Sculptでモデリングしたものを、blenderで調整し、そのモデルをさらにUnityで調整&VRCに持っていくための準備をレポートしていきたいと思います。

はじめに

Blenderでのモデリングとボーン設定を終えた後、次はUnityにインポートするステップに進みました。Unityはゲーム開発やVRコンテンツの制作において非常に人気のあるエンジンで、VRChatのアバター作成にも欠かせないツールです。
(まだ詳しくないですがいつかゲーム制作の部分も触ってみたいなーと思ってます。)

この段階では、サイズ調整やジオメトリの位置、シェーダーの設定など、いくつかの重要なポイントに注意しながら作業を進めました。以下に、私の体験を詳しくお伝えします。

Unityの準備

1. Unityのインストールとプロジェクトの作成

まず、Unity Hubを使って最新のUnityをインストールし、新しいプロジェクトを作成しました。プロジェクトのテンプレートは「3D」を選択しました。

VRCにアバターを持っていく際に使用するUnityのバージョンは2025年2月時点では「2022.3.22f1」でした。

いろんなバージョンが出ていて、最新のものを使えばいいわけではないようなので、ご注意ください!

新規プロジェクトを作成し、VRCSDKとUNITYChantoonshadeを下記からダウンロードし、プロジェクトにインポートします。

上部メニューのアセットからインポートできます。

Unityの画面

2. Blenderからのエクスポート

Blenderで作成したモデルをFBX形式でエクスポートしました。
エクスポート時には、
不要なオブジェクトは削除、カメラやライトは書き出さない設定にします。

  • スケールの確認

サイズが適切でないと、VRChat内での表示や動きに影響を与えるため、必ず確認が必要です。最初は少し大きめに設定しましたが、実際にVRChatで動かすことを想定して調整しましょう。グレーの線1マスが10センチです。

最初140センチに設定してた(デカすぎました)
  • ジオメトリの位置

エクスポートの前に、ジオメトリの位置を確認しました。オレンジの点です。
キャラクターの足元の中心を原点に合わせることが重要です。これにより、VRChat内での動作が自然になります。
上の画像では顔の中心にあるので、足もとに移動しました。

  • 足元の中心位置: Unityの「Transform」ツールを使って、キャラクターの足元を地面に合わせるように位置を調整しました。これが不適切だと、アバターが地面を浮いてしまったり、逆に埋まってしまったりするため、注意が必要です。

エクスポートの設定:

  • 内容>カメラやライトは選択を外す。

  • トランスフォーム>スケールを適用は「すべてFBX」を選択。

  • アーマチュア>リーフボーン追加のチェックは外す

エクスポートはここから


設定はこうしました

Unityへのインポート

1. FBXファイルのインポート

Unityを起動し、先ほどエクスポートしたFBXファイルをプロジェクトの「Assets」フォルダにドラッグ&ドロップしました。Unityが自動的にファイルをインポートし、モデルがプロジェクトに追加されます。

2. サイズ調整とジオメトリの位置

サイズの調整(blenderで調整し終わっていれば対応不要)

Unityにインポートした後、最初に行ったのはキャラクターのサイズ調整です。デフォルメキャラクターは通常、VRChatのアバターサイズに合わせる必要があります。Unityのスケール設定を使って、キャラクターのサイズを調整しました。

VRC持って行ってから大きすぎることに気づいて調整したりしました。
サイズ調整難しかったです。

アバターアップロードしてみたけど大きすぎた図(140cm)

好みですが、気持ち小さめに設定しておくと、パブリックのワールドに出たときに↑のような変な存在感を放たずに済みそうです。
VRCでは周りにいる人に目線を合わせることもできるので、それを利用して理想のサイズ感を探っておくとよさそうです。

ボーンの設定

1.ボーンの割り当て

blenderで設定したリグの各ボーンをUnity上での役割に当てはめていきます。

FBXを選択し、インスペクターからRigを選びConfigureをクリックします。

ボーンの設定をしたいときは赤枠を左からクリック
Configureを押した後

Configureを押すとこんな画面になります。
右側のパネル内で、各ボーンをUnity上での役割に当てはめます。
この画面は調整した後なので、すべて緑色ですが
どこか様子がおかしいときは赤色になっています。
全部緑になるように調整しました。



2.Tポーズの設定

パネル下部のPoseからEnforce T‐Poseを選びます

ボーンをすべて緑にした後は、モデルをTポーズに設定しました。Tポーズは、アニメーションの基準となるポーズであり、この状態でボーンの設定を行うことで、アニメーションがスムーズになります。
VRCに読み込む際もここが重要なので、忘れないようにしましょう。

Tポーズの設定ができてないと赤文字で表示されます。
私はこの設定をせずにインポートしてしまい、アバターの腕が体に埋まりました。

左上にメッセージが出ます
  • Tポーズの確認: Blenderで設定したボーンがUnityに正しくインポートされているか確認し、必要に応じて調整しました。特に、腕や脚の位置が正しいかを確認し、Tポーズを維持することが重要です。

シェーダーの設定

  •  シェーダーの選択

Unityでは、シェーダーを使ってキャラクターの見た目を大きく変えることができます。デフォルメキャラクターに合ったシェーダーを選ぶことで、より魅力的なアバターに仕上げることが可能です。
今回はデフォルトで入っているStandardとインポートしたUNITYChantoonshadeを使用しました。

シェーダーは本当にたくさん種類があるので、今度好きなシェーダーを探す旅に出ようと思います。

影の色やアウトラインの設定などを行いました。


シェーダーで調整した後

モデルの確認とテスト

VRCに持っていく前に、作ったモデルに不備がないか、Unityのanimatorウィンドウを使用して確認するとよさそうです。
思った通りの挙動をしていればOKです。

 VRChatへのエクスポート準備

最終的に、Unityでの設定を完了させた後、VRChatにエクスポートする準備を行いました。この段階で、すべての設定が正しいか再確認し、問題があれば修正しました。

Unityにインポートする工程は、アバター制作の中でも特に重要なステップです。サイズ調整やジオメトリの位置、ボーンの設定、シェーダーの選択など、さまざまな要素に注意を払う必要があります。特に、足元の中心位置やTポーズの設定は、アバターの動作や表示に大きな影響を与えるため、慎重に行いましょう。

この段階を経て、次はVRChatへのエクスポートに進む準備が整いました。次はアップロードです!

最後に

このあとはUnityで最後のアップロード作業&VRCでの確認行います。
まとめられたらレポートしたいと思います。
出来たらこの記事上にリンク追加します。

記載事項に間違いがあったら、コメントで教えてくれると嬉しいです!
質問や感想もお待ちしてます

それでは!

いいなと思ったら応援しよう!