srp渲染流程回顾总结1

 private void RenderSingleCamera(ScriptableRenderContext context, Camera camera)
    {
        CameraData cameraData = new CameraData();
        cameraData.m_camera = camera;
        RenderData renderData = new RenderData();
        renderData.m_cameraData = cameraData;

        if (!camera.TryGetCullingParameters(out ScriptableCullingParameters cullingParameters))
        {
            return;
        }
        CullingResults cullingResults = context.Cull(ref cullingParameters);
        renderData.m_cullingResults = cullingResults;
        context.SetupCameraProperties(camera);

        m_forwardReneder.Clear();
        m_forwardReneder.Init(context, ref renderData);
        m_forwardReneder.Execute(context, ref renderData);
        context.Submit();
    }

其实就四步:
1、相机获取提出参数:camera.TryGetCullingParameters
2、让contenxt获取提出结果:ScriptableRenderContext.Cull
3、让contentx根据pass进行绘制:ScriptableRenderContext.DrawRenderers
4、提交绘制命令:context.Submit()

重点是每个pass的内部绘制,具体实现。
参考:https://blog.csdn.net/wodownload2/article/details/124634814?spm=1001.2014.3001.5502
其中的:DrawObjectPass的实现

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值