diff options
| author | Valentin Popov <valentin@popov.link> | 2026-10-18 07:39:37 +0300 |
|---|---|---|
| committer | Valentin Popov <valentin@popov.link> | 2026-10-18 07:39:37 +0300 |
| commit | 3edf3dfc12524004935f8da3c003c03aa572700b (patch) | |
| tree | 451add60cac545da96b32d80a11f95d9b90fc8ee /docs/reference/environment-effects.md | |
| parent | dda322d8be64e953f210faa9ce4e69ca3f6c32cc (diff) | |
| download | fparkan-3edf3dfc12524004935f8da3c003c03aa572700b.tar.xz fparkan-3edf3dfc12524004935f8da3c003c03aa572700b.zip | |
feat(fx): evaluate native Op3 body typescodex/ambient-op3-evaluator
Diffstat (limited to 'docs/reference/environment-effects.md')
| -rw-r--r-- | docs/reference/environment-effects.md | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/docs/reference/environment-effects.md b/docs/reference/environment-effects.md index 6c45038..60a900d 100644 --- a/docs/reference/environment-effects.md +++ b/docs/reference/environment-effects.md @@ -255,6 +255,16 @@ global RNG остаются задачей владельца. `fparkan-game` п категорию 0 с наибольшей детализацией; выбор категории по projected size ещё не реализован. +Для Op3 поддерживаются body-типы 0, 1 и 2. Поля отсчитываются от +`FxCommand.raw_body`, то есть после 4-байтового command word. Типы 0 и 1 +используют общие position/scale/phase/opacity tracks и camera-facing основу; +тип 1 и тип 2 также интерполируют ось, а тип 2 строит basis через native +D110-порядок. Все три evaluator-а принимают уже собранную матрицу владельца и +не выбирают Control row или attachment. Текущий путь для типов 0 и 1 +предполагает native render context 0: `Effect.dll` проверяет общий gate +`context + 0x60 < 8`, а API этих evaluator-ов не выбирает другой context. +Evaluator типа 2 принимает индекс context явно и учитывает этот gate в `active`. + ## Что остаётся за владельцем `EnvironmentSystem` не извлекает камеру из renderer, не разрешает материалы |
