create_light_table
Section: Allegro manual (3)
Updated: version 4.2.2
Index
Return to Main Contents
NAME
create_light_table - Fills a color mapping table for lighting effects. Allegro game programming library.
SYNOPSIS
#include <allegro.h>
void create_light_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
lighting effects with the specified palette. When combining the colors c1
and c2 with this table, c1 is treated as a light level from 0-255. At
light level 255 the table will output color c2 unchanged, at light level
0 it will output the r, g, b value you specify to this function, and at
intermediate light levels it will output a color somewhere between the
two extremes. The r, g, and b values are in the range 0-63.
This function will take advantage of the global rgb_ap 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 light_table;
...
/* Build a color lookup table for lighting effects. */
create_light_table(&light_table, pal, 0, 0, 0, NULL);
SEE ALSO
color_map(3),
create_trans_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),
exshade(3),
extrans(3)