## Summary
On an AMD Radeon RX 6650 XT, with VRChat's Anti-Aliasing set to x2 (MSAA), using a world
mirror causes props that display a RenderTexture (screens / video players / custom-shader
props) to render corrupted: a black center with multi-colored (red / yellow / blue / green)
flickering bands around the edges. The corruption persists after leaving the mirror, and
clears only when the player looks away from the affected prop and back. VRChat's in-game
camera captures the same props CORRECTLY while the main view is corrupted. Setting
Anti-Aliasing to Off completely resolves the issue.
## Environment
  • VRChat Build: 2026.3.3-1919-27c41b24d2-Release
  • Unity Version: 6000.0.67f1-DWR
  • Graphics API: Direct3D 11.0 [level 11.1]
  • GPU: AMD Radeon RX 6650 XT (RDNA2 / Navi 23), 8 GB VRAM
  • Driver: AMD Software Adrenalin Edition 26.9.2, driver 32.0.21045.11001 (2026-09-25)
  • OS: Windows 11 Pro, build 26200
  • Display: 1920x1080 @ 180 Hz
  • World where reproduced: wrld_0f204305-922c-4548-9008-12d4ac2d1da6
  • VRChat Graphics Settings: Quality = Low, Anti-Aliasing = x2 (reproduces) / Off (fixed)
  • Launch options: none relevant (issue reproduces without any launch options)
## Steps to Reproduce
  1. Set Settings -> Graphics -> Anti-Aliasing to x2 (MSAA).
  2. Join a world that contains a mirror (VRC_MirrorReflection) and at least one prop that
displays a RenderTexture (e.g. a screen or video player).
  1. Open / look into the mirror and observe the scene through it.
  2. Exit the mirror view and look at the RenderTexture-based prop.
## Actual Result
  • The prop renders with a solid black center and multi-colored (red / yellow / blue / green)
flickering bands around its edges.
  • The colors shift as the camera rotates.
  • The corruption persists even when no longer looking through the mirror.
  • Looking away from the prop until it leaves the view, then looking back at it, restores
correct rendering.
  • VRChat's in-game camera renders the same prop CORRECTLY while the main view is corrupted.
## Expected Result
Props should continue to render normally after using a mirror.
## Workaround
Set Settings -> Graphics -> Anti-Aliasing to
Off
. With MSAA disabled the corruption no
longer reproduces. Reducing the mirror resolution or avoiding the mirror also prevents it.
## Log Evidence
Warning - 'R8_SRGB' is not supported. RenderTexture::GetTemporary fallbacks to R8G8B8A8_SRGB format on this platform. Use 'SystemInfo.IsFormatSupported' C# API to check format support.
at VRC.SDKBase.VRC_MirrorReflection.RenderMirror (UnityEngine.RenderTexture targetTexture, UnityEngine.Vector3 camPosition, UnityEngine.Quaternion camRotation, UnityEngine.Matrix4x4 camProjectionMatrix) at VRC.SDKBase.VRC_MirrorReflection.RenderMirrorCameras (UnityEngine.Camera currentCamera, VRC.SDKBase.VRC_MirrorReflection+ActiveRenderModes visibility) at UnityEngine.Experimental.Rendering.ScriptableRuntimeReflectionSystemWrapper .Internal_ScriptableRuntimeReflectionSystemWrapper_TickRealtimeProbes (System.Boolean& result)
## Hypothesis
RenderTexture::GetTemporary
is Unity's pooled temporary render texture. The mirror and
RenderTexture-based props draw from the same pool. On this AMD configuration
R8_SRGB
is
reported as unsupported and Unity falls back to
R8G8B8A8_SRGB
. Combined with the extra
MSAA resolve pass performed by the mirror's render texture, the pooled RT appears to be
handed back with a mismatched format / stale binding state, so props that sample a
RenderTexture receive scrambled channels (black center + rainbow banding). The in-game
camera being unaffected indicates per-camera render state pollution rather than asset or
shader compilation corruption. Disabling MSAA removes the resolve pass and the issue.
## Attachments
Two screenshots taken 2026-10-04 08:48 (local time) while the bug was active on the same prop.

Photo Viewer

View photos in a modal