diff options
| author | Valentin Popov <valentin@popov.link> | 2026-10-30 22:16:31 +0300 |
|---|---|---|
| committer | Valentin Popov <valentin@popov.link> | 2026-10-30 22:16:31 +0300 |
| commit | 048ad71f5c5c5a21aabb42dad1562b40b7a54ea2 (patch) | |
| tree | 3b21bb5aeeb4280064fa749ce417067510d32b1c /docs/appendices | |
| parent | eaf5df3ad01af591e394ef8f6542dd0b4c98d43b (diff) | |
| download | fparkan-048ad71f5c5c5a21aabb42dad1562b40b7a54ea2.tar.xz fparkan-048ad71f5c5c5a21aabb42dad1562b40b7a54ea2.zip | |
fix(render): hide native zero-alpha MSH batches
Diffstat (limited to 'docs/appendices')
| -rw-r--r-- | docs/appendices/knowledge-boundaries.md | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/docs/appendices/knowledge-boundaries.md b/docs/appendices/knowledge-boundaries.md index 68a01d0..580d545 100644 --- a/docs/appendices/knowledge-boundaries.md +++ b/docs/appendices/knowledge-boundaries.md @@ -18,6 +18,27 @@ state transitions и окончательный порядок части transp стене и дверном проёме. Мировое преобразование, фильтры категории и подключение к свободной камере остаются открытыми ([MSH](../reference/msh.md)). +Для MSH без потока цветов type 16 подтверждён только один постоянный alpha +override для диапазонов с CPU-цветом и raw-флагом `Batch20` `0x0008`: GOG +`Terrain.dll`, SHA-256 +`af87d1b2e728a0be73c52be3b44cc196ab46da7799f25a15d40f8c9b0b425ead`, RVA +`0x1B0F0`, задаёт alpha `0`, если установлен bit `0x0040` и сброшен `0x0010`. +Это покрывает `0x0148`; `0x0108`, `0x0118` и `0x0058` сохраняют alpha MAT0, +причём в `0x0058` bit `0x0010` имеет приоритет. Поток type 16 или отсутствие +`0x0008` исключают override. Проверка заводской сцены с фиксированной нативной +камерой подтвердила на одном кадре входа восстановление X-образного рисунка +двери, который виден и в оригинале; прежний Vulkan-readback показывал на этом +месте сплошной чёрный прямоугольник. Сравнение выполнено при времени сцены +2000 мс и трёх кадрах, запуск с Vulkan validation завершился без предупреждений +и ошибок. Это подтверждает только структуру проёма в этой сцене: правильность +освещения и полный попиксельный паритет не установлены. + +Общее fade-поведение по расстоянию в preview не реализовано. Открыты точная +метрика расстояния, выбор первого CPU-принятого треугольника диапазона и +эквивалентность frustum/culling-отбора оригинала; эти вопросы нельзя вывести из +захвата заводской двери. Данные потока type 16 ещё не декодированы, поэтому +правило выше относится только к MSH-диапазонам без этого потока цветов. + Закрывающий эксперимент: запустить оригинал в совместимой Windows/DirectX среде, перехватить DirectDraw/Direct3D calls и surface flips, сохранить state log на минимальных сценах с одним типом материала. |
