diff --git a/libraries/render-utils/src/BloomEffect.cpp b/libraries/render-utils/src/BloomEffect.cpp index e58d07ac33..f83c05cff8 100644 --- a/libraries/render-utils/src/BloomEffect.cpp +++ b/libraries/render-utils/src/BloomEffect.cpp @@ -187,12 +187,17 @@ void BloomDraw::run(const render::RenderContextPointer& renderContext, const Inp } } +void DebugBloomConfig::setMode(int mode) { + _mode = std::min((int)DebugBloomConfig::MODE_COUNT, std::max(0, mode)); + emit dirty(); +} + DebugBloom::DebugBloom() { _params = std::make_shared(sizeof(glm::vec4), nullptr); } void DebugBloom::configure(const Config& config) { - _mode = static_cast(config.mode); + _mode = (DebugBloomConfig::Mode) config.getMode(); assert(_mode < DebugBloomConfig::MODE_COUNT); } @@ -201,6 +206,10 @@ void DebugBloom::run(const render::RenderContextPointer& renderContext, const In assert(renderContext->args->hasViewFrustum()); RenderArgs* args = renderContext->args; + if (_mode == DebugBloomConfig::OFF) { + return; + } + const auto frameBuffer = inputs.get0(); const auto combinedBlurBuffer = inputs.get4(); const auto framebufferSize = frameBuffer->getSize(); diff --git a/libraries/render-utils/src/BloomEffect.h b/libraries/render-utils/src/BloomEffect.h index 07ae2887c9..9c170e771a 100644 --- a/libraries/render-utils/src/BloomEffect.h +++ b/libraries/render-utils/src/BloomEffect.h @@ -87,12 +87,13 @@ private: class DebugBloomConfig : public render::Job::Config { Q_OBJECT - Q_PROPERTY(int mode MEMBER mode NOTIFY dirty) + Q_PROPERTY(int mode READ getMode WRITE setMode NOTIFY dirty) public: enum Mode { - MODE_LEVEL0 = 0, + OFF = 0, + MODE_LEVEL0, MODE_LEVEL1, MODE_LEVEL2, MODE_ALL_LEVELS, @@ -102,7 +103,10 @@ public: DebugBloomConfig() : render::Job::Config(false) {} - int mode{ MODE_ALL_LEVELS }; + void setMode(int mode); + int getMode() const { return _mode; } + + int _mode{ MODE_ALL_LEVELS }; signals: void dirty(); diff --git a/scripts/developer/utilities/render/luci/Bloom.qml b/scripts/developer/utilities/render/luci/Bloom.qml index 28d6fe7697..67c931f66c 100644 --- a/scripts/developer/utilities/render/luci/Bloom.qml +++ b/scripts/developer/utilities/render/luci/Bloom.qml @@ -19,15 +19,15 @@ Column { property var config: Render.getConfig("RenderMainView.DebugBloom") function setDebugMode(mode) { + console.log("Bloom mode is " + mode) bloom.config.enabled = (mode != 0); bloom.config.mode = mode; } Prop.PropEnum { label: "Debug Bloom Buffer" - object: config - property: "mode" - // valueVar: 0 + // object: config + // property: "mode" enums: [ "Off", "Lvl 0",