画像を表示するプログラム組んでも画像がでません

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
kerotan0820

画像を表示するプログラム組んでも画像がでません

#1

投稿記事 by kerotan0820 » 16年前

ゲームプログラミングの館」(http://dixq.net/g/)を参考に、ゲームを作ろうとしているのですが、
画像を表示するという初歩的なプログラムをデバックしたのですがウィンドウが表示されるだけでなぜか画像が表示されません。
ちなみにその説明が書かれてるページはここです(http://dixq.net/g/#1
1で画像を保存するのですが、一応指定されてる場所に保存し、ファイル名、形式も同じことであるのを確認はしました。
2のウィンドウを表示させるは成功したのでおそらく画像の保存の問題だと思うのですが・・・
最初に画面の中心に点を打つという簡単なプログラムを試したらそれは成功しました。
サイトに書かれてますが、一応その画像を表示するプログラムはこれです。
#include "DxLib.h"

int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){
ChangeWindowMode( TRUE ) ; // ウインドウモードに変更
if( DxLib_Init() == -1 ) return -1; // DXライブラリ初期化処理 エラーが起きたら終了


LoadGraphScreen( 0 , 0 , "char.png" , TRUE ) ;


WaitKey() ; // 結果を見るためにキー待ち(『WaitKey』を使用)
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
こぴぺなのでミスは無いと思います。

サイトにちゃんと表示できなかった方はこちらを試しくださいみたいな記述がありリンク先にいってみると、ちょっと違うソースが書かれていたので、それも試したのですが駄目でした・・・
解決方法分かる方居ましたら教えてくださると幸いです;;
お願いします。

kazuoni

Re:画像を表示するプログラム組んでも画像がでません

#2

投稿記事 by kazuoni » 16年前

↑のコードがmain.cppという名前のファイルだとしたら、
main.cppが保存されているところと
同じ場所に画像が保存されていますか?

Dixq (管理人)

Re:画像を表示するプログラム組んでも画像がでません

#3

投稿記事 by Dixq (管理人) » 16年前

>サイトにちゃんと表示できなかった方はこちらを試しくださいみたいな記述がありリンク先にいってみると、ちょっと違うソースが書かれていたので、それも試したのですが駄目でした・・・

ということは、ファイルの保存場所かファイル名が違うと表示されたということでしょうか?
コンパイラは何を使っていますか?
もしBorlandの場合はDebugフォルダに入れる必要があります。
また、もし自分でプロジェクトを作った場合、「ソリューションのディレクトリを作成する」にチェックを入れて作った可能性があるので、
プロジェクトのあるフォルダに更にプロジェクトと同じフォルダが無いか調べてみて下さい。

kerotan0820

Re:画像を表示するプログラム組んでも画像がでません

#4

投稿記事 by kerotan0820 » 16年前

たくさんの回答ありがとうございます。

参考にしてチャレンジしてみます。

kerotan0820

Re:回答者様からの質問に対する回答

#5

投稿記事 by kerotan0820 » 16年前

【kazuoniさん】
↑のコードがmain.cppという名前のファイルだとしたら、
main.cppが保存されているところと
同じ場所に画像が保存されていますか?
>コードの名前ってなんでしょうか・・・
ソースファイルの名前ですか?
画像の保存場所はサイトにある指定の場所に保存しただけで、そのフォルダはデスクトップ上にあります。


【Dixqさん】

ということは、ファイルの保存場所かファイル名が違うと表示されたということでしょうか?
>その通りです

コンパイラは何を使っていますか?
>Borlandでは無いと思います。
コンパイラとかそういうの詳しく無いんですよ・・・
昔はBorland使ってましたが今はたぶん違います。。。
サイトにのってる通りにダウンロードして進めて行ったので、あまり理解できてないのです・・・
今見たところ、VisualC++2008らしいです。

あともし設定を間違えていたなら設定は一からやり直しですか?・・・;

Dixq (管理人)

Re:回答者様からの質問に対する回答

#6

投稿記事 by Dixq (管理人) » 16年前

VC++2008なら設定らしい設定は何もいりません。インストールするだけで使えます。
プロジェクト作ったらいいだけです。
しかもプロジェクトはDXライブラリをダウンロードした時についてくる
サンプル実行用フォルダのものを使い回せば自分で作る必要ありません。

ところで、フォルダ内にプロジェクトと同じ名前のフォルダとかありませんか?

kerotan0820

Re:回答者様からの質問に対する回答

#7

投稿記事 by kerotan0820 » 16年前

フォルダ内にプロジェクトと同じフォルダはないみたいです・・・

デスクトップ上にこうなってます

【DxLib_VC】┓
     【Help(フォルダ)】
     【Tool(フォルダ)】
【サンプルプログラム実行用フォルダ(フォルダ)】
     【プロジェクトに追加すべきファイル_VC用(フォルダ)】
     【DxLib(txt.)】
こうなっていて、このサンプルプログラム実行用フォルダにしまったんです。
あとこのサンプルプログラム実行用フォルダないには画像しかありません。。。     

Dixq (管理人)

Re:回答者様からの質問に対する回答

#8

投稿記事 by Dixq (管理人) » 16年前

>このサンプルプログラム実行用フォルダないには画像しかありません。。。   

いや、それはおかしいです。
解凍エラーか何かじゃないでしょうか。
もう一度解凍して下さい。
プロジェクトファイルや、画像、音楽、ライブラリ、ソースコード・・沢山色んなファイルがあるはずです。

kerotan0820

Re:回答者様からの質問に対する回答

#9

投稿記事 by kerotan0820 » 16年前

すみません、ほかにもいろいろ入ってました。

Dixq (管理人)

Re:回答者様からの質問に対する回答

#10

投稿記事 by Dixq (管理人) » 16年前

う~ん、このままじゃよくわからないやり取りが続きそうです。
そのプロジェクトがあるフォルダを圧縮して私のほうに送ってもらえないでしょうか?
画像の保存場所がどうおかしいかこちらで確認してみます。
dixqhp@gmail.com

kerotan0820

Re:回答者様からの質問に対する回答

#11

投稿記事 by kerotan0820 » 16年前

わざわざありがとうございます。

zipフォルダ送りますのでよろしくお願いします。

でーき

無題

#12

投稿記事 by でーき » 16年前

私もなりました。
いろいろ試してみると、はじめから同封されていたファイルは表示できるのに、
他の画像ファイルを同じフォルダにおいても動きません。

パーミッションかな・・・・?
でも調べたけど問題なかったんですよねー・・・

Dixq (管理人)

Re:無題

#13

投稿記事 by Dixq (管理人) » 16年前

メール送りました?届いていないようなので・・。
送り先こちらです→dixqhp@gmail.com

kerotan0820

Re:無題

#14

投稿記事 by kerotan0820 » 16年前

今再び送りなおすのを試みたのですが送信エラーが起きてしまいます。。。

なんどやっても同じなので僕のあぷろだにうpしておきますのでお願いします・・・

http://www7.uploader.jp/dl/kerotan/kero ... 1.zip.html

PW=kerotan

kazuoni

Re:無題

#15

投稿記事 by kazuoni » 16年前

我が家ではうまく行きました。
恐らく、設定の段階でミスっている可能性が高いかと・・・
本家HP↓の設定段階
http://homepage2.nifty.com/natupaji/DxL ... press.html

Justy

Re:無題

#16

投稿記事 by Justy » 16年前

#kerotan0820さん

>LoadGraphScreen

 この関数は、読み込むファイルの場所が正しくても
環境によって表示されたりされなかったりと、鬼門だったりします。

 少し飛びますが「13c. ソースを短く書く(その2)」
ttp://dixq.net/g/#37
のコードだとどうなりますか?

kazuoni

Re:無題

#17

投稿記事 by kazuoni » 16年前

そうなんですか。。
LoadGraphScreenは環境に大きく作用されるのですか^^;
これは大変失礼しました。。
LoadGraph→DrawGraphより使う機会は少ないと思いますが・・・
これは知りませんでした。

Dixq (管理人)

Re:無題

#18

投稿記事 by Dixq (管理人) » 16年前

そんなことがあるのですか・・。
環境によって不具合が起きる可能性のある関数リストみたいなの欲しいですね;
う~ん、Justyさんよくご存知ですね~・・。
特にDXライブラリをお使いになってないのにそこまでどうやったらお詳しくなれるんでしょう^^;
じゃぁ、サンプルは全てDrawGraphにした方がいいですかね?

kerotan0820

Re:無題

#19

投稿記事 by kerotan0820 » 16年前

【Justyさん】
そうなんですか!?w じゃぁ僕は無理なことをがんばっていたのですね・・・(泣

そのコードで試してみますね。

Justy

Re:無題

#20

投稿記事 by Justy » 16年前


>LoadGraphScreenは環境に大きく作用されるのですか^^;

 それほど大きな確率ではないと思いますが。
 あと、同じような現象が Vistaだと云々とか聞いたことがあります。



>そんなことがあるのですか・・

 前にも似たような話があったような。

C言語何でも質問掲示板
ttp://www.play21.jp/board/formz.cgi?action=res&resno=23789&page=&lognum=74&id=dixq&rln=23837



>環境によって不具合が起きる可能性のある関数リストみたいなの欲しいですね

 うーん、基本的に DirectXなどの描画って環境次第なところが大きいので、
もし本格的に挙げていくとほとんど全部ということになりかねなかったり・・・。

Dixq (管理人)

Re:無題

#21

投稿記事 by Dixq (管理人) » 16年前

あ~この不具合はそのせいで起きていたのですか・・。

>DirectXなどの描画って環境次第なところが大きいので、
>もし本格的に挙げていくとほとんど全部ということになりかねなかったり・・・。

困ったものですね^^;

kerotan0820

Re:Justyさん

#22

投稿記事 by kerotan0820 » 16年前

やってみたところ、黒い画面のウィンドウが開きました。

Dixq (管理人)

Re:

#23

投稿記事 by Dixq (管理人) » 16年前

開いてどうなりました?
画像は表示されたのでしょうか?

kerotan0820

Re:

#24

投稿記事 by kerotan0820 » 16年前

いえ、画像はでてませんよ?

黒いウィンドウだけでしたよ

Justy

Re:

#25

投稿記事 by Justy » 16年前


>いえ、画像はでてませんよ?
>黒いウィンドウだけでしたよ

 となると、画像を置いた場所がおかしいか、環境的に表示することができないの
どちらかである可能性が高いです。

 では、プログラムをビルドした後、どうやって実行していますか?
 VisualStudioから実行しているのか、それとも出来上がった exeをクリックして
実行しているのかどちらでしょう?
(もしかして後者だったりします?)

 又、先の「13c. ソースを短く書く(その2)」 ttp://dixq.net/g/#37の
コードで、変数imageの値は何になっていますか?

kerotan0820

Re:

#26

投稿記事 by kerotan0820 » 16年前

VisualStudioじゃなくてVisualC++ですが、そちらから実行しています。
デバックってのをやりました。

Justy

Re:

#27

投稿記事 by Justy » 16年前

 なるほど。
 となると、あとは変数imageの値ですが、それと実行した際の Log.txtがあれば見せてもらえますか?

kerotan0820

Re:

#28

投稿記事 by kerotan0820 » 16年前

txtが長くて記載できないので、あぷろだにうpしておきます。
http://www7.uploader.jp/dl/kerotan/kero ... 2.txt.html

PW=txt

toyo

Re:

#29

投稿記事 by toyo » 16年前

[url]#28799[/url]にあるファイル見てみましたがファイル名が
char.png.png
になってました
拡張子を表示しない設定になっているところに拡張子を自分で追加したのでしょう
画像ファイル名を
char
のみにすると表示されると思います。

(なぜマイクロソフトは大事な拡張子を表示しないのでしょうか)

kerotan0820

Re:

#30

投稿記事 by kerotan0820 » 16年前

【toyo様】
僕は実際最初は、charだけで試したんです・・・
ですが、失敗したため、.pngを追加しないといけないのかと勘違いし、そのままでありました。
今現在.pngをなくし試してみましたが、できませんでした・・・;

Dixq (管理人)

Re:

#31

投稿記事 by Dixq (管理人) » 16年前

アップローダに同梱されていたプロジェクトのうち試したのはどのプロジェクトですか?
char.pngが表示されるようなソースは無かったように思いますが・・。

toyo

Re:

#32

投稿記事 by toyo » 16年前

アップローダにあったのはtest.cppで表示するのはtest1.bmpですね
logに
グラフィックファイル char.png がありません
って出てるのはなぜ

kerotan0820

Re:

#33

投稿記事 by kerotan0820 » 16年前

【Dixq(管理人)さん】
え・・・;; 同梱って何ですか?・・・;;;

僕まさか関係ないソースとかやってたのでしょうか・・・;;;

なんか話が難しくて理解できなくなってきたので僕がやったことをまとめますね・・・;;

①画像を表示するの単元にてchar.pngを指定の場所に保存し、以下のソースをこぴぺしてデバックしました。
#include "DxLib.h"

int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){
ChangeWindowMode( TRUE ) ; // ウインドウモードに変更
if( DxLib_Init() == -1 ) return -1; // DXライブラリ初期化処理 エラーが起きたら終了


LoadGraphScreen( 0 , 0 , "char.png" , TRUE ) ;


WaitKey() ; // 結果を見るためにキー待ち(『WaitKey』を使用)
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}

結果画像は表示されなかったため char.png にしたり char だけで保存したりと僕にミスがあるのかと思いいろいろ試しましたがあっけなく失敗しました。

②画像を表示するの欄に失敗する人はこちらみたいなのがあり、そこにて以下のソースを試しました。
#include "DxLib.h"
char st1[/url]="画像の保存場所が違うか、ファイル名が違うため、表示できません。";
char st2[/url]="正常に認識されています。";

int WINAPI WinMain( HINSTANCE hInstance,
HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){
ChangeWindowMode( TRUE ) ;
if( DxLib_Init() == -1 ) return -1;


if(LoadGraphScreen( 0 , 0 , "char.PNG" , TRUE ) == -1)
DrawString(50,220,st1,GetColor(255,255,255));
else
DrawString(50,220,st2,GetColor(255,255,255));


WaitKey() ;
DxLib_End() ;
return 0 ;
}

これも失敗し・・・;;  そして今ログを見せてくれないかというコメントを頂、ログをお教え指していただきました。
僕がアップローダーにうpしてるのは、ログと、画像が保存されてるフォルダです。

Mist

Re:

#34

投稿記事 by Mist » 16年前

2番目を実行したときに画面に「画像の保存場所が違うか、ファイル名が違うため、表示できません。」と表示されましたか?
それすらないというのであれば、No:28830でJustyさんが指摘している通りkerotan0820さんのPCではそれらのプログラムは正常に動作しないと思います。(OSはVistaですか?)

Dixq (管理人)

Re:

#35

投稿記事 by Dixq (管理人) » 16年前

う~ん、ちょっとよくわからないので、こちらでアップしました。

http://dixq.net/zip/DxLib.zip

解凍して出てきたフォルダのDxLib.slnをお開き下さい。
そして、そのまま実行して下さい。
画像が左から右に移動して表示されると思います。
(13章のプログラムソースが書いてあります。)

kerotan0820

Re::

#36

投稿記事 by kerotan0820 » 16年前

【Mist様】
2番目を実行したときは画面に「画像の保存場所が違うか、ファイル名が違うため、表示できません。」と表示されました。
 OSはXPです。

【Dixq(管理人)様】
やてみます。

kerotan0820

Re::

#37

投稿記事 by kerotan0820 » 16年前

【Dixq様】
画像がでてきて右に動きました。 というかこの投稿なんどもしてるのですがなぜか投稿できないですw
その場では投稿されてるのになぁ・・・

今後僕はどういった作業をすればいいのでしょうか

コスモ

Re::

#38

投稿記事 by コスモ » 16年前

cosmoです。
kerotan0820さん初めまして。
このスレをハラハラしながら見ていました。

>今後僕はどういった作業をすればいいのでしょうか

これはやりたい事によって違うと思います。
画像を左から右に移動して表示されるプログラムは成功されたんですよね?
ならば、そのプログラムをいじってみて挙動が変わるのを確かめる…とか、
次の章に進む…なんかが考えられますが。

プログラムの上達の鍵は試行錯誤ですよ。
まあ、人のことを言える立場ではありませんが…(汗

Dixq (管理人)

Re::

#39

投稿記事 by Dixq (管理人) » 16年前

正常に表示できたのでしたら自分のやりたい処理を勉強していけばいいと思いますよ。
まず何がやりたいのでしょう?
自分がやりたい事が出来るようになるように興味ある事を実装していけばいいのではないでしょうか。

何をしたらいいのかわからない場合はとりあえずゲームの館を13章からずっと実行して確認してみてはどうでしょう。

kerotan0820

Re::

#40

投稿記事 by kerotan0820 » 16年前

分かりました^^

ありがとうございます。

今後ともよろしくお願いします。

閉鎖

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