Difference between revisions of "AROT (MREA Section)"

From Retro Modding Wiki
Jump to: navigation, search
Line 6: Line 6:
 
Octrees are a form of [[wikipedia:Binary Space Partitioning|BSP tree]] that subdivide an area in 3-dimensions.
 
Octrees are a form of [[wikipedia:Binary Space Partitioning|BSP tree]] that subdivide an area in 3-dimensions.
 
They are structured recursively, starting with a ''root'' node and traversing their way to individual ''leaf'' nodes.
 
They are structured recursively, starting with a ''root'' node and traversing their way to individual ''leaf'' nodes.
A valid octant will split sub-octants across 3-tiers, one for each dimension of euclidean space.
+
A full-branch octant will split sub-octants across 3-tiers, one for each dimension of euclidean space.
  
 
=== Header ===
 
=== Header ===

Revision as of 05:01, 10 April 2015

File:Octree2.svg
Left: Recursive subdivision of a cube into octants. Right: The corresponding octree.

Within MREA resources, the AROT section stores an octree which is used to accelerate rendering of areas in back-to-front order.

Octrees are a form of BSP tree that subdivide an area in 3-dimensions. They are structured recursively, starting with a root node and traversing their way to individual leaf nodes. A full-branch octant will split sub-octants across 3-tiers, one for each dimension of euclidean space.

Header

Offset Size Data Type Description Notes
0x0 4 long Magic AROT
0x4 4 long Version Always 0x1
0x8 4 long Mesh-Bitmap Count Count of mesh-bitmaps
0xC 4 long Mesh-Bitmap Bit-Count Count of bits in each mesh-bitmap (matches MREA's mesh count)
0x10 4 long Node Count Number of octant nodes
0x14 24 float2x3 AABB AABB that fully-encloses area and serves as the octree's root-shape