summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-03-11**fix: Correctly update shadows on RenderShadowResolutionScale change**William Weaver
Shadows were not updating correctly after a shader change occurred in-session and then the RenderShadowResolutionScale setting was adjusted. This issue is present in Second Life Release 7.1.12.1355088671 (64-bit) and Second Life Test 7.1.12.250701803 (64-bit). **Specifically, after any shader-related setting is changed in-session (such as toggling Advanced Graphics options like SSAO, HDR, Depth of Field, SSR, Antialiasing, or changing the Graphics Quality preset), subsequent adjustments to `RenderShadowResolutionScale` via Debug Settings result in broken shadow rendering.** The shadows become corrupted or disappear entirely and do not reflect the new resolution scale. Correct shadow rendering is only restored by toggling a shader or restarting the viewer. This behavior is inconsistent with other render settings that update immediately after modification and degrades the user experience when dynamically adjusting shadow quality. 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 change ensures that shadows update correctly and immediately when the resolution scale is changed in Debug Settings, even after prior shader changes in the session, without requiring additional shader toggling or viewer restarts. This provides a smoother and more responsive experience for advanced users adjusting shadow quality in various rendering scenarios. --- **Steps to Reproduce (Bug)** _Verified in Second Life Release 7.1.12.1355088671 (64-bit) and Second Life Test 7.1.12.250701803 (64-bit):_ 1. **Fresh Install Preparation:** Ensure a clean Second Life installation state. Ideally, uninstall and reinstall the viewer or clear/rename all folders in `AppData\Local\Second Life` and `AppData\Roaming\Second Life` before launching. 2. Launch the Second Life Viewer and log in. 3. Enable the Debug Menu: Open Preferences (Ctrl+P), go to the "Advanced" tab, and check "Show Advanced Settings". 4. Open Debug Settings: Click the "Advanced" menu in the menu bar and select "Debug Settings." 5. Locate the `RenderShadowResolutionScale` setting (which should be set to 1.0 on a clean install). 6. Initially, changing `RenderShadowResolutionScale` at this point may not exhibit the bug. Proceed to the next steps to reliably trigger it. 7. **Trigger the Bug:** Open Preferences (Ctrl+P) again and go to the "Graphics" tab. 8. Click the "Advanced Settings" button. 9. **Toggle *any* of the following Advanced Graphics options:** - Screen Space Ambient Occlusion - HDR and Emissive Rendering - Depth of Field - Screen Space Reflections - Antialiasing - *Alternatively*, change the "Graphics Quality" preset slider (e.g., Low to Ultra or any other change). 10. Return to the Debug Settings floater. 11. Change the value of `RenderShadowResolutionScale` to a different value (e.g., from 1.0 to 0.5 or 2.0). 12. **Observe the Bug:** Notice that shadow rendering does not update correctly—shadows become corrupted or disappear. 13. **Workaround (in buggy version):** To restore correct shadow rendering without the fix, either: - Toggle a different shader (e.g., change graphics presets in Preferences, or toggle SSAO, SSR, etc.), or - Restart the viewer. **Steps to Verify (Fix):** 1. Build the viewer with this commit applied. 2. Launch the viewer and log in. 3. Repeat steps 1–9 from "Steps to Reproduce (Bug)" to ensure an Advanced Graphics setting is toggled before proceeding. 4. Open Debug Settings and locate `RenderShadowResolutionScale`. 5. Change the value of `RenderShadowResolutionScale` (e.g., from 1.0 to 0.5 or 2.0). 6. **Verify the Fix:** Confirm that shadow rendering updates immediately and correctly—even after toggling Advanced Graphics settings—with the shadows visibly changing resolution in real time. No shader toggling or viewer restart is required. --- - No specific regression testing is required for this targeted fix. However, standard viewer functionality should be verified after building to ensure no unintended side effects have been introduced. Pay particular attention to shadow rendering in various environments and lighting conditions to confirm the fix has not negatively impacted other shadow-related features. --- - No documentation changes are needed as this is a bug fix for an existing debug setting.
2025-03-06Merge pull request #3686 from secondlife/mainJonathan "Geenz" Goodman
Merge pull request #3304 from secondlife/release/2024.12-ForeverFPS
2025-03-06Merge pull request #3304 from secondlife/release/2024.12-ForeverFPSJonathan "Geenz" Goodman
2024.12 ForeverFPS
2025-03-01Merge pull request #3634 from secondlife/release/2024.12-ForeverFPSJonathan "Geenz" Goodman
Update develop with ForeverFPS
2025-03-01Merge pull request #3626 from secondlife/rider/transfer_messageJonathan "Geenz" Goodman
https://github.com/secondlife/server/issues/1493 New notification for transfer ownership
2025-03-01Merge pull request #3623 from secondlife/rider/server_autopilotJonathan "Geenz" Goodman
https://github.com/secondlife/server/issues/966 Honor flag sent by server indicating server side autopilot is engaged. When flag is set allow server to update local avatar rotation.
2025-03-01Merge pull request #3624 from secondlife/rider/map_beaconJonathan "Geenz" Goodman
https://github.com/secondlife/viewer-private/issues/297 Local beacons via script
2025-02-26Server Issue #1493: New notification message for llTransferOwnership.Rider Linden
2025-02-26Private Issue #297: Code review feedback.Rider Linden
2025-02-26Private Issue #297: Accept new flags in ScriptTeleportRequest message. Flags ↵Rider Linden
indicate if the world map should be opened and focused.
2025-02-26Issue #2687: Honor flag sent by server indicating server side autopilot is ↵Rider Linden
engaged. When flag is set allow sever to update local avatar rotation.
2025-02-26Revert "#2639 GPU test twice to fix misreported bandwidth (#3558)"Andrey Kleshchev
This reverts commit b0d80552b3177269eb24ef9a1e0d58a98d95a96f.
2025-02-26#3270 use TELEPORT_LOCAL when teleporting within a region via landmarkMaxim Nikolenko
2025-02-25Merge pull request #3610 from secondlife/geenz/mirrors-enabled-fixJonathan "Geenz" Goodman
#3331 - Mirrors no longer function on relog
2025-02-25Mitigation for #3331Jonathan "Geenz" Goodman
2025-02-24Merge pull request #3602 from secondlife/geenz/eep-setting-fixesJonathan "Geenz" Goodman
- #3594 Adjustments to mitigate sun reflection being too narrow.
2025-02-24Merge branch 'release/2024.12-ForeverFPS' into geenz/eep-setting-fixesJonathan "Geenz" Goodman
2025-02-24Backout minimal+ change.Jonathan "Geenz" Goodman
2025-02-24#3332 Remake glyph count into cache generationAndrey Kleshchev
1. Cover reset with 'generation' 2. Fix lapse of judgement with mLastFontGlyphCount, it should have been saved before render(), not after
2025-02-23Quick fix for null pointer in LLDrawPoolWaterJonathan "Geenz" Goodman
2025-02-23CleanupJonathan "Geenz" Goodman
2025-02-22Accidental double linearization, try roughness ^2 for water punctual light.Jonathan "Geenz" Goodman
2025-02-22viewer-private#398 Fix constant asset rerequestsAndrey Kleshchev
2025-02-19Merge branch 'develop' into release/2024.12-ForeverFPSJonathan "Geenz" Goodman
2025-02-19Merge pull request #3587 from secondlife/geenz/cla-whitelist-updateJonathan "Geenz" Goodman
CLA wants a comma separated string.
2025-02-19Merge branch 'develop' into geenz/cla-whitelist-updateJonathan "Geenz" Goodman
2025-02-19CLA wants a comma separated string.Jonathan "Geenz" Goodman
2025-02-19Merge pull request #3586 from secondlife/geenz/cla-whitelist-updateJonathan "Geenz" Goodman
Update allow list for CLA.
2025-02-19Update allow list for CLA.Jonathan "Geenz" Goodman
2025-02-19#3581 #3563 Fix callback deletion not workingAndrey Kleshchev
2025-02-18#3511 fix for PBR skies being too bright on Low GraphicsMaxim Nikolenko
2025-02-18#3557 Waves not applying without Transparent WaterAndrey Kleshchev
2025-02-15#2639 GPU test twice to fix misreported bandwidth (#3558)Andrey Kleshchev
A workaround, hopefully temporary. First test returns half the throughput, do two tests. May be caused by driver, may be some 'energy saving', will need to be checked later. It was working the same way prior to ExtraFPS, but viewer was running an extra CPU test.
2025-02-14Switch from GL_RGB16F to GL_R11F_G11F_B10F for probes (#3562)Jonathan "Geenz" Goodman
* #3561 Switch from GL_RGB16F to GL_R11F_G11F_B10F for reflection probes to help reduce memory bandwidth and VRAM pressure.
2025-02-13Merge pull request #3549 from secondlife/marchcat/foreverfps-xcode-16Andrey Lihatskiy
Update ForeverFPS build to use macos15/xcode16.1
2025-02-13Follow-up fixes from developAndrey Lihatskiy
2025-02-13Bump macos runner to os version 15 with xcode 16.1Andrey Lihatskiy
2025-02-13Fix xcode16 build errorsAndrey Lihatskiy
2025-02-13viewer-private#394 Ensure correct item id is used on macMaxim Nikolenko
2025-02-12viewer-private#396 Use benefits for picks countAndrey Kleshchev
2025-02-12viewer-private#395 Fix voice not reconnectingAndrey Kleshchev
2025-02-12#3210 Fix for "Texture will be downscaled" log message happening too oftenMaxim Nikolenko
2025-02-11#3332 Fix buffers not accounting for dynamic cache valuesAndrey Kleshchev
And fix previous lapse of judgement with GLYPH_BATCH_SIZE
2025-02-11Additional water fixes and tweaks. (#3524)Jonathan "Geenz" Goodman
* Incorporation of feedback for #3456
2025-02-10#3332 Font issues with multy-byte and multy-glyps charactersAndrey Kleshchev
2025-02-10#3332 Issues with text buffer updatesAndrey Kleshchev
2025-02-07#3332 Switching screens can break text renderingAndrey Kleshchev
2025-02-07viewer-private#375 add more logging in attempt to get more infoMaxim Nikolenko
2025-02-07#3505 Fix updateMenu() being called too frequently on fetch callbackAndrey Kleshchev
The actual problem is fetch dumping thousands of callbacks, but this should mitigate the problem
2025-02-07#3505 Make inventory run less content checksAndrey Kleshchev