From e07bf1c0a27cfb37c67c5ffdc92bb92975eabbbf Mon Sep 17 00:00:00 2001 From: Signal Linden Date: Mon, 4 Mar 2024 17:32:35 -0800 Subject: [PATCH 01/24] Do not automatically close issues (#929) Mark issues as stale but do not close them. --- .github/workflows/stale.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/stale.yaml b/.github/workflows/stale.yaml index 35ac41420c..e44e223589 100644 --- a/.github/workflows/stale.yaml +++ b/.github/workflows/stale.yaml @@ -17,7 +17,8 @@ jobs: with: stale-pr-message: This pull request is stale because it has been open 30 days with no activity. Remove stale label or comment or it will be closed in 7 days days-before-stale: 30 - days-before-close: 7 + days-before-close: 7 + days-before-issue-close: -1 exempt-pr-labels: blocked,must,should,keep stale-pr-label: stale - name: Print outputs From 6328cb7817174765d068685f67809108eb64f2b1 Mon Sep 17 00:00:00 2001 From: Nat Goodspeed Date: Tue, 5 Mar 2024 13:36:18 -0500 Subject: [PATCH 02/24] Make signing and symbol posting jobs conditional on secrets. Specifically, when secrets aren't available (e.g. for external PRs), skip the affected steps. --- .github/workflows/build.yaml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 1dd2c1d5df..edb180a2d1 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -250,6 +250,7 @@ jobs: ${{ steps.build.outputs.physicstpv }} sign-and-package-windows: + if: secrets.AZURE_KEY_VAULT_URI && secrets.AZURE_CERT_NAME && secrets.AZURE_CLIENT_ID && secrets.AZURE_CLIENT_SECRET && secrets.AZURE_TENANT_ID needs: build runs-on: windows steps: @@ -263,6 +264,7 @@ jobs: tenant_id: "${{ secrets.AZURE_TENANT_ID }}" sign-and-package-mac: + if: secrets.NOTARIZE_CREDS_MACOS && secrets.SIGNING_CERT_MACOS && secrets.SIGNING_CERT_MACOS_IDENTITY && secrets.SIGNING_CERT_MACOS_PASSWORD needs: build runs-on: macos-latest steps: @@ -298,6 +300,7 @@ jobs: note_team: ${{ steps.note-creds.outputs.note_team }} post-windows-symbols: + if: secrets.BUGSPLAT_USER && secrets.BUGSPLAT_PASS needs: build runs-on: ubuntu-latest steps: @@ -311,6 +314,7 @@ jobs: version: ${{ needs.build.outputs.viewer_version }} post-mac-symbols: + if: secrets.BUGSPLAT_USER && secrets.BUGSPLAT_PASS needs: build runs-on: ubuntu-latest steps: From 73a12f5529cd6646b4d0a19ac3de15dc3a3570a6 Mon Sep 17 00:00:00 2001 From: Nat Goodspeed Date: Tue, 5 Mar 2024 13:50:38 -0500 Subject: [PATCH 03/24] Enclose 'if:' expressions in ${{ ... }}. The previous construct produced: Unrecognized named-value: 'secrets'. Located at position 1 within expression: secrets.AZURE_KEY_VAULT_URI && ... --- .github/workflows/build.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index edb180a2d1..5fad232203 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -250,7 +250,7 @@ jobs: ${{ steps.build.outputs.physicstpv }} sign-and-package-windows: - if: secrets.AZURE_KEY_VAULT_URI && secrets.AZURE_CERT_NAME && secrets.AZURE_CLIENT_ID && secrets.AZURE_CLIENT_SECRET && secrets.AZURE_TENANT_ID + if: ${{ secrets.AZURE_KEY_VAULT_URI && secrets.AZURE_CERT_NAME && secrets.AZURE_CLIENT_ID && secrets.AZURE_CLIENT_SECRET && secrets.AZURE_TENANT_ID }} needs: build runs-on: windows steps: @@ -264,7 +264,7 @@ jobs: tenant_id: "${{ secrets.AZURE_TENANT_ID }}" sign-and-package-mac: - if: secrets.NOTARIZE_CREDS_MACOS && secrets.SIGNING_CERT_MACOS && secrets.SIGNING_CERT_MACOS_IDENTITY && secrets.SIGNING_CERT_MACOS_PASSWORD + if: ${{ secrets.NOTARIZE_CREDS_MACOS && secrets.SIGNING_CERT_MACOS && secrets.SIGNING_CERT_MACOS_IDENTITY && secrets.SIGNING_CERT_MACOS_PASSWORD }} needs: build runs-on: macos-latest steps: @@ -300,7 +300,7 @@ jobs: note_team: ${{ steps.note-creds.outputs.note_team }} post-windows-symbols: - if: secrets.BUGSPLAT_USER && secrets.BUGSPLAT_PASS + if: ${{ secrets.BUGSPLAT_USER && secrets.BUGSPLAT_PASS }} needs: build runs-on: ubuntu-latest steps: @@ -314,7 +314,7 @@ jobs: version: ${{ needs.build.outputs.viewer_version }} post-mac-symbols: - if: secrets.BUGSPLAT_USER && secrets.BUGSPLAT_PASS + if: ${{ secrets.BUGSPLAT_USER && secrets.BUGSPLAT_PASS }} needs: build runs-on: ubuntu-latest steps: From 74ee07d94268a76bcf24dfc0063fb5b6964ed607 Mon Sep 17 00:00:00 2001 From: Nat Goodspeed Date: Tue, 5 Mar 2024 14:23:32 -0500 Subject: [PATCH 04/24] To test for presence of secrets, set environment variables. From https://docs.github.com/en/actions/security-guides/using-secrets-in-github-actions#using-secrets-in-a-workflow : "Secrets cannot be directly referenced in if: conditionals. Instead, consider setting secrets as job-level environment variables, then referencing the environment variables to conditionally run steps in the job." --- .github/workflows/build.yaml | 54 +++++++++++++++++++++++------------- 1 file changed, 35 insertions(+), 19 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 5fad232203..13798fc607 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -37,8 +37,6 @@ jobs: DEVELOPER_DIR: ${{ matrix.developer_dir }} # Ensure that Linden viewer builds engage Bugsplat. BUGSPLAT_DB: ${{ matrix.configuration != 'ReleaseOS' && 'SecondLife_Viewer_2018' || '' }} - BUGSPLAT_PASS: ${{ secrets.BUGSPLAT_PASS }} - BUGSPLAT_USER: ${{ secrets.BUGSPLAT_USER }} build_coverity: false build_log_dir: ${{ github.workspace }}/.logs build_viewer: true @@ -250,25 +248,36 @@ jobs: ${{ steps.build.outputs.physicstpv }} sign-and-package-windows: - if: ${{ secrets.AZURE_KEY_VAULT_URI && secrets.AZURE_CERT_NAME && secrets.AZURE_CLIENT_ID && secrets.AZURE_CLIENT_SECRET && secrets.AZURE_TENANT_ID }} + env: + AZURE_KEY_VAULT_URI: ${{ secrets.AZURE_KEY_VAULT_URI }} + AZURE_CERT_NAME: ${{ secrets.AZURE_CERT_NAME }} + AZURE_CLIENT_ID: ${{ secrets.AZURE_CLIENT_ID }} + AZURE_CLIENT_SECRET: ${{ secrets.AZURE_CLIENT_SECRET }} + AZURE_TENANT_ID: ${{ secrets.AZURE_TENANT_ID }} needs: build runs-on: windows steps: - name: Sign and package Windows viewer + if: env.AZURE_KEY_VAULT_URI && env.AZURE_CERT_NAME && env.AZURE_CLIENT_ID && env.AZURE_CLIENT_SECRET && env.AZURE_TENANT_ID uses: secondlife/viewer-build-util/sign-pkg-windows@v1 with: - vault_uri: "${{ secrets.AZURE_KEY_VAULT_URI }}" - cert_name: "${{ secrets.AZURE_CERT_NAME }}" - client_id: "${{ secrets.AZURE_CLIENT_ID }}" - client_secret: "${{ secrets.AZURE_CLIENT_SECRET }}" - tenant_id: "${{ secrets.AZURE_TENANT_ID }}" + vault_uri: "${{ env.AZURE_KEY_VAULT_URI }}" + cert_name: "${{ env.AZURE_CERT_NAME }}" + client_id: "${{ env.AZURE_CLIENT_ID }}" + client_secret: "${{ env.AZURE_CLIENT_SECRET }}" + tenant_id: "${{ env.AZURE_TENANT_ID }}" sign-and-package-mac: - if: ${{ secrets.NOTARIZE_CREDS_MACOS && secrets.SIGNING_CERT_MACOS && secrets.SIGNING_CERT_MACOS_IDENTITY && secrets.SIGNING_CERT_MACOS_PASSWORD }} + env: + NOTARIZE_CREDS_MACOS: ${{ secrets.NOTARIZE_CREDS_MACOS }} + SIGNING_CERT_MACOS: ${{ secrets.SIGNING_CERT_MACOS }} + SIGNING_CERT_MACOS_IDENTITY: ${{ secrets.SIGNING_CERT_MACOS_IDENTITY }} + SIGNING_CERT_MACOS_PASSWORD: ${{ secrets.SIGNING_CERT_MACOS_PASSWORD }} needs: build runs-on: macos-latest steps: - name: Unpack Mac notarization credentials + if: env.NOTARIZE_CREDS_MACOS id: note-creds shell: bash run: | @@ -276,7 +285,7 @@ jobs: # USERNAME="..." # PASSWORD="..." # TEAM_ID="..." - eval "${{ secrets.NOTARIZE_CREDS_MACOS }}" + eval "${{ env.NOTARIZE_CREDS_MACOS }}" echo "::add-mask::$USERNAME" echo "::add-mask::$PASSWORD" echo "::add-mask::$TEAM_ID" @@ -288,41 +297,48 @@ jobs: [[ -n "$USERNAME" && -n "$PASSWORD" && -n "$TEAM_ID" ]] - name: Sign and package Mac viewer + if: env.SIGNING_CERT_MACOS && env.SIGNING_CERT_MACOS_IDENTITY && env.SIGNING_CERT_MACOS_PASSWORD && steps.note-creds.outputs.note_user && steps.note-creds.outputs.note_pass && steps.note-creds.outputs.note_team uses: secondlife/viewer-build-util/sign-pkg-mac@v1 with: channel: ${{ needs.build.outputs.viewer_channel }} imagename: ${{ needs.build.outputs.imagename }} - cert_base64: ${{ secrets.SIGNING_CERT_MACOS }} - cert_name: ${{ secrets.SIGNING_CERT_MACOS_IDENTITY }} - cert_pass: ${{ secrets.SIGNING_CERT_MACOS_PASSWORD }} + cert_base64: ${{ env.SIGNING_CERT_MACOS }} + cert_name: ${{ env.SIGNING_CERT_MACOS_IDENTITY }} + cert_pass: ${{ env.SIGNING_CERT_MACOS_PASSWORD }} note_user: ${{ steps.note-creds.outputs.note_user }} note_pass: ${{ steps.note-creds.outputs.note_pass }} note_team: ${{ steps.note-creds.outputs.note_team }} post-windows-symbols: - if: ${{ secrets.BUGSPLAT_USER && secrets.BUGSPLAT_PASS }} + env: + BUGSPLAT_USER: ${{ secrets.BUGSPLAT_USER }} + BUGSPLAT_PASS: ${{ secrets.BUGSPLAT_PASS }} needs: build runs-on: ubuntu-latest steps: - name: Post Windows symbols + if: env.BUGSPLAT_USER && env.BUGSPLAT_PASS uses: secondlife/viewer-build-util/post-bugsplat-windows@v1 with: - username: ${{ secrets.BUGSPLAT_USER }} - password: ${{ secrets.BUGSPLAT_PASS }} + username: ${{ env.BUGSPLAT_USER }} + password: ${{ env.BUGSPLAT_PASS }} database: "SecondLife_Viewer_2018" channel: ${{ needs.build.outputs.viewer_channel }} version: ${{ needs.build.outputs.viewer_version }} post-mac-symbols: - if: ${{ secrets.BUGSPLAT_USER && secrets.BUGSPLAT_PASS }} + env: + BUGSPLAT_USER: ${{ secrets.BUGSPLAT_USER }} + BUGSPLAT_PASS: ${{ secrets.BUGSPLAT_PASS }} needs: build runs-on: ubuntu-latest steps: - name: Post Mac symbols + if: env.BUGSPLAT_USER && env.BUGSPLAT_PASS uses: secondlife/viewer-build-util/post-bugsplat-mac@v1 with: - username: ${{ secrets.BUGSPLAT_USER }} - password: ${{ secrets.BUGSPLAT_PASS }} + username: ${{ env.BUGSPLAT_USER }} + password: ${{ env.BUGSPLAT_PASS }} database: "SecondLife_Viewer_2018" channel: ${{ needs.build.outputs.viewer_channel }} version: ${{ needs.build.outputs.viewer_version }} From 041c66d59acc1706db37cf5e819f2d72743a7028 Mon Sep 17 00:00:00 2001 From: Nat Goodspeed Date: Tue, 5 Mar 2024 14:29:24 -0500 Subject: [PATCH 05/24] Stop requiring BUGSPLAT_USER and BUGSPLAT_PASS in build.sh. The build step no longer needs these variables at all: they're used in a subsequent workflow job. --- build.sh | 22 ---------------------- 1 file changed, 22 deletions(-) diff --git a/build.sh b/build.sh index 22f9e0c78a..f7b3632ee8 100755 --- a/build.sh +++ b/build.sh @@ -175,28 +175,6 @@ pre_build() VIEWER_SYMBOL_FILE="$(native_path "$abs_build_dir/newview/$variant/secondlife-symbols-$symplat-${AUTOBUILD_ADDRSIZE}.tar.bz2")" fi - # expect these variables to be set in the environment from GitHub secrets - if [[ -n "$BUGSPLAT_DB" ]] - then - # don't spew credentials into build log - set +x - if [[ -z "$BUGSPLAT_USER" || -z "$BUGSPLAT_PASS" ]] - then - # older mechanism involving build-secrets repo - - # if build_secrets_checkout isn't set, report its name - bugsplat_sh="${build_secrets_checkout:-\$build_secrets_checkout}/bugsplat/bugsplat.sh" - if [ -r "$bugsplat_sh" ] - then # show that we're doing this, just not the contents - echo source "$bugsplat_sh" - source "$bugsplat_sh" - else - fatal "BUGSPLAT_USER or BUGSPLAT_PASS missing, and no $bugsplat_sh" - fi - fi - set -x - export BUGSPLAT_USER BUGSPLAT_PASS - fi - # honor autobuild_configure_parameters same as sling-buildscripts eval_autobuild_configure_parameters=$(eval $(echo echo $autobuild_configure_parameters)) From 55fdd540d2ef2a1616d928aac1d945008043c74e Mon Sep 17 00:00:00 2001 From: Cosmic Linden Date: Wed, 6 Mar 2024 13:04:40 -0800 Subject: [PATCH 06/24] secondlife/viewer#712: Clean up unused region change callback checks --- indra/newview/llfloaterregioninfo.cpp | 26 -------------------------- indra/newview/llfloaterregioninfo.h | 3 --- 2 files changed, 29 deletions(-) diff --git a/indra/newview/llfloaterregioninfo.cpp b/indra/newview/llfloaterregioninfo.cpp index 6e8e37621e..3256527ee5 100644 --- a/indra/newview/llfloaterregioninfo.cpp +++ b/indra/newview/llfloaterregioninfo.cpp @@ -1440,11 +1440,6 @@ BOOL LLPanelRegionTerrainInfo::postBuild() mAskedTextureHeights = false; mConfirmedTextureHeights = false; - if (!mRegionChangedSlot.connected()) - { - mRegionChangedSlot = gAgent.addRegionChangedCallback(boost::bind(&LLPanelRegionTerrainInfo::onRegionChanged,this)); - } - return LLPanelRegionInfo::postBuild(); } @@ -1491,27 +1486,6 @@ void LLPanelRegionTerrainInfo::updateForMaterialType() if (material_label) { material_label->setVisible(show_material_controls); } } -void LLPanelRegionTerrainInfo::onRegionChanged() -{ - LLViewerRegion *region = gAgent.getRegion(); - if (!region) { return; } - - if (region->simulatorFeaturesReceived()) - { - onSimulatorFeaturesReceived(region->getRegionID(), region); - } - else - { - // See "RenderTerrainPBREnabled" in LLViewerRegion::setSimulatorFeatures - region->setSimulatorFeaturesReceivedCallback(boost::bind(&LLPanelRegionTerrainInfo::onSimulatorFeaturesReceived,this,_1, _2)); - } -} - -void LLPanelRegionTerrainInfo::onSimulatorFeaturesReceived(const LLUUID& region_id, LLViewerRegion* regionp) -{ - refresh(); -} - // virtual bool LLPanelRegionTerrainInfo::refreshFromRegion(LLViewerRegion* region) { diff --git a/indra/newview/llfloaterregioninfo.h b/indra/newview/llfloaterregioninfo.h index 315c6aca0f..93a4d3a795 100644 --- a/indra/newview/llfloaterregioninfo.h +++ b/indra/newview/llfloaterregioninfo.h @@ -249,8 +249,6 @@ public: BOOL postBuild() override; - void onRegionChanged(); - void onSimulatorFeaturesReceived(const LLUUID& region_id, LLViewerRegion* regionp); bool refreshFromRegion(LLViewerRegion* region) override; // refresh local settings from region update from simulator void setEnvControls(bool available); // Whether environment settings are available for this region @@ -274,7 +272,6 @@ protected: private: bool mConfirmedTextureHeights; bool mAskedTextureHeights; - boost::signals2::connection mRegionChangedSlot; LLUUID mLastSetTextures[LLTerrainMaterials::ASSET_COUNT]; LLUUID mLastSetMaterials[LLTerrainMaterials::ASSET_COUNT]; }; From 7f2e3d0f278f55d8c831273547e49077764c9f14 Mon Sep 17 00:00:00 2001 From: Cosmic Linden Date: Thu, 7 Mar 2024 17:32:23 -0800 Subject: [PATCH 07/24] secondlife/viewer#712: Consolidate accesses to terrain_material_type control --- indra/newview/llfloaterregioninfo.cpp | 48 +++++++++++++-------------- indra/newview/llfloaterregioninfo.h | 1 + 2 files changed, 25 insertions(+), 24 deletions(-) diff --git a/indra/newview/llfloaterregioninfo.cpp b/indra/newview/llfloaterregioninfo.cpp index 3256527ee5..c6d8317128 100644 --- a/indra/newview/llfloaterregioninfo.cpp +++ b/indra/newview/llfloaterregioninfo.cpp @@ -1314,10 +1314,9 @@ void LLPanelRegionDebugInfo::onClickDebugConsole(void* data) BOOL LLPanelRegionTerrainInfo::validateTextureSizes() { - LLCheckBoxCtrl* material_type_ctrl = getChild("terrain_material_type"); - if (material_type_ctrl) + if (mMaterialTypeCtrl) { - const LLTerrainMaterials::Type material_type = material_type_from_ctrl(material_type_ctrl); + const LLTerrainMaterials::Type material_type = material_type_from_ctrl(mMaterialTypeCtrl); const bool is_material_selected = material_type == LLTerrainMaterials::Type::PBR; if (is_material_selected) { return TRUE; } } @@ -1327,7 +1326,7 @@ BOOL LLPanelRegionTerrainInfo::validateTextureSizes() { std::string buffer; buffer = llformat("texture_detail_%d", i); - LLTextureCtrl* texture_ctrl = getChild(buffer); + LLTextureCtrl* texture_ctrl = findChild(buffer); if (!texture_ctrl) continue; LLUUID image_asset_id = texture_ctrl->getImageAssetID(); @@ -1410,7 +1409,8 @@ BOOL LLPanelRegionTerrainInfo::postBuild() initCtrl("terrain_raise_spin"); initCtrl("terrain_lower_spin"); - getChild("terrain_material_type")->setCommitCallback(boost::bind(&LLPanelRegionTerrainInfo::onSelectMaterialType, this)); + mMaterialTypeCtrl = findChild("terrain_material_type"); + if (mMaterialTypeCtrl) { mMaterialTypeCtrl->setCommitCallback(boost::bind(&LLPanelRegionTerrainInfo::onSelectMaterialType, this)); } std::string buffer; @@ -1451,9 +1451,8 @@ void LLPanelRegionTerrainInfo::onSelectMaterialType() void LLPanelRegionTerrainInfo::updateForMaterialType() { - LLCheckBoxCtrl* material_type_ctrl = getChild("terrain_material_type"); - if (!material_type_ctrl) { return; } - const LLTerrainMaterials::Type material_type = material_type_from_ctrl(material_type_ctrl); + if (!mMaterialTypeCtrl) { return; } + const LLTerrainMaterials::Type material_type = material_type_from_ctrl(mMaterialTypeCtrl); const bool show_texture_controls = material_type == LLTerrainMaterials::Type::TEXTURE; const bool show_material_controls = material_type == LLTerrainMaterials::Type::PBR; @@ -1463,7 +1462,7 @@ void LLPanelRegionTerrainInfo::updateForMaterialType() for(S32 i = 0; i < LLTerrainMaterials::ASSET_COUNT; ++i) { buffer = llformat("texture_detail_%d", i); - texture_ctrl = getChild(buffer); + texture_ctrl = findChild(buffer); if (texture_ctrl) { texture_ctrl->setVisible(show_texture_controls); @@ -1472,7 +1471,7 @@ void LLPanelRegionTerrainInfo::updateForMaterialType() for(S32 i = 0; i < LLTerrainMaterials::ASSET_COUNT; ++i) { buffer = llformat("material_detail_%d", i); - texture_ctrl = getChild(buffer); + texture_ctrl = findChild(buffer); if (texture_ctrl) { texture_ctrl->setVisible(show_material_controls); @@ -1480,9 +1479,9 @@ void LLPanelRegionTerrainInfo::updateForMaterialType() } // Toggle visibility of labels - LLUICtrl* texture_label = getChild("detail_texture_text"); + LLUICtrl* texture_label = findChild("detail_texture_text"); if (texture_label) { texture_label->setVisible(show_texture_controls); } - LLUICtrl* material_label = getChild("detail_material_text"); + LLUICtrl* material_label = findChild("detail_material_text"); if (material_label) { material_label->setVisible(show_material_controls); } } @@ -1532,10 +1531,12 @@ bool LLPanelRegionTerrainInfo::refreshFromRegion(LLViewerRegion* region) reset_material_swatches = !set_material_swatches; } - LLCheckBoxCtrl* material_type_ctrl = getChild("terrain_material_type"); - if (material_type_ctrl) { material_type_to_ctrl(material_type_ctrl, material_type); } - updateForMaterialType(); - material_type_ctrl->setVisible(feature_pbr_terrain_enabled); + if (mMaterialTypeCtrl) + { + material_type_to_ctrl(mMaterialTypeCtrl, material_type); + updateForMaterialType(); + mMaterialTypeCtrl->setVisible(feature_pbr_terrain_enabled); + } LLTextureCtrl* asset_ctrl; std::string buffer; @@ -1544,7 +1545,7 @@ bool LLPanelRegionTerrainInfo::refreshFromRegion(LLViewerRegion* region) for(S32 i = 0; i < LLTerrainMaterials::ASSET_COUNT; ++i) { buffer = llformat("texture_detail_%d", i); - asset_ctrl = getChild(buffer); + asset_ctrl = findChild(buffer); if(asset_ctrl) { LL_DEBUGS() << "Detail Texture " << i << ": " @@ -1559,7 +1560,7 @@ bool LLPanelRegionTerrainInfo::refreshFromRegion(LLViewerRegion* region) for(S32 i = 0; i < LLTerrainMaterials::ASSET_COUNT; ++i) { buffer = llformat("material_detail_%d", i); - asset_ctrl = getChild(buffer); + asset_ctrl = findChild(buffer); if(asset_ctrl) { LL_DEBUGS() << "Detail Material " << i << ": " @@ -1574,7 +1575,7 @@ bool LLPanelRegionTerrainInfo::refreshFromRegion(LLViewerRegion* region) for(S32 i = 0; i < LLTerrainMaterials::ASSET_COUNT; ++i) { buffer = llformat("texture_detail_%d", i); - asset_ctrl = getChild(buffer); + asset_ctrl = findChild(buffer); if(asset_ctrl) { asset_ctrl->setImageAssetID(mLastSetTextures[i]); @@ -1586,7 +1587,7 @@ bool LLPanelRegionTerrainInfo::refreshFromRegion(LLViewerRegion* region) for(S32 i = 0; i < LLTerrainMaterials::ASSET_COUNT; ++i) { buffer = llformat("material_detail_%d", i); - asset_ctrl = getChild(buffer); + asset_ctrl = findChild(buffer); if(asset_ctrl) { asset_ctrl->setImageAssetID(mLastSetMaterials[i]); @@ -1665,9 +1666,8 @@ BOOL LLPanelRegionTerrainInfo::sendUpdate() LLMessageSystem* msg = gMessageSystem; // Send either material IDs instead of texture IDs depending on - // terrain_material_type - they both occupy the same slot. - LLCheckBoxCtrl* material_type_ctrl = getChild("terrain_material_type"); - const LLTerrainMaterials::Type material_type = material_type_ctrl ? material_type_from_ctrl(material_type_ctrl) : LLTerrainMaterials::Type::TEXTURE; + // material_type - they both occupy the same slot. + const LLTerrainMaterials::Type material_type = mMaterialTypeCtrl ? material_type_from_ctrl(mMaterialTypeCtrl) : LLTerrainMaterials::Type::TEXTURE; for(S32 i = 0; i < LLTerrainMaterials::ASSET_COUNT; ++i) { if (material_type == LLTerrainMaterials::Type::PBR) @@ -1678,7 +1678,7 @@ BOOL LLPanelRegionTerrainInfo::sendUpdate() { buffer = llformat("texture_detail_%d", i); } - asset_ctrl = getChild(buffer); + asset_ctrl = findChild(buffer); if (!asset_ctrl) { continue; } diff --git a/indra/newview/llfloaterregioninfo.h b/indra/newview/llfloaterregioninfo.h index 93a4d3a795..a38344c861 100644 --- a/indra/newview/llfloaterregioninfo.h +++ b/indra/newview/llfloaterregioninfo.h @@ -272,6 +272,7 @@ protected: private: bool mConfirmedTextureHeights; bool mAskedTextureHeights; + LLCheckBoxCtrl* mMaterialTypeCtrl = nullptr; LLUUID mLastSetTextures[LLTerrainMaterials::ASSET_COUNT]; LLUUID mLastSetMaterials[LLTerrainMaterials::ASSET_COUNT]; }; From b4eb144f14eaaa69783a268776aa890bed6cd7fe Mon Sep 17 00:00:00 2001 From: Cosmic Linden Date: Fri, 8 Mar 2024 15:13:35 -0800 Subject: [PATCH 08/24] secondlife/viewer#712: Consolidate accesses to texture_detail_* and material_detail_* controls --- indra/newview/llfloaterregioninfo.cpp | 40 ++++++++++----------------- indra/newview/llfloaterregioninfo.h | 3 ++ 2 files changed, 18 insertions(+), 25 deletions(-) diff --git a/indra/newview/llfloaterregioninfo.cpp b/indra/newview/llfloaterregioninfo.cpp index c6d8317128..f71cbf61fc 100644 --- a/indra/newview/llfloaterregioninfo.cpp +++ b/indra/newview/llfloaterregioninfo.cpp @@ -1324,9 +1324,7 @@ BOOL LLPanelRegionTerrainInfo::validateTextureSizes() static const S32 MAX_TERRAIN_TEXTURE_SIZE = 1024; for(S32 i = 0; i < LLTerrainMaterials::ASSET_COUNT; ++i) { - std::string buffer; - buffer = llformat("texture_detail_%d", i); - LLTextureCtrl* texture_ctrl = findChild(buffer); + LLTextureCtrl* texture_ctrl = mTextureDetailCtrl[i]; if (!texture_ctrl) continue; LLUUID image_asset_id = texture_ctrl->getImageAssetID(); @@ -1418,11 +1416,13 @@ BOOL LLPanelRegionTerrainInfo::postBuild() { buffer = llformat("texture_detail_%d", i); initCtrl(buffer); + mTextureDetailCtrl[i] = findChild(buffer); } for(S32 i = 0; i < LLTerrainMaterials::ASSET_COUNT; ++i) { buffer = llformat("material_detail_%d", i); initCtrl(buffer); + mMaterialDetailCtrl[i] = findChild(buffer); } for(S32 i = 0; i < CORNER_COUNT; ++i) @@ -1457,12 +1457,9 @@ void LLPanelRegionTerrainInfo::updateForMaterialType() const bool show_material_controls = material_type == LLTerrainMaterials::Type::PBR; // Toggle visibility of correct swatches - std::string buffer; - LLTextureCtrl* texture_ctrl; for(S32 i = 0; i < LLTerrainMaterials::ASSET_COUNT; ++i) { - buffer = llformat("texture_detail_%d", i); - texture_ctrl = findChild(buffer); + LLTextureCtrl* texture_ctrl = mTextureDetailCtrl[i]; if (texture_ctrl) { texture_ctrl->setVisible(show_texture_controls); @@ -1470,11 +1467,10 @@ void LLPanelRegionTerrainInfo::updateForMaterialType() } for(S32 i = 0; i < LLTerrainMaterials::ASSET_COUNT; ++i) { - buffer = llformat("material_detail_%d", i); - texture_ctrl = findChild(buffer); - if (texture_ctrl) + LLTextureCtrl* material_ctrl = mMaterialDetailCtrl[i]; + if (material_ctrl) { - texture_ctrl->setVisible(show_material_controls); + material_ctrl->setVisible(show_material_controls); } } @@ -1538,14 +1534,11 @@ bool LLPanelRegionTerrainInfo::refreshFromRegion(LLViewerRegion* region) mMaterialTypeCtrl->setVisible(feature_pbr_terrain_enabled); } - LLTextureCtrl* asset_ctrl; - std::string buffer; if (set_texture_swatches) { for(S32 i = 0; i < LLTerrainMaterials::ASSET_COUNT; ++i) { - buffer = llformat("texture_detail_%d", i); - asset_ctrl = findChild(buffer); + LLTextureCtrl* asset_ctrl = mTextureDetailCtrl[i]; if(asset_ctrl) { LL_DEBUGS() << "Detail Texture " << i << ": " @@ -1559,8 +1552,7 @@ bool LLPanelRegionTerrainInfo::refreshFromRegion(LLViewerRegion* region) { for(S32 i = 0; i < LLTerrainMaterials::ASSET_COUNT; ++i) { - buffer = llformat("material_detail_%d", i); - asset_ctrl = findChild(buffer); + LLTextureCtrl* asset_ctrl = mMaterialDetailCtrl[i]; if(asset_ctrl) { LL_DEBUGS() << "Detail Material " << i << ": " @@ -1574,8 +1566,7 @@ bool LLPanelRegionTerrainInfo::refreshFromRegion(LLViewerRegion* region) { for(S32 i = 0; i < LLTerrainMaterials::ASSET_COUNT; ++i) { - buffer = llformat("texture_detail_%d", i); - asset_ctrl = findChild(buffer); + LLTextureCtrl* asset_ctrl = mTextureDetailCtrl[i]; if(asset_ctrl) { asset_ctrl->setImageAssetID(mLastSetTextures[i]); @@ -1586,8 +1577,7 @@ bool LLPanelRegionTerrainInfo::refreshFromRegion(LLViewerRegion* region) { for(S32 i = 0; i < LLTerrainMaterials::ASSET_COUNT; ++i) { - buffer = llformat("material_detail_%d", i); - asset_ctrl = findChild(buffer); + LLTextureCtrl* asset_ctrl = mMaterialDetailCtrl[i]; if(asset_ctrl) { asset_ctrl->setImageAssetID(mLastSetMaterials[i]); @@ -1595,6 +1585,7 @@ bool LLPanelRegionTerrainInfo::refreshFromRegion(LLViewerRegion* region) } } + std::string buffer; for(S32 i = 0; i < CORNER_COUNT; ++i) { buffer = llformat("height_start_spin_%d", i); @@ -1661,7 +1652,6 @@ BOOL LLPanelRegionTerrainInfo::sendUpdate() } } - LLTextureCtrl* asset_ctrl; std::string id_str; LLMessageSystem* msg = gMessageSystem; @@ -1670,15 +1660,15 @@ BOOL LLPanelRegionTerrainInfo::sendUpdate() const LLTerrainMaterials::Type material_type = mMaterialTypeCtrl ? material_type_from_ctrl(mMaterialTypeCtrl) : LLTerrainMaterials::Type::TEXTURE; for(S32 i = 0; i < LLTerrainMaterials::ASSET_COUNT; ++i) { + LLTextureCtrl* asset_ctrl; if (material_type == LLTerrainMaterials::Type::PBR) { - buffer = llformat("material_detail_%d", i); + asset_ctrl = mMaterialDetailCtrl[i]; } else { - buffer = llformat("texture_detail_%d", i); + asset_ctrl = mTextureDetailCtrl[i]; } - asset_ctrl = findChild(buffer); if (!asset_ctrl) { continue; } diff --git a/indra/newview/llfloaterregioninfo.h b/indra/newview/llfloaterregioninfo.h index a38344c861..99774e5db3 100644 --- a/indra/newview/llfloaterregioninfo.h +++ b/indra/newview/llfloaterregioninfo.h @@ -56,6 +56,7 @@ class LLRadioGroup; class LLSliderCtrl; class LLSpinCtrl; class LLTextBox; +class LLTextureCtrl; class LLPanelRegionGeneralInfo; class LLPanelRegionDebugInfo; @@ -273,6 +274,8 @@ private: bool mConfirmedTextureHeights; bool mAskedTextureHeights; LLCheckBoxCtrl* mMaterialTypeCtrl = nullptr; + LLTextureCtrl* mTextureDetailCtrl[LLTerrainMaterials::ASSET_COUNT]; + LLTextureCtrl* mMaterialDetailCtrl[LLTerrainMaterials::ASSET_COUNT]; LLUUID mLastSetTextures[LLTerrainMaterials::ASSET_COUNT]; LLUUID mLastSetMaterials[LLTerrainMaterials::ASSET_COUNT]; }; From b84d76e243ed54b1d7db6401b78ce9122714b6e4 Mon Sep 17 00:00:00 2001 From: Cosmic Linden Date: Fri, 8 Mar 2024 16:29:00 -0800 Subject: [PATCH 09/24] secondlife/viewer#712: Slightly improved logging in refreshFromRegion --- indra/newview/llfloaterregioninfo.cpp | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/indra/newview/llfloaterregioninfo.cpp b/indra/newview/llfloaterregioninfo.cpp index f71cbf61fc..454842999d 100644 --- a/indra/newview/llfloaterregioninfo.cpp +++ b/indra/newview/llfloaterregioninfo.cpp @@ -1541,7 +1541,7 @@ bool LLPanelRegionTerrainInfo::refreshFromRegion(LLViewerRegion* region) LLTextureCtrl* asset_ctrl = mTextureDetailCtrl[i]; if(asset_ctrl) { - LL_DEBUGS() << "Detail Texture " << i << ": " + LL_DEBUGS("Terrain", "Texture") << "Detail Texture " << i << ": " << compp->getDetailAssetID(i) << LL_ENDL; LLUUID tmp_id(compp->getDetailAssetID(i)); asset_ctrl->setImageAssetID(tmp_id); @@ -1555,7 +1555,7 @@ bool LLPanelRegionTerrainInfo::refreshFromRegion(LLViewerRegion* region) LLTextureCtrl* asset_ctrl = mMaterialDetailCtrl[i]; if(asset_ctrl) { - LL_DEBUGS() << "Detail Material " << i << ": " + LL_DEBUGS("Terrain", "Material") << "Detail Material " << i << ": " << compp->getDetailAssetID(i) << LL_ENDL; LLUUID tmp_id(compp->getDetailAssetID(i)); asset_ctrl->setImageAssetID(tmp_id); @@ -1566,6 +1566,8 @@ bool LLPanelRegionTerrainInfo::refreshFromRegion(LLViewerRegion* region) { for(S32 i = 0; i < LLTerrainMaterials::ASSET_COUNT; ++i) { + LL_DEBUGS("Terrain", "Texture") << "Reset Texture swatch " << i + << LL_ENDL; LLTextureCtrl* asset_ctrl = mTextureDetailCtrl[i]; if(asset_ctrl) { @@ -1577,6 +1579,8 @@ bool LLPanelRegionTerrainInfo::refreshFromRegion(LLViewerRegion* region) { for(S32 i = 0; i < LLTerrainMaterials::ASSET_COUNT; ++i) { + LL_DEBUGS("Terrain", "Material") << "Reset Material swatch " << i + << LL_ENDL; LLTextureCtrl* asset_ctrl = mMaterialDetailCtrl[i]; if(asset_ctrl) { From 457b720fd9b2ced6f288d4bbc71045cefaed4a49 Mon Sep 17 00:00:00 2001 From: RunitaiLinden Date: Tue, 12 Mar 2024 14:26:21 -0500 Subject: [PATCH 10/24] #965 Fix for EEP skies being too bright --- .../newview/app_settings/shaders/class1/deferred/skyF.glsl | 7 ++++--- .../app_settings/shaders/class3/deferred/softenLightF.glsl | 5 +++-- indra/newview/lldrawpoolwlsky.cpp | 3 --- 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/indra/newview/app_settings/shaders/class1/deferred/skyF.glsl b/indra/newview/app_settings/shaders/class1/deferred/skyF.glsl index cc5280d929..596e9321e8 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/skyF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/skyF.glsl @@ -86,7 +86,9 @@ void main() pos = env_mat * pos; vec2 texCoord = vec2(atan(pos.z, pos.x) + PI, acos(pos.y)) / vec2(2.0 * PI, PI); vec3 color = textureLod(environmentMap, texCoord.xy, 0).rgb * sky_hdr_scale; - color = min(color, vec3(8192*8192*16)); + color = min(color, vec3(8192*8192*16)); // stupidly large value arrived at by binary search -- avoids framebuffer corruption from some HDRIs + + frag_data[2] = vec4(0.0,0.0,0.0,GBUFFER_FLAG_HAS_HDRI); #else // Potential Fill-rate optimization. Add cloud calculation @@ -104,12 +106,11 @@ void main() color.rgb *= 2.; color.rgb = clamp(color.rgb, vec3(0), vec3(5)); + frag_data[2] = vec4(0.0,0.0,0.0,GBUFFER_FLAG_SKIP_ATMOS); #endif frag_data[0] = vec4(0); frag_data[1] = vec4(0); - frag_data[2] = vec4(0.0,0.0,0.0,GBUFFER_FLAG_SKIP_ATMOS); frag_data[3] = vec4(color.rgb, 1.0); - } diff --git a/indra/newview/app_settings/shaders/class3/deferred/softenLightF.glsl b/indra/newview/app_settings/shaders/class3/deferred/softenLightF.glsl index 5cc7ea698a..9b9739ba22 100644 --- a/indra/newview/app_settings/shaders/class3/deferred/softenLightF.glsl +++ b/indra/newview/app_settings/shaders/class3/deferred/softenLightF.glsl @@ -191,11 +191,12 @@ void main() } else if (GET_GBUFFER_FLAG(GBUFFER_FLAG_HAS_HDRI)) { + // actual HDRI sky, just copy color value color = texture(emissiveRect, tc).rgb; } - else if (!GET_GBUFFER_FLAG(GBUFFER_FLAG_HAS_ATMOS)) + else if (GET_GBUFFER_FLAG(GBUFFER_FLAG_SKIP_ATMOS)) { - //should only be true of WL sky, just port over base color value + //should only be true of WL sky, port over base color value and scale for fake HDR color = texture(emissiveRect, tc).rgb; color = srgb_to_linear(color); color *= sky_hdr_scale; diff --git a/indra/newview/lldrawpoolwlsky.cpp b/indra/newview/lldrawpoolwlsky.cpp index a9cc138549..303916110c 100644 --- a/indra/newview/lldrawpoolwlsky.cpp +++ b/indra/newview/lldrawpoolwlsky.cpp @@ -470,8 +470,6 @@ void LLDrawPoolWLSky::renderDeferred(S32 pass) const F32 camHeightLocal = LLEnvironment::instance().getCamHeight(); - gGL.setColorMask(true, false); - LLVector3 const & origin = LLViewerCamera::getInstance()->getOrigin(); if (gPipeline.canUseWindLightShaders()) @@ -488,7 +486,6 @@ void LLDrawPoolWLSky::renderDeferred(S32 pass) renderSkyCloudsDeferred(origin, camHeightLocal, cloud_shader); } } - gGL.setColorMask(true, true); } From ce6170802de1833a8d0d55e9dfc774c4c9dd7eca Mon Sep 17 00:00:00 2001 From: Brad Linden Date: Tue, 12 Mar 2024 16:46:48 -0700 Subject: [PATCH 11/24] secondlife/viewer#926 further work on mac openexr lib. switching mac lib to be statically linked autobuild installables edit openexr platform=darwin64 url=https://github.com/secondlife/3p-openexr/releases/download/v1.10/openexr-3.2.2-darwin64-df7544d.tar.zst hash_algorithm=sha1 hash=17cd63922214b588d9a36137fadf927237ec0f25 autobuild installables edit openexr platform=linux64 url=https://github.com/secondlife/3p-openexr/releases/download/v1.10/openexr-3.2.2-linux64-df7544d.tar.zst hash_algorithm=sha1 hash=b092658ab5ec009a5875e8b6e5b7109730ad6846 autobuild installables edit openexr platform=windows64 url=https://github.com/secondlife/3p-openexr/releases/download/v1.10/openexr-3.2.2-windows64-df7544d.tar.zst hash_algorithm=sha1 hash=c511ae9a3e401375af2199b498a75f32cebc010f --- autobuild.xml | 1562 +++++++++++++++++++++++++------------------------ 1 file changed, 787 insertions(+), 775 deletions(-) diff --git a/autobuild.xml b/autobuild.xml index f0038f6532..47182dd7f3 100644 --- a/autobuild.xml +++ b/autobuild.xml @@ -1,14 +1,19 @@ - - - version - 1.3 - type - autobuild + installables SDL + copyright + Copyright (C) 1997-2012 Sam Lantinga + description + Simple DirectMedia Layer is a cross-platform multimedia library designed to provide low level access to audio, keyboard, mouse, joystick, 3D hardware via OpenGL, and 2D video framebuffer. + license + lgpl + license_file + LICENSES/SDL.txt + name + SDL platforms linux64 @@ -24,21 +29,21 @@ linux64 - license - lgpl - license_file - LICENSES/SDL.txt - copyright - Copyright (C) 1997-2012 Sam Lantinga version 1.2.15 - name - SDL - description - Simple DirectMedia Layer is a cross-platform multimedia library designed to provide low level access to audio, keyboard, mouse, joystick, 3D hardware via OpenGL, and 2D video framebuffer. apr_suite + copyright + Copyright © 2012 The Apache Software Foundation, Licensed under the Apache License, Version 2.0. + description + Apache portable runtime project + license + apache + license_file + LICENSES/apr_suite.txt + name + apr_suite platforms darwin64 @@ -82,21 +87,21 @@ windows64 - license - apache - license_file - LICENSES/apr_suite.txt - copyright - Copyright © 2012 The Apache Software Foundation, Licensed under the Apache License, Version 2.0. version 1.7.2-e935465 - name - apr_suite - description - Apache portable runtime project boost + copyright + (see individual source files) + description + Boost C++ Libraries + license + boost 1.0 + license_file + LICENSES/boost.txt + name + boost platforms darwin64 @@ -128,21 +133,21 @@ windows64 - license - boost 1.0 - license_file - LICENSES/boost.txt - copyright - (see individual source files) version 1.81-09d25a7 - name - boost - description - Boost C++ Libraries bugsplat + copyright + Copyright 2003-2017, BugSplat + description + Bugsplat crash reporting package + license + Proprietary + license_file + LICENSES/BUGSPLAT_LICENSE.txt + name + bugsplat platforms darwin64 @@ -174,21 +179,19 @@ windows64 - license - Proprietary - license_file - LICENSES/BUGSPLAT_LICENSE.txt - copyright - Copyright 2003-2017, BugSplat version 4.0.3.0-527603a - name - bugsplat - description - Bugsplat crash reporting package colladadom + copyright + Copyright 2006 Sony Computer Entertainment Inc. + license + SCEA + license_file + LICENSES/collada.txt + name + colladadom platforms darwin64 @@ -220,19 +223,19 @@ windows64 - license - SCEA - license_file - LICENSES/collada.txt - copyright - Copyright 2006 Sony Computer Entertainment Inc. version 2.3.ab0c124 - name - colladadom cubemaptoequirectangular + copyright + Copyright (c) 2017 Jaume Sanchez Elias, http://www.clicktorelease.com + license + MIT + license_file + LICENSES/CUBEMAPTOEQUIRECTANGULAR_LICENSE.txt + name + cubemaptoequirectangular platforms darwin64 @@ -276,19 +279,21 @@ windows64 - license - MIT - license_file - LICENSES/CUBEMAPTOEQUIRECTANGULAR_LICENSE.txt - copyright - Copyright (c) 2017 Jaume Sanchez Elias, http://www.clicktorelease.com version 1.1.0 - name - cubemaptoequirectangular curl + copyright + Copyright (c) 1996 - 2014, Daniel Stenberg, (daniel@haxx.se). + description + Library for transferring data specified with URL syntax + license + curl + license_file + LICENSES/curl.txt + name + curl platforms darwin64 @@ -332,21 +337,21 @@ windows64 - license - curl - license_file - LICENSES/curl.txt - copyright - Copyright (c) 1996 - 2014, Daniel Stenberg, (daniel@haxx.se). version 7.54.1-5a4a82d - name - curl - description - Library for transferring data specified with URL syntax dbus_glib + copyright + Copyright (C) Red Hat Inc. + description + D-Bus bindings for glib + license + Academic Free License v. 2.1 + license_file + LICENSES/dbus-glib.txt + name + dbus_glib platforms linux64 @@ -362,21 +367,21 @@ linux64 - license - Academic Free License v. 2.1 - license_file - LICENSES/dbus-glib.txt - copyright - Copyright (C) Red Hat Inc. version 0.76 - name - dbus_glib - description - D-Bus bindings for glib dictionaries + copyright + Copyright 2014 Apache OpenOffice software + description + Spell checking dictionaries to bundled into the viewer + license + various open source + license_file + LICENSES/dictionaries.txt + name + dictionaries platforms common @@ -394,21 +399,21 @@ common - license - various open source - license_file - LICENSES/dictionaries.txt - copyright - Copyright 2014 Apache OpenOffice software version None - name - dictionaries - description - Spell checking dictionaries to bundled into the viewer dullahan + copyright + Copyright (c) 2017, Linden Research, Inc. + description + A headless browser SDK that uses the Chromium Embedded Framework (CEF). It is designed to make it easier to write applications that render modern web content directly to a memory buffer, inject synthesized mouse and keyboard events as well as interact with web based features like JavaScript or cookies. + license + MPL + license_file + LICENSES/LICENSE.txt + name + dullahan platforms darwin64 @@ -440,18 +445,8 @@ windows64 - license - MPL - license_file - LICENSES/LICENSE.txt - copyright - Copyright (c) 2017, Linden Research, Inc. version 1.14.0.202310131404_118.4.1_g3dd6078_chromium-118.0.5993.54 - name - dullahan - description - A headless browser SDK that uses the Chromium Embedded Framework (CEF). It is designed to make it easier to write applications that render modern web content directly to a memory buffer, inject synthesized mouse and keyboard events as well as interact with web based features like JavaScript or cookies. emoji_shortcodes @@ -499,6 +494,16 @@ expat + copyright + Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd and Clark Cooper - Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006 Expat maintainers. + description + Expat is an XML parser library written in C + license + expat + license_file + LICENSES/expat.txt + name + expat platforms darwin64 @@ -544,21 +549,21 @@ windows64 - license - expat - license_file - LICENSES/expat.txt - copyright - Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd and Clark Cooper - Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006 Expat maintainers. version 2.1.1.1f36d02 - name - expat - description - Expat is an XML parser library written in C fmodstudio + copyright + FMOD Studio by Firelight Technologies Pty Ltd. + description + FMOD Studio API + license + fmod + license_file + LICENSES/fmodstudio.txt + name + fmodstudio platforms darwin64 @@ -610,21 +615,21 @@ windows64 - license - fmod - license_file - LICENSES/fmodstudio.txt - copyright - FMOD Studio by Firelight Technologies Pty Ltd. version 2.02.13.578928 - name - fmodstudio - description - FMOD Studio API fontconfig + copyright + Copyright (C) 2000,2001,2002,2003,2004,2006,2007 Keith Packard, 2005 Patrick Lam, 2009 Roozbeh Pournader, 2008,2009 Red Hat, Inc., 2008 Danilo Šegan, 2012 Google, Inc. + description + Fontconfig is a library for configuring and customizing font access. + license + bsd + license_file + LICENSES/fontconfig.txt + name + fontconfig platforms linux64 @@ -640,18 +645,8 @@ linux64 - license - bsd - license_file - LICENSES/fontconfig.txt - copyright - Copyright (C) 2000,2001,2002,2003,2004,2006,2007 Keith Packard, 2005 Patrick Lam, 2009 Roozbeh Pournader, 2008,2009 Red Hat, Inc., 2008 Danilo Šegan, 2012 Google, Inc. version 2.11.0 - name - fontconfig - description - Fontconfig is a library for configuring and customizing font access. freetype @@ -729,6 +724,16 @@ glext + copyright + Copyright (c) 2007-2010 The Khronos Group Inc. + description + glext headers define function prototypes and constants for OpenGL extensions + license + Copyright (c) 2007-2010 The Khronos Group Inc. + license_file + LICENSES/glext.txt + name + glext platforms common @@ -746,21 +751,21 @@ common - license - Copyright (c) 2007-2010 The Khronos Group Inc. - license_file - LICENSES/glext.txt - copyright - Copyright (c) 2007-2010 The Khronos Group Inc. version 68 - name - glext - description - glext headers define function prototypes and constants for OpenGL extensions glh_linear + copyright + Copyright (c) 2000 Cass Everitt + description + glh - is a platform-indepenedent C++ OpenGL helper library + license + BSD + license_file + LICENSES/glh-linear.txt + name + glh_linear platforms common @@ -778,21 +783,21 @@ common - license - BSD - license_file - LICENSES/glh-linear.txt - copyright - Copyright (c) 2000 Cass Everitt version None - name - glh_linear - description - glh - is a platform-indepenedent C++ OpenGL helper library googlemock + copyright + Copyright 2008, Google Inc. + description + a library for writing and using C++ mock classes + license + BSD + license_file + LICENSES/gmock.txt + name + googlemock platforms darwin64 @@ -824,21 +829,19 @@ windows64 - license - BSD - license_file - LICENSES/gmock.txt - copyright - Copyright 2008, Google Inc. version 1.7.0.2b109d4 - name - googlemock - description - a library for writing and using C++ mock classes gstreamer + copyright + Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/> + license + LGPL + license_file + LICENSES/gstreamer.txt + name + gstreamer platforms linux64 @@ -854,19 +857,19 @@ linux64 - license - LGPL - license_file - LICENSES/gstreamer.txt - copyright - Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/> version 0.10.6.314267 - name - gstreamer gtk-atk-pango-glib + copyright + Copyright (various, see sources) + license + lgpl + license_file + LICENSES/gtk-atk-pango-glib.txt + name + gtk-atk-pango-glib platforms linux64 @@ -882,19 +885,21 @@ linux64 - license - lgpl - license_file - LICENSES/gtk-atk-pango-glib.txt - copyright - Copyright (various, see sources) version 0.1 - name - gtk-atk-pango-glib havok-source + copyright + Uses Havok (TM) Physics. (c)Copyright 1999-2010 Havok.com Inc. (and its Licensors). All Rights Reserved. See www.havok.com for details. + description + Havok source code for libs and demos + license + havok + license_file + LICENSES/havok.txt + name + havok-source platforms darwin64 @@ -942,18 +947,8 @@ windows64 - license - havok - license_file - LICENSES/havok.txt - copyright - Uses Havok (TM) Physics. (c)Copyright 1999-2010 Havok.com Inc. (and its Licensors). All Rights Reserved. See www.havok.com for details. version 2012.1-2 - name - havok-source - description - Havok source code for libs and demos icu4c @@ -1005,6 +1000,14 @@ jpegencoderbasic + copyright + Andreas Ritter, www.bytestrom.eu, 11/2009 + license + NONE + license_file + LICENSES/JPEG_ENCODER_BASIC_LICENSE.txt + name + jpegencoderbasic platforms darwin64 @@ -1048,19 +1051,21 @@ windows64 - license - NONE - license_file - LICENSES/JPEG_ENCODER_BASIC_LICENSE.txt - copyright - Andreas Ritter, www.bytestrom.eu, 11/2009 version 1.0 - name - jpegencoderbasic jpeglib + copyright + Copyright (C) 1991-2011, Thomas G. Lane, Guido Vollbeding. + description + JPEG encoding, decoding library + license + jpeglib + license_file + LICENSES/jpeglib.txt + name + jpeglib platforms darwin64 @@ -1106,21 +1111,21 @@ windows64 - license - jpeglib - license_file - LICENSES/jpeglib.txt - copyright - Copyright (C) 1991-2011, Thomas G. Lane, Guido Vollbeding. version 8c.7846234 - name - jpeglib - description - JPEG encoding, decoding library jsoncpp + copyright + Copyright (c) 2007-2010 Baptiste Lepilleur + description + jsoncpp is an implementation of a JSON (http://json.org) reader and writer in C++. + license + public domain + license_file + LICENSES/jsoncpp.txt + name + jsoncpp platforms darwin64 @@ -1166,21 +1171,21 @@ windows64 - license - public domain - license_file - LICENSES/jsoncpp.txt - copyright - Copyright (c) 2007-2010 Baptiste Lepilleur version 0.5.0.bc46e62 - name - jsoncpp - description - jsoncpp is an implementation of a JSON (http://json.org) reader and writer in C++. kdu + copyright + Kakadu software + description + JPEG2000 library by Kakadu + license + Kakadu + license_file + LICENSES/kdu.txt + name + kdu platforms darwin64 @@ -1232,21 +1237,21 @@ windows64 - license - Kakadu - license_file - LICENSES/kdu.txt - copyright - Kakadu software version 7.10.4.539108 - name - kdu - description - JPEG2000 library by Kakadu libhunspell + copyright + See hunspell.txt + description + Spell checking library + license + LGPL + license_file + LICENSES/hunspell.txt + name + libhunspell platforms darwin64 @@ -1292,21 +1297,21 @@ windows64 - license - LGPL - license_file - LICENSES/hunspell.txt - copyright - See hunspell.txt version 1.3.2.650fb94 - name - libhunspell - description - Spell checking library libndofdev + copyright + Copyright (c) 2007, 3Dconnexion, Inc. - All rights reserved. + description + 3DConnexion SDK + license + BSD + license_file + LICENSES/libndofdev.txt + name + libndofdev platforms darwin64 @@ -1338,21 +1343,21 @@ windows64 - license - BSD - license_file - LICENSES/libndofdev.txt - copyright - Copyright (c) 2007, 3Dconnexion, Inc. - All rights reserved. version 0.1.8e9edc7 - name - libndofdev - description - 3DConnexion SDK libpng + copyright + Copyright (c) 2004, 2006-2013 Glenn Randers-Pehrson + description + PNG Reference library + license + libpng + license_file + LICENSES/libpng.txt + name + libpng platforms darwin64 @@ -1396,21 +1401,21 @@ windows64 - license - libpng - license_file - LICENSES/libpng.txt - copyright - Copyright (c) 2004, 2006-2013 Glenn Randers-Pehrson version 1.6.38-ca06e99 - name - libpng - description - PNG Reference library libuuid + copyright + Copyright (c) 2004-2008 The OSSP Project <http://www.ossp.org/> + description + OSSP uuid is a ISO-C:1999 application programming interface (API) and corresponding command line interface (CLI) for the generation of DCE 1.1, ISO/IEC 11578:1996 and RFC 4122 compliant Universally Unique Identifier (UUID). + license + UUID + license_file + LICENSES/uuid.txt + name + libuuid platforms linux64 @@ -1426,21 +1431,21 @@ linux64 - license - UUID - license_file - LICENSES/uuid.txt - copyright - Copyright (c) 2004-2008 The OSSP Project <http://www.ossp.org/> version 1.6.2 - name - libuuid - description - OSSP uuid is a ISO-C:1999 application programming interface (API) and corresponding command line interface (CLI) for the generation of DCE 1.1, ISO/IEC 11578:1996 and RFC 4122 compliant Universally Unique Identifier (UUID). libxml2 + copyright + Copyright (C) 1998-2012 Daniel Veillard. All Rights Reserved. + description + Libxml2 is the XML C parser and toolkit developed for the Gnome project. + license + mit + license_file + LICENSES/libxml2.txt + name + libxml2 platforms darwin64 @@ -1486,21 +1491,21 @@ windows64 - license - mit - license_file - LICENSES/libxml2.txt - copyright - Copyright (C) 1998-2012 Daniel Veillard. All Rights Reserved. version 2.9.4.7476681 - name - libxml2 - description - Libxml2 is the XML C parser and toolkit developed for the Gnome project. llappearance_utility + copyright + Copyright (c) 2000-2012, Linden Research, Inc. + description + Linden Lab appearance utility for server-side avatar baking services. + license + Proprietary + license_file + LICENSES/llappearanceutility.txt + name + llappearance_utility platforms linux @@ -1516,21 +1521,20 @@ linux - license - Proprietary - license_file - LICENSES/llappearanceutility.txt - copyright - Copyright (c) 2000-2012, Linden Research, Inc. version 0.0.1 - name - llappearance_utility - description - Linden Lab appearance utility for server-side avatar baking services. llca + copyright + Copyright (c) 2016, Linden Research, Inc.; data provided by the Mozilla NSS Project. + + license + mit + license_file + LICENSES/ca-license.txt + name + llca platforms common @@ -1548,20 +1552,19 @@ common - license - mit - license_file - LICENSES/ca-license.txt - copyright - Copyright (c) 2016, Linden Research, Inc.; data provided by the Mozilla NSS Project. - version 202310121530.0 - name - llca llphysicsextensions_source + copyright + Copyright (c) 2010, Linden Research, Inc. + license + internal + license_file + LICENSES/llphysicsextensions.txt + name + llphysicsextensions_source platforms darwin64 @@ -1613,19 +1616,19 @@ windows64 + version + 1.0.479d20a + + llphysicsextensions_stub + + copyright + Copyright (c) 2010, Linden Research, Inc. license internal license_file LICENSES/llphysicsextensions.txt - copyright - Copyright (c) 2010, Linden Research, Inc. - version - 1.0.479d20a name - llphysicsextensions_source - - llphysicsextensions_stub - + llphysicsextensions_stub platforms darwin64 @@ -1653,19 +1656,19 @@ linux64 - license - internal - license_file - LICENSES/llphysicsextensions.txt - copyright - Copyright (c) 2010, Linden Research, Inc. version 1.0.542456 - name - llphysicsextensions_stub llphysicsextensions_tpv + copyright + Copyright (c) 2010, Linden Research, Inc. + license + internal + license_file + LICENSES/HavokSublicense.pdf + name + llphysicsextensions_tpv platforms darwin64 @@ -1705,19 +1708,17 @@ windows - license - internal - license_file - LICENSES/HavokSublicense.pdf - copyright - Copyright (c) 2010, Linden Research, Inc. version 1.0.561752 - name - llphysicsextensions_tpv mesa + license + mesa + license_file + LICENSES/mesa.txt + name + mesa platforms linux @@ -1733,17 +1734,23 @@ linux - license - mesa - license_file - LICENSES/mesa.txt version 7.11.1.297294 - name - mesa meshoptimizer + canonical_repo + https://bitbucket.org/lindenlab/3p-meshoptimizer + copyright + Copyright (c) 2016-2021 Arseny Kapoulkine + description + Meshoptimizer. Mesh optimization library. + license + meshoptimizer + license_file + LICENSES/meshoptimizer.txt + name + meshoptimizer platforms darwin64 @@ -1775,23 +1782,23 @@ windows64 - license - meshoptimizer - license_file - LICENSES/meshoptimizer.txt - copyright - Copyright (c) 2016-2021 Arseny Kapoulkine version 160 - name - meshoptimizer - canonical_repo - https://bitbucket.org/lindenlab/3p-meshoptimizer - description - Meshoptimizer. Mesh optimization library. mikktspace + canonical_repo + https://bitbucket.org/lindenlab/3p-mikktspace + copyright + Copyright (C) 2011 by Morten S. Mikkelsen + description + Mikktspace Tangent Generator + license + Copyright (C) 2011 by Morten S. Mikkelsen + license_file + mikktspace.txt + name + mikktspace platforms darwin64 @@ -1808,20 +1815,6 @@ name darwin64 - windows64 - - archive - - hash - 6b7d01ad54e4a88a001f66840c32329cedb28202 - hash_algorithm - sha1 - url - https://github.com/secondlife/3p-mikktspace/releases/download/v1-5cee1f4/mikktspace-1-windows64-5cee1f4.tar.zst - - name - windows64 - linux64 archive @@ -1836,24 +1829,38 @@ name linux64 + windows64 + + archive + + hash + 6b7d01ad54e4a88a001f66840c32329cedb28202 + hash_algorithm + sha1 + url + https://github.com/secondlife/3p-mikktspace/releases/download/v1-5cee1f4/mikktspace-1-windows64-5cee1f4.tar.zst + + name + windows64 + - license - Copyright (C) 2011 by Morten S. Mikkelsen - license_file - mikktspace.txt - copyright - Copyright (C) 2011 by Morten S. Mikkelsen version 1 - name - mikktspace - canonical_repo - https://bitbucket.org/lindenlab/3p-mikktspace - description - Mikktspace Tangent Generator minizip-ng + canonical_repo + https://bitbucket.org/lindenlab/3p-minizip-ng + copyright + This project uses the zlib license. Copyright (C) 1995-2013 Jean-loup Gailly and Mark Adler + description + minizip-ng is a zip manipulation library. Based on work of Gilles Vollant. + license + minizip-ng + license_file + LICENSES/minizip-ng.txt + name + minizip-ng platforms darwin64 @@ -1899,20 +1906,8 @@ windows64 - license - minizip-ng - license_file - LICENSES/minizip-ng.txt - copyright - This project uses the zlib license. Copyright (C) 1995-2013 Jean-loup Gailly and Mark Adler version 3.0.2.3e9876e - name - minizip-ng - canonical_repo - https://bitbucket.org/lindenlab/3p-minizip-ng - description - minizip-ng is a zip manipulation library. Based on work of Gilles Vollant. nanosvg @@ -1972,6 +1967,17 @@ nghttp2 + copyright + Copyright (c) 2012, 2014, 2015, 2016 Tatsuhiro Tsujikawa +Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors + description + Library providing HTTP 2 support for libcurl + license + MIT + license_file + LICENSES/nghttp2.txt + name + nghttp2 platforms darwin64 @@ -2017,24 +2023,23 @@ windows64 - license - MIT - license_file - LICENSES/nghttp2.txt - copyright - Copyright (c) 2012, 2014, 2015, 2016 Tatsuhiro Tsujikawa -Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors - version - 1.40.0.b1526c6 - name - nghttp2 - description - Library providing HTTP 2 support for libcurl source_type hg + version + 1.40.0.b1526c6 nvapi + copyright + Copyright © 2012 NVIDIA Corporation. All rights reserved. + description + NVAPI provides an interface to NVIDIA devices. + license + NVIDIA Corporation Software License Agreement – NVAPI SDK + license_file + LICENSES/NVAPI_SDK_License_Agreement.pdf + name + nvapi platforms windows64 @@ -2052,21 +2057,21 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 - license - NVIDIA Corporation Software License Agreement – NVAPI SDK - license_file - LICENSES/NVAPI_SDK_License_Agreement.pdf - copyright - Copyright © 2012 NVIDIA Corporation. All rights reserved. version 352.aac0e19 - name - nvapi - description - NVAPI provides an interface to NVIDIA devices. ogg_vorbis + copyright + Copyright (c) 2002, Xiph.org Foundation + description + Audio encoding library + license + ogg-vorbis + license_file + LICENSES/ogg-vorbis.txt + name + ogg_vorbis platforms darwin64 @@ -2110,38 +2115,52 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 - license - ogg-vorbis - license_file - LICENSES/ogg-vorbis.txt - copyright - Copyright (c) 2002, Xiph.org Foundation version 1.3.3-1.3.6.e4101b6 - name - ogg_vorbis - description - Audio encoding library open-libndofdev + copyright + Copyright (c) 2008, Jan Ciger (jan.ciger (at) gmail.com) + description + Open Source replacement for 3DConnection SDK license BSD license_file LICENSES/libndofdev.txt - copyright - Copyright (c) 2008, Jan Ciger (jan.ciger (at) gmail.com) - version - 0.3 name open-libndofdev - description - Open Source replacement for 3DConnection SDK + version + 0.3 openal + copyright + Copyright (C) 1999-2007 by authors. + description + OpenAL Soft is a software implementation of the OpenAL 3D audio API. + license + LGPL2 + license_file + LICENSES/openal-soft.txt + name + openal platforms + darwin64 + + archive + + hash + 4edaef5f03a1122eae8467c4a04d9caccaaaf847 + hash_algorithm + sha1 + url + https://github.com/secondlife/3p-openal-soft/releases/download/v1.23.1-18e315c/openal-1.23.1-darwin64-18e315c.tar.zst + + name + darwin64 + linux64 archive @@ -2170,33 +2189,9 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors name windows64 - darwin64 - - archive - - hash - 4edaef5f03a1122eae8467c4a04d9caccaaaf847 - hash_algorithm - sha1 - url - https://github.com/secondlife/3p-openal-soft/releases/download/v1.23.1-18e315c/openal-1.23.1-darwin64-18e315c.tar.zst - - name - darwin64 - - license - LGPL2 - license_file - LICENSES/openal-soft.txt - copyright - Copyright (C) 1999-2007 by authors. version 1.23.1 - name - openal - description - OpenAL Soft is a software implementation of the OpenAL 3D audio API. openexr @@ -2219,25 +2214,39 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors archive hash - 158cbe79bef4ecafb870052bbaca541e07107228 + 17cd63922214b588d9a36137fadf927237ec0f25 hash_algorithm sha1 url - https://github.com/secondlife/3p-openexr/releases/download/v1.8/openexr-3.2.2-darwin64-6501c65.tar.zst + https://github.com/secondlife/3p-openexr/releases/download/v1.10/openexr-3.2.2-darwin64-df7544d.tar.zst name darwin64 + linux64 + + archive + + hash + b092658ab5ec009a5875e8b6e5b7109730ad6846 + hash_algorithm + sha1 + url + https://github.com/secondlife/3p-openexr/releases/download/v1.10/openexr-3.2.2-linux64-df7544d.tar.zst + + name + linux64 + windows64 archive hash - 924f6ddf6669af023d1f3832cb79b50b913ae0ca + c511ae9a3e401375af2199b498a75f32cebc010f hash_algorithm sha1 url - https://github.com/secondlife/3p-openexr/releases/download/v1.8/openexr-3.2.2-windows64-6501c65.tar.zst + https://github.com/secondlife/3p-openexr/releases/download/v1.10/openexr-3.2.2-windows64-df7544d.tar.zst name windows64 @@ -2256,6 +2265,16 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors openjpeg + copyright + Copyright (c) 2002-2007, Communications and Remote Sensing Laboratory, Universite catholique de Louvain (UCL), Belgium; Copyright (c) 2002-2007, Professor Benoit Macq; Copyright (c) 2001-2003, David Janssens; Copyright (c) 2002-2003, Yannick Verschueren; Copyright (c) 2003-2007, Francois-Olivier Devaux and Antonin Descampe; Copyright (c) 2005, Herve Drolon, FreeImage Team; Copyright (c) 2006-2007, Parvatha Elangovan; Copyright (c) 2008, Jerome Fimes, Communications & Systemes <jerome.fimes@c-s.fr>; Copyright (c) 2010-2011, Kaori Hagihara; Copyright (c) 2011-2012, Centre National d'Etudes Spatiales (CNES), France; Copyright (c) 2012, CS Systemes d'Information, France; + description + The OpenJPEG library is an open-source JPEG 2000 codec written in C language. + license + BSD + license_file + LICENSES/openjpeg.txt + name + openjpeg platforms darwin64 @@ -2301,21 +2320,21 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 - license - BSD - license_file - LICENSES/openjpeg.txt - copyright - Copyright (c) 2002-2007, Communications and Remote Sensing Laboratory, Universite catholique de Louvain (UCL), Belgium; Copyright (c) 2002-2007, Professor Benoit Macq; Copyright (c) 2001-2003, David Janssens; Copyright (c) 2002-2003, Yannick Verschueren; Copyright (c) 2003-2007, Francois-Olivier Devaux and Antonin Descampe; Copyright (c) 2005, Herve Drolon, FreeImage Team; Copyright (c) 2006-2007, Parvatha Elangovan; Copyright (c) 2008, Jerome Fimes, Communications & Systemes <jerome.fimes@c-s.fr>; Copyright (c) 2010-2011, Kaori Hagihara; Copyright (c) 2011-2012, Centre National d'Etudes Spatiales (CNES), France; Copyright (c) 2012, CS Systemes d'Information, France; version 2.5.0.ea12248 - name - openjpeg - description - The OpenJPEG library is an open-source JPEG 2000 codec written in C language. openssl + copyright + Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved; Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) + description + Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) Library + license + openssl + license_file + LICENSES/openssl.txt + name + openssl platforms darwin64 @@ -2361,21 +2380,21 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 - license - openssl - license_file - LICENSES/openssl.txt - copyright - Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved; Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) version 1.1.1q.de53f55 - name - openssl - description - Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) Library pcre + copyright + Copyright (c) 1997-2014 University of Cambridge; Copyright(c) 2009-2014 Zoltan Herczeg; Copyright (c) 2007-2012, Google Inc. + description + PCRE Perl-compatible regular expression library + license + bsd + license_file + LICENSES/pcre-license.txt + name + pcre platforms darwin64 @@ -2419,21 +2438,21 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 - license - bsd - license_file - LICENSES/pcre-license.txt - copyright - Copyright (c) 1997-2014 University of Cambridge; Copyright(c) 2009-2014 Zoltan Herczeg; Copyright (c) 2007-2012, Google Inc. version 8.35.979fd86 - name - pcre - description - PCRE Perl-compatible regular expression library slvoice + copyright + 2010 Vivox, including audio coding using Polycom¨ Siren14TM (ITU-T Rec. G.722.1 Annex C) + description + Vivox SDK components + license + Mixed + license_file + LICENSES/vivox_licenses.txt + name + slvoice platforms darwin64 @@ -2481,21 +2500,19 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 - license - Mixed - license_file - LICENSES/vivox_licenses.txt - copyright - 2010 Vivox, including audio coding using Polycom¨ Siren14TM (ITU-T Rec. G.722.1 Annex C) version 4.10.0000.32327.5fc3fe7c.571099 - name - slvoice - description - Vivox SDK components threejs + copyright + Copyright © 2010-2021 three.js authors + license + MIT + license_file + LICENSES/THREEJS_LICENSE.txt + name + threejs platforms darwin64 @@ -2539,19 +2556,23 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 - license - MIT - license_file - LICENSES/THREEJS_LICENSE.txt - copyright - Copyright © 2010-2021 three.js authors version 0.132.2 - name - threejs tinygltf + canonical_repo + https://bitbucket.org/lindenlab/3p-tinygltf + copyright + // Copyright (c) 2015 - Present Syoyo Fujita, Aurélien Chatelain and many contributors. + description + tinygltf import library + license + MIT + license_file + LICENSES/tinygltf_license.txt + name + tinygltf platforms common @@ -2569,27 +2590,27 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors common - license - MIT - license_file - LICENSES/tinygltf_license.txt - copyright - // Copyright (c) 2015 - Present Syoyo Fujita, Aurélien Chatelain and many contributors. - version - v2.5.0 - name - tinygltf - canonical_repo - https://bitbucket.org/lindenlab/3p-tinygltf - description - tinygltf import library source https://bitbucket.org/lindenlab/3p-tinygltf source_type git + version + v2.5.0 tracy + canonical_repo + https://bitbucket.org/lindenlab/3p-tracy + copyright + Copyright (c) 2017-2022, Bartosz Taudul (wolf@nereid.pl) + description + Tracy Profiler Library + license + bsd + license_file + LICENSES/tracy_license.txt + name + tracy platforms darwin64 @@ -2621,27 +2642,25 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 - license - bsd - license_file - LICENSES/tracy_license.txt - copyright - Copyright (c) 2017-2022, Bartosz Taudul (wolf@nereid.pl) - version - v0.8.1-eecbf72 - name - tracy - canonical_repo - https://bitbucket.org/lindenlab/3p-tracy - description - Tracy Profiler Library source https://bitbucket.org/lindenlab/3p-tracy source_type git + version + v0.8.1-eecbf72 tut + copyright + Copyright 2002-2006 Vladimir Dyuzhev, Copyright 2007 Denis Kononenko, Copyright 2008-2009 Michał Rzechonek + description + TUT is a small and portable unit test framework for C++. + license + bsd + license_file + LICENSES/tut.txt + name + tut platforms common @@ -2659,21 +2678,21 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors common - license - bsd - license_file - LICENSES/tut.txt - copyright - Copyright 2002-2006 Vladimir Dyuzhev, Copyright 2007 Denis Kononenko, Copyright 2008-2009 Michał Rzechonek version 2008.11.30 - name - tut - description - TUT is a small and portable unit test framework for C++. uriparser + copyright + Copyright (C) 2007, Weijia Song <songweijia@gmail.com>, Sebastian Pipping <webmaster@hartwork.org> + description + uriparser is a strictly RFC 3986 compliant URI parsing and handling library written in C. uriparser is cross-platform, fast, supports Unicode and is licensed under the New BSD license. + license + New BSD license + license_file + LICENSES/uriparser.txt + name + uriparser platforms darwin64 @@ -2719,18 +2738,8 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 - license - New BSD license - license_file - LICENSES/uriparser.txt - copyright - Copyright (C) 2007, Weijia Song <songweijia@gmail.com>, Sebastian Pipping <webmaster@hartwork.org> version 0.9.4 - name - uriparser - description - uriparser is a strictly RFC 3986 compliant URI parsing and handling library written in C. uriparser is cross-platform, fast, supports Unicode and is licensed under the New BSD license. viewer-fonts @@ -2776,6 +2785,16 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors viewer-manager + copyright + Copyright (c) 2000-2012, Linden Research, Inc. + description + Linden Lab Viewer Management Process suite. + license + viewerlgpl + license_file + LICENSE + name + viewer-manager platforms darwin64 @@ -2821,25 +2840,23 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 - license - viewerlgpl - license_file - LICENSE - copyright - Copyright (c) 2000-2012, Linden Research, Inc. - version - 3.0-08bf5ee - name - viewer-manager - description - Linden Lab Viewer Management Process suite. source https://bitbucket.org/lindenlab/vmp-standalone source_type hg + version + 3.0-08bf5ee vlc-bin + copyright + Copyright (C) 1998-2016 VLC authors and VideoLAN + license + GPL2 + license_file + LICENSES/vlc.txt + name + vlc-bin platforms darwin64 @@ -2871,19 +2888,55 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 - license - GPL2 - license_file - LICENSES/vlc.txt - copyright - Copyright (C) 1998-2016 VLC authors and VideoLAN version 3.0.16.c219a5d + + vulkan_gltf + + canonical_repo + https://bitbucket.org/lindenlab/3p-vulkan-gltf-pbr + copyright + Copyright (c) 2018 Sascha Willems + description + Vulkan GLTF Sample Implementation + license + Copyright (c) 2018 Sascha Willems + license_file + vulkan_gltf.txt name - vlc-bin + vulkan_gltf + platforms + + common + + archive + + hash + 8e365eff8dcace48d91e2530f8b13e420849aefc + hash_algorithm + sha1 + url + https://github.com/secondlife/3p-vulkan-gltf-pbr/releases/download/v1.0.0-d7c372f/vulkan_gltf-1.0.0-common-d7c372f.tar.zst + + name + common + + + version + 1.0.0 xmlrpc-epi + copyright + Copyright: (C) 2000 Epinions, Inc. + description + XMLRPC Library + license + xmlrpc-epi + license_file + LICENSES/xmlrpc-epi.txt + name + xmlrpc-epi platforms darwin64 @@ -2929,55 +2982,21 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 - license - xmlrpc-epi - license_file - LICENSES/xmlrpc-epi.txt - copyright - Copyright: (C) 2000 Epinions, Inc. version 0.54.1.8a05acf - name - xmlrpc-epi - description - XMLRPC Library - - vulkan_gltf - - platforms - - common - - archive - - hash - 8e365eff8dcace48d91e2530f8b13e420849aefc - hash_algorithm - sha1 - url - https://github.com/secondlife/3p-vulkan-gltf-pbr/releases/download/v1.0.0-d7c372f/vulkan_gltf-1.0.0-common-d7c372f.tar.zst - - name - common - - - license - Copyright (c) 2018 Sascha Willems - license_file - vulkan_gltf.txt - copyright - Copyright (c) 2018 Sascha Willems - version - 1.0.0 - name - vulkan_gltf - canonical_repo - https://bitbucket.org/lindenlab/3p-vulkan-gltf-pbr - description - Vulkan GLTF Sample Implementation xxhash + copyright + Copyright (c) 2012-2021 Yann Collet + description + xxHash Library + license + xxhash + license_file + LICENSES/xxhash.txt + name + xxhash platforms common @@ -2995,21 +3014,23 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors common - license - xxhash - license_file - LICENSES/xxhash.txt - copyright - Copyright (c) 2012-2021 Yann Collet version 0.8.1-69ff69a - name - xxhash - description - xxHash Library zlib-ng + canonical_repo + https://bitbucket.org/lindenlab/3p-zlib-ng + copyright + Copyright (C) 1995-2013 Jean-loup Gailly and Mark Adler + description + zlib data compression library for the next generation systems + license + zlib-ng + license_file + LICENSES/zlib-ng.txt + name + zlib-ng platforms darwin64 @@ -3055,24 +3076,24 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 - license - zlib-ng - license_file - LICENSES/zlib-ng.txt - copyright - Copyright (C) 1995-2013 Jean-loup Gailly and Mark Adler version 1.2.11.zlib-ng.32fd361 - name - zlib-ng - canonical_repo - https://bitbucket.org/lindenlab/3p-zlib-ng - description - zlib data compression library for the next generation systems package_description + canonical_repo + https://github.com/secondlife/viewer + copyright + Copyright (c) 2020, Linden Research, Inc. + description + Second Life Viewer + license + LGPL + license_file + docs/LICENSE-source.txt + name + Second Life Viewer platforms common @@ -3081,6 +3102,9 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors RelWithDebInfo + build + + configure command @@ -3093,9 +3117,6 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors -DINSTALL_PROPRIETARY=TRUE - build - - name RelWithDebInfo @@ -3103,6 +3124,10 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors configure + arguments + + ../indra + command cmake options @@ -3112,16 +3137,15 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors -DROOT_PROJECT_NAME:STRING=SecondLife -DINSTALL_PROPRIETARY=FALSE - arguments - - ../indra - name RelWithDebInfoOS Release + build + + configure command @@ -3134,9 +3158,6 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors -DINSTALL_PROPRIETARY=TRUE - build - - name Release @@ -3144,6 +3165,10 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors configure + arguments + + ../indra + command cmake options @@ -3153,10 +3178,6 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors -DROOT_PROJECT_NAME:STRING=SecondLife -DINSTALL_PROPRIETARY=FALSE - arguments - - ../indra - name ReleaseOS @@ -3167,22 +3188,12 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors darwin64 + build_directory + build-darwin-x86_64 configurations RelWithDebInfo - configure - - options - - -G - Xcode - - arguments - - ../indra - - build command @@ -3196,6 +3207,18 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors -parallelizeTargets + configure + + arguments + + ../indra + + options + + -G + Xcode + + default True name @@ -3203,14 +3226,6 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors RelWithDebInfoOS - configure - - options - - -G - Xcode - - build command @@ -3224,11 +3239,6 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors -parallelizeTargets - name - RelWithDebInfoOS - - Release - configure options @@ -3236,11 +3246,12 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors -G Xcode - arguments - - ../indra - + name + RelWithDebInfoOS + + Release + build command @@ -3254,19 +3265,23 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors -parallelizeTargets + configure + + arguments + + ../indra + + options + + -G + Xcode + + name Release ReleaseOS - configure - - options - - -G - Xcode - - build command @@ -3280,38 +3295,46 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors -parallelizeTargets + configure + + options + + -G + Xcode + + name ReleaseOS - build_directory - build-darwin-x86_64 name darwin64 linux64 + build_directory + build-linux-x86_64 configurations Release + build + + command + ninja + configure + arguments + + ../indra + options -G Ninja -DLL_TESTS=Off - arguments - - ../indra - - - build - - command - ninja default True @@ -3320,6 +3343,11 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors ReleaseOS + build + + command + ninja + configure options @@ -3329,11 +3357,6 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors -DLL_TESTS=Off - build - - command - ninja - name ReleaseOS @@ -3346,33 +3369,23 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors default - build_directory - build-linux-x86_64 name linux64 windows + build_directory + build-vc${AUTOBUILD_VSVER|170}-$AUTOBUILD_ADDRSIZE configurations RelWithDebInfo - configure - - options - - -G - ${AUTOBUILD_WIN_CMAKE_GEN|NOTWIN} - -A - ${AUTOBUILD_WIN_VSPLATFORM|NOTWIN} - - arguments - - ..\indra - - build + arguments + + SecondLife.sln + command devenv options @@ -3380,9 +3393,19 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors /build RelWithDebInfo|${AUTOBUILD_WIN_VSPLATFORM|NOTWIN} + + configure + arguments - SecondLife.sln + ..\indra + + options + + -G + ${AUTOBUILD_WIN_CMAKE_GEN|NOTWIN} + -A + ${AUTOBUILD_WIN_VSPLATFORM|NOTWIN} default @@ -3392,25 +3415,12 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors RelWithDebInfoOS - configure - - options - - -G - ${AUTOBUILD_WIN_CMAKE_GEN|NOTWIN} - -A - ${AUTOBUILD_WIN_VSPLATFORM|NOTWIN} - -DINSTALL_PROPRIETARY=FALSE - -DUSE_KDU=FALSE - -DUSE_OPENAL:BOOL=ON - - arguments - - ..\indra - - build + arguments + + SecondLife.sln + command msbuild.exe options @@ -3422,9 +3432,22 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors /verbosity:minimal /p:VCBuildAdditionalOptions= /incremental + + configure + arguments - SecondLife.sln + ..\indra + + options + + -G + ${AUTOBUILD_WIN_CMAKE_GEN|NOTWIN} + -A + ${AUTOBUILD_WIN_VSPLATFORM|NOTWIN} + -DINSTALL_PROPRIETARY=FALSE + -DUSE_KDU=FALSE + -DUSE_OPENAL:BOOL=ON name @@ -3432,22 +3455,12 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors Release - configure - - options - - -G - ${AUTOBUILD_WIN_CMAKE_GEN|NOTWIN} - -A - ${AUTOBUILD_WIN_VSPLATFORM|NOTWIN} - - arguments - - ..\indra - - build + arguments + + SecondLife.sln + command devenv options @@ -3455,9 +3468,19 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors /build Release|${AUTOBUILD_WIN_VSPLATFORM|NOTWIN} + + configure + arguments - SecondLife.sln + ..\indra + + options + + -G + ${AUTOBUILD_WIN_CMAKE_GEN|NOTWIN} + -A + ${AUTOBUILD_WIN_VSPLATFORM|NOTWIN} name @@ -3465,26 +3488,12 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors ReleaseOS - configure - - options - - -G - ${AUTOBUILD_WIN_CMAKE_GEN|NOTWIN} - -A - ${AUTOBUILD_WIN_VSPLATFORM|NOTWIN} - -DUNATTENDED:BOOL=ON - -DINSTALL_PROPRIETARY=FALSE - -DUSE_KDU=FALSE - -DUSE_OPENAL:BOOL=ON - - arguments - - ..\indra - - build + arguments + + SecondLife.sln + command msbuild.exe options @@ -3496,35 +3505,38 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors /verbosity:minimal /p:VCBuildAdditionalOptions= /incremental + + configure + arguments - SecondLife.sln + ..\indra + + options + + -G + ${AUTOBUILD_WIN_CMAKE_GEN|NOTWIN} + -A + ${AUTOBUILD_WIN_VSPLATFORM|NOTWIN} + -DUNATTENDED:BOOL=ON + -DINSTALL_PROPRIETARY=FALSE + -DUSE_KDU=FALSE + -DUSE_OPENAL:BOOL=ON name ReleaseOS - build_directory - build-vc${AUTOBUILD_VSVER|170}-$AUTOBUILD_ADDRSIZE name windows - license - LGPL - license_file - docs/LICENSE-source.txt - copyright - Copyright (c) 2020, Linden Research, Inc. version_file newview/viewer_version.txt - name - Second Life Viewer - canonical_repo - https://github.com/secondlife/viewer - description - Second Life Viewer - - + type + autobuild + version + 1.3 + From ab5ea5d13479c5a419c982433a1052bf3b2d8322 Mon Sep 17 00:00:00 2001 From: Brad Linden Date: Tue, 12 Mar 2024 16:49:20 -0700 Subject: [PATCH 12/24] secondlife/viewer#926 switching cmake config for mac openexr to use new static libs --- indra/cmake/Copy3rdPartyLibs.cmake | 6 ------ indra/newview/viewer_manifest.py | 6 ------ 2 files changed, 12 deletions(-) diff --git a/indra/cmake/Copy3rdPartyLibs.cmake b/indra/cmake/Copy3rdPartyLibs.cmake index 415641f65f..873253b419 100644 --- a/indra/cmake/Copy3rdPartyLibs.cmake +++ b/indra/cmake/Copy3rdPartyLibs.cmake @@ -190,12 +190,6 @@ elseif(DARWIN) liburiparser.dylib liburiparser.1.dylib liburiparser.1.0.27.dylib - libIex-3_2.dylib - libIlmThread-3_2.dylib - libImath-3_1.dylib - libOpenEXR-3_2.dylib - libOpenEXRCore-3_2.dylib - libOpenEXRUtil-3_2.dylib ) if (TARGET ll::fmodstudio) diff --git a/indra/newview/viewer_manifest.py b/indra/newview/viewer_manifest.py index 70121ecc64..5258842b75 100755 --- a/indra/newview/viewer_manifest.py +++ b/indra/newview/viewer_manifest.py @@ -942,12 +942,6 @@ class Darwin_x86_64_Manifest(ViewerManifest): with self.prefix(src=relpkgdir, dst=""): self.path("libndofdev.dylib") self.path("libhunspell-*.dylib") - self.path("libIex-3_2.dylib") - self.path("libIlmThread-3_2.dylib") - self.path("libImath-3_1.dylib") - self.path("libOpenEXR-3_2.dylib") - self.path("libOpenEXRCore-3_2.dylib") - self.path("libOpenEXRUtil-3_2.dylib") with self.prefix(src_dst="cursors_mac"): self.path("*.tif") From 3d13a3733d5d4c960be3b519df9e70d6943f7bbe Mon Sep 17 00:00:00 2001 From: Cosmic Linden Date: Wed, 13 Mar 2024 09:50:33 -0700 Subject: [PATCH 13/24] secondlife/viewer#906: Bump PBR terrain scale, decreasing texel density by 1/2 --- indra/newview/app_settings/settings.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 8420f32db8..aaab7f1d45 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -10919,7 +10919,7 @@ Type F32 Value - 4.0 + 8.0 RenderTerrainPBRPlanarSampleCount From 7acfc57cbeb768509dac8266c7011894453d7e16 Mon Sep 17 00:00:00 2001 From: Cosmic Linden Date: Wed, 13 Mar 2024 10:10:54 -0700 Subject: [PATCH 14/24] secondlife/viewer#906: Rename a PBR terrain test plan --- ...{pbr_terrain_feature_gating.md => pbr_terrain_appearance.md} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename doc/testplans/{pbr_terrain_feature_gating.md => pbr_terrain_appearance.md} (97%) diff --git a/doc/testplans/pbr_terrain_feature_gating.md b/doc/testplans/pbr_terrain_appearance.md similarity index 97% rename from doc/testplans/pbr_terrain_feature_gating.md rename to doc/testplans/pbr_terrain_appearance.md index 2d27a5d73e..b56e84b3a8 100644 --- a/doc/testplans/pbr_terrain_feature_gating.md +++ b/doc/testplans/pbr_terrain_appearance.md @@ -1,4 +1,4 @@ -# PBR Terrain Feature Gating +# PBR Terrain Appearance PBR terrain should have lower detail on lower graphics settings. PBR terrain will also not show emissive textures on some machines (like Macs) which do not support more than 16 textures. From f335d9af2ccf18294988a191ed89e7e4179429d4 Mon Sep 17 00:00:00 2001 From: Cosmic Linden Date: Wed, 13 Mar 2024 10:18:09 -0700 Subject: [PATCH 15/24] secondlife/viewer#906: Add tiling test to renamed PBR terrain appearance test plan --- doc/testplans/pbr_terrain_appearance.md | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/doc/testplans/pbr_terrain_appearance.md b/doc/testplans/pbr_terrain_appearance.md index b56e84b3a8..4f0ee5c943 100644 --- a/doc/testplans/pbr_terrain_appearance.md +++ b/doc/testplans/pbr_terrain_appearance.md @@ -1,8 +1,17 @@ # PBR Terrain Appearance +## Tiling + +If two adjacent regions have the same PBR terrain settings, then: + +- There should not be seams between the two regions at their shared border +- The ground should not suddenly slide beneath the avatar when moving between regions (except due to movement of the avatar, which is not covered by this test plan) + +## Feature Gating + PBR terrain should have lower detail on lower graphics settings. PBR terrain will also not show emissive textures on some machines (like Macs) which do not support more than 16 textures. -## Triplanar Mapping +### Triplanar Mapping Triplanar mapping improves the texture repeats on the sides of terrain slopes. @@ -11,7 +20,7 @@ Availability of Triplanar mapping: - Medium-High and below: No triplanar mapping - High and above: Triplanar mapping -## PBR Textures +### PBR Textures At the highest graphics support level, PBR terrain supports all PBR textures. @@ -21,6 +30,6 @@ Availability of PBR textures varies by machine and graphics setting: - Medium-Low, and machines that do not support greater than 16 textures such as Macs: All PBR textures enabled except emissive textures. - Medium: All PBR textures enabled -## PBR Alpha +### PBR Alpha PBR terrain does not support materials with alpha blend or double-sided. In addition, the viewer does not make any guarantees about what will render behind the terrain if alpha is used. From ef755235551d68b2790ed7c5363038f46a226306 Mon Sep 17 00:00:00 2001 From: RunitaiLinden Date: Wed, 13 Mar 2024 12:22:12 -0500 Subject: [PATCH 16/24] 983 add debug setting to control the maximum download resolution (#986) * Create RenderMaxTextureResolution.md * #983 Add RenderMaxTextureResolution setting. Incidental crash fix. --- doc/testplans/RenderMaxTextureResolution.md | 16 ++++++++++++++++ indra/newview/app_settings/settings.xml | 11 +++++++++++ indra/newview/llheroprobemanager.cpp | 2 +- indra/newview/llheroprobemanager.h | 4 ++-- indra/newview/llviewertexture.cpp | 10 +++++++++- 5 files changed, 39 insertions(+), 4 deletions(-) create mode 100644 doc/testplans/RenderMaxTextureResolution.md diff --git a/doc/testplans/RenderMaxTextureResolution.md b/doc/testplans/RenderMaxTextureResolution.md new file mode 100644 index 0000000000..2b117050c7 --- /dev/null +++ b/doc/testplans/RenderMaxTextureResolution.md @@ -0,0 +1,16 @@ +The Setting RenderMaxTextureResolution controls the maximum resolution of non-boosted textures as displayed by the viewer. + +Valid values are 512-2048 (clamped in C++). + +![image](https://github.com/secondlife/viewer/assets/23218274/d0f889fc-8135-41d2-9d83-871ad4eebed5) + +![image](https://github.com/secondlife/viewer/assets/23218274/19950828-7eb1-4bb2-85d7-f35c63b34294) + +![image](https://github.com/secondlife/viewer/assets/23218274/249afc83-4de6-488d-a05e-4877d08573b1) + +Test Asset available on beta grid: +Object: 'Damaged Helmet', AssetID 0623e759-11b5-746c-a75e-7ba1caa6eb0e + + + + diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index aaab7f1d45..f248fac2ee 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -9405,6 +9405,17 @@ U32 Value 16 + + RenderMaxTextureResolution + + Comment + Maximum texture resolution to download for non-boosted textures. + Persist + 1 + Type + U32 + Value + 2048 RenderDebugTextureBind diff --git a/indra/newview/llheroprobemanager.cpp b/indra/newview/llheroprobemanager.cpp index 10b743ceef..13c12b5e55 100644 --- a/indra/newview/llheroprobemanager.cpp +++ b/indra/newview/llheroprobemanager.cpp @@ -581,7 +581,7 @@ bool LLHeroProbeManager::registerViewerObject(LLVOVolume* drawablep) void LLHeroProbeManager::unregisterViewerObject(LLVOVolume* drawablep) { - std::vector::iterator found_itr = std::find(mHeroVOList.begin(), mHeroVOList.end(), drawablep); + std::vector>::iterator found_itr = std::find(mHeroVOList.begin(), mHeroVOList.end(), drawablep); if (found_itr != mHeroVOList.end()) { mHeroVOList.erase(found_itr); diff --git a/indra/newview/llheroprobemanager.h b/indra/newview/llheroprobemanager.h index 04027cd57e..17e75a18d4 100644 --- a/indra/newview/llheroprobemanager.h +++ b/indra/newview/llheroprobemanager.h @@ -146,8 +146,8 @@ private: U32 mCurrentProbeUpdateFrame = 0; - std::vector mHeroVOList; - LLVOVolume* mNearestHero; + std::vector> mHeroVOList; + LLPointer mNearestHero; }; diff --git a/indra/newview/llviewertexture.cpp b/indra/newview/llviewertexture.cpp index 8436159e14..9759b9a31b 100644 --- a/indra/newview/llviewertexture.cpp +++ b/indra/newview/llviewertexture.cpp @@ -3079,7 +3079,15 @@ void LLViewerLODTexture::processTextureStats() updateVirtualSize(); static LLCachedControl textures_fullres(gSavedSettings,"TextureLoadFullRes", false); - + + { // restrict texture resolution to download based on RenderMaxTextureResolution + static LLCachedControl max_texture_resolution(gSavedSettings, "RenderMaxTextureResolution", 2048); + // sanity clamp debug setting to avoid settings hack shenanigans + F32 tex_res = (F32)llclamp((S32)max_texture_resolution, 512, 2048); + tex_res *= tex_res; + mMaxVirtualSize = llmin(mMaxVirtualSize, tex_res); + } + if (textures_fullres) { mDesiredDiscardLevel = 0; From d909e7243861320b43634ab9cafd2bb5a8dc558b Mon Sep 17 00:00:00 2001 From: RunitaiLinden Date: Wed, 13 Mar 2024 12:27:33 -0500 Subject: [PATCH 17/24] #975 Add RenderHDRISplitScreen debug setting (#976) * #975 Add RenderHDRISplitScreen debug setting * Create hdri_local_preview.md --- doc/testplans/hdri_local_preview.md | 21 +++++++ indra/newview/app_settings/settings.xml | 11 ++++ .../shaders/class1/deferred/skyF.glsl | 58 +++++++++++-------- .../shaders/class1/deferred/skyV.glsl | 6 +- indra/newview/lldrawpoolwlsky.cpp | 5 +- 5 files changed, 73 insertions(+), 28 deletions(-) create mode 100644 doc/testplans/hdri_local_preview.md diff --git a/doc/testplans/hdri_local_preview.md b/doc/testplans/hdri_local_preview.md new file mode 100644 index 0000000000..ba4f085100 --- /dev/null +++ b/doc/testplans/hdri_local_preview.md @@ -0,0 +1,21 @@ +A resident may swap out their sky for an EXR format HDRI for the purposes of previewing how their object would render in Second Life in an environment that matches the supplied HDRI. This should aid in matching inworld lighting with external tools so artists can know if their content has imported properly. + +To load an HDRI, click Develop->Render Tests->HDRI Preview: + +![image](https://github.com/secondlife/viewer/assets/23218274/fbdeab5f-dc1f-4406-be19-0c9ee7437b3f) + +Choose an EXR image. A library of publicly available HDRIs can be found here: https://polyhaven.com/hdris + +The Personal Lighting floater will open, and the sky will be replaced with the HDRI you chose. Reflection Probes will reset, and the scene will be illuminated by the HDRI. + +Three debug settings affect how the HDRI is displayed: + +RenderHDRIExposure - Exposure adjustment of HDRI when previewing an HDRI. Units are EV. Sane values would be -10 to 10. +RenderHDRIRotation - Rotation (in degrees) of environment when previewing an HDRI. +RenderHDRISplitScreen - What percentage of screen to render using HDRI vs EEP sky. + +Exposure and Rotation should behave similarly to the rotation and exposure controls in Substance Painter. + +Split Screen can be used to display an EEP sky side-by-side with an HDRI sky to aid in authoring an EEP sky that matches an HDRI sky. It is currently expected that EEP sun disc, moon, clouds, and stars do not render when previewing an HDRI, but that may change in the future. + + diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index f248fac2ee..a28ea7294c 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -9373,6 +9373,17 @@ Value 0.0 + RenderHDRISplitScreen + + Comment + What percentage of screen to render using HDRI vs EEP sky. + Persist + 1 + Type + F32 + Value + 1.0 + RenderMaxOpenGLVersion Comment diff --git a/indra/newview/app_settings/shaders/class1/deferred/skyF.glsl b/indra/newview/app_settings/shaders/class1/deferred/skyF.glsl index 596e9321e8..785c748234 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/skyF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/skyF.glsl @@ -28,8 +28,10 @@ in vec3 vary_HazeColor; in float vary_LightNormPosDot; #ifdef HAS_HDRI -in vec3 vary_position; +in vec4 vary_position; +in vec3 vary_rel_pos; uniform float sky_hdr_scale; +uniform float hdri_split_screen; uniform mat3 env_mat; uniform sampler2D environmentMap; #endif @@ -81,33 +83,39 @@ vec3 halo22(float d) void main() { + vec3 color; #ifdef HAS_HDRI - vec3 pos = normalize(vary_position); - pos = env_mat * pos; - vec2 texCoord = vec2(atan(pos.z, pos.x) + PI, acos(pos.y)) / vec2(2.0 * PI, PI); - vec3 color = textureLod(environmentMap, texCoord.xy, 0).rgb * sky_hdr_scale; - color = min(color, vec3(8192*8192*16)); // stupidly large value arrived at by binary search -- avoids framebuffer corruption from some HDRIs + vec3 frag_coord = vary_position.xyz/vary_position.w; + if (-frag_coord.x > ((1.0-hdri_split_screen)*2.0-1.0)) + { + vec3 pos = normalize(vary_rel_pos); + pos = env_mat * pos; + vec2 texCoord = vec2(atan(pos.z, pos.x) + PI, acos(pos.y)) / vec2(2.0 * PI, PI); + color = textureLod(environmentMap, texCoord.xy, 0).rgb * sky_hdr_scale; + color = min(color, vec3(8192*8192*16)); // stupidly large value arrived at by binary search -- avoids framebuffer corruption from some HDRIs - frag_data[2] = vec4(0.0,0.0,0.0,GBUFFER_FLAG_HAS_HDRI); -#else - - // Potential Fill-rate optimization. Add cloud calculation - // back in and output alpha of 0 (so that alpha culling kills - // the fragment) if the sky wouldn't show up because the clouds - // are fully opaque. - - vec3 color = vary_HazeColor; - - float rel_pos_lightnorm = vary_LightNormPosDot; - float optic_d = rel_pos_lightnorm; - vec3 halo_22 = halo22(optic_d); - color.rgb += rainbow(optic_d); - color.rgb += halo_22; - color.rgb *= 2.; - color.rgb = clamp(color.rgb, vec3(0), vec3(5)); - - frag_data[2] = vec4(0.0,0.0,0.0,GBUFFER_FLAG_SKIP_ATMOS); + frag_data[2] = vec4(0.0,0.0,0.0,GBUFFER_FLAG_HAS_HDRI); + } + else #endif + { + // Potential Fill-rate optimization. Add cloud calculation + // back in and output alpha of 0 (so that alpha culling kills + // the fragment) if the sky wouldn't show up because the clouds + // are fully opaque. + + color = vary_HazeColor; + + float rel_pos_lightnorm = vary_LightNormPosDot; + float optic_d = rel_pos_lightnorm; + vec3 halo_22 = halo22(optic_d); + color.rgb += rainbow(optic_d); + color.rgb += halo_22; + color.rgb *= 2.; + color.rgb = clamp(color.rgb, vec3(0), vec3(5)); + + frag_data[2] = vec4(0.0,0.0,0.0,GBUFFER_FLAG_SKIP_ATMOS); + } frag_data[0] = vec4(0); frag_data[1] = vec4(0); diff --git a/indra/newview/app_settings/shaders/class1/deferred/skyV.glsl b/indra/newview/app_settings/shaders/class1/deferred/skyV.glsl index bbe9a5a838..e48f69dab5 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/skyV.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/skyV.glsl @@ -36,7 +36,8 @@ out vec3 vary_HazeColor; out float vary_LightNormPosDot; #ifdef HAS_HDRI -out vec3 vary_position; +out vec4 vary_position; +out vec3 vary_rel_pos; #endif // Inputs @@ -77,7 +78,8 @@ void main() vec3 rel_pos = position.xyz - camPosLocal.xyz + vec3(0, 50, 0); #ifdef HAS_HDRI - vary_position = rel_pos; + vary_rel_pos = rel_pos; + vary_position = pos; #endif // Adj position vector to clamp altitude diff --git a/indra/newview/lldrawpoolwlsky.cpp b/indra/newview/lldrawpoolwlsky.cpp index 303916110c..323ab5fc07 100644 --- a/indra/newview/lldrawpoolwlsky.cpp +++ b/indra/newview/lldrawpoolwlsky.cpp @@ -153,12 +153,15 @@ void LLDrawPoolWLSky::renderSkyHazeDeferred(const LLVector3& camPosLocal, F32 ca static LLCachedControl hdri_exposure(gSavedSettings, "RenderHDRIExposure", 0.0f); static LLCachedControl hdri_rotation(gSavedSettings, "RenderHDRIRotation", 0.f); - + static LLCachedControl hdri_split(gSavedSettings, "RenderHDRISplitScreen", 1.f); + static LLStaticHashedString hdri_split_screen("hdri_split_screen"); + LLMatrix3 rot; rot.setRot(0.f, hdri_rotation*DEG_TO_RAD, 0.f); sky_shader->uniform1f(LLShaderMgr::SKY_HDR_SCALE, powf(2.f, hdri_exposure)); sky_shader->uniformMatrix3fv(LLShaderMgr::DEFERRED_ENV_MAT, 1, GL_FALSE, (F32*) rot.mMatrix); + sky_shader->uniform1f(hdri_split_screen, hdri_split); } else { From 5c605a60f5a44e0d1f8727c7ad0faf21f72f29dd Mon Sep 17 00:00:00 2001 From: RunitaiLinden Date: Wed, 13 Mar 2024 14:42:22 -0500 Subject: [PATCH 18/24] Revert "secondlife/viewer#926 further work on mac openexr lib." This reverts commit ce6170802de1833a8d0d55e9dfc774c4c9dd7eca. --- autobuild.xml | 1572 ++++++++++++++++++++++++------------------------- 1 file changed, 780 insertions(+), 792 deletions(-) diff --git a/autobuild.xml b/autobuild.xml index 47182dd7f3..f0038f6532 100644 --- a/autobuild.xml +++ b/autobuild.xml @@ -1,19 +1,14 @@ - + + + version + 1.3 + type + autobuild installables SDL - copyright - Copyright (C) 1997-2012 Sam Lantinga - description - Simple DirectMedia Layer is a cross-platform multimedia library designed to provide low level access to audio, keyboard, mouse, joystick, 3D hardware via OpenGL, and 2D video framebuffer. - license - lgpl - license_file - LICENSES/SDL.txt - name - SDL platforms linux64 @@ -29,21 +24,21 @@ linux64 + license + lgpl + license_file + LICENSES/SDL.txt + copyright + Copyright (C) 1997-2012 Sam Lantinga version 1.2.15 + name + SDL + description + Simple DirectMedia Layer is a cross-platform multimedia library designed to provide low level access to audio, keyboard, mouse, joystick, 3D hardware via OpenGL, and 2D video framebuffer. apr_suite - copyright - Copyright © 2012 The Apache Software Foundation, Licensed under the Apache License, Version 2.0. - description - Apache portable runtime project - license - apache - license_file - LICENSES/apr_suite.txt - name - apr_suite platforms darwin64 @@ -87,21 +82,21 @@ windows64 + license + apache + license_file + LICENSES/apr_suite.txt + copyright + Copyright © 2012 The Apache Software Foundation, Licensed under the Apache License, Version 2.0. version 1.7.2-e935465 + name + apr_suite + description + Apache portable runtime project boost - copyright - (see individual source files) - description - Boost C++ Libraries - license - boost 1.0 - license_file - LICENSES/boost.txt - name - boost platforms darwin64 @@ -133,21 +128,21 @@ windows64 + license + boost 1.0 + license_file + LICENSES/boost.txt + copyright + (see individual source files) version 1.81-09d25a7 + name + boost + description + Boost C++ Libraries bugsplat - copyright - Copyright 2003-2017, BugSplat - description - Bugsplat crash reporting package - license - Proprietary - license_file - LICENSES/BUGSPLAT_LICENSE.txt - name - bugsplat platforms darwin64 @@ -179,19 +174,21 @@ windows64 + license + Proprietary + license_file + LICENSES/BUGSPLAT_LICENSE.txt + copyright + Copyright 2003-2017, BugSplat version 4.0.3.0-527603a + name + bugsplat + description + Bugsplat crash reporting package colladadom - copyright - Copyright 2006 Sony Computer Entertainment Inc. - license - SCEA - license_file - LICENSES/collada.txt - name - colladadom platforms darwin64 @@ -223,19 +220,19 @@ windows64 + license + SCEA + license_file + LICENSES/collada.txt + copyright + Copyright 2006 Sony Computer Entertainment Inc. version 2.3.ab0c124 + name + colladadom cubemaptoequirectangular - copyright - Copyright (c) 2017 Jaume Sanchez Elias, http://www.clicktorelease.com - license - MIT - license_file - LICENSES/CUBEMAPTOEQUIRECTANGULAR_LICENSE.txt - name - cubemaptoequirectangular platforms darwin64 @@ -279,21 +276,19 @@ windows64 + license + MIT + license_file + LICENSES/CUBEMAPTOEQUIRECTANGULAR_LICENSE.txt + copyright + Copyright (c) 2017 Jaume Sanchez Elias, http://www.clicktorelease.com version 1.1.0 + name + cubemaptoequirectangular curl - copyright - Copyright (c) 1996 - 2014, Daniel Stenberg, (daniel@haxx.se). - description - Library for transferring data specified with URL syntax - license - curl - license_file - LICENSES/curl.txt - name - curl platforms darwin64 @@ -337,21 +332,21 @@ windows64 + license + curl + license_file + LICENSES/curl.txt + copyright + Copyright (c) 1996 - 2014, Daniel Stenberg, (daniel@haxx.se). version 7.54.1-5a4a82d + name + curl + description + Library for transferring data specified with URL syntax dbus_glib - copyright - Copyright (C) Red Hat Inc. - description - D-Bus bindings for glib - license - Academic Free License v. 2.1 - license_file - LICENSES/dbus-glib.txt - name - dbus_glib platforms linux64 @@ -367,21 +362,21 @@ linux64 + license + Academic Free License v. 2.1 + license_file + LICENSES/dbus-glib.txt + copyright + Copyright (C) Red Hat Inc. version 0.76 + name + dbus_glib + description + D-Bus bindings for glib dictionaries - copyright - Copyright 2014 Apache OpenOffice software - description - Spell checking dictionaries to bundled into the viewer - license - various open source - license_file - LICENSES/dictionaries.txt - name - dictionaries platforms common @@ -399,21 +394,21 @@ common + license + various open source + license_file + LICENSES/dictionaries.txt + copyright + Copyright 2014 Apache OpenOffice software version None + name + dictionaries + description + Spell checking dictionaries to bundled into the viewer dullahan - copyright - Copyright (c) 2017, Linden Research, Inc. - description - A headless browser SDK that uses the Chromium Embedded Framework (CEF). It is designed to make it easier to write applications that render modern web content directly to a memory buffer, inject synthesized mouse and keyboard events as well as interact with web based features like JavaScript or cookies. - license - MPL - license_file - LICENSES/LICENSE.txt - name - dullahan platforms darwin64 @@ -445,8 +440,18 @@ windows64 + license + MPL + license_file + LICENSES/LICENSE.txt + copyright + Copyright (c) 2017, Linden Research, Inc. version 1.14.0.202310131404_118.4.1_g3dd6078_chromium-118.0.5993.54 + name + dullahan + description + A headless browser SDK that uses the Chromium Embedded Framework (CEF). It is designed to make it easier to write applications that render modern web content directly to a memory buffer, inject synthesized mouse and keyboard events as well as interact with web based features like JavaScript or cookies. emoji_shortcodes @@ -494,16 +499,6 @@ expat - copyright - Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd and Clark Cooper - Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006 Expat maintainers. - description - Expat is an XML parser library written in C - license - expat - license_file - LICENSES/expat.txt - name - expat platforms darwin64 @@ -549,21 +544,21 @@ windows64 + license + expat + license_file + LICENSES/expat.txt + copyright + Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd and Clark Cooper - Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006 Expat maintainers. version 2.1.1.1f36d02 + name + expat + description + Expat is an XML parser library written in C fmodstudio - copyright - FMOD Studio by Firelight Technologies Pty Ltd. - description - FMOD Studio API - license - fmod - license_file - LICENSES/fmodstudio.txt - name - fmodstudio platforms darwin64 @@ -615,21 +610,21 @@ windows64 + license + fmod + license_file + LICENSES/fmodstudio.txt + copyright + FMOD Studio by Firelight Technologies Pty Ltd. version 2.02.13.578928 + name + fmodstudio + description + FMOD Studio API fontconfig - copyright - Copyright (C) 2000,2001,2002,2003,2004,2006,2007 Keith Packard, 2005 Patrick Lam, 2009 Roozbeh Pournader, 2008,2009 Red Hat, Inc., 2008 Danilo Šegan, 2012 Google, Inc. - description - Fontconfig is a library for configuring and customizing font access. - license - bsd - license_file - LICENSES/fontconfig.txt - name - fontconfig platforms linux64 @@ -645,8 +640,18 @@ linux64 + license + bsd + license_file + LICENSES/fontconfig.txt + copyright + Copyright (C) 2000,2001,2002,2003,2004,2006,2007 Keith Packard, 2005 Patrick Lam, 2009 Roozbeh Pournader, 2008,2009 Red Hat, Inc., 2008 Danilo Šegan, 2012 Google, Inc. version 2.11.0 + name + fontconfig + description + Fontconfig is a library for configuring and customizing font access. freetype @@ -724,16 +729,6 @@ glext - copyright - Copyright (c) 2007-2010 The Khronos Group Inc. - description - glext headers define function prototypes and constants for OpenGL extensions - license - Copyright (c) 2007-2010 The Khronos Group Inc. - license_file - LICENSES/glext.txt - name - glext platforms common @@ -751,21 +746,21 @@ common + license + Copyright (c) 2007-2010 The Khronos Group Inc. + license_file + LICENSES/glext.txt + copyright + Copyright (c) 2007-2010 The Khronos Group Inc. version 68 + name + glext + description + glext headers define function prototypes and constants for OpenGL extensions glh_linear - copyright - Copyright (c) 2000 Cass Everitt - description - glh - is a platform-indepenedent C++ OpenGL helper library - license - BSD - license_file - LICENSES/glh-linear.txt - name - glh_linear platforms common @@ -783,21 +778,21 @@ common - version - None - - googlemock - - copyright - Copyright 2008, Google Inc. - description - a library for writing and using C++ mock classes license BSD license_file - LICENSES/gmock.txt + LICENSES/glh-linear.txt + copyright + Copyright (c) 2000 Cass Everitt + version + None name - googlemock + glh_linear + description + glh - is a platform-indepenedent C++ OpenGL helper library + + googlemock + platforms darwin64 @@ -829,19 +824,21 @@ windows64 + license + BSD + license_file + LICENSES/gmock.txt + copyright + Copyright 2008, Google Inc. version 1.7.0.2b109d4 + name + googlemock + description + a library for writing and using C++ mock classes gstreamer - copyright - Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/> - license - LGPL - license_file - LICENSES/gstreamer.txt - name - gstreamer platforms linux64 @@ -857,19 +854,19 @@ linux64 + license + LGPL + license_file + LICENSES/gstreamer.txt + copyright + Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/> version 0.10.6.314267 + name + gstreamer gtk-atk-pango-glib - copyright - Copyright (various, see sources) - license - lgpl - license_file - LICENSES/gtk-atk-pango-glib.txt - name - gtk-atk-pango-glib platforms linux64 @@ -885,21 +882,19 @@ linux64 + license + lgpl + license_file + LICENSES/gtk-atk-pango-glib.txt + copyright + Copyright (various, see sources) version 0.1 + name + gtk-atk-pango-glib havok-source - copyright - Uses Havok (TM) Physics. (c)Copyright 1999-2010 Havok.com Inc. (and its Licensors). All Rights Reserved. See www.havok.com for details. - description - Havok source code for libs and demos - license - havok - license_file - LICENSES/havok.txt - name - havok-source platforms darwin64 @@ -947,8 +942,18 @@ windows64 + license + havok + license_file + LICENSES/havok.txt + copyright + Uses Havok (TM) Physics. (c)Copyright 1999-2010 Havok.com Inc. (and its Licensors). All Rights Reserved. See www.havok.com for details. version 2012.1-2 + name + havok-source + description + Havok source code for libs and demos icu4c @@ -1000,14 +1005,6 @@ jpegencoderbasic - copyright - Andreas Ritter, www.bytestrom.eu, 11/2009 - license - NONE - license_file - LICENSES/JPEG_ENCODER_BASIC_LICENSE.txt - name - jpegencoderbasic platforms darwin64 @@ -1051,21 +1048,19 @@ windows64 + license + NONE + license_file + LICENSES/JPEG_ENCODER_BASIC_LICENSE.txt + copyright + Andreas Ritter, www.bytestrom.eu, 11/2009 version 1.0 + name + jpegencoderbasic jpeglib - copyright - Copyright (C) 1991-2011, Thomas G. Lane, Guido Vollbeding. - description - JPEG encoding, decoding library - license - jpeglib - license_file - LICENSES/jpeglib.txt - name - jpeglib platforms darwin64 @@ -1111,21 +1106,21 @@ windows64 + license + jpeglib + license_file + LICENSES/jpeglib.txt + copyright + Copyright (C) 1991-2011, Thomas G. Lane, Guido Vollbeding. version 8c.7846234 + name + jpeglib + description + JPEG encoding, decoding library jsoncpp - copyright - Copyright (c) 2007-2010 Baptiste Lepilleur - description - jsoncpp is an implementation of a JSON (http://json.org) reader and writer in C++. - license - public domain - license_file - LICENSES/jsoncpp.txt - name - jsoncpp platforms darwin64 @@ -1171,21 +1166,21 @@ windows64 + license + public domain + license_file + LICENSES/jsoncpp.txt + copyright + Copyright (c) 2007-2010 Baptiste Lepilleur version 0.5.0.bc46e62 + name + jsoncpp + description + jsoncpp is an implementation of a JSON (http://json.org) reader and writer in C++. kdu - copyright - Kakadu software - description - JPEG2000 library by Kakadu - license - Kakadu - license_file - LICENSES/kdu.txt - name - kdu platforms darwin64 @@ -1237,21 +1232,21 @@ windows64 + license + Kakadu + license_file + LICENSES/kdu.txt + copyright + Kakadu software version 7.10.4.539108 + name + kdu + description + JPEG2000 library by Kakadu libhunspell - copyright - See hunspell.txt - description - Spell checking library - license - LGPL - license_file - LICENSES/hunspell.txt - name - libhunspell platforms darwin64 @@ -1297,21 +1292,21 @@ windows64 + license + LGPL + license_file + LICENSES/hunspell.txt + copyright + See hunspell.txt version 1.3.2.650fb94 + name + libhunspell + description + Spell checking library libndofdev - copyright - Copyright (c) 2007, 3Dconnexion, Inc. - All rights reserved. - description - 3DConnexion SDK - license - BSD - license_file - LICENSES/libndofdev.txt - name - libndofdev platforms darwin64 @@ -1343,21 +1338,21 @@ windows64 + license + BSD + license_file + LICENSES/libndofdev.txt + copyright + Copyright (c) 2007, 3Dconnexion, Inc. - All rights reserved. version 0.1.8e9edc7 + name + libndofdev + description + 3DConnexion SDK libpng - copyright - Copyright (c) 2004, 2006-2013 Glenn Randers-Pehrson - description - PNG Reference library - license - libpng - license_file - LICENSES/libpng.txt - name - libpng platforms darwin64 @@ -1401,21 +1396,21 @@ windows64 + license + libpng + license_file + LICENSES/libpng.txt + copyright + Copyright (c) 2004, 2006-2013 Glenn Randers-Pehrson version 1.6.38-ca06e99 + name + libpng + description + PNG Reference library libuuid - copyright - Copyright (c) 2004-2008 The OSSP Project <http://www.ossp.org/> - description - OSSP uuid is a ISO-C:1999 application programming interface (API) and corresponding command line interface (CLI) for the generation of DCE 1.1, ISO/IEC 11578:1996 and RFC 4122 compliant Universally Unique Identifier (UUID). - license - UUID - license_file - LICENSES/uuid.txt - name - libuuid platforms linux64 @@ -1431,21 +1426,21 @@ linux64 + license + UUID + license_file + LICENSES/uuid.txt + copyright + Copyright (c) 2004-2008 The OSSP Project <http://www.ossp.org/> version 1.6.2 + name + libuuid + description + OSSP uuid is a ISO-C:1999 application programming interface (API) and corresponding command line interface (CLI) for the generation of DCE 1.1, ISO/IEC 11578:1996 and RFC 4122 compliant Universally Unique Identifier (UUID). libxml2 - copyright - Copyright (C) 1998-2012 Daniel Veillard. All Rights Reserved. - description - Libxml2 is the XML C parser and toolkit developed for the Gnome project. - license - mit - license_file - LICENSES/libxml2.txt - name - libxml2 platforms darwin64 @@ -1491,21 +1486,21 @@ windows64 + license + mit + license_file + LICENSES/libxml2.txt + copyright + Copyright (C) 1998-2012 Daniel Veillard. All Rights Reserved. version 2.9.4.7476681 + name + libxml2 + description + Libxml2 is the XML C parser and toolkit developed for the Gnome project. llappearance_utility - copyright - Copyright (c) 2000-2012, Linden Research, Inc. - description - Linden Lab appearance utility for server-side avatar baking services. - license - Proprietary - license_file - LICENSES/llappearanceutility.txt - name - llappearance_utility platforms linux @@ -1521,20 +1516,21 @@ linux + license + Proprietary + license_file + LICENSES/llappearanceutility.txt + copyright + Copyright (c) 2000-2012, Linden Research, Inc. version 0.0.1 + name + llappearance_utility + description + Linden Lab appearance utility for server-side avatar baking services. llca - copyright - Copyright (c) 2016, Linden Research, Inc.; data provided by the Mozilla NSS Project. - - license - mit - license_file - LICENSES/ca-license.txt - name - llca platforms common @@ -1552,19 +1548,20 @@ common + license + mit + license_file + LICENSES/ca-license.txt + copyright + Copyright (c) 2016, Linden Research, Inc.; data provided by the Mozilla NSS Project. + version 202310121530.0 + name + llca llphysicsextensions_source - copyright - Copyright (c) 2010, Linden Research, Inc. - license - internal - license_file - LICENSES/llphysicsextensions.txt - name - llphysicsextensions_source platforms darwin64 @@ -1616,19 +1613,19 @@ windows64 - version - 1.0.479d20a - - llphysicsextensions_stub - - copyright - Copyright (c) 2010, Linden Research, Inc. license internal license_file LICENSES/llphysicsextensions.txt + copyright + Copyright (c) 2010, Linden Research, Inc. + version + 1.0.479d20a name - llphysicsextensions_stub + llphysicsextensions_source + + llphysicsextensions_stub + platforms darwin64 @@ -1656,19 +1653,19 @@ linux64 - version - 1.0.542456 - - llphysicsextensions_tpv - - copyright - Copyright (c) 2010, Linden Research, Inc. license internal license_file - LICENSES/HavokSublicense.pdf + LICENSES/llphysicsextensions.txt + copyright + Copyright (c) 2010, Linden Research, Inc. + version + 1.0.542456 name - llphysicsextensions_tpv + llphysicsextensions_stub + + llphysicsextensions_tpv + platforms darwin64 @@ -1708,17 +1705,19 @@ windows + license + internal + license_file + LICENSES/HavokSublicense.pdf + copyright + Copyright (c) 2010, Linden Research, Inc. version 1.0.561752 + name + llphysicsextensions_tpv mesa - license - mesa - license_file - LICENSES/mesa.txt - name - mesa platforms linux @@ -1734,23 +1733,17 @@ linux + license + mesa + license_file + LICENSES/mesa.txt version 7.11.1.297294 + name + mesa meshoptimizer - canonical_repo - https://bitbucket.org/lindenlab/3p-meshoptimizer - copyright - Copyright (c) 2016-2021 Arseny Kapoulkine - description - Meshoptimizer. Mesh optimization library. - license - meshoptimizer - license_file - LICENSES/meshoptimizer.txt - name - meshoptimizer platforms darwin64 @@ -1782,23 +1775,23 @@ windows64 + license + meshoptimizer + license_file + LICENSES/meshoptimizer.txt + copyright + Copyright (c) 2016-2021 Arseny Kapoulkine version 160 + name + meshoptimizer + canonical_repo + https://bitbucket.org/lindenlab/3p-meshoptimizer + description + Meshoptimizer. Mesh optimization library. mikktspace - canonical_repo - https://bitbucket.org/lindenlab/3p-mikktspace - copyright - Copyright (C) 2011 by Morten S. Mikkelsen - description - Mikktspace Tangent Generator - license - Copyright (C) 2011 by Morten S. Mikkelsen - license_file - mikktspace.txt - name - mikktspace platforms darwin64 @@ -1815,20 +1808,6 @@ name darwin64 - linux64 - - archive - - hash - edc9782bf209e17ad1845498b42f16d733582082 - hash_algorithm - sha1 - url - https://github.com/secondlife/3p-mikktspace/releases/download/v1-5cee1f4/mikktspace-1-linux64-5cee1f4.tar.zst - - name - linux64 - windows64 archive @@ -1843,24 +1822,38 @@ name windows64 + linux64 + + archive + + hash + edc9782bf209e17ad1845498b42f16d733582082 + hash_algorithm + sha1 + url + https://github.com/secondlife/3p-mikktspace/releases/download/v1-5cee1f4/mikktspace-1-linux64-5cee1f4.tar.zst + + name + linux64 + + license + Copyright (C) 2011 by Morten S. Mikkelsen + license_file + mikktspace.txt + copyright + Copyright (C) 2011 by Morten S. Mikkelsen version 1 + name + mikktspace + canonical_repo + https://bitbucket.org/lindenlab/3p-mikktspace + description + Mikktspace Tangent Generator minizip-ng - canonical_repo - https://bitbucket.org/lindenlab/3p-minizip-ng - copyright - This project uses the zlib license. Copyright (C) 1995-2013 Jean-loup Gailly and Mark Adler - description - minizip-ng is a zip manipulation library. Based on work of Gilles Vollant. - license - minizip-ng - license_file - LICENSES/minizip-ng.txt - name - minizip-ng platforms darwin64 @@ -1906,8 +1899,20 @@ windows64 + license + minizip-ng + license_file + LICENSES/minizip-ng.txt + copyright + This project uses the zlib license. Copyright (C) 1995-2013 Jean-loup Gailly and Mark Adler version 3.0.2.3e9876e + name + minizip-ng + canonical_repo + https://bitbucket.org/lindenlab/3p-minizip-ng + description + minizip-ng is a zip manipulation library. Based on work of Gilles Vollant. nanosvg @@ -1967,17 +1972,6 @@ nghttp2 - copyright - Copyright (c) 2012, 2014, 2015, 2016 Tatsuhiro Tsujikawa -Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors - description - Library providing HTTP 2 support for libcurl - license - MIT - license_file - LICENSES/nghttp2.txt - name - nghttp2 platforms darwin64 @@ -2023,23 +2017,24 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 - source_type - hg + license + MIT + license_file + LICENSES/nghttp2.txt + copyright + Copyright (c) 2012, 2014, 2015, 2016 Tatsuhiro Tsujikawa +Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors version 1.40.0.b1526c6 + name + nghttp2 + description + Library providing HTTP 2 support for libcurl + source_type + hg nvapi - copyright - Copyright © 2012 NVIDIA Corporation. All rights reserved. - description - NVAPI provides an interface to NVIDIA devices. - license - NVIDIA Corporation Software License Agreement – NVAPI SDK - license_file - LICENSES/NVAPI_SDK_License_Agreement.pdf - name - nvapi platforms windows64 @@ -2057,21 +2052,21 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 + license + NVIDIA Corporation Software License Agreement – NVAPI SDK + license_file + LICENSES/NVAPI_SDK_License_Agreement.pdf + copyright + Copyright © 2012 NVIDIA Corporation. All rights reserved. version 352.aac0e19 + name + nvapi + description + NVAPI provides an interface to NVIDIA devices. ogg_vorbis - copyright - Copyright (c) 2002, Xiph.org Foundation - description - Audio encoding library - license - ogg-vorbis - license_file - LICENSES/ogg-vorbis.txt - name - ogg_vorbis platforms darwin64 @@ -2115,52 +2110,38 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 + license + ogg-vorbis + license_file + LICENSES/ogg-vorbis.txt + copyright + Copyright (c) 2002, Xiph.org Foundation version 1.3.3-1.3.6.e4101b6 + name + ogg_vorbis + description + Audio encoding library open-libndofdev - copyright - Copyright (c) 2008, Jan Ciger (jan.ciger (at) gmail.com) - description - Open Source replacement for 3DConnection SDK license BSD license_file LICENSES/libndofdev.txt - name - open-libndofdev + copyright + Copyright (c) 2008, Jan Ciger (jan.ciger (at) gmail.com) version 0.3 + name + open-libndofdev + description + Open Source replacement for 3DConnection SDK openal - copyright - Copyright (C) 1999-2007 by authors. - description - OpenAL Soft is a software implementation of the OpenAL 3D audio API. - license - LGPL2 - license_file - LICENSES/openal-soft.txt - name - openal platforms - darwin64 - - archive - - hash - 4edaef5f03a1122eae8467c4a04d9caccaaaf847 - hash_algorithm - sha1 - url - https://github.com/secondlife/3p-openal-soft/releases/download/v1.23.1-18e315c/openal-1.23.1-darwin64-18e315c.tar.zst - - name - darwin64 - linux64 archive @@ -2189,9 +2170,33 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors name windows64 + darwin64 + + archive + + hash + 4edaef5f03a1122eae8467c4a04d9caccaaaf847 + hash_algorithm + sha1 + url + https://github.com/secondlife/3p-openal-soft/releases/download/v1.23.1-18e315c/openal-1.23.1-darwin64-18e315c.tar.zst + + name + darwin64 + + license + LGPL2 + license_file + LICENSES/openal-soft.txt + copyright + Copyright (C) 1999-2007 by authors. version 1.23.1 + name + openal + description + OpenAL Soft is a software implementation of the OpenAL 3D audio API. openexr @@ -2214,39 +2219,25 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors archive hash - 17cd63922214b588d9a36137fadf927237ec0f25 + 158cbe79bef4ecafb870052bbaca541e07107228 hash_algorithm sha1 url - https://github.com/secondlife/3p-openexr/releases/download/v1.10/openexr-3.2.2-darwin64-df7544d.tar.zst + https://github.com/secondlife/3p-openexr/releases/download/v1.8/openexr-3.2.2-darwin64-6501c65.tar.zst name darwin64 - linux64 - - archive - - hash - b092658ab5ec009a5875e8b6e5b7109730ad6846 - hash_algorithm - sha1 - url - https://github.com/secondlife/3p-openexr/releases/download/v1.10/openexr-3.2.2-linux64-df7544d.tar.zst - - name - linux64 - windows64 archive hash - c511ae9a3e401375af2199b498a75f32cebc010f + 924f6ddf6669af023d1f3832cb79b50b913ae0ca hash_algorithm sha1 url - https://github.com/secondlife/3p-openexr/releases/download/v1.10/openexr-3.2.2-windows64-df7544d.tar.zst + https://github.com/secondlife/3p-openexr/releases/download/v1.8/openexr-3.2.2-windows64-6501c65.tar.zst name windows64 @@ -2265,16 +2256,6 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors openjpeg - copyright - Copyright (c) 2002-2007, Communications and Remote Sensing Laboratory, Universite catholique de Louvain (UCL), Belgium; Copyright (c) 2002-2007, Professor Benoit Macq; Copyright (c) 2001-2003, David Janssens; Copyright (c) 2002-2003, Yannick Verschueren; Copyright (c) 2003-2007, Francois-Olivier Devaux and Antonin Descampe; Copyright (c) 2005, Herve Drolon, FreeImage Team; Copyright (c) 2006-2007, Parvatha Elangovan; Copyright (c) 2008, Jerome Fimes, Communications & Systemes <jerome.fimes@c-s.fr>; Copyright (c) 2010-2011, Kaori Hagihara; Copyright (c) 2011-2012, Centre National d'Etudes Spatiales (CNES), France; Copyright (c) 2012, CS Systemes d'Information, France; - description - The OpenJPEG library is an open-source JPEG 2000 codec written in C language. - license - BSD - license_file - LICENSES/openjpeg.txt - name - openjpeg platforms darwin64 @@ -2320,21 +2301,21 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 + license + BSD + license_file + LICENSES/openjpeg.txt + copyright + Copyright (c) 2002-2007, Communications and Remote Sensing Laboratory, Universite catholique de Louvain (UCL), Belgium; Copyright (c) 2002-2007, Professor Benoit Macq; Copyright (c) 2001-2003, David Janssens; Copyright (c) 2002-2003, Yannick Verschueren; Copyright (c) 2003-2007, Francois-Olivier Devaux and Antonin Descampe; Copyright (c) 2005, Herve Drolon, FreeImage Team; Copyright (c) 2006-2007, Parvatha Elangovan; Copyright (c) 2008, Jerome Fimes, Communications & Systemes <jerome.fimes@c-s.fr>; Copyright (c) 2010-2011, Kaori Hagihara; Copyright (c) 2011-2012, Centre National d'Etudes Spatiales (CNES), France; Copyright (c) 2012, CS Systemes d'Information, France; version 2.5.0.ea12248 + name + openjpeg + description + The OpenJPEG library is an open-source JPEG 2000 codec written in C language. openssl - copyright - Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved; Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) - description - Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) Library - license - openssl - license_file - LICENSES/openssl.txt - name - openssl platforms darwin64 @@ -2380,21 +2361,21 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 + license + openssl + license_file + LICENSES/openssl.txt + copyright + Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved; Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) version 1.1.1q.de53f55 + name + openssl + description + Secure Sockets Layer (SSL v2/v3) and Transport Layer Security (TLS v1) Library pcre - copyright - Copyright (c) 1997-2014 University of Cambridge; Copyright(c) 2009-2014 Zoltan Herczeg; Copyright (c) 2007-2012, Google Inc. - description - PCRE Perl-compatible regular expression library - license - bsd - license_file - LICENSES/pcre-license.txt - name - pcre platforms darwin64 @@ -2438,21 +2419,21 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 + license + bsd + license_file + LICENSES/pcre-license.txt + copyright + Copyright (c) 1997-2014 University of Cambridge; Copyright(c) 2009-2014 Zoltan Herczeg; Copyright (c) 2007-2012, Google Inc. version 8.35.979fd86 + name + pcre + description + PCRE Perl-compatible regular expression library slvoice - copyright - 2010 Vivox, including audio coding using Polycom¨ Siren14TM (ITU-T Rec. G.722.1 Annex C) - description - Vivox SDK components - license - Mixed - license_file - LICENSES/vivox_licenses.txt - name - slvoice platforms darwin64 @@ -2500,19 +2481,21 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 + license + Mixed + license_file + LICENSES/vivox_licenses.txt + copyright + 2010 Vivox, including audio coding using Polycom¨ Siren14TM (ITU-T Rec. G.722.1 Annex C) version 4.10.0000.32327.5fc3fe7c.571099 + name + slvoice + description + Vivox SDK components threejs - copyright - Copyright © 2010-2021 three.js authors - license - MIT - license_file - LICENSES/THREEJS_LICENSE.txt - name - threejs platforms darwin64 @@ -2556,23 +2539,19 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 - version - 0.132.2 - - tinygltf - - canonical_repo - https://bitbucket.org/lindenlab/3p-tinygltf - copyright - // Copyright (c) 2015 - Present Syoyo Fujita, Aurélien Chatelain and many contributors. - description - tinygltf import library license MIT license_file - LICENSES/tinygltf_license.txt + LICENSES/THREEJS_LICENSE.txt + copyright + Copyright © 2010-2021 three.js authors + version + 0.132.2 name - tinygltf + threejs + + tinygltf + platforms common @@ -2590,27 +2569,27 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors common + license + MIT + license_file + LICENSES/tinygltf_license.txt + copyright + // Copyright (c) 2015 - Present Syoyo Fujita, Aurélien Chatelain and many contributors. + version + v2.5.0 + name + tinygltf + canonical_repo + https://bitbucket.org/lindenlab/3p-tinygltf + description + tinygltf import library source https://bitbucket.org/lindenlab/3p-tinygltf source_type git - version - v2.5.0 tracy - canonical_repo - https://bitbucket.org/lindenlab/3p-tracy - copyright - Copyright (c) 2017-2022, Bartosz Taudul (wolf@nereid.pl) - description - Tracy Profiler Library - license - bsd - license_file - LICENSES/tracy_license.txt - name - tracy platforms darwin64 @@ -2642,25 +2621,27 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 + license + bsd + license_file + LICENSES/tracy_license.txt + copyright + Copyright (c) 2017-2022, Bartosz Taudul (wolf@nereid.pl) + version + v0.8.1-eecbf72 + name + tracy + canonical_repo + https://bitbucket.org/lindenlab/3p-tracy + description + Tracy Profiler Library source https://bitbucket.org/lindenlab/3p-tracy source_type git - version - v0.8.1-eecbf72 tut - copyright - Copyright 2002-2006 Vladimir Dyuzhev, Copyright 2007 Denis Kononenko, Copyright 2008-2009 Michał Rzechonek - description - TUT is a small and portable unit test framework for C++. - license - bsd - license_file - LICENSES/tut.txt - name - tut platforms common @@ -2678,21 +2659,21 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors common + license + bsd + license_file + LICENSES/tut.txt + copyright + Copyright 2002-2006 Vladimir Dyuzhev, Copyright 2007 Denis Kononenko, Copyright 2008-2009 Michał Rzechonek version 2008.11.30 + name + tut + description + TUT is a small and portable unit test framework for C++. uriparser - copyright - Copyright (C) 2007, Weijia Song <songweijia@gmail.com>, Sebastian Pipping <webmaster@hartwork.org> - description - uriparser is a strictly RFC 3986 compliant URI parsing and handling library written in C. uriparser is cross-platform, fast, supports Unicode and is licensed under the New BSD license. - license - New BSD license - license_file - LICENSES/uriparser.txt - name - uriparser platforms darwin64 @@ -2738,8 +2719,18 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 + license + New BSD license + license_file + LICENSES/uriparser.txt + copyright + Copyright (C) 2007, Weijia Song <songweijia@gmail.com>, Sebastian Pipping <webmaster@hartwork.org> version 0.9.4 + name + uriparser + description + uriparser is a strictly RFC 3986 compliant URI parsing and handling library written in C. uriparser is cross-platform, fast, supports Unicode and is licensed under the New BSD license. viewer-fonts @@ -2785,16 +2776,6 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors viewer-manager - copyright - Copyright (c) 2000-2012, Linden Research, Inc. - description - Linden Lab Viewer Management Process suite. - license - viewerlgpl - license_file - LICENSE - name - viewer-manager platforms darwin64 @@ -2840,23 +2821,25 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 + license + viewerlgpl + license_file + LICENSE + copyright + Copyright (c) 2000-2012, Linden Research, Inc. + version + 3.0-08bf5ee + name + viewer-manager + description + Linden Lab Viewer Management Process suite. source https://bitbucket.org/lindenlab/vmp-standalone source_type hg - version - 3.0-08bf5ee vlc-bin - copyright - Copyright (C) 1998-2016 VLC authors and VideoLAN - license - GPL2 - license_file - LICENSES/vlc.txt - name - vlc-bin platforms darwin64 @@ -2888,55 +2871,19 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 + license + GPL2 + license_file + LICENSES/vlc.txt + copyright + Copyright (C) 1998-2016 VLC authors and VideoLAN version 3.0.16.c219a5d - - vulkan_gltf - - canonical_repo - https://bitbucket.org/lindenlab/3p-vulkan-gltf-pbr - copyright - Copyright (c) 2018 Sascha Willems - description - Vulkan GLTF Sample Implementation - license - Copyright (c) 2018 Sascha Willems - license_file - vulkan_gltf.txt name - vulkan_gltf - platforms - - common - - archive - - hash - 8e365eff8dcace48d91e2530f8b13e420849aefc - hash_algorithm - sha1 - url - https://github.com/secondlife/3p-vulkan-gltf-pbr/releases/download/v1.0.0-d7c372f/vulkan_gltf-1.0.0-common-d7c372f.tar.zst - - name - common - - - version - 1.0.0 + vlc-bin xmlrpc-epi - copyright - Copyright: (C) 2000 Epinions, Inc. - description - XMLRPC Library - license - xmlrpc-epi - license_file - LICENSES/xmlrpc-epi.txt - name - xmlrpc-epi platforms darwin64 @@ -2982,21 +2929,55 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 + license + xmlrpc-epi + license_file + LICENSES/xmlrpc-epi.txt + copyright + Copyright: (C) 2000 Epinions, Inc. version 0.54.1.8a05acf + name + xmlrpc-epi + description + XMLRPC Library + + vulkan_gltf + + platforms + + common + + archive + + hash + 8e365eff8dcace48d91e2530f8b13e420849aefc + hash_algorithm + sha1 + url + https://github.com/secondlife/3p-vulkan-gltf-pbr/releases/download/v1.0.0-d7c372f/vulkan_gltf-1.0.0-common-d7c372f.tar.zst + + name + common + + + license + Copyright (c) 2018 Sascha Willems + license_file + vulkan_gltf.txt + copyright + Copyright (c) 2018 Sascha Willems + version + 1.0.0 + name + vulkan_gltf + canonical_repo + https://bitbucket.org/lindenlab/3p-vulkan-gltf-pbr + description + Vulkan GLTF Sample Implementation xxhash - copyright - Copyright (c) 2012-2021 Yann Collet - description - xxHash Library - license - xxhash - license_file - LICENSES/xxhash.txt - name - xxhash platforms common @@ -3014,23 +2995,21 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors common + license + xxhash + license_file + LICENSES/xxhash.txt + copyright + Copyright (c) 2012-2021 Yann Collet version 0.8.1-69ff69a + name + xxhash + description + xxHash Library zlib-ng - canonical_repo - https://bitbucket.org/lindenlab/3p-zlib-ng - copyright - Copyright (C) 1995-2013 Jean-loup Gailly and Mark Adler - description - zlib data compression library for the next generation systems - license - zlib-ng - license_file - LICENSES/zlib-ng.txt - name - zlib-ng platforms darwin64 @@ -3076,24 +3055,24 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors windows64 + license + zlib-ng + license_file + LICENSES/zlib-ng.txt + copyright + Copyright (C) 1995-2013 Jean-loup Gailly and Mark Adler version 1.2.11.zlib-ng.32fd361 + name + zlib-ng + canonical_repo + https://bitbucket.org/lindenlab/3p-zlib-ng + description + zlib data compression library for the next generation systems package_description - canonical_repo - https://github.com/secondlife/viewer - copyright - Copyright (c) 2020, Linden Research, Inc. - description - Second Life Viewer - license - LGPL - license_file - docs/LICENSE-source.txt - name - Second Life Viewer platforms common @@ -3102,9 +3081,6 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors RelWithDebInfo - build - - configure command @@ -3117,6 +3093,9 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors -DINSTALL_PROPRIETARY=TRUE + build + + name RelWithDebInfo @@ -3124,10 +3103,6 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors configure - arguments - - ../indra - command cmake options @@ -3137,15 +3112,16 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors -DROOT_PROJECT_NAME:STRING=SecondLife -DINSTALL_PROPRIETARY=FALSE + arguments + + ../indra + name RelWithDebInfoOS Release - build - - configure command @@ -3158,6 +3134,9 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors -DINSTALL_PROPRIETARY=TRUE + build + + name Release @@ -3165,10 +3144,6 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors configure - arguments - - ../indra - command cmake options @@ -3178,6 +3153,10 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors -DROOT_PROJECT_NAME:STRING=SecondLife -DINSTALL_PROPRIETARY=FALSE + arguments + + ../indra + name ReleaseOS @@ -3188,12 +3167,22 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors darwin64 - build_directory - build-darwin-x86_64 configurations RelWithDebInfo + configure + + options + + -G + Xcode + + arguments + + ../indra + + build command @@ -3207,18 +3196,6 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors -parallelizeTargets - configure - - arguments - - ../indra - - options - - -G - Xcode - - default True name @@ -3226,6 +3203,14 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors RelWithDebInfoOS + configure + + options + + -G + Xcode + + build command @@ -3239,6 +3224,11 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors -parallelizeTargets + name + RelWithDebInfoOS + + Release + configure options @@ -3246,12 +3236,11 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors -G Xcode + arguments + + ../indra + - name - RelWithDebInfoOS - - Release - build command @@ -3265,23 +3254,19 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors -parallelizeTargets - configure - - arguments - - ../indra - - options - - -G - Xcode - - name Release ReleaseOS + configure + + options + + -G + Xcode + + build command @@ -3295,46 +3280,38 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors -parallelizeTargets - configure - - options - - -G - Xcode - - name ReleaseOS + build_directory + build-darwin-x86_64 name darwin64 linux64 - build_directory - build-linux-x86_64 configurations Release - build - - command - ninja - configure - arguments - - ../indra - options -G Ninja -DLL_TESTS=Off + arguments + + ../indra + + + build + + command + ninja default True @@ -3343,11 +3320,6 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors ReleaseOS - build - - command - ninja - configure options @@ -3357,6 +3329,11 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors -DLL_TESTS=Off + build + + command + ninja + name ReleaseOS @@ -3369,23 +3346,33 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors default + build_directory + build-linux-x86_64 name linux64 windows - build_directory - build-vc${AUTOBUILD_VSVER|170}-$AUTOBUILD_ADDRSIZE configurations RelWithDebInfo - build + configure + options + + -G + ${AUTOBUILD_WIN_CMAKE_GEN|NOTWIN} + -A + ${AUTOBUILD_WIN_VSPLATFORM|NOTWIN} + arguments - SecondLife.sln + ..\indra + + build + command devenv options @@ -3393,19 +3380,9 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors /build RelWithDebInfo|${AUTOBUILD_WIN_VSPLATFORM|NOTWIN} - - configure - arguments - ..\indra - - options - - -G - ${AUTOBUILD_WIN_CMAKE_GEN|NOTWIN} - -A - ${AUTOBUILD_WIN_VSPLATFORM|NOTWIN} + SecondLife.sln default @@ -3415,12 +3392,25 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors RelWithDebInfoOS - build + configure + options + + -G + ${AUTOBUILD_WIN_CMAKE_GEN|NOTWIN} + -A + ${AUTOBUILD_WIN_VSPLATFORM|NOTWIN} + -DINSTALL_PROPRIETARY=FALSE + -DUSE_KDU=FALSE + -DUSE_OPENAL:BOOL=ON + arguments - SecondLife.sln + ..\indra + + build + command msbuild.exe options @@ -3432,22 +3422,9 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors /verbosity:minimal /p:VCBuildAdditionalOptions= /incremental - - configure - arguments - ..\indra - - options - - -G - ${AUTOBUILD_WIN_CMAKE_GEN|NOTWIN} - -A - ${AUTOBUILD_WIN_VSPLATFORM|NOTWIN} - -DINSTALL_PROPRIETARY=FALSE - -DUSE_KDU=FALSE - -DUSE_OPENAL:BOOL=ON + SecondLife.sln name @@ -3455,26 +3432,8 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors Release - build - - arguments - - SecondLife.sln - - command - devenv - options - - /build - Release|${AUTOBUILD_WIN_VSPLATFORM|NOTWIN} - - configure - arguments - - ..\indra - options -G @@ -3482,36 +3441,32 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors -A ${AUTOBUILD_WIN_VSPLATFORM|NOTWIN} + arguments + + ..\indra + + + build + + command + devenv + options + + /build + Release|${AUTOBUILD_WIN_VSPLATFORM|NOTWIN} + + arguments + + SecondLife.sln + name Release ReleaseOS - build - - arguments - - SecondLife.sln - - command - msbuild.exe - options - - /p:Configuration=Release - /p:Platform=${AUTOBUILD_WIN_VSPLATFORM|NOTWIN} - /t:Build - /p:useenv=true - /verbosity:minimal - /p:VCBuildAdditionalOptions= /incremental - - configure - arguments - - ..\indra - options -G @@ -3523,20 +3478,53 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors -DUSE_KDU=FALSE -DUSE_OPENAL:BOOL=ON + arguments + + ..\indra + + + build + + command + msbuild.exe + options + + /p:Configuration=Release + /p:Platform=${AUTOBUILD_WIN_VSPLATFORM|NOTWIN} + /t:Build + /p:useenv=true + /verbosity:minimal + /p:VCBuildAdditionalOptions= /incremental + + arguments + + SecondLife.sln + name ReleaseOS + build_directory + build-vc${AUTOBUILD_VSVER|170}-$AUTOBUILD_ADDRSIZE name windows + license + LGPL + license_file + docs/LICENSE-source.txt + copyright + Copyright (c) 2020, Linden Research, Inc. version_file newview/viewer_version.txt + name + Second Life Viewer + canonical_repo + https://github.com/secondlife/viewer + description + Second Life Viewer - type - autobuild - version - 1.3 - + + From 4c3d090bf425ea81de4e308e1a8b46d78f646eb7 Mon Sep 17 00:00:00 2001 From: RunitaiLinden Date: Wed, 13 Mar 2024 14:47:31 -0500 Subject: [PATCH 19/24] #926 Unshuffle autobuild.xml --- autobuild.xml | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/autobuild.xml b/autobuild.xml index f0038f6532..94a9f8fb9b 100644 --- a/autobuild.xml +++ b/autobuild.xml @@ -2219,25 +2219,39 @@ Copyright (c) 2012, 2014, 2015, 2016 nghttp2 contributors archive hash - 158cbe79bef4ecafb870052bbaca541e07107228 + 17cd63922214b588d9a36137fadf927237ec0f25 hash_algorithm sha1 url - https://github.com/secondlife/3p-openexr/releases/download/v1.8/openexr-3.2.2-darwin64-6501c65.tar.zst + https://github.com/secondlife/3p-openexr/releases/download/v1.10/openexr-3.2.2-darwin64-df7544d.tar.zst name darwin64 + linux64 + + archive + + hash + b092658ab5ec009a5875e8b6e5b7109730ad6846 + hash_algorithm + sha1 + url + https://github.com/secondlife/3p-openexr/releases/download/v1.10/openexr-3.2.2-linux64-df7544d.tar.zst + + name + linux64 + windows64 archive hash - 924f6ddf6669af023d1f3832cb79b50b913ae0ca + c511ae9a3e401375af2199b498a75f32cebc010f hash_algorithm sha1 url - https://github.com/secondlife/3p-openexr/releases/download/v1.8/openexr-3.2.2-windows64-6501c65.tar.zst + https://github.com/secondlife/3p-openexr/releases/download/v1.10/openexr-3.2.2-windows64-df7544d.tar.zst name windows64 From e42297fb1982a26ce23df14193e314aaa5a431b4 Mon Sep 17 00:00:00 2001 From: Cosmic Linden Date: Wed, 13 Mar 2024 16:11:49 -0700 Subject: [PATCH 20/24] secondlife/viewer#76: Change wording of terrain blending documentation when using materials --- indra/newview/llfloaterregioninfo.cpp | 13 +++++++ .../default/xui/en/panel_region_terrain.xml | 37 +++++++++++++++++++ 2 files changed, 50 insertions(+) diff --git a/indra/newview/llfloaterregioninfo.cpp b/indra/newview/llfloaterregioninfo.cpp index 454842999d..6ad776643d 100644 --- a/indra/newview/llfloaterregioninfo.cpp +++ b/indra/newview/llfloaterregioninfo.cpp @@ -1479,6 +1479,19 @@ void LLPanelRegionTerrainInfo::updateForMaterialType() if (texture_label) { texture_label->setVisible(show_texture_controls); } LLUICtrl* material_label = findChild("detail_material_text"); if (material_label) { material_label->setVisible(show_material_controls); } + + // Toggle visibility of documentation labels for terrain blending ranges + const std::vector doc_suffixes { "5", "10", "11" }; + std::string buffer; + for (const std::string& suffix : doc_suffixes) + { + buffer = "height_text_lbl" + suffix; + LLUICtrl* texture_doc_label = findChild(buffer); + if (texture_doc_label) { texture_doc_label->setVisible(show_texture_controls); } + buffer += "_material"; + LLUICtrl* material_doc_label = findChild(buffer); + if (material_doc_label) { material_doc_label->setVisible(show_material_controls); } + } } // virtual diff --git a/indra/newview/skins/default/xui/en/panel_region_terrain.xml b/indra/newview/skins/default/xui/en/panel_region_terrain.xml index f8d2c90d0a..38d885d72d 100644 --- a/indra/newview/skins/default/xui/en/panel_region_terrain.xml +++ b/indra/newview/skins/default/xui/en/panel_region_terrain.xml @@ -257,6 +257,19 @@ width="300"> Texture Elevation Ranges + + Material Elevation Ranges + These values represent the blend range for the textures above. + + These values represent the blend range for the materials above. + Measured in meters, the LOW value is the MAXIMUM height of Texture #1, and the HIGH value is the MINIMUM height of Texture #4. + + Measured in meters, the LOW value is the MAXIMUM height of Material #1, and the HIGH value is the MINIMUM height of Material #4. + Date: Wed, 13 Mar 2024 16:18:19 -0700 Subject: [PATCH 21/24] secondlife/viewer#76: Update test plan to specify that terrain composition labels should match the current context --- doc/testplans/pbr_terrain_composition.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/doc/testplans/pbr_terrain_composition.md b/doc/testplans/pbr_terrain_composition.md index 127fe950a8..524583aa7a 100644 --- a/doc/testplans/pbr_terrain_composition.md +++ b/doc/testplans/pbr_terrain_composition.md @@ -29,6 +29,8 @@ When the Region/Estate floater is opened to the terrain Tab, the current terrain - If it is texture terrain, the "PBR Metallic Roughness" checkbox should be unchecked, and the floater should display the four textures applied to the terrain. - If it is material terrain, the "PBR Metallic Roughness" checkbox should be checked, and the floater should display the four materials applied to the terrain. +In addition, where possible, textual labels and descriptions in the tab should make sense given the current value of the "PBR Metallic Roughness" checkbox. If the checkbox is unchecked, the labels should refer to textures. If the checkbox is checked, the labels should refer to materials. + ### Toggling Composition Type When toggling the "PBR Metallic Roughness" checkbox to the opposite value, which does not correspond to the current terrain type, one of the following sets of four terrain swatches will be displayed: From 16654c0bd825a103dc71782dfd0a0555ac63e61e Mon Sep 17 00:00:00 2001 From: Cosmic Linden Date: Wed, 13 Mar 2024 17:06:07 -0700 Subject: [PATCH 22/24] secondlife/viewer#988: Fix terrain composition label getting cut off --- indra/newview/skins/default/xui/de/panel_region_terrain.xml | 2 +- indra/newview/skins/default/xui/es/panel_region_terrain.xml | 2 +- indra/newview/skins/default/xui/fr/panel_region_terrain.xml | 2 +- indra/newview/skins/default/xui/it/panel_region_terrain.xml | 2 +- indra/newview/skins/default/xui/ja/panel_region_terrain.xml | 2 +- indra/newview/skins/default/xui/pl/panel_region_terrain.xml | 2 +- indra/newview/skins/default/xui/pt/panel_region_terrain.xml | 2 +- indra/newview/skins/default/xui/ru/panel_region_terrain.xml | 2 +- indra/newview/skins/default/xui/tr/panel_region_terrain.xml | 2 +- indra/newview/skins/default/xui/zh/panel_region_terrain.xml | 2 +- 10 files changed, 10 insertions(+), 10 deletions(-) diff --git a/indra/newview/skins/default/xui/de/panel_region_terrain.xml b/indra/newview/skins/default/xui/de/panel_region_terrain.xml index 42ba5b5269..7738427fe3 100644 --- a/indra/newview/skins/default/xui/de/panel_region_terrain.xml +++ b/indra/newview/skins/default/xui/de/panel_region_terrain.xml @@ -10,7 +10,7 @@ - Terraintexturen (erfordert 24-Bit-.tga-Dateien mit einer Größe von 1024x1024) + Terraintexturen 1 (niedrig) diff --git a/indra/newview/skins/default/xui/es/panel_region_terrain.xml b/indra/newview/skins/default/xui/es/panel_region_terrain.xml index 9aba5299cb..5e6e89893e 100644 --- a/indra/newview/skins/default/xui/es/panel_region_terrain.xml +++ b/indra/newview/skins/default/xui/es/panel_region_terrain.xml @@ -12,7 +12,7 @@ del terreno" name="terrain_raise_spin"/> - Texturas del terreno (requiere archivos .tga de 1024x1024, 24 bits) + Texturas del terreno 1 (bajo) diff --git a/indra/newview/skins/default/xui/fr/panel_region_terrain.xml b/indra/newview/skins/default/xui/fr/panel_region_terrain.xml index bbab00ca24..d99948804a 100644 --- a/indra/newview/skins/default/xui/fr/panel_region_terrain.xml +++ b/indra/newview/skins/default/xui/fr/panel_region_terrain.xml @@ -12,7 +12,7 @@ terrain" name="terrain_raise_spin"/> - Textures du terrain (fichiers .tga 1024 x 1024, 24 bit requis) + Textures du terrain 1 (Bas) diff --git a/indra/newview/skins/default/xui/it/panel_region_terrain.xml b/indra/newview/skins/default/xui/it/panel_region_terrain.xml index e08c55f63b..0583b4e02e 100644 --- a/indra/newview/skins/default/xui/it/panel_region_terrain.xml +++ b/indra/newview/skins/default/xui/it/panel_region_terrain.xml @@ -12,7 +12,7 @@ terreno" name="terrain_raise_spin"/> - Texture terreno (richiede file 1024x1024, 24 bit .tga) + Texture terreno 1 (basso) diff --git a/indra/newview/skins/default/xui/ja/panel_region_terrain.xml b/indra/newview/skins/default/xui/ja/panel_region_terrain.xml index 5470bd6e3b..11e8d0d169 100644 --- a/indra/newview/skins/default/xui/ja/panel_region_terrain.xml +++ b/indra/newview/skins/default/xui/ja/panel_region_terrain.xml @@ -10,7 +10,7 @@ - 地形テクスチャ(1024✕1024 の 24 bit .tga ファイル) + 地形テクスチャ 1(低) diff --git a/indra/newview/skins/default/xui/pl/panel_region_terrain.xml b/indra/newview/skins/default/xui/pl/panel_region_terrain.xml index 2d4286334f..c1dde04ff0 100644 --- a/indra/newview/skins/default/xui/pl/panel_region_terrain.xml +++ b/indra/newview/skins/default/xui/pl/panel_region_terrain.xml @@ -7,7 +7,7 @@ - Tekstury terenu (1024x1024, 24 bitowy plik .tga) + Tekstury terenu 1 (Nisko) diff --git a/indra/newview/skins/default/xui/pt/panel_region_terrain.xml b/indra/newview/skins/default/xui/pt/panel_region_terrain.xml index 1d312aeed9..92d6859882 100644 --- a/indra/newview/skins/default/xui/pt/panel_region_terrain.xml +++ b/indra/newview/skins/default/xui/pt/panel_region_terrain.xml @@ -12,7 +12,7 @@ terreno" name="terrain_raise_spin"/> - Texturas de terreno (exige arquivos .tga 1024x1024, 24 bit) + Texturas de terreno 1 (Baixo) diff --git a/indra/newview/skins/default/xui/ru/panel_region_terrain.xml b/indra/newview/skins/default/xui/ru/panel_region_terrain.xml index 76b4f513a8..2752d409cb 100644 --- a/indra/newview/skins/default/xui/ru/panel_region_terrain.xml +++ b/indra/newview/skins/default/xui/ru/panel_region_terrain.xml @@ -10,7 +10,7 @@ - Текстуры ландшафта (требования: 1024x1024, 24-битные, TGA) + Текстуры ландшафта 1 (Низ) diff --git a/indra/newview/skins/default/xui/tr/panel_region_terrain.xml b/indra/newview/skins/default/xui/tr/panel_region_terrain.xml index e25047301d..00560d4c5b 100644 --- a/indra/newview/skins/default/xui/tr/panel_region_terrain.xml +++ b/indra/newview/skins/default/xui/tr/panel_region_terrain.xml @@ -10,7 +10,7 @@ - Yüzey Dokuları (1024x1024, 24 bit .tga dosyalar gerektirir) + Yüzey Dokuları 1 (Düşük) diff --git a/indra/newview/skins/default/xui/zh/panel_region_terrain.xml b/indra/newview/skins/default/xui/zh/panel_region_terrain.xml index 81bce46876..8490eeaafc 100644 --- a/indra/newview/skins/default/xui/zh/panel_region_terrain.xml +++ b/indra/newview/skins/default/xui/zh/panel_region_terrain.xml @@ -10,7 +10,7 @@ - 地形材質(須 1024x1024,24 位元 .tga 檔格式) + 地形材質 1(低) From cb1b23d8bf72a0e2fe0fff8b430cf144501ca586 Mon Sep 17 00:00:00 2001 From: Cosmic Linden Date: Fri, 15 Mar 2024 10:45:53 -0700 Subject: [PATCH 23/24] secondlife/viewer#760: Fix terrain texture validator not respecting RenderMaxTextureResolution --- indra/newview/llfloaterregioninfo.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/indra/newview/llfloaterregioninfo.cpp b/indra/newview/llfloaterregioninfo.cpp index 6ad776643d..5de11d6699 100644 --- a/indra/newview/llfloaterregioninfo.cpp +++ b/indra/newview/llfloaterregioninfo.cpp @@ -1321,7 +1321,8 @@ BOOL LLPanelRegionTerrainInfo::validateTextureSizes() if (is_material_selected) { return TRUE; } } - static const S32 MAX_TERRAIN_TEXTURE_SIZE = 1024; + static LLCachedControl max_texture_resolution(gSavedSettings, "RenderMaxTextureResolution", 2048); + const S32 max_terrain_texture_size = (S32)max_texture_resolution; for(S32 i = 0; i < LLTerrainMaterials::ASSET_COUNT; ++i) { LLTextureCtrl* texture_ctrl = mTextureDetailCtrl[i]; @@ -1341,19 +1342,19 @@ BOOL LLPanelRegionTerrainInfo::validateTextureSizes() LLSD args; args["TEXTURE_NUM"] = i+1; args["TEXTURE_BIT_DEPTH"] = llformat("%d",components * 8); - args["MAX_SIZE"] = MAX_TERRAIN_TEXTURE_SIZE; + args["MAX_SIZE"] = max_terrain_texture_size; LLNotificationsUtil::add("InvalidTerrainBitDepth", args); return FALSE; } - if (width > MAX_TERRAIN_TEXTURE_SIZE || height > MAX_TERRAIN_TEXTURE_SIZE) + if (width > max_terrain_texture_size || height > max_terrain_texture_size) { LLSD args; args["TEXTURE_NUM"] = i+1; args["TEXTURE_SIZE_X"] = width; args["TEXTURE_SIZE_Y"] = height; - args["MAX_SIZE"] = MAX_TERRAIN_TEXTURE_SIZE; + args["MAX_SIZE"] = max_terrain_texture_size; LLNotificationsUtil::add("InvalidTerrainSize", args); return FALSE; From 72987ac256c8c906eb51d002942332279250284a Mon Sep 17 00:00:00 2001 From: Cosmic Linden Date: Fri, 15 Mar 2024 12:48:45 -0700 Subject: [PATCH 24/24] secondlife/viewer#760: Update test plan for terrain texture max resolution validation --- doc/testplans/pbr_terrain_composition.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/testplans/pbr_terrain_composition.md b/doc/testplans/pbr_terrain_composition.md index 524583aa7a..8cc5560f64 100644 --- a/doc/testplans/pbr_terrain_composition.md +++ b/doc/testplans/pbr_terrain_composition.md @@ -50,7 +50,7 @@ A user with appropriate permissions can change and save the textures or material Saving may fail for the following reasons: - A terrain or material texture is invalid or null -- A terrain texture is greater than 1024 resolution (Subject to change. See https://github.com/secondlife/viewer/issues/760) +- A terrain texture is greater than the max texture upload resolution Unlike a viewer without PBR terrain support, the new viewer will no longer treat textures with alpha channels as invalid.