如何在没有背景的情况下加载bmp

时间:2012-06-04 21:20:27

标签: c++ image allegro

所以,我试图在快板上制作游戏,但我目前仍然坚持这个该死的空白背景,这让我非常生气,因为我知道PNG图像已经在背景中具有透明度,但我无法加载pngs ,我已经下载了devpaks,安装了库并且还没有发生任何好事,如果对我来说最好的选择是使用PNG,那么请告诉我如何加载然后正确使用。

如果最好的选择仍然是使用BMP,并且有一个算法,功能或一些代码会使空白背景消失,请告诉我。

对于那些不理解我想要的人,有一个更好的解释: http://3.bp.blogspot.com/-r9BaUuMLirc/ThjzRHOMBKI/AAAAAAAAAJI/kUilPnIPJLg/s400/bola_azul.png

它目前在.png,但我在油漆中转换为.bmp,所以它让我成为一个空白的背景,而在快板中它显示了整个画面,我想只有球。

1 个答案:

答案 0 :(得分:1)

正如您所评论的,使用Allegro 4时,与masked_blit()draw_sprite()一起使用时,颜色0xFF00FF会被视为透明。

要在Allegro 4中加载PNG,您需要将loadpng与libpng一起使用。您可以使用set_alpha_blender()启用Alpha混合器来使用8位Alpha通道。

如果您刚刚开始,您应该使用Allegro 5,它具有现代API和PNG文件的原生支持。