2
0
mirror of https://github.com/AxioDL/metaforce.git synced 2025-12-09 17:47:43 +00:00

Additional ANIM integration

This commit is contained in:
Jack Andersen
2016-08-26 18:54:53 -10:00
parent c5ddb51dfc
commit f76324a029
13 changed files with 230 additions and 19 deletions

View File

@@ -37,6 +37,24 @@ struct CSteadyStateAnimInfo
bool x78_ = false;
};
struct CAnimTreeEffectiveContribution
{
float x0_contributionWeight;
std::string x4_name;
CSteadyStateAnimInfo x14_ssInfo;
CCharAnimTime x2c_remTime;
u32 x34_dbIdx;
public:
CAnimTreeEffectiveContribution(float cweight, const std::string& name, const CSteadyStateAnimInfo& ssInfo,
const CCharAnimTime& remTime, u32 dbIdx)
: x0_contributionWeight(cweight), x4_name(name), x14_ssInfo(ssInfo), x2c_remTime(remTime), x34_dbIdx(dbIdx) {}
float GetContributionWeight() const { return x0_contributionWeight; }
const std::string& GetPrimitiveName() const { return x4_name; }
const CSteadyStateAnimInfo& GetSteadyStateAnimInfo() const { return x14_ssInfo; }
const CCharAnimTime& GetTimeRemaining() const { return x2c_remTime; }
u32 GetAnimDatabaseIndex() const { return x34_dbIdx; }
};
template <class T>
using TSubAnimTypeToken = TLockedToken<T>;
@@ -69,6 +87,8 @@ public:
u32 GetInt32POIList(const CCharAnimTime& time, CInt32POINode* listOut, u32 capacity, u32 iterator, u32) const;
u32 GetParticlePOIList(const CCharAnimTime& time, CParticlePOINode* listOut, u32 capacity, u32 iterator, u32) const;
u32 GetSoundPOIList(const CCharAnimTime& time, CSoundPOINode* listOut, u32 capacity, u32 iterator, u32) const;
std::shared_ptr<IAnimReader> Clone() const { return VClone(); }
};
}