From a86a10924c97d0966cdbdf9e4db2fc94ed5f2d9a Mon Sep 17 00:00:00 2001 From: Kevin Ottens Date: Tue, 15 Dec 2015 14:27:30 +0100 Subject: Move the time property to the renderer Change-Id: I60adff0ece408bb4ee21b9cbd329e21da2c1f95c Reviewed-by: Sean Harmer --- src/render/backend/abstractrenderer_p.h | 3 +++ src/render/backend/renderer.cpp | 11 +++++++++++ src/render/backend/renderer_p.h | 5 +++++ src/render/backend/renderview.cpp | 2 +- 4 files changed, 20 insertions(+), 1 deletion(-) (limited to 'src/render/backend') diff --git a/src/render/backend/abstractrenderer_p.h b/src/render/backend/abstractrenderer_p.h index 11e5b0a37..d9126a4ed 100644 --- a/src/render/backend/abstractrenderer_p.h +++ b/src/render/backend/abstractrenderer_p.h @@ -83,6 +83,9 @@ public: virtual API api() const = 0; + virtual qint64 time() const = 0; + virtual void setTime(qint64 time) = 0; + virtual void setSurface(QSurface *surface) = 0; virtual void setNodeManagers(NodeManagers *managers) = 0; virtual void setQRenderAspect(Qt3DRender::QRenderAspect *renderAspect) = 0; diff --git a/src/render/backend/renderer.cpp b/src/render/backend/renderer.cpp index 999570511..a79ebdbad 100644 --- a/src/render/backend/renderer.cpp +++ b/src/render/backend/renderer.cpp @@ -144,6 +144,7 @@ Renderer::Renderer(QRenderAspect::RenderType type) , m_exposed(0) , m_glContext(Q_NULLPTR) , m_pickBoundingVolumeJob(Q_NULLPTR) + , m_time(0) { // Set renderer as running - it will wait in the context of the // RenderThread for RenderViews to be submitted @@ -156,6 +157,16 @@ Renderer::~Renderer() { } +qint64 Renderer::time() const +{ + return m_time; +} + +void Renderer::setTime(qint64 time) +{ + m_time = time; +} + NodeManagers *Renderer::nodeManagers() const { return m_nodesManager; diff --git a/src/render/backend/renderer_p.h b/src/render/backend/renderer_p.h index 105d45436..800efcf34 100644 --- a/src/render/backend/renderer_p.h +++ b/src/render/backend/renderer_p.h @@ -123,6 +123,9 @@ public: API api() const Q_DECL_OVERRIDE { return AbstractRenderer::OpenGL; } + qint64 time() const Q_DECL_OVERRIDE; + void setTime(qint64 time) Q_DECL_OVERRIDE; + void setSurface(QSurface *s) Q_DECL_OVERRIDE; void setNodeManagers(NodeManagers *managers) Q_DECL_OVERRIDE { m_nodesManager = managers; } void setQRenderAspect(QRenderAspect *aspect) Q_DECL_OVERRIDE { m_rendererAspect = aspect; } @@ -249,6 +252,8 @@ private: QAtomicInt m_exposed; QOpenGLContext *m_glContext; PickBoundingVolumeJobPtr m_pickBoundingVolumeJob; + + qint64 m_time; }; } // namespace Render diff --git a/src/render/backend/renderview.cpp b/src/render/backend/renderview.cpp index 12e18633a..e630e7a8b 100644 --- a/src/render/backend/renderview.cpp +++ b/src/render/backend/renderview.cpp @@ -254,7 +254,7 @@ QUniformValue *RenderView::inverseViewportMatrix(const QMatrix4x4 &model) const QUniformValue *RenderView::time(const QMatrix4x4 &model) const { Q_UNUSED(model); - qint64 time = m_renderer->renderAspect()->time(); + qint64 time = m_renderer->time(); float t = time / 1000000000.0f; return QUniformValue::fromVariant(QVariant(t), m_allocator); } -- cgit v1.2.3