metaforce/Runtime/Character/CTreeUtils.cpp

21 lines
845 B
C++
Raw Normal View History

2016-09-04 02:27:35 +00:00
#include "CTreeUtils.hpp"
#include "CAnimTreeNode.hpp"
#include "CAnimSysContext.hpp"
#include "CTransitionDatabaseGame.hpp"
#include "IMetaTrans.hpp"
namespace urde
{
2018-01-30 01:04:01 +00:00
std::shared_ptr<CAnimTreeNode> CTreeUtils::GetTransitionTree(const std::weak_ptr<CAnimTreeNode>& a,
const std::weak_ptr<CAnimTreeNode>& b,
2016-09-04 02:27:35 +00:00
const CAnimSysContext& animCtx)
{
2018-01-30 01:04:01 +00:00
CAnimTreeEffectiveContribution contribA = a.lock()->GetContributionOfHighestInfluence();
CAnimTreeEffectiveContribution contribB = b.lock()->GetContributionOfHighestInfluence();
2016-09-04 02:27:35 +00:00
return animCtx.x0_transDB->GetMetaTrans(contribA.GetAnimDatabaseIndex(),
contribB.GetAnimDatabaseIndex())->GetTransitionTree(a, b, animCtx);
}
}