diff options
author | Richard Quirk <richard.quirk@gmail.com> | 2013-09-24 21:27:55 +0200 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2013-09-24 17:53:45 -0700 |
commit | 4c845acc4c6e370825522076d1528df4daece274 (patch) | |
tree | 0f88d201094631bd8e3061d2da48064ff3a28a89 | |
parent | 2df6b614c001fd7c3c6e8fa13c510c903f09841a (diff) |
Fix entire surface alpha blending with SDL_SetAlpha
-rw-r--r-- | AUTHORS | 1 | ||||
-rw-r--r-- | src/library_sdl.js | 3 |
2 files changed, 4 insertions, 0 deletions
@@ -98,4 +98,5 @@ a license to everyone to use it as detailed in LICENSE.) * Ranger Harke <ranger.harke@autodesk.com> (copyright owned by Autodesk, Inc.) * Tobias Vrinssen <tobias@vrinssen.de> * Patrick R. Martin <patrick.martin.r@gmail.com> +* Richard Quirk <richard.quirk@gmail.com> diff --git a/src/library_sdl.js b/src/library_sdl.js index d6473df0..63e8b2b1 100644 --- a/src/library_sdl.js +++ b/src/library_sdl.js @@ -1131,7 +1131,10 @@ var LibrarySDL = { } else { dr = { x: 0, y: 0, w: -1, h: -1 }; } + var oldAlpha = dstData.ctx.globalAlpha; + dstData.ctx.globalAlpha = srcData.alpha/255; dstData.ctx.drawImage(srcData.canvas, sr.x, sr.y, sr.w, sr.h, dr.x, dr.y, sr.w, sr.h); + dstData.ctx.globalAlpha = oldAlpha; if (dst != SDL.screen) { // XXX As in IMG_Load, for compatibility we write out |pixels| console.log('WARNING: copying canvas data to memory for compatibility'); |