summaryrefslogtreecommitdiff
path: root/indra/newview
AgeCommit message (Collapse)Author
2025-04-15#3757 Disable ability to create folders in individual outfitsAndrey Kleshchev
This part needs a recheck
2025-04-15Merge pull request #3883 from williamweaver/fix/remove-duplicate-render-settingJonathan "Geenz" Goodman
Fix: Remove potentially redundant RenderAutoHideSurfaceAreaLimit sett…
2025-04-15Merge pull request #3896 from williamweaver/fix/tonemap-hdr-blendJonathan "Geenz" Goodman
Refactor tonemap blending to preserve HDR detail during mix
2025-04-15Merge pull request #3911 from secondlife/mainJonathan "Geenz" Goodman
Merge 2025.03 release into develop.
2025-04-14#1754 Restore land owners overlayAndrey Kleshchev
2025-04-11#3757 Move for subfodlersAndrey Kleshchev
2025-04-11#3757 Menu for subfodlers in outfits p2Andrey Kleshchev
2025-04-11#3596 Faster mesh thread shutdownAndrey Kleshchev
2025-04-11#3757 Menu for subfodlers in outfitsAndrey Kleshchev
2025-04-11#3757 Allow subfolders in "My Outfits"Andrey Kleshchev
2025-04-11Fix(Tonemap): Correct blend logic to preserve HDR detailWilliam Weaver
The blending operation for the `tonemap_mix` uniform in `postDeferredTonemap.glsl` incorrectly used a prematurely clamped color value as the source for the linear mix target. Specifically, the exposed HDR input color was clamped to the [0, 1] LDR range before being used in the `mix()` function when `tonemap_mix < 1.0`. This premature clamping resulted in the loss of High Dynamic Range (HDR) detail in highlights during the blend operation. As `tonemap_mix` was reduced, instead of smoothly blending towards the linear scene representation, clipped highlights were incorrectly reintroduced. This commit modifies the `toneMap` and `toneMapNoExposure` functions to correct this logic: 1. The original linear input color is preserved before exposure/processing. 2. The appropriate exposure factor is calculated and applied separately. 3. The chosen tone mapping operator is applied to the exposed color, storing the result. 4. The `mix()` function now correctly blends between the appropriately scaled, *unclamped* linear input color and the fully tone-mapped result. 5. The final clamp to the [0, 1] LDR range is applied *after* the blend operation. This change ensures that HDR information is preserved throughout the blending process, resulting in a smoother, more perceptually correct visual transition as `tonemap_mix` is adjusted. While the effect is nuanced, it is noticeable in bright highlights; with the legacy code, these highlights appeared visibly clipped and less intense during the blend, whereas the corrected code allows them to retain their peak brightness and detail more accurately. This makes the `tonemap_mix` control more intuitive, behaving as a true intensity blend for the tone mapping effect without introducing clipping artifacts. The computational cost is negligible.
2025-04-09Merge pull request #3853 from williamweaver/fix/cloud-texture-loadingJonathan "Geenz" Goodman
Fix: Apply Cloud Texture Changes from Environment Settings Floater
2025-04-09Merge tag 'Second_Life_Release#632a8648-2025.03' into 2025.03Erik Kundiman
2025-04-08Bump feature table version.Jonathan "Geenz" Goodman
2025-04-08GLTF WIP. Still working on getting transforms working proper and need to ↵Jonathan "Geenz" Goodman
figure out our indices.
2025-04-08Merge branch 'main' into 2025.03Erik Kundiman
2025-04-08Suppression of a redondant call in LLDrawPoolWaterExclusionmobserveur
The second call to pwaterpool->pushWaterPlanes(1) is a reminicence of an older method where it was using 2 passes.
2025-04-08Fixing Low preset making things dark on macmobserveur
Adjustments in the featuretable for mac so the low preset doesn't render dark. RenderReflectionsEnabled set to 0 and RenderReflectionProbeCount set to 1 was causing the issue.
2025-04-08AA Slowing down the viewer on Mac FIXmobserveur
AA was causing the viewer to slow down when used with hdr & emissive option ON. This commit fixes the issue, by making sure mipmap generation is inactive on the Luminance framebuffer.
2025-04-08#3745 fix for showing system notification on login #2Maxim Nikolenko
2025-04-07#3873 Return back AudioLevelWindAndrey Kleshchev
Partial revert from d00b6e4216bb308ae075d90dfa871c902d765f8d Our statistics claimed that AudioLevelWind is unused, but it is in use.
2025-04-07#3627 std::bad_alloc in EventPollAndrey Kleshchev
2025-04-07#3627 std::bad_alloc when loading a modelAndrey Kleshchev
2025-04-07#3878 Crash at LLPipeline::unlinkDrawableAndrey Kleshchev
assertInitializedDoError() on shutdown
2025-04-07#3870 Crash at LLVOAvatarSelf::getJoint()Andrey Kleshchev
A long standing one
2025-04-07#3868 Crash in updateHoveredStateAndrey Kleshchev
according to bugsplat mWrapperPanel is null.
2025-04-07#3849 Crash at LLSelectMgr::updatePointAtAndrey Kleshchev
2025-04-07#3846 Crash at updateGLTFMaterialsAndrey Kleshchev
2025-04-07Fix: Remove potentially redundant RenderAutoHideSurfaceAreaLimit setting ↵William Weaver
registration This commit removes a seemingly duplicated `connectRefreshCachedSettingsSafe` call in `LLPipeline::init()` for the `RenderAutoHideSurfaceAreaLimit` setting. A duplicated registration for this setting was identified during a review of `LLPipeline::init()`. Double registration can lead to unexpected behavior, including potential CPU overhead. The duplication *may* have been introduced with commit 440c7b2 (Added CollectFontVertexBuffers feature), though this requires further confirmation. Testing Performed: After removing the duplicate registration, the `RenderAutoHideSurfaceAreaLimit` functionality was validated by ensuring the following behavior (consistent with the existing code): * A value of 0 (zero) causes all objects to appear regardless of size. * Values slightly above zero result in only small objects appearing, with all others hidden. * Increasing the value causes objects of increasing size to appear, while smaller objects remain visible. This change merits careful review to ensure it has no unintended side effects, and to confirm the accuracy of these observations from other developers.
2025-04-07FMOD has been upgraded from 2.02.27 to 2.02.28Erik Kundiman
2025-04-07Make it build & install, USING Portage, on GentooErik Kundiman
Gentoo uses lib64, just like Fedora, and has libexec too. The necessary step to install dependencies is part of the ebuild script now (tracked in another repo, ebuild.git). One thing I forgot to mention on the commit in that ebuild repo is, unzip.h is provided on Gentoo only by minizip, and not minizip-ng cause somehow the (minizip) "compat" USE flag couldn't be turned on somehow, and there was no "minizip" (without -ng) package on Gentoo, but it was achievable by setting the "minizip" USE flag on the zlib (again, without -ng) package. The queue header inclusion is needed cause its absence would cause the compiling to fail on Portage (though it compiled when building the viewer manually without Portage). Also, using the prebuilt Meshoptimizer caused some linking errors when using Portage (though, again, it linked when building the viewer manually without Portage), hence Meshoptimizer is built from source as part of the CMake configuration on Gentoo, differing from fellow Linux distros. Now Collada DOM, firstly the unpack destination directory is moved to inside the build directory now, to make it uniform with other 3rd-party files, just for less confusion. Secondly, since the patching that takes effect is the one done by Portage, it would kill the process when there are offending failed patchings (ones that generate .rej, reject files), and they are the vcxproj patchings which aren't used anyway. Thirdly, the hash checking on the downloaded file, that would fail anyway since Portage doesn't allow any downloading that isn't part of the ebuild, unfortunately has to be skipped so the emerge process wouldn't be killed just because of it. Ebuild has its own sum checking (though this means this particular file is not checked on other platforms, but other files aren't checked either anyway yet). Last but not least, the XDG Application category is removed because it's considered deprecated by Portage, though not fatal, but the viewer is already shown well in the Internet (Network) submenu anyway on unix desktops.
2025-04-06#3627 std::bad_alloc when loading a modelAndrey Kleshchev
2025-04-05#3575 Shrink draw distance when VRAM is very lowAndrey Kleshchev
2025-04-05#3575 Clean up obsolete VRAM detectin logicAndrey Kleshchev
2025-04-04#3876 sendLogoutRequest loggingAndrey Kleshchev
mac's crash logs seem to get mixed with normal logs, hope is this will help confirming the issue. Also needed for automated testing.
2025-04-04#3878 Crash at LLPipeline::unlinkDrawableAndrey Kleshchev
assertInitializedDoError() on shutdown
2025-04-04Merge pull request #3854 from williamweaver/fix/xui-parsing-fixesJonathan "Geenz" Goodman
Fix: Resolve Minor XUI Parsing Warnings in Environment Widgets
2025-04-04Fix(EnvAdjust): Properly update sky after cloud texture selectionWilliam Weaver
Problem: When selecting a new cloud texture in the Personal Lighting floater (LLFloaterEnvironmentAdjust), the sky did not visually update. The code previously only updated LiveSky->setCloudNoiseTextureId() and called mLiveSky->update(), which failed to notify the global LLEnvironment mechanism or the renderer about the new texture. Cause: Relying solely on mLiveSky for environment changes is insufficient. To update the live environment layer (ENV_LOCAL) and trigger a render refresh, calls to LLEnvironment::setEnvironment() and LLEnvironment::updateEnvironment() are required. Solution: 1. Remove an unnecessary null-check for getChild<LLTextureCtrl>, as getChild() never returns null. 2. Clone the current sky settings (mLiveSky->buildClone()) to avoid modifying a shared environment object directly. 3. Apply the new cloud texture ID to the clone. 4. Use LLEnvironment::setEnvironment(ENV_LOCAL, sky_to_set) to apply the updated settings to the user's local environment override. 5. Call LLEnvironment::updateEnvironment(LLEnvironment::TRANSITION_INSTANT, true) to ensure the renderer recognizes and displays the updated texture immediately. 6. Reset the picker control’s value to match the newly applied texture for UI consistency. Additional Note: A partial implementation was inadvertently committed earlier (commit`04af042`) due to a local staging error. This commit supersedes that incomplete change by correctly implementing the intended fix. Result: Selecting a new cloud texture from LLFloaterEnvironmentAdjust now immediately updates both the in-world sky rendering and the texture preview UI, ensuring consistency and clarity for users. Testing: - Open the Personal Lighting floater and select various cloud textures. - Verify that the sky updates immediately for each new selection. - Confirm that the texture picker also updates to reflect the selected texture.
2025-04-04#2702 Increase hover height's limitAndrey Kleshchev
2025-04-04#3870 Crash at LLVOAvatarSelf::getJoint()Andrey Kleshchev
A long standing one
2025-04-04#3868 Crash in updateHoveredStateAndrey Kleshchev
according to bugsplat mWrapperPanel is null.
2025-04-04Merge branch 'secondlife:develop' into fix/cloud-texture-loadingWilliam Weaver
2025-04-03Merge pull request #3866 from secondlife/maxim/2025.04-3857Maxim Nikolenko
#3857 pick new and updated LEAP functions from develop branch
2025-04-03#3857 teleport finished/failed eventMnikolenko Productengine
2025-04-03#3857 second batch of new or updated LEAP functionsMnikolenko Productengine
2025-04-03# 3826 Physics Material Type does not update for linked objectsAndrey Kleshchev
2025-04-02Fix normal and specular repeats per meter scalingHecklezz
2025-04-02#3857 pick new and updated LEAP functions from develop branchMnikolenko Productengine
2025-04-02Merge branch 'fix/xui-parsing-fixes' of ↵William Weaver
https://github.com/williamweaver/viewer into fix/xui-parsing-fixes
2025-04-02Fix(XUI): Resolve parsing warnings for Fixed Environment editor widgetsWilliam Weaver
Problem: Opening the Fixed Environment floater generated three distinct XUI parsing warnings in the logs: - Failed to parse parameter "decimal_digits." in xy_vector.xml - Failed to parse parameter "user_resize." in xy_vector.xml - Failed to parse parameter "logarithmic." in panel_settings_sky_clouds.xml Cause: These attributes were either not recognized/utilized by the underlying C++ widget implementations ('decimal_digits', 'user_resize' in LLXYVector) or were using an incorrect value ('logarithmic="1"' instead of a boolean 'true'/'false' in LLSliderCtrl). Solution: This commit addresses these three warnings: - Removed the extraneous 'decimal_digits' and 'user_resize' attributes from the definition of the 'xyvector' widget in xy_vector.xml. - Corrected the 'logarithmic' attribute value from "1" to "true" for the 'cloud_scroll_xy' slider in panel_settings_sky_clouds.xml. Result: Eliminates these specific parsing warnings from the logs when the Fixed Environment floater is opened. Testing: - Launch viewer. - Open World -> Environment Editor -> My Environments. - Select a sky setting and click Edit (or create a New one). - Observe the logs upon the Fixed Environment floater opening. - Verify the absence of the 'decimal_digits', 'user_resize' (from xy_vector.xml), and 'logarithmic' (from panel_settings_sky_clouds.xml) parsing warnings.