- 「シューティングゲームの作り方/自作:弾に共通する処理をまとめる」のご紹介
- 弾に共通する処理をまとめる
- 「シューティングゲームの作り方/自作」関連ページのご紹介
- シューティングゲーム・関連ページのご紹介
- 歴代名作シューティングゲームのご紹介|まとめ
- 歴代シューティングゲーム全ゲームタイトル一覧のご紹介|まとめ
- シューティングゲームの人気シリーズのご紹介
- シューティングゲーム関連ページのご紹介|まとめ
- シューティングゲーム解説ページのご紹介|まとめ
- シューティングゲーム・ハード関連(周辺機器)のご紹介|まとめ
- シューティングゲーム雑誌/書籍関連のご紹介|まとめ
- 【TPS名作・傑作・まとめ】TPS傑作・名作・全ゲームタイトルのご紹介│まとめ│~トゥームレイダー│バイオハザード│アンチャーテッドなど~
- 【名作RPG】RPGのご紹介│まとめ│
- 【TOP:SLG】おすすめ名作シミュレーションゲームのご紹介
- 【TOP】レースゲーム関連(おすすめ名作・評価ランキン)のご紹介
- TOP【おすすめスポーツゲーム】のご紹介~MLB,NBA,NFL,FIFAなど~
- 【TOP】パズルゲームのご紹介
- 【ゲームランキング】世界・国内で最も売れたゲームランキングのご紹介
- 名作ゲームのご紹介│まとめ│家庭用ゲーム・PC・アーケードなど
- 【機種別ゲームTOP】PC・家庭用・アーケードゲーム・周辺機器のご紹介
- ジャンル別ゲームタイトルのご紹介│まとめ│
- 【ゲームTOP】ゲーム関連ページのご紹介
- 【書籍・雑誌TOP】書籍・雑誌サイトマップ関連ページのご紹介
- 【ホビーTOP】ホビーサイトマップ関連ページのご紹介
「シューティングゲームの作り方/自作:弾に共通する処理をまとめる」のご紹介

ご訪問ありがとうございます。
今回は、「シューティングゲームの作り方/自作:弾に共通する処理をまとめる」についてご紹介します。
「シューティングゲームの作り方/自作」関連サイトマップのご紹介

「シューティングゲームの作り方/自作」関連をご紹介します。
シューティングゲーム | ゲーム | 中古・新品通販の駿河屋
弾に共通する処理をまとめる
画面外に出た弾の消去

自機のショットと同様に、画面外に出た弾は消去します。「図.5-7画面外に弾が出たかどうかの判定」のようにして、弾が画面外に出たかどうかをチェックします。
弾が動ける範囲を画面枠よりも広める

弾の大きさを考慮して、弾が動ける範囲を画面枠よりも広めにとることがポイントです。こうすれば、弾が画面内で突然消えることなく、画面外に出てから自然に消えます。
▼「図.5-7画面外に弾が出たかどうかの判定」

- 点線は、画面外だが弾を消去しない領域
- 画面枠よりも広めの位置(点線)よりも外に出たら弾を消去する。
画面外から戻ってくる弾

また、例えば円を描いて飛ぶような弾の場合、動ける範囲を広めにとっておけば、少しなら、画面の外に出てしまっても消去されずに再び画面内に戻ってくることができます「図.5-8画面外から戻ってくる弾」。
▼「図.5-8画面外から戻ってくる弾」

- 点線は、画面外だが弾を消去しない領域。
- 「画面外だが弾を消去しない領域」を設けておけば、弾は画面内に戻ってくる。

弾の共通の動きとして、弾の向きを回転させる処理も記述します。ただし、より具体的な弾の動きは、方向弾や狙い撃ち弾といった派生クラスで実装します。
プログラム:弾のクラス

「プログラム5-2:弾のクラス(Bullet.hBullet.cpp)」は、弾に共通の処理をまとめたクラスです。コンストラクタ内でCMoverコンストラクタを呼び出しますが、この時の引数を変更すると当たり判定の大きさを調整することができます。

弾が画面外に出たかどうかを判定するときには、移動物体クラス(CMover)のOut関数を使用しています。
▼「プログラム5-2:弾のクラス(Bullet.hBullet.cpp)」
//弾のクラス
class CBullet : public CMover{
protected:
//3Dモデル
CMesh* Mesh;
//回転角度、角度の変化
floa t Yaw, VYaw;
public:
//色
int Color;
//new演算子delete演算子
//タスクが属するタスクリストを引数に指定
//BulletListは弾のタスクリスト
void* operator new(size_t t) {
return operator_new(t, Game-> BulletList);
}
void operator delete(void* p) {
operator_delete (p, Game->BulletList);
}
//コンストラクタ移動関数描画関数の宣言
//CMeshは3Dモデルのクラス(P.30)
CBullet (CMesh** mesh, int color, float x, float y);
virtual bool Move();
virtual void Draw();
};
//コンストラクタ
//CMoverコンストラクタの最後の4つの引数は当たり判定を表す
CBullet::CBullet(CMesh** mesh, int color, float x, float y)
: CMover(
Game-> BulletList, x, y, BULLET_Z,
-0. 3f, -0.3f, 0.3f, 0.3f),
Mesh(mesh[color]), Color(color), Yaw(0), VYaw(0)
{
//丸い弾の場合には回転させる
if(mesh==Game->MeshBullet) VYaw=0.01f;
}
//移動
bool CBullet::Move() {
//弾を回転させる
Yaw+=VYaw;
//弾が画面外に出たら消滅させる
return !Out(4);
}
//描画
void CBullet::Draw() {
Mesh->Draw (X, Z, Y, 1, 1, 1, 0, Yaw, 0, TO_ZYX, 1, false);
}
「シューティングゲームの作り方/自作」関連サイトマップのご紹介

「シューティングゲームの作り方/自作」関連をご紹介します。
シューティングゲーム | ゲーム | 中古・新品通販の駿河屋
「シューティングゲームの作り方/自作」関連ページのご紹介

「シューティングゲームの作り方/自作」関連ページをご紹介します。
【STG】シューティングゲーム・サイトマップのご紹介

80年から2000年代のシューティングゲームについてご紹介します。
シューティングゲーム | ゲーム | 中古・新品通販の駿河屋
シューティングゲーム・関連ページのご紹介

シューティングゲーム・関連ページをご紹介します。
歴代名作シューティングゲームのご紹介|まとめ

歴代シューティングゲーム全ゲームタイトル一覧のご紹介|まとめ

シューティングゲームの人気シリーズのご紹介

シューティングゲーム関連ページのご紹介|まとめ

シューティングゲーム解説ページのご紹介|まとめ

シューティングゲーム・ハード関連(周辺機器)のご紹介|まとめ

シューティングゲーム雑誌/書籍関連のご紹介|まとめ

【ゲームジャンル別】サイトマップのご紹介

【ゲームジャンル別】サイトマップをご紹介します。
ゲームジャンル別サイトマップ | ||||
ゲームTOP > ランキング│傑作・名作│機種別│ジャンル別 |
||||
ゲームジャンル別TOP >関連ページ│名作│ランキング | ||||
【ジャンル別関連ページ】 アクション系(プラットフォーム│対戦アクション│FPS│TPS│STG│フライト)|AVG│RPG│SLG│レース│スポーツ│パズル│テーブル |
||||
【アクション】プラットフォーム│対戦アクション│FPS│TPS│STG│フライト 【アドベンチャー】AVG│ 【RPG】RPG│SRPG│ARPG 【SLG】SLG│ストラテジー│ターン制SLG│RTS 【レース】レース 【スポーツ系】スポーツ│プロレス 【パズル】 【テーブル】麻雀 |
||||
【ジャンル別】おすすめ評価ランキング アクション│AVG│RPG│SLG│レース│スポーツ│パズル│テーブル |
||||
【歴代傑作・神ゲー(2021~1996年)】99~94点│93~92点│91点│90点 ■【アクション系ゲーム】■ アクション│プラットフォーム│対戦アクション│FPS│TPS│フライト│ 【対戦アクション】一覧│98~80点│79~70点 【FPS】まとめ│90点以上│89~86点│85~83点│82~80点 【アドベンチャーゲーム】 ■【RPG系】■ RPG│SRPG│ARPG 【RPG】一覧│傑作(96~90点)│89~85点│84~82点│81~80点│ ■【シミュレーション系ゲーム】■ SLG│ストラテジー│ターン制SLG│RTS│街づくりSLG ■【レース】■ ■【スポーツ系ゲーム】■スポーツ│プロレス ■【パズル】 |
||||
シリーズ・テーマ | ||||
■■│コペンギンTOP > ゲーム│ホビー│書籍・マンガ│■■ |
||||
サイトマップ一覧 |
ゲームジャンル別・関連ページのご紹介

ゲームジャンル別・関連ページをご紹介します。
【TPS名作・傑作・まとめ】TPS傑作・名作・全ゲームタイトルのご紹介│まとめ│~トゥームレイダー│バイオハザード│アンチャーテッドなど~

【格ゲー・名作】アーケード・家庭用・格闘ゲームのご紹介~名作(173 本)・全タイトル(1462本)のご紹介

【名作STG】シューティングゲームのご紹介

【AVG】アドベンチャーゲームのご紹介│まとめ│

【名作RPG】RPGのご紹介│まとめ│

【TOP:SLG】おすすめ名作シミュレーションゲームのご紹介

【TOP】レースゲーム関連(おすすめ名作・評価ランキン)のご紹介

TOP【おすすめスポーツゲーム】のご紹介~MLB,NBA,NFL,FIFAなど~

【TOP】パズルゲームのご紹介

ゲームTOPサイトマップ

ゲームTOPのサイトマップをご紹介します。
【ゲームTOP】サイトマップ | ||||
ゲームTOP > ランキング│傑作・名作│機種別│ジャンル別 | ||||
■ランキングTOP > ハード│ソフト(売上(世界│国内)│海外評価) ■傑作・名作ゲームTOP > ■ゲーム機種別TOP > 据置│携帯│AC│PC│周辺機器 ■ジャンル別TOP > アクション系(プラットフォーム│対戦アクション│FPS│TPS│STG│フライト)|AVG│RPG│SLG│レース│スポーツ│パズル│テーブル |
||||
■■│コペンギンTOP > ゲーム│ホビー│書籍・マンガ│■■ |
||||
サイトマップ一覧 |
ゲーム関連ページのご紹介

ゲーム関連ページをご紹介します。
【ゲームランキング】世界・国内で最も売れたゲームランキングのご紹介

名作ゲームのご紹介│まとめ│家庭用ゲーム・PC・アーケードなど

【機種別ゲームTOP】PC・家庭用・アーケードゲーム・周辺機器のご紹介

ジャンル別ゲームタイトルのご紹介│まとめ│

コペンギン・サイトマップ

コペンギンのサイトマップをご紹介します。
【コペンギンTOP】サイトマップ | ||||
コペンギンTOP > ゲーム│ホビー│書籍・マンガ│ | ||||
■■│コペンギンTOP > ゲーム│ホビー│書籍・マンガ│■■ |
||||
サイトマップ一覧 |
懐かしの名作から最新作までの豊富な品揃え!通販ショップの駿河屋
コペンギンサイトマップ関連ページのご紹介

コペンギン関連ページをご紹介します。
【ゲームTOP】ゲーム関連ページのご紹介

【書籍・雑誌TOP】書籍・雑誌サイトマップ関連ページのご紹介

【ホビーTOP】ホビーサイトマップ関連ページのご紹介
