Skip to content
OpenHMD GDNative driver for Godot
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
OpenHMD @ 5d3fb31 Pulled upstream master for godot_headers, openhmd and libusb Mar 31, 2019
demo Linux build 2019-04-19 for Godot 3.1 Apr 19, 2019
godot_headers @ 196f1e9
hidapi @ 747309e Changed to OpenHMDs hidapi and pulled latest OpenHMD master May 7, 2018
libusb @ 2a7372d

OpenHMD GDNative driver for OpenHMD

I'll add more info here soon, this is still a work in progress and likely to change drastically.

The leading version of this repository now lives at:


Note that due to a breaking change in Godot 3.1 the current master of this repository creates a GDNative module that can only be used with Godot 3.1 or later.

If you want to build this module for Godot 3.0 please checkout the 3.0 branch.

Building this module

In order to compile this module you will have to clone the source code to disk. You will need a C/C++ compiler, python and scons installed. This is the same toolchain you will need in order to compile Godot from master. The documentation on Godot is a very good place to read up on this. It is too much information to duplicate here.

When cloning this repository make sure you also install all the submodules. Either clone with git clone --recursive or execute:

git submodules init
git submodules update

after cloning.

If you're pulling a newer version (re)execute the git submodules update command to make sure the modules are up to date. If you're interested in using different branches of the 3rd party modules just CD into their subfolder and you can execute git commands on those repositories.

Compiling If everything into place compiling should be pretty straight forward

For Linux: scons platform=linux For OSX: scons platform=osx For Windows: scons platform=windows


The source code for the module is released under MIT license (see license file). Note that the related products used, hidapi, libusb, openhmd and Godot itself all have their own licenses.

About this repository

This repository was created by and is maintained by Bastiaan Olij a.k.a. Mux213

You can follow me on twitter for regular updates here:

Videos about my work with Godot including tutorials on working with VR in Godot can by found on my youtube page:


The info below shows how to compile each 3rd party library however we currently do not use any of that. The scons file has all compilation instructions for all 3rd party tools. I'm leaving these instructions in the readme file because this is what we do want to move too to prevent issues coming from 3rd party modules changing or having special instructions for individual platforms.

X11 (Linux)

Clone this repository using git clone --recursive so all the needed packages will be cloned together with the source code.

After that build libusb, openhmd and hidapi, using the following commands:

export CORES=$(grep processor /proc/cpuinfo | wc -l)
cd libusb ; ./ ; ./configure ; make -j $CORES ; cd ..
cd hidapi ; ./bootstrap ; ./configure ; make -j $CORES ; cd ..
cd OpenHMD ; ./ ; ./configure ; make -j $CORES ; cd ..

To make things easier, set the GODOT_ROOT environment variable with the folder that holds the GODOT source code, for example, like this:

export GODOT_ROOT=../godot.git

The you can build by issuing the followin command:

GODOT_HEADERS=$GODOT_ROOT/modules/gdnative/include/ /bin/scons -j $CORES

Last, you can test your build by issuing:

$GODOT_ROOT/bin/ demo/project.godot


godot demo/project.godot



You can’t perform that action at this time.