Nim bindings for the Oculus VR SDK.
This package contains bindings to the Oculus SDK (libovr) for the Nim programming language. Oculus provides virtual reality head-mounted displays and positional tracking devices, such as the DK1, DK2 and GearVR.
This package is still under heavy development and may not fully work yet. The following platforms have been built and tested with the Oculus SDK 0.4.4 Beta:
Linux- Mac OSX
- Windows
To compile the bindings in this package you must have libovr, the Oculus VR SDK library, installed on your computer. Users of your program need to install the device drivers, which can be downloaded from the Oculus web site.
If your Linux distribution includes a package manager or community repository, it may already have pre-compiled binaries for both the Daemon and the SDK. For example, on ArchLinux the driver, udev rules and SDK are available in AUR (see ArchWiki for details).
Alternatively, you can download and install the SDK from the Oculus developer web site.
The Mac OSX version of the Oculus SDK currently only includes a static library. You need to acquire dynamic libraries for libovr before you can run programs compiled with this package.
At this time there are no pre-compiled libraries available online, but you can clone jherico's modified Oculus SDK from GitHub and build them yourself. cmake is required to compile libovr, and the easiest way to install it is either via MacPorts:
port install cmake
or via Homebrew:
brew install cmake
Then acquire and compile the modified Oculus SDK as follows:
git clone --recursive https://github.com/jherico/OculusSDK.git
cd OculusSDK
mkdir .build
cd .build
cmake .. -G Xcode -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=ON
xcodebuild -target ovr -configuration Release
The .build/output directory should now contain a libovr.dylib file, which can be copied into your program's folder.
The Windows version of the Oculus SDK currently only includes static libraries for use in Visual Studio. You need to acquire DLLs for libovr before you can run programs compiled with this package.
The easiest way is to download [JSPenguin's precompiled DLLs]
(https://jspenguin.org/software/ovrsdk/) and rename the files to libovr.dll
,
libovrd.dll
, libovr64.dll
or libovr64d.dll
, depending on which
configurations you wish to build for (32- or 64-bit, debug or release).
You can also clone [jherico's modified Oculus SDK] (https://github.com/jherico/OculusSDK) from GitHub and build the DLLs yourself.
This package does not have any dependencies to other Nim packages at this time.
Import the ovr module from this package to make the bindings available in your project:
import ovr
Please file an issue, submit a pull request or email us at [email protected] if this package is out of date or contains bugs. For all other issues related to Oculus devices or the device driver software visit the Oculus web sites below.