Установка 32-битного спрайта на 50% непрозрачности в SDL/Pascal?

Я работаю над чужой игрой и не знаком с 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-битными. Как я могу переписать этот код для обработки 32-битных изображений с альфа-каналами?

Эта старая статья в блоге описывает, что мне нужно делать, но я нуб и не все понимаю.

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

Здесь упоминается библиотека под названием Sprig. Это мой единственный выбор, как поступить? Как мне это использовать? Работает ли это с программами Pascal?

Благодарю.

0 ответов

Другие вопросы по тегам