スクリプトでゲームオブジェクトを作成する方法
シーンビューでゲームオブジェクトを最初から配置するのではなく、スクリプトで、動的に配置する方法になります。Instantiate()メソッドでは、引数にPrefabまたは、インスタンス化されたオブジェクトが必要になりますが、この方法では、空のゲームオブジェクトを作成する手順となります。
サンプルシーン
スクリプトの実行のため、空のゲームオブジェクトを作成し、作成したテストスクリプトをアタッチします。
using System; using UnityEngine; public class Test : MonoBehaviour { void Start() { // Type型配列に追加したいコンポーネントを代入 Type[] components = { typeof(Rigidbody), typeof(BoxCollider) }; // 名前と追加したいコンポーネントを引数としたゲームオブジェクトの作成(引数は、名前一つでも良い) var obj = new GameObject("Ghost", components); // コンポーネントのプロパティを変更してみる obj.GetComponent<Rigidbody>().isKinematic = true; } }
実行
シーンに新しく引数で設定した名前のゲームオブジェクトが作成され、同じく引数で設定したコンポーネントがアタッチされていることを確認。また、プロパティの変更もなされていることも確認。
ディスカッション
コメント一覧
まだ、コメントがありません