Chapter 3 Binary Format

3-20. EnvList

2. Env Area

The Env area is used for the environment settings of a scene. The Env area is mapped as follows.

u32 | env_tag
u32 | this_env_index
u32 | env_size
u32 | env_name_index
u32 | fog
u32 | fog_color
u32 | fog_near
u32 | fog_far
u32 | fill_color
u32 | fill_depth
u32 | bg_sprite_img
u32 | bg_sprite_depth
u32 | nintendo_extension_block
u32 | user_extension_block

Figure: Env Area Memory Map

u32 env_tag | Tag indicating Env. Set the following
    TAG_ENV	0x00100100
u32 this_env_index | Index number of this Env
u32 env_size | Size of this Env
u32 env_name_index | Index number of Env name in NameList
u32 fog | When FOG is used, set the following
    ENV_FOG_USE	0x00000001
When FOG is not used, set the following.
    ENV_FOG_NONE	0x00000000
u32 fog_color | When FOG is used, set as 0xRRGGBBAA.
u32 fog_near | Sets the starting position where Fog is displayed. Set the near clipping plane as 0 and the far clipping plane as 1000, then pick the value in between.
u32 fog_far | Sets the saturation point of FOG. Set the near clipping plane as 0 and the far clipping plane as 1000, then pick the value in between.
u32 fill_color | Sets the color for clearing the frame buffer. Specify as 0x00RRGGBB. When the frame buffer is not cleared by the fill color, set the following:
    FILL_COLOR_NONE	0xffffffff
u32 fill_depth | Sets the color for clearing the Z buffer. Specify as 0x00RRGGBB. When the Z buffer is not cleared by the fill color, specify the following:
    FILL_DEPTH_NONE	0xffffffff
u32 bg_sprite_img | Specifies the TexList index number of the texture image to be used in BG. When a texture image is not used, specify:
    BG_COLOR_IMG_NONE	0xffffffff
u32 bg_sprite_depth | Specifies the TextList index number of the depth image to be used in BG. When a depth image is not used, specify:
    BG_DEPTH_IMG_NONE	0xffffffff
u32 nintendo_extension_block_size | Nintendo extension block size
u32 user_extension_block_size | User extension block size
NintendoExtensionBlock | Nintendo extension block
UserExtensinoBlock | User extension block