为了进一步深入学习shader决定把Unity内置的shader全都解读一遍,虽然已经有了《Unity3D内建着色器源码剖析》一书,但翻阅下来实际内容并未剖析每个shader,而是剖析了. cginc文件内的函数。
这里我们需要先下载所有内置shader,可以从Unity中国官网点击Built in shaders下载全部shader文件。
下载后:
这里我们先研究Unity5之前的Legacy Shaders,也就是旧版本的Shader,因为旧版本的Shader相对而言比较简单容易上手。
对应到我们的文件夹就是:
由于文件夹他并未像Shader内部一样层级管理好,并且新老shader丢在了一起,这里我们手动把老的Shader拿出来,并且根据Shader里面写的内容去修改一下文件夹名和层级,最终一一对应上,如图:
我整理后的Legacy Shaders可以从这里下载:
链接: https://pan.baidu.com/s/1Hzh-QKeKItSqXGSC3l4qLw 密码: 8v8q
--来自百度网盘超级会员V3的分享
然后我们从下面几个方面去一一解读这些shader:
1.Shader在什么情况下使用
2.Shader的价值(用的多不多),Shader的难度
3.代码详细注释
4.Shader编写思路,用到的知识点