NIFF 1.0 Specification

3. Binary Format

3.16 AnimList


2) AnimGroup

AnimGroupHeader u32 anim_group_tag
u32 this_anim_group_index
u32 anim_group_header_size
u32 anim_group_size
u32 anim_name_index
u32 anim_type
u32 frame_rate
u32 anim_num
u32 anim_loop
u32 anim_rot_mtx_order
u32 nintendo_extension_block_size
u32 user_extension_block_size
Anim(0)
...
Anim(anim_num - 1)
NintendoExtensionBlock
UserExtensionBlock

AnimGroup Area Memory Map
u32 anim_group_tag Tag indicating AnimGroup. Set the following flag.
TAG_ANIM_GROUP  0x000c0100

u32 this_anim_group_index Index number of this AnimGroup.
u32 anim_group_header_size Size of this AnimGroupHeader.
u32 anim_group_size Size of this AnimGroup.
u32 anim_name_index Index number of AnimGroup name contained in NameList.
u32 anim_type Specifies the animation type. The following are currently defined.
ANIM_TYPE_STATIC        0x00000000
ANIM_TYPE_FULL          0x00000002
ANIM_TYPE_KEY           0x00000003
ANIM_TYPE_BILLBOARD_OBJ 0x00000004
ANIM_TYPE_STATIC converts non-animated data into matrix data like an object. Apply to data for a house or mountain, or a fixed camera view.

ANIM_TYPE_FULL performs full frame animation. Specify to include every frame of the animation data.

ANIM_TYPE_KEY performs key frame animation. Specify to include every key frame of the animation data.

ANIM_TYPE_BILLBOARD_OBJ specifies animation that always faces toward a specified object.
u32 frame_rate Specifies the animation frame rate.
u32 anim_num Specifies the number of Anim area.
u32 anim_loop Sets the number of loops the animation will execute. To set an inifinite number of loops, specify the following:
ANIM_LOOP_ENDLESS       0x00000000

 
u32 anim_rot_mtx_order Specifies the calculation order of X axial, Y axial and Z axial rotation. Use the following flag. The calculation is done backwards. For example, if ANIM_ROT_ORDER_XYZ is specified, rotation matrix R would be R=Z*Y*X.
ANIM_ROT_ORDER_XYZ      0x00010203
ANIM_ROT_ORDER_XZY      0x00010302
ANIM_ROT_ORDER_YXZ      0x00020103
ANIM_ROT_ORDER_YZX      0x00030102
ANIM_ROT_ORDER_ZXY      0x00020301
ANIM_ROT_ORDER_ZYX      0x00030201
u32 nintendo_extension_block_size Nintendo extension block size
u32 user_extension_block_size User extension block size
Anim Actual animation data.
NintendoExtensionBlock Nintendo extension block
UserExtensionBlock User extension block

PreviousNext

Copyright 1997-1999 NINTENDO Co., Ltd. All rights reserved.