From d0ce5b1a785bdb1e94dd8688b26e6a69c22f9f4f Mon Sep 17 00:00:00 2001 From: Miikka Heikkinen Date: Tue, 17 Dec 2013 14:45:42 +0200 Subject: fix rendering issues MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I5dee557f2f4857f586412d604040ffbeda0e78a1 Reviewed-by: Pasi Keränen --- src/datavisualization/engine/abstract3drenderer.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'src/datavisualization/engine/abstract3drenderer.cpp') diff --git a/src/datavisualization/engine/abstract3drenderer.cpp b/src/datavisualization/engine/abstract3drenderer.cpp index ddff9fd3..ec2b1ecd 100644 --- a/src/datavisualization/engine/abstract3drenderer.cpp +++ b/src/datavisualization/engine/abstract3drenderer.cpp @@ -171,15 +171,18 @@ void Abstract3DRenderer::updateScene(Q3DScene *scene) updateInputPosition(QPoint(logicalPixelPosition.x() * devicePixelRatio, logicalPixelPosition.y() * devicePixelRatio)); - m_viewport = m_cachedScene->d_ptr->glViewport(); - m_secondarySubViewport = m_cachedScene->d_ptr->glSecondarySubViewport(); + m_viewport = scene->d_ptr->glViewport(); + m_secondarySubViewport = scene->d_ptr->glSecondarySubViewport(); - if (m_primarySubViewport != m_cachedScene->d_ptr->glPrimarySubViewport()) { + if (m_primarySubViewport != scene->d_ptr->glPrimarySubViewport()) { // Resize of primary subviewport means resizing shadow and selection buffers - m_primarySubViewport = m_cachedScene->d_ptr->glPrimarySubViewport(); + m_primarySubViewport = scene->d_ptr->glPrimarySubViewport(); handleResize(); } + scene->activeCamera()->d_ptr->updateViewMatrix(m_autoScaleAdjustment); + // Set light position (rotate light with m_cachedScene->activeCamera(), a bit above it (as set in defaultLightPos)) + scene->setLightPositionRelativeToCamera(defaultLightPos); if (Q3DScene::invalidSelectionPoint() == logicalPixelPosition) { updateSelectionState(SelectNone); -- cgit v1.2.3