整理了“简单易懂的Unity5 Shader着色器入门教程”P30-P39中涉及的代码
其中// 代表有相较于前一个代码的修改,部分添加了相应备注
前一个代码见:https://blog.csdn.net/qq_35096175/article/details/113486851
简单纹理贴图
可以实现简单纹理贴图,并且在面板中调整贴图的大小和偏移,控制贴图的整体颜色
Shader "Test/Single texture"
{
properties{
_Diffuse("Diffuse Color",Color)=(1,1,1,1)
_Specular("Specular Clor",Color)=(1,1,1,1)
_Gloss("Gloss",Range(10,100))=10
_MainTex("Main Tex",2D) = "white"{} //
_TexColor("Tex Color",Color) = (1,1,1,1) //用来控制纹理整理颜色,白色是没有影响
}
subshader{
pass{
Tags{"LightMode"="ForwardBase"}
CGPROGRAM
#include "Lighting.cginc"
#pragma vertex vert
#pragma fragment frag
fixed4 _Diffuse;
fixed4 _Specular;
half _Gloss;
sampler2D _MainTex; //
float4 _MainTex_ST; //获取材质中对应的tilling和offset,总共是四个值。前两个是tilling
//_MainTex_ST名字形式固定,前半和定义的相同,后半为ST,S是scall缩放,T是transition偏移
fixed4 _TexColor; //
struct a2v {
float4 vertex:POSITION;
float3 normal:NORM