aboutsummaryrefslogtreecommitdiff
path: root/docs/appendices
diff options
context:
space:
mode:
Diffstat (limited to 'docs/appendices')
-rw-r--r--docs/appendices/knowledge-boundaries.md30
1 files changed, 22 insertions, 8 deletions
diff --git a/docs/appendices/knowledge-boundaries.md b/docs/appendices/knowledge-boundaries.md
index 1af4ad5..ed821e4 100644
--- a/docs/appendices/knowledge-boundaries.md
+++ b/docs/appendices/knowledge-boundaries.md
@@ -50,11 +50,15 @@ MSH-запрос со свободной preview-камерой; это не пÐ
стратегической и следящей камерами не подтверждено
([MSH](../reference/msh.md)).
-Кривые alpha и метрика расстояния порталов реализованы для MSH без type 16
-([описание кадра](../reference/render-frame.md#прозрачность-порталов-msh)). Native CPU clipping может выбрать другую первую вершину;
-это приближение явно считается как `portal_fade_packet_selection_approx`.
-
-Данные type 16 ещё не декодированы. Внутренний ракурс «Конструктора» после
+Кривые alpha и опорная вершина порталов сверены для MSH без type 16
+([описание кадра](../reference/render-frame.md#прозрачность-порталов-msh)). Native `RSQRTSS`
+воспроизводится на x86-64; другие архитектуры и нулевая дистанция используют
+явные `packet_distance_native_rsqrt_unsupported` / `packet_zero_distance_fallback`.
+
+Данные type 16 ещё не декодированы и считаются в `msh_type16_colors_unsupported`;
+в статических сценах 29 миссий GOG (1736 загрузок моделей) этот поток отсутствует.
+Его декодирование отложено до первого реального ненулевого счётчика.
+Внутренний ракурс «Конструктора» после
настоящего входа игрока подтверждает исчезновение чёрной поверхности в проходе;
наружные окна обеих миссий сверены на расстояниях около 60/85/110, а ближние
окна — с внутренней стороны. Окно «Конструктора» на правом краю кадра при
@@ -73,20 +77,30 @@ MSH-запрос со свободной preview-камерой; это не пÐ
среде, перехватить DirectDraw/Direct3D calls и surface flips, сохранить state
log на минимальных сценах с одним типом материала.
-Горизонтальные грани Land.msh с флагом `0x20000` используют Vulkan-отражение и исходную карту волн Du/Dv; перенос её смещений в обычное зеркало приближённый: `planar_reflection_shifted_camera_unsupported`.
+Горизонтальные грани Land.msh с флагом `0x20000` используют исходную карту Du/Dv, окно shifted-камеры и квадратный размер текстуры, проверенные исполнением DLL. Диапазон глубины, небо/туман/FX основного вида и соответствие размеров при обрезанном capture остаются приближениями: `planar_reflection_render_context_approx`; неперспективная камера API использует обычное зеркало.
Raw queue clock задаёт фазу волн отдельно от времени суток и sky elapsed; старые захваты без него считаются в `captured_water_phase_unverified`.
Один target отражает ближайшую активную высоту воды; остальные высоты и неплоские грани считаются в `planar_reflection_other_planes_unsupported` и `planar_reflection_nonplanar_unsupported` и сохраняют обычный terrain shader.
`terrain_face8_pipeline_unverified` теперь считает только исходные грани с `0x8` без `0x20000`; сама семантика оставшихся специальных проходов ещё не установлена.
## FXID field-level semantics
-Control Op1 пока использует цвет и радиус без случайных добавок команды;
-это явное приближение считается в `render_coverage control_op1_jitter_unsupported`.
+Control Op1 воспроизводит добавки к RGBA и радиусу двумя сохраняемыми RNG-потоками.
+Seeds просмотра `1/1` и общий порядок других FX ещё не совпадают с оригиналом;
+это явное приближение считается в `render_coverage control_op1_rng_schedule_approx`.
Масштаб радиуса длиной преобразованного направления и нижняя замена 0,01 восстановлены.
+Локальный флаг `0x80000000` сохраняет свет на MSH владельца, исключая его
+из общего света рельефа. Мерцание жёлтого источника над заводом подключено;
+конкретная последовательность пока не является эталоном совпадения во времени.
Control Op2 воспроизводит modes 0/2; modes 1/3, body+76 и неподдержанные
time modes/привязки считаются как `render_coverage control_op2_unsupported`.
Управление фазой экземпляра командами Control остаётся до его подключения в runtime.
+Часы экземпляра поддерживают modes 0–3, смену режима и отложенный перезапуск;
+preview создаёт их в момент ноль. Динамический manager A8 заменён нулём
+(`control_fx_manager_flag_stub`); очередь update с шагом 50 ms ещё не подключена.
+При расширении выбранных начальных строк все пропущенные команды считаются
+в `control_fx_unsupported`, а time modes 4–17 — в `control_fx_requires_game_state`;
+причина и владелец выводятся в лог. Неразобранные FXID считаются отдельно в `control_fx_invalid_documents`.
Размеры команд, resource references, lifecycle, flags families и используемые
time modes известны. Не закрыто значение каждого поля body opcodes 1--10,