转载自:https://blog.csdn.net/qq_33537945/article/details/79246500
// 定义和使用顶点函数 (float4 v:POSITION) 系统传递过来参数给v 后面加:POSITION 的意思是把顶点坐标传给v
float4 vert(float4 v:POSITION):SV_POSITION
// 通过语义告诉系统,我这个参数是干嘛的,比如POSSITION是告诉系统我需要顶点坐标
// SV_POSITION这个语义用来解释说明返回值,意思是返回值是剪裁空间下的顶点坐标
// 语义写法是固定的 不同的语义代表不同的效果
{
// mul()是一个方法可以完成一个 模型空间坐标到剪裁空间的转换 一个矩阵和一个postition的乘法运算
// 第一个参数是一个矩阵 这里使用的是 矩阵宏(固定写法 代表的是一串数字) 第二个是顶点坐标
// 这时V里面的W就有了值 但是在坐标上没有实际意义 就是用来辅助坐标转换的
float4 pos =mul(UNITY_MATRIX_MVP,v);
return pos;
}
// 定义和使用片元函数
// 这里返回一个颜色值 所以这个方法返回 fixed4类型 现在这个参数不需要 以后可能会写参数进去
fixed4 frag():SV_Target // :SV_Target 这个语义代表模型对应到屏幕上的颜色
{
// 返回的颜色 R G B A 但是需要跟上类型 这里是fixed4类型
return fixed4(1,1,1,1);
}</code></pre><br><img src="https://img-blog.csdn.net/20180203135427875?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvcXFfMzM1Mzc5NDU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt=""><br><p></p>
总结 顶点函数的作用是 确定模型在屏幕上显示的位置 片元函数的作用是 确定这个模型在屏幕上显示的颜色