版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wolf96/article/details/84942439
问题复现:forward render path surface shader删除fall back之后 不写入相机的深度贴图,导致用到深度的后期计算错误
解决办法,#pragma surface 加入 fullforwardshadows 或者 addshadow
原因:
https://docs.unity3d.com/Manual/SL-CameraDepthTexture.html
渲染深度贴图需要shadow caster pass,如果没有unity会在fallback里去找
如果是surface shader加入addshadow就自动生成shadow pass
猜测:Unity forward计算深度是shadow depth map和camera depthmap一起算的,省一次所有物体的fs
---by wolf96 2018/12/10