Idle 3D farm game: игровые механики, интерфейсы, интеграции и оптимизация
Работал над клиентской частью Unity-проекта на C#. Отвечал за отдельные игровые системы, UI-экраны, работу с данными, интеграции и производительность. Также помогал другому Unity-разработчику быстрее войти в проект: объяснял структуру, декомпозировал задачи и следил, чтобы решения не конфликтовали с общей архитектурой.
- Разделил логику проекта на понятные зоны: gameplay, UI, сервисы, repositories, API-клиенты и SDK-интеграции.
- Настроил DI через Zenject и слой данных через Repository Pattern, чтобы mock-данные и backend можно было переключать без переписывания gameplay и UI.
- Реализовал 12+ игровых механик: движение персонажа, камеру, режимы игры, ввод, взаимодействие с объектами, строительство и посадку по grid-системе.
- Собрал систему игровых режимов на Strategy Pattern: разные режимы использовали общую grid-систему, но имели свою логику управления, валидации и отображения.
- Разработал 10+ UI-экранов и компонентов на UI Toolkit и Unity Canvas.
- Реализовал клиентскую логику производств, амбара и NPC-задач: загрузку данных, состояния, таймеры, progress slider и синхронизацию с backend.
- Интегрировал 4 SDK: аналитика, авторизация, реклама и игровые сервисы.
- Оптимизировал проект: Sprite Atlases, загрузка ассетов, Dynamic Batching, материалы и полигонаж. Результат: ~20 FPS > стабильные ~60 FPS.