create_trans_table
Section: Allegro manual (3)
Updated: version 4.2.2
Index
Return to Main Contents
NAME
create_trans_table - Fills a color mapping table for translucency effects. Allegro game programming library.
SYNOPSIS
#include <allegro.h>
void create_trans_table(COLOR_MAP *table, const PALETTE pal,
int r, g, b, void (*callback)(int pos));
DESCRIPTION
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)