100 lines
6.2 KiB
Markdown
100 lines
6.2 KiB
Markdown
# Race Fields
|
||
|
||

|
||
|
||
Race Fields - Unity-проект аркадной гонки в полевом сеттинге. Основная заготовка проекта строится вокруг управляемого багги, камеры третьего лица, заготовок игровых режимов, усилений, оружия, VR/arcade cabinet модулей и структуры для дальнейшего наполнения трассами, префабами и данными.
|
||
|
||
## Требования
|
||
|
||
- Unity `6000.5.1f1`
|
||
- Universal Render Pipeline `17.5.0`
|
||
- Input System `1.19.0`
|
||
- Unity Test Framework `1.7.0`
|
||
|
||
Версия Unity зафиксирована в `ProjectSettings/ProjectVersion.txt`, зависимости - в `Packages/manifest.json`.
|
||
|
||
## Быстрый старт
|
||
|
||
1. Откройте корень проекта в Unity Hub.
|
||
2. Используйте Unity `6000.5.1f1` или совместимую версию Unity 6.
|
||
3. Откройте сцену `Assets/_Project/Scenes/Demo Scene.unity`.
|
||
4. Запустите Play Mode.
|
||
|
||
Базовое управление багги:
|
||
|
||
- `W` / `Up Arrow` - газ
|
||
- `S` / `Down Arrow` - назад
|
||
- `A` / `Left Arrow` - поворот влево
|
||
- `D` / `Right Arrow` - поворот вправо
|
||
- `Space` - тормоз
|
||
|
||
## Основные сцены
|
||
|
||
- `Assets/_Project/Scenes/Demo Scene.unity` - рабочая демо-сцена проекта.
|
||
- `Assets/Scenes/SampleScene.unity` - стандартная примерная сцена Unity, оставлена отдельно от основной структуры проекта.
|
||
|
||
## Структура проекта
|
||
|
||
```text
|
||
Race_fields/
|
||
+-- Assets/
|
||
| +-- _Project/ # основной код и ресурсы игры
|
||
| | +-- Art/ # визуальные ассеты: модели, материалы, текстуры, UI, VFX, terrain
|
||
| | +-- Audio/ # музыка, звуковые эффекты и голосовые ассеты
|
||
| | +-- Prefabs/ # игровые префабы: техника, камеры, окружение, UI, оружие, VFX
|
||
| | +-- Scenes/ # основные сцены проекта
|
||
| | +-- ScriptableObjects/ # игровые настройки и данные: режимы, трассы, транспорт, оружие
|
||
| | +-- Scripts/ # C#-код проекта
|
||
| | +-- Settings/ # настройки Addressables, билда, ввода, физики и рендера
|
||
| | +-- Tests/ # EditMode и PlayMode тесты
|
||
| | +-- ThirdParty/ # сторонние ассеты, которые относятся к проекту
|
||
| +-- 300Mind/ # импортированный 2D Game UI Kit
|
||
| +-- Scenes/ # стандартные/вспомогательные сцены Unity
|
||
| +-- Settings/ # общие настройки ассетов Unity
|
||
| +-- TutorialInfo/ # стандартные tutorial-ассеты Unity
|
||
| +-- _Recovery/ # восстановленные/резервные ассеты Unity
|
||
+-- Docs/ # изображения и материалы для документации
|
||
+-- Packages/ # Unity Package Manager manifest и lock-файлы
|
||
+-- ProjectSettings/ # настройки проекта Unity
|
||
+-- UserSettings/ # локальные настройки редактора
|
||
+-- Logs/ # локальные логи Unity
|
||
+-- Library/ # кеш Unity, не хранится в репозитории
|
||
+-- Temp/ # временные файлы Unity
|
||
+-- obj/ # временные файлы сборки IDE/.NET
|
||
```
|
||
|
||
## Код
|
||
|
||
Код проекта хранится в `Assets/_Project/Scripts/` и разделен по игровым подсистемам:
|
||
|
||
- `Vehicles/` - управление транспортом, колеса, мотор, подвеска и визуальная синхронизация.
|
||
- `Camera/` - камеры игры, включая `BuggyFollowCamera` для камеры третьего лица.
|
||
- `Input/` - ввод для клавиатуры/геймпада, AI, VR и arcade cabinet.
|
||
- `GameFlow/` - сессии, состояния игры и будущая машина состояний.
|
||
- `GameModes/` - режимы игры: arena, challenges, survival race, tournament.
|
||
- `PowerUps/` - усиления: boost, repair, shield и специальные эффекты.
|
||
- `Weapons/` - оружие, ракеты, мины, шок-эффекты и targeting.
|
||
- `Damage/` - урон, разрушаемые объекты и эффекты повреждений.
|
||
- `Harvesters/` - логика комбайнов/сборщиков, AI, звук и визуальная часть.
|
||
- `World/` - трассы, чекпоинты, hazards, spawners и сегменты мира.
|
||
- `UI/` - HUD, меню, гараж, результаты и операторская панель.
|
||
- `VR/` - VR rig, комфорт и калибровка.
|
||
- `ArcadeCabinet/` - модули для аркадного автомата: hardware, payments, diagnostics, calibration.
|
||
- `Editor/` - редакторские инструменты, включая сборку префабов багги.
|
||
- `Core/`, `Data/`, `Utilities/` - общие сервисы, данные и вспомогательные классы.
|
||
|
||
## Полезные редакторские инструменты
|
||
|
||
В проекте есть editor-команда:
|
||
|
||
```text
|
||
Race Fields/Setup/Rebuild Buggy Prefab
|
||
```
|
||
|
||
Она пересобирает префаб багги `Assets/_Project/Prefabs/Vehicles/Player/Buggy_Player.prefab`, настраивает физику колес и обновляет префаб камеры `Assets/_Project/Prefabs/Cameras/Buggy_ThirdPersonCamera.prefab`.
|
||
|
||
## Документация и ассеты README
|
||
|
||
- `README.md` - основное описание проекта.
|
||
- `Docs/cover.png` - изображение, используемое в шапке README.
|