一、unity的shader
unity写的shader并不是真正意义上的shader。
简单解释:真正的shader语言写起来还是麻烦的,unity希望大家写起来简单一点,于是在原来的基础上,给大家优化了一个语言,叫shaderLab,所以我后面讲的的都是unity中的shader写法。
二、创建一个shader(在创建时,选前三种都可以)
三、内容解读
1.shader一直都在
shader在unity里,它是一直存在的,且自己正常运作的,运作流程就是之前写的文章
Unity | Shader基础知识(什么是shader)_unity shader-CSDN博客
2.我们写shader在写什么
我们其实是在选择性的干预其中一个步骤,导致它最后输出出来的结果不同。
例子:我们的手电筒一直都在工作,我如果拿手去挡了一部分光,就会出现手影,在这个过程中,我们没有去改手电筒,而是去干预了光线(挡住了光)
结论:我们写shader也只是把其中一部分拿出来,进行干预,其他部分保持不变,最后结果就会出现变化。
四、没有被干预的shader(最简单的shader)
我们前面创建了一个shader,我们把里面所有内容都删除。仅留下(如下图)
留下的“Custom/001”是这个shader在unity里保存的位置,你找他也是这么找的
我们放入材质去看(发现是红色)
这里不太明白,也可以去看之前写的
Unity | Shader(着色器)和material(材质)的关系-CSDN博客
PS:如果以前经常用材质的小伙伴发现,之前如果材质丢失,就显示的红色。
所以,材质丢失 = shader空了,显示了最本来的面目。