GameMaker (2.3)

AEColorMask - Recolor Sprites

William Jones

You must be logged in to obtain assets


AEColorMask is meant to be a simple sprite coloring system that colors specific parts of a sprite without needing to use a palette. It is a shader and a set of scripts that use the shader.


  • No need to set up the shader - use the draw scripts and provide the arguments

  • Works with pixel art or realistic art

  • Works with animated sprites or static sprites

  • Includes 7 scripts that mimic the built-in draw_sprite* scripts

A color mask is a black and white image that tells the shader where to draw the mask color (white) over the original sprite and where to leave the original sprite alone (black). You can use any gray color between black and white to get the mask color to partially appear.

Masks will automatically be resized to fix the original sprites regardless of size or aspect ratio

Using the mask scripts is a simple as adding: _color_mask to draw_sprite functions Here is a list of the available functions:

  • draw_self_color_mask()

  • draw_sprite_color_mask()

  • draw_sprite_ext_color_mask()

  • draw_sprite_stretched_color_mask()

  • draw_sprite_stretched_ext_color_mask()

  • draw_sprite_tiled_color_mask()

  • draw_sprite_tiled_ext_color_mask()

You'll need to supply 4 extra arguments to the scripts:

  • mask sprite //The sprite to use as a mask (should ideally be the same size as the original sprite)

  • mask subimg //The sub image of the mask sprite to use (this means that masks can be animated)

  • mask color //The color to draw over the original sprite

  • mask color alpha //The alpha the mask area should be drawn at (if it's at 0 then the masked area will be completely invisible and erase that part of the original sprite)

End User Licence Agreement (EULA).

Age Rating: 4+


GMS2.3 - Version 0.0.7. Published September 9, 2020

Cleaned object trash and reorganized folder structure

Loading, please wait

Package contents

Loading, please wait

What is the issue?

Loading, please wait