MatListはマテリアル情報を記述するためのリストです。シェープデータによって参照され、テクスチャを持っている場合はTexListへのリンクを持ちます。MatListは以下のようにマッピングされています。
MatListHeader | u32 | mat_list_tag |
---|---|---|
u32 | mat_list_header_size | |
u32 | mat_list_size | |
u32 | mat_num | |
u32 | nintendo_extension_block_size | |
u32 | user_extension_block_size | |
u32 | mat_num_byte(0) | |
|
||
u32 | mat_num_byte(mat_num - 1) | |
|
||
|
||
|
||
|
||
|
図 MatListエリアメモリマップ
u32 mat_list_tag | MatList Tag. Set the following flag
TAG_MAT_LIST 0x000a0000 |
u32 mat_list_header_size | Size of this MatListHeader |
u32 mat_list_size | Size of this MatList |
u32 mat_num | Total number of Mat contained in MatList |
u32 nintendo_extension_block_size | 任天堂拡張ブロックサイズ |
u32 user_extension_block_size | ユーザー拡張ブロックサイズ |
u32 mat_num_byte | Size of corresponding Mat area |
Mat | Actual material |
NintendoExtensionBlock | 任天堂拡張ブロック |
UserExtensinoBlock | ユーザー拡張ブロック |