# HG changeset patch # User Sam Lantinga # Date 1258364854 0 # Node ID dc2911c207e4c0faa503bd5a62d7f27b4241beb1 # Parent 0538362b98d32967b1709ffbd9752da0b30c54ad Thank you automated tests (and bobbens!), fixed alpha blending for accuracy diff -r 0538362b98d3 -r dc2911c207e4 src/video/SDL_blit.h --- a/src/video/SDL_blit.h Mon Nov 16 07:39:08 2009 +0000 +++ b/src/video/SDL_blit.h Mon Nov 16 09:47:34 2009 +0000 @@ -444,9 +444,9 @@ /* Blend the RGB values of two Pixels based on a source alpha value */ #define ALPHA_BLEND(sR, sG, sB, A, dR, dG, dB) \ do { \ - dR = (((sR-dR)*(A)+255)>>8)+dR; \ - dG = (((sG-dG)*(A)+255)>>8)+dG; \ - dB = (((sB-dB)*(A)+255)>>8)+dB; \ + dR = ((((int)(sR-dR)*(int)A)/255)+dR); \ + dG = ((((int)(sG-dG)*(int)A)/255)+dG); \ + dB = ((((int)(sB-dB)*(int)A)/255)+dB); \ } while(0)