Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Shader "BlenderesHighlight" {
- Properties {
- _Color ("Main Color", Color) = (1,1,1,1)
- _OutlineColor ("Outline Color", Color) = (0,0,0,1)
- _Outline ("Outline width", Range (0.002, 0.03)) = 0.01
- _MainTex ("Base (RGB)", 2D) = "white" { }
- }
- SubShader {
- Tags { "RenderType"="Opaque" }
- UsePass "Toon/Basic/BASE"
- Pass {
- Name "OUTLINE"
- Tags { "LightMode" = "Always" }
- CGPROGRAM
- #pragma vertex vert
- struct appdata {
- float4 vertex;
- float3 normal;
- };
- struct v2f {
- float4 pos : POSITION;
- float4 color : COLOR;
- float fog : FOGC;
- };
- uniform float _Outline;
- uniform float4 _OutlineColor;
- v2f vert(appdata v) {
- v2f o;
- o.pos = mul(UNITY_MATRIX_MVP, v.vertex);
- float3 norm = mul ((float3x3)UNITY_MATRIX_MV, v.normal);
- norm.x *= UNITY_MATRIX_P[0][0];
- norm.y *= UNITY_MATRIX_P[1][1];
- o.pos.xy += norm.xy * _Outline;
- o.fog = o.pos.z;
- o.color = _OutlineColor;
- return o;
- }
- ENDCG
- //Color (0,0,0,0)
- Cull Front
- ZWrite On
- ColorMask RGB
- Blend SrcAlpha OneMinusSrcAlpha
- SetTexture [_MainTex] { combine primary }
- }
- }
- Fallback "Diffuse"
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement