Unity Shader基本例子

Unity中,对于一个物体我们想要改变其的外观,就需要给其增加一个材质,即Matiral

一般的Matiral采用的是标准的Shader,而标准的Shader并不是最好的渲染物体表明的效果,那么我们就需要自定义自己的Shader来渲染物体表面。

下面的是改变原有物体表面颜色的Shader:

Shader "Unlit/RedShader"
{
//属性 Properties { _Color(
"Color",Color)=(1,0,0,1) } SubShader { Tags { "RenderType"="Opaque" } LOD 100 Pass { CGPROGRAM #pragma vertex vert #pragma fragment frag #include "UnityCG.cginc"

//定义变量 fixed4 _Color; struct appdata { float4 vertex : POSITION; }; struct v2f { float4 vertex : SV_POSITION; }; v2f vert (appdata v) { v2f o; o.vertex = UnityObjectToClipPos(v.vertex); return o; } //片源函数 fixed4 frag (v2f i) : SV_Target { return _Color; } ENDCG } } }
原文地址:https://www.cnblogs.com/Optimism/p/10561235.html