Chapter 3 Binary Format

3-17. CollList

2. CollGroup Area

The CollGroup area has several Coll nodes stored as a group. Even if there is only one Coll node, it belongs to a CollGroup. The memory map for CollGroup is as follows.

CollGroupHeader u32 coll_group_tag
u32 this_coll_group_index
u32 coll_group_header_size
u32 coll_group_size
u32 coll_group_name_index
u32 coll_num
u32 nintendo_extension_block_size
u32 user_extension_block_size
u32 coll_num_byte(0)
...
u32 coll_num_byte(cull_num - 1)
Coll(0)
...
Coll(coll_num - 1)
NintendoExtensionBlock
UserExtensionBlock

Figure: CollGroup Area Memory Map

u32 coll_group_tag Tag indicating CollGroup
TAG_COLL_GROUP	0x000d1000
u32 this_coll_group_index Index number of this CollGroup
u32 coll_group_header_size Size of this CollGroupHeader
u32 coll_group_size Size of this CollGroup
u32 coll_group_name_index Specifes CollGroup name by index number
u32 coll_num Number of Coll in this CollGroup
u32 nintendo_extension_block_size Nintendo extension block size
u32 user_extension_block_size User extension block size
u32 coll_num_byte Number of bytes of each Coll
Coll Actual collision data
NintendoExtensionBlock Nintendo extension block
UserExtensionBlock User extension block