#Copyright (C) 1998 Tuomas J. Lukka, 2001, 2002 John Stewart, CRC Canada.
#DISTRIBUTED WITH NO WARRANTY, EXPRESS OR IMPLIED.
#See the GNU Library General Public License (file COPYING in the distribution)
#for conditions of use and redistribution, EXCEPT on the files
#which belong under the mozilla public license.
Most installs are very simple.
gunzip FreeWRL-version-tar.gz
untar FreeWRL-version.tar
cd FreeWRL-version
perl Makefile.PL
make install
For the sound engine, gunzip it, untar it, cd into the directory, and "make install".
Red Hat 8.0 and MacOS-X will be the build platforms for FreeWRL 0.38 and beyond.
Mac OS-X users: Congradulations! You now can compile and run FreeWRL. We have put specific install directions here.
Solaris users: Congradulations are in order for you, too! Alex Prengel of MIT has put specific install directions here.
For people with older versions of Linux, we have also tested the FreeWRL 0.29 build on brand new installs of:
Others have tested FreeWRL on:
Detailed install notes can be found in this file (INSTALL.html) in the FreeWRL 0.29 release; most of what is in there should help with installing FreeWRL 0.32 and beyond on these platforms.
This install is divided up into the following sections:
This is the place to start. Once it runs, you can configure more options for FreeWRL to use, like Netscape Plugin functionality.
You can get FreeWRL from: http://sourceforge.net/projects/freewrl/
You can also access the cvs repository. The way to do it is explained at:
- http://sourceforge.net/cvs/?group_id=9120
OpenGL is a "standard" on all distributions.
Some OpenGL implementations are better than others, though. The two references used are the SGI OpenGL implementation, and Mesa from http://www.mesa3d.org.
Text nodes now really use the OpenGL tesselator; you may experience character dropouts (VooDoo3 cards), or even core dumps (older GeForce drivers), if your OpenGL drivers do not use the latest OpenGL.
If you fall into this category, there are various options available to you, the simplest is to either ignore the errors, or install Mesa as indicated above.
The java compiler, javac must be in your path. the command "which javac" will tell you if you have this installed.
RedHat 8.0 - get and install the jdkgcj-0.2.3-1.i386.rpm rpm package off of disc 3 in the RedHat set.
RedHat 7.2 needed Suns Java 1.2 or above installed. The open-source Java equivalent, Kaffe, is not quite up to the job yet. With Kaffe, you will get Java compile errors, so for now, please use Suns Java 1.2 or above.
Java can be found at http://www.blackdown.org.
I have included various configuration files to show examples of what can be done. Of particular interest are vrml.conf.rh7.2 and vrml.conf.localmesa. You will wish to replace vrml.conf with one of these files.
If you are running on Irix copy vrml.conf.irix over vrml.conf, and remove the Plugin directory; Perl and Netscape are compiled differently, so at this point in time you can not use FreeWRL and Netscape under Irix.
One additional Irix note: if your version of "make" is not gnumake, you will need to install it, and use the following script to "make" freewrl. (this is on the bug list...)
$ for i in * ; do (cd $i && gmake) ; done
$ gmake
FreeType version 2 has been in distributions for well over a year; FreeWRL now uses it. Check that you have the library installed; the command "ldconfig -p | grep freetype" will print the path, if it is installed. If you have an older distribution, you can get a new version of FreeType from http://www.freetype.org.
If you need them, the fonts that freewrl uses in a file called freewrl-fonts, available on http://www.crc.ca/en/html/FreeWRL/downloads/downloads. Untar this file, and point the FREETYPE_FONT_PATH to this directory.
NOTE: some systems seem to have placed the FreeType include files properly, others have the include files spread all over the place. for RedHat 7.2, make sure you have a look at the FreeType section of vrml.conf.rh7.2.
Digest-MD5-2.09
HTML-Parser-2.25
MIME-Base64-2.11
URI-1.04
libnet-1.0607
libwww-perl-5.47
Image-Base-1.07 Needed for RedHat 7.2
Installing these modules is a no-brainer; just untar
each module as root, then go into the directory, and
perl Makefile.PL
make
make install
perl Makefile.PL
make
make install (you have to be root of course)
NOTE: You only need to do this if you wish to debug the SAI code.
- mknod.javapipej p
- mknod.javapipep p
There are quite a few tests in the "tests" directory.
Run all of the numbered files (and any others that you want!) in the tests directory. Note that some use javascript, so you will be testing javascript, too.
4.1) Javascript:
In the basic install, you should have installed the java support to allow some of the test programs in the tests directory to work. (eg, 7.wrl, 8.wrl, and 10.wrl)
If these programs don't run, then go back and make FreeWRL it so that it does work.
4.2) EAIcode:
NOTE: This is in active development, so may not work.
The EAI classes have been gathered into the Java archive vrml.jar. A java.policy file is used to handle EAI code access to the local filesystem and sockets.
4.2) SAIcode:
NOTE: This is in active development, so may not work.
5.0 Getting it all to work with Netscape/Mozilla.
If FreeWRL was built correctly, then the Netscape/Mozilla Plugin was installed in the browser plugins directory. Stop and start your browser, and enter "about:plugins" in the url entry box. You should see the FreeWRL plugin listed.
6.0 X3D compatibility.
6.1) Go to the x3d directory, and follow the instructions.
7.0 Getting it to work with external sensors.
7.1) CRC's "Flying Chair".
This chair can be seen in the "links" section. The code to run this chair is freely available, at: http://sourceforge.net/projects/mvip/
7.2) Thrustmaster style Joystick
The 2-D joystick interface is available at: http://www.crc.ca/FreeWRL/download/joystick/Joystick-1.0.tar.gz, and the 3D joystick interface is available as part of the chair code, as outlined above.
7.3) Data Glove.
This interface is being actively worked on.
6.4) Spaceball 3D positioning mouse.
This interface is being actively worked on.
7.4) Touchscreens.
One of our FreeWRL users has made a very interesting touchscreen interface to FreeWRL. This code will be incorporated into FreeWRL when it is complete.
7.5) Polhemus/Virtual Research goggles with position sensor.
This works very well with the "Flying Chair" mentioned above, but if you wish to run this alone, without joystick (and chair!), here are the directions:7.5.1) Polhemus Position Sensor.
- Untar and compile the code in the Polhemus 1.0. tarfile.
- run minicom (with modem in it strings set to null) and see if you can get any input.
- align the Fastrak. I use the A0 command, as found in the manual, to do the allignment. ("Enhanced Allignment Procedure, pg 48a of my manual-Sept 1998)
eg:
(in minicom)
A0
P
(now, move the sensor 24" in positive X axis)
P
(now, move the sensor 24" in positive Y axis)
P
Exit minicom
- run the program Polhemus/termite to get the polhemus interface code working. Note - headset should be pointed at where you want "front" to be.
7.5.2) Virtual Research goggles
An option has been added to FreeWRL to run in full screen mode just for these goggles. Start FreeWRL with the "-fullscreen" option; eg:
freewrl tests/1.wrl -best -fullscreen -geometry 640x480