summaryrefslogtreecommitdiff
path: root/render/image.c
diff options
context:
space:
mode:
Diffstat (limited to 'render/image.c')
-rw-r--r--render/image.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/render/image.c b/render/image.c
index 3c08444d..1e76e6ba 100644
--- a/render/image.c
+++ b/render/image.c
@@ -152,7 +152,8 @@ void RrImageDraw(RrPixel32 *target, RrTextureRGBA *rgba,
while (num_pixels-- > 0) {
guchar alpha, r, g, b, bgr, bgg, bgb;
- alpha = *source >> RrDefaultAlphaOffset;
+ /* apply the rgba's opacity as well */
+ alpha = ((*source >> RrDefaultAlphaOffset) * rgba->alpha >> 8) & 0xff;
r = *source >> RrDefaultRedOffset;
g = *source >> RrDefaultGreenOffset;
b = *source >> RrDefaultBlueOffset;