summaryrefslogtreecommitdiffstats
path: root/src/animation/AnimBlendSequence.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/animation/AnimBlendSequence.h')
-rw-r--r--src/animation/AnimBlendSequence.h27
1 files changed, 7 insertions, 20 deletions
diff --git a/src/animation/AnimBlendSequence.h b/src/animation/AnimBlendSequence.h
index c6e70f22..1c2531ce 100644
--- a/src/animation/AnimBlendSequence.h
+++ b/src/animation/AnimBlendSequence.h
@@ -16,15 +16,6 @@ struct KeyFrameTrans : KeyFrame {
CVector translation;
};
-struct KeyFrameCompressed {
- int16 rot[4]; // 4096
- int16 deltaTime; // 60
-};
-
-struct KeyFrameTransCompressed : KeyFrameCompressed {
- int16 trans[3]; // 128
-};
-
// The sequence of key frames of one animated node
class CAnimBlendSequence
@@ -37,32 +28,28 @@ public:
int32 type;
char name[24];
int32 numFrames;
-#ifdef PED_SKIN
int16 boneTag;
-#endif
void *keyFrames;
void *keyFramesCompressed;
CAnimBlendSequence(void);
virtual ~CAnimBlendSequence(void);
void SetName(char *name);
- void SetNumFrames(int numFrames, bool translation);
+ void SetNumFrames(int numFrames, bool translation, bool compressed);
void RemoveQuaternionFlips(void);
KeyFrame *GetKeyFrame(int n) {
return type & KF_TRANS ?
&((KeyFrameTrans*)keyFrames)[n] :
&((KeyFrame*)keyFrames)[n];
}
+ KeyFrame *GetKeyFrameCompressed(int n) {
+ return type & KF_TRANS ?
+ &((KeyFrameTrans*)keyFramesCompressed)[n] :
+ &((KeyFrame*)keyFramesCompressed)[n];
+ }
bool HasTranslation(void) { return !!(type & KF_TRANS); }
- void Uncompress(void);
- void CompressKeyframes(void);
- void RemoveUncompressedData(void);
bool MoveMemory(void);
-#ifdef PED_SKIN
void SetBoneTag(int tag) { boneTag = tag; }
-#endif
};
-#ifndef PED_SKIN
-VALIDATE_SIZE(CAnimBlendSequence, 0x2C);
-#endif
+VALIDATE_SIZE(CAnimBlendSequence, 0x30);