いつもすみません、たろうです。
以下のプログラムで、作った「幕」に減算でDrawBoxした物と
直接スクリーンにDrawBoxした物とで画像が変わってしまうのですが
@同じ画像が表示されるようにしたいのですが、使い方を間違っていますでしょうか?
ADX_SCREEN_BACKに直接DrawBoxした方も「PMA」入りになっていますが
「PMA」無しを使っても同じ画像になります。これはそういうものなのでしょうか?
すみません、何度も似たような質問をしているのですが、未だ理解が乏しく
また質問させていただこうと思いました。
お手すきのときでかまいません、よろしくお願いいたしますm(_ _)m
-----------------------------------------------------------------------------------
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow )
{
ChangeWindowMode( TRUE );
SetGraphMode(200,200,16);
if( DxLib_Init() < 0 ) return -1;
SetUsePremulAlphaConvertLoad( TRUE ) ;
int 幕 = MakeScreen( 100 , 100 , TRUE );
int 地色= GetColor( 0 , 255 , 0 );
int 灰色= GetColor( 125 , 125 , 125 );
int 色1= GetColor( 0 , 50 , 60 );
SetDrawScreen(幕);
DrawBox( 0,0,100,100,灰色, TRUE );
SetDrawBlendMode( DX_BLENDMODE_PMA_SUB, 125 ) ;
DrawBox( 20,20,80,80,色1, TRUE );
SetDrawBlendMode( DX_BLENDMODE_PMA_ALPHA, 255 ) ;
SetDrawScreen( DX_SCREEN_BACK );
while( ProcessMessage() == 0 )
{
ClearDrawScreen() ;
DrawBox( 0,0,300,300,地色, TRUE );
DrawBox( 0,0,100,100,灰色, TRUE );
SetDrawBlendMode( DX_BLENDMODE_PMA_SUB, 125 ) ;
DrawBox( 20,20,80,80,色1, TRUE );
SetDrawBlendMode( DX_BLENDMODE_PMA_ALPHA, 255 ) ;
DrawGraph( 100, 0 , 幕 , TRUE );
ScreenFlip();
}
DxLib_End();
return 0;
}