プロが教える店舗&オフィスのセキュリティ対策術

いつもお世話になっております。
WINDOWSプログラミングを勉強しています。

現在当たり判定について勉強しているのですが、調べてみたところいろいろなやり方があるようです。

私が今作ろうとしているのはアクションゲームなのですが、接地、ダメージ等々の当たり判定があり、毎フレームでこのような判定を繰り返すと重くなってしまうのでは、と危惧しています。

ここで質問なのですが、WINDOWSまたはCプログラムでなるべく速く処理ができる当たり判定を教えていただけないでしょうか?
また、初心者向けなものをお願いします。

我儘を言って申し訳ありませんが、ご指導よろしくお願いします。

A 回答 (4件)

> 壁や床や敵の当たり判定は種類別にして構造体を配列にいれて判定をすればいいのですか?


> だとしたら毎フレームこれらのリージョンと自機のリージョンを判定するのでしょうか?

毎フレーム判定すれば良いと思います。
大まかな判定を先にして、それにヒットすれば細かく判定するというようにすると良いですよ。
たとえば、丸形の当たり判定は先に矩形で行ってからすると言った具合です。

> スクロールするステージを作成する予定なので、床や壁は結構多くなってしまうのですが・・・

そんなものじゃないでしょうか?
2Dのアクションゲームの場合、重くなる原因は、計算よりもむしろ描画処理だと思います。
    • good
    • 0
この回答へのお礼

ありがとうございます。

毎フレーム「全ての」当たり判定を判定する、というのがずっと気になっていました。
とりあえずは何も考えずに作ってみようと思います。

お礼日時:2008/11/24 08:16

多分作るゲームは2Dですよね?


http://ja.wikipedia.org/wiki/%E5%BD%93%E3%81%9F% …
http://www5f.biglobe.ne.jp/~kenmo/program/collis …

>毎フレームでこのような判定を繰り返すと重くなってしまうのでは
2Dゲームを今まで作ってきて、当たり判定の処理速度で困ったことは無いです。
(よほど判定回数が多くなければ)

この回答への補足

はい、初心者なのでもちろん2Dに挑戦しようと思います。
初心者意見で申し訳ないのですが、もうひとつ伺ってもいいでしょうか?

壁や床や敵の当たり判定は種類別にして構造体を配列にいれて判定をすればいいのですか?
だとしたら毎フレームこれらのリージョンと自機のリージョンを判定するのでしょうか?

スクロールするステージを作成する予定なので、床や壁は結構多くなってしまうのですが・・・

補足日時:2008/11/23 23:32
    • good
    • 0

普通に座標から計算すれば、特に重くはなりませんよ。


一度それで、Cより明らかに遅い(はず)HTAでエアーホッケーゲームを作ったことがあります。
    • good
    • 0
この回答へのお礼

座標計算というのはリージョンとは別なのでしょうか?
今リージョンを使ってやるつもりでいるのですが・・・

お礼日時:2008/11/23 23:29

当然仮想画面でやってるんですよね。

この回答への補足

ダブルバッファリングは出来たので、仮想画面でやるつもりです。

補足日時:2008/11/23 23:24
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!