Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Sprite Shader Editor - Visual Scripting for 2D shaders

Discussion in 'Assets and Asset Store' started by DawidMoza, Sep 17, 2018.

  1. DawidMoza

    DawidMoza

    Joined:
    Nov 24, 2016
    Posts:
    216
  2. JJHaggar

    JJHaggar

    Joined:
    Jul 11, 2015
    Posts:
    4
    I want to buy this asset, but I would like to know if the shaders created by "Sprite Shader Editor" are written in Unity's ShaderLab Syntax. If not, can they be exported to that syntax?

    Thanks in advance! :)
     
  3. DawidMoza

    DawidMoza

    Joined:
    Nov 24, 2016
    Posts:
    216
    Yes, they are. Here is a simple example of how it looks.

    Code (CSharp):
    1. //{"Values":["0","NTEC/Sprite/Sample_Gradient","_MainTex","0",""]}|{"position":{"serializedVersion":"2","x":0.0,"y":0.0,"width":212.0,"height":89.0},"name":"Color","selected":false,"Values":["LeftUp","Left up color ","0","0","0","1"],"serial":0,"unique":-1,"type":"ColorField"}|{"position":{"serializedVersion":"2","x":0.0,"y":106.0,"width":212.0,"height":89.0},"name":"Color","selected":false,"Values":["RightUp","Right up color","0","0","0","1"],"serial":1,"unique":2802,"type":"ColorField"}|{"position":{"serializedVersion":"2","x":0.0,"y":212.0,"width":212.0,"height":89.0},"name":"Color","selected":false,"Values":["LeftDown","Left down color","0","0","0","1"],"serial":2,"unique":2608,"type":"ColorField"}|{"position":{"serializedVersion":"2","x":0.0,"y":318.0,"width":212.0,"height":89.0},"name":"Color","selected":false,"Values":["RightDown","Right down color","0","0","0","1"],"serial":3,"unique":3241,"type":"ColorField"}
    2. //\    SpriteOutput\    2356\    462\    192\    255\        False\            null\            null\        False\            null\            null\        False\            null\            null\        False\            null\            null\        True\            4\            0\    DefaultUV\    1230\    950\    192\    175\        False\            null\            null\        False\            null\            null\        True\            3\            7\    ValueGradient\    1646\    72\    192\    540\        /1.0\        /0.0\        /0.0\        /1.0\        /0.0\        /1.0\        /0.0\        /1.0\        /0.0\        /0.0\        /1.0\        /1.0\        /0.0\        /0.0\        /0.0\        /1.0\        False\            null\            null\        False\            null\            null\        False\            null\            null\        False\            null\            null\        True\            4\            1\        True\            5\            0\        True\            6\            0\        True\            7\            0\        True\            8\            0\        False\            null\            null\        False\            null\            null\        True\            1\            2\    SpriteInput\    1644\    704\    192\    375\        False\            null\            null\        False\            null\            null\        False\            null\            null\        False\            null\            null\        True\            4\            2\        False\            null\            null\        False\            null\            null\        True\            1\            2\    Mul\    2038\    604\    192\    215\        /4\        True\            0\            4\        True\            2\            4\        True\            3\            4\        False\            null\            null\    _Color\    738\    38\    192\    255\        /LeftUp\        /1\        /-1\        True\            2\            5\        False\            null\            null\        False\            null\            null\        False\            null\            null\        False\            null\            null\    _Color\    706\    362\    192\    255\        /RightUp\        /2\        /2802\        True\            2\            6\        False\            null\            null\        False\            null\            null\        False\            null\            null\        False\            null\            null\    _Color\    784\    740\    192\    255\        /LeftDown\        /3\        /2608\        True\            2\            7\        False\            null\            null\        False\            null\            null\        False\            null\            null\        False\            null\            null\    _Color\    812\    1030\    192\    255\        /RightDown\        /4\        /3241\        True\            2\            8\        False\            null\            null\        False\            null\            null\        False\            null\            null\        False\            null\            null
    3.  
    4. Shader "NTEC/Sprite/Sample_Gradient" {
    5.  
    6.     Properties {
    7.         [HideInInspector] _MainTex ("MainTex", 2D) = "defaulttexture" {}
    8.         _LeftUp ("LeftUp", Color) = (0,0,0,1)
    9.         _RightUp ("RightUp", Color) = (0,0,0,1)
    10.         _LeftDown ("LeftDown", Color) = (0,0,0,1)
    11.         _RightDown ("RightDown", Color) = (0,0,0,1)
    12.     }
    13.  
    14.     SubShader {
    15.         Tags { "Queue" = "Transparent" "RenderType" = "Transparent" "IgnoreProjector" = "True" "PreviewType" = "Plane" "CanUseSpriteAtlas" = "True" }
    16.         Cull Off Lighting Off ZWrite Off Blend SrcAlpha OneMinusSrcAlpha
    17.  
    18.         Pass {
    19.             CGPROGRAM
    20.             #pragma vertex vert
    21.             #pragma fragment frag
    22.  
    23.             #include "UnityCG.cginc"
    24.  
    25.             struct appdata {
    26.                 half4 vertex : POSITION;
    27.                 half2 uv : TEXCOORD0;
    28.             };
    29.  
    30.             struct v2f {
    31.                 half4 vertex : SV_POSITION;
    32.                 half2 uv : TEXCOORD0;
    33.             };
    34.  
    35.             v2f vert (appdata v) {
    36.                 v2f o;
    37.                 o.vertex = UnityObjectToClipPos(v.vertex);
    38.                 o.uv = v.uv;
    39.                 return o;
    40.             }
    41.  
    42.             uniform sampler2D _MainTex;
    43.             uniform half4 _LeftUp;
    44.             uniform half4 _RightUp;
    45.             uniform half4 _LeftDown;
    46.             uniform half4 _RightDown;
    47.  
    48.             half4 frag (v2f i) : SV_Target {
    49.                 half4 SpriteOutput = 0.0;
    50.                 SpriteOutput = (lerp(lerp(_LeftDown,_RightDown,i.uv.x),lerp(_LeftUp,_RightUp,i.uv.x),i.uv.y) * tex2D(_MainTex, i.uv));
    51.                 return SpriteOutput;
    52.             }
    53.             ENDCG
    54.         }
    55.     }
    56. }
     
    JJHaggar likes this.
  4. JJHaggar

    JJHaggar

    Joined:
    Jul 11, 2015
    Posts:
    4
    Awesome, thank you! :D