summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrey Kleshchev <andreykproductengine@lindenlab.com>2022-05-16 23:21:50 +0300
committerAndrey Kleshchev <andreykproductengine@lindenlab.com>2022-05-17 00:15:32 +0300
commitc6fe446c3a047fd7e7841d960f35369ec957b9cc (patch)
tree3fea7b49ce1343bd5e4cfde992bdd32fb19bd46c
parentc7ddba7eb4b4e47b0a9371fef41339f7941eefdb (diff)
SL-17415 Movement of scripted attached objects is no longer interpolated.
-rw-r--r--indra/newview/llvoavatar.cpp14
1 files changed, 11 insertions, 3 deletions
diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp
index ccb1662139..701a0b5b13 100644
--- a/indra/newview/llvoavatar.cpp
+++ b/indra/newview/llvoavatar.cpp
@@ -2847,9 +2847,17 @@ void LLVOAvatar::idleUpdateMisc(bool detailed_update)
}
}
-
- attached_object->mDrawable->makeActive();
- attached_object->mDrawable->updateXform(TRUE);
+ // if selecting any attachments, update all of them as non-damped
+ if (LLSelectMgr::getInstance()->getSelection()->getObjectCount() && LLSelectMgr::getInstance()->getSelection()->isAttachment())
+ {
+ gPipeline.updateMoveNormalAsync(attached_object->mDrawable);
+ }
+ else
+ {
+ // Note: SL-17415; While most objects follow joints,
+ // some objects get position updates from server
+ gPipeline.updateMoveDampedAsync(attached_object->mDrawable);
+ }
// override_bbox calls movePartition() and getSpatialPartition(),
// so bridge might no longer be valid, get it again.