mirror of
https://github.com/overte-org/overte.git
synced 2025-04-20 18:23:54 +02:00
Threadsafe access to EntityTree in OverlayPanel
This commit is contained in:
parent
bc538a0f7d
commit
7b74f7407a
1 changed files with 8 additions and 6 deletions
|
@ -170,9 +170,10 @@ void OverlayPanel::applyTransformTo(Transform& transform, bool force) {
|
|||
transform.setTranslation(DependencyManager::get<AvatarManager>()->getMyAvatar()
|
||||
->getPosition());
|
||||
} else if (!_anchorPositionBindEntity.isNull()) {
|
||||
transform.setTranslation(DependencyManager::get<EntityScriptingInterface>()
|
||||
->getEntityTree()->findEntityByID(_anchorPositionBindEntity)
|
||||
->getPosition());
|
||||
EntityTreePointer entityTree = DependencyManager::get<EntityScriptingInterface>()->getEntityTree();
|
||||
entityTree->withReadLock([&] {
|
||||
transform.setTranslation(entityTree->findEntityByID(_anchorPositionBindEntity)->getPosition());
|
||||
});
|
||||
} else {
|
||||
transform.setTranslation(getAnchorPosition());
|
||||
}
|
||||
|
@ -181,9 +182,10 @@ void OverlayPanel::applyTransformTo(Transform& transform, bool force) {
|
|||
transform.setRotation(DependencyManager::get<AvatarManager>()->getMyAvatar()
|
||||
->getOrientation());
|
||||
} else if (!_anchorRotationBindEntity.isNull()) {
|
||||
transform.setRotation(DependencyManager::get<EntityScriptingInterface>()
|
||||
->getEntityTree()->findEntityByID(_anchorRotationBindEntity)
|
||||
->getRotation());
|
||||
EntityTreePointer entityTree = DependencyManager::get<EntityScriptingInterface>()->getEntityTree();
|
||||
entityTree->withReadLock([&] {
|
||||
transform.setRotation(entityTree->findEntityByID(_anchorRotationBindEntity)->getRotation());
|
||||
});
|
||||
} else {
|
||||
transform.setRotation(getAnchorRotation());
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue