Shader "Custom/sword"
{
Properties
{
_MainTex ("Albedo (RGB)", 2D) = "white" {}
_Color ("Color", Color) = (1,1,1,1)
_RimPow("Rimpow",Range(1,10))=3
}
SubShader
{
Tags { "RenderType"="Transparent" "Queue"="Transparent" }
CGPROGRAM
#pragma surface surf _Lambert alpha:fade //홀로그램
#pragma target 3.0
sampler2D _MainTex;
float _RimPow;
float4 _Color;
struct Input
{
float4 color : COLOR ;
float2 uv_MainTex;
float3 viewDir;
float3 worldPos;
};
void surf (Input IN, inout SurfaceOutput o)
{
fixed4 c = tex2D (_MainTex, IN.uv_MainTex);
// o.Albedo = IN.color.rgb;
o.Emission =_Color.rgb;
//간격 10배 좁히기, 흰부분 줄이기 30제곱
float holo =pow(frac(IN.worldPos.g*10-_Time.y),30);
float ndotv =saturate(dot(o.Normal,IN.viewDir));
float rim = pow(1-ndotv,_RimPow);
o.Alpha = rim+holo;
}
float4 Lighting_Lambert(SurfaceOutput s, float3 lightDir, float atten)
{
return float4(0,0,0,s.Alpha);
}
ENDCG
}
FallBack "Transparent/Diffuse"
}
'게임개발 > 게임 그래픽 프로그래밍' 카테고리의 다른 글
Lambert-BlinnPhong-Rim 라이트 적용 (0) | 2024.02.21 |
---|---|
BlinnPhong 스펙큘러 (0) | 2024.02.21 |
홀로그램 만들기 (0) | 2024.02.20 |
Rim 라이트 만들기 (0) | 2024.02.20 |
Standard - Lambert -HalfLambert (0) | 2024.02.20 |