Аркадная мобильная игра с птичкой, где точность и тайминг решают всё
BirdHero (BirdStick) — это динамичная аркадная игра для мобильных устройств, разработанная на Unity. Игрок управляет птичкой, которая должна точно приземляться на движущиеся платформы различного размера. Чем точнее приземление, тем больше очков!
- Точные прыжки: Приземляйтесь в центр круга для максимальных очков
- Процедурная генерация: Бесконечная игра с динамически создаваемыми платформами
- Система скинов: Разблокируйте новых персонажей из яиц
- Система заданий: Выполняйте задания для прогресса
- Рекорды: Отслеживайте свои лучшие результаты
- ✅ Динамический геймплей: Процедурная генерация уровней с изменяющимся размером платформ
- ✅ Система точности: Оценка приземления (точное/неточное попадание)
- ✅ Физика: Реалистичное движение птички с использованием Rigidbody2D
- ✅ Анимации: Плавные анимации крыльев и движения
- ✅ Адаптивный интерфейс: Оптимизирован для различных разрешений экранов
- ✅ Анимированное меню: Плавные переходы и эффекты с DOTween
- ✅ Система пауз: Удобное меню паузы в игре
- ✅ Визуальные эффекты: Эффекты освещения и частиц
- ✅ ScoreManager: Управление очками, рекордами и статистикой
- ✅ LevelGenerator: Динамическая генерация игровых объектов
- ✅ SkinManager: Система разблокировки и выбора персонажей
- ✅ TaskManager: Система заданий и прогрессии
- ✅ CameraManager: Управление камерой и следованием за игроком
- ✅ PlayerPrefs: Локальное хранение прогресса, рекордов и разблокированных скинов
| Технология | Версия | Назначение |
|---|---|---|
| Unity | 2021.2.12f1 | Игровой движок |
| C# | 9.0 | Язык программирования |
| DOTween | Latest | Анимации и твининг |
| TextMesh Pro | 3.0.6 | Рендеринг текста |
com.unity.2d.animation(7.0.3) - 2D анимацииcom.unity.2d.sprite(1.0.0) - Работа со спрайтамиcom.unity.2d.spriteshape(7.0.3) - Создание форм из спрайтовcom.unity.2d.tilemap(1.0.0) - Система тайлмаповcom.unity.2d.pixel-perfect(5.0.1) - Пиксель-перфект рендерингcom.unity.2d.psdimporter(6.0.2) - Импорт PSD файлов
com.unity.recorder(3.0.3) - Запись геймплеяcom.unity.test-framework(1.1.31) - Юнит-тестированиеcom.unity.timeline(1.6.3) - Система Timeline
com.unity.ide.rider(3.0.12) - JetBrains Ridercom.unity.ide.visualstudio(2.0.15) - Visual Studiocom.unity.ide.vscode(1.2.5) - Visual Studio Code
- Polygon Arsenal - 3D модели
- Polygon Particles - Система частиц
- Simple Scroll-Snap - UI скроллинг
Использование статических событий (Actions) для слабосвязанной коммуникации между компонентами:
// BirdController.cs
public static Action OnStartGame;
public static Action OnJumped;
public static Action OnDead;
// LevelGenerator.cs подписывается на события
BirdController.OnJumped += GenerateNext;
BirdController.OnDead += GenerateStart;Менеджеры используют паттерн Singleton для глобального доступа
Эффективное переиспользование игровых объектов
BirdHero/
├── Assets/
│ ├── Scripts/ # Игровая логика
│ │ ├── BirdController.cs # Управление птичкой
│ │ ├── LevelGenerator.cs # Генерация уровней
│ │ ├── ScoreManager.cs # Система очков
│ │ ├── SkinManager.cs # Управление скинами
│ │ ├── MenuManager.cs # UI менеджер
│ │ └── Tasks/ # Система заданий
│ ├── Scenes/ # Сцены Unity
│ │ ├── Menu.unity # Главное меню
│ │ └── Gameplay.unity # Игровая сцена
│ ├── Sprites/ # 2D графика
│ ├── Prefabs/ # Префабы
│ ├── Anims/ # Анимации
│ └── Plugins/ # Внешние плагины
│ └── Demigiant/DOTween/ # DOTween библиотека
├── ProjectSettings/ # Настройки Unity
└── Packages/ # Unity Package Manager
Основной контроллер персонажа, управляющий:
- Физикой движения
- Анимацией крыльев
- Обработкой ввода
- Взаимодействием с платформами
Процедурная генерация игрового пространства:
- Создание платформ случайного размера
- Динамическое позиционирование
- Управление сложностью
Централизованная система подсчёта очков:
- Текущий счёт и рекорды
- Статистика игр
- Прогресс заданий
Система кастомизации персонажа:
- Разблокировка новых скинов
- Визуализация яиц
- Сохранение прогресса
- Unity 2021.2.12f1 или выше
- Visual Studio 2019/2022 или JetBrains Rider
- Android SDK (для Android сборки)
- Xcode (для iOS сборки, только macOS)
- Клонируйте репозиторий
git clone https://github.com/Asort97/BirdHero.git
cd BirdHero- Откройте проект в Unity Hub
- Запустите Unity Hub
- Нажмите "Add" и выберите папку проекта
- Убедитесь, что установлена версия Unity 2021.2.12f1
- Откройте проект
- Выберите проект в Unity Hub
- Дождитесь импорта всех ассетов
- Настройка DOTween (если требуется)
- После первого открытия проекта может появиться окно настройки DOTween
- Следуйте инструкциям мастера установки
- Откройте сцену
Assets/Scenes/Menu.unity - Нажмите кнопку Play в редакторе Unity
- Для тестирования на устройстве:
- Android: File → Build Settings → Android → Build and Run
- iOS: File → Build Settings → iOS → Build (требуется Xcode)
Этот проект демонстрирует следующие навыки разработки:
- ✅ Работа с Unity Engine 2021.2
- ✅ 2D разработка (Sprites, Animations, Physics2D)
- ✅ Работа с Canvas и UI системой Unity
- ✅ Управление сценами и переходами
- ✅ Объектно-ориентированное программирование
- ✅ Event-Driven архитектура
- ✅ Работа с делегатами и событиями (Actions, Events)
- ✅ Управление жизненным циклом компонентов
- ✅ Работа с coroutines
- ✅ Процедурная генерация контента
- ✅ Игровая физика и механики
- ✅ Система сохранений (PlayerPrefs)
- ✅ Система достижений и заданий
- ✅ UI/UX разработка для мобильных игр
- ✅ Event-Driven Architecture
- ✅ Singleton Pattern
- ✅ Object Pooling
- ✅ Component Pattern
- ✅ Observer Pattern
- ✅ Оптимизация для мобильных устройств
- ✅ Touch input обработка
- ✅ Адаптивный UI
- ✅ Сборка для Android/iOS
- ✅ DOTween (анимации и твининг)
- ✅ TextMesh Pro (текстовый рендеринг)
- ✅ Unity Package Manager
- ✅ Version Control (Git)
- Android: API Level 19+ (Android 4.4+)
- iOS: iOS 11.0+
- Тестирование: Unity Editor
- Основная игровая механика
- Система меню
- Система скинов
- Система заданий
- Сохранение прогресса
- Звуковые эффекты
- Визуальные эффекты
- Система лидерборда (в планах)
- Система достижений (в планах)
- Мультиплеер (в планах)
Разработчик: Asort97
Этот проект создан на заказ.
Сделано с ❤️ на Unity
⭐ Если вам понравился проект, поставьте звезду!