Unityのプロジェクトを覗くと出てくるFBXとPrefab。アバター改変では両方を扱うので、役割の違いを整理しておきましょう。ここを理解しておくと、Prefabの扱いで事故を起こしにくくなり、アバターがアップデートされたときの差し替えも怖くなくなります。この記事では、2つの違いに加えて、FBXのインポート設定で見るべき項目、Prefab Variantの作り方、やってはいけない操作まで具体的に書きます。
FBXは3Dモデルの素材データ
FBXは、メッシュ・ボーン・シェイプキー・アニメーションなどを含む3Dモデルの交換用ファイルです。BlenderやMayaで作ったモデルをUnityに持ち込むときの形式で、アバターの「素体そのもの」と言えます。
Unity内ではFBXの中身は基本的に直接編集できません。インポート設定(スケールやリグの扱い)は変更できますが、メッシュそのものを作り替えるにはBlenderなどの3Dソフトに戻る必要があります。
Prefabは組み立て済みのセット
Prefab(プレハブ)は、FBXのモデルにマテリアル・PhysBone・アニメーターなどの設定を組み合わせた「完成品のテンプレート」です。販売アバターで「シーンに置いてください」と案内されるのは、たいていこのPrefabです。
つまり、FBXという素材に設定を足して着られる状態にしたものがPrefab、という関係です。改変で私たちが触るのは、ほとんどがPrefab側になります。
FBXのインポート設定で見る項目
FBXを選択すると Inspector に Import Settings が出ます。アバター改変で関係するのは主に次の項目です(Unity 2022.3 マニュアル「Model tab」より)。
Model タブ
Scale Factor 元ファイルのスケールが合わないときに全体を拡縮
Import BlendShapes シェイプキーを読み込む(表情や体型調整に必須。OFFにしない)
Read/Write Enabled メッシュをCPU側にも保持。一部のツールが要求する
Blend Shape Normals シェイプキーの法線の扱い。見た目の陰影に影響
Legacy Blend Shape Normals 旧方式の法線計算。配布物の指定があればそれに従う
Rig タブ
Animation Type VRChatアバターは Humanoid にする
配布アバターはこれらが設定済みの状態で届くので、通常は触りません。触るのは「差し替えたFBXで表情が動かない(Import BlendShapes がOFF)」「陰影が急に変わった(法線設定の違い)」といった問題が出たときです。設定を変えたら必ず Apply を押さないと反映されません。
改変時の注意 Override と Apply
Prefabをシーンに置いて編集すると、その変更は元のPrefabとの差分(Override)として管理されます。シーン上のインスタンスをいじっている限りは安全です。Inspector 上部の Overrides ドロップダウンを開くと、何を変えたかが一覧で見えます。
問題は、意図せず元のPrefabに変更を適用(Apply)してしまうケースです。Overrides ドロップダウンの「Apply All」を押すと、シーン上の差分が Prefab Asset に書き戻され、そのPrefabを使っている他のシーンや別の改変にも影響が及びます。配布物のPrefab Assetをダブルクリックして Prefab Mode で直接編集するのも同じ理由で避けたい操作です。
Prefab Variantの作り方
大きな改変をするときは、Prefab Variant(バリアント)を作る方法が安全です。Unity 2022.3 マニュアルでは2通りの作り方が案内されています。
方法1 Project ビューで配布 Prefab を右クリック → Create → Prefab Variant
(差分なしの Variant ができる)
方法2 シーン上の Prefab インスタンスを Project ビューへドラッグ
→ ダイアログで「Prefab Variant」を選ぶ
(そのインスタンスに加えた差分を持った Variant ができる)
Variant は矢印付きの青い Prefab アイコンで表示されます。以後はこの Variant をシーンに置いて改変すれば、衣装追加も色替えも Variant 側の差分として保存され、配布 Prefab は無傷のままです。
注意点が1つあります。Variant を Prefab Mode で開いたときの Overrides ドロップダウンには「Apply All to Base」というボタンが出ます。これを押すと差分が元(Base)の Prefab に書き戻され、Variant を作った意味がなくなります。マニュアルも「意図がない限り Base に適用しない」と明記しています。
Unpack Prefab は最後の手段
右クリックメニューの Unpack Prefab は、インスタンスと Prefab のつながりを切って、ただの GameObject の集まりにする操作です。一見自由に編集できて便利ですが、元の Prefab が更新されても追従しなくなり、Override の一覧も使えなくなります。「Prefab が更新されたときの差し替え」を将来やる可能性があるなら、Unpack せずに Variant か Modular Avatar のコンポーネントで改変を積み上げてください。
アバターが更新されたとき
アバターの作者が新しいバージョンを配布したとき、この構造を知っていると落ち着いて対応できます。多くの場合、新しいFBXとPrefabが同梱されており、自分の改変内容(衣装・色・設定)をどう引き継ぐかが作業の中心になります。
Variant で改変していれば、新しい unitypackage をインポートして Base の Prefab と FBX を上書きすると、Variant の差分はそのまま残ります。作者側でオブジェクト名やボーン構成が変わった箇所だけ、差分が外れて崩れるので、そこを直せば完了です。
Modular Avatarのような非破壊改変を使っていれば、衣装のオブジェクトを新しいアバターへ移すだけで済むことも多くあります。破壊的に編集していた場合は、やり直しの範囲が大きくなります。この差が「非破壊改変が推奨される理由」です。
つまずきやすいポイント
変更が消えた
Prefabの更新で上書きされた可能性があります。作業前のプロジェクトコピーがあれば戻せます。
別のシーンでも見た目が変わってしまった
元のPrefabに適用してしまったケースです。バリアントを使う運用に切り替えましょう。
FBXを差し替えたら設定が外れた
マテリアルやボーン参照は再設定が必要になることがあります。差し替えは時間に余裕のあるときに行いましょう。
Variant を置いたのに配布 Prefab の色が変わった
「Apply All to Base」を押した可能性が高いです。Base の Prefab を配布物から入れ直すのが確実です。
よくある質問
Q. FBXを直接編集したい
A. Blenderなどの3Dソフトで開いて編集し、書き出し直す形になります。Unity内での直接編集はできません。
Q. Prefab Variantは難しい?
A. 操作自体は複製と同じ感覚です。元との差分だけを持つ複製、と考えると分かりやすくなります。
Q. Variant と Modular Avatar はどちらを使う?
A. 両立します。アバター本体の設定変更は Variant に、衣装やギミックの追加は Modular Avatar のコンポーネントに、と分けると管理しやすくなります。衣装の着せ方は「Modular Avatarで衣装を着せる 非破壊改変のすすめ」を参照してください。
引用記事Modular Avatarで衣装を着せる 非破壊改変のすすめアバター
Q. どこまでバックアップすればいい?
A. プロジェクトフォルダごとコピーしておけば確実です。
参考
Unity 2022.3 マニュアル「Prefab Variants」「Model tab(FBX Import Settings)」(2026年9月10日確認)
関連記事: 「VRChat制作のためのUnity基本操作」
引用記事VRChat制作のためのUnity基本操作技術・制作