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に同様の名前のメソッドを 用意しておけば、基本的に必要のないコマンドでが、デバッグ には重宝します。