VESMA,ELM-VEでは様々なタイプのクライアント(テキストベースクライアントや、 3次元クライアントなど)が使用できますが、どのクライアントでも基本的に、 コマンドが入力できれば何でもできます。
VESMA,ELMではコマンドを実行するとは、オブジェクトにメッセージを 送ることに対応します。どのオブジェクトにメッセージを送るかの違い で4種類のコマンドがあります。
「コマンド名 引数1 引数2 …」の形のコマンドは自分自身(アバタ)に対して メッセージを送ることに対応します。「コマンド名」のところには、メッセージ の種類を表す文字列が合てはまります。引数はコマンド名によって変ってきます。
2番目の「#コマンド名 引数1 引数2 …」の形のコマンドは、自分のいる部屋 に対してメッセージを送ることに対応します。どのようなコマンドが使えるかは、 その部屋のクラスによってかわります。
3番目の「##オブジェクト名 コマンド名 引数1 引数2 …」の形のコマンドは、 部屋の中にある任意のオブジェクトに対してメッセージを送ります。 「オブジェクト名」のところに、メッセージを送りたいオブジェクトの名前を 指定します。どのようなコマンドが使えるかは、そのオブジェクトのクラス によってかわります。
4番目の「###コマンド名 引数1 引数2 …」の形のコマンドは、 クライアントに対してメッセージを送ります。これはめったに使用しませんが クライアントの表示がみだれた場合に使う「###refresh」などが、それに 対応します。
ELMで通常使用するコマンドを以下に挙げます。これらのコマンド名は UNIXで使用されるコマンド名と似ています。
自分と同じ部屋にいる、全てのオブジェクトの名前を表示します。
オブジェクトの詳細情報を表示します。
以下の説明ではクラスとオブジェクトという言葉を使用しています。これを混 同しないように気をつけて下さい。オブジェクトは「物」を表わしクラスはそ の物のタイプを表わす言葉です。
ですから、ある一つのオブジェクトに注目すると、それにはオブジェクト名と クラス名の二つが付いていることになります。
「安達、金子、佐藤、菅原、中野渡、成田、松永、渡邊」がオブジェクト名で 「314研究室ゼミメンバー」がクラス名という感じです。
とりあえずvesma2.batをダブルクリックして起動します。
仮想環境が表示されている部分と、メッセージが表示されるテキストエリアの 間に、コマンドを入力するテキストフィールドがあります。そこにコマンドを 入力して実行できます。
ためしに、「ls」と入力してエンターキーを押してみて下さい。メッセージと して同じ部屋の中にあるオブジェクトの名前が表示されます。
VESMAを起動した後になにもしてなければ表示されるのは
transpoter client kenji
のような3つの名前だと思います。transpoterとclientはHiddenオブジェクト なので画面上では見えませんが、システム内部の仕事をするオブジェクトです。 とりあえず気にしなくていいです。kenjiがVESMAにログインした際に入力した 名前です。あなたのアバタを表わしています。
さらに「cat kenji」でkenjiオブジェクトの詳細な情報を表示できます。
cat kenji ac.hiu.j314.elmve.ElmAvatar(kenji):X=-5.0, Y=5.0, Z=0.0 status=RUNNING My parent is ac.hiu.j314.elmve.TopElm(root) //172.17.213.14/ElmVE
kenjiというオブジェクトがac.hiu.j314.elmve.ElmAvatarというクラスのオブ ジェクトでx,y,z座標が(-5.0,5.0,0.0)であることなどが表示されます。
「pwd」というコマンドを実行すると、自分が現在いる場所が表示されます。 例えば
//172.17.213.14/ElmVE
と表示されます。これは172.17.213.14というIPアドレスが割当てられている マシン上のElmVEという名前のサーバにアバタがいることを示しています。後 で見るように、仮想空間の奥深くに移動すると
//172.17.213.14/ElmVE/building8/room103
のようになっていきます。
VESMAを起動してなにもしてなければ、仮想環境内には自分しかいません。な にかオブジェクトを作成してみましょう。
オブジェクトを作成するには、まず、どのタイプのオブジェクトを作成するか 指定する必要があります。このとき使用するコマンドは「cct」です。引数に は作成したいオブジェクトのクラス名を指定します。
cct ac.hiu.j314.vesma.Note
と指定すればVESMAのノートオブジェクトが指定されます。ここで指定できる クラス名のリストをこの文章の一番下に付けておきます。
cctコマンドを実行しても、まだ何も作成されません。touchコマンドを実行す ると実際にオブジェクトが作成されます。
touch note01
上のコマンドを実行すると、自分の背後になにかが新しく作成されたのがわか る思います。note01というのがオブジェクトの名前になります。
重なっていてはわかりずらいので、オブジェクトの場所を移動してみましょう。
locate note01 5.0 5.0 0.0
5.0 5.0 5.0はx,y,zの座標です。適当に変更してみて下さい。
作成したオブジェクトを消去するには「rm」コマンドを使用します。
rm note01
上のコマンドを入力するとnote01オブジェクトが消去されます。
一応、コマンドを説明しましたが、「touch」「rm」「locate」のコマンドは マウス操作で代用できます。マウスの真中ボタン(真中ボタンが無い場合はAlt キー+左ボタン)で背景の部分をクリックすると「touch」、オブジェクトをク リックすると「rm」の動作をします。マウスの左ボタンで普通にドラッグすれ ばオブジェクトの場所を移動できます(「locate」コマンド)。
ELM,VESMAの仮想環境各オブジェクトは、特定のメッセージを受け取ってその メッセージの内容に従って動作します。コマンドラインからメッセージを送る 方法があります。
メッセージの送信を試すためにac.hiu.j314.vesma.Noteクラスのオブジェクト をもう一度作成してみて下さい。「cct」コマンドは一度指定すると、以後有 効なので省略できます。
touch note02 5.0 5.0 0.0
「touch」コマンドの引数として上のようにx,y,z座標を初めから指定すること も可能です。
note02オブジェクトが作成できたら、次のコマンドラインを入力してみて下さい。
##note02 openCustomizer
最初にシャープ「#」が2個付いているのがみそです。これは、note02という名 前のオブジェクトに対してopenCustomizerという名前のメッセージを送るとい う意味です。コマンドを実行すると、カスタマイザが開きます。VESMAのNote クラスのオブジェクトのカスタマイザはWebブラウザになってます。デフォル トでVESMAのオブジェクトのページが開かれたと思います。確認したら[done] ボタンでWebブラウザを閉じて下さい。
こんどは以下のコマンドを入力してnote02オブジェクトにsetSourceURLという 名前のメッセージを'http://www.do-johodai.ac.jp/'という引数付きで送りま す。
##note02 setSourceURL 'http://www.do-johodai.ac.jp/' &
なにも変化しませんが、もう一度カスタマイザを開くと北海道情報大学のペー ジに変っているのが確認できます。
実は「openCustomizer」コマンドの実行もマウス操作で代用できます。カスタ マイザを開きたいオブジェクトのアイコンをダブルクリックして下さい。
ELM,VESMAの仮想環境は階層構造になっています。Windowsなどのファイルシス テムのような感じです。Windowsでは「フォルダ」というものがあって、その 中に他のファイルを保存できますが、VESMAではac.hiu.j314.vesma.Roomクラ スのオブジェクトの中に、他のオブジェクトを投入できます。
とりあえずac.hiu.j314.vesma.Roomのオブジェクトを作ってみて下さい。
cct ac.hiu.j314.vesma.Room touch room01
ちっちゃな小屋のようなアイコンのオブジェクトが作成されたと思います。こ のちっちゃな小屋の中には、また別の仮想空間が存在しています。この小屋に 入ってみましょう。
cd room01
背景が変化してroom01の小屋が消えたと思います。つまりroom01の中の別の仮 想空間に入ったということです。ここでもう一度、部屋を作ります。
touch room02
また、小屋が作られます。さらに、この部屋に入てみます。
cd room02
新しい仮想空間に入ったことが別ります。ここで自分の場所を表示するコマン ド「pwd」を入力してみて下さい。
pwd //172.17.213.14/ElmVE/room01/room02
と表示されます。現在の仮想空間から外に出るには次のように入力します。
cd ..
MS-DOSのコマンドでフォルダを移動する場合と同じです。ここで「pwd」を実 行すれば以下のようになるでしょう。
pwd //172.17.213.14/ElmVE/room01
この「cd」コマンドを入力するかわりに、キーボードのカーソルキーでアバタ を移動して小屋に体当りさせてみて下さい。自動的に小屋の中に入ります。
ここまでは、自分の目の前にあるパソコンの内部だけの話でしたが、 ELM,VESMAはインターネットを利用して他のサーバマシンの中の仮想空間をの ぞくことができます。以下のコマンドを入力して下さい。
go //v314.do-johodai.ac.jp/ElmVE
314研究室の中に置いてあるVAIOのマシンのElmVEと名前が付いているサーバに に存在している仮想空間に移動できます。複数の人が、同じ仮想空間に入れば 互いに他のアバタが確認できます。また、次のコマンドで、会話もできます。 (VESMAを使っている場合。ELMでは会話はできません。)
whisperTo ユーザ名 '会話内容'
自分のVESMAの仮想空間に戻るには「goHome」コマンドを使用して下さい。
ac.hiu.j314.vesma.Room ac.hiu.j314.vesma.Link ac.hiu.j314.vesma.Exit ac.hiu.j314.vesma.Note ac.hiu.j314.vesma.Creature ac.hiu.j314.vesma.Examination ac.hiu.j314.vesma.VApplet ac.hiu.j314.vesma.Media ac.hiu.j314.vesma.Music ac.hiu.j314.vesma.Scenshifter ac.hiu.j314.vesma.WhiteBoard ac.hiu.j314.vesma.Counter