게임 그래픽 프로그래밍

그래픽스 시험예상문자(홀로그램)

hanui1210 2024. 9. 5. 09:36

Shader "Custom/M4"
{
    Properties
    {
  
        _MainTex ("Albedo (RGB)", 2D) = "white" {}
       _RimColor ("Rim Color", Color) = (1,1,1,1)

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

        CGPROGRAM
      
        #pragma surface surf Standard alpha:fade
        #pragma target 3.0

        sampler2D _MainTex;
        float4 _RimColor;

        struct Input
        {
            float2 uv_MainTex;
            float3 viewDir;
            float3 worldPos;
        };


        void surf (Input IN, inout SurfaceOutputStandard o)
        {
            
            fixed4 c = tex2D (_MainTex, IN.uv_MainTex);
         
           float rim = dot(o.Normal, IN.viewDir);
           float reverse = pow(1-rim, 3);
           o.Emission = _RimColor.rgb;
           float holo = pow(frac(IN.worldPos.g*5-_Time.y),20);
            o.Alpha = reverse + holo;
           
        }
        ENDCG
    }
    FallBack "Diffuse"
}