トップページ > 記事閲覧
消しゴムツールを作りたい
名前:Tangeθ 日時: 2014/06/27 19:18

いつもお世話になっております。 DXライブラリでお絵かきソフトを作っているのですが、わからないことがあったので、質問させて頂きます。 MakeScreenで透過付きのスクリーンを作り(↓)、それを重ねてレイヤ機能のようなものを作ったのですが、消しゴム機能が付けられずに悩んでいます。一応、ClsDrawScreen関数で全部スクリーンを透過状態にすることは可能なのですが、MakeScreenで作ったスクリーンの一部分だけ透過値を操作するにはどうすればよいでしょうか。 int scr=MakeScreen(WINDOW_X,WINDOW_Y,TRUE);
メンテ

Page: 1 |

Re: 消しゴムツールを作りたい ( No.1 )
名前:管理人 日時:2014/06/28 09:35

SetDrawBlendMode で減算ブレンド( DX_BLENDMODE_SUB )を使用する設定にして、 真っ黒の円を描画すればアルファ値だけ減らすことができますので、消しゴムの効果と することができると思います 因みに、透過付きスクリーンに描画したものを画面に描画する際に正しい結果を得るには 「乗算済みアルファ」を使う必要がありますので、もし乗算済みアルファをご存じないということでしたら、 よろしければこちらの解説ページをご覧になってみてください m(_ _)m http://homepage2.nifty.com/natupaji/DxLib/lecture/PremulAlpha/PremulAlpha.html
メンテ
Re: 消しゴムツールを作りたい ( No.2 )
名前:Tangeθ(解決済み) 日時:2014/06/28 19:55

回答ありがとうございます。減算ブレンド、乗算済みアルファ共に効果を確認できました。おかげでクオリティが上がりました!
メンテ

Page: 1 |

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

   クッキー保存