diff options
| author | Valentin Popov <valentin@popov.link> | 2026-07-18 16:01:17 +0300 |
|---|---|---|
| committer | Valentin Popov <valentin@popov.link> | 2026-07-18 16:01:17 +0300 |
| commit | a858910853da12cb08bf1d7cd4572314a2e49fe1 (patch) | |
| tree | 377cb683036b90a972022a77635a4fee73ac082b /docs/tomes | |
| parent | 83caf4d6abf95b47046e1b3cc8c3203323ee0eff (diff) | |
| download | fparkan-a858910853da12cb08bf1d7cd4572314a2e49fe1.tar.xz fparkan-a858910853da12cb08bf1d7cd4572314a2e49fe1.zip | |
feat(terrain): encode material manager selectors
Diffstat (limited to 'docs/tomes')
| -rw-r--r-- | docs/tomes/05-render.md | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/docs/tomes/05-render.md b/docs/tomes/05-render.md index e75712c..469fbe1 100644 --- a/docs/tomes/05-render.md +++ b/docs/tomes/05-render.md @@ -1559,7 +1559,11 @@ two WEAR selectors must not be collapsed into an invented one-layer material, and the type-18 `aux18` stream is now documented as microtexture mapping data. `TerrainFace28::material_layers` exposes the evidenced high-byte `Land1` selector (with `0xff` absent sentinel) and low-byte `Land2` selector. The -manager's actual blend/pass operation remains unrecovered. +manager's actual blend/pass operation remains unrecovered. `World3D.dll` +supplies the manager ABI: its load slot appends `Land1` as table 0 and `Land2` +as table 1, while its material-phase lookup receives the exact 32-bit selector +`(table_index << 16) | material_index`. `TerrainMaterialSelection` preserves +that key for the renderer without assuming how the two phases are blended. The static Vulkan bridge now carries each contiguous face run as a separate draw range keyed by the original packed `material_tag`; it neither reorders |
