{"id":4897,"date":"2018-12-20T03:03:54","date_gmt":"2018-12-19T19:03:54","guid":{"rendered":"https:\/\/unitycoder.com\/blog\/?p=4897"},"modified":"2018-12-20T18:47:03","modified_gmt":"2018-12-20T10:47:03","slug":"marching-ants-selection-outline-shader","status":"publish","type":"post","link":"https:\/\/unitycoder.com\/blog\/2018\/12\/20\/marching-ants-selection-outline-shader\/","title":{"rendered":"Marching Ants Sprite Outline Shader"},"content":{"rendered":"<p>Saw interesting question here <a href=\"https:\/\/forum.unity.com\/threads\/animated-outline-effects-using-shader.600028\/\" target=\"_blank\" rel=\"noopener\">https:\/\/forum.unity.com\/threads\/animated-outline-effects-using-shader.600028\/<\/a><\/p>\n<p>and unity sprite outline\u00a0<a href=\"https:\/\/github.com\/wlgys8\/Sprites-Outline\" target=\"_blank\" rel=\"noopener\">https:\/\/github.com\/wlgys8\/Sprites-Outline<\/a> + stackoverflow <a href=\"https:\/\/stackoverflow.com\/a\/16856878\/5452781\" target=\"_blank\" rel=\"noopener\">https:\/\/stackoverflow.com\/a\/16856878\/5452781<\/a> to the rescue!<br \/>\n(although this is for 2D sprite..)<\/p>\n<p><strong>Results:<\/strong><br \/>\n<img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"4899\" data-permalink=\"https:\/\/unitycoder.com\/blog\/2018\/12\/20\/marching-ants-selection-outline-shader\/unity-marching-ants-selection-outline-effect-shader\/\" data-orig-file=\"https:\/\/i0.wp.com\/unitycoder.com\/blog\/wp-content\/uploads\/2018\/12\/unity-marching-ants-selection-outline-effect-shader.gif?fit=387%2C289&amp;ssl=1\" data-orig-size=\"387,289\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"unity-marching-ants-selection-outline-effect-shader\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/unitycoder.com\/blog\/wp-content\/uploads\/2018\/12\/unity-marching-ants-selection-outline-effect-shader.gif?fit=387%2C289&amp;ssl=1\" class=\"alignnone size-full wp-image-4899\" src=\"https:\/\/i0.wp.com\/unitycoder.com\/blog\/wp-content\/uploads\/2018\/12\/unity-marching-ants-selection-outline-effect-shader.gif?resize=387%2C289&#038;ssl=1\" alt=\"\" width=\"387\" height=\"289\" \/><\/p>\n<p><strong>TODO<\/strong><br \/>\n&#8211; Test how this would look with screenspace values (to keep same size even if zoomed)<br \/>\n&#8211; Maybe could check neighbor pixel to get &#8220;flowing direction&#8221; for each pixel ?<\/p>\n<p><strong>Modified shader:<\/strong> *note: hard coded values, could put them into properties, and also download the original github project first to test.<\/p>\n<style>.gist table { margin-bottom: 0; }<\/style>\n<div style=\"tab-size: 8\" id=\"gist93660015\" class=\"gist\">\n<div class=\"gist-file\" translate=\"no\" data-color-mode=\"light\" data-light-theme=\"light\">\n<div class=\"gist-data\">\n<div class=\"js-gist-file-update-container js-task-list-container\">\n<div id=\"file-marching-ants-outline-shader\" class=\"file my-2\">\n<div itemprop=\"text\"\n      class=\"Box-body p-0 blob-wrapper data type-shaderlab  \"\n      style=\"overflow: auto\" tabindex=\"0\" role=\"region\"\n      aria-label=\"marching-ants-outline.shader content, created by unitycoder on 06:55PM on December 19, 2018.\"\n    ><\/p>\n<div class=\"js-check-hidden-unicode js-blob-code-container blob-code-content\">\n<p>  <template class=\"js-file-alert-template\"><\/p>\n<div data-view-component=\"true\" class=\"flash flash-warn flash-full d-flex flex-items-center\">\n  <svg aria-hidden=\"true\" data-component=\"Octicon\" height=\"16\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" data-view-component=\"true\" class=\"octicon octicon-alert\">\n    <path d=\"M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z\"><\/path>\n<\/svg><br \/>\n    <span><br \/>\n      This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.<br \/>\n      <a class=\"Link--inTextBlock\" href=\"https:\/\/github.co\/hiddenchars\" target=\"_blank\">Learn more about bidirectional Unicode characters<\/a><br \/>\n    <\/span><\/p>\n<div data-view-component=\"true\" class=\"flash-action\">        <a href=\"{{ revealButtonHref }}\" data-view-component=\"true\" class=\"btn-sm btn\">    Show hidden characters<br \/>\n<\/a>\n<\/div>\n<\/div>\n<p><\/template><br \/>\n<template class=\"js-line-alert-template\"><br \/>\n  <span aria-label=\"This line has hidden Unicode characters\" data-view-component=\"true\" class=\"line-alert tooltipped tooltipped-e\"><br \/>\n    <svg aria-hidden=\"true\" data-component=\"Octicon\" height=\"16\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" data-view-component=\"true\" class=\"octicon octicon-alert\">\n    <path d=\"M6.457 1.047c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0 1 14.082 15H1.918a1.75 1.75 0 0 1-1.543-2.575Zm1.763.707a.25.25 0 0 0-.44 0L1.698 13.132a.25.25 0 0 0 .22.368h12.164a.25.25 0 0 0 .22-.368Zm.53 3.996v2.5a.75.75 0 0 1-1.5 0v-2.5a.75.75 0 0 1 1.5 0ZM9 11a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z\"><\/path>\n<\/svg><br \/>\n<\/span><\/template><\/p>\n<table data-hpc class=\"highlight tab-size js-file-line-container\" data-tab-size=\"4\" data-paste-markdown-skip data-tagsearch-path=\"marching-ants-outline.shader\">\n<tr>\n<td id=\"file-marching-ants-outline-shader-L1\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"1\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC1\" class=\"blob-code blob-code-inner js-file-line\">\/\/ original source: https:\/\/github.com\/wlgys8\/Sprites-Outline<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L2\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"2\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC2\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L3\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"3\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC3\" class=\"blob-code blob-code-inner js-file-line\">Shader &quot;Sprites\/Outline (Marching Ants)&quot;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L4\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"4\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC4\" class=\"blob-code blob-code-inner js-file-line\">{<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L5\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"5\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC5\" class=\"blob-code blob-code-inner js-file-line\">    Properties<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L6\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"6\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC6\" class=\"blob-code blob-code-inner js-file-line\">    {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L7\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"7\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC7\" class=\"blob-code blob-code-inner js-file-line\">        [PerRendererData] _MainTex (&quot;Sprite Texture&quot;, 2D) = &quot;white&quot; {}<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L8\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"8\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC8\" class=\"blob-code blob-code-inner js-file-line\">        _Color (&quot;Tint&quot;, Color) = (1,1,1,1)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L9\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"9\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC9\" class=\"blob-code blob-code-inner js-file-line\">        [MaterialToggle] PixelSnap (&quot;Pixel snap&quot;, Float) = 0<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L10\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"10\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC10\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L11\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"11\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC11\" class=\"blob-code blob-code-inner js-file-line\">        \/\/ Add values to determine if outlining is enabled and outline color.<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L12\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"12\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC12\" class=\"blob-code blob-code-inner js-file-line\">        [PerRendererData] _OutlineSize (&quot;Outline&quot;, Float) = 0<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L13\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"13\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC13\" class=\"blob-code blob-code-inner js-file-line\">        [PerRendererData] _OutlineColor(&quot;Outline Color&quot;, Color) = (1,1,1,1)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L14\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"14\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC14\" class=\"blob-code blob-code-inner js-file-line\">    }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L15\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"15\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC15\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L16\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"16\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC16\" class=\"blob-code blob-code-inner js-file-line\">    CGINCLUDE<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L17\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"17\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC17\" class=\"blob-code blob-code-inner js-file-line\">    #include &quot;UnityCG.cginc&quot;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L18\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"18\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC18\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L19\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"19\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC19\" class=\"blob-code blob-code-inner js-file-line\">    struct appdata_t<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L20\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"20\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC20\" class=\"blob-code blob-code-inner js-file-line\">    {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L21\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"21\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC21\" class=\"blob-code blob-code-inner js-file-line\">        float4 vertex   : POSITION;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L22\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"22\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC22\" class=\"blob-code blob-code-inner js-file-line\">        float4 color    : COLOR;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L23\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"23\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC23\" class=\"blob-code blob-code-inner js-file-line\">        float2 texcoord : TEXCOORD0;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L24\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"24\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC24\" class=\"blob-code blob-code-inner js-file-line\">    };<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L25\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"25\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC25\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L26\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"26\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC26\" class=\"blob-code blob-code-inner js-file-line\">    struct v2f<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L27\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"27\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC27\" class=\"blob-code blob-code-inner js-file-line\">    {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L28\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"28\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC28\" class=\"blob-code blob-code-inner js-file-line\">        float4 vertex   : SV_POSITION;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L29\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"29\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC29\" class=\"blob-code blob-code-inner js-file-line\">        fixed4 color    : COLOR;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L30\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"30\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC30\" class=\"blob-code blob-code-inner js-file-line\">        float2 texcoord  : TEXCOORD0;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L31\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"31\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC31\" class=\"blob-code blob-code-inner js-file-line\">    };<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L32\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"32\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC32\" class=\"blob-code blob-code-inner js-file-line\">    fixed4 _Color;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L33\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"33\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC33\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L34\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"34\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC34\" class=\"blob-code blob-code-inner js-file-line\">    v2f vert_outline(appdata_t IN)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L35\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"35\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC35\" class=\"blob-code blob-code-inner js-file-line\">    {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L36\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"36\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC36\" class=\"blob-code blob-code-inner js-file-line\">        v2f OUT;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L37\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"37\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC37\" class=\"blob-code blob-code-inner js-file-line\">        OUT.vertex = UnityObjectToClipPos(IN.vertex);<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L38\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"38\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC38\" class=\"blob-code blob-code-inner js-file-line\">        OUT.texcoord = IN.texcoord;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L39\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"39\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC39\" class=\"blob-code blob-code-inner js-file-line\">        OUT.color = IN.color * _Color;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L40\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"40\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC40\" class=\"blob-code blob-code-inner js-file-line\">        #ifdef PIXELSNAP_ON<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L41\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"41\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC41\" class=\"blob-code blob-code-inner js-file-line\">        OUT.vertex = UnityPixelSnap (OUT.vertex);<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L42\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"42\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC42\" class=\"blob-code blob-code-inner js-file-line\">        #endif<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L43\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"43\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC43\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L44\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"44\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC44\" class=\"blob-code blob-code-inner js-file-line\">        return OUT;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L45\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"45\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC45\" class=\"blob-code blob-code-inner js-file-line\">    }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L46\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"46\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC46\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L47\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"47\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC47\" class=\"blob-code blob-code-inner js-file-line\">   \tsampler2D _MainTex;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L48\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"48\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC48\" class=\"blob-code blob-code-inner js-file-line\">    sampler2D _AlphaTex;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L49\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"49\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC49\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L50\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"50\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC50\" class=\"blob-code blob-code-inner js-file-line\">    float4 _MainTex_TexelSize; \/\/magic var<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L51\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"51\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC51\" class=\"blob-code blob-code-inner js-file-line\">    float _OutlineSize; \/\/outline size<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L52\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"52\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC52\" class=\"blob-code blob-code-inner js-file-line\">    fixed4 _OutlineColor; \/\/ outlie color<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L53\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"53\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC53\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L54\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"54\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC54\" class=\"blob-code blob-code-inner js-file-line\">    fixed4 SampleSpriteTexture (float2 uv)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L55\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"55\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC55\" class=\"blob-code blob-code-inner js-file-line\">    {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L56\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"56\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC56\" class=\"blob-code blob-code-inner js-file-line\">        fixed4 color = tex2D (_MainTex, uv);<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L57\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"57\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC57\" class=\"blob-code blob-code-inner js-file-line\">        return color;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L58\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"58\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC58\" class=\"blob-code blob-code-inner js-file-line\">    }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L59\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"59\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC59\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L60\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"60\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC60\" class=\"blob-code blob-code-inner js-file-line\">\tENDCG<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L61\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"61\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC61\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L62\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"62\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC62\" class=\"blob-code blob-code-inner js-file-line\">    SubShader<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L63\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"63\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC63\" class=\"blob-code blob-code-inner js-file-line\">    {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L64\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"64\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC64\" class=\"blob-code blob-code-inner js-file-line\">        Tags<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L65\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"65\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC65\" class=\"blob-code blob-code-inner js-file-line\">        {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L66\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"66\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC66\" class=\"blob-code blob-code-inner js-file-line\">            &quot;Queue&quot;=&quot;Transparent&quot;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L67\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"67\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC67\" class=\"blob-code blob-code-inner js-file-line\">            &quot;IgnoreProjector&quot;=&quot;True&quot;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L68\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"68\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC68\" class=\"blob-code blob-code-inner js-file-line\">            &quot;RenderType&quot;=&quot;Transparent&quot;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L69\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"69\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC69\" class=\"blob-code blob-code-inner js-file-line\">            &quot;PreviewType&quot;=&quot;Plane&quot;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L70\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"70\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC70\" class=\"blob-code blob-code-inner js-file-line\">            &quot;CanUseSpriteAtlas&quot;=&quot;True&quot;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L71\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"71\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC71\" class=\"blob-code blob-code-inner js-file-line\">        }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L72\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"72\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC72\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L73\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"73\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC73\" class=\"blob-code blob-code-inner js-file-line\">        Cull Off<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L74\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"74\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC74\" class=\"blob-code blob-code-inner js-file-line\">        Lighting Off<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L75\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"75\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC75\" class=\"blob-code blob-code-inner js-file-line\">        ZWrite Off<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L76\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"76\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC76\" class=\"blob-code blob-code-inner js-file-line\">        Blend One OneMinusSrcAlpha<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L77\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"77\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC77\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L78\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"78\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC78\" class=\"blob-code blob-code-inner js-file-line\">        \/\/outline down<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L79\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"79\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC79\" class=\"blob-code blob-code-inner js-file-line\">        Pass<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L80\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"80\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC80\" class=\"blob-code blob-code-inner js-file-line\">        {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L81\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"81\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC81\" class=\"blob-code blob-code-inner js-file-line\">       \t\tOffset 1, 1<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L82\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"82\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC82\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L83\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"83\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC83\" class=\"blob-code blob-code-inner js-file-line\">            CGPROGRAM<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L84\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"84\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC84\" class=\"blob-code blob-code-inner js-file-line\">            #pragma vertex vert<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L85\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"85\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC85\" class=\"blob-code blob-code-inner js-file-line\">            #pragma fragment frag<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L86\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"86\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC86\" class=\"blob-code blob-code-inner js-file-line\">            #pragma multi_compile _ PIXELSNAP_ON<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L87\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"87\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC87\" class=\"blob-code blob-code-inner js-file-line\">            #pragma shader_feature ETC1_EXTERNAL_ALPHA<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L88\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"88\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC88\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L89\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"89\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC89\" class=\"blob-code blob-code-inner js-file-line\">            v2f vert(appdata_t IN)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L90\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"90\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC90\" class=\"blob-code blob-code-inner js-file-line\">            {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L91\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"91\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC91\" class=\"blob-code blob-code-inner js-file-line\">            \treturn vert_outline(IN);<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L92\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"92\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC92\" class=\"blob-code blob-code-inner js-file-line\">            }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L93\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"93\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC93\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L94\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"94\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC94\" class=\"blob-code blob-code-inner js-file-line\">            fixed4 frag(v2f IN) : SV_Target<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L95\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"95\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC95\" class=\"blob-code blob-code-inner js-file-line\">            {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L96\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"96\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC96\" class=\"blob-code blob-code-inner js-file-line\">               \tfixed4 texColor = SampleSpriteTexture (IN.texcoord + fixed2(0,_MainTex_TexelSize.y*_OutlineSize)) * IN.color;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L97\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"97\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC97\" class=\"blob-code blob-code-inner js-file-line\">               \tfixed4 c = _OutlineColor * texColor.a;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L98\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"98\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC98\" class=\"blob-code blob-code-inner js-file-line\">        \t\t\t\tint w = ((int)(IN.texcoord.x * 100 + IN.texcoord.y * 100 + _Time.y * 5) &amp; 1);<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L99\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"99\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC99\" class=\"blob-code blob-code-inner js-file-line\">                return c*w;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L100\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"100\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC100\" class=\"blob-code blob-code-inner js-file-line\">            }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L101\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"101\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC101\" class=\"blob-code blob-code-inner js-file-line\">            ENDCG<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L102\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"102\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC102\" class=\"blob-code blob-code-inner js-file-line\">        }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L103\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"103\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC103\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L104\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"104\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC104\" class=\"blob-code blob-code-inner js-file-line\">        \/\/outline up<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L105\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"105\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC105\" class=\"blob-code blob-code-inner js-file-line\">        Pass<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L106\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"106\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC106\" class=\"blob-code blob-code-inner js-file-line\">        {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L107\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"107\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC107\" class=\"blob-code blob-code-inner js-file-line\">       \t\tOffset 1, 1<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L108\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"108\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC108\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L109\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"109\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC109\" class=\"blob-code blob-code-inner js-file-line\">            CGPROGRAM<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L110\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"110\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC110\" class=\"blob-code blob-code-inner js-file-line\">            #pragma vertex vert<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L111\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"111\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC111\" class=\"blob-code blob-code-inner js-file-line\">            #pragma fragment frag<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L112\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"112\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC112\" class=\"blob-code blob-code-inner js-file-line\">            #pragma multi_compile _ PIXELSNAP_ON<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L113\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"113\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC113\" class=\"blob-code blob-code-inner js-file-line\">            #pragma shader_feature ETC1_EXTERNAL_ALPHA<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L114\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"114\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC114\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L115\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"115\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC115\" class=\"blob-code blob-code-inner js-file-line\">            v2f vert(appdata_t IN)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L116\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"116\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC116\" class=\"blob-code blob-code-inner js-file-line\">            {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L117\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"117\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC117\" class=\"blob-code blob-code-inner js-file-line\">            \treturn vert_outline(IN);<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L118\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"118\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC118\" class=\"blob-code blob-code-inner js-file-line\">            }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L119\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"119\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC119\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L120\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"120\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC120\" class=\"blob-code blob-code-inner js-file-line\">            fixed4 frag(v2f IN) : SV_Target<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L121\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"121\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC121\" class=\"blob-code blob-code-inner js-file-line\">            {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L122\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"122\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC122\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L123\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"123\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC123\" class=\"blob-code blob-code-inner js-file-line\">               \tfixed4 texColor = SampleSpriteTexture (IN.texcoord + fixed2(0,- _MainTex_TexelSize.y* _OutlineSize)) * IN.color;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L124\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"124\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC124\" class=\"blob-code blob-code-inner js-file-line\">               \tfixed4 c = _OutlineColor * texColor.a;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L125\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"125\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC125\" class=\"blob-code blob-code-inner js-file-line\">                int w = ((int)(IN.texcoord.x * 100 + IN.texcoord.y * 100 + _Time.y * 5) &amp; 1);<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L126\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"126\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC126\" class=\"blob-code blob-code-inner js-file-line\">                return c*w;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L127\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"127\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC127\" class=\"blob-code blob-code-inner js-file-line\">            }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L128\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"128\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC128\" class=\"blob-code blob-code-inner js-file-line\">            ENDCG<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L129\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"129\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC129\" class=\"blob-code blob-code-inner js-file-line\">        }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L130\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"130\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC130\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L131\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"131\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC131\" class=\"blob-code blob-code-inner js-file-line\">        \/\/outline left<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L132\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"132\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC132\" class=\"blob-code blob-code-inner js-file-line\">        Pass<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L133\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"133\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC133\" class=\"blob-code blob-code-inner js-file-line\">        {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L134\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"134\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC134\" class=\"blob-code blob-code-inner js-file-line\">       \t\tOffset 1, 1<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L135\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"135\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC135\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L136\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"136\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC136\" class=\"blob-code blob-code-inner js-file-line\">            CGPROGRAM<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L137\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"137\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC137\" class=\"blob-code blob-code-inner js-file-line\">            #pragma vertex vert<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L138\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"138\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC138\" class=\"blob-code blob-code-inner js-file-line\">            #pragma fragment frag<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L139\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"139\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC139\" class=\"blob-code blob-code-inner js-file-line\">            #pragma multi_compile _ PIXELSNAP_ON<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L140\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"140\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC140\" class=\"blob-code blob-code-inner js-file-line\">            #pragma shader_feature ETC1_EXTERNAL_ALPHA<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L141\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"141\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC141\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L142\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"142\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC142\" class=\"blob-code blob-code-inner js-file-line\">            v2f vert(appdata_t IN)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L143\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"143\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC143\" class=\"blob-code blob-code-inner js-file-line\">            {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L144\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"144\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC144\" class=\"blob-code blob-code-inner js-file-line\">            \treturn vert_outline(IN);<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L145\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"145\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC145\" class=\"blob-code blob-code-inner js-file-line\">            }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L146\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"146\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC146\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L147\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"147\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC147\" class=\"blob-code blob-code-inner js-file-line\">            fixed4 frag(v2f IN) : SV_Target<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L148\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"148\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC148\" class=\"blob-code blob-code-inner js-file-line\">            {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L149\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"149\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC149\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L150\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"150\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC150\" class=\"blob-code blob-code-inner js-file-line\">               \tfixed4 texColor = SampleSpriteTexture (IN.texcoord + fixed2(_MainTex_TexelSize.x* _OutlineSize,0)) * IN.color;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L151\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"151\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC151\" class=\"blob-code blob-code-inner js-file-line\">               \tfixed4 c = _OutlineColor * texColor.a;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L152\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"152\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC152\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t        int w = ((int)(IN.texcoord.x * 100 + IN.texcoord.y * 100 + _Time.y * 5) &amp; 1);<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L153\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"153\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC153\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t        return c * w;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L154\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"154\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC154\" class=\"blob-code blob-code-inner js-file-line\">            }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L155\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"155\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC155\" class=\"blob-code blob-code-inner js-file-line\">            ENDCG<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L156\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"156\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC156\" class=\"blob-code blob-code-inner js-file-line\">        }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L157\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"157\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC157\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L158\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"158\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC158\" class=\"blob-code blob-code-inner js-file-line\">        \/\/outline right<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L159\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"159\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC159\" class=\"blob-code blob-code-inner js-file-line\">        Pass<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L160\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"160\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC160\" class=\"blob-code blob-code-inner js-file-line\">        {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L161\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"161\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC161\" class=\"blob-code blob-code-inner js-file-line\">       \t\tOffset 1, 1<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L162\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"162\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC162\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L163\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"163\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC163\" class=\"blob-code blob-code-inner js-file-line\">            CGPROGRAM<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L164\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"164\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC164\" class=\"blob-code blob-code-inner js-file-line\">            #pragma vertex vert<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L165\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"165\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC165\" class=\"blob-code blob-code-inner js-file-line\">            #pragma fragment frag<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L166\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"166\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC166\" class=\"blob-code blob-code-inner js-file-line\">            #pragma multi_compile _ PIXELSNAP_ON<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L167\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"167\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC167\" class=\"blob-code blob-code-inner js-file-line\">            #pragma shader_feature ETC1_EXTERNAL_ALPHA<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L168\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"168\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC168\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L169\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"169\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC169\" class=\"blob-code blob-code-inner js-file-line\">            v2f vert(appdata_t IN)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L170\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"170\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC170\" class=\"blob-code blob-code-inner js-file-line\">            {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L171\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"171\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC171\" class=\"blob-code blob-code-inner js-file-line\">            \treturn vert_outline(IN);<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L172\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"172\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC172\" class=\"blob-code blob-code-inner js-file-line\">            }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L173\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"173\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC173\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L174\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"174\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC174\" class=\"blob-code blob-code-inner js-file-line\">            fixed4 frag(v2f IN) : SV_Target<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L175\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"175\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC175\" class=\"blob-code blob-code-inner js-file-line\">            {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L176\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"176\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC176\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L177\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"177\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC177\" class=\"blob-code blob-code-inner js-file-line\">               \tfixed4 texColor = SampleSpriteTexture (IN.texcoord + fixed2(-_MainTex_TexelSize.x* _OutlineSize,0)) * IN.color;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L178\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"178\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC178\" class=\"blob-code blob-code-inner js-file-line\">               \tfixed4 c = _OutlineColor * texColor.a;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L179\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"179\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC179\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t        int w = ((int)(IN.texcoord.x * 100 + IN.texcoord.y * 100 + _Time.y * 5) &amp; 1);<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L180\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"180\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC180\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t        return c * w;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L181\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"181\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC181\" class=\"blob-code blob-code-inner js-file-line\">            }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L182\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"182\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC182\" class=\"blob-code blob-code-inner js-file-line\">            ENDCG<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L183\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"183\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC183\" class=\"blob-code blob-code-inner js-file-line\">        }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L184\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"184\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC184\" class=\"blob-code blob-code-inner js-file-line\">\/\/<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L185\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"185\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC185\" class=\"blob-code blob-code-inner js-file-line\">        Pass<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L186\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"186\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC186\" class=\"blob-code blob-code-inner js-file-line\">        {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L187\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"187\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC187\" class=\"blob-code blob-code-inner js-file-line\">        \tOffset 0, 0<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L188\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"188\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC188\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L189\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"189\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC189\" class=\"blob-code blob-code-inner js-file-line\">            CGPROGRAM<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L190\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"190\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC190\" class=\"blob-code blob-code-inner js-file-line\">            #pragma vertex vert<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L191\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"191\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC191\" class=\"blob-code blob-code-inner js-file-line\">            #pragma fragment frag<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L192\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"192\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC192\" class=\"blob-code blob-code-inner js-file-line\">            #pragma multi_compile _ PIXELSNAP_ON<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L193\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"193\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC193\" class=\"blob-code blob-code-inner js-file-line\">            #pragma shader_feature ETC1_EXTERNAL_ALPHA<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L194\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"194\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC194\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L195\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"195\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC195\" class=\"blob-code blob-code-inner js-file-line\">            v2f vert(appdata_t IN)<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L196\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"196\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC196\" class=\"blob-code blob-code-inner js-file-line\">            {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L197\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"197\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC197\" class=\"blob-code blob-code-inner js-file-line\">                v2f OUT;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L198\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"198\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC198\" class=\"blob-code blob-code-inner js-file-line\">                OUT.vertex = UnityObjectToClipPos(IN.vertex);<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L199\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"199\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC199\" class=\"blob-code blob-code-inner js-file-line\">                OUT.texcoord = IN.texcoord;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L200\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"200\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC200\" class=\"blob-code blob-code-inner js-file-line\">                OUT.color = IN.color * _Color;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L201\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"201\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC201\" class=\"blob-code blob-code-inner js-file-line\">                #ifdef PIXELSNAP_ON<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L202\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"202\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC202\" class=\"blob-code blob-code-inner js-file-line\">                OUT.vertex = UnityPixelSnap (OUT.vertex);<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L203\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"203\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC203\" class=\"blob-code blob-code-inner js-file-line\">                #endif<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L204\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"204\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC204\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L205\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"205\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC205\" class=\"blob-code blob-code-inner js-file-line\">                return OUT;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L206\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"206\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC206\" class=\"blob-code blob-code-inner js-file-line\">            }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L207\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"207\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC207\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L208\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"208\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC208\" class=\"blob-code blob-code-inner js-file-line\">\n<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L209\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"209\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC209\" class=\"blob-code blob-code-inner js-file-line\">            fixed4 frag(v2f IN) : SV_Target<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L210\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"210\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC210\" class=\"blob-code blob-code-inner js-file-line\">            {<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L211\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"211\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC211\" class=\"blob-code blob-code-inner js-file-line\">                fixed4 c = SampleSpriteTexture (IN.texcoord) * IN.color;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L212\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"212\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC212\" class=\"blob-code blob-code-inner js-file-line\">                c.rgb *= c.a;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L213\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"213\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC213\" class=\"blob-code blob-code-inner js-file-line\">                return c;<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L214\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"214\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC214\" class=\"blob-code blob-code-inner js-file-line\">            }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L215\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"215\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC215\" class=\"blob-code blob-code-inner js-file-line\">            ENDCG<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L216\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"216\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC216\" class=\"blob-code blob-code-inner js-file-line\">        }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L217\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"217\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC217\" class=\"blob-code blob-code-inner js-file-line\">    }<\/td>\n<\/tr>\n<tr>\n<td id=\"file-marching-ants-outline-shader-L218\" class=\"blob-num js-line-number js-blob-rnum\" data-line-number=\"218\"><\/td>\n<td id=\"file-marching-ants-outline-shader-LC218\" class=\"blob-code blob-code-inner js-file-line\">}<\/td>\n<\/tr>\n<\/table>\n<\/div><\/div>\n<\/p><\/div>\n<\/div><\/div>\n<div class=\"gist-meta\">\n        <a href=\"https:\/\/gist.github.com\/unitycoder\/6f20e24a7650d626213048929e578bcc\/raw\/93ec495917458298e899469b9ea7cd13c0bcf1ac\/marching-ants-outline.shader\" style=\"float:right\" class=\"Link--inTextBlock\">view raw<\/a><br \/>\n        <a href=\"https:\/\/gist.github.com\/unitycoder\/6f20e24a7650d626213048929e578bcc#file-marching-ants-outline-shader\" class=\"Link--inTextBlock\"><br \/>\n          marching-ants-outline.shader<br \/>\n        <\/a><br \/>\n        hosted with &#10084; by <a class=\"Link--inTextBlock\" href=\"https:\/\/github.com\">GitHub<\/a>\n      <\/div>\n<\/p><\/div>\n<\/div>\n<p>&nbsp;<\/p>\n<p><strong>Resources:<\/strong><br \/>\n&#8211; wiki <a href=\"https:\/\/en.wikipedia.org\/wiki\/Marching_ants\" target=\"_blank\" rel=\"noopener\">https:\/\/en.wikipedia.org\/wiki\/Marching_ants<\/a><br \/>\n&#8211; rectangle outline marching ants shader <a href=\"https:\/\/www.shadertoy.com\/view\/XltcR2\" target=\"_blank\" rel=\"noopener\">https:\/\/www.shadertoy.com\/view\/XltcR2<\/a><br \/>\n&#8211; 3d marching ants from uvs <a href=\"https:\/\/shaderfrog.com\/app\/view\/1847\" target=\"_blank\" rel=\"noopener\">https:\/\/shaderfrog.com\/app\/view\/1847<\/a><br \/>\n&#8211; marching ant ideas <a href=\"https:\/\/losingfight.com\/blog\/2007\/08\/30\/an-alternate-way-to-implement-marching-ants\/\" target=\"_blank\" rel=\"noopener\">https:\/\/losingfight.com\/blog\/2007\/08\/30\/an-alternate-way-to-implement-marching-ants\/<\/a><br \/>\n&#8211; marching ants done in Flash <a href=\"http:\/\/www.quasimondo.com\/archives\/000573.php\" target=\"_blank\" rel=\"noopener\">http:\/\/www.quasimondo.com\/archives\/000573.php<\/a><\/p>\n<p><strong>Comparison<\/strong> (photoshop selection line)<br \/>\n<img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" data-attachment-id=\"4905\" data-permalink=\"https:\/\/unitycoder.com\/blog\/2018\/12\/20\/marching-ants-selection-outline-shader\/photoshop-marching-ants-selection\/\" data-orig-file=\"https:\/\/i0.wp.com\/unitycoder.com\/blog\/wp-content\/uploads\/2018\/12\/photoshop-marching-ants-selection.gif?fit=264%2C196&amp;ssl=1\" data-orig-size=\"264,196\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"photoshop-marching-ants-selection\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/unitycoder.com\/blog\/wp-content\/uploads\/2018\/12\/photoshop-marching-ants-selection.gif?fit=264%2C196&amp;ssl=1\" class=\"alignnone size-full wp-image-4905\" src=\"https:\/\/i0.wp.com\/unitycoder.com\/blog\/wp-content\/uploads\/2018\/12\/photoshop-marching-ants-selection.gif?resize=264%2C196&#038;ssl=1\" alt=\"\" width=\"264\" height=\"196\" \/><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Saw interesting question here https:\/\/forum.unity.com\/threads\/animated-outline-effects-using-shader.600028\/ and unity sprite outline\u00a0https:\/\/github.com\/wlgys8\/Sprites-Outline + stackoverflow https:\/\/stackoverflow.com\/a\/16856878\/5452781 to the rescue! (although this is for 2D sprite..) Results: TODO &#8211; Test how this would look with screenspace values (to keep same size even if zoomed) &#8211; Maybe could check neighbor pixel [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":4899,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"Modified Sprite Outline Shader by 'wlgys8' into Marching Ants Outline Effect","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"jetpack_post_was_ever_published":false},"categories":[13,3],"tags":[270,50,76,1079,1078,532,14,357],"class_list":["post-4897","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-shaders","category-unity3d","tag-animated","tag-effect","tag-line","tag-marching-ants","tag-outline","tag-selection","tag-shader","tag-sprite"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/unitycoder.com\/blog\/wp-content\/uploads\/2018\/12\/unity-marching-ants-selection-outline-effect-shader.gif?fit=387%2C289&ssl=1","jetpack_shortlink":"https:\/\/wp.me\/p1KTaT-1gZ","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/unitycoder.com\/blog\/wp-json\/wp\/v2\/posts\/4897","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/unitycoder.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/unitycoder.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/unitycoder.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/unitycoder.com\/blog\/wp-json\/wp\/v2\/comments?post=4897"}],"version-history":[{"count":7,"href":"https:\/\/unitycoder.com\/blog\/wp-json\/wp\/v2\/posts\/4897\/revisions"}],"predecessor-version":[{"id":4907,"href":"https:\/\/unitycoder.com\/blog\/wp-json\/wp\/v2\/posts\/4897\/revisions\/4907"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/unitycoder.com\/blog\/wp-json\/wp\/v2\/media\/4899"}],"wp:attachment":[{"href":"https:\/\/unitycoder.com\/blog\/wp-json\/wp\/v2\/media?parent=4897"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/unitycoder.com\/blog\/wp-json\/wp\/v2\/categories?post=4897"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/unitycoder.com\/blog\/wp-json\/wp\/v2\/tags?post=4897"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}