【Unity】スクリプトを使って、GameObjectを生成する

今回はスクリプトからGameObjectを利用する方法を紹介します。 Unityには「Resources」というフォルダを利用すれば、とても簡単に生成できます。

Resources

今まで動的にGameObjectを作成する際には、Inspector上でPrefab(プレハブ)を指定していました。 今回のやり方は、スクリプト上で生成したいPrefabを選ぶことができます。 [c] GameObject _prefab = Resources.Load("hogehoge"); [/c]

この方法を利用する場合、事前にプロジェクト内に「Resources」フォルダを作成して、ここにプレハブを入れておきます。 Resources : Unity

メモリ

この方法でオブジェクトを作成した場合、ガベージコレクションでメモリが削除できません。 ですので、明示的にメモリを削除する必要があります。 [c] //アンロードをするアセットを指定する Resources.UnloadAsset(_prefab);

//使用していないアセットをアンロード Resources.UnloadUnuseAssets();

[/c] GameScene内でオブジェクトを利用している場合には、上記メソッドを呼び出してもメモリの削除ができませんので、利用するタイミング等注意して下さい。

キャラクターであそぼう! Unity日和。 -UnityでBlender自作キャラクターを読み込んで楽しむ、シーン作りキャラクターであそぼう! Unity日和。 -UnityでBlender自作キャラクターを読み込んで楽しむ、シーン作り
kappa,友

ビー・エヌ・エヌ新社 2015-06-23
売り上げランキング : 10852

Amazonで詳しく見る