Задать вопрос
@i__egor

Как лучше сделать пул объектов в юнити?

Когда нужно часто спавнить много объектов лучше вместо instantiate и destroy включать, перемещать, настраивать и отключать уже готовые объекты на сцене. В официальном уроке от юнити написано:
public GameObject GetPooledObject()
{
    for(int i=0; i < amountToPool; i++)
    {
         if(!pooledObjects[i].activeInHierarchy)
         {
              return pooledObjects[i]
         }
    }
    return null;
}

То есть все объекты проходятся по очереди пока не будет найден неактивный. То есть чтобы брать таким образом по одному объекту прийдется каждый раз перебирать допустим тысячи объектов. А если еще таких пулов много с разными объектами. Почему бы например не иметь два листа вместо одного, один с ожидающими отключенными объектами, другой с работающими объектами. Если нужно достать, то из ожидающих берем один удаляем там и добавляем к активным, если нужно убрать, наоборот удаляем из листа активных и добавляем лист ожидающих
  • Вопрос задан
  • 47 просмотров
Подписаться 1 Простой 1 комментарий
Помогут разобраться в теме Все курсы
  • Skillbox
    Профессия Разработчик игр на Unity с нуля
    10 месяцев
    Далее
  • Skillbox
    Middle-разработчик игр на Unity
    3 месяца
    Далее
  • GB (GeekBrains)
    Разработчик Игр на Unity
    10 месяцев
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы