mirror of
https://github.com/overte-org/overte.git
synced 2025-08-07 12:50:40 +02:00
Don't call function if flow is not active and made it thread safe
This commit is contained in:
parent
da1597c5d1
commit
6b33f4e027
1 changed files with 12 additions and 5 deletions
|
@ -5811,7 +5811,13 @@ void MyAvatar::releaseGrab(const QUuid& grabID) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void MyAvatar::addAvatarHandsToFlow(const std::shared_ptr<Avatar>& otherAvatar) {
|
void MyAvatar::addAvatarHandsToFlow(const std::shared_ptr<Avatar>& otherAvatar) {
|
||||||
|
if (QThread::currentThread() != thread()) {
|
||||||
|
QMetaObject::invokeMethod(this, "addAvatarHandsToFlow",
|
||||||
|
Q_ARG(const std::shared_ptr<Avatar>&, otherAvatar));
|
||||||
|
return;
|
||||||
|
}
|
||||||
auto &flow = _skeletonModel->getRig().getFlow();
|
auto &flow = _skeletonModel->getRig().getFlow();
|
||||||
|
if (otherAvatar != nullptr && flow.getActive()) {
|
||||||
for (auto &handJointName : HAND_COLLISION_JOINTS) {
|
for (auto &handJointName : HAND_COLLISION_JOINTS) {
|
||||||
int jointIndex = otherAvatar->getJointIndex(handJointName);
|
int jointIndex = otherAvatar->getJointIndex(handJointName);
|
||||||
if (jointIndex != -1) {
|
if (jointIndex != -1) {
|
||||||
|
@ -5819,6 +5825,7 @@ void MyAvatar::addAvatarHandsToFlow(const std::shared_ptr<Avatar>& otherAvatar)
|
||||||
flow.setOthersCollision(otherAvatar->getID(), jointIndex, position);
|
flow.setOthersCollision(otherAvatar->getID(), jointIndex, position);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**jsdoc
|
/**jsdoc
|
||||||
|
|
Loading…
Reference in a new issue