diff --git a/src/engine/openspaceengine.cpp b/src/engine/openspaceengine.cpp index ab45c29135..dd5b4ea4b1 100644 --- a/src/engine/openspaceengine.cpp +++ b/src/engine/openspaceengine.cpp @@ -645,6 +645,8 @@ void OpenSpaceEngine::loadSingleAsset(const std::string& assetPath) { } _scene = std::make_unique(std::move(sceneInitializer)); + global::renderEngine.setScene(_scene.get()); + global::rootPropertyOwner.addPropertySubOwner(_scene.get()); _scene->setCamera(std::make_unique()); Camera* camera = _scene->camera(); @@ -661,8 +663,6 @@ void OpenSpaceEngine::loadSingleAsset(const std::string& assetPath) { ); } - global::renderEngine.setScene(_scene.get()); - _assetManager->removeAll(); _assetManager->add(assetPath); diff --git a/src/interaction/orbitalnavigator.cpp b/src/interaction/orbitalnavigator.cpp index 3c02647633..d1180302da 100644 --- a/src/interaction/orbitalnavigator.cpp +++ b/src/interaction/orbitalnavigator.cpp @@ -581,6 +581,9 @@ void OrbitalNavigator::setAimNode(const std::string& aimNode) { } void OrbitalNavigator::startRetargetAnchor() { + if (!_anchorNode) { + return; + } const glm::dvec3 camPos = _camera->positionVec3(); const glm::dvec3 camDir = _camera->viewDirectionWorldSpace(); @@ -600,6 +603,10 @@ void OrbitalNavigator::startRetargetAnchor() { } void OrbitalNavigator::startRetargetAim() { + if (!_aimNode) { + return; + } + const glm::dvec3 camPos = _camera->positionVec3(); const glm::dvec3 camDir = _camera->viewDirectionWorldSpace(); const glm::dvec3 centerPos = _aimNode->worldPosition();