下面是一些表面着色器(Surface Shaders)的示例。下面的示例都是使用的内置光照模式(lighting models),关于如何实现自定义光照模式可以参考 表面着色器光照范例(Surface Shader Lighting Examples)。
Simple 简单的示例
我们从分析和建立一个简单的着色器开始。下面是这个着色器仅仅设置了表面颜色( surface color)为"白色"。它使用了内置的 Lambert (diffuse)光照模式(lighting model)。
Shader "Example/Diffuse Simple" {
SubShader {
Tags { "RenderType" = "Opaque" }
CGPROGRAM
#pragma surface surf Lambert
struct Input {
float4 color : COLOR;
};
void surf (Input IN, inout SurfaceOutput o) {
o