diff options
author | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2013-12-17 14:45:42 +0200 |
---|---|---|
committer | Miikka Heikkinen <miikka.heikkinen@digia.com> | 2013-12-17 14:50:25 +0200 |
commit | d0ce5b1a785bdb1e94dd8688b26e6a69c22f9f4f (patch) | |
tree | 75b45e1d31319cdc066f719ed693ee89b5e853da /src/datavisualization/engine/abstract3drenderer.cpp | |
parent | c42c5a5fb801ea1f6c11c44f4719f9b175fc38d8 (diff) |
fix rendering issues
Change-Id: I5dee557f2f4857f586412d604040ffbeda0e78a1
Reviewed-by: Pasi Keränen <pasi.keranen@digia.com>
Diffstat (limited to 'src/datavisualization/engine/abstract3drenderer.cpp')
-rw-r--r-- | src/datavisualization/engine/abstract3drenderer.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
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); |