スクリプトでゲームオブジェクトを作成する方法
シーンビューでゲームオブジェクトを最初から配置するのではなく、スクリプトで、動的に配置する方法になります。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;
}
}
実行
シーンに新しく引数で設定した名前のゲームオブジェクトが作成され、同じく引数で設定したコンポーネントがアタッチされていることを確認。また、プロパティの変更もなされていることも確認。

訪問数 88 回, 今日の訪問数 1回





ディスカッション
コメント一覧
まだ、コメントがありません