al_premul_rgba(3) al_premul_rgba(3) NAME al_premul_rgba - Allegro 5 API SYNOPSIS #include ALLEGRO_COLOR al_premul_rgba( unsigned char r, unsigned char g, unsigned char b, unsigned char a) DESCRIPTION This is a shortcut for al_map_rgba(3)(r * a / 255, g * a / 255, b * a / 255, a). By default Allegro uses pre-multiplied alpha for transparent blending of bitmaps and primitives (see al_load_bitmap_flags(3) for a discussion of that feature). This means that if you want to tint a bitmap or primitive to be transparent you need to multiply the color components by the alpha components when you pass them to this function. For example: int r = 255; int g = 0; int b = 0; int a = 127; ALLEGRO_COLOR c = al_premul_rgba(r, g, b, a); /* Draw the bitmap tinted red and half-transparent. */ al_draw_tinted_bitmap(bmp, c, 0, 0, 0); This function can be called before Allegro is initialized. SINCE 5.1.12 SEE ALSO al_map_rgba(3), al_premul_rgba_f(3) Allegro reference manual al_premul_rgba(3)