This asset has only been tested with GameMaker: Studio 1.
This asset consists of two functions: better_scaling_draw_sprite and better_scaling_draw_surface. These are just like draw_sprite_ext and draw_surface_ext except they improve how your image is scaled.
Depending on whether you scale down or scale up, the functions will choose between 8 different shaders to improve the scaling. Scaling down draws the image with a supersampling shader (meaning more detail is kept since more pixels are sampled). When scaling up, you can choose between a bicubic interpolation shader (smoother lines) or a set of depixelization shaders (specialized for finding and scaling patterns in pixel art, like the filters you see in emulators).
Remember to read the asset's EULA:
The depixelization shaders do now support color blending.