secondlife / viewer

🖥️ Second Life's official client
GNU Lesser General Public License v2.1
203 stars 51 forks source link

[PBR Reflections] Priority of Mirror Probe versus nearby Reflection Probes #1766

Open aiaustin opened 1 month ago

aiaustin commented 1 month ago

Environment

Second Life Release 7.1.8.9375512768 (64bit) Release Notes

You are at 146.1, 140.6, 23.0 in Rumpus Room 2048 located at simhost-040b83eb1ef209ed9.aditi SLURL: secondlife://Aditi/secondlife/Rumpus%20Room%202048/146/141/23 (global coordinates 36,498.1, 14,220.6, 23.0) PMFP 2024-05-31.9321100266 Release Notes

CPU: Intel(R) Xeon(R) CPU E5-1620 v3 @ 3.50GHz (3491.91 MHz) Memory: 32689 MB OS Version: Microsoft Windows 10 64-bit (Build 19045.4529) Graphics Card Vendor: NVIDIA Corporation Graphics Card: NVIDIA GeForce GTX 1080/PCIe/SSE2

Windows Graphics Driver Version: 32.0.15.5599 OpenGL Version: 4.6.0 NVIDIA 555.99

Window size: 1240x817 Font Size Adjustment: 96pt UI Scaling: 1 Draw distance: 256m Bandwidth: 3000kbit/s LOD factor: 2 Render quality: 6 Texture memory: 7291MB Disk cache: Max size 1638.4 MB (87.9% used)

J2C Decoder Version: KDU v7.10.4 Audio Driver Version: FMOD Studio 2.02.20 Dullahan: 1.14.0.202310131404 CEF: 118.4.1+g3dd6078+chromium-118.0.5993.54 Chromium: 118.0.5993.54 LibVLC Version: 3.0.16 Voice Server Version: Not Connected Packets Lost: 0/11,900 (0.0%) June 14 2024 03:18:41

Description

There seems to be really odd behaviour for which reflection probe gets picked up when a mirror is in the FOV. Even when looking right at a mirror with the camera and an avatar close by the mirror (see "Mirror-Working.jpg), you can move the camera just a bit (Tiny-Camera-Movement-Mirror-Wrong.jpg) and the proper Mirror(Everything) image disappears and some arbitrary nearby (auto placed) reflection probe takes over. Surely this is not the expected behaviour or desirable? If a Mirror RP effect is in the FOV it ought to always take priority wherever local or nearby other normal RPs are placed?

Mirror Working... Mirror-Working Tiny Camera Movement and Mirror does not use expected Mirror(Everything) probe... Tiny-Camera-Movement-Mirror-Wrong

Reproduction steps

  1. Place a mirror(everything) reflection probe onto a reflective surface to make a mirror.
  2. Example at secondlife://Aditi/secondlife/Rumpus%20Room%202048/146/141/23 (as at 14-Jun-2024)
  3. Move the camera around a bit and observe which reflection probe is displayed.
aiaustin commented 1 month ago

Possibly closely related to this, with another avatar close to my avatar near a mirror the built they could see the reflections of both avatars in their mirror whereas I could not wherever I placed my camera or avatar, even right up to the mirror surface. I just saw the nearby area reflection probe showing what it would display in the nearest (oval) mirror.

But I could see the reflection of both avatars in a mirror some 10m away that I had placed earlier. The other avatar only saw the area RP content on that mirror.

This means two avatars in essentially the same position in front of a mirror and with almost identical camera positions see different things in their viewers. Neither avatar sees the same mirror reflection at the same time whatever we tried.

How it looks to Estrelle... How it looks to Estrelle How it looks to Ai... How it looks to Ai Farther away mirror shows reflections of both avatars for Ai... Farther away mirror shows for Ai