EWCLIBでとりこんだキャプチャ画像をDXLibで使いたいのですが、
http://www.geocities.jp/in_subaru/ewcli ... p.html#e15
http://hpcgi2.nifty.com/natupaji/bbs/pa ... ew&no=1837
を参考にして組んでみたのですが、表示されるがぞうはグレーで、正しく表示されません。(ただしカメラでうつしている物がうごくと画像もかわるので一応よみこんではいると思われる)
#include "DxLib.h"
#include "ewclib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow )
{
// ウインドウモードで起動
ChangeWindowMode( TRUE ) ;
//EWCLIB初期化(320*240,30fps)
EWC_Open(0,320,240,30.0);
//DxLib初期化処理
if( DxLib_Init() == -1 ) return -1;
// 描画先を裏画面にする
SetDrawScreen( DX_SCREEN_BACK ) ;
//画像変換用
int buffer[320*240];
int GrHandle ;
BASEIMAGE BaseImage ;
//画像変換用初期化
// カラーフォーマットは変化しないので最初に設定
CreateFullColorData( &BaseImage.ColorData ) ;
// ミップマップではないので0
BaseImage.MipMapCount = 0 ;
// 空のグラフィックハンドルの値を初期化
GrHandle = -1 ;
// メインループ
while( ProcessMessage() == 0 ){
//画像取得
EWC_GetImage(0,&buffer);
//画像変換
// BASEIMAGE の要素を埋める
BaseImage.GraphData = buffer;
BaseImage.Width = 320;
BaseImage.Height = 240;
BaseImage.Pitch = 320;
// グラフィックハンドルを作成しているかどうかで処理を分岐
if( GrHandle == -1 )
{
// 最初の場合はグラフィックハンドルの作成と映像の転送を一度に行う
GrHandle = CreateGraphFromBaseImage( &BaseImage ) ;
}
else
{
// 2回目以降はグラフィックハンドルへ映像を転送
ReCreateGraphFromBaseImage( &BaseImage, GrHandle ) ;
}
//変換した画像画面に描画
DrawGraph( 0, 0, GrHandle, FALSE );
ScreenFlip();
}
//終了処理
DxLib_End() ;
EWC_Close(0);
return 0 ;
}