美文网首页
[Unity3D]URP中,除了主摄像机的PIPELINE,其他

[Unity3D]URP中,除了主摄像机的PIPELINE,其他

作者: 葱烧烙饼 | 来源:发表于2020-09-05 21:10 被阅读0次

    记录一个我认为是比较缺陷的设计,ScreenColor当前不是全局的参数。官方文档说无法兼顾所有情况,所以不做全局,其他PIPELINE需求的,自己要针对性去实现。我是觉得这样的设计还不如直接不做,让开发者自己去定义实现,不然这种每个地方都有的有,有的没有。如果不是很熟悉文档,你得先怀疑自己是不是哪里错了,找几个小时没找到问题,用起来莫名其妙,最后幸运找到了对应说明,靠,原来如此。十分弟弟。

    1.设置
    m_ColorHandle = UnityEngine.Rendering.Universal.RenderTargetHandle.CameraTarget;
    cmd.GetTemporaryRT(m_ColorHandle.id, cameraTextureDescriptor, FilterMode.Bilinear);

    2.Blitting到_GrabTexture2
    int screenCopyID = Shader.PropertyToID("_ScreenCopyTexture");
    buf.GetTemporaryRT(screenCopyID, m_OpaqueDesc, FilterMode.Bilinear);
    buf.Blit(m_ColorHandle.Identifier(), screenCopyID);
    buf.SetGlobalTexture("_GrabTexture2", screenCopyID);

    3.使用上述获得全局的GrabTexture2作为原本SceneColor
    ShaderGraph中Sample GraTexture2 ,注意,这个地方的UV需要用ScenePosition.

    这几天研究了一下URP,感觉到UNITY的满满恶意。这玩意全网都找不到个像样能说明白的教程,零零散散而且不明不白。

    官方文档:
    https://docs.unity3d.com/Packages/com.unity.shadergraph@8.2/manual/Scene-Color-Node.html

    相关文章

      网友评论

          本文标题:[Unity3D]URP中,除了主摄像机的PIPELINE,其他

          本文链接:https://www.haomeiwen.com/subject/rfofektx.html