shader实现Toggle的方法
(2017-03-15 18:29:45)| 分类: Unity3d之Shader篇 |
【步骤】
1 Properties
加 [MaterialToggle]_toggle("_toggle",int) =
0
或者 [Toggle]_toggle("_toggle",int) = 0
2 定义
bool _toggle;
3 使用
【具体代码】
- Shader "Custom/Toggle" {
- Properties {
- [MaterialToggle]_toggle("_toggle",int) = 0
- }
- SubShader
- {
- pass
- {
- CGPROGRAM
- #pragma vertex vert
- #pragma fragment frag
- #include "UnityCG.cginc"
- bool _toggle;
- struct v2f {
-
float4 pos : SV_POSITION; -
float2 uv : TEXCOORD0; - } ;
- v2f vert (appdata_base v)
- {
-
v2f o; -
o.pos = mul(UNITY_MATRIX_MVP,v.vertex); -
return o; - }
- float4 frag (v2f i) : COLOR
- {
-
if(_toggle) -
return float4(1,0,0,1); -
else -
return float4(0,0,0,1); - }
- ENDCG
- }
- }
- }
前一篇:【风宇冲】代码分析工具
后一篇:Shader读取时间优化

加载中…