您的位置:首页 > 其它

Shader_vert和frag函数的学习004

2017-08-20 12:26 204 查看
由于代码注释比较全面,这里不在赘述

//Shader的名字中是可以包含空格的
Shader "YY/02YYShader"{
Properties{
_Color("Color",Color) = (1,1,1,1)
}
SubShader{

Pass{
CGPROGRAM
//在CG代码块使用属性中的变量的时候需要再次声明
float4 _Color;
//以下的方法是系统调用的  但是方法名是不固定的
//顶点函数  这里只是声明了顶点函数名

//vert 是顶点函数名
//基本作用  完成顶点坐标从模型空间到剪裁空间的转换  从游戏环境到视野相机屏幕上
#pragma vertex vert
//片元函数 这里只是声明了  frag 是片元函数名
//处理每一个像素点
//基本作用 返回模型对应的屏幕上的每一个像素的颜色值
#pragma fragment frag
//POSITION 和 SV_POSITION  通过语义告诉系统参数的作用
//POSITION  告诉系统我需要顶点坐标
//SV_POSITION  这个语义用来解释说明返回值,意思是返回值是剪裁空间下的顶点坐标
float4 vert(float4 v:POSITION):SV_POSITION {
//
float4 pos = mul(UNITY_MATRIX_MVP,v);
return pos;
}

fixed4 frag():SV_Target {

//return float4(0.5,1,1,1);
//通过属性中的的变量 在Unity Inspector面板中可以改变游戏对象的颜色
return _Color;
}

ENDCG

}
}
FallBack "VertexLit"
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: