Tutorial?

テスト実行

次に世界ファイルというものを作成して仮想世界にオブジェクトを登場させます。

世界ファイル作成

$ cd ~/sigverse-<version>/share/sigverse/data/xml

ここに世界ファイルを作成します。世界ファイルはxmlファイルで記述されています。

$ emacs test.xml

test.xml

<?xml version="1.0" encoding="utf8"?>
<world name="myworld">

  <!--重力の指定-->  
  <gravity x="0.0" y="-9.8" z="0.0"/> 
  
  <!--登場キャラクターのインスタンス作成-->
  <instanciate class="seToy_D.xml">

        <!--キャラクターの名前-->
        <set-attr-value name="name" value="Toy_D"/>
        
        <!--動力学演算の機能off-->
        <set-attr-value name="dynamics" value="false"/>
       
        <!--C++言語の指定-->
        <set-attr-value name="language" value="c++"/>

  </instanciate>
</world>

※ファイル保存時にコードシステムを聞かれたらutf-8を入力します。

これは仮想世界にペンギンのキャラクターを登場させる世界ファイルです。

起動

それではSIGVerseを起動してみましょう。

$ cd ~/sigverse-<version>/bin
$ ./sigserver.sh -w test.xml -p 9001 &

先ほど作成した世界ファイルを-wオプションで指定しました。

次にSIGViewerを起動して接続先のホスト名、上で起動したポート番号を入力して、"Connect to SimServer"ボタンを押してサーバに接続します。

test_1.jpg

ペンギンのようなキャラクターが見えます。

視点や方向を変えるには画面上でCtrlを押しながら右クリック(または右クリックのみ)でマウスを動かします。

キャラクターへのアタッチ

このキャラクターを動かす為にはコントローラを作成し、登場するキャラクターにアタッチしなければなりません。ここではすでにいくつかのコントローラのサンプルが用意されているのでそれを使ってテスト実行してみましょう。

それでは準備されているサンプルコントローラバイナリを読み込み、エージェントにアタッチします。(Enterキーを押すとコマンドが使えます。)

ペンギンが見えている状態で以下のコマンドを実行します。

$ ./sigrunac -l ../share/sigverse/samples/GoRound.so -n Toy_D -p 9001
[SYS]  Controller attached to "Toy_D"
[SYS]  127.0.0.1 connected
[SYS]  Toy_D : dataport
[SYS]  127.0.0.1 connected

これでキャラクタ-にアタッチしました。 sigrunacはコントローラをシミュレーションサーバ中のエージェントにアタッチしてテストするためのツールです。-lオプションでアタッチするコントローラライブラリを指定します。サンプルのコントローラライブラリは

sigverse-<version>/share/sigverse/samples/

にいくつか用意されています。 GoRound.soというコントローラは登場するキャラクターがぐるぐる回るサンプルです。

SIGViewerで動作確認

それではシミュレーションを開始してみましょう。

次にSIM_CTRL_CMDの枠の中がSTARTとなっている状態でSendボタンを押してシミュレーションを開始します。

test_2.jpg

ペンギンがぐるぐる回転しているのが見えましたでしょうか?

シミュレーションを停止するにはSIM_CTRL_CMDの枠の中がSTOPとなっている状態でSendボタンを押します。

それではいったんSIGViewerを終了しましょう。 次はいよいよコントローラを作成します。

戻る?
次へ

Front page   New List of pages Search Recent changes   Help   RSS of recent changes