2024年1月28日发(作者:)
Shader "Custom/LocalAreaColor"{ Properties { _Texture("Texture",2D) = "white"{} _Color("Color",Color) = (1,1,1,1) _Pos("Pos",Range(-2,2.8)) = 0.2 _Range("Range",Range(0,1)) = 0.2 } SubShader { Tags { "Queue" = "Geometry" "RenderType" = "Opaque" } LOD 100 Pass { CGPROGRAM #pragma vertex vert #pragma fragment frag //sampler取样器 sampler2D _Texture; fixed4 _Color; fixed _Pos; fixed _Range; struct appdata { fixed4 vertex : POSITION; fixed2 uv : TEXCOORD0; }; struct v2f { fixed4 vertex : SV_POSITION; fixed2 uv : TEXCOORD0; fixed4 color : COLOR; }; v2f vert(appdata i) { v2f o; = ; if(.z <= _Pos && .z >= _Pos - _Range) { = _Color; } else { = fixed4(1, 1, 1, 1); } = UnityObjectToClipPos(); return o; } fixed4 frag(v2f i) : SV_Target { return tex2D(_Texture, ) * ; } ENDCG } }}2.4、局部位置顶点偏移
Shader "Custom/LocalDirectionOffset"{ Properties { _Texture("Texture",2D) = "white"{} _Scale("Scale",Range(0,0.05)) = 0.00125 _Pos("Pos",Range(-2,2.8)) = 0.2 _Range("Range",Range(0,1)) = 0.2 } SubShader { Tags { "Queue" = "Geometry" "RenderType" = "Opaque" } LOD 100 Pass { CGPROGRAM #pragma vertex vert #pragma fragment frag sampler2D _Texture; fixed _Scale; fixed _Pos; fixed _Range; struct appdata { fixed4 vertex : POSITION; fixed4 normal : NORMAL; fixed2 uv : TEXCOORD0; }; struct v2f { fixed4 vertex : SV_POSITION; fixed2 uv : TEXCOORD0; }; v2f vert(appdata i) { v2f o; = ; if (.z <= _Pos && .z >= _Pos - _Range) { += * _Scale; } = UnityObjectToClipPos(); return o; } fixed4 frag(v2f i) : SV_Target { return tex2D(_Texture, ); } ENDCG } }
}2.5、3D模型外边框ShaderShader "Custom/Outline"{ Properties { _Texture("Texture",2D) = "white"{}


发布评论