comparison src/video/SDL_blit.h @ 3625:83910f4c373f

Merged r4992:4993 from branches/SDL-1.2: increased alpha blend accuracy.
author Ryan C. Gordon <icculus@icculus.org>
date Sun, 10 Jan 2010 06:18:39 +0000
parents dc2911c207e4
children 76667e288846
comparison
equal deleted inserted replaced
3624:9b1af1049f66 3625:83910f4c373f
442 } 442 }
443 443
444 /* Blend the RGB values of two Pixels based on a source alpha value */ 444 /* Blend the RGB values of two Pixels based on a source alpha value */
445 #define ALPHA_BLEND(sR, sG, sB, A, dR, dG, dB) \ 445 #define ALPHA_BLEND(sR, sG, sB, A, dR, dG, dB) \
446 do { \ 446 do { \
447 dR = ((((int)(sR-dR)*(int)A)/255)+dR); \ 447 dR = (((((int)(sR-dR)*((int)A))+255)/255)+dR); \
448 dG = ((((int)(sG-dG)*(int)A)/255)+dG); \ 448 dG = (((((int)(sG-dG)*((int)A))+255)/255)+dG); \
449 dB = ((((int)(sB-dB)*(int)A)/255)+dB); \ 449 dB = (((((int)(sB-dB)*((int)A))+255)/255)+dB); \
450 } while(0) 450 } while(0)
451 451
452 452
453 /* This is a very useful loop for optimizing blitters */ 453 /* This is a very useful loop for optimizing blitters */
454 #if defined(_MSC_VER) && (_MSC_VER == 1300) 454 #if defined(_MSC_VER) && (_MSC_VER == 1300)