debug of anim state machine tree traversal

This commit is contained in:
amantley 2018-07-25 17:46:19 -07:00
parent b91df1b2d4
commit fee05b6b8d
8 changed files with 8 additions and 5 deletions

View file

@ -25,7 +25,7 @@ AnimBlendLinear::~AnimBlendLinear() {
}
const AnimPoseVec& AnimBlendLinear::evaluate(const AnimVariantMap& animVars, const AnimContext& context, float dt, Triggers& triggersOut) {
qCDebug(animation) << "in blend linear ++++++++++++++++" << _alphaVar << ": " << _alpha;
_alpha = animVars.lookup(_alphaVar, _alpha);
if (_children.size() == 0) {

View file

@ -47,7 +47,7 @@ static float calculateAlpha(const float speed, const std::vector<float>& charact
}
const AnimPoseVec& AnimBlendLinearMove::evaluate(const AnimVariantMap& animVars, const AnimContext& context, float dt, Triggers& triggersOut) {
qCDebug(animation) << "in blend linear move " << _alphaVar << ": " << _alpha;
assert(_children.size() == _characteristicSpeeds.size());
_desiredSpeed = animVars.lookup(_desiredSpeedVar, _desiredSpeed);

View file

@ -31,7 +31,7 @@ AnimClip::~AnimClip() {
}
const AnimPoseVec& AnimClip::evaluate(const AnimVariantMap& animVars, const AnimContext& context, float dt, Triggers& triggersOut) {
qCDebug(animation) << "anim clip is: " << _url;
// lookup parameters from animVars, using current instance variables as defaults.
_startFrame = animVars.lookup(_startFrameVar, _startFrame);
_endFrame = animVars.lookup(_endFrameVar, _endFrame);

View file

@ -21,6 +21,7 @@ AnimDefaultPose::~AnimDefaultPose() {
}
const AnimPoseVec& AnimDefaultPose::evaluate(const AnimVariantMap& animVars, const AnimContext& context, float dt, Triggers& triggersOut) {
qCDebug(animation) << "in animation default pose";
if (_skeleton) {
_poses = _skeleton->getRelativeDefaultPoses();
} else {

View file

@ -875,6 +875,7 @@ void AnimInverseKinematics::solveTargetWithSpline(const AnimContext& context, co
//virtual
const AnimPoseVec& AnimInverseKinematics::evaluate(const AnimVariantMap& animVars, const AnimContext& context, float dt, AnimNode::Triggers& triggersOut) {
qCDebug(animation) << "in animation ik node";
// don't call this function, call overlay() instead
assert(false);
return _relativePoses;

View file

@ -33,6 +33,7 @@ AnimManipulator::~AnimManipulator() {
}
const AnimPoseVec& AnimManipulator::evaluate(const AnimVariantMap& animVars, const AnimContext& context, float dt, Triggers& triggersOut) {
qCDebug(animation) << "in anim manipulator node";
return overlay(animVars, context, dt, triggersOut, _skeleton->getRelativeDefaultPoses());
}

View file

@ -42,7 +42,7 @@ void AnimOverlay::buildBoneSet(BoneSet boneSet) {
}
const AnimPoseVec& AnimOverlay::evaluate(const AnimVariantMap& animVars, const AnimContext& context, float dt, Triggers& triggersOut) {
qCDebug(animation) << "in anim overlay node" << _alphaVar << ": " << _alpha;
// lookup parameters from animVars, using current instance variables as defaults.
// NOTE: switching bonesets can be an expensive operation, let's try to avoid it.
auto prevBoneSet = _boneSet;

View file

@ -22,7 +22,7 @@ AnimStateMachine::~AnimStateMachine() {
}
const AnimPoseVec& AnimStateMachine::evaluate(const AnimVariantMap& animVars, const AnimContext& context, float dt, Triggers& triggersOut) {
qCDebug(animation) << "in anim state machine " << _currentState->getID() << ": " << _alpha;
QString desiredStateID = animVars.lookup(_currentStateVar, _currentState->getID());
if (_currentState->getID() != desiredStateID) {
// switch states