forked from BilalY/Rasagar
76 lines
2.4 KiB
Plaintext
76 lines
2.4 KiB
Plaintext
|
// Simplified SDF shader:
|
||
|
// - No Shading Option (bevel / bump / env map)
|
||
|
// - No Glow Option
|
||
|
// - Softness is applied on both side of the outline
|
||
|
|
||
|
Shader "Hidden/TMP/Internal/Editor/Distance Field SSD" {
|
||
|
|
||
|
Properties{
|
||
|
_FaceColor("Face Color", Color) = (1,1,1,1)
|
||
|
_FaceDilate("Face Dilate", Range(-1,1)) = 0
|
||
|
|
||
|
_OutlineColor("Outline Color", Color) = (0,0,0,1)
|
||
|
_OutlineWidth("Outline Thickness", Range(0,1)) = 0
|
||
|
_OutlineSoftness("Outline Softness", Range(0,1)) = 0
|
||
|
|
||
|
_UnderlayColor("Border Color", Color) = (0,0,0,.5)
|
||
|
_UnderlayOffsetX("Border OffsetX", Range(-1,1)) = 0
|
||
|
_UnderlayOffsetY("Border OffsetY", Range(-1,1)) = 0
|
||
|
_UnderlayDilate("Border Dilate", Range(-1,1)) = 0
|
||
|
_UnderlaySoftness("Border Softness", Range(0,1)) = 0
|
||
|
|
||
|
_WeightNormal("Weight Normal", float) = 0
|
||
|
_WeightBold("Weight Bold", float) = .5
|
||
|
|
||
|
_ShaderFlags("Flags", float) = 0
|
||
|
_ScaleRatioA("Scale RatioA", float) = 1
|
||
|
_ScaleRatioB("Scale RatioB", float) = 1
|
||
|
_ScaleRatioC("Scale RatioC", float) = 1
|
||
|
|
||
|
_MainTex("Font Atlas", 2D) = "white" {}
|
||
|
_TextureWidth("Texture Width", float) = 1024
|
||
|
_TextureHeight("Texture Height", float) = 1024
|
||
|
_GradientScale("Gradient Scale", float) = 1
|
||
|
_ScaleX("Scale X", float) = 1
|
||
|
_ScaleY("Scale Y", float) = 1
|
||
|
_PerspectiveFilter("Perspective Correction", Range(0, 1)) = 0.875
|
||
|
_Sharpness("Sharpness", Range(-1,1)) = 0
|
||
|
|
||
|
_VertexOffsetX("Vertex OffsetX", float) = 0
|
||
|
_VertexOffsetY("Vertex OffsetY", float) = 0
|
||
|
}
|
||
|
|
||
|
SubShader
|
||
|
{
|
||
|
Tags
|
||
|
{
|
||
|
"ForceSupported" = "True"
|
||
|
}
|
||
|
|
||
|
Lighting Off
|
||
|
Blend One OneMinusSrcAlpha
|
||
|
Cull Off
|
||
|
ZWrite Off
|
||
|
ZTest Always
|
||
|
|
||
|
Pass
|
||
|
{
|
||
|
CGPROGRAM
|
||
|
#pragma vertex VertShader
|
||
|
#pragma fragment PixShader
|
||
|
#pragma shader_feature __ OUTLINE_ON
|
||
|
#pragma shader_feature __ UNDERLAY_ON UNDERLAY_INNER
|
||
|
|
||
|
#include "UnityCG.cginc"
|
||
|
#include "UnityUI.cginc"
|
||
|
#include "TMP_Properties.cginc"
|
||
|
|
||
|
#include "TMP_SDF_SSD.cginc"
|
||
|
|
||
|
ENDCG
|
||
|
}
|
||
|
}
|
||
|
|
||
|
CustomEditor "TMPro.EditorUtilities.TMP_SDFShaderGUI"
|
||
|
}
|