

2 March 1995
Wes Bethel
Lawrence Berkeley Laboratory

VRModules and Support for the Spaceball in AVS
README file

Two archive files comprise the distribution for the VRModules module
library and support for the Spaceball.  They are available (or will soon
be) via anonymous ftp from the International AVS Center at avs.ncsc.org.

The VRModules.tar.Z file contains all the source code for the AVS Modules.
The Spaceball.tar.Z file contains all of the necessary files to
build the Spaceball libraries needed by the AVS Modules.  At present,
the modules have been used extensively on the following platforms:

	Sparc, Solaris 2.X
	MIPS, Irix 4.X 
	Alpha, OSF1 V1.X, V2.0, V3.0 (Note: major difficulties under OSFV2.0)

The tarfiles are not organized into the usual format for AVS Modules
at the IAC.  The primary reason for complicating the distribution is
because there are a number of related modules, and they all make use
of non-AVS archive libraries.  Thus, you really need to grab both tarfiles,
build the entire set of modules and libraries.  Sorry about the
complications, but it's really for your own good. ;-)  Furthermore,
the pathnames in the Makefiles are unnecessarily complex, and reflect
the organization of software at our site.  I apologize for this, but
trust that it will be straightforward for a knowledgable user to change.

Now, after all of that, why should you bother with obtaining this source code?

For starters, surf to http://blondie.lbl.gov and check out the web-based
version of our paper that will be in the AVS 95 proceedings.  It describes
in extensive detail how a VR input device can be used on the desktop to
interface to a wide variety of computing tasks in a way that makes use
of the power of modular visualization environments.  We have had extensive
user testing of this software and the usage-methodologies.  The response
has been overwhelmingly positive.  

Furthermore, it is expected that this software will lay the groundwork
for integration of additional VR input devices into AVS.  Integration of
output devices is another matter entirely, and you probably won't see
that for some time to come.

The organization of the software in the tarfiles is roughly thus:

Spaceball:
	lib.dao.osf3/Makefile
	lib.mips.irix4/Makefile
	lib.sun4.sos5/Makefile
	src/[lots of .c and .h files]
	     architecture specific Makeinclude files

	In the above lib* directories will be created the spaceball
	libraries needed by the AVS modules below.  In addition to
	the archive files, a standalone executable is created which
	you can run from the command line that will indicate if your
	spaceball is working (this puppy is handy to have!).

VRModules:
	bin.dao.osf3/Makefile
	bin.mips.irix4/Makefile
	bin.sun4.sos5/Makefile
	src/[lots of .c and .h files]
	    Makeinclude script that builds AVS Module Libraries,
		installs it on your system, builds .topics files, etc.
	helpfiles/[lots of .txt files]
	paper/ postscript copy of paper for AVS 95 describing
		some of the theory, and how to use these tools.


This is a complete developer's environment for VR input devices.  Please
don't expect that you can yank a single module out of this release and
compile it without compiling the libraries first.  I apologize for the
complexity of the software tree.  However, I am required to maintain this
software on three architectures simultaneously, and this works ok for me.

Acknowledgements and a tip of the hat to Jim Wick of SpaceTec, Inc. who
kindly granted permission to release portions of the Spaceball code
so that people can use the code on their machines.

Finally, if you like these tools, please drop a line to ewbethel@lbl.gov.