はじめに
今回はアバターに髪飾りや指輪やイヤリングを追加する方法を紹介します。
モデルの用意
今回はこちらのモデルを導入します。(宣伝)
モデルは何でも大丈夫です。

実験だけならHierarchyを右クリック → 3D Object → Cubeなどのモデルでも実験できます。

モデルの読み込み
Projectにモデルの.unitypackageヲドラッグ&ドロップ。

Importを押します。

Projectを右クリック → Create → Folderを選択。

名前をAdd_Modelなどに変更。

この中に読み込んだモデルをドラッグ&ドロップ。

髪飾りの設定
読み込んだモデルの中からprefabデータを探します。
Hierarchyにドラッグ&ドロップ。
現在まだPhysBoneが対応してないのでDynamic Boneの方を読み込み。

3Dモデルのボーンを開きます。
追従させたいボーンを探します。
今回は髪飾りなのでHeadに追従させます。

Headの所に読み込んだモデルをドラッグ&ドロップ。

Yキーを押して位置、回転、大きさを調整。
髪飾りとして妥当な位置に配置します。

これで髪飾りの設定が完了です。

頭を動かしても追従します。

Modular Avatarを使った追加方法
Modular Avatar使いはこのボーンを開く操作が面倒と言い始めました(?)

そこでモデルの直下に置いてボーン追従できる機能が追加されました。

それが「MA Bone Proxy」です。

追加したいモデルをアバターの階層直下にモデルを配置して選択。
インスペクター → 「コンポーネントを追加」を選択。

「Ma Bone」で検索。
MA Bone Proxyを選択して追加。

ここにHeadなどの同期させたいボーンをドラッグ&ドロップで追加。

この状態で再生ボタンを押してPlayモードに入ると…
Modular Avatarの処理が入り、指定したボーンの階層の中に入ります。

詳細はこちらで解説。


設定のためにボーンを開いてたり…
使った結果データ的に余計な「Supine Head Proxy」みたいなデータができたりするので…
本当の意味で便利になったのかは正直謎。
可能なら設定したい2つの重要項目
多くのモデルは「Skinned Mesh Renderer設定」です。
これはボーンやシェイプキーで「変形する形状」のための描画設定になります。
追加したモデルを選択。

インスペクターを見ると、細かな設定項目が確認できます。
そのうち特に重要なのが「Bounds範囲」と「アンカーオーバーライド」です。

この2つが適切に設定されてない場合、下記の不具合が起こります。
・モデルの一部が消える → Bounds範囲が不適切
・モデルの一部で色が違う → アンカーオーバーライドが不適切
この2つに対処するための設定を紹介していきます。
モデルの一部が消える → Bounds範囲
「Bounds範囲」はモデル全体を “一回り大きく” 覆ってください。

たまに作者が設定し忘れて…
初期状態である、モデルに範囲がギリギリな状態のままなことがあります。
その場合、ボーンやシェイプキー操作でモデルがBounds範囲の外に出てしまいます。

その結果、一定の視点でモデルの一部が消える問題が発生します。

このBounds範囲が画面外に行くと描画が消えます。
↓すごい極端なことをするとこんな感じの挙動になります。

このような事例を見つけた場合は… 手動でBounds範囲を一回り大きくする設定。
あと、可能であればモデル作者にお問い合わせまでしてください。


悪気はないんですが…
このBounds設定本当によく忘れるんですよね…
詳細はこちらで解説。
モデルの一部で色が違う → アンカーオーバーライド
結論だけ言うと…
Skinned Mesh Rendererでアンカーオーバーライドに「Chest」ボーンを入れてください。

“あなたが使ってるモデルのChest” を指定する必要があります。
なので申し訳ないですが… これは皆さんにお任せするしかないです。

あと可能であれば使用してる形状すべてで同じ設定を行ってください。

Modular Avatarを使う方は一番上の階層に「MA Mesh Settings」を配置。
下記のように設定。
・設定モード → 設定
・アンカーオーバーライド → Chest
・Bounds 設定 → よくわからない人は「設定しない」
↓これでもまとめてアンカーオーバーライドのChest指定ができます。

問題の原因はMA Mesh Settingsの詳細はこちらで解説。
その他のアクセサリー設定
こちらのモデルを読み込みます。(宣伝)



胸部分の飾りはChestの中に入れてください。

指輪などはHandの中の対応する指のボーンに入れてください。

これでアクセサリー設定が完了です。

指輪もちゃんと入ってます。

イヤリングは髪飾りと同様にHeadの中に入れます。

PhysBone設定がある所にモデルを入れる際の注意点
PhysBone設定がある所にモデルを入れると…
そのモデルのBoneにPhysBone設定が乗って形が崩れることがあります。
代表的な例は「ケモミミ」「ボーン付きイヤリングモデル」の追加です。
これを行う場合は、まずケモミミボーンにイヤリングモデルを入れます。

そして、ケモミミのPhysBoneからIgnore Transformsの値を+1。
イヤリングモデルをドラッグ&ドロップなどで設定。
これでPhys Boneが干渉しイヤリング全体の形が崩れるのを防げます。

Ignore Transformsは設定した階層以下のボーンに対して
“このPhysBoneの設定を入れない” という処理です。
Phys Boneの詳細はこちらで解説。
これでケモミミに入れたイヤリングの平和が守られました。

最近イヤリングを人の耳の位置ではなく、ケモミミに着ける派を知ってた確かにな…
となったのであった。
まとめ
今回はアバターに髪飾りや指輪やイヤリングを追加する方法を紹介しました。
Avatar3.0の使い方はこちらで解説。
ぜひこちらもご覧ください。
コメント