Chapter 3 Binary Format
3-11. TriList

1. TriList Area

TriList is the list that contains triangle data. Triangles are constructed by referencing the vertex groups in VtxList. Mapping of TriList is as follows.

TriListHeader u32 tri_list_tag
u32 tri_list_header_size
u32 tri_list_size
u32 tri_group_num
u32 nintendo_extension_block_size
u32 user_extension_block_size
u32 tri_group_num_byte(0)
......
u32 tri_group_num_byte(tri_group_num - 1)
TriGroup(0)
.......
TriGroup(tri_group_num - 1)
NintendoExtensionBloock
UserExtensionBlock

Figure: TriList Area Memory Map

u32 tri_list_tag Tag indicating TriList. Set the following flag.
TAG_TRI_LIST	0x00080000
u32 tri_list_header_size Size of TriListHeader area
u32 tri_list_size Size of TriList area
u32 tri_group_num Total number of TriGroup in the TriList
u32 nintendo_extension_block_size Nintendo extension block size
u32 user_extension_block_size User extension block size
u32 tri_group_num_byte Number of bytes corresponding to TriGroup
TriGroup Triangle list per one shape
NintendoExtensionBlock Nintendo extension block
UserExtensionBlock UserExtensionBlock