トップページ > 記事閲覧
DrawBlendGraph関数について
名前:たろう 日時: 2015/09/06 01:47

いつもお世話になっております。たろうです。。 DrawBlendGraph関数のBlendGraphにはLoadBlendGraph関数で読み込んだブレンド画像のハンドル を入れるとリファレンスに有るのですが LoadGraphで読んだ(画像1.png)を、GraphFilterBlt( 画像1, ブレンド, DX_GRAPH_FILTER_HSB, 0, 0, -255, -255 ); のようにして黒いシルエット画像に変えて、MakeScreenで作った同じ縦横サイズの(ブレンド)に貼り付け、 それをDrawBlendGraph( 0, 0, ○○○, TRUE, ブレンド, 128, 255 ) ;のようにして使っているのですが、 今のところ問題なく使用出来ています。(※画像1の形で別の画像○○○を切り抜く目的で使っています) 便利なので問題なければこのやり方で使用しようと思うのですが LoadBlendGraphを使わなくてもシルエットになっていれば普通の画像も使えるということなのでしょうか? お忙しいところすみません。よろしくお願いいたします。
メンテ

Page: 1 |

補足 ( No.1 )
名前:たろう 日時:2015/09/06 02:11

すみません、補足します。 画像1の形で別の画像○○○を切り抜く場合、 GraphBlendBlt( ○○○, ブレンド, 〜, 255, DX_GRAPH_BLEND_RGBA_SELECT_MIX, DX_RGBA_SELECT_SRC_R, DX_RGBA_SELECT_SRC_G, DX_RGBA_SELECT_SRC_B, DX_RGBA_SELECT_BLEND_A ) ; などが正しいかと思うのですが、これを使うと切り抜かれた画像に白い縁取りが出来てしまいます。 DrawBlendGraphだとそれが起きないので、この方法使用しています。 よろしくお願いします。
メンテ
Re: DrawBlendGraph関数について ( No.2 )
名前:管理人 日時:2015/09/07 02:02

LoadBlendGraph で作成されるブレンド画像のハンドルは、ファイルから読み込んだ際に 画像の赤成分をアルファ値にしただけの画像で、それ以外は LoadGraph で作成される グラフィックハンドルと違いはありません なので LoadGraph で読み込まれたグラフィックハンドルを DrawBlendGraph で使用しても ( 意図した結果になるかどうかはさておき )全く問題なく動作します 私は LoadBlendGraph を使用した場合しか想定していないので GraphFilterBlt や GraphBlendBlt を 使用して得られた画像を DrawBlendGraph で使用された場合の描画結果がどのようになるかは ( 画像中のアルファ値が使用されるということ以外 )分かりませんが、 GraphFilterBlt の DX_GRAPH_FILTER_HSB を使用した場合と GraphBlendBlt の DX_GRAPH_BLEND_RGBA_SELECT_MIX を使用した場合とでは GraphFilterBlt の DX_GRAPH_FILTER_HSB を使用した場合 にたろうさんの望む結果が 得られるということでしたら、GraphFilterBlt の DX_GRAPH_FILTER_HSB を使用して得られた 結果のグラフィックハンドルを使用していただいても問題ありません
メンテ
Re: DrawBlendGraph関数について ( No.3 )
名前:たろう(解決) 日時:2015/09/07 03:00

たろうです。いつも有難う御座います。 勘違いしていました。画像中のアルファ値が使用されていただけなんですね。 GraphFilterBltで白黒にしなくてもMakeScreenで作った画像に元画像を貼り付けただけで 希望通りの動作が得られました。ありがとうございました。 それと、、タッチ対応待っていました。嬉しいです(^^)
メンテ

Page: 1 |

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

   クッキー保存