Как уничтожить и создать экземпляр GameObject?

#c# #unity3d

#c# #unity3d

Вопрос:

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

 using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class CreateDestroyAR : MonoBehaviour {

    //PAGE HAS BEEN CREATED AS A PREFAB
    public GameObject Page;
    public void CreatePage() {
        Instantiate(Page);
    }

    public void DestroyPage()
    {
        Destroy(Page);
    }
}
  

Да, это «страницы», которые я могу просто использовать setActive , но одна из «страниц» должна быть уничтожена при нажатии другой кнопки и повторно создается при каждом нажатии соответствующей кнопки.

Ответ №1:

 using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;

public class CreateDestroyAR : MonoBehaviour {

    //PAGE HAS BEEN CREATED AS A PREFAB
    public GameObject Page;
    private GameObject instantiatedPage;
    public void CreatePage() {
       instantiatedPage = Instantiate(Page);
    }

    public void DestroyPage()
    {
        Destroy(instantiatedPage);
    }
}