mirror of
https://github.com/AleziaKurdis/overte.git
synced 2025-04-07 04:53:28 +02:00
Clumsy fix for enum storage.
This commit is contained in:
parent
66fdfa40ad
commit
8386f2eb61
5 changed files with 13 additions and 14 deletions
|
@ -405,9 +405,6 @@ Menu::Menu() {
|
|||
// Developer > Render >>>
|
||||
MenuWrapper* renderOptionsMenu = developerMenu->addMenu("Render");
|
||||
|
||||
addCheckableActionToQMenuAndActionHash(renderOptionsMenu, MenuOption::AntiAliasing, 0, RenderScriptingInterface::getInstance()->getAntialiasingMode(),
|
||||
RenderScriptingInterface::getInstance(), SLOT(setAntialiasingMode(int)));
|
||||
|
||||
addCheckableActionToQMenuAndActionHash(renderOptionsMenu, MenuOption::Shadows, 0, RenderScriptingInterface::getInstance()->getShadowsEnabled(),
|
||||
RenderScriptingInterface::getInstance(), SLOT(setShadowsEnabled(bool)));
|
||||
|
||||
|
|
|
@ -224,7 +224,9 @@ namespace MenuOption {
|
|||
const QString DesktopTabletToToolbar = "Desktop Tablet Becomes Toolbar";
|
||||
const QString HMDTabletToToolbar = "HMD Tablet Becomes Toolbar";
|
||||
const QString Shadows = "Shadows";
|
||||
const QString AntiAliasing = "Temporal Antialiasing (FXAA if disabled)";
|
||||
const QString AntiAliasingNONE = "Antialiasing Disabled";
|
||||
const QString AntiAliasingTAA = "Temporal Anti-aliasing";
|
||||
const QString AntiAliasingFXAA = "Fast Approximate Anti-aliasing";
|
||||
const QString AmbientOcclusion = "Ambient Occlusion";
|
||||
const QString NotificationSounds = "play_notification_sounds";
|
||||
const QString NotificationSoundsSnapshot = "play_notification_sounds_snapshot";
|
||||
|
|
|
@ -28,14 +28,14 @@ void RenderScriptingInterface::loadSettings() {
|
|||
_renderMethod = (_renderMethodSetting.get());
|
||||
_shadowsEnabled = (_shadowsEnabledSetting.get());
|
||||
_ambientOcclusionEnabled = (_ambientOcclusionEnabledSetting.get());
|
||||
_antialiasingMode = (_antialiasingModeSetting.get());
|
||||
//_antialiasingMode = (_antialiasingModeSetting.get());
|
||||
_antialiasingMode = static_cast<AntialiasingConfig::Mode>(_antialiasingModeSetting.get());
|
||||
_viewportResolutionScale = (_viewportResolutionScaleSetting.get());
|
||||
});
|
||||
forceRenderMethod((RenderMethod)_renderMethod);
|
||||
forceShadowsEnabled(_shadowsEnabled);
|
||||
forceAmbientOcclusionEnabled(_ambientOcclusionEnabled);
|
||||
forceAntialiasingMode(_antialiasingMode);
|
||||
forceAntialiasingMode(_antialiasingMode);
|
||||
forceViewportResolutionScale(_viewportResolutionScale);
|
||||
}
|
||||
|
||||
|
@ -134,13 +134,11 @@ void RenderScriptingInterface::setAntialiasingMode(AntialiasingConfig::Mode mode
|
|||
|
||||
void RenderScriptingInterface::forceAntialiasingMode(AntialiasingConfig::Mode mode) {
|
||||
_renderSettingLock.withWriteLock([&] {
|
||||
_antialiasingMode = static_cast<AntialiasingConfig::Mode>(mode);
|
||||
_antialiasingModeSetting.set(mode);
|
||||
_antialiasingMode = mode;
|
||||
|
||||
auto mainViewJitterCamConfig = qApp->getRenderEngine()->getConfiguration()->getConfig<JitterSample>("RenderMainView.JitterCam");
|
||||
auto mainViewAntialiasingConfig = qApp->getRenderEngine()->getConfiguration()->getConfig<Antialiasing>("RenderMainView.Antialiasing");
|
||||
if (mainViewJitterCamConfig && mainViewAntialiasingConfig) {
|
||||
Menu::getInstance()->setIsOptionChecked(MenuOption::AntiAliasing, mode);
|
||||
switch (mode) {
|
||||
case AntialiasingConfig::Mode::NONE:
|
||||
mainViewJitterCamConfig->none();
|
||||
|
@ -156,12 +154,13 @@ void RenderScriptingInterface::forceAntialiasingMode(AntialiasingConfig::Mode mo
|
|||
break;
|
||||
default:
|
||||
_antialiasingMode = AntialiasingConfig::Mode::NONE;
|
||||
_antialiasingModeSetting.set(AntialiasingConfig::Mode::NONE);
|
||||
mainViewJitterCamConfig->none();
|
||||
mainViewAntialiasingConfig->setDebugFXAA(false);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
_antialiasingModeSetting.set(_antialiasingMode);
|
||||
});
|
||||
}
|
||||
|
||||
|
|
|
@ -194,14 +194,15 @@ private:
|
|||
int _renderMethod{ RENDER_FORWARD ? render::Args::RenderMethod::FORWARD : render::Args::RenderMethod::DEFERRED };
|
||||
bool _shadowsEnabled{ true };
|
||||
bool _ambientOcclusionEnabled{ false };
|
||||
AntialiasingConfig::Mode _antialiasingMode;
|
||||
AntialiasingConfig::Mode _antialiasingMode{ AntialiasingConfig::Mode::TAA };
|
||||
float _viewportResolutionScale{ 1.0f };
|
||||
|
||||
// Actual settings saved on disk
|
||||
Setting::Handle<int> _renderMethodSetting { "renderMethod", RENDER_FORWARD ? render::Args::RenderMethod::FORWARD : render::Args::RenderMethod::DEFERRED };
|
||||
Setting::Handle<bool> _shadowsEnabledSetting { "shadowsEnabled", true };
|
||||
Setting::Handle<bool> _ambientOcclusionEnabledSetting { "ambientOcclusionEnabled", false };
|
||||
Setting::Handle<AntialiasingConfig::Mode> _antialiasingModeSetting { "antialiasingMode", AntialiasingConfig::Mode::TAA };
|
||||
//Setting::Handle<AntialiasingConfig::Mode> _antialiasingModeSetting { "antialiasingMode", AntialiasingConfig::Mode::TAA };
|
||||
Setting::Handle<int> _antialiasingModeSetting { "antialiasingMode", AntialiasingConfig::Mode::TAA };
|
||||
Setting::Handle<float> _viewportResolutionScaleSetting { "viewportResolutionScale", 1.0f };
|
||||
|
||||
// Force assign both setting AND runtime value to the parameter value
|
||||
|
|
|
@ -115,6 +115,7 @@ public:
|
|||
FXAA,
|
||||
MODE_COUNT
|
||||
};
|
||||
Q_ENUM(Mode) // Stored as signed int.
|
||||
|
||||
void setAAMode(int mode);
|
||||
int getAAMode() const { return _mode; }
|
||||
|
@ -122,7 +123,7 @@ public:
|
|||
void setDebugFXAA(bool debug) { debugFXAAX = (debug ? 0.0f : 1.0f); emit dirty();}
|
||||
bool debugFXAA() const { return (debugFXAAX == 0.0f ? true : false); }
|
||||
|
||||
int _mode{ TAA };
|
||||
int _mode{ TAA }; // '_' prefix but not private?
|
||||
|
||||
float blend{ 0.25f };
|
||||
float sharpen{ 0.05f };
|
||||
|
@ -144,7 +145,6 @@ public:
|
|||
signals:
|
||||
void dirty();
|
||||
};
|
||||
Q_DECLARE_METATYPE(AntialiasingConfig::Mode);
|
||||
|
||||
#define SET_BIT(bitfield, bitIndex, value) bitfield = ((bitfield) & ~(1 << (bitIndex))) | ((value) << (bitIndex))
|
||||
#define GET_BIT(bitfield, bitIndex) ((bitfield) & (1 << (bitIndex)))
|
||||
|
|
Loading…
Reference in a new issue