ELMは仮想環境の開発環境で、自分の希望する仮想環境を 実現するには、その仮想環境の中に存在すべきオブジェクトの クラスを作成する必要がありますが、ELMにはじめから あるクラスだけでも簡単な仮想環境を構築できます。 自分の仮想環境を構築する前に、一度ELMのデフォルトの クラスだけで仮想環境を構築し、その使用法をためして みるのがよいでしょう。
ELMはJavaで開発されているので、多くのプラットフォームで 動作しますが、ここではWindowsでのインストールを中心に解説します。 ELMをインストールするためには、以下のソフトウェアもあらかじめ インストールされている必要があります。
上に示したソフトウェアのインストール方法はそれぞれの ドキュメントを参照して下さい。ただ、 上に示してあるWeb3DのHowToInstallに示されているXj3Dの イントール方法は非常に大変なのでWWWサイトにある コンパイルずみのx3d.jarをダウンロードして インストールすると良いでしょう。(このコンパイルずみ x3d.jarはバージョンが古いので完全ではありませんが、 ELMを使用するには十分です。)
ELMはelm-ve-*.**.tgzまたはelm-ve-*.**.zipというファイル名で ダウンロードできます。
*.**の部分はバージョン番号なので、 なるべく新しいものをダウンロードしてください。これを 解凍すると以下のようなファイルとフォルダが展開されます。
COPYRIGHT README.txt build.bat build.sh bin/ examples/ release/ src/ ... etc.
README.txtにコンパイルとインストールの方法が 説明してあります。上に示したソフトウェアが正しくインストール されていればコンパイルは簡単です。Windowsでコンパイルする 人はbuild.batとreleaseフォルダ内のbuild.batをそれぞれダブル クリックして下さい。releaseフォルダ内にelm.jarが作成 されるので、これをCLASSPATH環境変数に加えて下さい。
以上でインストールは終了です。
Windowsでは、binフォルダ内のelm2.batをダブルクリックして 下さい。
最初に名前を聞かれるので、仮想環境内で使用する自分の 名前を入力してください。
これで、クライアントの起動ができます。通常 意識しませんが、ELMでは、クライアントが起動した 時点で、自動的にサーバも起動します。クライアントが 起動された時点で表示される内容は、そのサーバの 中の仮想環境です。このサーバは自分のローカルな マシンに起動されたプライベートなサーバで、 自分だけの仮想環境を構築することが可能です。
ELMには3種類のクライアントがあり、それぞれに 操作法があります。しかし、全てのクライアントで 共通してテキストのコマンドを入力することが でき、全ての操作はテキストコマンドだけで可能に なっています。2次元クライアントや3次元クライアント はそれぞれ独自のGUIをもっていますが、その説明は ここでは、省略します。しかし、これらのクライアントの 操作は直感的にできるように(しようと)しています。 もし、わかりずらいと思う場合には、連絡ください。
cd
cct
上の節で説明したコマンドは全て英語のアルファベットで 始まるコマンドで、Avatarコマンドと呼ばれるものです。 ELMにはこの他にElmSetコマンドとElmObjectコマンドが あり、全部で3種類のコマンドがあります。これらのコマンドの 違いを説明するには、多少ELMのコマンド説明が必要です。
ELMのコマンドはクライアントから文字列として入力され、 文字列のまま、サーバの中にいる自分のアバタに送られます。 アバタはそれを解釈して、このコマンドを?章で説明した メッセージに変換します。そして、?章で説明された方法 で、メッセージが送信されます。このメッセージが どこに送信されるかによって、3種類のコマンドができる わけです。
Avatarコマンドはメッセージに変換された 後に、自分自身に送られるコマンドです。つまり、 Avatarコマンドを実行するとは、Avatarのメソッドをを 呼び出すことにほかなりません。基本的なコマンドは Avatarコマンドであり、Avatarコマンドにするべきです。 (コマンドは自分で追加、拡張できます。)それは、 あとで説明されるElmSetコマンドやElmObjectコマンド よりも、ちょっとだけ入力しやすいからです。
ElmSetコマンドはメッセージに変換された後に、 自分のいる部屋に送られます。つまり、ElmSetコマンド を実行するとは、自分のいる部屋のメソッドを呼び出す ことにほかなりません。ElmSetコマンドは全て以下の 形態をしています。
#コマンド名 引数1 引数2 ……
つまりコマンド名の最初に必ずシャープ記号がつきます。 このElmSetコマンドはデバッグの時などには便利ですが、 Avatarコマンドから間接的に呼び出せるように、Avatarに 同様の名前のメソッドを用意しておけば、基本的に必要 のないコマンドです。
ElmObjectコマンドはメッセージに変換された後に、 自分のいる部屋の中にいる他のElmオブジェクトに送られます。 つまり、ElmObjectコマンドを実行するとは、他のElmオブジェクトの メソッドを呼び出すことにほかなりません。ElmObject コマンドは全て以下の形態をしています。
##Elmオブジェクトの名前 コマンド名 引数1 引数2 ……
##object_name command_name arg1 arg2 ...
つまりコマンド名の最初に必ずシャープ記号が二つ つきます。このコマンドもAvatarコマンドから間接的に 呼び出せるように、Avatarに同様の名前のメソッドを 用意しておけば、基本的に必要のないコマンドでが、デバッグ には重宝します。
VESMAにはいくつかのインストール方法が用意されています。それぞれのイン ストールの方法では、必要とされるスキルや制約事項が異なっています。各節 の最後にまとめられた項目をチェックして、自分の目的にあったインストール 方法を選択すると良いでしょう。特にVESMAを利用したプログラミングを行な う予定のある人は「Jarファイルのダウンロード」の方法か「ソースファイル のコンパイル(CVS)」の方法を選択して下さい。
VESMAを起動した後の操作方法は 「VESMAを使ってみよう!」の節で 説明されています。
また、セットアップの詳細は別の場所で説明しますが、 最低限してほしい作業を最後に記述してあります。
以下の(Java Web Start以外の)インストールに関して、VESMAの インストールの前にJavaがインストールしてある必要があります。 VESMAを拡張して新しいオブジェクトなどを作成してみたい人は JavaのSDK(Software Development Kit)をインストールして下さい。 VESMAを使用するだけならば、ダウンロードサイズの小さい JavaのJRE(Java Runtime Environment)をインストールしておいて 下さい。VESMAの全ての機能を使用するためには、Java以外に、 Java3D,Java Media Fundation(JMF),Java Helpなどをインストールする 必要があります。ただし、基本的な機能はJavaのSDKまたはJREだけで 動作します。
この方法は、実際にはインストールではなくJava言語のアプレット とよばれる技術を使用します。特定のWebページをウェッブブラウザで 開くと自動的にプログラムが読み込まれて実行される方式です。よって、 プログラムはインストールされずに、毎回ダウンロードして実行する ことになります。VESMAをちょっとためしてみたいという人に最適です。
最初にやるべきことは、Javaのインストールです。VESMAのバージョン 3.xxではJavaの1.3以上を必要としますが、Windowsにプレインストール されているものは古いJavaですので、Windowsを使用している人は Sun Microsystemsのページ などからJava1.3以上(今ならJava1.4以上推奨)をダウンロードして インストールして下さい。
MacOS Xを使用している人はJava1.3がプレインストールされている はずなので新にインストールする必要はありません。
準備が終ったらVESMAのページ からたどって'Test Applet'のリンクをクリックしてください。プログラムが 自動的にロードされて実行されます。多きなプログラムですので、少し 時間がかかるかもしれません。上手くいけば「start」と「stop」というボタンが 現れます。「start」をクリックするとクライアントの画面が現れます。 他のサーバとの通信を含む機能は使用できませんが、それ以外の殆どの 機能は試すことができます。VESMAの使用方法は こちらを見て下さい。
このインストール方法は「Java Web Start」と呼ばれる技術を用いて 実現されています。この技術はJavaで作成されたソフトウェアを Webサーバを利用して簡単にインストールすることができるように するものです。よってVESMAを単にツール、もしくは遊び道具として 使用するのであれば、このインストール方法が最適です。
Java Web Startを利用してVESMAをインストールするには、まず、 Java Web Startをインストールする必要があります。 Java Web Startはここからダウンロードできます。 Java1.4以降をインストール済みであればJava Web Startは一緒に インストールされているはずなので、新たにインストールする 必要はありません。
Java Web Startがインストールできたらあとは、ウェブブラウザで VESMAのページからJava Web Startをクリックして下さい。あとは、 ほとんど自動です。2回以上ブラウザでアクセスすればディスクトップに アイコンが作成されるので、以降はそれをダブルクリックすれば 簡単に起動できるようになります。
VESMAはシステムをそのまま使用するだけでなく、自分で設計した 新しいオブジェクトを作成したり、様々な拡張ができるように なっています。このような拡張を行なうためにはこのインストール 方法が適しています。
まず、Javaをインストールして下さい。Javaバージョンは1.3以上ですが、 なるべく新しいものをインストールして下さい。Sun Microsystemsの ページ からダウンロードできます。非常に多きなファイルなので、Java関連の 雑誌のCD-ROMなどからインストールするのも良い選択肢です。
あとは、VESMAのページにいってvesma-elm.jarというファイルをダウンロード してきます。このファイルはjavaのオプションパッケージと呼ばれるもので、 Javaのインストールされた場所にコピーすれば、Javaの機能を拡張してくれます。 具体的にはjavaのインストールされたフォルダの中に「ext」と名前のついた フォルダがあるので、そこにコピーします。もし、あなたの使用している コンピュータがあなたの所有物でなく、勝手にこのようなことをすることが 禁止されている場合は、vesma-ext.jarは好きな場所においてかまいません。 そのかわりCLASSPATH環境変数を設定して下さい。環境変数の設定のしかたは OSに依存するので、各OSのマニュアルを参照してください。Windowsの場合 CLASSPATH環境変数の具体的な内容は以下の例のようになります。
CLASSPATH=.;C:\Document and Settings\username\My Documents\vesma-elm.jar;
VESMAが新しくなりバージョンアップする場合には、新しいvesma-elm.jarを ダウンロードしてきて古いvesma-elm.jarに上書き保存して下さい。
このインストール項目は上級者向けです。通常は上で説明した 「Jarファイルのダウンロード」の方法で十分です。
最初に説明したように、ここでは最低限のセットアップだけ説明します。 VESMAは通常のソフトウェアと異なり、他の人があなたのVESMAにアクセス することができるような仕組を持っています。そのためユーザ管理が 必要になりますが、最も重要なユーザである管理者の 情報と、通常使用するユーザの情報をここで、セットアップしておいて 下さい。最初にVESMAを起動した時点でデフォルトのセットアップ情報が 作成されますが、この時点での管理者の パスワードは「adminPassword」となっています。とりあえずは、admin というユーザ名とこのパスワードを使用してログインしてから、 メニューバの[config]ボタンからコンフィグダイアログを出して 管理者のパスワードを変更して下さい。ユーザID(userID)という 入力項目もありますが、これはその管理者が実際には誰であるの かを入力する場所です。これは他の人とかちあうことのないように、 メールアドレスやホームページアドレスなどを設定すると良いでしょう。 管理者のの名前は「admin」固定で変更できません。
また、通常使用する ユーザとして自分の好きな名前のユーザを作成して下さい。 コンフィグの設定ダイアログで「users」タブをクリックし、 ユーザ名、ユーザID、パスワード、ロールを入力して作成します。 ロールというのはユーザの役割のことで「admin」と入力しておくと 管理者と同程度の権利をもつユーザが作成できます。 最初の時点で「gest」という名前のユーザがいますが、これはセキュリティ 確保のために削除しておいたほうが安心です。
やっぱり、ソフトウェアを理解するには使ってみるのが 一番ということで、3種類のVESMAのクライアントの中で メインに開発している2次元のクライアントを用いて簡単な 操作を紹介します。実のところ、内輪でもVESMAの クライアントのGUIはわかりにくいという定評がある(;_;)ので、 これから先、操作方法が変更されることがあると思いますが 仮想空間の構造や、そこでの移動、 仮想空間内のオブジェクトの概念などはまず変更が無いと思い います。一つ、そのへんのところに注目してVESMAの操作をチェック してみて下さい。
VESMAをどのようにインストールしたかによって起動の方法は 異ってきます。インストールとセットアップ の節を見て起動して下さい。
VESMAを起動した直後に最初に現れる小さなウィンドウでは、様々な 起動時の設定を変更することが可能です。例えば、クライアントの 種類を変更したり、他の人があなたのVESMAにアクセスする時の サーバ名などが設定できます。でも、ここではなにも変更せず 「OK」ボタンをクリックしてみて下さい。
次に表示されるのはログインのためのダイアログです。 ユーザ名とパスワードを入力してOKボタンを押して下さい。 これで、VESMAを使い始める準備がととのいます。
まず、始めにやってみて欲しいのがオブジェクトの作成です。 オブジェクトの作成の操作は2段階に別れています。1段目は オブジェクトの種類を指定する操作です。これはメニューバ から操作します。メニューバの「object」をクリックして リストを出します。VESMAで提供される様々なタイプの オブジェクトが表示されますが、ここでは「VHtml」を選択 してみて下さい。これはHTML、つまりWebページのデータを表示する ためのオブジェクトです。これを選択しただけでは、まだ なにも起りません。実際にオブジェクトを作成するのは2段目の 操作です。[Alt]キーを押しながらクライアント上でマウスを クリックして下さい(ボタンが3つ着いているマウスを使って いる人ならば真中のボタンを押すだけでいいです。Macの 場合を調べて書くこと)。 新しいアイコンが表示されたと思います。1段目の操作で一度 オブジェクトの種類を設定しておけばクリックした分だけオブジェクトが 作成されます。作成されたオブジェクトはマウスの左ボタンで普通に ドラックすれば、場所を移動できます。すでに作成されたオブジェクトの 上で、[Alt]キーを押しながらクリックするとオブジェクトが削除されます。 上の例ではVHtmlオブジェクトを作成してみましたが1段目の操作で別の オブジェクトを選択しておけば、別のオブジェクトも作ることができます。
オブジェクトも、ただアイコンとして表示されるだけではあまり 有難くありません。VESMAのオブジェクトにはそれぞれカスタマイザ と呼ばれる機能があります。もともとはオブジェクトをカスタマイズ するための機能なのでカスタマイザと呼ばれていますが、その利用方法 は機能のカスタマイズだけではありません。VHtmlオブジェクトに関して 言えばWebページを表示するための機能が設定されています。 さきほど作成したVHtmlオブジェクトをダブルクリックしてみて下さい。 デフォルトのHTMLデータが新しいウィンドウ上に 表示されます。URLの入力欄に好きなURLを入力すると別のページが 表示できます。(現在VESMAのVHtmlオブジェクトにはproxyの機能が 無いので、ファイアウォール内でVESMAを使用している場合には ファイアウォール内のURL(file:///c:/test.htmlなど)を指定して下さい。) 「done」ボタンを押すとウィンドウが閉じます。
上の例ではVHtmlというオブジェクトを操作しましたが、他のオブジェクト の操作もほぼ同様です。ダブルクリックすればカスタマイザが開き、そこで いろいろなことを行ないます。また、Musicオブジェクトなどの一部のオブジェクト では、アイコンにボタンなどのGUIが附属しており、これをクリックすることで 反応するオブジェクトもあります。それぞれのオブジェクトの操作に関しては こちらのページに載っています。
移動には2種類あると考えられます。一つは一つのサーバの中だけの移動で、 もう一つは、サーバを越えた移動です。
キーボードの上下左右のキーを押せば簡単に移動できます。 もし、身の回りに何のオブジェクトもなければ、 自分が移動していることに気付かないでしょう。 というのはVESMAでは自分がつねに中心に表示されるように なっていますので、実際には自分の身のまわりのものが自分と 反対方向に移動することで、自分が起動していることが別ります。 ちょっと操作性が悪いですが、今後に期待して下さい。
また、サーバ内にある複数の空間の間を移動するのも簡単です。 オブジェクトの操作のところで説明した方法にしたがって、 「Room」オブジェクトを作ってみて下さい。名前はRoomですが、 アイコンとしては小屋として表示されます。自分のアバタを この小屋めがけて体当りさせて下さい。まわりの景色が変り 別の空間に移動したことが別ると思います。こんどは「Exit」 オブジェクトを作ってみて下さい。このオブジェクトに体当りすれば 外の空間に出ることができます。
こんどはサーバの外部、つまり別のサーバに移動してみたいと思います。 当然ながら、外部のサーバに移動する前に、外部のサーバを起動しておく 必要があります。コンピュータネットワークに接続された別のパソコンを 用意して下さい。そのパソコンにもVESMAをインストールして、いままで 同様にVESMAのクライアントを起動しておいて下さい。 [*unresolved*]の節でも説明したように、 VESMAのクライアントを起動すれば自動的に サーバも起動します。(サーバだけを起動する方法はELM-VEのマニュアルを 参照して下さい。) VESMAは始めに起動した段階では、セキュリティの関係上どことも通信できない 状態になっています。まず、それを解除して通信できる状態にしてみましょう。
VESMAクライアントのメニューバの「config」を選択し「pubSpace」タブを 選択して下さい。ここでは、サーバの外から見ることができるオブジェクト を指定しておきます。今回はここに「/transporter」を設定して下さい。 tの前のスラッシュをお忘れなく。さらに、「import」タブをクリックして 「S_ADDRESS 172.17.213.114 255.255.255.255 ACCEPT」という 項目を加えて下さい。[172.17.213.114]のところは通信相手のIPアドレス です。さらに、さらに、「export」タブをクリックして 「D_ADDRESS 172.17.213.114 255.255.255.255 ACCEPT」という 項目を加えて下さい。違うところは一番最初の[S_ADDRESS]と[D_ADDRESS] だけです。この設定は、通信を行なう両方のVESMAで行なう必要があります。
やっと準備がととのったところで、[*unresolved*]の ところで説明した方法で「Link」オブジェクトを作成してください。 これは、他のサーバと継がるゲートのような物と考えて下さい。この オブジェクトをダブルクリックして、どのサーバと接続するのか、設定を 行ないます。設定欄には「//172.17.213.114:1099/VESMA」と入力して下さい。 1099はポート番号で、変更していなければ自動で1099になります。VESMAの 部分はサーバ名でこれも、変更していなければ自動でVESMAに設定されます。 「Done」ボタンを押せば終りです。
それでは、実際にネットワークを越えて別のサーバに移動してみたいと思います。 Linkオブジェクトに体当りして下さい。ユーザ名とパスワードが聞かれますので 向こうのサーバでのユーザ名とパスワードを入力してください。しばらくすると、 向こうにサーバに移動したことが別ります。VESMAの設定変更から向こうのサーバ までの移動はちょっと大変な作業ですが、次からはLinkオブジェクトに体当り するだけです。特に良く行くサーバがあれば、それに対応するLinkオブジェクトを 作成してLinkオブジェクト集を作っておくと便利でしょう。
向こうのサーバにいってもアバタはこちらのサーバにいるのとまったく 同じように操作できます。向こうのサーバからこちらのサーバに戻るには おなじようにLinkオブジェクトを使うこともできますが、面倒な場合は VESMAクライアントのツールバーにある「home」ボタンを使えば、あとは ユーザ名とパスワードを入力するだけです。
以上で説明したVESMAの操作方法は、Swingを用いた2次元クライアント特有の 操作方法です。ただし、VESMAではこのような操作法以外にコマンドラインに よる操作が可能です。他のサーバに移動する時には 「go //172.17.213.114:1099/VESMA」というように入力するだけです。 昔からのUNIXユーザなどには、こちらのほうが使いやすいという人も 多いと思います。このようなコマンドによる操作方法に関してはELM-VEの マニュアルに詳しく載っています。