キャラについて
Re:キャラについて
読み込ませる画像を変更するだけであれば、
LoadDivGraph関数の第一引数を変えればいいですよ。
つまり
LoadDivGraph( "ここを変えます" , 12 , 4 , 3 , 73 , 73 , img_ch[0] ) ;
というようになります。
LoadDivGraph関数の第一引数を変えればいいですよ。
つまり
LoadDivGraph( "ここを変えます" , 12 , 4 , 3 , 73 , 73 , img_ch[0] ) ;
というようになります。
Re:キャラについて
>>その画像の名前?をいれればいいのですか?
そうです。
たとえば、画像の名前が ch.png であるなら
LoadDivGraph( "ch.png" , 12 , 4 , 3 , 73 , 73 , img_ch[0] ) ;
というようになります。
ただし、その画像のある場所がソースコードのあるファイル内でない場合、
ちゃんと場所を描いてあげる必要があります。
そうです。
たとえば、画像の名前が ch.png であるなら
LoadDivGraph( "ch.png" , 12 , 4 , 3 , 73 , 73 , img_ch[0] ) ;
というようになります。
ただし、その画像のある場所がソースコードのあるファイル内でない場合、
ちゃんと場所を描いてあげる必要があります。
Re:キャラについて
>>画像が複数ある時はどうすればよいのですか?
というのは、自分のキャラクターが複数あるということですか?
それだと、必要なだけLoadDivGraph関数を呼び出して、メモリにロードする必要があると思います。
しかしその画像が10種類とかあればめんどうですよね??
10種類あれば、LoadDivGraph関数を10回呼び出してあげなければいけないので・・・
for文を使うといいですかね。
というのは、自分のキャラクターが複数あるということですか?
それだと、必要なだけLoadDivGraph関数を呼び出して、メモリにロードする必要があると思います。
しかしその画像が10種類とかあればめんどうですよね??
10種類あれば、LoadDivGraph関数を10回呼び出してあげなければいけないので・・・
for文を使うといいですかね。
Re:キャラについて
>>コピペのことですか??
そうではなくて、for文を使ってLoadDivGraph関数を呼び出します。
サンプルを作ってみました。
コンパイル時にエラーは出ませんでしたが、実行していませんので
ちゃんと動くかどうかは確認していませんが・・・
10種類の画像をメモリにロードするだけのプログラムです。
このとき、1つだけ注意してください。
画像の名前を(このプログラムの場合ですが)
というように数字+拡張子というようにしておかなければなりません。
そうではなくて、for文を使ってLoadDivGraph関数を呼び出します。
サンプルを作ってみました。
コンパイル時にエラーは出ませんでしたが、実行していませんので
ちゃんと動くかどうかは確認していませんが・・・
#include "DxLib.h" int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){ ChangeWindowMode( TRUE ) ; // ウインドウモードに変更 if( DxLib_Init() == -1 ) return -1; // DXライブラリ初期化処理 エラーが起きたら終了 int i; int img_ch[10][12]; char input[64]; for(i=0; i<10; i++) { sprintf(input, "%d.png", i); //読み込む画像名の生成 LoadDivGraph( input , 12 , 4 , 3 , 73 , 73 , img_ch ); } WaitKey() ; // 結果を見るためにキー待ち(『WaitKey』を使用) DxLib_End() ; // DXライブラリ使用の終了処理 return 0 ; // ソフトの終了 }
10種類の画像をメモリにロードするだけのプログラムです。
このとき、1つだけ注意してください。
画像の名前を(このプログラムの場合ですが)
0.png 1.png 2.png … 9.png
というように数字+拡張子というようにしておかなければなりません。
Re:キャラについて
#include "DxLib.h"
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){
ChangeWindowMode( TRUE ) ; // ウインドウモードに変更
if( DxLib_Init() == -1 ) return -1; // DXライブラリ初期化処理 エラーが起きたら終了
int i;
int img_ch[10][12];
char input[64];
for(i=0; i<10; i++)
{
sprintf(input, "%d.png", i); //読み込む画像名の生成
LoadDivGraph( input , 12 , 4 , 3 , 73 , 73 , img_ch );
↑ここに入れるのですか?
}
WaitKey() ; // 結果を見るためにキー待ち(『WaitKey』を使用)
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance,LPSTR lpCmdLine, int nCmdShow ){
ChangeWindowMode( TRUE ) ; // ウインドウモードに変更
if( DxLib_Init() == -1 ) return -1; // DXライブラリ初期化処理 エラーが起きたら終了
int i;
int img_ch[10][12];
char input[64];
for(i=0; i<10; i++)
{
sprintf(input, "%d.png", i); //読み込む画像名の生成
LoadDivGraph( input , 12 , 4 , 3 , 73 , 73 , img_ch );
↑ここに入れるのですか?
}
WaitKey() ; // 結果を見るためにキー待ち(『WaitKey』を使用)
DxLib_End() ; // DXライブラリ使用の終了処理
return 0 ; // ソフトの終了
}
Re:キャラについて
>>LoadDivGraph( input , 12 , 4 , 3 , 73 , 73 , img_ch );
>> ↑ここに入れるのですか?
何のことでしょうか?
画像を入れ込む変数のことをおっしゃられているのであればimg_chに格納されています。
つまり
というようになっています。
>> ↑ここに入れるのですか?
何のことでしょうか?
画像を入れ込む変数のことをおっしゃられているのであればimg_chに格納されています。
つまり
画像名 | 格納されている変数 --------------------------------- 0.png | img[0] 1.png | img[1] 2.png | img[2] 3.png | img[3] 4.png | img[4] 5.png | img[5] 6.png | img[6] 7.png | img[7] 8.png | img[8] 9.png | img[9]
というようになっています。
Re:キャラについて
画像が複数あるっという情報だけでは、今やっていることが
有効かどうか分かりませんね。
大きさが違う、方向が違うなどとなっているなら意味がありません。
まだ扱ったことのない物ならば、とりあえず使ってみることをお勧めします。
そのあとに自分で無駄を少なくしていけばいい話ですしね。
とりあえずは
LoadDivGraph( *1 , *2 , *3 , *4 , *5 , *6 , *7 );
で*1~*7で渡すものを理解しましょう。
詳細は本家を見てください。
ttp://homepage2.nifty.com/natupaji/DxLib/function/dxfunc_graph.html#R3N3
有効かどうか分かりませんね。
大きさが違う、方向が違うなどとなっているなら意味がありません。
まだ扱ったことのない物ならば、とりあえず使ってみることをお勧めします。
そのあとに自分で無駄を少なくしていけばいい話ですしね。
とりあえずは
LoadDivGraph( *1 , *2 , *3 , *4 , *5 , *6 , *7 );
で*1~*7で渡すものを理解しましょう。
詳細は本家を見てください。
ttp://homepage2.nifty.com/natupaji/DxLib/function/dxfunc_graph.html#R3N3
Re:キャラについて
すでにkazuoniさんに指摘されていましたね^^;
ご指摘ありがとうございました。
>>そこに画像の名前を入れるのですか?
前述のプログラムであれば、
画像の名前を入れる必要はありませんよ。
>sprintf(input, "%d.png", i);
この行ですでに画像の名前を生成してありますので。
まだLoadDivGraphを一度も使われていないのであれば、
kazuoniさんのおっしゃる通り、一度使われてみたらどうですか??
実際にプログラムを打ち込んで動かしてみた方が、理解しやすいかと思います。
ご指摘ありがとうございました。
>>そこに画像の名前を入れるのですか?
前述のプログラムであれば、
画像の名前を入れる必要はありませんよ。
>sprintf(input, "%d.png", i);
この行ですでに画像の名前を生成してありますので。
まだLoadDivGraphを一度も使われていないのであれば、
kazuoniさんのおっしゃる通り、一度使われてみたらどうですか??
実際にプログラムを打ち込んで動かしてみた方が、理解しやすいかと思います。
Re:キャラについて
>>名前を入れるのが面倒な時は、画像の名前をかえてもいいのですか?
とはどういうことですか?
プログラム内での画像の名前ですか?
それとも元の画像の名前ですか?
どちらにしても、片方の名前を変更したなら他方の名前も同じ名前にする必要があります。
プログラム内での画像の名前のことをおっしゃられているのであれば、
for文で自動生成するようにしてありますので、
元の画像の名前を数字.pngというように名前を変えていただければ、それで充分です。
たとえば、10種類程度なら、LoadDivGraphで10回書けばいいだけなので
それほど苦ではないかもしれませんが、100種類となった場合はどうですか?
LoadDivGraph(…);を100回書くのは面倒ですし、コードも長くなってしまいますよね?
画像サイズや分割後の1つのサイズが同じ、方向も同じといったように
条件が全く同じ下では、前述のプログラムを使用すれば、
少しは楽になると思います。
iのループ条件を変更すればいいだけなので。
とはどういうことですか?
プログラム内での画像の名前ですか?
それとも元の画像の名前ですか?
どちらにしても、片方の名前を変更したなら他方の名前も同じ名前にする必要があります。
プログラム内での画像の名前のことをおっしゃられているのであれば、
for文で自動生成するようにしてありますので、
元の画像の名前を数字.pngというように名前を変えていただければ、それで充分です。
たとえば、10種類程度なら、LoadDivGraphで10回書けばいいだけなので
それほど苦ではないかもしれませんが、100種類となった場合はどうですか?
LoadDivGraph(…);を100回書くのは面倒ですし、コードも長くなってしまいますよね?
画像サイズや分割後の1つのサイズが同じ、方向も同じといったように
条件が全く同じ下では、前述のプログラムを使用すれば、
少しは楽になると思います。
iのループ条件を変更すればいいだけなので。
Re:キャラについて
絶対っといっては語弊があるかもしれませんが、
基礎的なことなら年齢を問わず、理解できます。
いきなりいろいろなことをやろうとするから混乱しているだけです。
まず今使おうとしているものは関数です。
そして何を入れたらいいか悩んでいるものは引数です。
このことが理解できていないなら基礎からやったほうが、結果的に効率が良くなります。
まずは「C言語 基礎」っとググってみましょう。
それをやらないなら、おそらくレスが無駄に長くなっていくだけです。
基礎的なことなら年齢を問わず、理解できます。
いきなりいろいろなことをやろうとするから混乱しているだけです。
まず今使おうとしているものは関数です。
そして何を入れたらいいか悩んでいるものは引数です。
このことが理解できていないなら基礎からやったほうが、結果的に効率が良くなります。
まずは「C言語 基礎」っとググってみましょう。
それをやらないなら、おそらくレスが無駄に長くなっていくだけです。
Re:キャラについて
C言語の基礎は理解されていますか?
ゲームプログラミングの館はC言語歴1ヶ月でも出来ると宣伝していますが、C言語の基礎を理解している人をターゲットとしています。
突然ここから勉強を始めようとすると難しいと思います。
まずはC言語の入門サイトで勉強してみてください。
また、年齢は関係ないと思います。
ここに来ている方の中で小学生でもシューティングゲームを作っていらっしゃいますし、
私の友達は中学の頃からパソコン雑誌に自作ソフトを投稿していました。
勉強を効率的にするこつは、基礎を大事にすることだと思いますので、順序良く着実にやってみてください。
ゲームプログラミングの館はC言語歴1ヶ月でも出来ると宣伝していますが、C言語の基礎を理解している人をターゲットとしています。
突然ここから勉強を始めようとすると難しいと思います。
まずはC言語の入門サイトで勉強してみてください。
また、年齢は関係ないと思います。
ここに来ている方の中で小学生でもシューティングゲームを作っていらっしゃいますし、
私の友達は中学の頃からパソコン雑誌に自作ソフトを投稿していました。
勉強を効率的にするこつは、基礎を大事にすることだと思いますので、順序良く着実にやってみてください。