# Radius Zero: Новые Химки

Полноэкранное браузерное 3D-приложение с персонажем от третьего лица. Стартовая сцена собрана вокруг точки `55.899338, 37.409289` у ТЦ «Новые Химки».

## Что уже работает

- 3D-сцена без видимой карты;
- процедурные дороги, круговое движение, ТЦ и окружающие многоэтажные здания;
- отдельный физический слой Rapier/WASM;
- простой анимированный персонаж;
- WASD, бег, прыжок и камера мышью;
- инверсия обеих осей камеры по умолчанию, переключение клавишей `I`;
- локальная система координат в метрах без дрожи больших географических чисел;
- пересчёт позиции обратно в широту и долготу;
- автоматическая регулировка разрешения рендера по FPS;
- ссылка на панорамный визуальный источник внутри приложения (`F4`).

## Запуск

```bash
npm install
npm run dev
```

Для производственной сборки:

```bash
npm run build
```

## Управление

| Клавиша | Действие |
| --- | --- |
| `WASD` / стрелки | движение относительно камеры |
| `Shift` | бег |
| `Space` | прыжок |
| мышь | вращение камеры |
| `I` | переключить инверсию X/Y |
| `F1` | справка |
| `F4` | визуальные источники |
| `Esc` | освободить курсор и поставить управление на паузу |

## Технологии

- TypeScript + React/Vinext;
- Three.js/WebGL2;
- Rapier 3D через WebAssembly;
- процедурные текстуры Canvas;
- GPU instancing, LOD-подход и динамический pixel ratio.

Проект не зависит от GPS, платных ключей или серверной базы данных. Архитектура допускает подключение заранее подготовленных OSM-чанков, equirectangular-панорам и 3D Gaussian Splatting без изменения контроллера персонажа.

Подробности по источникам находятся в `docs/SOURCES.md`.
