VRPN 07.30

Obtaining VRPN

Getting Started

VRPN main page

VRPN Redmine

VRPN FAQ

VRPN Support

Installing and Testing

Compiling and Modifying

Client code

Server code

Troubleshooting

Connections

Logging and Playback

.NET bindings for VRPN

Shared Objects

Sound

Text Messages

VRPN on PDAs

UNC-specific information

VRPN USB

Getting Started with VRPN

Configuring and compiling VRPN using the architecture-specific build scripts is described in this web page. You can also use CMake.

The quick summary to get a server running is:

  • Build vrpn_server (in Visual Studio, this is the "Main_Server" project).
  • Put the sample vrpn.cfg in the same directory as the vrpn_server executable.
  • Edit vrpn.cfg to uncommment whatever device(s) you have connected. (If you are using a 3DConnexion and you also want to use it to fly, you will need to uncomment an analogFly description and change it to point at the name of the 3DConnexion device).
  • Run vrpn_server. (On the Mac, if you run vrpn_server by double-clicking on it, this will by default run on a terminal application in your home directory, so it will not be able to find vrpn.cfg. If you open a terminal, then cd into the directory and run it from there it will work fine.)

To test the server, you can then compile the vrpn_print_devices program and run it, giving it the names and machine for the devices you configured in vrpn.cfg (perhaps Tracker0@localhost). It will print out messages from the device and let you know that the system is working.

Writing a client-side application is described in this web page. The quick summary to get your application running is:

  • Instantiate whichever of vrpn_Button_Remote, vrpn_Analog_Remote, or vrpn_Tracker_Remote objects you want to use.
  • Write appropriate handlers for each device, and then register those handlers on the objects.
  • Call the mainloop() function on each of the objects regularly to handle any new incoming messages.
  • VRPN will call your handlers whenever a button is pressed, an analog changes, etc.

Writing your own server application or an application that includes both server and client objects is described on this web page.

VRPN tutorials

VR Geeks has created an online tutorial for how to get started with VRPN.

They have another one for vrpn servers.