Shader结构

2020-01-12  本文已影响0人  水曜日鶏
Shader "MyShader/Path"{
    //定义属性
    Properties{
        _Diffuse ("Diffuse",Color) = (1.0,1.0,1.0,1.0)
    }
    //子Shader,在目标平台无法运行会选下一个
    SubShader {
        //渲染按顺序执行
        Pass {
            //渲染模式
                Tags { "LightMode"="ForwardBase" }

                //开始写CG语言
                CGPROGRAM
                
                //定义顶点着色器和片元着色器函数名
                #pragma vertex vert
                #pragma fragment frag
                
                //引用Unity内部方法
                #include "Lighting.cginc"  
                
                //定义属性,需要和Properties里的名称相同
                fixed4 _Diffuse;

                //定义结构体
                struct a2v{
                    float4  vertex : POSITION ;
                    fixed3 normal : NORMAL ;
                } ;

                struct v2f{
                    float4 pos : SV_POSITION;
                    fixed3 color : COLOR;
                } ;
            
                //顶点着色器函数
                v2f vert(a2v v){
                    v2f o;
                    
                    return o;
                }
                
                //片元着色器函数
                fixed4 frag(v2f i) : SV_Target{
                    return fixed4  (1.0,1.0,1.0,1.0);
                }
                ENDCG
        }
    }
}
上一篇 下一篇

猜你喜欢

热点阅读