Example #1
0
    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();
    }
Example #2
0
    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;
 }