Provided by: liballegro-doc_4.2.2-3_all bug


       draw_trans_sprite  -  Draws  a  sprite  blending  it  with  the  destination. Allegro game
       programming library.


       #include <allegro.h>

       void draw_trans_sprite(BITMAP *bmp, BITMAP *sprite, int x, int y);


       Uses the global color_map table or truecolor blender functions to overlay  the  sprite  on
       top  of the existing image. This must only be used after you have set up the color mapping
       table (for 256-color modes)  or  blender  functions  (for  truecolor  modes).  Because  it
       involves reading as well as writing the bitmap memory, translucent drawing is very slow if
       you draw directly to video RAM, so wherever  possible  you  should  use  a  memory  bitmap
       instead. Example:

          /* Some one time initialisation code. */
          COLOR_MAP global_trans_table;
          create_trans_table(&global_trans_table, my_palette,
                             128, 128, 128, NULL);
          if (get_color_depth() == 8)
             color_map = &global_trans_table;
             set_trans_blender(128, 128, 128, 128);

          draw_trans_sprite(buffer, ghost_sprite, x, y);

       The  bitmap and sprite must normally be in the same color depth, but as a special case you
       can draw 32 bit RGBA format sprites onto any hicolor or truecolor bitmap, as long  as  you
       call  set_alpha_blender()  first,  and  you can draw 8-bit alpha images onto a 32-bit RGBA
       destination, as long as you call set_write_alpha_blender() first.  As  draw_sprite()  this
       function  skips transparent pixels, except if the source sprite is an 8-bit image; if this
       is the case, you should pay attention to properly set up your color map table for index 0.


       draw_sprite(3alleg),        draw_lit_sprite(3alleg),        draw_trans_rle_sprite(3alleg),
       color_map(3alleg),          set_trans_blender(3alleg),          set_alpha_blender(3alleg),
       set_write_alpha_blender(3alleg),        bitmap_mask_color(3alleg),        exalpha(3alleg),
       exblend(3alleg), exlights(3alleg), extrans(3alleg), exxfade(3alleg)