без него можно обойтись?
когда тебе нужны всякие апдейты и ты хочешь повесить скрипт на геймобжект, без монобехи ты не обойдешься
Ну допустим если делаешь контроллер персонажа, то есть смысл делать только его MB, остальные вещи такие как класс камеры, движения, ударов и так далее можно и без
А вот с камеры, движения и ударов без монобехов подробнее. Как это реализуется?
Ну смотри, для примера я делаю пошаговую игру на клеточках. Весь сервис карты и клеточки у меня не монобехи, т.е. все расчеты где-то в отвязке от объектов происходят, в монобехи просто передается экземпляр сервиса, если нужен
Ну начнем с того, что я не сильный любитель сложного проф.кода и зачастую могу придумать свои приблуды. Я использую подход модульности. Хотя не давно узнала, что это по сути чем-то схожее с паттерном Композиции. Если брать камеру, которая в проект для первого лица, ну я просто делаю обычный класс и у него есть интерфейс IModule. Основный метод это инициализация (аналог Start/Awake) хотя его нужно добавлять как раз в эти методы. Сам весь класс сериализуется атрибутом, чтобы данные модуля можно было менять в инспекторе. После класс/модуль просто создаём в классе контроллера персонажа. Инициализируем нужные данные, ну а после просто используем методы этого класса. Методы зачастую возвращают значение, как в моем данном случае возвращает float для того, чтобы крутить персонажа вместе с камерой. Ну и небольшой обходной путь сделала, так как transform нельзя использовать без MB
Теперь понял. Значит скоро в одном МB классе у меня пропадет около 500-а строк
Мне нравится такой подход, когда каждый модуль сам по себе живущий. Просто как конструктор собираешь его в классе сборщике и все. Останется что-то где-то соединить и все работает
Если сможешь заставить работу камеру от первого лица имея отдельный класс с камерой без использование transform и без аргумента метода с RigidBody, то ты умничка
У меня игра в стиле МОБА. ФПС камеры не используются, Rigidbody тоже
Годный подход, около 100-а строк убрал из одного класса. Не так уж и много, но хотя бы приятнее стало с этим работать, сразу понятно, кто и за что несёт ответственность
Превосходно, приятно слышать, что мои идеи помогли
Не хочу показаться грубым, но это не твои идеи) Ты меня просто подтолкнул(а) на это всё. Спасибо
Обсуждают сегодня