с использованием TMPro;
публичный класс InstanziaOggetti : MonoBehaviour
{
public ObjectScriptable[] ObjectX;//имя scriptableObject
публичный текст TMP_Text ;//3d текст, который будет создан над объектом
public TMP_Text[] objectName;//имя, которое будет записано для созданного объекта
void Start()
{
ButtonName();
}
public void Button1() //с помощью кнопки n1 я создаю экземпляр первого объекта
{
DestroyObjectInScene();
CreateNewObject(0) ;
}
public void Button2()//с помощью кнопки n2 я создаю экземпляр второго объекта
{
DestroyObjectInScene();
CreateNewObject(1);
}
public void Button3()
{
DestroyObjectInScene();
CreateNewObject(2);
}
public void CreateNewObject(int objectNumber) //создаем объект для создания экземпляра
{
ObjectScriptable ob = ObjectX[objectNumber];
GameObject objectY = Instantiate(ob.objectPrefab);
objectY.transform.position = new Vector3 (0, 0,5f, 0);
Код: Выделить всё
TMP_Text tt = Instantiate(text);
tt.transform.position = new Vector3(0, 2.5f, 0);
tt.text = ob.objectName;
}
public void DestroyObjectInScene()//destroy stage objects that have the RESPAWN TAG
{
GameObject objectInScene = GameObject.FindGameObjectWithTag("Respawn");
if (objectInScene != null)
{
Destroy(objectInScene);
}
}
void ButtonName() //the name of the object is associated with the 3D text
{
for (int i = 0; i < ObjectX.Length; i++)
{
if (ObjectX[i] != null)
{
objectName[i].text = ObjectX[i].objectName;
}
else
{
objectName[i].text = "";
}
}
}
Исправьте мой сценарий или пришлите его улучшенную версию
Подробнее здесь: https://stackoverflow.com/questions/787 ... ty-correct
Мобильная версия