summaryrefslogtreecommitdiffstats
path: root/src/runtimerender/Qt3DSRenderContextCore.cpp
diff options
context:
space:
mode:
authorKaj Grönholm <kaj.gronholm@qt.io>2020-03-18 11:33:33 +0200
committerKaj Grönholm <kaj.gronholm@qt.io>2020-04-16 10:10:15 +0200
commit498651519a84647a6414558c492d5e59d6927522 (patch)
treeec650a239fc3f3f070d9447859899cb02aad14b9 /src/runtimerender/Qt3DSRenderContextCore.cpp
parent4cebb63cc080f53e2e52da68920b4f9bc95e609d (diff)
Add support for skipping rendering frames
Add skipFramesInterval property into Q3DSViewerSettings. This property can be used to limit the rendering framerate, decreasing the CPU/GPU usage. Task-number: QT3DS-4088 Change-Id: Icbf5cf208b663dbef1df6096994b94686571e357 Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
Diffstat (limited to 'src/runtimerender/Qt3DSRenderContextCore.cpp')
-rw-r--r--src/runtimerender/Qt3DSRenderContextCore.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/runtimerender/Qt3DSRenderContextCore.cpp b/src/runtimerender/Qt3DSRenderContextCore.cpp
index dde70fd..d1d0fff 100644
--- a/src/runtimerender/Qt3DSRenderContextCore.cpp
+++ b/src/runtimerender/Qt3DSRenderContextCore.cpp
@@ -249,6 +249,7 @@ struct SRenderContext : public IQt3DSRenderContext
StereoViews::Enum m_StereoView;
double m_StereoEyeSeparation;
bool m_StereoProgressiveEnabled;
+ int m_SkipFramesInterval;
bool m_WireframeMode;
bool m_subPresentationRenderInLayer;
Option<QT3DSVec4> m_SceneColor;
@@ -291,6 +292,7 @@ struct SRenderContext : public IQt3DSRenderContext
, m_StereoView(StereoViews::Mono)
, m_StereoEyeSeparation(0.4)
, m_StereoProgressiveEnabled(false)
+ , m_SkipFramesInterval(0)
, m_WireframeMode(false)
, m_subPresentationRenderInLayer(false)
, m_matteEnabled(false)
@@ -486,6 +488,15 @@ struct SRenderContext : public IQt3DSRenderContext
|| m_StereoMode == StereoModes::TopBottom);
}
+ void SetSkipFramesInterval(int interval) override
+ {
+ m_SkipFramesInterval = interval;
+ }
+
+ int GetSkipFramesInterval() const override {
+ return m_SkipFramesInterval;
+ }
+
void SetWireframeMode(bool inEnable) override { m_WireframeMode = inEnable; }
bool GetWireframeMode() override { return m_WireframeMode; }