aboutsummaryrefslogtreecommitdiffstats
path: root/alc/alc.cpp
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2022-03-10 17:47:42 -0800
committerChris Robinson <[email protected]>2022-03-10 17:47:42 -0800
commit609ee742115aa10139d5e4c3f8915306751c227f (patch)
treeca4996cb505b7c74e6747680257151d95c0d0a9b /alc/alc.cpp
parentcfae2cc254037fab1acb290d133625b4f6e1d710 (diff)
Add a config option for reverse-z
The same as the __ALSOFT_REVERSE_Z env var, but in the config file. Should only be used for per-game config files (either along side the executable, or setting the ALSOFT_CONF env var when launching the app).
Diffstat (limited to 'alc/alc.cpp')
-rw-r--r--alc/alc.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/alc/alc.cpp b/alc/alc.cpp
index 90da2614..4ba47aea 100644
--- a/alc/alc.cpp
+++ b/alc/alc.cpp
@@ -1120,7 +1120,17 @@ void alc_initconfig(void)
if(auto limopt = ConfigValueBool(nullptr, nullptr, "rt-time-limit"))
AllowRTTimeLimit = *limopt;
- aluInit();
+ CompatFlagBitset compatflags{};
+ if(auto optval = al::getenv("__ALSOFT_REVERSE_Z"))
+ {
+ if(al::strcasecmp(optval->c_str(), "true") == 0
+ || strtol(optval->c_str(), nullptr, 0) == 1)
+ compatflags.set(CompatFlags::ReverseZ);
+ }
+ else if(GetConfigValueBool(nullptr, "game_compat", "reverse-z", false))
+ compatflags.set(CompatFlags::ReverseZ);
+
+ aluInit(compatflags);
Voice::InitMixer(ConfigValueStr(nullptr, nullptr, "resampler"));
auto traperr = al::getenv("ALSOFT_TRAP_ERROR");