スマゲ

スマートなゲームづくりを目指して日々精進

Unity Packageの使い方

Unity Packageの使い方をまとめます

■Unity Package
・Unityで作成したアセットを共有/再利用するときに利用する
・複数のファイルを一つのファイルとしてまとめることができる
・ファイル構造を保持したまま圧縮、展開できる

■Unity Packageのインポート方法
メニューから Assets -> Import Package からインポートできます
f:id:sanukin39:20160315215907p:plain

■Unity Packageの種類
・Standard Asset Package
UnityではStandard Assetsというゲームでよく利用するようなアセットをまとめたものがあり、Import Packageから使いたいパッケージを選択することで利用できます。
※Standard Assetsはインポートしたら、Unityエディタのバージョンを変えても自動的にアップデートはされません。

・Custom Package
Standard Asset Package以外の一般のユーザーなどが作成したものです。Import PackageからCustom Packageを選択後対象のunity packageを選ぶことで利用できます。その他にもunity packageをダブルクリックしてもインポートできます。

■Unity Packageを作成する
試しにUnity Packageを作成してみます、今回は回るCube Prefabをエクスポートしてみます。
新しいシーンにCubeを作成、回転するようにして、それをプレパブ化します

void Update () {
    transform.Rotate(Vector3.one);
}

f:id:sanukin39:20160315221840g:plain

作成したプレハブを右クリック -> Export Packageを選択
f:id:sanukin39:20160315222256p:plain

どのアセットを含めるか選択した後、Exportを選択します。以下の画面ではデフォルトでCubeスクリプトも選択されていますが、これはプレハブにそのスクリプトがアタッチされているため、UnityがCubeプレハブに対して依存性があると判断したからです。
f:id:sanukin39:20160315222351p:plain

Cubeプレハブ、スクリプトが含まれたUnityPackageが作成されました。
f:id:sanukin39:20160315222715p:plain

■Unity Packageをインポートする
Unityで新しいプロジェクトを作成し、上記の方法で作成したUnity Packageをインポートします。

f:id:sanukin39:20160315222946p:plain

プレハブ、スクリプトともインポート出来ました
f:id:sanukin39:20160315223050p:plain

依存性も保たれるのでプレハブにスクリプトを再度アタッチする必要もありません

■まとめ
Utilやプラグイン等のゲームでよく使う機能はUnity Packageを利用して他のプロジェクトで利用できるようにしておくと、同じ実装を繰り返さなくてよいので楽

■参考
Unity - マニュアル: アセットパッケージ
Unity - マニュアル: Standard Assets