Today our project upgraded Unity to 2022.3.22f1.
In previous versions, the camera with a 2D light redender set to overlay.(not has error.)
After the version upgrade, it seems to be recognized as a base camera even though the 2D light renderer camera is set to overlay.
error msg : Only cameras with compatible renderer types can be stacked. The camera: Camera2D are using the renderer Renderer2D, but the base camera: CameraDefault are using UniversalRenderer. Will skip rendering
UnityEngine.GUIUtility:ProcessEvent (int,intptr,bool&)
What happened in the 2022 version?
If different tow renderers , can’t be overlayed on the base?
We upgraded from 2020.3.48f1 to be more specific. It seems :
if (currCameraRendererType != baseCameraRendererType)
{
Debug.LogWarning("Only cameras with compatible renderer types can be stacked. " +
$"The camera: {currCamera.name} are using the renderer {currCameraRendererType.Name}, " +
$"but the base camera: {baseCamera.name} are using {baseCameraRendererType.Name}. Will skip rendering");
continue;
}
This part of code is blocking us from stacking 2D Renderer type camera to URP type camera from UniversalRenderPipeline.cs file.
Unity 2020 version seemed to let 2D Renderer type stack with this code :
var renderer2DType = typeof(Experimental.Rendering.Universal.Renderer2D);
if (currCameraRendererType != renderer2DType && baseCameraRendererType != renderer2DType)
Is there anyway to stack 2D renderer camera to URP camera? If not, is there any alternative way you may suggest to bypass this issue?