diff options
Diffstat (limited to 'include')
| -rw-r--r-- | include/z64animation.h | 6 | ||||
| -rw-r--r-- | include/z64player.h | 7 |
2 files changed, 12 insertions, 1 deletions
diff --git a/include/z64animation.h b/include/z64animation.h index 3ee160c00..4c255a739 100644 --- a/include/z64animation.h +++ b/include/z64animation.h @@ -12,6 +12,10 @@ struct Actor; struct SkelAnime; struct PlayerAnimationFrame; +// for indexing `jointTable[]` and `morphTable[]` +#define LIMB_ROOT_POS 0 // Translation/Offset of the root limb +#define LIMB_ROOT_ROT 1 // Rotation of the root limb + #define LIMB_DONE 0xFF #define BODYPART_NONE -1 @@ -186,7 +190,7 @@ typedef struct SkelAnime { } update; /* 0x34 */ s8 initFlags; // Flags used when initializing Player's skeleton /* 0x35 */ u8 moveFlags; // Flags used for animations that move the actor in worldspace. - /* 0x36 */ s16 prevRot; // Previous rotation in worldspace. + /* 0x36 */ s16 prevYaw; // Previous rotation in worldspace. /* 0x38 */ Vec3s prevTransl; // Previous modelspace translation. /* 0x3E */ Vec3s baseTransl; // Base modelspace translation. } SkelAnime; // size = 0x44 diff --git a/include/z64player.h b/include/z64player.h index 8adf2247a..bfc5b91ff 100644 --- a/include/z64player.h +++ b/include/z64player.h @@ -317,6 +317,13 @@ typedef enum PlayerDoorType { /* 5 */ PLAYER_DOORTYPE_PROXIMITY } PlayerDoorType; +// Some player animations are played at this reduced speed, for reasons yet unclear. +// Perhaps to compress animation data? +// This is called "adjusted" for now. +// z_en_horse also has many instances of this adjusted speed +#define PLAYER_ANIM_ADJUSTED_SPEED (2.0f / 3.0f) +#define PLAYER_ANIM_NORMAL_SPEED (3.0f / 3.0f) + typedef enum PlayerAnimType { /* 0 */ PLAYER_ANIMTYPE_DEFAULT, // DEFAULT /* 1 */ PLAYER_ANIMTYPE_1, |
