簡體   English   中英

Allegro5中的masked_blit錯誤

[英]Error with masked_blit in Allegro5

我在程序中使用masked_blit()來顯示具有透明度的.bmp(使用完美的粉紅色)。 但是當我構建時,它說:

錯誤:未在此范圍內聲明“ masked_blit”

我包括了Allegro的.h,當然我沒有忘記所有這些:

-lallegro -lallegro_font -lallegro_ttf -lallegro_image

這是我編寫的代碼的摘錄:

#include <allegro5/allegro.h>
#include <allegro5/allegro_image.h>
[...]
 head = al_load_bitmap("head.bmp");
 masked_blit(head, display, 0,0,0,0,10,10);
 al_clear_to_color(al_map_rgb(0,0,0));
 al_draw_bitmap(head, screen_w / 2, screen_h / 2, 0);
[..]

masked_blit是Allegro 4函數。 它在Allegro 5中不存在。

以下是Allegro 5中的圖形功能

al_draw_bitmap_region是最similiar功能masked_blit ,但透明性規則是不同的(8位alpha通道對1位粉色如α)。

al_convert_mask_to_alpha(ALLEGRO_BITMAP *bitmap, ALLEGRO_COLOR mask_color)在這里可能有用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM