Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
draw_trans_sprite(3)		 Allegro manual 	    draw_trans_sprite(3)

NAME
     draw_trans_sprite	- Draws a sprite blending it with the destination. Alle-
     gro game programming library.

SYNOPSIS
     #include <allegro.h>

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

DESCRIPTION
     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  func-
     tions (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. Ex-
     ample:

	/* 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;
	else
	   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 ta-
     ble for index 0.

SEE ALSO
     draw_sprite(3), draw_lit_sprite(3), draw_trans_rle_sprite(3), color_map(3),
     set_trans_blender(3),   set_alpha_blender(3),   set_write_alpha_blender(3),
     bitmap_mask_color(3), exalpha(3), exblend(3), exlights(3), exrotscl(3), ex-
     trans(3), exxfade(3)

Allegro 			  version 4.4.3 	    draw_trans_sprite(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=draw_trans_sprite&sektion=3&manpath=FreeBSD+Ports+15.1.quarterly>

home | help