diff --git a/interface/src/avatar/SkeletonModel.cpp b/interface/src/avatar/SkeletonModel.cpp index 24acd8d2e3..29c4e2cc52 100644 --- a/interface/src/avatar/SkeletonModel.cpp +++ b/interface/src/avatar/SkeletonModel.cpp @@ -432,7 +432,8 @@ bool SkeletonModel::getHeadPosition(glm::vec3& headPosition) const { } bool SkeletonModel::getNeckPosition(glm::vec3& neckPosition) const { - if (Menu::getInstance()->isOptionChecked(MenuOption::CollideAsRagdoll)) { + if (_owningAvatar->isMyAvatar() && + Menu::getInstance()->isOptionChecked(MenuOption::CollideAsRagdoll)) { return isActive() && getVisibleJointPositionInWorldFrame(_geometry->getFBXGeometry().neckJointIndex, neckPosition); } return isActive() && getJointPositionInWorldFrame(_geometry->getFBXGeometry().neckJointIndex, neckPosition); diff --git a/libraries/shared/src/Ragdoll.cpp b/libraries/shared/src/Ragdoll.cpp index e10e1620ae..80e3c27e04 100644 --- a/libraries/shared/src/Ragdoll.cpp +++ b/libraries/shared/src/Ragdoll.cpp @@ -24,6 +24,9 @@ Ragdoll::Ragdoll() : _massScale(1.0f), _ragdollTranslation(0.0f), _translationIn Ragdoll::~Ragdoll() { clearRagdollConstraintsAndPoints(); + if (_ragdollSimulation) { + _ragdollSimulation->removeRagdoll(this); + } } void Ragdoll::stepRagdollForward(float deltaTime) {