Несколько возможных причин, по которым возникают проблемы с инжекцией скрипта в игровые движки:
- Ошибки в самом скрипте. 1 Например, если не поставить точку с запятой или удалить скрипт, который весит на префабах или объектах, на них удалённый скрипт будет продолжать висеть. 1
- Инъекция не работает в инстанциированном префабе. 2 Для решения проблемы можно использовать фабрики внутри Zenject. 2
- Необходимость предварительной прогрузки некоторых скриптов. 4 Для корректной работы некоторых скриптов их нужно прогонять через awake>start, чтобы прогрузить их. 4
- Отсутствие сохранения скрипта перед возвращением в игровой движок. 5 Иногда нужно подождать несколько секунд, пока движок обнаружит изменение и перекомпилирует скрипт. 5
Для решения проблемы рекомендуется проверить логи и убедиться в отсутствии ошибок в самом скрипте, а также проверить, что он предварительно прогружен. 4