Seasons.NET

ちょっとした技術ブログです

DirectXのブレンドを設定するためにdelegateを使う。

今作っているライブラリでの実装は、こうです。

// ↓ブレンド関数登録( 実態は、どっかで定義 )
render.BlendHanlder += Normal; // アルファブレンド
render.BlendHanlder += AddPin; // 加算合成
render.BlendHanlder += Substruct; // 減算合成
render.BlendHanlder += Screen; // 焼き付け

sprite.Draw(...,"Normal" ); // => delegateに登録したメソッド名を指定するとその名前のブレンドが描画時に適用される。

新たにブレンドを作る時は、楽ちんですね。