From 4ef08d0bf6366b0bc8ccb6357b794937411f74cc Mon Sep 17 00:00:00 2001 From: Valentin Popov Date: Thu, 19 Feb 2026 16:07:01 +0400 Subject: feat: add terrain-core, tma, and unitdat crates with parsing functionality - Introduced `terrain-core` crate for loading and processing terrain mesh data. - Added `tma` crate for parsing mission files, including footer and object records. - Created `unitdat` crate for reading unit data files with validation of structure. - Implemented error handling and tests for all new crates. - Documented object registry format and rendering pipeline in specifications. --- docs/specs/render.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'docs/specs/render.md') diff --git a/docs/specs/render.md b/docs/specs/render.md index 06feaef..ccc941b 100644 --- a/docs/specs/render.md +++ b/docs/specs/render.md @@ -167,3 +167,16 @@ void RenderFrame(Scene* scene, Camera* cam, float dt) { 1. Полный pixel-parity контур с эталонными кадрами оригинального рендера по набору моделей/сцен. 2. Формализация всех render-state деталей (точные blend/depth/cull/state transitions) для гарантии 1:1 в каждом draw-pass. 3. Полный coverage-пакет по динамическим веткам (FX-heavy кадры, сложные material-режимы, lightmap-комбинации). + +## 12. Object registry bridge (`objects.rlb`) + +Для миссионного/юнитного рендера критично учитывать промежуточный слой прототипов: + +1. `TMA`/`*.dat` обычно дают не прямой `*.msh`, а ключ прототипа. +2. Ключ резолвится через `objects.rlb` (реестр ссылок на реальные архивы ресурсов). +3. Только после этого выполняется стандартный путь: + `MSH -> WEAR -> MAT0 -> Texm`. + +Детальная спецификация этого шага вынесена в отдельную страницу: + +- [Object registry (`objects.rlb`)](object-registry.md) -- cgit v1.2.3