• 边缘到内部亮度逐渐递减shader(使用顶点法线和顶点到摄像机向量点积)


    Shader "Unlit/WaterEffect"
    {
    Properties {
    _MainTex("Base 2D", 2D) = "white"{}
    _Color("Color",Color) = (1,1,1,1)
    }
    SubShader {

    Tags{"Queue"="Transparent" "RenderType" = "Opaque"}

    Pass
    {
    Blend SrcAlpha One//打开混合模式
    ZWrite off
    Lighting off
    CGPROGRAM

    #pragma vertex vert
    #pragma fragment frag
    #include "Lighting.cginc"

    struct appdata
    {
    float4 vertex:POSITION;
    float3 normal:Normal;
    };
    struct v2f {
    float4 vertex:SV_POSITION;
    float4 color:COLOR;
    };

    sampler2D _MainTex;
    float4 _MainTex_ST;
    float4 _Color;

    v2f vert (appdata v)
    {
    v2f o;
    o.vertex = UnityObjectToClipPos(v.vertex);
    float3 viewDir = normalize(ObjSpaceViewDir(v.vertex));//计算出顶点到相机的向量
    float val = 1 - saturate(dot(v.normal, viewDir));//计算点乘值
    o.color = _Color * val;
    return o;
    }

    fixed4 frag(v2f i): COLOR
    {
    return i.color;
    }
    ENDCG
    }

    }
    FallBack "Diffuse"
    }

  • 相关阅读:
    3372 选学霸
    3556 科技庄园
    1025 选菜
    UVA 437 The Tower of Babylon巴比伦塔
    3641 上帝选人
    tyvj P1175 机器人
    1692 子集和的目标值
    1689 建造高塔
    NOI2002 贪吃的九头龙
    NYOJ110 剑客决斗
  • 原文地址:https://www.cnblogs.com/mcyushao/p/13367944.html
Copyright © 2020-2023  润新知