Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя
Разработчик игр. Занимаюсь любимым делом и играю...  · 20 окт 2021

Разделение больших классов MonoBehavior

В больших проектах постепенно растет объем классов MonoBehavior. Давайте рассмотрим, как разделить их на основе принципа одиночной ответственности, подразумевающего, что один класс должен отвечать за один элемент. Если применить его правильно, то у вас должна быть возможность дать короткий ответ на вопросы вроде «За что отвечает конкретный класс?» или «За что он не отвечает?» Благодаря этому ваши коллеги смогут понять, что делает отдельно взятый класс. Это принцип, который можно применить к кодовой базе любого масштаба.
Вот способы такого разбиения:
Общая игровая логика, обработка ввода, моделирование физики и представление данных могут быть назначены MonoBehavior, объектам ScriptableObject или базовым классам C#.
Если нужно сделать параметры доступными в Inspector, то можно использовать MonoBehavior или ScriptableObject.
Обработчики событий движка или управление существованием объекта GameObject обязательно должны находиться в MonoBehavior.
Думаю, что в большинстве игр имеет смысл вынести как можно больше кода за пределы MonoBehavior. Это можно сделать с помощью объектов ScriptableObject, и по этой теме существуют отличные ресурсы.
Программирование+4