トップページ > 記事閲覧
MakeScreenとFillGraphのα値の問題
名前:YGHTdnt 日時: 2017/11/24 19:11

こんばんは。 この度MakeScreenで作成した描画可能スクリーン上に画像を描画した後、ほかのスクリーンを作成しそちらに別の画像を描画し、 後からブレンド描画しようと思い、FillGraphによるスクリーンカラーのリセットを試みたのですが どうやらalpha値を指定しても反映されていないようで、スクリーン上の何も描画していない箇所が黒く塗りつぶされてしまっているため 初めに描画したスクリーンが表示されず、あとから描画したスクリーンのみが表示されてしまいます。 どのようにしたら解決できるでしょうか?ご教示お願い致します。 同じ動作を確認できた最小のソースコードになります↓ https://pastebin.com/Eh2xAZym
メンテ

Page: 1 |

Re: MakeScreenとFillGraphのα値の問題 ( No.1 )
名前:管理人 日時:2017/11/25 23:31

MakeScreen は第三引数が int UseAlphaChannel となっていまして、TRUE にするとアルファチャンネルありの スクリーンが、FALSE にするとアルファチャンネル無しのスクリーンが作成され、デフォルト引数が FALSE となっています アップしていただいたソースでは第三引数の指定が無いため、デフォルトのまま FALSE となっていて、 アルファチャンネルが無いスクリーンとなってしまっているため、alpha値を指定しても反映されない状態になっています MakeScreen の第三引数に DX.TRUE にしたところ正常な描画結果が得られましたので よろしければお試しください m(_ _)m ただ、もし MakeScreen で作成したスクリーンに半透明の描画を行った場合はまた別の問題がありまして、 この場合は『乗算済みアルファ』という方法を使用しないと正常な描画結果が得られませんので、 もし MakeScreen で作成したスクリーンに半透明の描画を行われる場合はこちらの『乗算済みアルファのすすめ』を ご覧になってください m(_ _)m <乗算済みアルファのすすめ> http://dxlib.o.oo7.jp/lecture/PremulAlpha/PremulAlpha.html
メンテ
Re: MakeScreenとFillGraphのα値の問題 ( No.2 )
名前:YGHTdnt [解決済み] 日時:2017/11/26 17:39

第三引数を入れたら期待通りの動作をしてくれました!ありがとうございます!
メンテ

Page: 1 |

題名
名前
コメント
パスワード (記事メンテ時に使用)

   クッキー保存