Unity入門:スクリプトからゲームオブジェクトを生成する

スクリプトからゲームオブジェクトを生成する方法です。

 

ゲームの進行に応じてゲームオブジェクトを増やすことは多々あります。

例えば特定の条件で敵キャラを追加したり、時間に応じて回復アイテムを

フィールド上に出現させたりなどです。

 

ゲームを作っていく際には必ずと言っていいほど必要な知識であると思うので、

どんどん活用していければと思います。

 

ではさっそく解説していきたいと思います。

 

オブジェクトを生成するには以下のコードを使います。

 

public GameObject targetprefab;

Instantiate(targetprefab, Vector3 position,Quaternion rotation);

まず第一引数には作成したいオブジェクトのprefabを指定します。
 

prefabとはオブジェクトの元となる型のようなもので、

Editor上で 右クリック->Crate->prefab から作成し、

作成したprefabに複製したいオブジェクトをドラッグアンドドロップすることで

そのオブジェクトのprefabを作成することができます。

 

わざわざprefabを作成する利点としては、ゲーム上に一つのものを複数置く場合に

(例えばブロック崩しのブロックなど)有効です。

 

わざわざ一つずつ複製し作る代わりにprefabを1つ作ることで、

画面においていけるので作成に手間がかからないということがあります。

 

またパラメータを変えたい場合などに複数のもののパラメータを一つずつ変える代わりに

prefabのパラメータを変えることですべてに反映されることも利点の一つです。

 

今回の場合作成するobjectをpublicで指定してあげているので、

実際に使う際にはEditor上でスクリプトを選択し作成するGameObjectを指定する

欄が作られているので、そこにドラッグアンドドロップしてあげて適応してください。

 

第二引数は作成する場所をVector3型で指定します。

第三引数には作成するオブジェクトの向かせる向きをquaternion型で指定します。

 

このようにして簡単に作成することができます。

これを活用してどんどん要素を追加していきたいですね。

 

以上、スクリプトからゲームオブジェクトを生成するでした。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です