feat(fx): evaluate generic Op1 point lights
Docs Deploy / Build and Deploy MkDocs (push) Successful in 32s
Docs Deploy / Build and Deploy MkDocs (push) Successful in 32s
This commit is contained in:
2 files changed
+366
-27
No files matched your search
@@ -143,6 +143,24 @@ slot `+6c`): ширина `RECT` делится на горизонтальны
|
||||
исходную таблицу знаков и минимальный depth fade `0.1`. Renderer сам решает,
|
||||
как загрузить этот квадрат и как смешать его материал.
|
||||
|
||||
## Точечный свет из opcode 1
|
||||
|
||||
Preview вычисляет generic Op1 отдельно от визуальных команд. Переданный
|
||||
владельцем `command_time` сравнивается с началом и концом интервала из body
|
||||
opcode 1; обе границы включены, а коэффициент выборки равен
|
||||
`(command_time - start) / (end - start)`. Заголовочная длительность FXID не
|
||||
заменяет этот интервал. Для нулевой ширины адаптер не создаёт кадр света,
|
||||
поскольку у команды нет конечного коэффициента интерполяции.
|
||||
|
||||
Позиция, направление, цвет и range интерполируются по концам команды.
|
||||
Позиция и направление переводятся через основу родителя; направление после
|
||||
этого нормализуется, а нулевой вектор остаётся нулевым. Range сохраняет
|
||||
авторское значение без ограничения снизу. Типы Op1 `1`, `2`, `5`, `6` и `7`
|
||||
выбирают point-light selector `1`; их native flags сохраняются. Типы `3` и
|
||||
`4` выбирают другие классы записей LightManager и не попадают в generic список
|
||||
точечного света. У `LightningEffect` выборка тех же полей использует отдельные
|
||||
ограничение по длительности FXID и правила безопасной обработки.
|
||||
|
||||
## Молния и звуковые события
|
||||
|
||||
`decode_env_lightning_fxid` извлекает из FXID длительность, ссылки opcode 3 и
|
||||
|
||||
Reference in new issue
Block a user