本日は Unity の技術調査枠です。
今回は以下の記事を参考に prefab と package の作成方法を学びます。
techacademy.jp
blog.k-kansei.com
今回やりたい事として例えば以下のような例です。
一つに既に作成した映像プロジェクトのシーンがあり、それを Sharing 用プロジェクトのシーンに取り込みたいという場合です。
・映像プロジェクトのシーン
・Sharing 用プロジェクトのシーン
Assetsを丸々コピーすればリソースは取得できますが、その場合シーン内に構成したオブジェクトは取得できません。
そんなときに利用するのが prefab ですね。
例えばシーン内の ViewObject をそのまま流用したい場合、これを prefab 化します。
まず project ビュー上で右クリック Create -> Prefab を選択します。
すると prefab ファイルが生成されるのでそこに prefab 化したいオブジェクトをドラッグするだけです。
ただし prefab ファイルはあくまで構成の情報を持つファイルなので各リソースは本ファイルに含まれていません。
例えば、prefab ファイルだけ別プロジェクトにコピーしてもオブジェクトに含まれる3Dモデルなどは表示されません。
prefab が参照するリソースファイルもプロジェクトにコピーしてやる必要があります。
よって次は package を使ってみます。
Assets ファイルのコピーでもプロジェクトへのコピーは可能ですが、package を用いれば、それらを一つのファイルにまとめられます。
package 化したいフォルダを選択して右クリック ExportPackage で出力可能です。
このとき、prefab で利用しているファイル群を必ず含めるようにします。
出力すると unitypackage ファイルが作成されます。
後は unitypackage ファイルをダブルクリックして反映したいプロジェクトでインポートを行います。
prefab ファイルをシーンに反映すると、以下の通り、リソースを含めた状態で適用されます。
プロジェクトからプロジェクトへオブジェクトのコピーを行うことができました。