summaryrefslogtreecommitdiff
path: root/indra
AgeCommit message (Collapse)Author
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-07Fix logics for using prebuilt or system GLMErik Kundiman
Since the last merge, the prebuilt version has been used for all Megapahit platforms, when some should've used the system version instead, as instructed. And then, not all Linux distros don't have sufficient version of GLM on their repos, some do have and have already been instructed to install system GLM anyway. So the distros that still have insufficient version of GLM (0.9.9.8 instead of the necessary 1.0.1) are Debian, Ubuntu and openSUSE Tumbleweed, while other distros and OSes have GLM 1.0.1.
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 Adjust VRAM budget test a bitAndrey 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-03Merge remote-tracking branch 'secondlife/release/2025.03' into 2025.03Erik Kundiman
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-02#3597 Improve error handling at LLGLSLShader::disableTexture()Andrey Lihatskiy
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.
2025-04-02Fix(XUI): Remove unrecognized user_resize attribute from sun_moon_trackballWilliam Weaver
Problem: A warning "Failed to parse parameter 'user_resize.'" appeared in the logs during UI loading, originating from sun_moon_trackball.xml. Cause: The 'user_resize' attribute is not a recognized or utilized parameter for the 'sun_moon_trackball' widget type, as defined in the corresponding C++ (LLVirtualTrackball). Solution: Removed the extraneous 'user_resize="false"' line from the sun_moon_trackball.xml widget definition. Result: Eliminates the parsing warning from the logs upon viewer startup or UI reload. Testing: - Launch viewer. - Check logs for the absence of the "Failed to parse parameter 'user_resize.'" warning.
2025-04-02Fix(EnvAdjust): Ensure cloud texture selection updates the skyWilliam Weaver
Problem: When selecting a new cloud texture in the Personal Lighting floater (LLFloaterEnvironmentAdjust) using the cloud map texture picker, the sky rendering did not update to reflect the selected texture. The callback only updated the internal mLiveSky object and its subsequent call to mLiveSky->update() was insufficient to trigger a live render update. Cause: The onCloudMapChanged callback modified the mLiveSky settings object directly and called its update() method. However, in the context of live environment adjustments, changes require propagation through the central LLEnvironment singleton to correctly update the active environment layer (ENV_LOCAL) and signal the renderer. Relying solely on the settings object's update() method bypassed this necessary mechanism. Solution: This commit refactors onCloudMapChanged to correctly handle the update: 1. Uses the LLEnvironment singleton to manage the state change: - Explicitly targets the local environment layer (ENV_LOCAL) via setSelectedEnvironment(). - Clones the mLiveSky settings object. - Uses LLEnvironment::setEnvironment() to apply the modified clone to the ENV_LOCAL layer. - Uses LLEnvironment::updateEnvironment() to trigger the render update. 2. Synchronizes the UI preview: - Calls picker_ctrl->setValue() on the LLTextureCtrl widget after the environment update to ensure the UI preview matches the applied texture. Result: Selecting a cloud texture in the Environment Settings floater now correctly updates both the sky rendering and the UI preview widget simultaneously. Testing: - Open World -> Environment Editor -> Environment Settings. - Go to the Clouds tab. - Click the cloud texture preview to open the texture picker. - Select a new cloud texture and click OK. - Verify the sky updates immediately to use the selected texture. - Verify the texture preview in the floater also updates immediately. - Repeat with several different textures to confirm consistent behavior.
2025-04-01#3849 Crash at LLSelectMgr::updatePointAtAndrey Kleshchev
2025-04-01#3712 CMakeFindFrameworks deprecationAndrey Kleshchev
2025-04-01#3846 Crash at updateGLTFMaterialsAndrey Kleshchev
2025-04-01Merge branch 'release/2025.03' into release/2025.04Jonathan "Geenz" Goodman
2025-04-01#912 Refactor FindModel()Andrey Lihatskiy
2025-04-01secondlife/viewer#912 BugSplat Crash 1412267 (missed refactoring for FindModel)Alexander Gavriliuk
# Conflicts: # indra/newview/llmodelpreview.cpp
2025-04-01Merge tag 'Second_Life_Release#e671cb54-2025.03' into 2025.03Erik Kundiman
2025-03-31#3814 More bad_alloc handlingAndrey Kleshchev
warn user and error
2025-03-31#3044 Add option to hide L$ balance for Snapshots with Interface showingMaxim Nikolenko
2025-03-31#3809 Partial revert of "Fix J2C Upload"Andrey Kleshchev
This partially reverts commit 8d5dab9f67d54ce20768c0ccda58f27693cb20c9. Apparently viewer doesn't support some jp2 variants, so I'm leaving only the fix for bulk upload.
2025-03-31#3809 Fix J2C UploadAndrey Kleshchev
2025-03-30Shadow options in the graphics advanced panelmobserveur
New optimisation and resolution shadow options
2025-03-30#3795 Crash at getVolatileAPRPool()Andrey Kleshchev
2025-03-29#3836 Fix crash at LLNotificationForm::getNumElements()/LLSD::size()Andrey Lihatskiy
2025-03-29Merge tag 'Second_Life_Release#6ac1d4f3-2025.03' into 2025.03Erik Kundiman
2025-03-29Merge tag 'Second_Life_Release#4e80ec7e-2025.03' into 2025.03Erik Kundiman
2025-03-29Merge tag 'Second_Life_Release#8eff224c-2025.03' into 2025.03Erik Kundiman
2025-03-29Merge branch 'main' into 2025.03Erik Kundiman
2025-03-29Explicit float remaining arguments for lerpErik Kundiman
Some compilers may find it ambiguous as in anything newer than C++17, it could be float, double or long double. This lerp is meant to be the float one, as the 4th argument is, and the 3rd argument is an F32.
2025-03-29Revert "Temporary fix for antialiasing causing lower performance on mac"Erik Kundiman
This reverts commit faab4af12b583b48cfdd9f6e41dad7bba06c3970.
2025-03-28#3784 Increase texture scale boundariesAndrey Kleshchev
2025-03-28fix(pipeline): Remove incorrect zeroing of mRT dimensions in createGLBuffersWilliam Weaver
Resolves the root cause of shadow rendering failures when changing RenderShadowResolutionScale immediately after modifying other graphics settings (e.g., SSAO, HDR). Investigation revealed that LLPipeline::createGLBuffers, which is called during certain graphics setting changes that require full buffer recreation, contained lines that incorrectly set mRT->width and mRT->height to zero *after* the call to allocateScreenBuffer had already established the correct dimensions. This created a state inconsistency. If RenderShadowResolutionScale was changed immediately following the graphics setting change, the subsequent call to LLPipeline::resizeShadowTexture (triggered via handleShadowsResized) would read these incorrect zero dimensions from mRT. This led to failed shadow buffer allocation (allocateShadowBuffer(0, 0)) and resulted in corrupted or missing shadows. This commit removes the erroneous mRT->width = 0 and mRT->height = 0 lines from the end of createGLBuffers. This ensures that the render target dimensions remain valid after buffer recreation. With this fix, resizeShadowTexture now correctly reads the valid screen dimensions immediately following a graphics setting change and successfully resizes the shadow buffers without delay or error. This eliminates the need for previous workarounds like guard conditions or forced shader recompiles. Ref: #3719
2025-03-27Merge branch 'secondlife:develop' into fix/shadow-resolution-updateWilliam Weaver
2025-03-27#3829 WebRTC crash OnDataReceivedImplAndrey Kleshchev