Implemented HAnim plugin.

This commit is contained in:
Angelo Papenhoff
2015-01-17 15:15:03 +01:00
parent f8f7efab40
commit c0fab82c52
9 changed files with 184 additions and 14 deletions

View File

@@ -1,6 +1,6 @@
namespace Rw {
// TODO: mostly
// TODO: mostly a stub right now
struct Pipeline
{
uint32 pluginID;
@@ -37,8 +37,40 @@ struct Frame : PluginBase<Frame>, Object
Frame *forAllChildren(Callback cb, void *data);
int32 count(void);
void updateLTM(void);
void setDirty(void);
};
struct HAnimNodeInfo
{
int32 id;
int32 index;
int32 flags;
Frame *frame;
};
struct HAnimHierarchy
{
int32 flags;
int32 numNodes;
float *matrices;
float *matricesUnaligned;
HAnimNodeInfo *nodeInfo;
Frame *parentFrame;
HAnimHierarchy *parentHierarchy; // mostly unused
// temporary
int32 maxInterpKeyFrameSize;
};
struct HAnimData
{
int32 id;
HAnimHierarchy *hierarchy;
};
extern int32 HAnimOffset;
void RegisterHAnimPlugin(void);
struct Image
{
int32 flags;