diff options
| author | Valentin Popov <valentin@popov.link> | 2026-10-31 00:24:21 +0300 |
|---|---|---|
| committer | Valentin Popov <valentin@popov.link> | 2026-10-31 00:24:21 +0300 |
| commit | e9e01eee9f8fada69ad1461aaba46df2acd3e6d9 (patch) | |
| tree | 5b35951edd95d7416607d6c81f4a038935537942 /docs/reference/render-frame.md | |
| parent | dbfdcf1e4cf5fd6adb43505ff95db10c927dd8ef (diff) | |
| download | fparkan-e9e01eee9f8fada69ad1461aaba46df2acd3e6d9.tar.xz fparkan-e9e01eee9f8fada69ad1461aaba46df2acd3e6d9.zip | |
feat(app): constrain free-flight movement by building meshes
Diffstat (limited to 'docs/reference/render-frame.md')
| -rw-r--r-- | docs/reference/render-frame.md | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/docs/reference/render-frame.md b/docs/reference/render-frame.md index 3269c67..10de209 100644 --- a/docs/reference/render-frame.md +++ b/docs/reference/render-frame.md @@ -209,9 +209,29 @@ position[axis] = position[axis].clamp(min[axis], max[axis]); // axis = 0, 1 position[2] = position[2].max(ground_height + ground_clearance); ``` +Для каждого отрисовываемого корневого объекта класса `FORT` и каждого его +отрисовываемого компонента интерактивный путь создаёт отдельную запись проверки. +Она использует те же текущие позы узлов и преобразования присоединённых +компонентов, что и геометрия кадра. После ограничения целевой позиции по +TerrainWorld камера проверяет непрерывный отрезок от прежней позиции до цели. +Если после нативных MSH-фильтров остаётся пересечение, позиция возвращается к +началу шага, а рассчитанный из ввода новый поворот сохраняется. Маски batch и +type-7, а также продолжение отрезка по helper-link описаны в +[разделе MSH о сегментном запросе](msh.md#type-7-и-сегментный-запрос). + +Повторная отправка того же ожидающего кадра, например после изменения размера +области отображения, использует уже подготовленное состояние и не применяет +движение второй раз. `--legacy-camera-capture` сохраняет положение захваченной +камеры без изменений и не запускает проверку зданий. Это диагностическое +ограничение, а не восстановленное правило игровой или следящей камеры +оригинала. В проверке начальная поза берётся из декодированных связей CTLD; +проход двери отдельно проверяется после явной выборки записанного в MSH кадра 1 +только для Node3. Так проверяется вход запроса столкновения и путь камеры; +видимая дверь не анимируется, а миссионные команды не воспроизводятся. + Высота полёта сверху не ограничена. Это ограничение диагностической камеры -превью; столкновения со стенами зданий и точные правила игровых камер оригинала -остаются отдельными задачами. +превью; точные правила игровых и следящих камер оригинала остаются +неподтверждёнными. ## Ограничения точного совпадения |
