Race_fields/README.md
2026-07-17 12:29:38 +03:00

100 lines
6.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Race Fields
![Race Fields](Docs/cover.png)
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.