コード通りの結果が得られているだけに見えるので、
何をなさりたいのかいまいち分からないのですが、以下のような感じでしょうか?
違うようでしたら、コンパイル可能なコードと求める処理結果のイメージ画像をご提供下さい。
//- 以下、テストコード ("Scene1.jpg"を使用)-//
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE, HINSTANCE, LPSTR, int )
{
ChangeWindowMode( TRUE );
SetWindowText( "DxLib:" DXLIB_VERSION_STR );
if ( DxLib_Init( ) == -1 ) return -1;
int white = GetColor( 255, 255, 255 );
int gh = LoadGraph( "Scene1.jpg" );
int circleScreen = MakeScreen( 640, 480, TRUE );
int tempScreen = MakeScreen( 640, 480, TRUE );
SetDrawScreen( DX_SCREEN_BACK );
while ( ProcessMessage( ) == 0 && CheckHitKey( KEY_INPUT_ESCAPE ) == 0 ) {
SetDrawScreen(circleScreen);
ClearDrawScreen();
// DrawBox(0, 0, 640, 480, GetColor( 0, 0, 0 ), TRUE); //ゲーム画面の大きさで塗りつぶす
DrawCircle(640/2, 480/2, 480/2, GetColor( 255, 255, 255 ), TRUE); //この場所にフィルタを掛けたい
//仮のスクリーンに乗算ブレンドで描画
SetDrawScreen(tempScreen);
ClearDrawScreen();
DrawGraph(0, 0, gh, TRUE); //今まで描画していたものを描画(背景とか)
SetDrawBlendMode(DX_BLENDMODE_MULA, 255);
DrawGraph(0, 0, circleScreen, TRUE); //背景が黒の円である画像を描画
SetDrawBlendMode(DX_BLENDMODE_NOBLEND, 0);
//仮のスクリーンと合成して描画
GraphFilterBlt(tempScreen, tempScreen, DX_GRAPH_FILTER_GAUSS, 16, 1400); //仮のスクリーンをぼかす
SetDrawScreen(DX_SCREEN_BACK); //メインのスクリーンに戻す
ClearDrawScreen( );
DrawGraph(0, 0, gh, TRUE); //今まで描画していたものを描画(背景とか)
DrawGraph(0, 0, tempScreen, TRUE); //加工した画像を描画
DrawFormatString( 0, 0, white, "TEST" );
ScreenFlip( );
}
DxLib_End( );
return 0;
}