GraphFilterが機能しない

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
セイ
記事: 5
登録日時: 12年前
住所: 大阪

GraphFilterが機能しない

#1

投稿記事 by セイ » 12年前

タイトルの通りです。

DXライブラリの関数GraphFilterが機能しません。
モノクロに加工された画像を表示したいのですが
以下のコードを実行して2キーを押しても、カラフルなままの画像が表示されるのみです。

どうしたらよいのでしょう。


コード:


#include "DxLib.h"

static char tmpkey[256];
static int key[256];

static char window=1;
static short sx=1024,sy=576;
double scale;

int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int){
ChangeWindowMode(window);
SetGraphMode( sx , sy, 32 );
DxLib_Init();
SetDrawScreen( DX_SCREEN_BACK );


if(sx>=16*sy/9){scale=(sy/1080.0f);}else{scale=(sx/1920.0f);}

int sceenE00=LoadGraph( "flesh/osakaN.JPG" );
GraphFilter( sceenE00, DX_GRAPH_FILTER_MONO, 0, 7 );

 while(ScreenFlip()==0&&ProcessMessage()==0&&ClearDrawScreen()==0)
 {
  GetHitKeyStateAll(tmpkey);
  for(int i=0;i<256;i++){if(tmpkey[i]!=0){key[i]++;}else{key[i]=0;}}

  if(key[KEY_INPUT_2]!=0){DrawRotaGraph((sx/2),(sy/2),scale,0.0,sceenE00,0);}
 
 }
 DxLib_End();
 return 0;
}


ISLe
記事: 2650
登録日時: 15年前
連絡を取る:

Re: GraphFilterが機能しない

#2

投稿記事 by ISLe » 12年前

ウチでも変換されません。DXライブラリのバグみたいですね。
#使用バージョンは3.10e。

MakeScreenで作ったバッファを経由させれば変換されました。

コード:

#include "DxLib.h"
 
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
{
	ChangeWindowMode(TRUE);
	if (DxLib_Init() != 0) return 0;

	int sceenE00 = MakeScreen(640, 480);
	SetDrawScreen(sceenE00);
	LoadGraphScreen(0, 0, "test.jpg", FALSE);
	GraphFilter(sceenE00, DX_GRAPH_FILTER_MONO, 0, 7);
	SetDrawScreen(DX_SCREEN_BACK);

	while (ProcessMessage() == 0 && ScreenFlip() == 0 && ClearDrawScreen() == 0) {
		DrawGraph(0, 0, sceenE00, FALSE);
	}
	
	DxLib_End();
	return 0;
}

閉鎖

“C言語何でも質問掲示板” へ戻る