fix: Correctly update shadows on RenderShadowResolutionScale change
Shadows were not updating correctly when the RenderShadowResolutionScale setting was changed in-session, leading to broken shadows. This commit changes the signal listener for "RenderShadowResolutionScale" in llviewercontrol.cpp from `handleShadowsResized` to `handleSetShaderChanged`. `handleSetShaderChanged` ensures a full shader update, which is necessary for this setting to take effect immediately, similar to other render settings like RenderDeferredSSAO. This fix ensures shadows update correctly when the resolution scale is changed without requiring a viewer restart.master
parent
aed5b4402a
commit
f2962eb522
|
|
@ -1286,7 +1286,10 @@ void settings_setup_listeners()
|
|||
setting_setup_signal_listener(gSavedSettings, "RenderSpecularResY", handleLUTBufferChanged);
|
||||
setting_setup_signal_listener(gSavedSettings, "RenderSpecularExponent", handleLUTBufferChanged);
|
||||
setting_setup_signal_listener(gSavedSettings, "RenderAnisotropic", handleAnisotropicChanged);
|
||||
setting_setup_signal_listener(gSavedSettings, "RenderShadowResolutionScale", handleShadowsResized);
|
||||
// <FS:WW> Ensure shader update on shadow resolution scale change for correct shadow rendering.
|
||||
// setting_setup_signal_listener(gSavedSettings, "RenderShadowResolutionScale", handleShadowsResized);
|
||||
setting_setup_signal_listener(gSavedSettings, "RenderShadowResolutionScale", handleSetShaderChanged);
|
||||
// </FS>
|
||||
setting_setup_signal_listener(gSavedSettings, "RenderGlow", handleReleaseGLBufferChanged);
|
||||
setting_setup_signal_listener(gSavedSettings, "RenderGlow", handleSetShaderChanged);
|
||||
setting_setup_signal_listener(gSavedSettings, "RenderGlowResolutionPow", handleReleaseGLBufferChanged);
|
||||
|
|
|
|||
Loading…
Reference in New Issue