[過去ログ] SDLスレ (987レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
605(4): 名前は開発中のものです。 [] 04/10/24 21:43:30 ID:f3AiXIG4(1) AAS
SDL_ttfでアンチエイリアスを効かせるには、どうすればいいんでしょうか?
606(2): 名前は開発中のものです。 [sage] 04/10/25 07:22:46 ID:VVYWZ8/E(1) AAS
>>603SDL_gfx SGE のどっちかを使え。
それぞれどういうものかは自分で使って確かめろ。
>>605
TTF_Render*_Shaded() TTF_Render*_Blended() のどっちかを使え。
どういう差があるのかは自分で使って確かめろ。
ドキュメントが少ないのは事実だが、
いくらなんでももうちょっと自分で調べないと何もできないぞ。
このぐらいの情報はすぐ見付かる。
608: 605 [] 04/10/25 22:33:39 ID:snYpUN8B(1/2) AAS
>>606
駄目ですた。
SHADEDは背景色が透過されずに表示されて、BLENDEDは何も表示され
ませんでした。
OpenGLのテクスチャに使うために、一度2の累乗サイズのサーフェイスに
Blitしてるのが原因なのかもしれないです。
SOLIDの場合はちゃんと透過されてるのに、何故なんだろう・・・。
609(1): 605 [sage] 04/10/25 23:43:05 ID:snYpUN8B(2/2) AAS
すみません、出来ました。
SDL_ttfから取得したサーフェイスを、2の累乗サイズのサーフェイスに
Blitした後に、ttfのサーフェイスにアルファフラグを書き戻してやらないと
いけないみたいです。
何故こうなってるのか、未だにさっぱりですが、ともかくこういう物の
ようです。
どうもありがとうございました。
613: 605 [sage] 04/10/26 23:10:01 ID:tqT7U+dq(1) AAS
>>610610(1): 606 [sage] 04/10/26 00:44:33 ID:zFRaLOBe(1) AAS
>>609
「アルファフラグを書き戻す」ってのがどういう行為を指してるのかちょっとよくわからなかったんだが、
SDL_ttf の Blended 系では、
・フォントを描画した Surface を返す
・階調的なアルファブレンドも行う
という二つの条件を満たすために
返した Surface の中にアルファチャンネルを含めてある。
で、新しいサーフェスに Blit したりして
サーフェスをいくつもまたぐ時に問題になってくるのがこれ。
外部リンク[html]:zinnia.dyndns.org
> blit 操作の結果は SDL_SRCAPLHA がセットされているか否かによって大きく変化します。
> これがどのように結果に影響するかについては、 SDL_SetAlpha を見て下さい。
ここら辺をちゃんと設定してなかったんでないかい?
ちょっと情報が少ないから推測でもの言ってるが。
ところで、最初に提供してもらった情報が少なかったとはいえ、
この条件下なら確かに混乱して質問してもおかしくないわな。
キツい言い方して悪かった。
どうもです。
「アルファフラグを書き戻す」というか、Blitする前に
文字を書いたサーフェイスのSDL_PixelFormatのcolorkeyと、
alphaを保存しておいて、Blitした後に同じサーフェイスに
再度セットしなおすとうまく行くんです。
そのサーフェイスは後は解放するだけで、全く使わないんですが
そんなものなんでしょうか。
SDL_SRCALPHAとかSDL_SRCCOLORKEYとかは色々やってみたんですが、
全く駄目駄目でした。
スレ汚しでしたが、どうもありがとうございました。
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.035s