Как получить имя переменной GameObject - PullRequest
0 голосов
/ 26 мая 2019

У меня есть список GameObject. То, что я делаю, - всякий раз, когда я создаю экземпляр префаба, который я храню в переменной GameObject, затем уничтожаю его.

List<GameObject> listofGameObject;
blueLine = Instantiate(monitorShapes, transform.position, transform.rotation);

Затем я получу доступ к этому GameObject с помощью listofGameObject [2]. Я пытаюсь получить имя переменной GameObject, хранящейся в индексе 2 объекта listofGameObject, которая называется blueLine. Я попытался использовать listofGameObject [2] .name, но он возвращает имя prefab в активе.

Ответы [ 3 ]

1 голос
/ 27 мая 2019

После создания экземпляра установите имя GameObject равным имени переменной

blueLine = Instantiate(monitorShapes, transform.position, transform.rotation);
blueLine.name = nameof(blueLine);
0 голосов
/ 27 мая 2019

Почему именно вам нужно получить имя переменной? Вы можете удалить игровой объект из списка, сохранить его в игровом объекте, а затем уничтожить игровой объект.

Таким образом, код будет выглядеть примерно так:

//Creates the list
List<GameObject> listOfGameObjects = new List<GameObject>();
//Creates the blueLine GameObject
blueLine = Instantiate(monitorShapes, transform.position, transform.rotation);
//Adds the blueLine object to the list
listOfGameObjects.Add(blueLine);

Затем, когда вы хотите удалить объект из списка, вы делаете следующее:

//Removes the blueLine object from the list
listOfGameObjects.Remove(blueLine);
//Destroys the blueLine Object from the scene
Destroy(blueLine);

Я надеюсь, что это то решение, которое вы искали

0 голосов
/ 26 мая 2019

Префабы создаются с именем префаба.

Есть ли скрипт, который содержит имя переменной blueLine? Если да, то вы можете получить этот компонент, прежде чем ссылаться на имя переменной.

Пример.

List<GameObject> listofGameObject;
blueLine = Instantiate(monitorShapes, transform.position, transform.rotation);

-- listofGameObject[2].GetComponent<[ScriptName]>().variableName;

Дайте мне знать, если это поможет

...