prefabを動的に配置したい
久しぶりにいじると、色々忘れてる。汗
手順1
アセットのprefabは、Resourcesフォルダー(無ければ作成する)に入れておく。
手順2
以下のコードを書く。
var prefab = Resources.Load<GameObject>("prefabへのパス"); //※1 instance = Instantiate(prefab); instance.transform.SetParent(ParentWindow.transform); //※2 instance.transform.localScale = Vector3.one; instance.transform.localPosition = Vector3.zero; instance.name = instance.name.Substring(0, instance.name.Length - 7); //※3
※1
prefabへのパスは、アセットのResourcesフォルダー以降のパスになる。
例えば ("フォルダー名/prefab名") といった感じ。
※2
ParentWindowはprefabを配置したい親のゲームオブジェクトのこと。
別途、Findで取得しておくこと。
※3
動的に配置すると、配置されたインスタンス名の末尾に自動的に(Clone)が追加されるので、それを削除している。
以上