再放一下shader渲染流程图,便于理解
一、应用阶段到顶点着色器( 就是对定义的参数进行赋值)
语义:
struct appData{
float4 vertex : POSITION; 告诉Unity把模型空间中的顶点坐标赋值给vertex。
float4 tangent : TANGENT; 同上 ,模型的切线赋值给 tangent
fixed4 color : COLOR; 模型的顶点颜色赋值给color
:SV_TARGET 告诉渲染器把用户的输出颜色存储到一个渲染缓冲区中
float4 :TEXCOORD 语义获得模型顶点的纹理坐标,来访问纹理 (扩展为 TEXCOORD0,TEXCOORD1......)
float3 :NORMAL 表明需要的是法线
};
二、顶点着色器到片段着色器
扫描二维码关注公众号,回复:
9857833 查看本文章
struct v2f {
float4 pos : SV_POSITION; 语义指定 pos 就是顶点着色器输出到屏幕裁剪空间下的顶点位置。(必须有)
};
三、片段着色器输出
fixed4 frag(v2f ,v) : SV_TARGET 语义指定输出颜色到 RenderTarget