From c837edae5beebd71139807f40a3fb4ceaa36fd18 Mon Sep 17 00:00:00 2001 From: Erik Broberg Date: Sun, 4 Sep 2016 03:44:50 -0400 Subject: [PATCH] Testing new syncing scheme --- src/engine/openspaceengine.cpp | 16 ++++++++++++---- src/interaction/interactionhandler.cpp | 4 +++- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/src/engine/openspaceengine.cpp b/src/engine/openspaceengine.cpp index a79e03017c..392bc943c0 100644 --- a/src/engine/openspaceengine.cpp +++ b/src/engine/openspaceengine.cpp @@ -767,8 +767,11 @@ void OpenSpaceEngine::preSynchronization() { } _scriptEngine->preSynchronization(); - _interactionHandler->updateInputStates(dt); + + _renderEngine->updateSceneGraph(); + _renderEngine->camera()->invalidateCache(); + _interactionHandler->updateCamera(); _parallelConnection->preSynchronization(); } @@ -787,13 +790,18 @@ void OpenSpaceEngine::postSynchronizationPreDraw() { _renderEngine->updateFade(); _renderEngine->updateRenderer(); _renderEngine->updateScreenSpaceRenderables(); - _renderEngine->updateSceneGraph(); + _renderEngine->updateShaderPrograms(); - _renderEngine->camera()->invalidateCache(); + if (!_isMaster) { + _renderEngine->updateSceneGraph(); + _renderEngine->camera()->invalidateCache(); + } + // Step the camera using the current mouse velocities which are synced - _interactionHandler->updateCamera(); + //_interactionHandler->updateCamera(); + diff --git a/src/interaction/interactionhandler.cpp b/src/interaction/interactionhandler.cpp index bd5307ffcc..ee04909f44 100644 --- a/src/interaction/interactionhandler.cpp +++ b/src/interaction/interactionhandler.cpp @@ -785,7 +785,9 @@ void InteractionHandler::updateCamera() { } else { _currentInteractionMode->updateCameraStateFromMouseStates(*_camera); - _camera->setFocusPositionVec3(focusNode()->worldPosition()); + if (focusNode() != nullptr) { + _camera->setFocusPositionVec3(focusNode()->worldPosition()); + } } }