- The added line is THIS COLOR.
- The deleted line is THIS COLOR.
[[Tutorial]]
*テスト実行 [#k98de9c8]
次に世界ファイルというものを作成して仮想世界にオブジェクトを登場させます。
**世界ファイル作成 [#z2214ae9]
$ 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を入力します。
これは仮想世界にペンギンのキャラクターを登場させる世界ファイルです。
**起動 [#uaa20dda]
それではSIGVerseを起動してみましょう。
$ cd ~/sigverse-<version>/bin
$ ./sigserver.sh -w test.xml -p 9001
$ ./sigserver.sh -w test.xml -p 9001 &
先ほど作成した世界ファイルを-wオプションで指定しました。
次にSIGViewerを起動して接続先のホスト名、上で起動したポート番号を入力して、"Connect to SimServer"ボタンを押してサーバに接続します。
#ref(test_1.jpg)
ペンギンのようなキャラクターが見えます。
それではSIGViewer、メインサーバを一度終了します。(この時先ほど作成したkill.shを実行します。)
視点や方向を変えるには画面上でCtrlを押しながら右クリック(または右クリックのみ)でマウスを動かします。
//それではSIGViewer、メインサーバを一度終了します。(この時先ほど作成したkill.shを実行します。)
**キャラクターへのアタッチ [#w06ddb12]
このキャラクターを動かす為にはコントローラを作成し、登場するキャラクターにアタッチしなければなりません。すでにいくつかのコントローラのサンプルが用意されているのでそれを使ってテスト実行してみましょう。
このキャラクターを動かす為にはコントローラを作成し、登場するキャラクターにアタッチしなければなりません。ここではすでにいくつかのコントローラのサンプルが用意されているのでそれを使ってテスト実行してみましょう。
まずSIGVerseを起動します。
$ cd ~/sigverse-<version>/bin
$ ./sigserver.sh -w test.xml -p 9001 &
//まずSIGVerseを起動します。
// $ cd ~/sigverse-<version>/bin
// $ ./sigserver.sh -w test.xml -p 9001 &
all done.[SYS] waiting for connection...
// all done.[SYS] waiting for connection...
この状態ではメインサーバではエージェントがアタッチされるのを待っています。
//この状態ではメインサーバではエージェントがアタッチされるのを待っています。
次にすでに準備されているサンプルコントローラバイナリを読み込み、エージェントにアタッチします。(Enterキーを押すとコマンドが使えます。)
それでは準備されているサンプルコントローラバイナリを読み込み、エージェントにアタッチします。(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というコントローラは登場するキャラクターがぐるぐる回るサンプルです。
-nオプションでアタッチするエージェントの名前を指定します。Toy_Dは先ほどのペンギンのようなキャラクターの名前です。
**SIGViewerで動作確認 [#d8e640c8]
それではSIGViewerを起動してサーバに接続し、シミュレーションを開始します。
それではシミュレーションを開始してみましょう。
SIGViewerを起動して接続するホスト名とポート番号を入力し、Connect to SimServer?ボタンをクリックしてサーバに接続します。
次にSIM_CTRL_CMDの枠の中がSTARTとなっている状態でSendボタンを押してシミュレーションを開始します。
#ref(test_2.jpg)
ペンギンがぐるぐる回転しているのが見えましたでしょうか?
シミュレーションを停止するにはSIM_CTRL_CMDの枠の中がSTOPとなっている状態でSendボタンを押します。
それではいったんSIGViewerを終了しましょう。
次はいよいよコントローラを作成します。
LEFT:[[戻る>環境設定]]
RIGHT:[[次へ>動力学シミュレーションのサンプル]]