与上一节一样,创建一个shader,这节我们来试着自己输出一个颜色给材质,代码如下:
Shader "Unlit/shader2"
{
//参数变量
Properties
{
}
SubShader
{
Tags {
"RenderType"="Opaque" }
LOD 100
Pass
{
//渲染开始
CGPROGRAM
//定义好顶点着色器
#pragma vertex vert_img
//定义好片元着色器
#pragma fragment frag
//引入unity定义好的内容
#include "UnityCG.cginc"
//片元着色器函数
//输入一个顶点的信息
//v2f_img为unity预先写好的结构体,可以直接使用
//SV_TARGET:SV_为system value的意思,SV_Target是DX10+用于fragment函数着色器颜色输出的语义。用就完事
//返回一个fixed4四元的向量,其实是颜色参数即RGBA,值的范围在-1——1
fixed4 frag (v2f_img i) : SV_Target
{
return fixed4(1,0,0,1);
}
//渲染结束
ENDCG
}
}
}
v2f_img的源码
效果就是一个红色的材质,没有光照信息
改一下return的值,变成蓝色