SModels and Brush Models
Target-binary evidence
Atlas indexes Load_ProcessStructLayout_GfxBrushModel at RVA 0x6177E0 (735 bytes), associated with archive_impl_tr_types_db.h:9203-9224. It also indexes GfxWorld layout registration at RVA 0x4D1BA0, where the candidate source registers an inline GfxWorldStaticModels component named smodels. Generated static-model loader families are indexed in archive_impl_r_staticmodel_db.h. These are exact target symbol/RVA observations and candidate-source mappings; details in Evidence Scope.
Candidate serialized layout
- Candidate GfxWorld static-model aggregate:
smodelsis registered at candidate offset0x170, size0x318(archive_impl_r_bsp_db.h:32753). The nested type isGfxWorldStaticModels. Its entire field table is not reproduced here until each field is source-matched and reviewed. - Candidate
GfxBrushModel: size0x60, alignment 4. Its registered bounds record is at0x38(bounds size0x18), radius at0x50, BSP surface start/count at0x54/0x58, and MDAO volume index at0x5C(archive_impl_tr_types_db.h:9203-9224). - Atlas also lists
GfxBaseSModelSurfData,GfxSModelInstanceData, and SModel surface/material indirection loader names. Their presence indicates separable model-instance/surface-related records, but does not by itself establish the full instance stride or material index table interpretation.
Format observations
The candidate world record owns static-model data in a nested aggregate; brush models point into a contiguous BSP-surface range and carry bounds/radius. This supports a candidate rendering-side grouping distinct from clipmap collision records. It does not imply brush render geometry equals cmodel collision geometry.
Confidence and unknowns
- High: target generated loader symbols (notably GfxBrushModel) and the GfxWorld symbol are indexed with RVAs.
- Medium: candidate association to generated render/static-model sources.
- Candidate only: sizes, offsets, and field semantics.
- Unknown: exact
GfxWorldStaticModelssublayout, SModel instance packing, lighting/visibility indirections, and relationship to the clipmap collision structure.
Evidence: Evidence Scope · Atlas validation · brush loader source · static-model loader source · world loader source.