龍神録プログラミングの館を参考に、シューティングゲームを作っている者ですが、
31章の星形弾で使われているb10.pngが一部しか読み込めません。
というのは、
LoadDivGraph( "../dat/img/bullet/b10.png" , 8 , 8 , 1 , 8 , 8 , img_bullet[10] ) ;
として画像を読み込むと、
img_bullet[10][4],img_bullet[10][5],img_bullet[10][6],img_bullet[10][7]は画像を表示できるのですが
img_bullet[10][0],img_bullet[10][1],img_bullet[10][2],img_bullet[10][3]は表示できません。
ためしに
int r=LoadDivGraph( "../dat/img/bullet/b10.png" , 8 , 8 , 1 , 8 , 8 , img_bullet[10] ) ;
printfDx("%d",r);
などしてみると、結果は0でした。
LoadDivGraphではエラーが起きていないのに、画像の一部が表示できないとはどういうことでしょうか?
コンパイラはBorland C++ Compiler ,OSは windows7 64bitです。
初歩的な質問かも知れませんが、ご回答よろしくお願いします。
[31章]画像が読み込めない(LoadDivGraph)
-
hidden
Re: [31章]画像が読み込めない(LoadDivGraph)
b10.pngとはどんなものですか?全員が龍神録をDLしているわけではないので・・・
DrawGraphあたりでエラーが出ているのですか?それともエラーなしで画像が描画されないだけですか?
DXライブラリのリファレンスのような小さなプログラムでも再現されますか?
DrawGraphあたりでエラーが出ているのですか?それともエラーなしで画像が描画されないだけですか?
DXライブラリのリファレンスのような小さなプログラムでも再現されますか?
-
whity
Re: [31章]画像が読み込めない(LoadDivGraph)
b10.pngは、64×8pxで、8つの画像が8×8pxで隙間なく詰まっています。
コンパイルエラーは出ていません。
試しに、次のようなプログラムを作るとちゃんと表示されました。
コンパイルエラーは出ていません。
試しに、次のようなプログラムを作るとちゃんと表示されました。
#include "DxLib.h"
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow){
ChangeWindowMode(TRUE);//ウィンドウモード
if(DxLib_Init() == -1) return -1;
int img_bullet[10][10];
LoadDivGraph( "../dat/img/bullet/b10.png" , 8 , 8 , 1 , 8 , 8 , img_bullet[10] ) ;
for(int i=0;i<8;i++){
DrawGraph(i*8,0,img_bullet[10][i],TRUE);
}
WaitKey();
DxLib_End();//DXライブラリ終了処理
return 0;
}
-
whity
Re: [31章]画像が読み込めない(LoadDivGraph)
調べてみるとimg_bullet[10][0],img_bullet[10][1],img_bullet[10][2],img_bullet[10][3]が描画されるときDrawRotaGraphFの戻り値が-1になっていました。
書き忘れていました。
書き忘れていました。
-
hidden
Re: [31章]画像が読み込めない(LoadDivGraph)
あ、img_bullet[10]って範囲外じゃないですか?
int img_bullet[10][10]で宣言しているようですが
元のものでもそうですか?
img_bullet[0][0] ~ img[9][9]
までが範囲です。
int img_bullet[10][10]で宣言しているようですが
元のものでもそうですか?
img_bullet[0][0] ~ img[9][9]
までが範囲です。
-
whity
Re: [31章]画像が読み込めない(LoadDivGraph)
元のプログラムを調べてみると、img_bullet[20][10]で宣言されていました。
初歩的なミスでしたね。
皆さんご回答ありがとうございました。
初歩的なミスでしたね。
皆さんご回答ありがとうございました。