protected override void Render(ScriptableRenderContext context, Camera[] cameras) { BeginFrameRendering(context, cameras); foreach (Camera camera in cameras) { BeginCameraRendering(context, camera); //Culling ScriptableCullingParameters cullingParams; if (!camera.TryGetCullingParameters(out cullingParams)) { continue; } CullingResults cull = context.Cull(ref cullingParams); //Camera setup some builtin variables e.g. camera projection matrices etc context.SetupCameraProperties(camera); //Execute graph CommandBuffer cmdRG = CommandBufferPool.Get("ExecuteRenderGraph"); RenderGraphParameters rgParams = new RenderGraphParameters() { commandBuffer = cmdRG, scriptableRenderContext = context, currentFrameIndex = Time.frameCount }; graph.Begin(rgParams); SRP0802_BasePassData basePassData = Render_SRP0802_BasePass(camera, graph, cull); //BasePass Render_SRP0802_AddPass(graph, basePassData.m_Albedo, basePassData.m_Emission); //AddPass graph.Execute(); context.ExecuteCommandBuffer(cmdRG); CommandBufferPool.Release(cmdRG); //Submit camera rendering context.Submit(); EndCameraRendering(context, camera); } graph.EndFrame(); EndFrameRendering(context, cameras); }