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);
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|