人工知能(AI)の開発などで注目を集めるプログラミング言語「Python」では、「Panda3D」というライブラリーを使うことで、3次元(3D)ゲームも開発できる。Panda3Dの基本的な使い方を紹介するとともに、実際に遊べる「ビー玉迷路ゲーム」を開発する。
Part 2
ビー玉迷路ゲームを作ろう
Part 2では、迷路の箱を傾けてボールを運ぶゲームを作ります。
図10に完成したゲームを示します。昔懐かしい、おもちゃの「ビー玉迷路」のようなゲームです。これは、Part1でダウンロードしたサンプルプログラム集(panda3d-1.10.1-samples.zip)を解凍したフォルダーの中に入っている「ball-in-Maze」のプログラムを基にして、本特集の解説のために改良したものです。
ゲームのルールは、下の角の開始地点から右の角のゴール地点までボールを運ぶだけです。ゴール地点までは複数の穴があり、ボールが穴に落ちてしまったときは、開始地点に戻されます。迷路は、マウスを動かすことで傾きを変えることができます。迷路の傾きによってボールを転がし、ゴールまで運べればゲームクリアです。
ゲームは、以下のステップで作成していきます。
ゲームを作る準備をしましょう。デスクトップなどに、「panda3d_game」フォルダーを作成してください。そのpanda3d_gameフォルダーの中に、「main.py」というファイルを作成します。main.pyに、プログラムを記述していきます。
迷路とボールの3Dモデルは、サンプルプログラム集のデータを利用します。「panda3d-1.10.1-samples.zip」を解凍したフォルダーの中の「panda3d-1.10.1」フォルダーの中の「samples」フォルダーの中に、「ball-in-maze」フォルダーがあります。その中の「models」フォルダーを、これから作業するpanda3d_gameフォルダーにそのままコピーして格納してください。modelsフォルダーには、以下の3Dモデルと画像のデータが入っています。
これらの素材のデータを使って、ゲームを作っていきます。