Search Issue Tracker
Feature Request
Votes
0
Found in
2021.3.40f1
2022.3.38f1
6000.0.11f1
Issue ID
UUM-76220
Regression
No
MotionVectorsPersistentData.Update breaks rendering with IndexOutOfRangeException when rendering more than 2 XRViews
Steps to reproduce:
1. Download the attached user's project "XRSDKSmartCaveRenderingURP.zip"
2. Download the attached custom package "Custom.package.xr.sdk.zip" and add it to the project
3. Load the SmartCave XR plugin in XR Plugin Management
4. Open the "Display.scene" scene and enter Play Mode
5. Observe the loaded window with only 2 XR Views being rendered
Expected Results: all 4 XR Views are rendered
Actual Results: only 2 XR views are rendered, while others remain black
Reproducible on: 2021.3.40f1, 2022.3.38f1, 6000.0.11f1
Testing Environment: Windows 11
Not reproducible on: No other environment tested
Notes:
-Console Error:
IndexOutOfRangeException: Index was outside the bounds of the array.
UnityEngine.Rendering.Universal.MotionVectorsPersistentData.Update (UnityEngine.Rendering.Universal.CameraData& cameraData) (at ./Library/PackageCache/com.unity.render-pipelines.universal@16.0.6/Runtime/MotionVectors.cs:82)
UnityEngine.Rendering.Universal.UniversalRenderPipeline.RenderSingleCamera (UnityEngine.Rendering.ScriptableRenderContext context, UnityEngine.Rendering.Universal.CameraData& cameraData) (at ./Library/PackageCache/com.unity.render-pipelines.universal@16.0.6/Runtime/UniversalRenderPipeline.cs:747)
UnityEngine.Rendering.Universal.UniversalRenderPipeline.RenderCameraStack (UnityEngine.Rendering.ScriptableRenderContext context, UnityEngine.Camera baseCamera) (at ./Library/PackageCache/com.unity.render-pipelines.universal@16.0.6/Runtime/UniversalRenderPipeline.cs:968)
UnityEngine.Rendering.Universal.UniversalRenderPipeline.Render (UnityEngine.Rendering.ScriptableRenderContext renderContext, System.Collections.Generic.List`1[T] cameras) (at ./Library/PackageCache/com.unity.render-pipelines.universal@16.0.6/Runtime/UniversalRenderPipeline.cs:415)
UnityEngine.Rendering.RenderPipeline.InternalRender (UnityEngine.Rendering.ScriptableRenderContext context, System.Collections.Generic.List`1[T] cameras) (at <e509afeff7384f24a8f0ac30527ff01c>:0)
UnityEngine.Rendering.RenderPipelineManager.DoRenderLoop_Internal (UnityEngine.Rendering.RenderPipelineAsset pipe, System.IntPtr loopPtr, UnityEngine.Object renderRequest, Unity.Collections.LowLevel.Unsafe.AtomicSafetyHandle safety) (at <e509afeff7384f24a8f0ac30527ff01c>:0)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr, Boolean&)
Render Pipeline error : the XR layout still contains active passes. Executing XRSystem.EndLayout() right now.
UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Frame Debugger is not disabled when switching Scenes if the Frame Debugger window is not open during the transition
- Standalone Profiler Targets another Project if a Standalone Profiler was launched in it before when switching between Edit or Play Mode Targets
- Crash on ForwardRenderLoopJob when opening a specific project
- [Android] Memory leak and eventual crash on Snapdragon 8 Gen 1+ devices when a Clear Pass is executed after Framebuffer Fetch
- PhysicsRaycaster ray length is incorrect when casting from rotated Camera
Resolution Note:
The repro project uses a custom XR provider to render more than 2 eyes.
Right now MotionVector pass in URP can only handle 2 eyes maximum. This is a feature request to extend MotionVector pass in URP to support arbitrary number of XRPass.