Search Issue Tracker

Fixed in 10.0.0-preview1

Fixed in 7.5.0, 8.3.0, 9.0.0-preview.57

Votes

0

Found in [Package]

9.0.0, 8.0.1

Issue ID

1240788

Regression

No

[URP][Prefab][Camera Stacking] Overlay Camera is missing in stack list of the base camera prefab

Package: Scriptable Render Pipeline Universal

-

-Retrieving array element that was out of bounds error is thrown on deleting Missing Camera element from Camera.
-UnassignedReferenceException exceptions are thrown continuously on removing missing camera element from the stack list of camera prefab.
-Overlay Camera is missing in stack list of the base camera prefab.

Steps to repro:
1. Create a new project with the URP template > Create New Scene.
2. GameObject > Camera > Change Render Type to Overlay.
3. Main Camera > Stack > Add Overlay camera.
4. Create prefab of the Main Camera.

Actual Result:
-Overlay Camera should be available in Stack list of Main Camera prefab.
-UnassignedReferenceException and Retrieving array element that was out of bounds exceptions are thrown in the console.

Expected Result:
No error in the console.

Reproducible in:
2020.2.0a9, 2020.1.0b8, 2019.3.0f6 with Package Version: 9.0.0, 8.0.1, 7.3.1, 7.2.1, 7.2.0.

Note: Overlay Render type is introduced in Package Version: 7.2.0

Environment:
Occurring on Windows 10 & Mac 10.15.

Stack trace:
Retrieving array element that was out of bounds
UnityEditor.SerializedProperty:DeleteArrayElementAtIndex(Int32)
UnityEditorInternal.Defaults:DoRemoveButton(ReorderableList)
UnityEditor.Rendering.Universal.UniversalRenderPipelineCameraEditor:<UpdateCameras>b__45_0(ReorderableList)
UnityEditorInternal.Defaults:DrawFooter(Rect, ReorderableList)
UnityEditorInternal.ReorderableList:DoListFooter(Rect)
UnityEditorInternal.ReorderableList:DoLayoutList()
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr, Boolean&)

UnassignedReferenceException: The variable m_Cameras of UniversalAdditionalCameraData has not been assigned.
You probably need to assign the m_Cameras variable of the UniversalAdditionalCameraData script in the inspector.
UnityEngine.Rendering.Universal.UniversalRenderPipeline.RenderCameraStack (UnityEngine.Rendering.ScriptableRenderContext context, UnityEngine.Camera baseCamera) (at library/packagecache/com.unity.render-pipelines.universal@9.0.0-preview.14/runtime/universalrenderpipeline.cs:326)
UnityEngine.Rendering.Universal.UniversalRenderPipeline.Render (UnityEngine.Rendering.ScriptableRenderContext renderContext, UnityEngine.Camera[] cameras) (at library/packagecache/com.unity.render-pipelines.universal@9.0.0-preview.14/runtime/universalrenderpipeline.cs:148)
UnityEngine.Rendering.RenderPipeline.InternalRender (UnityEngine.Rendering.ScriptableRenderContext context, UnityEngine.Camera[] cameras) (at <2ab2854ade474944aaaee820c644f328>:0)
UnityEngine.Rendering.RenderPipelineManager.DoRenderLoop_Internal (UnityEngine.Rendering.RenderPipelineAsset pipe, System.IntPtr loopPtr, Unity.Collections.LowLevel.Unsafe.AtomicSafetyHandle safety) (at <2ab2854ade474944aaaee820c644f328>:0)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr, Boolean&)

  1. Resolution Note (fix version 10.0.0-preview1):

    Fix only targets that you can not assign camera from scene view. However missing camera reference error will happen and its just part of the unity serialization system.

  2. Resolution Note (fix version 9.0.0-preview.57):

    Fixed camera overlay stacking adding to respect unity general reference restrictions.

  3. Resolution Note (fix version 8.3.0):

    Fixed camera overlay stacking adding to respect unity general reference restrictions.

  4. Resolution Note (fix version 7.5.0):

    Fixed camera overlay stacking adding to respect unity general reference restrictions.

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.