Fourth "color" in imported or generated bitmaps: "invert"

Drawn images, sprites, and imported PNGs now have 3 "colors": black, white, and transparent. But 2 bits of data leaves a 4th "color" unused!

Could it be "invert", flipping what's behind it?

Examples:

  • A character in blacks and whites, with an inverting outline built in to always stand out from any background.

  • An aiming reticle with both black and white lines, and an inverting central aim cross.

Right now this can be done with drawModes and layering different sprites/images, but a more direct method would be great!

So... how would this import from PNG? My thought: any color OTHER than black and white* would be considered "invert." Myself, I'd probably use bright red (contrasts well with both black and white) in my PNGs. Or—just dictate any single color we have to use.

* Ideally "black" and "white" would be determined with enough "cushion" to allow "device appearance" screenshots in grays to import as pure black and white—which they currently do, and that's nice sometimes. So "invert" would be any color "sufficiently far" from black and white.

1 Like

I've run into a few situations where I wished this existed. +1 :+1:t5:

It's an interesting idea! It's also very incompatible with our current drawing code. :confused: And I don't think using a separate image for the inverting part is that much more work..

1 Like

Same could be said for assigning a dither pattern to the spare colour. Speaking from experience, as soon as you get one more colour or dither pattern you'll want more.

1 Like

I see, it's not worth reworking any major reworking!