<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Megadroid 90 &#8211; Gary Michael Angelone Jr.</title>
	<atom:link href="https://garyangelonejr.me/category/megadroid-90/feed/" rel="self" type="application/rss+xml" />
	<link>https://garyangelonejr.me</link>
	<description></description>
	<lastBuildDate>Wed, 28 Jan 2026 21:24:02 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>
	<item>
		<title>Ripple Shader</title>
		<link>https://garyangelonejr.me/ripple-shader/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Wed, 28 Jan 2026 21:18:56 +0000</pubDate>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Megadroid 90]]></category>
		<category><![CDATA[GLSL]]></category>
		<category><![CDATA[HLSL]]></category>
		<guid isPermaLink="false">https://garyangelonejr.me/?p=3625</guid>

					<description><![CDATA[Steven asked me to write a ripple effect shader for his upcoming shmup title for android and iOS.]]></description>
										<content:encoded><![CDATA[<div class="fusion-fullwidth fullwidth-box fusion-builder-row-1 fusion-flex-container nonhundred-percent-fullwidth non-hundred-percent-height-scrolling" style="--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-flex-wrap:wrap;"><div class="fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-content-wrap" style="max-width:1248px;margin-left: calc(-4% / 2 );margin-right: calc(-4% / 2 );"><div class="fusion-layout-column fusion_builder_column fusion-builder-column-0 fusion_builder_column_1_1 1_1 fusion-flex-column" style="--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:3.072%;--awb-margin-bottom-large:0px;--awb-spacing-left-large:1.92%;--awb-width-medium:100%;--awb-spacing-right-medium:3.072%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;"><div class="fusion-column-wrapper fusion-flex-justify-content-flex-start fusion-content-layout-column"><div class="fusion-text fusion-text-1 translate lang-en "><p>Steven asked me to write a ripple effect shader for his upcoming shmup title for android and iOS.</p>
</div><div class="fusion-text fusion-text-2 translate lang-de"><p>Steven hat mich gebeten, einen Shader mit Schmelzeffekt für sein neues Shoot 'em up-Spiel für Android und iOS zu schreiben.</p>
</div><div class="fusion-text fusion-text-3 translate lang-it"><p>Steven mi ha chiesto di scrivere uno shader con effetto a catena per il suo prossimo titolo shmup per Android e iOS.</p>
</div><style type="text/css" scopped="scopped">.fusion-syntax-highlighter-1 > .CodeMirror, .fusion-syntax-highlighter-1 > .CodeMirror .CodeMirror-gutters {background-color:transparent;}.fusion-syntax-highlighter-1 > .CodeMirror .CodeMirror-gutters { background-color: transparent; }.fusion-syntax-highlighter-1 > .CodeMirror .CodeMirror-linenumber { color: var(--awb-color3); }</style><div class="fusion-syntax-highlighter-container fusion-syntax-highlighter-1 fusion-syntax-highlighter-theme-light" style="opacity:0;margin-top:0px;margin-right:0px;margin-bottom:2em;margin-left:0px;font-size:14px;border-width:2px;border-style:dashed;border-color:var(--awb-color2);"><div class="syntax-highlighter-copy-code"><span class="syntax-highlighter-copy-code-title" data-id="fusion_syntax_highlighter_1" style="font-size:14px;">Copy to Clipboard</span></div><label for="fusion_syntax_highlighter_1" class="screen-reader-text">Syntax Highlighter</label><textarea class="fusion-syntax-highlighter-textarea" id="fusion_syntax_highlighter_1" data-readonly="nocursor" data-linenumbers="1" data-linewrapping="1" data-theme="default" data-mode="text/css">sampler2D background_texture : register(s1)  = sampler_state{
    AddressU = Clamp;
    AddressV = Clamp;
};

float freq;
float speed;
float amplitude ;
float centerx;
float centery;

float effect;

struct PS_INPUT
{
    float4 p : POSITION;
    float2 v_texcoord0 : TEXCOORD0;
};

struct PS_OUTPUT
{
    float4 c     : COLOR0;
};

PS_OUTPUT ps_main(PS_INPUT input)
{
    PS_OUTPUT output;   

    float2 center=float2(centerx,centery);

    float2 toUV = input.v_texcoord0 - center;
    float distanceFromCenter = length(toUV);
    float2 normToUV = toUV / distanceFromCenter;

    float wave = cos(freq * distanceFromCenter - speed * effect);
    float offset1 = effect * wave * amplitude;
    float offset2 = (1.0 - effect) * wave * amplitude;
    
    float2 newUV1 = center + normToUV * (distanceFromCenter + offset1);
    float2 newUV2 = center + normToUV * (distanceFromCenter + offset2);
    
    float4 c1 = tex2D(background_texture, newUV1); 
    float4 c2 = tex2D(background_texture, newUV2);

    output.c=lerp(c1, c2, effect);

    return output;
    
}

technique tech_main
{
    pass P0
    {
        VertexShader = NULL;
        PixelShader  = compile ps_2_a ps_main();
    }  
}</textarea></div><div class="video has-mask" style='mask-position:center center;mask-size:cover;mask-image:url("https://garyangelonejr.me/wp-content/themes/Avada-Child-Theme/img/masks/mask-03.png");'><div class="fusion-video fusion-selfhosted-video mask  wrapped" style="margin-bottom:3em;max-width:100%;"><div class="video-wrapper"><video playsinline="true" width="100%" style="object-fit: cover;" autoplay="true" muted="true" loop="true" preload="auto"><source src="/vid/post/Ripple-Shader.mp4" type="video/mp4">Sorry, your browser doesn't support embedded videos.</source></video></div></div></div></div></div><div class="fusion-layout-column fusion_builder_column fusion-builder-column-1 fusion_builder_column_1_1 1_1 fusion-flex-column" style="--awb-padding-top:2em;--awb-padding-bottom:6em;--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:3.072%;--awb-margin-bottom-large:0px;--awb-spacing-left-large:1.92%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:3.072%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;"><div class="fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column"><div style="text-align:center;"><a class="fusion-button button-flat fusion-button-default-size button-default fusion-button-default button-1 fusion-button-default-span fusion-button-default-type fusion-animated" data-animationtype="flipiny" data-animationduration="0.3" data-animationoffset="top-into-view" target="_blank" rel="noopener noreferrer" href="https://github.com/KoschKX/Shader-Ripple"><i class="fa-arrow-circle-down fas awb-button__icon awb-button__icon--default button-icon-left" aria-hidden="true"></i><span class="fusion-button-text awb-button__text awb-button__text--default">GitHub Project</span></a></div></div></div></div></div>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Melt Shader</title>
		<link>https://garyangelonejr.me/melt-shader/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Sat, 09 Mar 2024 20:53:30 +0000</pubDate>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Megadroid 90]]></category>
		<category><![CDATA[GLSL]]></category>
		<category><![CDATA[HLSL]]></category>
		<guid isPermaLink="false">https://garyangelonejr.me/?p=1571</guid>

					<description><![CDATA[Steven asked me to write a melting effect shader for his upcoming shmup title for android and iOS.]]></description>
										<content:encoded><![CDATA[<div class="fusion-fullwidth fullwidth-box fusion-builder-row-2 fusion-flex-container nonhundred-percent-fullwidth non-hundred-percent-height-scrolling" style="--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-flex-wrap:wrap;"><div class="fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-content-wrap" style="max-width:1248px;margin-left: calc(-4% / 2 );margin-right: calc(-4% / 2 );"><div class="fusion-layout-column fusion_builder_column fusion-builder-column-2 fusion_builder_column_1_1 1_1 fusion-flex-column" style="--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:3.072%;--awb-margin-bottom-large:0px;--awb-spacing-left-large:1.92%;--awb-width-medium:100%;--awb-spacing-right-medium:3.072%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;"><div class="fusion-column-wrapper fusion-flex-justify-content-flex-start fusion-content-layout-column"><div class="fusion-text fusion-text-4 translate lang-en "><p>Steven asked me to write a melting effect shader for his upcoming shmup title for android and iOS.</p>
</div><div class="fusion-text fusion-text-5 translate lang-de"><p>Steven hat mich gebeten, einen Shader mit Schmelzeffekt für sein neues Shoot 'em up-Spiel für Android und iOS zu schreiben.</p>
</div><div class="fusion-text fusion-text-6 translate lang-it"><p>Steven mi ha chiesto di scrivere uno shader con effetto di fusione per il suo prossimo titolo shmup per Android e iOS.</p>
</div><div class="fusion-text fusion-text-7 translate lang-en "><p>First, we sample the foreground and background textures.</p>
</div><div class="fusion-text fusion-text-8 translate lang-de"><p>Zuerst nehmen wir Proben der Vordergrund- und Hintergrundtexturen.</p>
</div><div class="fusion-text fusion-text-9 translate lang-it"><p>Per prima cosa, campioniamo le texture in primo piano e sullo sfondo.</p>
</div><style type="text/css" scopped="scopped">.fusion-syntax-highlighter-2 > .CodeMirror, .fusion-syntax-highlighter-2 > .CodeMirror .CodeMirror-gutters {background-color:transparent;}.fusion-syntax-highlighter-2 > .CodeMirror .CodeMirror-gutters { background-color: transparent; }.fusion-syntax-highlighter-2 > .CodeMirror .CodeMirror-linenumber { color: var(--awb-color3); }</style><div class="fusion-syntax-highlighter-container fusion-syntax-highlighter-2 fusion-syntax-highlighter-theme-light" style="opacity:0;margin-top:0px;margin-right:0px;margin-bottom:2em;margin-left:0px;font-size:14px;border-width:2px;border-style:dashed;border-color:var(--awb-color2);"><div class="syntax-highlighter-copy-code"><span class="syntax-highlighter-copy-code-title" data-id="fusion_syntax_highlighter_2" style="font-size:14px;">Copy to Clipboard</span></div><label for="fusion_syntax_highlighter_2" class="screen-reader-text">Syntax Highlighter</label><textarea class="fusion-syntax-highlighter-textarea" id="fusion_syntax_highlighter_2" data-readonly="nocursor" data-linenumbers="1" data-linewrapping="1" data-theme="default" data-mode="text/css">// Background
  // float4 back = tex2D(bkd,textureCoordinate);
// Foreground
  // fore = tex2D(img,textureCoordinate);
</textarea></div><div class="fusion-text fusion-text-10 translate lang-en "><p>Then we prepare the warp effect.</p>
</div><div class="fusion-text fusion-text-11 translate lang-de"><p>Dann bereiten wir den Warp-Effekt vor.</p>
</div><div class="fusion-text fusion-text-12 translate lang-it"><p>Quindi prepariamo l'effetto warp.</p>
</div><style type="text/css" scopped="scopped">.fusion-syntax-highlighter-3 > .CodeMirror, .fusion-syntax-highlighter-3 > .CodeMirror .CodeMirror-gutters {background-color:transparent;}.fusion-syntax-highlighter-3 > .CodeMirror .CodeMirror-gutters { background-color: transparent; }.fusion-syntax-highlighter-3 > .CodeMirror .CodeMirror-linenumber { color: var(--awb-color3); }</style><div class="fusion-syntax-highlighter-container fusion-syntax-highlighter-3 fusion-syntax-highlighter-theme-light no-translate" style="opacity:0;margin-top:0px;margin-right:0px;margin-bottom:2em;margin-left:0px;font-size:14px;border-width:2px;border-style:dashed;border-color:var(--awb-color2);"><div class="syntax-highlighter-copy-code"><span class="syntax-highlighter-copy-code-title" data-id="fusion_syntax_highlighter_3" style="font-size:14px;">Copy to Clipboard</span></div><label for="fusion_syntax_highlighter_3" class="screen-reader-text">Syntax Highlighter</label><textarea class="fusion-syntax-highlighter-textarea" id="fusion_syntax_highlighter_3" data-readonly="nocursor" data-linenumbers="1" data-linewrapping="1" data-theme="default" data-mode="text/css">  // Sin
    float sinX = textureCoordinate.x;
	float sinY = textureCoordinate.y + (sin((textureCoordinate.y+frequency)*periods)*amplitude);
    float2 sinE = float2(sinX,sinY);

  // Warp
    float4 TexTL; float4 TexBL; float4 TexBR; float4 TexTR;
    float4 TexBTL; float4 TexBBL; float4 TexBBR; float4 TexBTR;
  	TexTL.rgba = tex2D(imgTexture, float2(sinE.x-blur,sinE.y-blur));
    TexBL.rgba = tex2D(imgTexture, float2(sinE.x-blur,sinE.y+blur));
  	TexBR.rgba = tex2D(imgTexture, float2(sinE.x+blur,sinE.y+blur));
  	TexTR.rgba = tex2D(imgTexture, float2(sinE.x+blur,sinE.y-blur));
  	float4 fore = tex2D(imgTexture, sinE.xy);
	fore.rgba = (fore.rgba+TexTL.rgba+TexBL.rgba+TexBR.rgba+TexTR.rgba)/5.0;</textarea></div><div class="fusion-text fusion-text-13 translate lang-en "><p>Apply the effect.</p>
</div><div class="fusion-text fusion-text-14 translate lang-de"><p>Wende den Effekt an.</p>
</div><div class="fusion-text fusion-text-15 translate lang-it"><p>Applica l'effetto.</p>
</div><style type="text/css" scopped="scopped">.fusion-syntax-highlighter-4 > .CodeMirror, .fusion-syntax-highlighter-4 > .CodeMirror .CodeMirror-gutters {background-color:transparent;}.fusion-syntax-highlighter-4 > .CodeMirror .CodeMirror-gutters { background-color: transparent; }.fusion-syntax-highlighter-4 > .CodeMirror .CodeMirror-linenumber { color: var(--awb-color3); }</style><div class="fusion-syntax-highlighter-container fusion-syntax-highlighter-4 fusion-syntax-highlighter-theme-light" style="opacity:0;margin-top:0px;margin-right:0px;margin-bottom:2em;margin-left:0px;font-size:14px;border-width:2px;border-style:dashed;border-color:var(--awb-color2);"><div class="syntax-highlighter-copy-code"><span class="syntax-highlighter-copy-code-title" data-id="fusion_syntax_highlighter_4" style="font-size:14px;">Copy to Clipboard</span></div><label for="fusion_syntax_highlighter_4" class="screen-reader-text">Syntax Highlighter</label><textarea class="fusion-syntax-highlighter-textarea" id="fusion_syntax_highlighter_4" data-readonly="nocursor" data-linenumbers="1" data-linewrapping="1" data-theme="default" data-mode="text/css">// Apply Color
  float md = (frequency*10.0)+(sinE.y*3.0);
  float tick = cos(md);
  float3 melt = lerp(fore.rgb+(colorB.rgb*0.5),fore.rgb*(colorA.rgb*2.0),sinE.y);
  float3 anim = lerp(melt,fore.rgb,tick);
  fore.rgb = lerp(fore.rgb,anim,intensity);</textarea></div><div class="video has-mask" style='mask-position:center center;mask-size:cover;mask-image:url("https://garyangelonejr.me/wp-content/themes/Avada-Child-Theme/img/masks/mask-03.png");'><div class="fusion-video fusion-selfhosted-video mask  wrapped" style="margin-bottom:3em;max-width:100%;"><div class="video-wrapper"><video playsinline="true" width="100%" style="object-fit: cover;" autoplay="true" muted="true" loop="true" preload="auto"><source src="/vid/post/Melt-Shader.mp4" type="video/mp4">Sorry, your browser doesn't support embedded videos.</source></video></div></div></div></div></div><div class="fusion-layout-column fusion_builder_column fusion-builder-column-3 fusion_builder_column_1_1 1_1 fusion-flex-column" style="--awb-padding-top:2em;--awb-padding-bottom:6em;--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:3.072%;--awb-margin-bottom-large:0px;--awb-spacing-left-large:1.92%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:3.072%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;"><div class="fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column"><div style="text-align:center;"><a class="fusion-button button-flat fusion-button-default-size button-default fusion-button-default button-2 fusion-button-default-span fusion-button-default-type fusion-animated" data-animationtype="flipiny" data-animationduration="0.3" data-animationoffset="top-into-view" target="_self" href="https://github.com/KoschKX/Shader-Melt"><i class="fa-arrow-circle-down fas awb-button__icon awb-button__icon--default button-icon-left" aria-hidden="true"></i><span class="fusion-button-text awb-button__text awb-button__text--default">GitHub Project</span></a></div></div></div></div></div>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Shield Shader</title>
		<link>https://garyangelonejr.me/shield-shader/</link>
		
		<dc:creator><![CDATA[admin]]></dc:creator>
		<pubDate>Sat, 09 Mar 2024 20:12:55 +0000</pubDate>
				<category><![CDATA[Code]]></category>
		<category><![CDATA[Megadroid 90]]></category>
		<category><![CDATA[GLSL]]></category>
		<category><![CDATA[HLSL]]></category>
		<guid isPermaLink="false">https://garyangelonejr.me/?p=1548</guid>

					<description><![CDATA[Steven asked me to write a shield shader for his upcoming shmup title for Android and iOS.]]></description>
										<content:encoded><![CDATA[<div class="fusion-fullwidth fullwidth-box fusion-builder-row-3 fusion-flex-container has-pattern-background has-mask-background nonhundred-percent-fullwidth non-hundred-percent-height-scrolling" style="--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-flex-wrap:wrap;"><div class="fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-content-wrap" style="max-width:1248px;margin-left: calc(-4% / 2 );margin-right: calc(-4% / 2 );"><div class="fusion-layout-column fusion_builder_column fusion-builder-column-4 fusion_builder_column_1_1 1_1 fusion-flex-column" style="--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:3.072%;--awb-margin-bottom-large:0px;--awb-spacing-left-large:1.92%;--awb-width-medium:100%;--awb-spacing-right-medium:3.072%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;"><div class="fusion-column-wrapper fusion-flex-justify-content-flex-start fusion-content-layout-column"><div class="fusion-text fusion-text-16 translate lang-en "><p>Steven asked me to write a shield shader for his upcoming shmup title for Android and iOS.</p>
</div><div class="fusion-text fusion-text-17 translate lang-de"><p>Steven hat mich gebeten, einen Shield-Shader für seinen kommenden Shmup-Titel für Android und iOS zu schreiben.</p>
</div><div class="fusion-text fusion-text-18 translate lang-it"><p>Steven mi ha chiesto di scrivere uno shader per il suo prossimo titolo shmup per Android e iOS.</p>
</div><div class="fusion-text fusion-text-19 translate lang-en "><p>First, we offset the texture coordinates.</p>
</div><div class="fusion-text fusion-text-20 translate lang-de"><p>Zunächst verschieben wir die Texturkoordinaten.</p>
</div><div class="fusion-text fusion-text-21 translate lang-it"><p>Per prima cosa, compensiamo le coordinate della texture.</p>
</div><style type="text/css" scopped="scopped">.fusion-syntax-highlighter-5 > .CodeMirror, .fusion-syntax-highlighter-5 > .CodeMirror .CodeMirror-gutters {background-color:transparent;}.fusion-syntax-highlighter-5 > .CodeMirror .CodeMirror-gutters { background-color: transparent; }.fusion-syntax-highlighter-5 > .CodeMirror .CodeMirror-linenumber { color: var(--awb-color3); }</style><div class="fusion-syntax-highlighter-container fusion-syntax-highlighter-5 fusion-syntax-highlighter-theme-light no-translate" style="opacity:0;margin-top:0px;margin-right:0px;margin-bottom:2em;margin-left:0px;font-size:14px;border-width:2px;border-style:dashed;border-color:var(--awb-color2);"><div class="syntax-highlighter-copy-code"><span class="syntax-highlighter-copy-code-title" data-id="fusion_syntax_highlighter_5" style="font-size:14px;">Copy to Clipboard</span></div><label for="fusion_syntax_highlighter_5" class="screen-reader-text">Syntax Highlighter</label><textarea class="fusion-syntax-highlighter-textarea" id="fusion_syntax_highlighter_5" data-readonly="nocursor" data-linenumbers="1" data-linewrapping="1" data-theme="default" data-mode="text/css">// TEXTURE OFFSET
vec2 Pos = vec2(textureCoordinate.x+(offsetX*0.1),textureCoordinate.y+(offsetY*0.1));</textarea></div><div class="fusion-text fusion-text-22 translate lang-en "><p>Convert the bullet angle to radians.</p>
</div><div class="fusion-text fusion-text-23 translate lang-de"><p>Wandeln Sie den Geschosswinkel in Radianten um.</p>
</div><div class="fusion-text fusion-text-24 translate lang-it"><p>Converti l'angolo del proiettile in radianti.</p>
</div><style type="text/css" scopped="scopped">.fusion-syntax-highlighter-6 > .CodeMirror, .fusion-syntax-highlighter-6 > .CodeMirror .CodeMirror-gutters {background-color:transparent;}.fusion-syntax-highlighter-6 > .CodeMirror .CodeMirror-gutters { background-color: transparent; }.fusion-syntax-highlighter-6 > .CodeMirror .CodeMirror-linenumber { color: var(--awb-color3); }</style><div class="fusion-syntax-highlighter-container fusion-syntax-highlighter-6 fusion-syntax-highlighter-theme-light no-translate" style="opacity:0;margin-top:0px;margin-right:0px;margin-bottom:2em;margin-left:0px;font-size:14px;border-width:2px;border-style:dashed;border-color:var(--awb-color2);"><div class="syntax-highlighter-copy-code"><span class="syntax-highlighter-copy-code-title" data-id="fusion_syntax_highlighter_6" style="font-size:14px;">Copy to Clipboard</span></div><label for="fusion_syntax_highlighter_6" class="screen-reader-text">Syntax Highlighter</label><textarea class="fusion-syntax-highlighter-textarea" id="fusion_syntax_highlighter_6" data-readonly="nocursor" data-linenumbers="1" data-linewrapping="1" data-theme="default" data-mode="text/css">// CLAMP AND CONVERT INPUT VALUES
hit=clamp(hit,0.0,1.0);
cover=clamp(cover,0.0,1.0);
hitangle = radians(hitangle - 90.0);</textarea></div><div class="fusion-text fusion-text-25 translate lang-en "><p>Allow the hexagonal patterns to scroll.</p>
</div><div class="fusion-text fusion-text-26 translate lang-de"><p>Lassen Sie die sechseckigen Muster scrollen.</p>
</div><div class="fusion-text fusion-text-27 translate lang-it"><p>Consenti lo scorrimento dei motivi esagonali.</p>
</div><style type="text/css" scopped="scopped">.fusion-syntax-highlighter-7 > .CodeMirror, .fusion-syntax-highlighter-7 > .CodeMirror .CodeMirror-gutters {background-color:transparent;}.fusion-syntax-highlighter-7 > .CodeMirror .CodeMirror-gutters { background-color: transparent; }.fusion-syntax-highlighter-7 > .CodeMirror .CodeMirror-linenumber { color: var(--awb-color3); }</style><div class="fusion-syntax-highlighter-container fusion-syntax-highlighter-7 fusion-syntax-highlighter-theme-light no-translate" style="opacity:0;margin-top:0px;margin-right:0px;margin-bottom:2em;margin-left:0px;font-size:14px;border-width:2px;border-style:dashed;border-color:var(--awb-color2);"><div class="syntax-highlighter-copy-code"><span class="syntax-highlighter-copy-code-title" data-id="fusion_syntax_highlighter_7" style="font-size:14px;">Copy to Clipboard</span></div><label for="fusion_syntax_highlighter_7" class="screen-reader-text">Syntax Highlighter</label><textarea class="fusion-syntax-highlighter-textarea" id="fusion_syntax_highlighter_7" data-readonly="nocursor" data-linenumbers="1" data-linewrapping="1" data-theme="default" data-mode="text/css">// SCROLL TEXTURE
float tx = 2.0 * (textureCoordinate.x - 0.5);
float ty = 2.0 * (textureCoordinate.y - 0.5);
float x = 2.0 * (Pos.x - 0.5);
float y = 2.0 * (Pos.y - 0.5);
float r = sqrt(tx * tx + ty * ty);
float d = (r != 0.0) ? asin(r) / r : 0.0;
float x2 = d * x;
float y2 = d * y;
float x3 = mod(x2 / (4.0 * PI) + 0.5 + time, 1.0);
float y3 = y2 / (2.0 * PI) + 0.5;
vec2 Out = vec2(0.0,0.0);
Out.x = x3;
Out.y = y3;</textarea></div><div class="fusion-text fusion-text-28 translate lang-en "><p>Initialize the shield colors.</p>
</div><div class="fusion-text fusion-text-29 translate lang-de"><p>Initialisieren Sie die Schildfarben.</p>
</div><div class="fusion-text fusion-text-30 translate lang-it"><p>Inizializza i colori dello scudo.</p>
</div><style type="text/css" scopped="scopped">.fusion-syntax-highlighter-8 > .CodeMirror, .fusion-syntax-highlighter-8 > .CodeMirror .CodeMirror-gutters {background-color:transparent;}.fusion-syntax-highlighter-8 > .CodeMirror .CodeMirror-gutters { background-color: transparent; }.fusion-syntax-highlighter-8 > .CodeMirror .CodeMirror-linenumber { color: var(--awb-color3); }</style><div class="fusion-syntax-highlighter-container fusion-syntax-highlighter-8 fusion-syntax-highlighter-theme-light no-translate" style="opacity:0;margin-top:0px;margin-right:0px;margin-bottom:2em;margin-left:0px;font-size:14px;border-width:2px;border-style:dashed;border-color:var(--awb-color2);"><div class="syntax-highlighter-copy-code"><span class="syntax-highlighter-copy-code-title" data-id="fusion_syntax_highlighter_8" style="font-size:14px;">Copy to Clipboard</span></div><label for="fusion_syntax_highlighter_8" class="screen-reader-text">Syntax Highlighter</label><textarea class="fusion-syntax-highlighter-textarea" id="fusion_syntax_highlighter_8" data-readonly="nocursor" data-linenumbers="1" data-linewrapping="1" data-theme="default" data-mode="text/css">// INIT COLORS
vec4 final = vec4(0,0,0,0);
vec4 blank = vec4(0,0,0,0);</textarea></div><div class="fusion-text fusion-text-31 translate lang-en "><p>Make the gradients and clip within the sphere.</p>
</div><div class="fusion-text fusion-text-32 translate lang-de"><p>Erstellen Sie die Farbverläufe und schneiden Sie sie innerhalb der Kugel zu.</p>
</div><div class="fusion-text fusion-text-33 translate lang-it"><p>Crea le sfumature e ritaglia all'interno della sfera.</p>
</div><style type="text/css" scopped="scopped">.fusion-syntax-highlighter-9 > .CodeMirror, .fusion-syntax-highlighter-9 > .CodeMirror .CodeMirror-gutters {background-color:transparent;}.fusion-syntax-highlighter-9 > .CodeMirror .CodeMirror-gutters { background-color: transparent; }.fusion-syntax-highlighter-9 > .CodeMirror .CodeMirror-linenumber { color: var(--awb-color3); }</style><div class="fusion-syntax-highlighter-container fusion-syntax-highlighter-9 fusion-syntax-highlighter-theme-light no-translate" style="opacity:0;margin-top:0px;margin-right:0px;margin-bottom:2em;margin-left:0px;font-size:14px;border-width:2px;border-style:dashed;border-color:var(--awb-color2);"><div class="syntax-highlighter-copy-code"><span class="syntax-highlighter-copy-code-title" data-id="fusion_syntax_highlighter_9" style="font-size:14px;">Copy to Clipboard</span></div><label for="fusion_syntax_highlighter_9" class="screen-reader-text">Syntax Highlighter</label><textarea class="fusion-syntax-highlighter-textarea" id="fusion_syntax_highlighter_9" data-readonly="nocursor" data-linenumbers="1" data-linewrapping="1" data-theme="default" data-mode="text/css">  if (r &lt;= 1.0){
      final = texture2D(img,Out.xy);
      vec4 tfinal = texture2D(tex,Out.xy);

      vec2 pos_ndc = vec2(2.0 * textureCoordinate.x - 1.0,2.0 * textureCoordinate.y - 1.0);
      float dist = length(pos_ndc);

      // GET HIT ANGLE
        vec2 ang=textureCoordinate.xy;
        ang.xy = vec2(ang.x - 0.5, ang.y - 0.5);
        float s = sin( hitangle );
        float c = cos( hitangle );
        mat2 rotationMatrix = mat2(c, -s, s, c);
        rotationMatrix *= 0.5f;
        rotationMatrix += 0.5f;
        rotationMatrix = rotationMatrix * 2.0f - 1.0f;
        ang = rotationMatrix * ang;
        ang.xy = vec2(ang.x + 0.5, ang.y + 0.5);
        float hitf = (hit*0.5);

      // MAX ALPHA
        colorA.a = 1.0;
        colorB.a = 1.0;

      // FADE GRADIENT
        float step1 = 0.0;
        float step2 = 1.0 - cover;
        float step3 = 1.0;

      // MIX
        final *= mix(final, colorA, smoothstep(step1, step2*( 1.0 - hitf), dist));
        final = mix(final,tfinal*colorB,ang.x*hit);
        final *= mix(blank, final, smoothstep(step2*(1.0 - hitf), step3, dist));
  }</textarea></div><div class="video has-mask" style='mask-position:center center;mask-size:cover;mask-image:url("https://garyangelonejr.me/wp-content/themes/Avada-Child-Theme/img/masks/mask-04.png");'><div class="fusion-video fusion-selfhosted-video mask  overlay opacity_50 dark_mesh  wrapped" style="margin-bottom:3em;max-width:100%;"><div class="video-wrapper"><video playsinline="true" width="100%" style="object-fit: cover;" autoplay="true" muted="true" loop="true" preload="auto"><source src="/vid/post/Shield-Shader.mp4" type="video/mp4">Sorry, your browser doesn't support embedded videos.</source></video></div></div></div></div></div><div class="fusion-layout-column fusion_builder_column fusion-builder-column-5 fusion_builder_column_1_1 1_1 fusion-flex-column" style="--awb-padding-top:2em;--awb-padding-bottom:6em;--awb-bg-size:cover;--awb-width-large:100%;--awb-margin-top-large:0px;--awb-spacing-right-large:3.072%;--awb-margin-bottom-large:0px;--awb-spacing-left-large:1.92%;--awb-width-medium:100%;--awb-order-medium:0;--awb-spacing-right-medium:3.072%;--awb-spacing-left-medium:1.92%;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:1.92%;--awb-spacing-left-small:1.92%;"><div class="fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column"><div style="text-align:center;"><a class="fusion-button button-flat fusion-button-default-size button-default fusion-button-default button-3 fusion-button-default-span fusion-button-default-type fusion-animated" data-animationtype="flipiny" data-animationduration="0.3" data-animationoffset="top-into-view" target="_self" href="https://github.com/KoschKX/Shader-Shield"><i class="fa-arrow-circle-down fas awb-button__icon awb-button__icon--default button-icon-left" aria-hidden="true"></i><span class="fusion-button-text awb-button__text awb-button__text--default">GitHub Project</span></a></div></div></div></div></div>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
