|
Режим камеры: изо / третье лицо / первое лицо в движке (шаг 1)
- CameraMode + чистая математика камеры (render/cameraMath.ts): camForward, orbitPosition (переехал из modelViewer, реэкспорт), PERSP_FOV 50°, клампы pitch/dist (грабля «из-под земли»). - VoxelRenderer: isoCamera + perspCamera (создаётся всегда), публичное camera — getter активной (union); setCameraMode/setOrbit/orbitState/ setEyeHeight/cameraInfo. repositionCamera ветвится по режиму: семантика setTarget «точка интереса» сохранена — игры, зовущие его каждый тик слежения, не ломаются, ориентация живёт в орбит-состоянии. - Guard: окно частиц и юниформы тумана в перспективе пока по изо-камере (до треков окон пирамиды/тумана — NaN не бывает). - Тесты camForward/orbitPosition; окно моста — временный каст. - Доки CLAUDE.md: API камеры. Co-Authored-By: Claude Code <noreply@anthropic.com> |
|---|
|
|
| v2/CLAUDE.md |
|---|
| v2/apps/game/src/main.ts |
|---|
| v2/packages/engine/src/index.ts |
|---|
| v2/packages/engine/src/render/__tests__/cameraMath.test.ts 0 → 100644 |
|---|
| v2/packages/engine/src/render/cameraMath.ts 0 → 100644 |
|---|
| v2/packages/engine/src/render/modelViewer.ts |
|---|
| v2/packages/engine/src/render/voxelRenderer.ts |
|---|