将unity的源码导入工程中,在shader文件RampDiffuse中报错,内容如下:
Shader error in 'CookbookShaders/Chapter1/RampDiffuse': incorrect number of arguments to numeric-type constructor at line 28 (on d3d11)
定位的代码为
float3 ramp = tex2D(_RampTex, float2(hLambert)).rgb;
网络上查找原因,是由于旧版的unity支持的是float2(diff),新版的是float2(param1,param2)
所以将这句代码修改为
float3 ramp = tex2D(_RampTex, float2(hLambert,hLambert)).rgb;
错误成功解决,参考链接