From 183350b61740ee49e1d76efe62b8c0dc0b705e7c Mon Sep 17 00:00:00 2001 From: UbitUmarov Date: Sat, 8 Jun 2024 22:04:55 +0100 Subject: [PATCH] viewers MUST ask for pbr terrain, requesting fake cap VTPBR if only support terrain pbr on standard size regions or cap VETPBR support on all region sizes --- OpenSim/Capabilities/Caps.cs | 3 ++- .../Linden/Caps/BunchOfCaps/BunchOfCaps.cs | 11 ++++++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/OpenSim/Capabilities/Caps.cs b/OpenSim/Capabilities/Caps.cs index 279bbcbfe9..0eb312413f 100644 --- a/OpenSim/Capabilities/Caps.cs +++ b/OpenSim/Capabilities/Caps.cs @@ -126,7 +126,8 @@ namespace OpenSim.Framework.Capabilities WLEnv = 0x200, AdvEnv = 0x400, PBR = 0x800, - ViewerBenefits = 0x1000 + ViewerBenefits = 0x1000, + TPBR = 0x2000 } public CapsFlags Flags { get; set;} diff --git a/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs b/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs index 516ea00ae3..3ce2acf182 100644 --- a/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs +++ b/OpenSim/Region/ClientStack/Linden/Caps/BunchOfCaps/BunchOfCaps.cs @@ -350,9 +350,18 @@ namespace OpenSim.Region.ClientStack.Linden { case "SEED": continue; - case "ViewerBenefits": // this may need a proper cap but not currently + case "ViewerBenefits": m_HostCapsObj.Flags |= Caps.CapsFlags.ViewerBenefits; continue; + case "VTPBR": + if (m_Scene.RegionInfo.RegionSizeX == Constants.RegionSize && + m_Scene.RegionInfo.RegionSizeY == Constants.RegionSize && + m_Scene.RegionInfo.RegionSizeZ == Constants.RegionSize) + m_HostCapsObj.Flags |= Caps.CapsFlags.TPBR; + continue; + case "VETPBR": + m_HostCapsObj.Flags |= Caps.CapsFlags.TPBR; + continue; case "ObjectAnimation": m_HostCapsObj.Flags |= Caps.CapsFlags.ObjectAnim; break;