ID:2511340
 
(See the best response by Kaiochao.)
I work on a card game. So, I'm working on a proc in my game for a minor visual element. The goal is to give the cards a holographic display akin to a scene from an anime movie.

https://i.imgur.com/PjKHrY4r.jpg

That's the actual image for reference sake.


Initially I only had this applying to 2-3 cards so I just created alternate icons and switched the icons of the cards when I wanted to apply the visual change, but now I'm trying to work on a proc that can apply it to any card in the game.

I have the proc working and the visual comes pretty close to what I want, but the colors end up just a bit washed out.

https://i.imgur.com/MNkbKgu.png

Here is my results.

Bottom is the original card.
Top Left is the alternate icon I created by hand.
Top Right is the newly generated icon by the proc.

Right now the proc...

1. uses MapColors() to convert the original image to grayscale
2. uses Blend() with ICON_ADD to apply a 0000FF square of blue color over the artwork.
3. Overlays a new border on to the image giving the new colored segment at the bottom and white outline.


I cant find a way to increase the contrast of the image though so either my darks look too bright or my brights look too dark. I cant find a way to fine tune the levels to give a nice even range from black to blue to white.

Anyone have any advice on how to achieve this?
I would try different values for the blend operation. Such as 000099, or 2222FF, or something
Best response
The effect you want can probably be achieved by tweaking the components (numbers).

You can include that additive blend in the call to MapColors as "a color added to the result".

I recommend using a color matrix instead of MapColors, so you don't need an /icon object at all. It's much more efficient for the server, for the same effect. The numbers are exactly the same and in the same order as for MapColors, but you put them in a list() and set the color var of the cards to that list of numbers. For example:
color = list(
0.0, 0.5, 1.0,
0.0, 1.0, 0.0,
0.0, 0.0, 1.0,
0.0, 0.0, 0.5)
Kaiochao is right; using a color matrix instead of icon math is so much cleaner, and for a border you can use an outline filter.