您的位置:首页 > 其它

shader - 语法

2015-11-24 12:27 253 查看
Syntax 语法

Shader “name” { [Properties] Subshaders [Fallback] } 定义了一个着色器。这些内容在材质监视器上列于name下。着色器通过properties来可选的定义一个可通过材质设定界面来自定义的列表。后面紧跟SubShaders的列表,并可额外添加一个代码块用于应对fallback的情况。

Properties 属性

着色器拥有一个properties的列表。任何定义在着色器中的属性在Unity中会显示在材质检视器中。典型的属性是颜色,纹理,或是任何被着色器使用的值。

SubShaders & Fallback 子着色器和回滚

着色器包含一个子着色器的列表。至少包含一个。当加载一个着色器时,Unity将遍历这个列表,获取第一个能被用户机器支持的着色器。如果没有子着色器被支持,Unity将尝试使用降级shader.

Examples 示例

// colored vertex lighting 顶点灯光着色
Shader "Simple colored lighting" {
// a single color property
//一个简单的颜色属性
Properties {
_Color ("Main Color", Color) = (1,.5,.5,1)
}
// define one subshader
//定义一个子着色器
SubShader {
Pass {
Material {
Diffuse [_Color]
}
Lighting On
}
}
}


这个着色器定义了一个颜色属性 _Color(在材质检视器中描述为主颜色) ,这个属性有一个缺省的值(1, 0.5, 0.5, 1). 然后定义了一个唯一的子着色器。这个子着色器包含了一个Pass 开启顶点光照并设定基本材质
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: