例として、知っている人が多いグラディウスシリーズを出す。
グラディウスシリーズに登場するキャラクターを分類すると、
・操作キャラ(ビックバイパー、つねに1体)
・味方キャラ(オプション、最多4体)
・自機やオプションの弾(グラディウスシリーズでは個数上限あり)
・ザコ敵(不特定多数)
・ボス敵(原則1ステージに1体、複数の場合もあり)
・敵弾(不特定多数)
といった具合に分けられる。
味方キャラの存在をのぞけば、どんなシューティングでも、
またシューティング以外の多くのゲームでも共通しているだろう。

あなたがグラディウスシリーズを作るとして、
キャラクタのデータをどう設計・処理するか聞かせて欲しい。

1:自機もザコもボスも、すべて「ゲームに登場するキャラクター」として、
  ひとつの配列(またはポインタ)で扱う。
2:自機・味方・ザコ・ボス・味方弾・敵弾をそれぞれ別の変数・配列で扱う。
3:自機と接触しうるキャラ(ザコ・ボス・敵弾)をひとつの配列で扱い、
  自機と接触しないキャラ(自機・味方・味方弾)をひとつの配列で扱う。
4:個数が少なく、あまり変動しないキャラ(自機・味方・ボス)をひとつの配列で扱い、
  個数が多くて変動が激しいキャラ(ザコ・敵弾・味方弾)をひとつの配列で扱う。
5:個数が少なく、あまり変動しないキャラ(自機・味方・ボス)をひとつの配列で扱い、
  個数が多くて変動が激しいキャラ(ザコ・敵弾・味方弾)はそれぞれ独立した配列で扱う。
9:その他

えらんだ理由をぜひ添えて回答願う。