public void Render(ScriptableRenderContext context, Camera camera, ref RenderingSetting renderingSetting, ref BatchingSetting batchingSetting, ref ShadowSetting shadowSetting, ref PostFXSetting postFXSetting) { _context = context; _camera = camera; _cmdBuf.name = camera.name; _useHDR = renderingSetting.allowHDR && camera.allowHDR; EmitSceneUIGeometry(); if (!Cull(ref shadowSetting)) { return; } _postFXStack.SetUp(context, camera, ref postFXSetting, renderingSetting.allowHDR); SetUp(ref renderingSetting, ref shadowSetting); DrawVisibleGeometry(ref batchingSetting); DrawUnsupportedShaders(); DrawGizmosPreImageEffect(); _postFXStack.Render(IntermediateRT); DrawGizmosPostImageEffect(); Submit(); }
public void SetUp(ScriptableRenderContext srContext, Camera camera, ref PostFXSetting postFXSetting, bool allowHDR) { _srContext = srContext; _camera = camera; _postFXSetting = postFXSetting; _allowHDR = allowHDR; isActive = true; if (postFXSetting == null || postFXSetting.fxMaterial == null) { isActive = false; } if (camera.cameraType != CameraType.SceneView && camera.cameraType != CameraType.Game) { isActive = false; } #if UNITY_EDITOR if (camera.cameraType == CameraType.SceneView && !SceneView.currentDrawingSceneView.sceneViewState.showImageEffects) { isActive = false; } #endif }
public CustomRenderPipeline(ref RenderingSetting renderingSetting, ref BatchingSetting batchingSetting, ref ShadowSetting shadowSetting, ref PostFXSetting postFXSetting) { _batchingSetting = batchingSetting; _shadowSetting = shadowSetting; _renderingSetting = renderingSetting; _postFXSetting = postFXSetting; GraphicsSettings.useScriptableRenderPipelineBatching = _batchingSetting.useSRPBatching; }