Итак, я хочу создать экземпляр массива игровых объектов с помощью скриптов редактора. Теперь проблема заключается в том, когда я создаю сборку, она теряет родительский элемент в иерархии. Когда я инстанцировании как ниже сценарий, он работает просто отлично:Создание массива игровых объектов не может получить родительское преобразование [Editor Scripting]
for(int i = 0; i < 20; i++){ //_dTarget.halfLength; i++){
GameObject a = (GameObject)PrefabUtility.InstantiatePrefab(_dTarget.wallTile);
a.transform.parent = goTarget.transform;
}
но если я инстанцировании так:
GameObject[] testG = new GameObject[20];
for(int i = 0; i < 20; i++){
testG[i] = _dTarget.wallTile;
}
for(int i = 0; i < 20; i++){ //_dTarget.halfLength; i++){
GameObject a = (GameObject)PrefabUtility.InstantiatePrefab(testG[i]);
a.transform.parent = goTarget.transform;
}
они потеряли своих родителей и инстанцирован вне родителя:
Любые идеи, почему это происходит?
Вы знаете, что вы можете создать экземпляр объекта и установить его родитель один вызов? [Instantiate (Object original, Vector3 position, Quaternion rotation, Transform parent)] (https://docs.unity3d.com/ScriptReference/Object.Instantiate.html) –
Конечно, я это знаю! Но это другое. Это редактор сценариев. –
Вы пытались преобразовать метод. SetParent вместо назначения родителя? –