Windows での,Panda 3d SDK 最新版のインストール手順と主要機能をスクリーンショット等で説明する.Panda3d は,Python で動く3次元のゲームエンジンである. p
この Web ページでは、3次元のゲームエンジン Panda 3d 1.11 SDK (devel 版) のインストールについて説明する.「devel 版」とある通り、リリース前のものを事前に試したいときに使う.
目次
サイト内の関連ページ
先人に感謝.
参考 Web ページ: http://www.panda3d.org/download.php?sdk&version;=devel
Python の URL: http://www.python.org/
インストール手順の詳細は: 別ページで説明している.
コマンドプロンプトを管理者として実行し,次のコマンドを実行.
python -m pip install -U pip setuptools python -m pip install -U jupyterlab jupyter jupyter-console jupytext spyder
https://www.panda3d.org/download.php?platform=windows&version;=devel&sdk; の手順で行う.
python --version
python -m pip install -U pip setuptools
pip install --pre --extra-index-url https://archive.panda3d.org/ panda3d
devel 版なので、サンプルプログラムが同封されていません. 公式版 (1.10.6) のサンプルプログラムをダウンロードし、インストールしてみる.
https://www.panda3d.org/download/panda3d-1.10.6/panda3d-1.10.6-samples.zip
Windows のコマンドプロンプトで,次のコマンドを実行
python .\panda3d-1.10.6\samples\ball-in-maze\main.py
ボールをゴールまでもっていくなど,遊んでみよう. このゲームは,「玉」と「壁」の衝突に関するデモである
上で準備したサンプルプログラムを使い,次の機能を試してみる
python .\panda3d-1.10.6\samples\shadows\basic.py
python .\panda3d-1.10.6\samples\bump-mapping\main.py
次のファイルをダウンロードし,展開(解凍)する.
https://www.panda3d.org/download/noversion/art-gallery.zip
拡張子 .egg のファイルは 3次元モデルデータ のファイルである.
3次元モデル:形のデータ.拡大,縮小,移動,変形できるから「モデル」
pview コマンドは,Panda 3D に付属している,3次元モデルデータの表示プログラム.
※ .eeg ファイルによっては「灰色」の表示しか出ない場合がある
pview <ファイル名>
実行例
※ マウス操作
説明のため Wevefront OBJ形式ファイルを使う. この資料で使用している Wevefront OBJ形式ファイル次からダウンロードできる
import direct.directbase.DirectStart model = loader.loadModel( "sample.obj" ) model.reparentTo( render ) base.cam.setPos( 0, -500, 0 ) base.cam.lookAt( 0, 0, 0 ) base.run()
ファイル名は何でもよいが、日本語などの全角文字は避ける.拡張子は「.py」にする.
※ 参考のため,Visual Studio Code で Python を使う手順を別のページで説明している.
実行結果例
※ マウス操作
今度は,キーボードの矢印キーを使うプログラム
import direct.directbase.DirectStart
model = loader.loadModel( "sample.obj" )
model.reparentTo( render )
base.cam.setPos( 0, -500, 0 )
base.cam.lookAt( 0, 0, 0 )
def forward( ):
model.setY( model.getY( ) - 10 )
def backward( ):
model.setY( model.getY( ) + 10 )
def right( ):
model.setH( model.getH( ) - 10 )
def left( ):
model.setH( model.getH( ) + 10 )
base.accept( "arrow_up", forward )
base.accept( "arrow_down", backward )
base.accept( "arrow_right", right )
base.accept( "arrow_left", left )
base.run()
ファイル名は何でもよいが、日本語などの全角文字は避ける.拡張子は「.py」にする.
※ 参考のため,Visual Studio Code で Python を使う手順を別のページで説明している.
実行結果例
※ マウス操作
※ キーボードの矢印キーによる操作もできる
本サイトは金子邦彦研究室のWebページです.サイトマップは,サイトマップのページをご覧下さい. 本サイト内の検索は,サイト内検索のページをご利用下さい.
問い合わせ先: 金子邦彦(かねこ くにひこ) ![]()