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 -