Skip to content

Commit 104bae1

Browse files
committed
refactor rest of graphics settings
1 parent 1c9ba3c commit 104bae1

5 files changed

Lines changed: 10 additions & 13 deletions

File tree

‎common/gothic.cpp‎

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -67,11 +67,6 @@ Gothic::Gothic() {
6767
setBenchmarkMode(CommandLine::inst().isBenchmarkMode());
6868

6969
auto& gpu = Resources::device().properties();
70-
if(gpu.raytracing.rayQuery) {
71-
opts.doGi = CommandLine::inst().isRtGi();
72-
}
73-
74-
opts.aaPreset = CommandLine::inst().aaPreset();
7570

7671
wrldDef = CommandLine::inst().wrldDef;
7772

‎common/gothic.h‎

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,9 +42,6 @@ class Gothic final {
4242
};
4343

4444
struct Options {
45-
GiMethod doGi = GiMethod::None;
46-
uint32_t aaPreset = 0;
47-
4845
bool hideFocus = false;
4946
float cameraFov = 67.5f;
5047
int fpsLimit = 0;

‎common/graphics/renderer.cpp‎

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ Renderer::Renderer() {
8787

8888
Gothic::inst().togglePathtrace.bind(this, &Renderer::togglePathtrace);
8989

90-
settings.giMethod = Gothic::options().doGi;
90+
settings.giMethod = Shaders::options().doGi;
9191
settings.vsmEnabled = Shaders::options().doVirtualShadow;
9292
settings.rtsmEnabled = Shaders::options().doSoftwareShadow;
9393
settings.swrEnabled = Shaders::options().swRenderingPreset>0;
@@ -139,7 +139,7 @@ void Renderer::setupSettings() {
139139
settings.moonSize = 400;
140140

141141
settings.vidResIndex = Gothic::settingsGetF("INTERNAL","vidResIndex");
142-
settings.aaEnabled = (Gothic::options().aaPreset>0) && (settings.vidResIndex==0);
142+
settings.aaEnabled = (Shaders::options().aaPreset>0) && (settings.vidResIndex==0);
143143

144144
// direct lighting
145145
if(settings.rtsmEnabled)
@@ -186,8 +186,8 @@ void Renderer::toggleGi() {
186186
if(!Shaders::options().doRtScene)
187187
return;
188188

189-
if(settings.giMethod==GiMethod::None && Gothic::options().doGi!=GiMethod::None)
190-
settings.giMethod = Gothic::options().doGi;
189+
if(settings.giMethod==GiMethod::None && Shaders::options().doGi!=GiMethod::None)
190+
settings.giMethod = Shaders::options().doGi;
191191
else if(settings.giMethod==GiMethod::None && Shaders::isGi1Supported())
192192
settings.giMethod = GiMethod::Probes; // default for now
193193
else
@@ -765,7 +765,7 @@ void Renderer::drawTonemapping(Attachment& result, Encoder<CommandBuffer>& cmd,
765765
}
766766

767767
void Renderer::drawCMAA2(Tempest::Attachment& result, Tempest::Encoder<Tempest::CommandBuffer>& cmd, const WorldView& wview) {
768-
auto& pso = shaders.cmaa2EdgeColor2x2Presets[Gothic::options().aaPreset];
768+
auto& pso = shaders.cmaa2EdgeColor2x2Presets[Shaders::options().aaPreset];
769769
const IVec3 inputGroupSize = pso.workGroupSize();
770770
const IVec3 outputGroupSize = inputGroupSize - IVec3(2, 2, 0);
771771
const uint32_t groupCountX = uint32_t((sceneLinear.w() + outputGroupSize.x * 2 - 1) / (outputGroupSize.x * 2));

‎common/graphics/shaders.cpp‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,9 @@ void Shaders::setupOptions() {
6565
opts.doMeshShading = gpu.meshlets.meshShader && CommandLine::inst().isMeshShading();
6666
opts.doSoftwareShadow = Shaders::isRtsmSupported() && CommandLine::inst().isSoftwareShadow();
6767
opts.doVirtualShadow = Shaders::isVsmSupported() && CommandLine::inst().isVirtualShadow();
68+
opts.doGi = opts.doRayQuery ? CommandLine::inst().isRtGi() : GiMethod::None;
69+
opts.aaPreset = CommandLine::inst().aaPreset();
70+
6871
opts.doSoftwareRT = false;
6972
}
7073

‎common/graphics/shaders.h‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,8 @@ class Shaders {
3131
bool doMeshShading = false;
3232
bool doVirtualShadow = false;
3333
bool doSoftwareShadow = false;
34+
GiMethod doGi = GiMethod::None;
35+
uint32_t aaPreset = 0;
3436

3537
bool doSoftwareRT = false;
3638
uint32_t swRenderingPreset = 0;

0 commit comments

Comments
 (0)