Unityで3Dキャラクターモデルにアクセサリーを装着する
Unityでキャラクターモデルにアクセサリーを装着する
3Dキャラクターモデルを編集するためにUnityを利用する
本記事では Blender で作成したアクセサリーを Unity というソフトを使って、VRoid Studioで作成した3Dキャラクターモデルに装着します。Unity は3Dアプリケーションの開発ソフトですが、UniVRM というライブラリを利用することで Unity 上で VRM ファイルを編集することができます。
VRMの編集を完了するまでの流れ
本記事はUnity で3Dキャラクターモデルにアクセサリーを装着して再出力するところまでです。全体の流れは以下のようになります。
3章 3Dキャラクターモデル(VRMファイル)とアクセサリー(BLENDファイル)の取り込み
1章 Unityのインストール
- 1-1章 Unityをダウンロードする
初めに Unity をインストールします。前提条件として本記事は Windows 64bit 環境での手順になります。Unity は以下のページからダウンロードできます。本記事では Unity 2018.3.8f1 を使用します。
・Get Started with Unity Personal
利用規約を確認してチェックボックスをチェックします。[Windows用のインストーラーをダウンロードする]ボタンをクリックしてUnityのインストーラーをダウンロードします。
ダウンロードしたインストーラーを実行すると、インストール画面が開きます。今回の作業では、全ての設定をデフォルト設定でインストールを進めて問題ありません。
インストーラーを利用してインストールを行った場合、デスクトップに Unity のショートカットアイコンが追加されます。ダブルクリックで Unity を起動します。
Unityの利用にはUnityアカウントでのサインインが必要となります。以下の記事で Unity のインストール手順とUnityアカウントの登録手順を紹介していますので、参考にしてください。
・Unityの利用手順(Unityアカウントの登録/サインイン編)
2章 Unityプロジェクトの作成
- 2-1章 Unityプロジェクトを新規作成する
3Dキャラクターモデルを編集するためのUnityプロジェクトを作成します。Unityを起動し、起動画面上部にある[New]タブをクリックすると、プロジェクトの新規作成画面が開きます。
以下の情報を入力して新規プロジェクトの設定を行います。
- Project name:任意のプロジェクト名
- Templaete:3D
- Location:任意のディレクトリ
設定を完了したら[Create project]ボタンをクリックします。
Unityプロジェクトが新規作成され、以下の画面が開きます。
3章 3Dキャラクターモデル(VRMファイル)とアクセサリー(BLENDファイル)の取り込み
- 3-1章 UniVRMをインポートする
本章では作成したUnityプロジェクトに3Dキャラクターモデルとアクセサリーの3Dモデルを取り込みます。VRoid Studioで作成した3Dキャラクターモデルは .vrm というファイル形式で出力されています。
VRM は株式会社ドワンゴが公開しているVRアプリケーション向け3Dアバターファイルフォーマットです。
VRM ファイルを編集するには Unity に UniVRM というパッケージをインポートして利用する必要があります。UniVRM は以下のページからダウンロードできます。
ダウンロードページを開き、最新の UniVRM-X.XX.X.unitypackage のリンクをクリックします。本記事ではバージョン 0.51.0 の UniVRM を利用します。
UniVRM-0.51.0.unitypackage がダウンロードされるので、これをダブルクリックで実行します。このとき、先ほど作成したUnityプロジェクトを起動した状態にしておく必要があります。
すると、Unityプロジェクトに[Import Unity Package]ダイアログが開きます。[Import]ボタンをクリックして、UniVRM をプロジェクトにインポートします。
Assets フォルダ配下に VRM フォルダがインポートされます。合わせて、メニューに VRM の項目が追加されていれば UniVRM のインポートは完了です。
- 3-2章 3Dキャラクターモデルとアクセサリーを取り込む
次に3Dキャラクターモデルをプロジェクトに取り込みます。方法は VRM ファイルをプロジェクトの Assets ディレクトリにドラッグ操作で移動するだけです。
UniVRM が正常にインポートできていれば以下の通り、Unityプロジェクトにキャラクターが読み込まれます。
次にメガネの3Dモデルをプロジェクトに取り込みます。Blender で作成したプロジェクトを保存していると .blend というファイル形式で出力されています。この BLEND ファイルをプロジェクトの Assets ディレクトリにドラッグ操作で移動するだけです。
以下の通り、3Dモデルが読み込まれれば成功です。
※ BLEND ファイルが取り込めないエラーが発生する場合
BLEND ファイルをドラッグ操作でUnityに取り込むには .blend 形式のファイルが Blender に関連付けられている必要があります。インストーラーを使って Blender をインストールしていれば自動で関連付けが行われます。関連付けが行われていれば、以下のように BLEND ファイルに Blender のアイコンが表示されます。
一方で ZIP ファイルを展開する形で Blnder をインストールしていた場合には関連付けが自動では行われません。
以下の記事を参考に .blend 形式のファイルの関連付けを行ってください。
Blenderで作成した3DモデルをUnityに取り込む その5(.blendファイルでの取り込み)
4章 3Dキャラクターモデルにメガネを装着する
- 4-1章 メガネを頭部オブジェクトにセットする
全ての3DモデルをUnityに取り込みました。本章では3Dキャラクターモデルにメガネを装着します。取り込んだ2つのモデルを組み合わせます。まずは3Dキャラクターモデルを取り込んだ際に生成された .prefab 形式のファイルを Hierarchy パネルにドラッグします。
Hierarchy にキャラクターをドラッグすると、Scene 画面にキャラクターが表示されます。Scene 画面では Blender と同様にマウスのホイール操作でカメラ操作が可能です。
3Dキャラクターモデルは体の構造データを保持しています。追加したキャラクターの左側にある[▼]ボタンをクリックすると、データの階層を開くことができます。
今回キャラクターに装着するアクセサリーはメガネなので、3Dキャラクターモデルの顔にアクセサリーが追従する必要があります。以下のようにデータの階層を開いていきます。
・Root → Global → Position → J_Bip_C_Hip → J_Bip_C_Spine → J_Bip_C_Chest → J_Bip_C_UpperChest → J_Bip_C_Neck → J_Bip_C_Head
この J_Bip_C_Head が頭部の位置を示す項目になります。
メガネの3Dモデルである .blend 形式のファイルを J_Bip_C_Head の中にドラッグします。
Hierarchy にメガネモデルが追加され、Scene 画面にメガネが表示されます。
- 4-2章 メガネの大きさと位置を微調整する
2つのモデルを組み合わせることができました。後はメガネの位置と大きさをキャラクターに合わせて微調整します。追加したメガネの項目をクリックすると、右側の Inspector ビューに3Dモデルの各種情報が表示されます。Transform コンポーネントに表示されるのがメガネの位置や回転、スケールを表すデータになります。
この値を調整してキャラクターの頭部にメガネを位置合わせします。[Position]で位置を、[Rotation]で回転を、[Scale]で大きさを調整できます。大きさや回転方向はBlenderで調整済みなので、ここでは位置のみ、以下のように調整しました。
- Position:X 0, Y 0.06, Z 0.028
- Rotation:X 0, Y 0, Z 0
- Scale:X 1, Y 1, Z 1
これで3Dキャラクターモデルにメガネを装着することができました。
5章 VRMファイルの再出力
- 5-1章 VRMファイルをエクスポートする
最後に、メガネを装着した3Dキャラクターモデルをもう一度 VRM ファイルとして出力して作業完了です。出力する3Dキャラクターモデルを指定するため、Hierarchy 上の3Dキャラクターモデルの名前オブジェクトをクリックして選択状態にします。この状態で Unity のメニューから VRM → UniVRM-0.51.0 → Export humanoid を選択します。
VRM Exporter 画面が開きます。[Title]にモデル名、[Author]に作者名を入力します。VRoid Studioのエクスポートで設定済みであれば、設定がそのまま表示されます。項目が入力されていることを確認し、[Export]ボタンをクリックします。
ダイアログが開くので、出力先のディレクトリとファイル名を指定します。[保存]をクリックして VRM ファイルを出力します。
これでメガネを装着した3Dキャラクターモデルのモデルを作成できました。
- 5-2章 Unityプロジェクトを保存する
修正を行うためのUnityプロジェクトを保存しておきたい場合は、シーンの保存を行う必要があります。メニューから File → Save をクリックします。
これで Unity プロジェクトの状態が保存されます。