diff options
author | Kaj Grönholm <kaj.gronholm@qt.io> | 2020-03-18 11:33:33 +0200 |
---|---|---|
committer | Kaj Grönholm <kaj.gronholm@qt.io> | 2020-04-16 10:10:15 +0200 |
commit | 498651519a84647a6414558c492d5e59d6927522 (patch) | |
tree | ec650a239fc3f3f070d9447859899cb02aad14b9 /src/runtimerender/Qt3DSRenderContextCore.cpp | |
parent | 4cebb63cc080f53e2e52da68920b4f9bc95e609d (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.cpp | 11 |
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; } |