I made a mistake, the events do fire consecutively per camera.
void OnEnable()
{
RenderPipelineManager.beginCameraRendering += RenderPipelineManager_beginCameraRendering;
RenderPipelineManager.endCameraRendering += RenderPipelineManager_endCameraRendering;
}
void OnDisable()
{
RenderPipelineManager.beginCameraRendering -= RenderPipelineManager_beginCameraRendering;
RenderPipelineManager.endCameraRendering -= RenderPipelineManager_endCameraRendering;
}
private void RenderPipelineManager_beginCameraRendering(ScriptableRenderContext context, Camera camera)
{
if (camera == paperCamera) {
foreach (var thisSceneOnlyGameObject in thisSceneOnlyGameObjects)
{
thisSceneOnlyGameObject.layer = LayerMask.NameToLayer("Default");
}
}
}
private void RenderPipelineManager_endCameraRendering(ScriptableRenderContext context, Camera camera)
{
if (camera == paperCamera)
{
foreach (var thisSceneOnlyGameObject in thisSceneOnlyGameObjects)
{
thisSceneOnlyGameObject.layer = LayerMask.NameToLayer("Invisible");
}
}
}
Trending Articles
More Pages to Explore .....