Skip to content

Kuhpik/Bootstrap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kuhpik Bootstrap

Создан для упрощения разработки маленьких игр на Unity.

Решает большинство рутинных задач вроде создания менеджера окон, сохранения данных и закладывания архитектуры.

Установка

  • Скачайте последний Unitypackage
  • Для построения более гибкой архитектуры я рекомендую так же поставить плагин Signals
  • Переместите на вашу сцену префабы Bootstrap и UI Canvas которые находятся в папке Kuhpik's Bootstrap/Source

Какие плагины используются?

  • Naughty Attributes. Для быстрого прототипирования окон инспектора.
  • Odin Serializer. Для сохранения данных. Позволяет сериализовывать такие коллекции как Dictionary.

Зачем это использовать?

  • Наличие готовых инструментов, например, для адаптирования FOV камеры, сохранений прогресса, UI-менеджер и т.д.
  • Всю логику программы можно разбить на игровые состояния, что позволяет не плодить сотни флагов в проекте.
  • При правильном дизайне все существующие фичи проекта очень будут видны в иерархии сцены. Не нужно будет прыгать по проекту.
  • Оптимизированная работа с жизненным циклом Unity. Все скрипты работают в едином апдейте
  • Настройка очереди выполнения систем прямо из сцены.
  • Слабосвязанный модульный код при правильном дизайне. Системы не общаются друг с другом, общение происходит через данные.

Какие есть минусы?

  • Не лучшая работа с UI-окнами. Нет анимаций и красивых переходов.
  • Нет привычной инъекции зависимостей. Прокинуть можно только Scriptable Objects и только в системы. Думаю, скоро это поменяется.
  • Дизайн и возможности фреймворка подталкивают к использованию паттерна MVP, из-за чего системы могут стать достаточно толстыми.
  • Отсутствие нормальной документации :(

FAQ

Подходит ли этот фреймворк для реальной разработки?

Конечно! На данный момент выпущено и протестировано более 200 проектов в жанре Hypercasual, парочка головоломок и idle-action проектов.

Contributors

Oleg Kravchenko - Помощь в переходе на OdinSerializer. Написал удобный AOTBuilder.

Dmitri Sychev - Инициативность в улучшении чистоты кода, особенно, касательно UI-менеджера.