ゲームのアルゴリズムを教えて管sai (199レス)
ゲームのアルゴリズムを教えて管sai http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
98: 96 [sage] 2008/03/13(木) 16:41:36 ID:xt6KljbL >>97 さん ある程度、間隔を置いて、発射させたいんですぅ。 毎回、100発の弾が重なるのは、耐え難い事実なんです。 http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/98
99: 名前は開発中のものです。 [sage] 2008/03/13(木) 22:54:45 ID:Bu/r75Um 大金を払い専門的な職業訓練を受けているはずの学生がこんなことすら自力で出来ない 「耐え難い事実」というならむしろこれw http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/99
100: 名前は開発中のものです。 [sage] 2008/03/13(木) 23:13:35 ID:3HHTp0zC >>98 60フレーム/秒でKeyCheckは毎フレーム呼ばれるの? http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/100
101: 名前は開発中のものです。 [] 2008/03/14(金) 17:31:51 ID:46wpxx7U >>96 if文の中の最後にbreak;入れると幸せになれるぞ http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/101
102: 名前は開発中のものです。 [] 2008/03/19(水) 01:43:05 ID:bv/3obIk 適切なスレが見つからないのでここで質問させてください。 携帯電話アプリのシューティングを作っているのですが、 2D描画の処理を軽くする方法がわかりません。 個々のgifファイルを軽量化してみたりもしましたが、効果があるのかどうか分からないくらいです。 クリッピング領域を指定する方法もあるようですが、いまいちよく分かりません。 他に効果的な方法は無いものでしょうか。 http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/102
103: 名前は開発中のものです。 [sage] 2008/03/19(水) 09:04:08 ID:a6WC8gIo >>102 画像の数を減らして、同じ画像を使いまわすとか、 1秒間あたりの描画回数(FPS)を減らすとか。 あとは、一画面に同時に出現するオブジェクトの数を減らすとか、 背景のスクロールをあきらめるとか、 あと、ベンチマークツールがあればそれを使って、 ボトルネックとなっている処理(メソッド/関数)を分析してみるとか。 http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/103
104: 名前は開発中のものです。 [sage] 2008/03/19(水) 11:15:27 ID:MFS90Jv9 >>102 プログラム実行中は結局ビットマップでメモリに保持させてるから効果がないと思うんだが… 予め画像のパレットを全て一緒の256色にしといてパレットを読み込ませないと。 http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/104
105: 102 [sage] 2008/03/19(水) 14:33:54 ID:bv/3obIk >>103 ありがとうございます。 >同じ画像を使いまわす 試してみようと思います。 これは一箇所に画像を読み込んでおいて、 その画像を使うオブジェクトが描画のたびにそこを参照するようにする、 ということで良いんでしょうか? 他のは、ゲームのバランス調整と平行して考えてみます。 >>102 すいません。そういうことに理解が無いもので・・・。 >予め画像のパレットを全て一緒の256色にしといてパレットを読み込ませないと。 これは良く使われる手法なのでしょうか? それともgifファイルの軽量化に意味を持たせるための方法なのでしょうか? どういう風に実装すれば良いのかさっぱり分からないので、後者なら諦めます・・・。 ありがとうございました。 http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/105
106: 名前は開発中のものです。 [] 2008/05/16(金) 17:34:25 ID:ciTJLGhI 大きな矩形の布地から、サイズの違う小さな矩形の布地を切り取る時、 余りの布面積が一番少なくなるよう、切り取る(小さな矩形を並べる) アルゴリズムについて書かれた書籍、HP等をご存知でしたら、 教えて下さい。 よろしくお願いします。 http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/106
107: 106 [] 2008/05/19(月) 13:08:26 ID:rhmqn4vd ↑この質問取り下げます。失礼しました。 http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/107
108: 名前は開発中のものです。 [sage] 2008/05/19(月) 14:26:06 ID:jyR28ttC >>107 移動するなら移動先を書いてくれ。 実は調べたり考えたりしてたんだが最小公倍数の矩形で バックトラックするという馬鹿な方法しか思いつかなかったんだ。 http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/108
109: 名前は開発中のものです。 [sage] 2008/05/30(金) 14:21:38 ID:Vu7kcDak >>96 100個程度ならいいですけど配列でもいいかもしれないけど 双方向リストとかを使うようにしたほうがいいかも。c言語だし。 まあこの辺は後ほど。 でも配列を使えとかいう講師に双方向リストを実装して提出したら うらまれそうw unsigned int KeyShotFrmCnt = 0; //ショットキーのウェイト用カウンター ↑これはソースの頭のほうに書いてね。 void KeyCheck(void) { ??if (KeyShotFrmCnt == 0) ??{ ???if(GetAsyncKeyState(VK_SPACE)<0) ???{ ????Shot(); ????(KeyShotFrmCnt = 10; ???} ??} else { ???--KeyShotFrmCnt; ??} } http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/109
110: 名前は開発中のものです。 [sage] 2008/05/30(金) 14:23:33 ID:Vu7kcDak うは、コピーしたらなんか辺になったorz void KeyCheck(void) { if (KeyShotFrmCnt == 0) { if(GetAsyncKeyState(VK_SPACE)<0) { Shot(); KeyShotFrmCnt = 10; } } else { --KeyShotFrmCnt; } } http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/110
111: 名前は開発中のものです。 [sage] 2008/05/30(金) 14:28:56 ID:Vu7kcDak 2chってスペース空けるの面倒だなw AAエディタとかで整形してるのか? http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/111
112: 名前は開発中のものです。 [sage] 2008/05/30(金) 14:48:17 ID:tqfQ+S3S つーか3月の質問にいまさら・・・ http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/112
113: 名前は開発中のものです。 [sage] 2008/06/10(火) 21:19:46 ID:8sGd3hVL ↓ポーカーで、誰が有利かを調べるプログラム作りたいんたけど http://www.pokernews.com/swf/odd_calc_full-v1.1.3.swf いったいこれ、なにをどうやってこんなに高速に確率計算できるのか、まったくわからない このプログラムは、近似値じゃなくて↓みたいなドローイングデッドもきっちり表示するし http://shanbara.jp/gamble/data/zero.png あらかじめ計算した結果をデータベースにでも叩き込んだのかと思ってるんだけど それにしたって膨大すぎる http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/113
114: 名前は開発中のものです。 [] 2008/06/10(火) 21:32:41 ID:8sGd3hVL 単純に全探索じゃなくて、なんか省略する方法があるんだろうが http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/114
115: 名前は開発中のものです。 [] 2008/06/12(木) 13:22:11 ID:trmQ6Ydr 誰かクイックソートが挿入法よりなぜ早いのか教えてくれ クイックソートのほうがめんどくさそうなのに最速とか理解できん・・・ http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/115
116: 名前は開発中のものです。 [sage] 2008/06/12(木) 15:21:52 ID:gQmHVY6Z >>113 そのswfをローカルに落として実行してみたら Odds calculator failed to get data from server. ってエラーメッセージが出たから、 確立計算専用の外部プログラムを呼び出してるっぽい。 http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/116
117: 名前は開発中のものです。 [sage] 2008/06/12(木) 15:58:03 ID:gZtmjAve >>115 全部のソートにN*Nの時間がかかるとする。 これを、半分に分けてソートして、足し合わせるとすれば、かかる時間は (N/2)*(N/2) + (N/2)*(N/2) = N*N/4 + N*N/4 = N*N/2 N*N > N*N/2 ・・・とおもったらクイックソートって2分割って訳じゃないのね?て事で、 分割を、(1/x),(1/y)とする。ただし(1/x)+(1/y) = 1 1 = 1*1 = (x+y)/xy = (xx + 2xy + yy)/xxyy 分割したものをソートして、足し合わせる時間は (N/x)*(N/x) + (N/y)(N/y) = N*N/x*x + N*N/y*y = (yyNN + xxNN) / xxyy = NN(xx + yy)/xxyy (xx + yy)/xxyy = (xx + 2xy +yy)/xxyy - 2xy/xxyy = 1 - 2xy/xxyy ゆえに、NN > NN(xx + yy)/xxyy こんなんでどうだろうか。というか、この証明あってるんだろうか。 http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/117
118: 名前は開発中のものです。 [sage] 2008/06/12(木) 16:38:08 ID:VjP0i/a5 データ数によるんだよね。 少ないデータならどれでも変わらん http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/118
119: 名前は開発中のものです。 [] 2008/06/15(日) 19:58:45 ID:f+c3BIE0 シューティングゲーム作っているのですが、 私の数学力のなさか、敵の動きが、直線と円を描くものしか作れません どうやったら、アーケードにあるような あたかも敵が思考を持っているような動きが 実現できるのでしょうか? http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/119
120: 名前は開発中のものです。 [sage] 2008/06/15(日) 21:16:54 ID:n3ZqdSRd >>119 敵の動きのカタログ的なものが欲しいなら……。 シューティングゲーム プログラミング ¥ 2,940 (税込) 松浦 健一郎 (著), 司 ゆき (著) http://www.amazon.co.jp/dp/4797337214 http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/120
121: 119 [sage] 2008/06/15(日) 23:38:35 ID:f+c3BIE0 そうではなく、どのようにして さまざまな動きを実現しているのか? その方法を知りたいわけです。 私の敵を動かす情報は 初速度、速度、角度、時間、加速度で管理しているので、直線と円のみになってしまうのです。 そこで、微妙に、プレイヤーのいる方向に向かってきたりする方法は、どのような情報で管理しているのかを 知りたいのです。 私の方法でも角度を細かく設定すれば、ある程度 色々な動きは実現できるのですが、 もっとスマートな方法はないかと思い質問したまでです。 http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/121
122: 名前は開発中のものです。 [sage] 2008/06/15(日) 23:40:21 ID:re3KC7mv 二つの点座標が解れば、角度が求まるのでは? http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/122
123: 名前は開発中のものです。 [sage] 2008/06/15(日) 23:46:14 ID:L9WqTsHd アークタンジェントを理解すればいいとおもうよ http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/123
124: 名前は開発中のものです。 [sage] 2008/06/15(日) 23:47:36 ID:L9WqTsHd http://www.tkb-soft.hmcbest.com/program/directx/game/game_11.htm 具体的にはこのへんで。 http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/124
125: 119 [sage] 2008/06/16(月) 00:19:31 ID:VJeuSd2d う〜ん、ちょっと違って 人工知能で解決できるのではないかと思うのですが、 人工知能に関する知識がないので、作れないのですが、 オススメの入門書などないでしょうか? http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/125
126: 名前は開発中のものです。 [sage] 2008/06/16(月) 00:31:02 ID:4SfMqdzY >>125 現在位置ベクトル 現在速度ベクトル 目標位置ベクトル 目標位置での速度ベクトル この条件を満たす加速度ベクトルの時系列を求めればいいんだよね。 でもゲームだから時系列を事前に求める必要はなくて 毎フレームごとに計算するから状態マシンでいけるよ。 2Dシューティングなら普通そうだと思う。 本格的にやるなら確率過程勉強するとおもしろいよ。 実際の迎撃ミサイルがどのように制御されてるか理解できる。 http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/126
127: 名前は開発中のものです。 [sage] 2008/06/16(月) 00:51:35 ID:Mj4LPxSD 敵の動きが実際にはどういうふうに実装されてるのかを知りたいなら、 >>120みたいな作り方の本が一番実践的だと思うけどなぁ。敵の動きのサンプルもあるだろうし。 STGは本格的に作ったことはないが、普通敵の動きに人工知能なんて使わないんじゃない? 俺だったら毎フレーム状態遷移を計算して、行動を決定するような実装にすると思う。 リアル迎撃ミサイルの精度で敵が弾を撃ってくるSTGとか、やってみたいがストレスがたまりそうだなw http://mevius.5ch.net/test/read.cgi/gamedev/1053853069/127
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 72 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.015s