diff options
| author | Brad Kittenbrink <brad@lindenlab.com> | 2008-02-27 18:58:14 +0000 |
|---|---|---|
| committer | Brad Kittenbrink <brad@lindenlab.com> | 2008-02-27 18:58:14 +0000 |
| commit | 6d52efe452aa8469e0343da1c7d108f3f52ab651 (patch) | |
| tree | a87be48e9840d7fc1f7ee514d7c7f994e71fdb3c /indra/llcharacter/llpose.cpp | |
| parent | 6027ad2630b8650cabcf00628ee9b0d25bedd67f (diff) | |
Merge of windlight into release (QAR-286). This includes all changes in
windlight14 which have passed QA (up through r79932).
svn merge -r 80831:80833 svn+ssh://svn.lindenlab.com/svn/linden/branches/merge_windlight14_r80620
Diffstat (limited to 'indra/llcharacter/llpose.cpp')
| -rw-r--r-- | indra/llcharacter/llpose.cpp | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/indra/llcharacter/llpose.cpp b/indra/llcharacter/llpose.cpp index 557bbd2d56..2120cb223e 100644 --- a/indra/llcharacter/llpose.cpp +++ b/indra/llcharacter/llpose.cpp @@ -379,15 +379,20 @@ void LLJointStateBlender::blendJointStates(BOOL apply_now) } } - // apply blended transforms - target_joint->setPosition(blended_pos); - target_joint->setScale(blended_scale); - target_joint->setRotation(blended_rot); - - // apply additive transforms - target_joint->setPosition(target_joint->getPosition() + added_pos); - target_joint->setScale(target_joint->getScale() + added_scale); - target_joint->setRotation(added_rot * target_joint->getRotation()); + if (!added_scale.isFinite()) + { + added_scale.clearVec(); + } + + if (!blended_scale.isFinite()) + { + blended_scale.setVec(1,1,1); + } + + // apply transforms + target_joint->setPosition(blended_pos + added_pos); + target_joint->setScale(blended_scale + added_scale); + target_joint->setRotation(added_rot * blended_rot); if (apply_now) { |
