在SDL / Pascal中将32位精灵设置为50%不透明度?

时间:2016-03-11 00:18:06

标签: graphics sdl freepascal

我在其他人的游戏中工作,不熟悉SDL或Pascal。我想要做的是将游戏图形从8位升级到32位。到目前为止,除了以下程序外,它进展顺利:

    SDL_SetAlpha( Spr^.Img , SDL_SRCAlpha , Alpha_Level );
    DrawAnimImage( Spr^.Img , Spr^.W , Spr^.H , Frame , MyDest );
    SDL_SetAlpha( Spr^.Img , SDL_SRCAlpha , SDL_Alpha_Opaque );

当你的角色走近它时,这段代码应该将精灵的不透明度改为50%。它适用于8和24位图像,但不适用于32位图像。如何重写此代码以处理带alpha通道的32位图像?

这篇旧博客文章描述了我需要做什么,但我是一个菜鸟,并且不了解所有这些。

http://www.sdltutorials.com/the-ins-and-outs-and-overlays-of-alpha-blending

它提到了一个名为Sprig的图书馆。这是我唯一的选择吗?我该如何使用它?它适用于Pascal程序吗?

感谢。

0 个答案:

没有答案