本文仅为边学边记录的流水账。
(资料图片)
一个简单的Shader
上述代码显示一个白色的球。
此处的POSITON、SV_POSITION等为Unity提供的CG/HLSL语义。
此处的UNITY_MATRIX_MVP,需要亿点点数学来帮助理解。秉着先试试再说的原则,数学留到不得不去理解的时候再系统化学习,这里只需要知道它做的事情是“把顶点坐标从模型空间转换到裁剪空间中”即可。在新版本中,它总是被自动修复为UnityObjectToClipPos(v)。
下面演示数据在顶点和片元间的传递。
上述代码将显示一个彩色球
关于起名字的一些小习惯,a2v、v2f...
a表示应用(application), v表示顶点着色器(vertex shader), a2v的意思就是把数据从应用阶段传递到顶点着色器中。同理可得,v2f就是顶点到片元。
添加属性之后是这样的。
调试技巧:帧调试器(Frame Debugger)左侧树可以看成事件线,中上滑杆可以看做时间线。
标签:
要文