研究室トップページへ / 卒業研究一覧へ

大阪工業大学 情報科学部 宇宙物理・数理科学研究室 2018年度 卒業研究

シューティングゲーム 『アインシュタインインベーダー』の作成

B15049 関谷光一郎

2019/2/27 作成

概要 / 目次 /

概要

 本研究では,実際の物理法則に基づいて運動する物体を取り入れたゲーム作成を行った.具体的には,万有引力を受けて運動する物体を表示し,それをシューティングするものだが,教育教材としても有用なものを目指した.ゲーム作成ツールであるUnityを用いて,運動の様子や,表示方法をプログラムした.
 ゲーム内容は,プレイヤーが的を狙って球体(惑星)を発射するというシンプルなシューティングゲームに,万有引力を及ぼす球体(太陽)やブラックホールを追加し,惑星の軌道を邪魔する障害物となる.したがって,プレイヤーは重力で球体の軌道が変わることも考慮して狙う必要がある.光を放出しないブラックホールは見ることができないので,レーザーを発射してその曲がり具合でブラックホールの位置を推定する必要がある.
 教育教材としての内容は,2つの利点を挙げられる.1つ目は,万有引力のリアルなシミュレータを作成でき,様々な条件での実験が行えるということ.例えば楕円軌道と双曲線軌道の発生条件違いや,ケプラーの法則の理解に有用なことである.2つ目は,シューティングゲームとして遊ぶ熟達者にとっても,万有引力を一歩進めた,相対性理論の影響を考察する機会を与えることである.2体間の距離の3乗に反比例する万有引力の式(5次元世界の重力)のプレイモードも実装している.
 この2つの利点があることにより,このゲームの対象者は子供から大人まで幅広く,様々な目的で利用することができる.また,ユーザー・フレンドリーにするために,以下の工夫をした.操作性について,惑星の発射速度やタイミングを自由に調整できるようにした.表示方法について,斜め上からの視点や,惑星からの視点で,楕円運動の様子を観察できるようにした.

              
             図1 球体の公転運動                       図2 ブラックホール付近での光の軌道
 
 図1では,惑星を発射した時の万有引力による楕円軌跡が視認できるように, 表示を工夫した.また,時間変化する様子から,Keplerの惑星運動の法則(面積速度一定の法則)を満たすことが確認される.
 図2は,ブラックホールの周りでレーザーを発射した時の図である.光の軌跡は一般相対性理論の式を解いている.説明のためブラックホールの位置に赤い円を描いて可視化できるようにしたが,実際の画面には表示されない.レーザーの軌跡は光源,観測者の位置を,画面外右端から左端にしてRunge-Kutta法で積分したものである.衝突係数を変更することで,光の曲がり方が変わってくるがその詳細は論文で議論している. 本シューティングゲームは最終的にWebで公開する予定である.


目次

  1. 序論
    1. 背景
    2. 本研究の目的
    3. 本研究の構成
  2. Unity でのゲーム作成
    1. Unity について
    2. ゲーム概要
      1. 発射台の作成
      2. 発射する球体の作成
      3. 球体の速さの表示
      4. 的の作成
    3. 画面描写モード(カメラ)の切り替え
      1. サブカメラの作成
      2. サブカメラとメインカメラの比較
      3. 球体視点のカメラ
    4. 球体の軌跡の描写
  3. 万有引力で動く物体実装
    1. 万有引力のプログラム
    2. 楕円運動の考察
    3. 2つの万有引力の考察
    4. 5次元世界モードの実装
  4. ブラックホールの実装
    1. 万有引力のプログラム
    2. 擬ニュートンポテンシャルのプログラム
    3. ブラックホールを周回する光
    4. 光の軌道の計算方法
    5. 光の軌道の数値解析方法
    6. 光の軌道の計算結果
    7. 光の軌道の実装
  5. まとめ