アストロスペース

  • 時期:2011年
  • パブリッシャー:株式会社スクウェア・エニックス
  • プラットフォーム:PC
  • ジャンル:シューティングゲーム
  • 開発環境:C++、DirectX 9、HLSL
  • チーム:1人

スクウェア・エニックスに入社した際に、新人研修の一部としてシューティングゲームを一から作るという課題がありました。本作はその成果物です。

最初に、DirectXのグラフィックスAPIを利用し、三角を描画できるフレームワークの実装に挑みました。三角の描画ができたら、スフィアやボックスの3Dプリミティブを作りました。これらを組み合わせることで、プレイヤーやエネミーの3Dモデルを作りました。

モーションの実装としては、モデルの各パーツの開始と終了の回転情報をクォータニオンで補間し、ループさせることで実現できました。また、エネミーの飛行パターンは数学的に画面上にグラフの関数を描いて、エネミーをそのパスをなぞって進行させることで様々な動きを作ることができました。

最後に、青が強めのランダム色の簡単シェーダーをHLSLで作りました。こちらは以前自作のグラフィックスエンジン物理エンジンで使ったGLSLシェーダーと似たようなシェーダーとなります。

ゲームとしては、エネミーを倒すことでエネルギーを溜めることができます。
エネルギーの使い道は2つ:

  • 強力なレーザーを左右45度に振り回すことができます。大勢のエネミーを倒すには最適ですが、エネルギーを大量に消費します。
  • ブーストダッシュの発動。ブースト発動中は無敵状態になるため、危険を感じる時にブーストで回避。しかしブースト先にどんなエネミーが待っているか読みにくいため、ある程度リスクがあります。

10レベル毎にボスが登場します。ボスの回りの防具を削りきることでボスを倒せます。レベルは無限に続くため、ハイスコアを競い合うゲームとなっております。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です