トップページ -> 最新情報技術の実習と研究ツール -> Linux のインストール,設定,運用保守,便利な使い方 -> Ubuntu で 3次元のゲームエンジン Panda 3d 1.9.4 SDK をインストール
[サイトマップへ]  

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

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

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

目次

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

サイト内の関連Webページ

先人に感謝.

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


前準備

Ubuntu のシステム更新などを終わっておくこと

端末を開き、次を実行

sudo apt update
sudo apt -yV upgrade
sudo apt -yV dist-upgrade
sudo apt -yV autoremove
sudo apt autoclean
sudo shutdown -r now

Panda3d のインストール

https://launchpad.net/~panda3d/+archive/ubuntu/ppa に記載の手順による.

  1. Ubuntu のリリース名の確認
    lsb_release -sc
    

  2. Panda3d のインストールのために,設定

    Ubuntuのリリース名が xenial のときは,次のように実行する.

    sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E375BC9D
    sudo add-apt-repository "deb [arch=amd64] https://archive.panda3d.org/ubuntu xenial main"
    sudo apt-get update
    

  3. Panda3d のインストール

    Ubuntuのリリース名が xenial のときは,次のように実行する.

    sudo apt-get -yV install panda3d1.9 
    

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

  1. Ubuntu の端末で,次のコマンドを実行
    python2 /usr/share/panda3d/samples/ball-in-maze/main.py
    

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

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


Panda 3D の主要機能

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

光源と影

  1. Ubuntu の端末で,次のコマンドを実行
    python2 /usr/share/panda3d/samples/shadows/basic.py
    

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

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

テクスチャ

  1. Ubuntu の端末で,次のコマンドを実行
    python2 /usr/share/panda3d/samples/bump-mapping/main.py
    

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

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

  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 Free Download for Ubuntu」をクリック

  5. art-gallery.zip」をダウンロード

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

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

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

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

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

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

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

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

  10. Ubuntu の端末で,pview コマンドを実行
    pview <ファイル名>
    

    実行例

    ※ マウス操作


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

Wavefront OBJ 形式ファイルの表示

  1. Wavefront 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 )
    run()
    

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

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

  4. 実行する.

    Ubuntu の端末で,次のコマンドを実行

    python2 <ファイル名>
    

    実行例

    ※ マウス操作

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

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

  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. 実行する.

    Ubuntu の端末で,次のコマンドを実行

    python2 <ファイル名>
    

    実行例

    ※ マウス操作

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