VRPN for Quest3D v.1.0
VRPN (Virtual Reality Peripheral Network) is a multiplatform, free, open source tool designed to implement network-transparent interface between software applications and physical VR devices (trackers, joysticks, etc.), by offering abstraction layer for software usage.
Using VRPN – most tracking and control devices can be represented as sets of analogue values (analogs), binary values (buttons), position and orientation values (trackers).
Server side of the VRPN can be used on many platforms including SGI/Irix, PC/Win32, PC/Linux, Mac/OSX and many others. VRPN natively includes support of many devices: Joysticks, Ascension Flock-of-birds, Polhemus Fastrack, InterSense trackers, Nintendo Wii Remote, and many more.
You can get VRPN and read more about this tool on the official site:
And on VRGeeks website (includes tutorial for starters):
VRPN client channel
“VRPN client” Quest3D channel designed as basic interface for VRPN in Quest3D environment and applications for Windows platform. It’s stable version 1.0 available from this page for free.
Example of channel usage
“VRPN client” is straight-forward to use channel; here is the list of its children:
Configuration – text channel, where device name and VRPN server host are configured in form of “DeviceName@HostName” for example: “Mouse0@localhost” or "joyWin32@192.168.2.48"
Set of Analogs – floating point values that store device axes states
Set of Buttons – binary values that store device button states
Set of Tracker Positions – positions of the trackers
Set of Tracker Rotations – angular rotations of the trackers in radians
Calling the “VRPN client” channel will connect it to VRPN server and set its values.
User can configure number of VRPN children values according to devices that he uses. Properly configured server needed to be launched before usage.
To install “VRPN client” channel put VRPN_client.dll to “Quest3D\Channels” directory.
NEW! new version improve performance with multiple devices, and also supports Quaternion data type to output rotations (use VRPN_client_quat.dll and Quaternion package).
Here you can download:
VRPN client for Q3D 4.3
VRPN client for Q3D 4.3.2
Very simple example CGR
How VRPN works
VRPN incorporates both server side and client side, which can communicate with each other over TCP/IP protocol. Both server and client side can be launched on different computers, even with different operating systems.
VRPN server need to be launched on the computer, with connected input devices.
VRPN client need to be incorporated into VR application to receive data from input devices.
How VRPN works
Server need to be configured (and sometimes recompiled) to work with different device configurations. In details you can get info about VRPN server configuration from website:
As example (to transfer data from mouse and joystick), you can use executable of the VRPN server compiled under Win32 system from here:
To use joystick delete symbol "#" before vrpn_Joywin32 in vrpn.cfg file.