DeepMatrix 3D multi-user system: Difference between revisions

The educational technology and digital learning wiki
Jump to navigation Jump to search
Line 12: Line 12:


== Short how to for version 1.03 ==
== Short how to for version 1.03 ==
{{under construction}}
So far '''I did not manage to run V 1.03 server and client properly'''. E.g. as of sept. 8, there is a bin/instantreality.jar archive missing in the Instant reality distribution for Ubuntu (I took the one found in the windows distribution). Servers seem to start up properly, but the clients can't connect. In addition, default configuration files won't work, e.g. server and client port numbers do not match.
The only program that ran properly was the Windows public client (the difference between local and public are just server and port numbers in the configuration files). The windows client did connect to a remote VRML (or X3D) world.


=== Prerequisites ===
=== Prerequisites ===
Line 30: Line 24:
Do '''not''' install the "official" public version you can find on the [http://www.instantreality.org/home/ Deep MatrixIP9] web site.
Do '''not''' install the "official" public version you can find on the [http://www.instantreality.org/home/ Deep MatrixIP9] web site.


Installation under Ubuntu. Save the *.deb file then use ''dpkg'' to extract and to install the archive, e.g.
; (3) Special remarks concerning Ubuntu
 
* Save the *.deb file then use ''dpkg'' to extract and to install the archive, e.g.
  dpkg -i InstantReality-Ubuntu-10.04-x86-2.0.0.20235.deb
  dpkg -i InstantReality-Ubuntu-10.04-x86-2.0.0.20235.deb
It will be installed in /opt/instantReality/
It will be installed in /opt/instantReality/
* As of sept. 8, there is a missing '''bin/instantreality.jar''' archive in the Instant reality distribution for Ubuntu. I took the one found in the Debian distribution, but you also may try to use the one distributed for Windows. One also could try to use the directly the Debian version. After all, Ubuntu is Debian (I didn't try this ...)


=== Windows 7 ===
=== Windows 7 ===
Line 65: Line 62:
  port 7744
  port 7744


'''Pay attention to this''': localport (e.g. 4848) must be different from port and that ''port'' in files win_local_matrixclientrc'' and ''matrixrc'' must match (e.g. 7744).
'''Pay attention to this''':  
* ''localport'' (e.g. 4848) must be different from ''port'' (e.g. 7744)
* ''port'' in files win_local_matrixclientrc'' and ''matrixrc'' must match (e.g. 7744)
* Only define a single ''Hostname'' (in the distro, there are two, I commented one)


; (5) Use it
; (5) Use it
Line 71: Line 71:
* open the DeepMatrixIP9-v1_01/client_application/Win_Local_Client folder and double click the ''DeepMatrixIP9_MU_Local_Client.bat'' file
* open the DeepMatrixIP9-v1_01/client_application/Win_Local_Client folder and double click the ''DeepMatrixIP9_MU_Local_Client.bat'' file


If everything goes well, the server will listen on port 7744. Else, open a shell (command prompt), cd to the directories and type in the *.bat files.
If everything goes well, the server will listen on port 7744. Else, open a shell (command prompt), cd to the directories and type in the *.bat files, e.g.
This way you can see the client's error messages ...  
cd c:\DeepMatrixIP9-v1_03
cd server_application
DeepMatrixIP9Sserver.bat
Then do the same with the client, i.e. open another command prompt. This way you can see both the server and the client's error messages ...  


e.g. a client error message
Example of a client error message:
  Trying to connect to browser: 5 vrml.eai.ConnectionException: Not a Hermes Event - /127.0.0.1:4848
  Trying to connect to browser: 5 vrml.eai.ConnectionException: Not a Hermes Event - /127.0.0.1:4848


Line 110: Line 113:
* ''server_application/matrixrc''
* ''server_application/matrixrc''


There is no difference between the configuration of a linux and a windows client. If you use the same machine as server and client, do something like this in ''win_local_matrixclientrc''
There is no difference between the configuration of a linux and a windows client. If you use the same machine as server and client, do something like this:


* Change the target host name and port
* Change the target host name and port in file  ''/opt/DeepMatrixIP9-v1_03/client_application/win_local_matrixclientrc''
port 7744
Hostname 127.0.0.1
* Client local port (to connect to the player)
localport 4848
: If you use another portname also fix file ''Screen.x3dv''
  port 4848
  port 4848
Hostname localhost
* Change the client host name and port
localbrowser localhost
localport 4848


If you use another portname also fix file ''Scree.x3dv''
* Verify in file ''/opt/DeepMatrixIP9-v1_03/server_application/matrixrc'' that the port matches the port in the client file.
  port 4848
  port 7744


Finally, you may have to adjust the script that connects to Deepmatrix author's demo server
Finally, you may have to adjust the script that connects to Deepmatrix author's demo server

Revision as of 17:12, 13 September 2010

Draft

Introduction

“DeepMatrix is an open-source Java server/client 3D multi-user system capable of both chat and shared events working in conjunction with VRML/X3D browsers. Users appear as avatars in a shared 3D scene. [...] The latest version of DeepMatrix is composed of a Java server and Java standalone-client application. It uses the latest Sun Java Runtime Environment and is designed to work with standalone VRML/X3D viewers that have Java EAI or External SAI capability.” (deepmatrix.org)

Presently, DeepMatrix works with the free Instant Player client.

DeepMatrix was originally developed by a team led by Gerhard Reitmayr from the now-defunct Geometrek.com site in the late nineties. This project in turn was based on the VNet EAI applet by Steven White and Jeff Sonstein.

Current status: The new version seems to work better and has additional features. However, it still is under development, i.e. some versions may or may not work. DeepMatrix was an active project when last checked in Sept. 2010 - Daniel K. Schneider

Short how to for version 1.03

Prerequisites

(1) Java 1.6 or higher (as of Aug. 2010)
(2) Install the very latest Instant Reality X3D/VRML player
Find your version in the FTP archive. Be careful to select the right version of the player for your system.
e.g. File InstantReality-Ubuntu-10.04-x86-XXXX.deb File for a typical 32-bit 10.04 LTS "Lucid Lynx" install of April 2010.
or file Windows-x86_64/InstantReality-Windows-XXXX-2.0.0.20206.msi for Vista/Win 7 64-bit versions.

Do not install the "official" public version you can find on the Deep MatrixIP9 web site.

(3) Special remarks concerning Ubuntu
  • Save the *.deb file then use dpkg to extract and to install the archive, e.g.
dpkg -i InstantReality-Ubuntu-10.04-x86-2.0.0.20235.deb

It will be installed in /opt/instantReality/

  • As of sept. 8, there is a missing bin/instantreality.jar archive in the Instant reality distribution for Ubuntu. I took the one found in the Debian distribution, but you also may try to use the one distributed for Windows. One also could try to use the directly the Debian version. After all, Ubuntu is Debian (I didn't try this ...)

Windows 7

(for version version 1.03, downloaded sept. 8 2010, running under Windows 7-64bit with a 32-bit Java 1.6.0_21)

(1) Install the prerequisites (above)
Remark: On my Windows 7 I had to fix the path to include Java (first time this happened since Win95. If you don't know about fixing a path, read about Environment variables and how to set the path variable)
(2) Download and install the DeepMatrix MU server from deepmatrix.org or Source Forge
Dezip the archive to c:\DeepMatrixIP9-v1_03
If not, you will have to fix the file paths in several bat files. See the next step
(3 - optional) Fix the path in the bat files if needed.
Replace the path of "DeepMatrixIP9-v1_03". E.g. if this directory sits in subdirectory called c:\soft then replace "DeepMatrixIP9-v1_03" by "soft\deepmatrix" in all the bat files.
(4) configure

In order to run both client an server on the same machine, keep something like the following:

  • In file client_application/win_local_matrixclientrc
# self explanatory
port 7744
# start room
Room Matrix
# Target host IP
Hostname 127.0.0.1
# Hostname 71.173.213.175
localbrowser 127.0.0.1
localport 4848
  • In file server_application/matrixrc
# port has to match client port parameter!
port 7744

Pay attention to this:

  • localport (e.g. 4848) must be different from port (e.g. 7744)
  • port in files win_local_matrixclientrc and matrixrc must match (e.g. 7744)
  • Only define a single Hostname (in the distro, there are two, I commented one)
(5) Use it
  • open the DeepMatrixIP9/server_application folder, double click the DeepMatrixIP9Server.bat file and give the server time to finish starting up.
  • open the DeepMatrixIP9-v1_01/client_application/Win_Local_Client folder and double click the DeepMatrixIP9_MU_Local_Client.bat file

If everything goes well, the server will listen on port 7744. Else, open a shell (command prompt), cd to the directories and type in the *.bat files, e.g.

cd c:\DeepMatrixIP9-v1_03
cd server_application
DeepMatrixIP9Sserver.bat

Then do the same with the client, i.e. open another command prompt. This way you can see both the server and the client's error messages ...

Example of a client error message:

Trying to connect to browser: 5 vrml.eai.ConnectionException: Not a Hermes Event - /127.0.0.1:4848

Ubuntu

(for version 1.03, downloaded Sept. 8 2010)

(1) Download the whole package
(2) Read the documentation (Remark
As of sept. 8 the documentation button in the homepage was broken ...)
(3) Unzip the archive into a folder /opt/DeepMatrixIP9-v1_03 and fix permissions
  • Folder name should be precisely /opt/DeepMatrixIP9-v1_03/, else you'll have to change the sh scripts.
sudo mkdir /opt/DeepMatrixIP9-v1_03

Then unzip, e.g. type

unzip -d /opt/DeepMatrixIP9-v1_03/ the_zip_file.zip

Finally it seems that there is a a file missing in the current Instant Player installation, i.e. bin/instantreality.jar. I tried to copy both the Debian and the Windows versions, but none made a difference....

(4) Make the shell scripts executable and chown the files

Make sure that you fix at least the three following ones (but there may be more ...)

cd /opt/DeepMatrixIP9-v1_03
chmod a+x server_application/Linux_DeepMatrixIP9Server.sh
chmod a+x client_application/Linux_Client/*.sh
chmod a+x client_application/browser_scripts/*.sh

Therefore it's a better idea to make them all executable with the following find command

find /opt/DeepMatrixIP9-v1_03 -name "*.sh" -type f -exec chmod 775 {} \;
(5) Fix hostname and the port numbers

Ports in server and client configuration files must match ... and they probably don't! Fix the following files:

  • client_application/win_local_matrixclientrc
  • server_application/matrixrc

There is no difference between the configuration of a linux and a windows client. If you use the same machine as server and client, do something like this:

  • Change the target host name and port in file /opt/DeepMatrixIP9-v1_03/client_application/win_local_matrixclientrc
port 7744
Hostname 127.0.0.1
  • Client local port (to connect to the player)
localport 4848
If you use another portname also fix file Screen.x3dv
port 4848
  • Verify in file /opt/DeepMatrixIP9-v1_03/server_application/matrixrc that the port matches the port in the client file.
port 7744

Finally, you may have to adjust the script that connects to Deepmatrix author's demo server

  • client_application/win_public_matrixlcientrc

I then suggest to chown all the files in both directories to your name or another user if you install this on a server

(6) Fix case of file and directory names (if needed)

The developer works with windows and may overlook case.....

To figure out which ones, look at the log file /opt/DeepMatrixIP9-v1_03/server_application/matrix_log or look at the error messages that appear when the server starts (see next point).

(7) Start the server (otherwise you also can use a public server somewhere else ...)

Open a new terminal under your name, then runit

/opt/DeepMatrixIP9-v1_03/server_application/Linux_DeepMatrixIP9Server.sh &

You should see something like:

........
MatrixD listening on /127.0.0.1:7744
9/8/10 5:10:28 PM main : MatrixD listening on /127.0.0.1:7744
(8) Run the client

Again, I suggest to run the client under your name

/opt/DeepMatrixIP9-v1_03/client_application/Linux_Client/Local_Linux_Client.sh

Admire the error message .... no, so far I didn't manage to get this up and running .... - Daniel K. Schneider 16:28, 10 September 2010 (CEST)

Links

Deepmatrix.org
Research using (old) Deepmatrix
Articles of historical interest