ページ 11

またまた質問です

Posted: 2007年5月11日(金) 00:13
by はね
何度も質問してしまい申し訳ありません

早速本題なのですが

この前質問させていただいたアクションゲームを引き続き制作しています。

で、その制作しているゲームにおいて

ゲームプログラミングの館 24. 行けない所を作る。~2D~

を応用してやりたい処理ができそうなのですが

私が制作しているゲームの場合、キャラのx,yをfloat型で宣言しているため
if(hantei[y/32-1][x/32]==1)

のような書き方ができません。

float型でx,yを宣言してしまった場合、この処理は使えないのでしょうか?

Re:またまた質問です

Posted: 2007年5月11日(金) 00:29
by Justy
 xや yを int型にキャストしてから演算してみてはどうでしょうか?

Re:またまた質問です

Posted: 2007年5月11日(金) 00:47
by 管理人
ちゃんと1区間ずつ動くのであればキャストすればOKです。

[(int)y/32][(int)x/32]

こんな感じで。
しかしボンバーマンやマリオのように、ちょこちょこ動くようなものには使えません。
というのも、
10.0も10.1,10.8も10.9も全部キャストすると10になってしまうからです。
この1以下の誤差がおかしな挙動に繋がります。
きっちり1区間ずつ動くのならキャストだけでOKです。

Re:またまた質問です

Posted: 2007年5月11日(金) 00:59
by はね
はい・・・・できました^^;

こんな簡単なことでつまずいている私っていったい・・・

こんな簡単な質問にお答えいただきありがとうございます^^

まだまだ未熟ですが今後ともよろしくお願いいたします

Re:またまた質問です

Posted: 2007年5月11日(金) 20:01
by 管理人
色々経験してみないとパッとはなかなか思いつかないですよね^^
私もめちゃくちゃ試行錯誤していたのに、人に聞いてみたらものすごい簡単な事で解決したという事もよくあります。
人に聞いてみるのも大事ですね^^

Re:またまた質問です

Posted: 2007年5月11日(金) 23:48
by はね
そうですね~
今、チームでゲームを制作しているのですが
「よし!俺はプログラマーやる!」とか言ったものの、人に聞いてばっかりです^^;
早く上達して様々な状況に素早く対応できるようになりたいものです

Re:またまた質問です

Posted: 2007年5月12日(土) 00:38
by 管理人
いぃですねぇ。
私も誰かと一緒にゲーム作ったりしたかったです・・。
周りにゲームつくろうって感じの友達がいないもので、いつもソロです^^;
バイク好きな奴とかばっかかな・・。

ツーリングならよく行くんですけどねぇ・・・って関係ないかw

そういえば1週間後にZX-9Rが納車されるので楽しみです・・・ってもっと関係ないかw