Releseでは表示されるがDebugでは表示されない
Posted: 2014年3月16日(日) 19:35
初めての投稿ですがよろしくお願いします。
開発環境はOS : Windouws 7 (64bit)//使用言語 : C++ //コンパイラ: Visual C++2008 EE です。
今私はC++の勉強とシューティングゲーム作りの勉強をする為に簡単なゲームを作っていたのですが、困っている事があります。
この間、自機の画像を表示するためのプログラムを書いていたのですが、コンパイルして実行しても画像が表示されない事がありました。そこでコンパイルをDebugからReleseに変更した所、画像を表示する事が出来ました。
なぜこのような現象が起こってしまうのか調べたのですが、あまり理解する事が出来ませんでした。
DebugとReleseの両方で問題なく画像を表示するにはどうしたらいいのでしょうか?
稚拙な文章で申し訳ありませんが、どなたかアドバイスをいただけないでしょうか。
関係があるのか分かりませんが画像を表示する部分のソースコードです。
開発環境はOS : Windouws 7 (64bit)//使用言語 : C++ //コンパイラ: Visual C++2008 EE です。
今私はC++の勉強とシューティングゲーム作りの勉強をする為に簡単なゲームを作っていたのですが、困っている事があります。
この間、自機の画像を表示するためのプログラムを書いていたのですが、コンパイルして実行しても画像が表示されない事がありました。そこでコンパイルをDebugからReleseに変更した所、画像を表示する事が出来ました。
なぜこのような現象が起こってしまうのか調べたのですが、あまり理解する事が出来ませんでした。
DebugとReleseの両方で問題なく画像を表示するにはどうしたらいいのでしょうか?
稚拙な文章で申し訳ありませんが、どなたかアドバイスをいただけないでしょうか。
関係があるのか分かりませんが画像を表示する部分のソースコードです。
#include "DxLib.h"
#include "player.h"
#include "define.h"
#include <math.h>
PLAYER::PLAYER()
{
gh=LoadGraph("画像/自機/001.png");
speed=3.0; //スピード
//初期位置
x=180;
y=400;
//移動制御
sayu=zyoge=0;
naname=1.0;
life=true;// 生きてるかどうか
}
void PLAYER::Move(){
sayu=zyoge=0;
naname=1.0;
//左右どちらかの入力があったら
if(key[KEY_INPUT_RIGHT]==1 || key[KEY_INPUT_LEFT]==1){
sayu=1;
}
//上下どちらかの入力があったら
if(key[KEY_INPUT_UP]==1 || key[KEY_INPUT_DOWN]==1){
zyoge=1;
}
//左右、上下どちらも押されていたら
if(sayu == 1 && zyoge == 1){
naname=sqrt(2.0);
}
//キャラの移動
if(key[KEY_INPUT_RIGHT]==1){
x+=cos(angle)*speed/naname;
}
if(key[KEY_INPUT_LEFT]==1){
x-=cos(angle)*speed/naname;
}
if(key[KEY_INPUT_UP]==1){
y-=cos(angle)*speed/naname;
}
if(key[KEY_INPUT_DOWN]==1){
y+=cos(angle)*speed/naname;
}
}
void PLAYER::Draw(){
if(life){
DrawRotaGraph(x,y,1.0,angle,gh,TRUE);
}
}
void PLAYER::All(){
Move();
Draw();
}