← チュートリアル目次へ戻る | ← 第5章: Shape 登録と Shape Director 動作確認
本章では、キャラクターの特定部位(本チュートリアルでは胸部 BreastSize)のみを変形させる 局所体型変形(PBM: Partial Body Morph) の登録手順と、衣装(Dress)を素体の局所変形に追従させる設定方法を解説します。
.vroid データを作成し、素体用(Figure)と衣装着用用(Dress)の計 4 つの PBM VRM をエクスポートします。BreastSize)を登録した後、Dress 側に PBM 追従を設定し、Morph Shape(morphSampleI)を上書き再定義して、ShapeDirector で連動動作を確認します。SampleI)です。BreastSize 用 .vroid データの作成(VRoid Studio)まずは VRoid Studio を使用して、Base 用素体および FBM 用素体の胸部サイズを変更した .vroid データを作成します。
BasicFemale.vroid を開きます。体型 タブを選択し、パラメータ一覧にある 胸の大きさ スライダーを 1.000(最大)に設定します。
▲図 6-1: BasicFemale を開き、体型 > 胸の大きさを 1.0 に設定
BreastSizeBasicFemale.vroid として保存します。
▲図 6-2: BreastSizeBasicFemale.vroid として名前を付けて保存
SampleI.vroid を開きます。体型 タブを選択し、同じく 胸の大きさ スライダーを 1.000 に設定します。
▲図 6-3: SampleI を開き、体型 > 胸の大きさを 1.0 に設定
BreastSizeSampleI.vroid として保存します。
▲図 6-4: BreastSizeSampleI.vroid として名前を付けて保存
作成した 2 つの .vroid データから、素体(Figure)用の PBM VRM をエクスポートします。
BreastSizeBasicFemale.vrm のエクスポートBreastSizeBasicFemale.vroid を開いた状態で、画面右上のエクスポートボタンから VRMエクスポート を選択します。VRM1.0 を選択し、削減設定を行わずにエクスポート画面を開きます。19214)、マテリアル数(9)、ボーン数(59)が Base 素体と一致していることを確認します。
▲図 6-5: ポリゴン数・マテリアル数・ボーン数を確認し BreastSizeBasicFemale.vrm としてエクスポート
BreastSizeBasicFemale と入力し、Unity プロジェクト内のフォルダへ BreastSizeBasicFemale.vrm としてエクスポートします。BreastSizeSampleI.vrm のエクスポートBreastSizeSampleI.vroid を開いた状態で、同様に VRMエクスポート を選択します。VRM1.0 を選択し、ポリゴン数(19214)、マテリアル数(9)、ボーン数(59)を確認します。
▲図 6-6: ポリゴン数・マテリアル数・ボーン数を確認し BreastSizeSampleI.vrm としてエクスポート
BreastSizeSampleI と入力し、Unity プロジェクト内へ BreastSizeSampleI.vrm としてエクスポートします。次に、衣装(Dress)が着用された状態の PBM VRM を 2 つエクスポートします。
Dress1BreastSizeBasicFemale.vrm のエクスポートBreastSizeBasicFemale.vroid を開きます。衣装 タブを選択し、第4章で使用したプリセットドレス(Dress)を着用させます。
▲図 6-7: BreastSizeBasicFemale を開き、Dress を着用させる
VRM1.0 でエクスポートを開きます。32368)、マテリアル数(14)、ボーン数(159)を確認します。
▲図 6-8: ポリゴン数・マテリアル数・ボーン数を確認し Dress1BreastSizeBasicFemale.vrm としてエクスポート
Dress1BreastSizeBasicFemale と入力し、Unity プロジェクト内へ Dress1BreastSizeBasicFemale.vrm としてエクスポートします。Dress1BreastSizeSampleI.vrm のエクスポートBreastSizeSampleI.vroid を開きます。衣装 タブを選択し、同様にプリセットドレス(Dress)を着用させます。
▲図 6-9: BreastSizeSampleI を開き、Dress を着用させる
VRM1.0 でエクスポートを開きます。32368)、マテリアル数(14)、ボーン数(159)を確認します。
▲図 6-10: ポリゴン数・マテリアル数・ボーン数を確認し Dress1BreastSizeSampleI.vrm としてエクスポート
Dress1BreastSizeSampleI と入力し、Unity プロジェクト内へ Dress1BreastSizeSampleI.vrm としてエクスポートします。BreastSize)の登録ここから Unity エディタ上での作業となります。まずは Figure 側に PBM(BreastSize)を登録します。
Figure > PBMs を選択します。Add PBM Entry ボタンをクリックします。PBM Name に BreastSize と入力します。PBM Prefabs 一覧に Figure の軸が表示されます。
BasicFemale 行(Base 素体)に、Project ウィンドウの BreastSizeBasicFemale.vrm をドラッグ&ドロップして指定します。SampleI 行(FBM 軸)に、Project ウィンドウの BreastSizeSampleI.vrm をドラッグ&ドロップして指定します。Save to Database ボタンをクリックして保存します(※右側の Prefab on Database 欄は保存済み表示のため直接編集しません)。
▲図 6-11: Figure > PBMs で PBM Name に BreastSize を入力し、Base / FBM の VRM を指定して保存
Figure への PBM 登録が完了したら、次に衣装(Dress1)側でその PBM に追従する設定を行います。
[!IMPORTANT] 必ず Figure PBM を先に登録してから 衣装側の追従設定を行ってください。衣装側では Figure に登録された PBM 軸を元に追従関係を選択します。
Outfits > Mesh Outfits > Dress1 > PBMs を選択します。Follow BreastSize にチェックを入れて 有効 にします。Base Prefab 行に、Project ウィンドウの Dress1BreastSizeBasicFemale.vrm をドラッグ&ドロップして指定します。SampleI Prefab 行に、Project ウィンドウの Dress1BreastSizeSampleI.vrm をドラッグ&ドロップして指定します。Save to Database ボタンをクリックして保存します。
▲図 6-12: Outfits > Mesh Outfits > Dress1 > PBMs で Follow BreastSize を有効にし、Base / FBM VRM を指定して保存
morphSampleI)の上書き再定義第5章で作成した Morph Shape(morphSampleI)に、今回追加した PBM(BreastSize)の変形重みを追加して上書き保存します。
Shapes > Morph Shapes > morphSampleI を選択します(※新しい Shape Id は作成しません)。Morphs 一覧を確認します。Figure 軸から自動的に SampleI と BreastSize が表示されます。
SampleI の重み: 1(既存の値を維持)BreastSize の重み: 0.8 に設定(スライダーまたは数値入力)
[!NOTE] Shape 設定画面上では論理名
BreastSizeとして表示されます(生成後の物理的な内部管理名がPBM_BreastSizeとなります)。
Save to Database ボタンをクリックして、既存の morphSampleI を上書き保存します。
▲図 6-13: Shapes > Morph Shapes > morphSampleI で SampleI = 1 を維持し、BreastSize = 0.8 を設定して上書き保存
更新した Database から Shape Template アセットを再生成します。
Generation セクションを選択します。Generate ボタンをクリックします。Assets/ShapeSync/Generated)を選択して「フォルダーの選択」をクリックし、再生成を実行します。morphSampleI.asset 等)が更新されます。
▲図 6-14: Generation セクションで Generate をクリックし、出力フォルダーを選択して再生成を実行
Scene 上の Figure にて、PBM(BreastSize)の変形が Figure と Dress の両方に同期して適用されることを確認します。
BasicFemale)を選択します。
ShapeDirector コンポーネントの Template List にはすでに第5章で Template が登録されています(※再登録の手動操作は不要です)。Auto Compile が ON になっているため、Play Mode 開始時に自動的に最新の Template が初期同期されます。ShapeDirector の Runtime Shapes (Authoritative) 内にある morphSampleI の Morphs を展開します。BreastSize(PBM_BreastSize)のスライダーを動かします。
▲図 6-15: Play Mode で歩行アニメーション再生中に BreastSize を操作し、Figure と Dress の胸部が同期して変形することを確認
Follow BreastSize が表示されないBreastSize)が登録・保存されていない可能性があります。Figure > PBMs を開き、PBM Name: BreastSize として VRM を指定し、Save to Database を押して保存してください。保存後に Outfits > Mesh Outfits > Dress1 > PBMs を開くと Follow BreastSize が表示されます。BreastSize を動かしても胸部が変形しない / Dress が追従しないmorphSampleI)の上書き保存後に Generate を再実行していないか、VRM エクスポート時にトポロジ(ポリゴン数・ボーン数)が変更されてしまった可能性があります。Generation で Generate を再実行したことを確認してください。また、VRoid Studio からエクスポートした VRM のポリゴン数・マテリアル数・ボーン数が Base モデルと完全に一致していることを確認してください。