Noraml Extrusion Shader
폴리곤의 노멀벡터 방향으로 버텍스를 확장시키는 간단한 기법
3D 모델을 좀 더 통통하게 할 때(혹은 반대로) 사용
-------------------------------------------------------------
v.vertex.xyz += v.normal * _Amount;
-------------------------------------------------------------
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | Shader "Custom/NormalExtrusion" { Properties { _MainTex ("Texture", 2D) = "white" {} _Amount ("Extrusion Amount", Range(-1.0, 1.0)) = 0 } SubShader { Tags { "RenderType" = "Opaque" } CGPROGRAM #pragma surface surf Lambert vertex:vert struct Input { float2 uv_MainTex; }; float _Amount; void vert (inout appdata_full v) { v.vertex.xyz += v.normal * _Amount; } sampler2D _MainTex; void surf (Input IN, inout SurfaceOutput o) { o.Albedo = tex2D (_MainTex, IN.uv_MainTex).rgb; } ENDCG } FallBack "Diffuse" } | cs |
[ _Amount : 0 ]
[ _Amount : -0.2 ]
[ _Amount : 0.5 ]
'02.Development > Shader' 카테고리의 다른 글
[Shader] 셰이더 기초 (공유) (1) | 2016.02.04 |
---|