コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【Unity】プレハブのネストが簡単な手順で実現できる「Nested Prefabs」紹介($16.20)

概要

2017/3/31 に、プレハブのネスト用のアセット「Nested Prefabs」がリリースされました

「Nested Prefabs」を導入すると、簡単な手順でプレハブのネストができるようになります

検証環境

  • Unity 5.6.2f1
  • Nested Prefabs 1.2.3

公式ドキュメント(英語)

https://www.visualdesigncafe.com/products/nestedprefabs/documentation/

ネストされたプレハブの作り方

f:id:baba_s:20170830103719g:plain

プレハブ(Prefab B)を別のプレハブ(Prefab A)の階層にドラッグ&ドロップして、
プレハブ(Prefab A)の「Apply」ボタンを選択するだけです

ネストされたプレハブに変更を適用する

f:id:baba_s:20170830105557g:plain

ネストされたプレハブ(Prefab B)を変更した後に「Apply」ボタンを選択すると
ネストされたプレハブにも元となるプレハブにも変更が適用されます

元となるプレハブの変更を反映する

f:id:baba_s:20170830110000g:plain

元となるプレハブを変更した後に、
ネストされたプレハブ(Prefab B)のアイコンを右クリックして「Revert Prefab」を選ぶと
ネストされたプレハブ(Prefab B)に元となるプレハブの変更が適用されます

元となるプレハブへの紐付けを切断する

f:id:baba_s:20170830110650g:plain

ネストされたプレハブ(Prefab B)のアイコンを右クリックして
「Break Prefab Connection」を選ぶと
元となるプレハブへの紐付けを切断することができます

ネストされたプレハブのプロパティをオーバーライドする

f:id:baba_s:20170830111453g:plain

ネストされたプレハブに「Prefab Overrides」コンポーネントをアタッチして
任意のパラメータを設定すると、元となるプレハブに影響を与えること無く
ネストされたプレハブのパラメータを変更することが可能です

設定

下記のスクリプトを編集することでいくつかの設定を変更できます

Assets/Nested Prefabs/Editor/NestedPrefabsPreferences.cs

パラメータ 内容
ENABLE_ANALYTICS true の場合、Nested Prefabs で例外が発生した時に
匿名でサーバに報告します
CHECK_FOR_UPDATES true の場合、エディタの起動時に Nested Prefabs の更新を確認します

まとめ

Asset Store には現在も多くのネストプレハブを管理するアセットが存在しますが、
「Nested Prefabs」はそれらの中でも非常に使いやすいアセットだと感じています
興味がある方は購入してみて頂ければと思います

関連記事