19
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Pythonだけで3Dクレーンゲーム作成

19
Last updated at Posted at 2025-12-17

Panda3Dというゲームエンジンを用いて、ゲーム開発未経験の状態からPythonでクレーンゲームを一から作成してみました。
この記事では、「Panda3Dで何ができるのか」について、初心者目線で実際に作って感じたことをまとめています。Panda3Dに興味がある方や、Pythonで3Dに触れてみたい方、3Dゲームを作ってみたい方の参考になれば嬉しいです。

はじめに

今回クレーンゲームを作成したきっかけは、社外向けイベントでゲームを展示することになったことです。このゲームは、小さな子どもにも「リアルでの楽しさをデジタルでも体験してもらいたい!」という目的で制作しました。
実際に作成したクレーンゲームは以下のようになっています。
Panda-2025-12-08-11-41-10.gif
ゲームの基本的な仕様は、実際にあるクレーンゲームを意識して作成し、

  • ボタンで右方向と奥方向に1回ずつクレーンを動かす
  • クレーンとボールの距離で成功判定を行う

となっています。実際はタッチパネル操作に対応していて、BGMや効果音も加えています。また、練習モードから本番モードへ進むフローも実装しています。

Panda3Dとは

Panda3Dは、PythonとC++で書かれた3Dゲームエンジンです。
今回は、無料かつPythonだけで開発できるという理由で、Panda3Dを選びました。
特徴としては、

  • Pythonだけで3Dゲームが作成できる
  • オープンソースで誰でも使用可能
  • pipでインストールできる
  • 3Dモデル表示・アニメーションなどが実装できる
  • カメラ機能が搭載されている

などが挙げられます。
特に、pip install panda3dでインストールできるため、Python環境さえあれば気軽に試せることがありがたかったです。
実際に使ってみた印象としては、何もない3D空間にx,y,z座標が設定されていて、そこにオブジェクト(物体)を配置して動かしていくイメージです。

オブジェクト (モデル)

Panda3Dでは、3Dモデルを.egg形式で読み込みます。.eggファイルは、Panda3D独自のファイル形式で、テキストベースの形式となっています。モデルを作成する方法にはBlenderを使う方法などがあるようです。
Panda3Dをインストールすると、いくつかモデルが同封されています。このクレーンゲームでは、同封されていたボール(smiley.egg)と立方体(box.egg)の2つのオブジェクトのみを組み合わせて制作したため、新たに.egg形式のモデルを作成しませんでした。

機能

ここからは、クレーンゲームへの実装有無に関係なく、実際にPanda3Dを使ってみて便利だなと感じた機能を紹介します。

カメラ制御

カメラ機能が搭載されていて、視点を自由に動かせます。前後左右に動かしたり、上下方向に視点を変更したりできます。
カメラ.gif

照明をつける

公式サイトにあるように、次の4種類のライトがあります。

  1. AmbientLight
  2. DirectionalLight
  3. PointLight
  4. SpotLight

試しにポイントライトをつけてみると、このように明るさが変わります。
ライト画像.png
強さや色も調整できるので、照明を使って印象を変えることができます。

影をつける

オブジェクトに影をつけたり、複数の方向からライトを当てたりすることができます。今回のクレーンゲームでは難易度調整などの理由で実装しませんでしたが、つけてみると以下のように表示されます。
影_2.gif

おわりに

今回の記事では、Panda3Dを使ってクレーンゲームを作成した事例を紹介しました。
ここまで読んでくださりありがとうございました!

19
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
19
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?