Visual Basic 中学校 掲示板 投稿の管理
タグのない投稿を抽出
統計
RSS
Visual Basic 中学校
投稿一覧
DirectX無しでどこまでやれるか
この投稿へのリンク
https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=122#CommentId858
この投稿の削除
削除パスワード
削除する
コメント本文
投稿者
うたひこ
 (社会人)
投稿日時
2008/11/19 08:46:45
こんにちは。
僕が以前シューティング的アクション風ゲーム系アプリを作った時の工夫を書いてみます。
当たり判定をすべきオブジェクトに、敵弾、敵キャラ、味方弾、味方キャラがあり、当たり判定しないけど動きを持つオブジェクトとしてエフェクトがありました。
これらのオブジェクトは全て単一のクラスからインスタンス化したもので、かつそれらには、自身が敵か味方か、弾かキャラかを区別するプロパティを持たせませんでした。
では、どこでそれを判断したかというと、それらの管理、当たり判定、およびゲーム進行を統括する「フェイズ」クラスに、敵キャラ、味方キャラ、敵弾、味方弾、エフェクト、それぞれの属すべきコレクションを用意し、それで判断を行いました。
フェイズクラスは、コレクション対コレクションで当たり判定を行えばよく、わかりやすくて効率的です。
つまり、
「個体には、生まれ持っての正義か悪かの区別などなく、どこに属すかが、その者の善悪を定めた」
ということです。