Vrui VR

Download – Vrui VR

Click on links to access downloads. Software packages are additionally available on the UC Davis Keck Caves Git Hub Repository.


The Vrui VR toolkit is free software, distributed under the GNU General Public License. To build and install the toolkit, refer to the included README file. The process is usually as simple as “make” followed by “make install,” but some minor changes might have to be made according to the target operating system. There is also a quick installation guide aimed at novice Linux users.

Instructions on running and writing Vrui applications are contained as HTML documentation in the included Documentation directory.

All files on this download page are tagged with their SHA1 checksums, to protect downloaders from file corruption or tampering. To check a file after download, run “sha1sum <file name>” in a terminal window, and ensure that the resulting checksum matches the one displayed on this page.

Installation Scripts

To further simplify installation for novice Linux users, we now offer installation script files that automate the entire process, including installation of prerequisite packages and downloading the Vrui source tarball. Installation scripts are available for the following Linux distributions:

  • Fedora 20 (“Heisenbug”): Build-Fedora.sh (SHA1=77d7e5a5a2e653100a0928d44c6113a9c1f1b985). This script should also work for older or newer Fedora versions, but has only been tested on 20 (64 bit).
  • Ubuntu 14.04 (“Trusty Tahr”): Build-Ubuntu.sh (SHA1=e5037c186b4b9bea7dbf448558497472593da013). This script should also work for older or newer Ubuntu versions, but has only been tested on 14.04 (64 bit).

To download and run the scripts (on Ubuntu; on Fedora, replace “Build-Ubuntu.sh” with “Build-Fedora.sh”), type the following into a terminal window ($ indicates the terminal prompt, and ~ is shorthand for the user’s home directory, i.e., /home/<username>):

$ cd ~
$ wget http://idav.ucdavis.edu/~okreylos/ResDev/Vrui/Build-Ubuntu.sh
$ sha1sum Build-Ubuntu.sh

At this point, compare the output of sha1sum to the checksum displayed above, and do not proceed unless they match exactly. If they do match, finish the installation by running:

$ bash Build-Ubuntu.sh

The script will ask you to enter your password to install Vrui’s prerequisite packages, but will not perform any other administrator-level changes to your system. If everything works, a new window showing a spinning globe will pop up. That’s it! Refer to the Vrui HTML Documentation, section “Using Vrui Applications,” to learn how to interact with the spinning globe and other Vrui applications.

The script makes the following changes to the local system:

  • installs prerequisite packages (administator-level change)
  • creates a directory ~/src
  • downloads and unpacks current Vrui tarball into ~/src
  • creates a directory ~/Vrui-<version>
  • installs Vrui and Vrui example applications into ~/Vrui-<version>

To uninstall Vrui completely, simply delete the ~/Vrui-<version> directory.

Hint for experts: to install Vrui in a different location than ~/Vrui-<version>, say, in /usr/local, run:

$ bash Build-Ubuntu.sh <installation directory>

Uninstalling Vrui from /usr/local is a bit harder as installation files are spread throughout the existing /usr/local hierarchy; to keep it simple, we recommend installing in /usr/local/Vrui-<version> instead.

Installation on Mac OS X

To simplify installation of Vrui and its required libraries under Mac OS X, KeckCAVES provides a set of homebrew recipes.

Vrui builds and runs on all versions of Mac OS X starting with 10.4 (“Tiger”), but there are some minor graphics issues on versions 10.6 and higher due to several bugs Apple introduced into the OpenGL 3D graphics library.

Source Tarballs

The tarballs available for download below will expand into Vrui-<release>-<build version> directories in the current directory. SHA1 checksums have been provided to secure the tarballs against tampering.

  • Vrui-4.3-001 (3123KB) (SHA1=30cc2fd5524e6907359333a56a7eeafd403a111d) This release is marked beta. Continue using Vrui-4.2-006 for production systems. Significant improvements to support for head-mounted displays, specifically HTC Vive. Works with current SteamVR release as of 07/18/2017.
  • Vrui-4.2-006 (3082KB) (SHA1=8fc967fe33ac5fc200240c82775c427796d8a9a3) Added missing OpenVRHost configuration header; put in work-around for black screen problem when displays report their physical sizes as zero.
  • Vrui-4.2-005 (3081KB) (SHA1=3e7b78bef61474e0f32271f540a3cb516cea0e47) Minor improvements and fixes.
  • Vrui-4.2-004 (3075KB) (SHA1=82a7608c27061395a7d1df58b8095660e110d664) Fixed RoomSetup utility.
  • Vrui-4.2-003 (3075KB) (SHA1=5d7367150bd8c0b22f8123acdf926e40a38526bf) Fixed SteamVR configuration and set-up.
  • Vrui-4.2-002 (3074KB) (SHA1=54748cbee0b376562cc2aa432430686ba2b8fbca) Fixed current OpenVR ABI mismatch by editing openvr_driver.h in the Contributed/OpenVR directory. Vive tracking is working until Valve breaks it again. 🙂
  • Vrui-4.2-001 (3072KB) (SHA1=597875f159fe4bf607a61bc1b7baac135c352835) Pretty massive changes, including support for HTC Vive head-mounted display. Release notes to be delivered.
    Note: Valve changed the internal ABI of OpenVR’s tracking server just before I posted Vrui-4.2-001. As a result, Vive support is currently broken, unless you downgrade your SteamVR installation to a version prior to the update to OpenVR version 1.0.3. I am working on fixing this.

Archive of Released Versions of Vrui-3.xxx-yyy

  • Vrui-3.1-004 (2722KB) (SHA1=bc698a0ba96c7f6dae536e1cda6217ea77d7ac07) Fixed hang-ups and GL warnings when running without Nvidia driver; added built-in hotkey to toggle fullscreen mode (Win+F by default).
  • Vrui-3.1-003 (2716KB) (SHA1=b394f4e665f3547aacece87f88d0fe638b3d6fc0) Fixed crash on application start-up when a key is pressed before the mouse is moved.
  • Vrui-3.1-002 (2711KB) (SHA1=3c4ded4ed18e4a16394cdc1d625d7d0f4f84b108) Fixed some minor issues and improved build system.
  • Vrui-3.1-001 (2709KB) (SHA1=8b258cc5db7d94b1352f2defa935743a9b45b9f3) See these notes regarding the main changes between Vrui version 3.0 and 3.1.
  • Vrui-3.0-002 (2739KB) (SHA1=17737250bd2607b5d9f9e7f65a195508a0f93cf6) Fixed one minor oversight, and one doozy.
  • Vrui-3.0-001 (2739KB) (SHA1=d6c97e9ba12b948ae91866615ec578402a012a0d) See these notes regarding major changes between Vrui version 2.xxx-yyy and 3.xxx-yyy.

Archive of Released Versions of Vrui-2.xxx-yyy

  • Vrui-2.7-001 (2598KB) (SHA1=8cde85db539ff22bad30f05cb2b8b85467c20ff1) See these notes regarding the main changes between Vrui version 2.6 and 2.7.
  • Vrui-2.6-002 (2521KB) (SHA1=881eb64460af8fdf5dac3934d6b7ce1cde4b6d33) Fixed a linking problem with the Razer Hydra driver plug-in (02/05/2013: silently updated to fix two build problems).
  • Vrui-2.6-001 (2518KB) (SHA1=888cb8aaa656781f1f3fd21107d795eea1e63561) See these notes regarding the main changes between Vrui version 2.4 and 2.6.
  • Vrui-2.4-004 (2502KB) (SHA1=0fd094458489fdf558d08a27d093d2669bbf6783) Fixed “missing visual” error on Mac OS X 10.7 and some virtual machines.
  • Vrui-2.4-003 (2504KB) (SHA1=6a50017c2102bbb81623a1819475696108fb7b9d) Improved tools for USB input devices.
  • Vrui-2.4-002 (2498KB) (SHA1=0fcbca4d4a51fe4a39ed7ecd49d19c7a0fa9c110) Some minor mop-up fixes and tool improvements.
  • Vrui-2.4-001 (2480KB) (SHA1=3de1f62e07266f63a88bf5671ce22a70b191dea6) See these notes regarding the main changes between Vrui version 2.3 and 2.4.
  • Vrui-2.3-003 (2442KB) (SHA1=d8da3ef46abe400437c0a898340d11df8a4e4454) Minor fixes in viewpoint navigation tool, and to build with g++ 4.7.0.
  • Vrui-2.3-001 (2439KB) (SHA1=91d2581010a97d002a8ecaaf2774fe8a6d9fe937) See these notes regarding the main changes between Vrui version 2.2 and 2.3.
  • Vrui-2.2-003 (2413KB) (SHA1=1fc9006f2fddb243472e6ac59d0200ccf74c39da) Minor bug fix in build system only relevant to older Linuces.
  • Vrui-2.2-002 (2413KB) (SHA1=eaa8bf73fb134c83177be8188bb1f587878dc8c4) Minor bug fix only relevant to Mac OS X.
  • Vrui-2.2-001 (2413KB) (SHA1=52182e27c8238727e4cb7caea101b84d9f3b92ad) See these notes regarding the main changes between Vrui version 2.1 and 2.2.
  • Vrui-2.1-001 (2354KB) (SHA1=71d62d499898b8c589f74b3922d5e85dc5927019) See these notes regarding the main change between Vrui version 2.0 and 2.1.
  • Vrui-2.0-003 (2322KB) (SHA1=a97f289c988d12e036651c4d47faea9d083dcdb2)
  • Vrui-2.0-002 (2322KB) (SHA1=2e42a30eeec8456ed09c2c29b199affb88deb067)
  • Vrui-2.0-001 (2322KB) (SHA1=3fd60d6aa646098c62f89b7fda4a9f21a52b3617) See these notes regarding major changes between Vrui versions 1.0-xxx and version 2.xxx-yyy.
    Note: There is a slight mistake in the build instructions for Vrui-2.0-001, due to a last-minute change in build system. Instead of just running make install to build and install the software, you have to first run make, and then make install.

Archive of Released Versions of Vrui-1.0-xxx

Binary Packages

The following binary packages are an experimental feature to simplify Vrui installation on supported operating systems and machine architectures. Use at your own risk. To install, pick a Vrui version matching your operating system release and machine architecture, and download the Vrui-*.rpm file and (optionally) the Vrui-examples-*.rpm and/or Vrui-devel-*.rpm files. Install them using sudo yum localinstall Vrui-<version>-<release>.<arch>.<os>.rpm, optionally followed by sudo yum localinstall Vrui-examples-<version>-<release>.<arch>.<os>.rpm and/or sudo yum localinstall Vrui-devel-<version>-<release>.<arch>.<os>.rpm. Or, simply install them by clicking on the download links, and selecting “open with: Software Install” in the download dialog box. Either method will download all required dependencies, and install the package(s). Since the packages are not signed, you might have to confirm an exception; SHA1 checksums have been provided to secure the rpm files against tampering.

Available packages:

Supplementary files:

  • SPEC file (SHA1=055a2edb1d157a07b6113ba3caa9a6114af55cab) used to create the binary and development RPMs


This page has been translated into other languages by volunteers. When downloading files via an external web page, please ensure that their SHA1 checksums match the ones displayed on this page.