unity自定义shader的问题
我想制作双面显示的shader,于是找了网上教程。如图后来我打开了Unity中的自定义shader,打算复制别人的代码。如图代码中除了前面几行是一样的,后面有一大串的内容...
我想制作双面显示的shader,于是找了网上教程。如图
后来我打开了Unity中的自定义shader,打算复制别人的代码。如图
代码中除了前面几行是一样的,后面有一大串的内容都和网上给的内容不一样。网上给的一个shader模型就60行代码。可是我打开unity中的任意一个shader模型都有上玩条代码。到底怎么回事? 展开
后来我打开了Unity中的自定义shader,打算复制别人的代码。如图
代码中除了前面几行是一样的,后面有一大串的内容都和网上给的内容不一样。网上给的一个shader模型就60行代码。可是我打开unity中的任意一个shader模型都有上玩条代码。到底怎么回事? 展开
展开全部
注意到网上的Shader代码中的最后一行FallBack "Specular"没有?该语句的意思是如果没有找到适合该Shader的硬件,那么自动匹配Unity3D自带的Specular Shader。
那么答案就很清楚了:Unity3D自带的Shader必须全面的针对几乎所有可能出现的硬件,所以要添加尽量多的分支来满足要求。每一个分支匹配不同的硬件。而网上下载的Shader往往只需要考虑几种硬件就可以了。一般Shader作者会标明是否匹配移动平台,适应OpenGL ES1,2,3还是需要DX11支持等信息。如果没有标明那么你就只能自己尝试了。
那么答案就很清楚了:Unity3D自带的Shader必须全面的针对几乎所有可能出现的硬件,所以要添加尽量多的分支来满足要求。每一个分支匹配不同的硬件。而网上下载的Shader往往只需要考虑几种硬件就可以了。一般Shader作者会标明是否匹配移动平台,适应OpenGL ES1,2,3还是需要DX11支持等信息。如果没有标明那么你就只能自己尝试了。
追问
我想问的是第二幅图中第21到33的那些代码为什么在网上看到的(第一副图)中没有。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询