Showing the changes to interface/src/scripting/RenderScriptingInterface.cpp (1 of 2 files). Show all
Unified · Split
| @@ -132,36 +132,49 @@ void RenderScriptingInterface::setAntialiasingMode(AntialiasingConfig::Mode mode · 131 unmodified lines | ||
| 132 | 132 | } |
| 133 | 133 | } |
| 134 | 134 | |
| 135 | +void setAntialiasingModeForView(AntialiasingConfig::Mode mode, JitterSampleConfig *jitterCamConfig, AntialiasingConfig *antialiasingConfig) { | |
| 136 | + switch (mode) { | |
| 137 | + case AntialiasingConfig::Mode::NONE: | |
| 138 | + jitterCamConfig->none(); | |
| 139 | + antialiasingConfig->blend = 1; | |
| 140 | + antialiasingConfig->setDebugFXAA(false); | |
| 141 | + break; | |
| 142 | + case AntialiasingConfig::Mode::TAA: | |
| 143 | + jitterCamConfig->play(); | |
| 144 | + antialiasingConfig->blend = 0.25; | |
| 145 | + antialiasingConfig->setDebugFXAA(false); | |
| 146 | + break; | |
| 147 | + case AntialiasingConfig::Mode::FXAA: | |
| 148 | + jitterCamConfig->none(); | |
| 149 | + antialiasingConfig->blend = 0.25; | |
| 150 | + antialiasingConfig->setDebugFXAA(true); | |
| 151 | + break; | |
| 152 | + default: | |
| 153 | + jitterCamConfig->none(); | |
| 154 | + antialiasingConfig->blend = 1; | |
| 155 | + antialiasingConfig->setDebugFXAA(false); | |
| 156 | + break; | |
| 157 | + } | |
| 158 | +} | |
| 159 | + | |
| 135 | 160 | void RenderScriptingInterface::forceAntialiasingMode(AntialiasingConfig::Mode mode) { |
| 136 | 161 | _renderSettingLock.withWriteLock([&] { |
| 137 | 162 | _antialiasingMode = mode; |
| 138 | 163 | |
| 139 | 164 | auto mainViewJitterCamConfig = qApp->getRenderEngine()->getConfiguration()->getConfig<JitterSample>("RenderMainView.JitterCam"); |
| 140 | 165 | auto mainViewAntialiasingConfig = qApp->getRenderEngine()->getConfiguration()->getConfig<Antialiasing>("RenderMainView.Antialiasing"); |
| 166 | + auto secondViewJitterCamConfig = qApp->getRenderEngine()->getConfiguration()->getConfig<JitterSample>("RenderSecondView.JitterCam"); | |
| 167 | + auto secondViewAntialiasingConfig = qApp->getRenderEngine()->getConfiguration()->getConfig<Antialiasing>("RenderSecondView.Antialiasing"); | |
| 168 | + if (mode != AntialiasingConfig::Mode::NONE | |
| 169 | + && mode != AntialiasingConfig::Mode::TAA | |
| 170 | + && mode != AntialiasingConfig::Mode::FXAA) { | |
| 171 | + _antialiasingMode = AntialiasingConfig::Mode::NONE; | |
| 172 | + } | |
| 141 | 173 | if (mainViewJitterCamConfig && mainViewAntialiasingConfig) { |
| 142 | − switch (mode) { | |
| 143 | − case AntialiasingConfig::Mode::NONE: | |
| 144 | − mainViewJitterCamConfig->none(); | |
| 145 | − mainViewAntialiasingConfig->blend = 1; | |
| 146 | − mainViewAntialiasingConfig->setDebugFXAA(false); | |
| 147 | − break; | |
| 148 | − case AntialiasingConfig::Mode::TAA: | |
| 149 | − mainViewJitterCamConfig->play(); | |
| 150 | − mainViewAntialiasingConfig->blend = 0.25; | |
| 151 | − mainViewAntialiasingConfig->setDebugFXAA(false); | |
| 152 | − break; | |
| 153 | − case AntialiasingConfig::Mode::FXAA: | |
| 154 | − mainViewJitterCamConfig->none(); | |
| 155 | − mainViewAntialiasingConfig->blend = 0.25; | |
| 156 | − mainViewAntialiasingConfig->setDebugFXAA(true); | |
| 157 | − break; | |
| 158 | − default: | |
| 159 | − _antialiasingMode = AntialiasingConfig::Mode::NONE; | |
| 160 | − mainViewJitterCamConfig->none(); | |
| 161 | − mainViewAntialiasingConfig->blend = 1; | |
| 162 | − mainViewAntialiasingConfig->setDebugFXAA(false); | |
| 163 | − break; | |
| 164 | − } | |
| 174 | + setAntialiasingModeForView( mode, mainViewJitterCamConfig, mainViewAntialiasingConfig); | |
| 175 | + } | |
| 176 | + if (secondViewJitterCamConfig && secondViewAntialiasingConfig) { | |
| 177 | + setAntialiasingModeForView( mode, secondViewJitterCamConfig, secondViewAntialiasingConfig); | |
| 165 | 178 | } |
| 166 | 179 | |
| 167 | 180 | _antialiasingModeSetting.set(_antialiasingMode); |