• ShaderLab 枚举常量


    1.     public enum ZTest
    2.     {
    3.         Always = 0,
    4.         Less = 2,
    5.         Equal = 3,
    6.         LEqual = 4,
    7.         GEqual = 5,
    8.     }
    // Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)'

    Shader "NexgenDragon/FX/Particle" {
    Properties {
    [Enum(Additive,1,AlphaBlend,10)] _DstBlend("Desination Blend Options", Int) = 1
    [Enum(Always,0,Less,2)] _ZTest("Z Test Options", Int) = 2
    _MainTex ("Base (RGB)", 2D) = "white" {}
    _TintColor ("Tint Color", Color) = (0.5,0.5,0.5,1)
    _AlphaFactor ("Alpha Factor", Range(0, 2)) = 2
    _Brightness ("Brightness", Float) = 2
    }

    Category {
    Tags { "Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent" }
    Blend SrcAlpha [_DstBlend]
    Cull Off
    ZWrite Off
    ZTest [_ZTest]
    Lighting Off
    SubShader {
    Pass {
    CGPROGRAM
    #pragma vertex vert
    #pragma fragment frag
    #pragma fragmentoption ARB_precision_hint_fastest

    #include "UnityCG.cginc"

    uniform sampler2D _MainTex;
    uniform fixed4 _TintColor;
    uniform fixed _AlphaFactor;
    uniform half _Brightness;

    struct appdata_t {
    float4 vertex : POSITION;
    fixed4 color : COLOR;
    half2 texcoord : TEXCOORD0;
    };

    struct v2f {
    float4 vertex : POSITION;
    fixed4 color : COLOR;
    half2 texcoord : TEXCOORD0;
    };

    half4 _MainTex_ST;

    v2f vert (appdata_t v)
    {
    v2f o;
    o.vertex = UnityObjectToClipPos(v.vertex);
    o.color = v.color;
    o.texcoord = TRANSFORM_TEX(v.texcoord,_MainTex);
    return o;
    }

    fixed4 frag (v2f i) : COLOR
    {
    fixed4 c = i.color * _TintColor * tex2D(_MainTex, i.texcoord);
    fixed3 rgb = c.rgb;
    fixed a = c.a * _AlphaFactor;
    rgb = rgb * _Brightness;
    return fixed4(rgb.r, rgb.g, rgb.b, a);
    }
    ENDCG
    }
    }
    FallBack "Diffuse"
    }
    }
  • 相关阅读:
    linux 压缩当前文件夹下所有文件
    redis从入门到精通
    焦点小组测试和可用性测试
    面包屑的故事
    VSCode导入两个工程示例
    数据库规格化
    mergeCI一点小波澜
    Java中List与Set相互转化
    MyBatis中in的使用
    长寿时代的养老风险管理
  • 原文地址:https://www.cnblogs.com/lilei9110/p/9439176.html
Copyright © 2020-2023  润新知