create_trans_table man page

create_trans_table — Fills a color mapping table for translucency effects. Allegro game programming library.


#include <allegro.h>

void create_trans_table(COLOR_MAP *table, const PALETTE pal, int r, g, b, void (*callback)(int pos));


Fills the specified color mapping table with lookup data for doing  translucency effects with the specified palette. When combining the  colors c1 and c2 with this table, the result will be a color somewhere  between the two. The r, g, and b parameters specify the solidity of each  color component, ranging from 0 (totally transparent) to 255 (totally  solid). For 50% solidity, pass 128.

This function treats source color #0 as a special case, leaving the destination unchanged whenever a zero source pixel is encountered, so that masked sprites will draw correctly. This function will take advantage of the global rgb_map variable to speed up color conversions. If the callback function is not NULL, it will be called 256 times during the calculation, allowing you to display a progress indicator. Example:

   COLOR_MAP trans_table;
   /* Build a color lookup table for translucent drawing. */
   create_trans_table(&trans_table, pal, 128, 128, 128, NULL);

See Also

color_map(3), create_light_table(3), create_color_table(3), create_blender_table(3), draw_trans_sprite(3), draw_lit_sprite(3), draw_gouraud_sprite(3), rgb_map(3), ex3d(3), extrans(3)

Referenced By

color_map(3), create_blender_table(3), create_color_table(3), create_light_table(3), ex3d(3), extrans(3), rgb_map(3).

version 4.4.2 Allegro manual