diff options
| author | Ray Strode <rstrode@redhat.com> | 2007-05-10 16:07:47 -0400 |
|---|---|---|
| committer | Ray Strode <rstrode@redhat.com> | 2007-05-10 16:07:47 -0400 |
| commit | ed037130a1ad4fb00cfa28991b6a0535c8da7b06 (patch) | |
| tree | 8c8a7df8facb0df8e1ffb294e257374ea890f243 /src | |
| parent | 3be9909f098df6ae144e333f4d9c7ff74fb8df05 (diff) | |
try a few things in vein to get OVER to work right
Diffstat (limited to 'src')
| -rw-r--r-- | src/ply-video-buffer.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/ply-video-buffer.c b/src/ply-video-buffer.c index 30cbeb9..98abdac 100644 --- a/src/ply-video-buffer.c +++ b/src/ply-video-buffer.c @@ -330,13 +330,10 @@ ply_video_buffer_blend_value_at_pixel (PlyVideoBuffer *buffer, old_green = ((old_pixel_value >> 8) & 0xff) / 255.0; old_blue = (old_pixel_value & 0xff) / 255.0; - new_alpha = (pixel_value >> 24) / 255.0; + new_alpha = ((pixel_value >> 24) & 0xff) / 255.0; new_red = ((pixel_value >> 16) & 0xff) / 255.0; - new_red *= new_alpha; new_green = ((pixel_value >> 8) & 0xff) / 255.0; - new_green *= new_alpha; new_blue = (pixel_value & 0xff) / 255.0; - new_blue *= new_alpha; new_red = new_red + old_red * (1.0 - new_alpha); new_green = new_green + old_green * (1.0 - new_alpha); @@ -615,6 +612,10 @@ ply_video_buffer_fill_with_color (PlyVideoBuffer *buffer, if (area == NULL) area = &buffer->area; + red *= alpha; + green *= alpha; + blue *= alpha; + pixel_value = ply_video_buffer_convert_color_to_pixel_value (buffer, CLAMP (red * 255.0, 0, 255), |
