Commit Graph

77568 Commits (4e2435eabe9a0b7dc46f79ca24017c8f7d787ed8)

Author SHA1 Message Date
William Weaver 4e2435eabe
Merge branch 'FirestormViewer:master' into PRFS/Fixes-SSAO-Consistency 2025-03-09 19:25:25 +03:00
William Weaver b0a5216b27 Fixes: Improve SSAO Appearance Consistency for High-Resolution Snapshots
Detailed description of the changes.

This commit addresses an issue where Screen Space Ambient Occlusion (SSAO) appearance was inconsistent, particularly in high-resolution snapshots compared to the main viewer window.

Previously, the SSAO radii parameters (RenderSSAOScale and RenderSSAOMaxScale) were directly applied to the shader without considering the resolution difference between the viewer window and the render target (snapshot).  This resulted in SSAO appearing too small and under-sampled in high-resolution snapshots, as the sampling radius was not scaled up to match the larger snapshot resolution.

To resolve this, a scaling factor is now calculated based on the ratio of the viewer window's height to the snapshot's height:

    scale_factor = viewer_window_height / snapshot_height

This scale factor is then used to divide the user-defined SSAO radius values before they are passed to the shader.  When the snapshot resolution is higher than the viewer resolution, the `scale_factor` becomes less than 1. Dividing by this factor effectively increases the SSAO radii, ensuring the ambient occlusion effect scales proportionally to the higher resolution.

For example, if the viewer is running at 1080p height and a snapshot is taken at 4096p height, the scale factor would be approximately 1080 / 4096 ≈ 0.2637. Dividing the SSAO radii by 0.2637 results in multiplying them by approximately 3.79, thus scaling up the SSAO effect to maintain visual consistency in the high-resolution snapshot.

Intended Impact & Benefits:

- **Visual Consistency:** Ensures that the SSAO effect maintains a consistent visual scale and intensity between the interactive viewer display and high-resolution snapshots, providing a more predictable and professional output.
- **Improved User Experience:** Users capturing high-resolution snapshots will now experience a more accurate and visually pleasing SSAO effect, preventing the unintended diminishment of ambient occlusion and preserving the intended scene aesthetics.
- **Balanced Quality Across Resolutions:**  The fix dynamically adjusts the SSAO radii based on resolution, maintaining a balanced and consistent level of detail and intensity across varying output resolutions without requiring manual user adjustments.

Testing:

- **Build:** Rebuild the Aperture Viewer after applying this commit.
- **Run:** Launch the viewer and ensure that Screen Space Ambient Occlusion (SSAO) is enabled in the graphics settings.
- **Visual Comparison (Viewer vs. High-Resolution Snapshot):**
    1.  In the viewer, observe the appearance of SSAO in a scene with noticeable ambient occlusion effects.
    2.  Take a high-resolution snapshot to disk (e.g., 4096p or higher).
    3.  Compare the SSAO effect in the saved snapshot image to the SSAO in the live viewer window. The SSAO in the snapshot should now appear visually consistent in scale and intensity with the viewer, and not diminished or under-sampled.
- **Resolution Variation (Recommended):** Test with different viewer window sizes (e.g., 720p, 1080p) and snapshot resolutions (including resolutions higher than the viewer) to verify that the SSAO consistency is maintained across a range of rendering targets.

Documentation:

- No specific updates to the  Wiki are required as this commit is a bug fix that improves the existing SSAO feature's consistency.
- It is recommended to include a note about this fix in the Viewer release notes to inform users about the improved SSAO behavior in high-resolution snapshots.
2025-03-09 19:24:41 +03:00
Ansariel fb675c42f8 Apply my actual std::lerp fixes submitted to LL develop branch 2025-03-08 23:58:03 +01:00
Ansariel 98a96cf033 Revert "tentative workaround for gcc c++20 std::lerp clash"
This reverts commit 19999b5858.
2025-03-08 23:46:30 +01:00
Beq 19999b5858 tentative workaround for gcc c++20 std::lerp clash
We may revert this for a better less dispruptive solution if we can find one.
2025-03-08 17:19:19 +00:00
PanteraPolnocy f1090e2f61 Synch / clean up panel_progress.xml for all applicable translations 2025-03-08 15:09:33 +01:00
PanteraPolnocy a6a79ee904 FIRE-35237, FIRE-35235 Chinese (by 小滢 Zi Ying), Russian (by Romka Swallowtail) and Polish translation updates 2025-03-08 14:57:23 +01:00
Ansariel aed5b4402a Merge branch 'main' of https://github.com/secondlife/viewer 2025-03-07 17:19:17 +01:00
Ansariel 6522975250 Merge branch 'master' of https://github.com/FirestormViewer/phoenix-firestorm 2025-03-07 17:19:04 +01:00
Jonathan "Geenz" Goodman e6927d8a07
Merge pull request #3304 from secondlife/release/2024.12-ForeverFPS
2024.12 ForeverFPS
2025-03-06 15:23:54 -05:00
PanteraPolnocy eceef94d5b FIRE-35181 Chinese Translation cleanup, by 小滢 Zi Ying 2025-03-05 14:29:38 +01:00
Beq 515e5773a3 Improve debug and eliminate some potential buffer overrun in debug 2025-03-04 01:51:39 +00:00
Beq bdaf67912e ignore a few of the upstream merges of white space changes that hide blame 2025-03-04 01:49:53 +00:00
Beq 078e5d1c5a update contributors (Dax Dupont) 2025-03-03 21:04:40 +00:00
Beq Janus 45cf0c3ce8
Merge pull request #82 from DaxDupont/hid-fix
[FIRE-10419 & FIRE-32546] Selectively process devices based on CLSID to prevent stuttering
2025-03-03 15:50:31 +00:00
Beq Janus bd010d1a87
Merge pull request #85 from FirestormViewer/dependabot/github_actions/dawidd6/action-download-artifact-9
Bump dawidd6/action-download-artifact from 8 to 9
2025-03-03 14:11:05 +00:00
PanteraPolnocy cc6a73cdd2 Traslations: Remove few orphaned phototools entires 2025-03-03 14:33:50 +01:00
PanteraPolnocy 1f08360a64 FIRE-35207 Russian translation update, by Romka Swallowtail 2025-03-03 14:31:20 +01:00
PanteraPolnocy e68352e057 FIRE-35222 French translation update (Sun/Moon panel), by Laurent Bechir 2025-03-02 18:11:00 +01:00
PanteraPolnocy 9661d073a8 Small fix for French I forgot about 2025-03-02 17:31:57 +01:00
PanteraPolnocy 1869336984 FIRE-35205 French translation update, by Laurent Bechir 2025-03-02 17:27:56 +01:00
PanteraPolnocy 9f04223c0b FIRE-35181 Chinese Translation Update, by 小滢 Zi Ying 2025-03-02 15:08:09 +01:00
PanteraPolnocy 0c7b453c11 Do not duplicate panel name in XML 2025-03-01 16:40:12 +01:00
PanteraPolnocy 5cf357d213 Adjusting tooltips in Polish as well 2025-03-01 15:33:12 +01:00
Ansariel fcab43be03 Do not incentivize users to crank up LOD up to 4 and remove tourist guide style tooltips 2025-03-01 13:42:00 +01:00
dependabot[bot] fac553388a
Bump dawidd6/action-download-artifact from 8 to 9
Bumps [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) from 8 to 9.
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](https://github.com/dawidd6/action-download-artifact/compare/v8...v9)

---
updated-dependencies:
- dependency-name: dawidd6/action-download-artifact
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-01 10:11:36 +00:00
PanteraPolnocy dcb5b0ce29 Updated Polish translation 2025-03-01 06:05:02 +01:00
Ansariel 16e5677c99 Merge branch 'master' of https://github.com/FirestormViewer/phoenix-firestorm-foreverfps 2025-03-01 00:35:19 +01:00
Ansariel 49a6b228aa Merge branch 'release/2024.12-ForeverFPS' of https://github.com/secondlife/viewer 2025-03-01 00:34:45 +01:00
minerjr 55a39da74e FIRE-35081 Blurry prims not changing with graphics settings, not happening with SL Viewer - cont.
Refined the logic for the textures to include animated textures to not be downscaled They are not forced to be high boost level.
Update the logic of how to process the on screen max vsize to be simpler.
Added split time max_time for the updateImagesCreateTextures, as originally they were two different functions and can save doubled the time for each.
Added time limit on LLViewerObjectList::updateApparentAngles, as it it affects the Textures in the texture list and worked on a fixed # of objects per frame and each object is variable in the amount of processing required, affecting frame rate and # of textures updated.
2025-02-27 08:55:47 -04:00
Andrey Kleshchev 42ceac9695 Revert "#2639 GPU test twice to fix misreported bandwidth (#3558)"
This reverts commit b0d80552b3.
2025-02-26 20:14:39 +02:00
Maxim Nikolenko bc02334284
#3270 use TELEPORT_LOCAL when teleporting within a region via landmark 2025-02-26 15:35:04 +02:00
Ansariel e518cba882 Merge branch 'release/2024.12-ForeverFPS' of https://github.com/secondlife/viewer
# Conflicts:
#	indra/llrender/llfontfreetype.h
2025-02-26 10:04:47 +01:00
Ansariel 645c76be61 Merge branch 'master' of https://github.com/FirestormViewer/phoenix-firestorm 2025-02-26 09:48:32 +01:00
minerjr 742ec3d13e FIRE-35198 Limit VRAM texture usage UI control reverts to default value
The manual control for the Limit VRAM texture usage in the Preferences->Graphics->Hardware Settings did not restore the saved value of the slider upload load.

So when the viewer would load, it would indeed load the saved value, but the value was not reflected upon by the slider on the page. This caused issues of when a user went to move the slide back to it's intended position it would set off the bias system as well as make the user not have confidence in that the feature is working.

Added a call to the ser value of the UI control on refresh enable state of the UI floater for the preferences to the saved RenderMaxVRAMBudget.
2025-02-26 04:00:31 -04:00
Angeldark Raymaker c3a66a2f2d FIRE-35161: Export more joints to BVH
That's most of them. Refactor BVH writing a tiny bit.
2025-02-25 20:11:12 +00:00
Angeldark Raymaker 257a1d3bd4 FIRE-35161: Revert all joint state when animation stops
Collision volumes always needed it, but some infrequently posed joints do too, and it simiplifies the code.
2025-02-25 20:09:21 +00:00
Beq Janus e132dd4a3d
Merge pull request #83 from AyaneStorm/pr-Fire-35185-link-rendering-in-pick-and-1stlife
[FIRE-35185] Profile preview removing embedded URLs from 1st Life tab
2025-02-25 14:26:22 +00:00
Jonathan "Geenz" Goodman ca079bc149
Merge pull request #3610 from secondlife/geenz/mirrors-enabled-fix
#3331 - Mirrors no longer function on relog
2025-02-25 09:07:45 -05:00
Jonathan "Geenz" Goodman ae7658de24 Mitigation for #3331 2025-02-25 08:50:25 -05:00
Jonathan "Geenz" Goodman 5b425eb9dc
Merge pull request #3602 from secondlife/geenz/eep-setting-fixes
- #3594 Adjustments to mitigate sun reflection being too narrow.
2025-02-24 17:20:48 -05:00
Jonathan "Geenz" Goodman 62cf4781af
Merge branch 'release/2024.12-ForeverFPS' into geenz/eep-setting-fixes 2025-02-24 17:19:55 -05:00
Jonathan "Geenz" Goodman 3dde346975 Backout minimal+ change. 2025-02-24 17:19:41 -05:00
Andrey Kleshchev 5b968b7209 #3332 Remake glyph count into cache generation
1. Cover reset with 'generation'
2. Fix lapse of judgement with mLastFontGlyphCount, it should have been
saved before render(), not after
2025-02-24 19:31:16 +02:00
chanayane 538dcb0da2
Fix FIRE-35185 (disables link rendering while editing picks or 1st life) 2025-02-23 22:55:15 +01:00
Jonathan "Geenz" Goodman 892628c7f3 Quick fix for null pointer in LLDrawPoolWater 2025-02-23 12:54:50 -05:00
Jonathan "Geenz" Goodman d2fd2f49e3 Cleanup 2025-02-23 12:20:11 -05:00
PanteraPolnocy 33d1961a7e Add the '[UNTRUSTED_URL]' across all languages 2025-02-23 15:37:39 +01:00
Jonathan "Geenz" Goodman 3e2da8e584 Accidental double linearization, try roughness ^2 for water punctual light. 2025-02-22 14:17:43 -05:00
Ansariel eeae01eee2 Remove orphaned shader 2025-02-22 16:54:25 +01:00