问题描述
我得到了一些:
Assets/PostProcessing/Resources/Shaders/MotionBlur.cginc(90) 中未声明的标识符“sampler_CameraDepthTexture”(在 gles3 上)
我在 ???.cginc 中以不同的行号获得了许多这些,并且不知道从哪里开始。
这些会在构建过程中引起问题吗?
如果需要,我可以提供更多信息。我不想用混淆的数量填充这篇文章。
编辑/首选项/外部工具中没有显示错误。
谢谢。
解决方法
这只是您提供的有限信息的猜测。
可能此平台不支持 DepthTexture 或当前已禁用。如果您从游戏中移除 MotionBlur 着色器并重试并且没有出现新错误 - 您可以确定这是一个问题并尝试修复着色器代码。
如果您使用 URP,则需要在 URP 的资产菜单中启用 DepthTexture
如果您的着色器是手动编写的,则应移至着色器图。
至于错误,如果游戏产生了一个有效的二进制文件,那么将会有两个缺点:
- 您的游戏不会显示 MotionBlur 着色器,它会变成粉红色或根本不显示
- 由于错误日志不断出现垃圾邮件,您的游戏速度会变慢。
注意,DepthTexture 在移动设备上非常昂贵!