トップページ > 過去ログ > 記事閲覧
表示に関して
名前:本田 日時: 2009/10/13 20:22

はじめまして、こんばんは。 最近VisualC++とDXライブラリを用いてブロック崩しを作り始めました。 現在作成途中なのですがウィンドウは展開されるのですが●や四角などが表示されません。 以下ソースです。つくり途中の為一部妙な変数宣言がされています。よろしければアドバイスをいただけると助かります #include "DxLib.h" int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) { if( DxLib_Init() == -1 ) // DXライブラリ初期化処理 { return -1; // エラーが起きたら直ちに終了 } ChangeWindowMode( TRUE ); int BGimg,BGM; //背景と音楽 const int white = GetColor(255,255,255); //白色 const int red = GetColor(255,000,000); //赤色 const int X = 640; //X軸の値(画面) const int y = 480; //Y軸の値(画面) int hankei = 10; int Ballx = 320;//弾のx軸 int Bally = 400;//弾のy軸 int Movex = 1 ;//x軸の弾の速度 int Movey = 1;//y軸の弾の速度 int MouseX = 320; const int MouseY = 420; int dummyY = 420; BGimg = LoadGraph( "img/back.bmp");//imgフォルダにあるback.bmpをBGimgにいれる. BGM = LoadSoundMem("mp3/back.mp3");//mp3フォルダにあるback.mp3をBGMに入れる SetMainWindowText("ブロック崩し");//ウィンドウのタイトル DrawGraph( 0, 0, BGimg, FALSE); SetMouseDispFlag( FALSE ) ; //マウスカーソルを表示させない PlaySoundMem(BGM,DX_PLAYTYPE_LOOP); while(ProcessMessage() == 0 && CheckHitKey( KEY_INPUT_ESCAPE == 0)){ ClearDrawScreen();//画面裏を消すことにより弾を消す GetMousePoint( &MouseX , &dummyY );//マウスの位置情報を設定 DrawCircle(Ballx,Bally,hankei,white,TRUE); //弾を生成 DrawBox(MouseX-30,MouseY-5,MouseX+30,MouseY+5,red,TRUE); //バーを生成 マウスの座標からX±30,Y±5で出す Ballx = Ballx + Movex; //弾の移動処理x Bally = Bally + Movey; //弾の移動処理y ScreenFlip(); //画面裏をスクリーンに表示 } WaitKey(); DxLib_End() ; // DXライブラリ使用の終了処理 return 0 ; // ソフトの終了 }

Page: 1 |

Re: 表示に関して ( No.1 )
名前:お父さん 日時:2009/10/13 21:31

本田さん、はじめまして。 ボールとバーが描画されないのは、 while(ProcessMessage() == 0 && CheckHitKey( KEY_INPUT_ESCAPE == 0)){ の部分を while(ProcessMessage() == 0 && CheckHitKey( KEY_INPUT_ESCAPE) == 0){ とすればいいと思います。 今のプログラムでは、whileループではなく、WaitKey(); で止まってるのではないでしょうか。 それとあと少し気になったのですが、ChangeWindowMode( TRUE ); は、if( DxLib_Init() == -1 ) より先に宣言し、 if( DxLib_Init() == -1 )のあとに SetDrawScreen(DX_SCREEN_BACK); // 描画対象画面の指定 を入れるとよいのではないでしょうか?
Re: 表示に関して ( No.2 )
名前:本田 日時:2009/10/14 01:42

お父さん、どうもありがとうございます。 おかげ様で描画する事ができました。ご丁寧にありがとうございます。

Page: 1 |