History

Hopefully implemented antialiasing setting.

Penguin-Guru committed 5 years ago

Commit 66fdfa41 parent e322d9e5 files · +112 −35Browse files

Showing the changes to interface/src/scripting/RenderScriptingInterface.cpp (1 of 5 files). Show all

Unified · Split

interface/src/scripting/RenderScriptingInterface.cpp+31−19
@@ -8,7 +8,6 @@ · 7 unmodified lines
88 #include "RenderScriptingInterface.h"
99
1010 #include "LightingModel.h"
11−#include "AntialiasingEffect.h"
1211
1312
1413 RenderScriptingInterface* RenderScriptingInterface::getInstance() {
@@ -29,13 +28,14 @@ void RenderScriptingInterface::loadSettings() { · 14 unmodified lines
2928 _renderMethod = (_renderMethodSetting.get());
3029 _shadowsEnabled = (_shadowsEnabledSetting.get());
3130 _ambientOcclusionEnabled = (_ambientOcclusionEnabledSetting.get());
32− _antialiasingEnabled = (_antialiasingEnabledSetting.get());
31+ _antialiasingMode = (_antialiasingModeSetting.get());
3332 _viewportResolutionScale = (_viewportResolutionScaleSetting.get());
3433 });
3534 forceRenderMethod((RenderMethod)_renderMethod);
3635 forceShadowsEnabled(_shadowsEnabled);
3736 forceAmbientOcclusionEnabled(_ambientOcclusionEnabled);
38− forceAntialiasingEnabled(_antialiasingEnabled);
37+ forceAntialiasingMode(_antialiasingMode);
38+ forceAntialiasingMode(_antialiasingMode);
3939 forceViewportResolutionScale(_viewportResolutionScale);
4040 }
4141
@@ -121,33 +121,45 @@ void RenderScriptingInterface::forceAmbientOcclusionEnabled(bool enabled) { · 79 unmodified lines
121121 });
122122 }
123123
124−bool RenderScriptingInterface::getAntialiasingEnabled() const {
125− return _antialiasingEnabled;
124+AntialiasingConfig::Mode RenderScriptingInterface::getAntialiasingMode() const {
125+ return _antialiasingMode;
126126 }
127127
128−void RenderScriptingInterface::setAntialiasingEnabled(bool enabled) {
129− if (_antialiasingEnabled != enabled) {
130− forceAntialiasingEnabled(enabled);
128+void RenderScriptingInterface::setAntialiasingMode(AntialiasingConfig::Mode mode) {
129+ if (_antialiasingMode != mode) {
130+ forceAntialiasingMode(mode);
131131 emit settingsChanged();
132132 }
133133 }
134134
135−void RenderScriptingInterface::forceAntialiasingEnabled(bool enabled) {
135+void RenderScriptingInterface::forceAntialiasingMode(AntialiasingConfig::Mode mode) {
136136 _renderSettingLock.withWriteLock([&] {
137− _antialiasingEnabled = (enabled);
138− _antialiasingEnabledSetting.set(enabled);
137+ _antialiasingMode = static_cast<AntialiasingConfig::Mode>(mode);
138+ _antialiasingModeSetting.set(mode);
139139
140140 auto mainViewJitterCamConfig = qApp->getRenderEngine()->getConfiguration()->getConfig<JitterSample>("RenderMainView.JitterCam");
141141 auto mainViewAntialiasingConfig = qApp->getRenderEngine()->getConfiguration()->getConfig<Antialiasing>("RenderMainView.Antialiasing");
142142 if (mainViewJitterCamConfig && mainViewAntialiasingConfig) {
143− Menu::getInstance()->setIsOptionChecked(MenuOption::AntiAliasing, enabled);
144− if (enabled) {
145− mainViewJitterCamConfig->play();
146− mainViewAntialiasingConfig->setDebugFXAA(false);
147− }
148− else {
149− mainViewJitterCamConfig->none();
150− mainViewAntialiasingConfig->setDebugFXAA(true);
143+ Menu::getInstance()->setIsOptionChecked(MenuOption::AntiAliasing, mode);
144+ switch (mode) {
145+ case AntialiasingConfig::Mode::NONE:
146+ mainViewJitterCamConfig->none();
147+ mainViewAntialiasingConfig->setDebugFXAA(false);
148+ break;
149+ case AntialiasingConfig::TAA:
150+ mainViewJitterCamConfig->play();
151+ mainViewAntialiasingConfig->setDebugFXAA(false);
152+ break;
153+ case AntialiasingConfig::Mode::FXAA:
154+ mainViewJitterCamConfig->none();
155+ mainViewAntialiasingConfig->setDebugFXAA(true);
156+ break;
157+ default:
158+ _antialiasingMode = AntialiasingConfig::Mode::NONE;
159+ _antialiasingModeSetting.set(AntialiasingConfig::Mode::NONE);
160+ mainViewJitterCamConfig->none();
161+ mainViewAntialiasingConfig->setDebugFXAA(false);
162+ break;
151163 }
152164 }
153165 });