トップページ -> データベース研究スタート -> 3次元コンピュータグラフィックスのゲームエンジン -> Windows で 3次元のゲームエンジン Panda 3d 1.9.4 SDK をインストール
[サイトマップへ]  

Windows で 3次元のゲームエンジン Panda 3d 1.9.4 SDK をインストール

Panda3d は,3次元のゲームエンジン.Unity や Unreal Engine よりも気軽に使えて,機能にそん色はない.Panda3d のインストールと動作確認を行う.

3次元のオブジェクトを使って,ダイナミックな何か(マウスやキーボード操作で何か)をしたいときには,Panda3d や Unreal Engine 4 などのゲームエンジンを使うのが便利

※ ここでインストールする Panda 3d 1.9.4 SDK には、 Windows で動く Python 処理系が同封されている.同封の Python 処理系を使って Panda3d を動かす(すでに Windows に Python 処理系をインストール済みであっても、それは使わない).

目次

  1. Panda 3d のダウンロードとインストール
  2. サンプルプログラムを実行してみる
  3. Panda 3D の主要機能
  4. art-gallery.zip の中の .egg 形式ファイル
  5. 3次元モデルの表示プログラムの例

サイト内の関連Webページ

先人に感謝.

参考 Web ページ: http://www.panda3d.org/download.php?sdk&version=devel

キーワード: Panda3d, Wavefront OBJ 形式ファイルの表示, Python


Panda 3d のダウンロードとインストール

  1. ダウンロード Web ページを開く

    http://www.panda3d.org/download.php

  2. Panda3D SDK for Developers (Latest stable: 1.9.4)」をクリック

    SDKの方です.

  3. 1.9.4 (Latest stable)」をクリック

  4. Panda3d SDK 1.9.4」をクリック

  5. Panda3D-SDK-1.9.4-x64.exe」と 「art-gallery.zip」をダウンロード

    ダウンロードするファイルは 2つ.1つめは「_x64」が付いた方を選ぶ

  6. ダウンロードした .exe ファイルを実行

  7. ようこそ画面では,「Next」をクリック.

  8. ライセンス条項の確認

  9. インストールディレクトリ(フォルダ)は既定(デフォルト)のままでよい.「Next」をクリック.

  10. コンポーネントの選択は既定(デフォルト)のままでよい.インストールを開始したいので,「Install」をクリック.

  11. 終了したら「Finish」をクリック.

  12. Python の site-packages のディレクトリ(フォルダ)を開く

    C:\ProgramData\Anaconda3\Lib\site-packages というような名前のディレクトリ(フォルダ)があるはず. それを開く

  13. Python の site-packages のディレクトリ(フォルダ)」に panda3d.pth という名前のファイル を作る.

    エディタを使う.

    ※ ファイル名を変えてはいけない.

  14. ファイルpanda3d.pthの中身をつぎのように書く.(メモ帳で開くか,自分の好きなエディタで開く)
    C:\Panda3D-1.9.4-x64
    C:\Panda3D-1.9.4-x64\bin
    

  15. ファイルpanda3d.pthの中身をつぎのように書く. (メモ帳で開くか,自分の好きなエディタで開く) o

  16. ppython にパスが通っていることを確認する

    新しくWindowsのコマンドプロンプトを開き、次のコマンドを実行.

    エラーメッセージが出ないことを確認する

    where ppython
    

サンプルプログラムを実行してみる

  1. スタートメニューで、 「Panda 3D SDK 1.8.4」→ 「Sample Programs」→ 「ball_in_maze」→ 「Run main.py」と操作する

    スタートメニューを使わないときは、次の手順で起動

    1. C:\Panda3d-1.9.4-x64\samples\ball-in-maze を開く

    2. Run main.py」 を実行してみる.

  2. ゲーム画面が開けば OK.開かない場合には panda3d.pth の設定などを再確認する(インストールをやり直す).

    ボールをゴールまでもっていくなど,遊んでみよう. このゲームは,「玉」と「壁」の衝突に関するデモである


Panda 3D の主要機能

サンプルプログラムを使い,次の機能を試してみる

光源と影

  1. スタートメニューで、 「Panda 3D SDK 1.8.4」→ 「Sample Programs」→ 「shadows」→ 「Run main.py」と操作する

    スタートメニューを使わないときは、次の手順で起動

    1. C:\Panda3d-1.9.4-x64\samples\shadows を開く

    2. Run basic.py」 を実行してみる.

    スポットライト,陰影,影が表現できていることを確認する.(見て楽しむ)

    もともとのプログラムで,光源を指定している部分は次の通り

テクスチャ

  1. スタートメニューで、 「Panda 3D SDK 1.8.4」→ 「Sample Programs」→ 「shadows」→ 「Run main.py」と操作する

    スタートメニューを使わないときは、次の手順で起動

    1. C:\Panda3d-1.9.4-x64\samples\bump-mapping を開く

    2. Run basic.py」 を実行してみる.

      模様やでこぼこが表現できている.(見て楽しむ). マウス操作で回転できる.ESC キーで終了.


art-gallery.zip の中の .egg 形式ファイル

  1. 先ほどダウンロードした art-gallery.zip を展開(解凍)する.

    分かりやすいディレクトリ(短いディレクトリ)に展開(解凍)するのが良い. 日本語を含むディレクトリには展開(解凍)しないこと.

    ※ 下の実行例では,d:\の直下に解凍(展開)している

  2. サブディレクトリの下に,ファイル名の末尾が「-egg.pz」のファイルがあるので,展開(解凍)する.

  3. 展開すると,拡張子 .eeg のファイルや画像ファイルなどができることを確認

    拡張子 .egg のファイルは 3次元モデル のファイルである.

    3次元モデル:形のデータ.拡大,縮小,移動,変形できるから「モデル」

  4. pview コマンドで,3次元モデルの表示ができることを確認する.

    pview コマンドは,Panda 3D に付属している,3次元モデルの表示プログラム.

    Windows のときは,コマンドプロントで pview を実行

    ※ .eeg ファイルによっては「灰色」の表示しか出ない場合がある(下図のように).他の .egg ファイルを試すこと.


3次元モデルの表示プログラム

Wavefront OBJ 形式ファイルの表示

  1. Wavefront OBJ 形式ファイルを準備する

    説明のため Wevefront OBJ形式ファイルを使います. この資料で使用している Wevefront OBJ形式ファイル次からダウンロードできます

  2. テキストファイルの中身を次のように書く
    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()
    

  3. テキストファイルを,保存する.

    ファイル名は何でもよいが、日本語などの全角文字は避ける.拡張子は「.py」にする.

  4. 実行する.

    ※ 参考のため,Visual Studio Code で Panda3d を使う手順を別の Web ページで説明しています.

    Windowsのコマンドプロンプトを使いたい場合には, 次のコマンドを実行.

    ※ Windows の場合は ppython

    ppython <ファイル名>
    

    実行例

    実行結果例

    ※ マウス操作

キーボードの矢印キーによる操作

今度は,キーボードの矢印キーを使うプログラム

  1. 今度は、テキストファイルの中身を次のように書く
    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()
    

  2. テキストファイルを,保存する.

    ファイル名は何でもよいが、日本語などの全角文字は避ける.拡張子は「.py」にする.

  3. 実行する.

    ※ 参考のため,Visual Studio Code で Panda3d を使う手順を別の Web ページで説明しています.

    Windowsのコマンドプロンプトを使いたい場合には, 次のコマンドを実行.

    ※ Windows の場合は ppython

    ppython <ファイル名>
    

    実行例

    実行結果例

    ※ マウス操作

    ※ キーボードの矢印キーによる操作もできる