0 votes

I'm having the same problem as this guy:
https://www.gamedev.net/topic/638250-multiply-blending-with-exception-of-the-alpha-channel/

How can I achieve what he wants to achieve easily in Godot?

in Engine by (253 points)

1 Answer

+1 vote
Best answer

You can get multiply blend mode by using the mul mode down in the inspector, under the CanvasItem section. If you plan to blend a sprite with a multiply blending mode, you must replace all your transparent pixels by white pixels, so white * color will get the same color and act as transparency for that blend mode.

The reason why you would get black on alpha regions is because the colour information yields black, or non-white (even if you don't see it).

In theory you could go with alpha if you fill the color info with white, but if you have black stuff it won't work. I suspect alpha channel is just ignored in the mul blending mode, so if you want to use a shader, what you can do is lerping towards white the further transparent the sprite is.

by (27,902 points)
selected by
Welcome to Godot Engine Q&A, where you can ask questions and receive answers from other members of the community.

Please make sure to read How to use this Q&A? before posting your first questions.
Social login is currently unavailable. If you've previously logged in with a Facebook or GitHub account, use the I forgot my password link in the login box to set a password for your account. If you still can't access your account, send an email to webmaster@godotengine.org with your username.