



38. αブレンド(その1)
9章で輝度の設定を行いましたが、もとある背景の上に描画する時は、上書きではなく、背景の色も含めてブレンドしながら
描画しなければなりません。背景と今から上書きする画像との色をうまくブレンドする方法をαブレンドといいます。
αブレンドは「透けてる感じ」を出すためのブレンドモードです。
ここではαブレンドを使って見ましょう。どのように違いがあるか100聞は一見に如かずなので、
とりあえず39章まで一気に実行して見てください。
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){
ChangeWindowMode( TRUE ) ; //ウィンドウモードに変更
if( DxLib_Init() == -1 ) return -1; // DXライブラリ初期化処理 エラーが起きたら終了
DrawBox(0, 0,640, 50,GetColor(255,255,255),TRUE); //白い四角形を描画
DrawBox(0, 50,640,100,GetColor(255, 0, 0),TRUE); //赤い四角形を描画
SetDrawBright ( 128 , 128 , 128 ) ; //半分の明るさにセット
LoadGraphScreen( 0 , 0 , "char.png" , TRUE ) ; //画像を表示。
SetDrawBright ( 255 , 255 , 255 ) ; //元の明るさにリセット
SetDrawBlendMode( DX_BLENDMODE_ALPHA , 128 ) ; //以後半分の明るさでαブレンドする
LoadGraphScreen( 400 , 0 , "char.png" , TRUE ) ; //画像を表示。
SetDrawBlendMode( DX_BLENDMODE_NOBLEND , 0 ) ; //ブレンドモードをリセットする。
WaitKey() ; // 結果を見るためにキー待ち(『WaitKey』を使用)
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
実行結果
- Remical Soft -