diff --git a/shader/bitmapBlit.frag b/shader/bitmapBlit.frag index 2e75e65..1510e7e 100644 --- a/shader/bitmapBlit.frag +++ b/shader/bitmapBlit.frag @@ -27,8 +27,7 @@ void main() float at = ab*as; resFrag.a = at + ad - ad*at; - resFrag.rgb = mix(dstFrag.rgb, srcFrag.rgb, ab*as); - resFrag.rgb = mix(srcFrag.rgb, resFrag.rgb, ad*resFrag.a); + resFrag.rgb = as*srcFrag.rgb + (1-at) * ad * dstFrag.rgb; gl_FragColor = resFrag; }