Creating and using 32 bit rgba sprites. allegro game programming library.
#include <allegro.h>
Example exalpha
This program demonstrates how to use the 32 bit RGBA translucency functions to store an alpha channel along with a bitmap graphic. Two images are loaded from disk. One will be used for the background and the other as a sprite. The example generates an alpha channel for the sprite image, composing the 32 bit RGBA bitmap during runtime, and draws it at the position of the mouse cursor.
BITMAP(3alleg4), END_OF_MAIN(3alleg4), SCREEN_H(3alleg4), SCREEN_W(3alleg4), allegro_error(3alleg4), allegro_init(3alleg4), allegro_message(3alleg4), blit(3alleg4), clear_keybuf(3alleg4), create_bitmap(3alleg4), destroy_bitmap(3alleg4), draw_trans_sprite(3alleg4), drawing_mode(3alleg4), font(3alleg4), getb(3alleg4), getg(3alleg4), getpixel(3alleg4), getr(3alleg4), install_keyboard(3alleg4), install_mouse(3alleg4), install_timer(3alleg4), keypressed(3alleg4), load_bitmap(3alleg4), makecol(3alleg4), mouse_x(3alleg4), mouse_y(3alleg4), putpixel(3alleg4), rectfill(3alleg4), replace_filename(3alleg4), screen(3alleg4), set_alpha_blender(3alleg4), set_color_conversion(3alleg4), set_color_depth(3alleg4), set_gfx_mode(3alleg4), set_multiply_blender(3alleg4), set_write_alpha_blender(3alleg4), solid_mode(3alleg4), stretch_blit(3alleg4), textprintf_ex(3alleg4)