diff --git a/Assets/Cryville/Crtr/GenericResources.cs b/Assets/Cryville/Crtr/GenericResources.cs index 06134c5..7f20326 100644 --- a/Assets/Cryville/Crtr/GenericResources.cs +++ b/Assets/Cryville/Crtr/GenericResources.cs @@ -33,6 +33,7 @@ namespace Cryville.Crtr { Materials.Add("-SpriteMat", Resources.Load("Materials/SpriteMat")); Shaders.Add("default", Shader.Find("Sprites/Default")); + Shaders.Add("additive", Shader.Find("Sprites/Additive")); loaded = true; } diff --git a/Assets/Resources/Shaders.meta b/Assets/Resources/Shaders.meta new file mode 100644 index 0000000..87f4025 --- /dev/null +++ b/Assets/Resources/Shaders.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 9bd2dd8289f72d5479fc93154ddaf762 +folderAsset: yes +DefaultImporter: + externalObjects: {} + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Resources/Shaders/Sprites-Additive.shader b/Assets/Resources/Shaders/Sprites-Additive.shader new file mode 100644 index 0000000..f2b61c7 --- /dev/null +++ b/Assets/Resources/Shaders/Sprites-Additive.shader @@ -0,0 +1,74 @@ +// Upgrade NOTE: replaced 'mul(UNITY_MATRIX_MVP,*)' with 'UnityObjectToClipPos(*)' + +Shader "Sprites/Additive" +{ + Properties + { + [PerRendererData] _MainTex("Sprite Texture", 2D) = "white" {} + _Color("Tint", Color) = (1,1,1,1) + [MaterialToggle] PixelSnap("Pixel snap", Float) = 0 + } + + SubShader + { + Tags + { + "Queue" = "Transparent" + "IgnoreProjector" = "True" + "RenderType" = "Transparent" + "PreviewType" = "Plane" + "CanUseSpriteAtlas" = "True" + } + + Cull Off + Lighting Off + ZWrite Off + Fog { Mode Off } + Blend SrcAlpha One + + Pass + { + CGPROGRAM + #pragma vertex vert + #pragma fragment frag + #pragma multi_compile DUMMY PIXELSNAP_ON + #include "UnityCG.cginc" + + struct appdata_t { + float4 vertex : POSITION; + float4 color : COLOR; + float2 texcoord : TEXCOORD0; + }; + + struct v2f { + float4 vertex : SV_POSITION; + fixed4 color : COLOR; + half2 texcoord : TEXCOORD0; + }; + + fixed4 _Color; + + v2f vert(appdata_t IN) { + v2f OUT; + OUT.vertex = UnityObjectToClipPos(IN.vertex); + OUT.texcoord = IN.texcoord; + OUT.color = IN.color * _Color; + #ifdef PIXELSNAP_ON + OUT.vertex = UnityPixelSnap(OUT.vertex); + #endif + + return OUT; + } + + sampler2D _MainTex; + + fixed4 frag(v2f IN) : SV_Target + { + fixed4 c = tex2D(_MainTex, IN.texcoord) * IN.color; + c.rgb *= c.a; + return c; + } + ENDCG + } + } +} \ No newline at end of file diff --git a/Assets/Resources/Shaders/Sprites-Additive.shader.meta b/Assets/Resources/Shaders/Sprites-Additive.shader.meta new file mode 100644 index 0000000..e1a5767 --- /dev/null +++ b/Assets/Resources/Shaders/Sprites-Additive.shader.meta @@ -0,0 +1,10 @@ +fileFormatVersion: 2 +guid: 566d6ad96aab9ea4599b9595dc35f01d +ShaderImporter: + externalObjects: {} + defaultTextures: [] + nonModifiableTextures: [] + preprocessorOverride: 0 + userData: + assetBundleName: + assetBundleVariant: