サイログ。

~雑多な記事置き場~

Ruby/SDLで、αレイヤ付き画像を消去する方法

メイリオを使用可能にすると、やはり、アンチエイリアシングを使った
文字描画をしたいな、と。

で、スプライトに、αレイヤを持った画像も生成できるようにしてみたんですよ。
display_format_alpha使って。こんな感じで。

bitmap = SDL::Surface.new(SDL::HWSURFACE | SDL::SRCCOLORKEY | SDL::SRCALPHA, w, h, screen)
bitmap.fill_rect(0, 0, bitmap.w, bitmap.h, [0, 0, 0, 0])
bitmap.setAlpha(SDL::SRCALPHA|SDL::RLEACCEL, 255)
bitmap = bitmap.displayFormatAlpha

(screenオブジェクトは、画面オブジェクトのインスタンス)

で、実行。

アレ? 背景が透過されない・・・。
というか、αレイヤ付きの画像って、どう画像消去すればええんやろか???
screenもdisplay_format_alpha設定せなあかんかったっけ? いや違うハズ。

ところで、drawBlendedUTF8を使って描画すると、24ピクセル以下の文字が
崩れてしまうのは何故・・・???