Man Linux: Main Page and Category List

NAME

       draw_gouraud_sprite - Draws a sprite with gouraud shading. Allegro game
       programming library.

SYNOPSIS

       #include <allegro.h>

       void draw_gouraud_sprite(BITMAP *bmp, BITMAP *sprite, int x, int y, int
       c1, int c2, int c3, int c4);

DESCRIPTION

       More  sophisticated version of draw_lit_sprite(): the 'color' parameter
       is not constant  across  the  sprite  image  anymore  but  interpolated
       between  the  four specified corner colors. The corner values passed to
       this function indicate the strength  of  the  color  applied  on  them,
       ranging from 0 (no strength) to 255 (full strength). Example:

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

          /* Enemies are in shadow unless lit by torch. */
          draw_gouraud_sprite(buffer, menacing_spy, x, y,
                              light_strength_on_corner_1,
                              light_strength_on_corner_2,
                              light_strength_on_corner_3,
                              light_strength_on_corner_4);

SEE ALSO

       draw_sprite(3alleg),     draw_lit_sprite(3alleg),    color_map(3alleg),
       set_trans_blender(3alleg), bitmap_mask_color(3alleg), exshade(3alleg)