Skip to content

Commit

Permalink
texture swap shader
Browse files Browse the repository at this point in the history
  • Loading branch information
FabsTheFabs committed Sep 10, 2024
1 parent 34e93fa commit 03d9416
Showing 1 changed file with 48 additions and 0 deletions.
48 changes: 48 additions & 0 deletions source/funkin/graphics/shaders/TextureSwap.hx
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
package funkin.graphics.shaders;

import flixel.system.FlxAssets.FlxShader;
import flixel.util.FlxColor;
import openfl.display.BitmapData;

class TextureSwap extends FlxShader
{
public var swappedImage(default, set):BitmapData;
public var amount(default, set):Float;

function set_swappedImage(_bitmapData:BitmapData):BitmapData
{
image.input = _bitmapData;

return _bitmapData;
}

function set_amount(val:Float):Float
{
fadeAmount.value = [val];

return val;
}

@:glFragmentSource('
#pragma header

uniform sampler2D image;
uniform float fadeAmount;

void main()
{
vec4 tex = flixel_texture2D(bitmap, openfl_TextureCoordv);
vec4 tex2 = flixel_texture2D(image, openfl_TextureCoordv);

vec4 finalColor = mix(tex, vec4(tex2.rgb, tex.a), fadeAmount);

gl_FragColor = finalColor;
}
')
public function new()
{
super();

this.amount = 1;
}
}

0 comments on commit 03d9416

Please sign in to comment.