gdvrpn/README.md

1.6 KiB

gdvrpn

A native GDScript implementation of the VRPN client protocol.

Background

VR hardware and software provide commonly an interface for tracking data by implementing a VPRN server. Binding the actual VRPN client library into an extension is proven and working poses a burden for maintenance and deployability. To solve this gdvrpn allows for a native integration of VRPN tracking in Godot.

This project does not implement any server components or forwarding and is only tested with a limited number of devices in our lab. Currently, UDP mode is under development.

Tracking with an OptiTrack System

Install

Install the project from the AssetLib in Godot or directly from the repository.

Usage

There are two components, a VRPN_Client and needed for using this addon:

VPRPN_Client is mandatory and implements the network component of this addon that parses the data received and broadcasts them to the respective receivers within the scene tree.

VRPN_Tracker is a receiver taking pose information (i.e. position and orientation) of a rigid body and applies it to the nodes global transform.

VRPN_Button is a receiver of button events.

Example

For some inspiration try the example spin_tracker.tscn. To create a test input use the shipped VRPN config file test/vrpn.test.cfg as follows (from the root of this repository)

$> vrpn_server -f addons/vrpn/tests/vrpn.test.cfg

License

This project is licensed under the terms of the MIT License