You need to set the dynamic texture as pre-multiplied as well as enable the right blending mode.
This blending mode should be set to ALPHA_PREMULTIPLIED_PORTERDUFF but when doing this there’s a line in the shader code that is added: color.rgb *= alpha
. However, we don’t want this to happen, we only want to set the OpenGL blending factors to 1 / ONE_MINUS_SRC_ALPHA / 1 / ONE_MINUS_SRC_ALPHA.
The easiest way is to override the blending factors and set the ones we want in the material.onBind
observable: