feat(fx): evaluate native generator mesh modes
Docs Deploy / Build and Deploy MkDocs (push) Successful in 42s

This commit is contained in:
Valentin Popov committed 2026-10-18 08:31:52 +04:00
1 parent 0c6e7589f9
commit dda322d8be
3 files changed
+1448

No files matched your search

File diff suppressed because it is too large. Load diff
+1
View File
@@ -8,6 +8,7 @@
pub mod atmosphere;
pub mod environment;
pub mod fx_visual;
pub mod shadow;
pub mod sky;
+19
View File
@@ -236,6 +236,25 @@ Native `z = 0.999` не означает, что спрайт гарантиро
native значение сохраняется для совместимости, но само по себе не обещает
окклюзию солнца всей геометрией местности.
## Геометрия визуальных FX-команд
`fparkan-fx::fx_visual` формирует кадры для двух подтверждённых вариантов
`f_gener_ball`. Op4 принимает mode 0 с положительным знаменателем в `body+0xC4`
и выдаёт camera-facing quad; расстояние камеры считается через native
component-wise projection родительской матрицы. Op9 принимает mode 2:
селектор `body+0xC4` со значением 0, 1 или 2 отображается в native flag base
3, 5 или 6 и выбирает одну из трёх сеток; категория render flags выбирает её
детализацию. `body+0xC8` выбирает UV path:
нулевое значение проецирует позицию вершины на XY, ненулевое использует
фиксированные координаты quad и cap. Кадр сохраняет MAT0 resource, фазу,
opacity, вершины и triangle indices для renderer.
Evaluator получает готовые command body, phase, camera point и внешнюю
матрицу. Выбор Control row, manager gates, owner attachment, header jitter и
global RNG остаются задачей владельца. `fparkan-game` пока использует для Op9
категорию 0 с наибольшей детализацией; выбор категории по projected size ещё
не реализован.
## Что остаётся за владельцем
`EnvironmentSystem` не извлекает камеру из renderer, не разрешает материалы