@LockerAT
Unity Developer

Проблема с FindObjectOfType c Instantiate. Почему создается не один объект?

Ребята, Проблема с FindObjectOfType c Instantiate.
есть два класса в класс1 вызываю метод на создание объекта Instantiate в класс2 . Все классы на разных объектах. Вызываю через FindObjectOfType Проблема в том, что в таком случае у меня создается с каждым разом не один объект, а умноженная на количество созданных(1*2*4*8 и тд.). Кто знает в чем трабл?

https://pastebin.com/MnK0VAse
  • Вопрос задан
  • 41 просмотр
Пригласить эксперта
Ответы на вопрос 3
@p4p
Скорее всего ты вызываешь функцию создания на каждом объекте, поэтому и множится.

FindObjectOfType().Respawn(); ты ведь вызываешь создание на всех объектах типа SpawnerFigure. Если 10 то каждый создаст по объекту.
Ответ написан
Комментировать
@stictt
просто рак
Если вы используете патерн синглтон, это вызвывать будет подобные проблемы при не правильной настройке. Обьект прошлой сцены не удаляется, но дополнительно создается новый обьект такой же, который задан в сцене.
Ответ написан
Комментировать
MrMureno
@MrMureno Куратор тега Unity
VR for all
вы бы приложили скриншоты инспектора и иерархии сцены, чтоб знать что у вас там на объектах инстанцируемых и что в сцене.

так то у вас судя по тому, что каждый раз все больше создается, то на создаваемом объекте где-то висит скрипт FigureSwitch .
и на одно нажатие клавиши реагируют, сначала 1, потом два, потом 4 объекта).
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы