как удалить клонированный сборный класс в единстве? - PullRequest
0 голосов
/ 05 января 2019

Я использовал код Destroy (), но когда я проверяю программу, пока она еще работает, Объект все еще там. Я что-то упустил?

 class: mobile
 {
      GameObject mobileObject;
      SpriteRenderer mobileSR;
      int height;
      int width;
 }



 void Start()
 {

     mobile clone;

     clone = Instantiate(mobile);

     Destroy(clone); //object clone didn't delete :(
 }

1 Ответ

0 голосов
/ 08 января 2019

Вы уничтожаете свой экземпляр класса. Если вы тоже хотите уничтожить GameObject, сделайте ваше свойство mobileObject общедоступным и используйте Destroy(clone.mobileObject);

Edit: лучший способ удалить ваш экземпляр и уничтожить объект, как это;

class: mobile
{
  GameObject mobileObject;
  SpriteRenderer mobileSR;
  int height;
  int width;

  public void destroy(){
  Destroy(mobileObject); //deletes GameObject
  Destroy(this); //deletes instance of class

  }
}

тогда;

void Start()
{

 mobile clone;

 clone = Instantiate(mobile);
 clone.destroy();
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...