aboutsummaryrefslogtreecommitdiff
path: root/docs/tomes/05-render.md
diff options
context:
space:
mode:
authorValentin Popov <valentin@popov.link>2026-10-18 07:59:36 +0300
committerValentin Popov <valentin@popov.link>2026-10-18 07:59:42 +0300
commitc8543d7365329fa97d31ac9b0114a1ee9095dd74 (patch)
tree3cb6c12749b659b99a6b8a2c6efb68aa79ff4626 /docs/tomes/05-render.md
parent737e429cb109446ec008c4dcf91d4f04faccd64a (diff)
downloadfparkan-c8543d7365329fa97d31ac9b0114a1ee9095dd74.tar.xz
fparkan-c8543d7365329fa97d31ac9b0114a1ee9095dd74.zip
feat(terrain): build BAS basement foundations
Diffstat (limited to 'docs/tomes/05-render.md')
-rw-r--r--docs/tomes/05-render.md17
1 files changed, 17 insertions, 0 deletions
diff --git a/docs/tomes/05-render.md b/docs/tomes/05-render.md
index b04af31..15fb01a 100644
--- a/docs/tomes/05-render.md
+++ b/docs/tomes/05-render.md
@@ -955,6 +955,23 @@ for (face, assignment) in mesh.faces.iter().zip(assignments.iter()) {
}
```
+Подготовка BAS вынесена в `fparkan-terrain::build_basement_foundations`.
+Функция получает внешние и внутренние кольца в порядке размещения, строит
+упорядоченные пересечения внешней границы с текущей поверхностью и возвращает
+исходные фрагменты рельефа вместе с треугольниками отмостки в одном наборе.
+`TerrainWorld::with_basement_foundation` принимает этот набор во владение и
+устанавливает те же координаты и маски в BVH высотных запросов и пересечений.
+Предпросмотр миссии на Vulkan пока строит только LOD0: связывание BAS-записей
+с этой подготовкой ещё не подключено, поэтому наличие API не означает, что
+геометрия миссии уже обрезана.
+
+Внешнее кольцо должно лежать на области LOD0, а каждый его сегмент — оставаться
+покрытым текущей поверхностью. Непокрытый сегмент или пересекающиеся контуры
+дают ошибку; карта не остаётся частично обрезанной. Первичная нормализация
+использует исходные грани и соседей LOD0, последующие пересечения и вырезания —
+канонические фрагменты после предыдущих размещений. Соответствие динамических
+соседей, создаваемых нативным движком, пока не моделируется.
+
## Материалы ландшафта
Рядом с `Land.msh` лежат `Land1.wea` и `Land2.wea`. Старший байт