Skip to content

OpenVR (SteamVR) Endpoint for Amethyst.NET

License

Notifications You must be signed in to change notification settings

KinectToVR/plugin_OpenVR

Repository files navigation

OpenVR Amethyst service plugin

License

This project is licensed under the GNU GPL v3 License

Overview

This repo is a mixed implementation of the IServiceEndpoint interface,
providing Amethyst support for SteamVR (OpenVR), using the OpenVR SDK.
The bound API provided by Valve, and the plugin itself are written in C#
This repository also contains the Amethyst driver for OpenVR, using gRPC.

Downloads

You're going to find built plugins in repo Releases.

Build & Deploy

Both build and deployment instructions are available here.

  • vcpkg install glog:x64-windows-static gflags:x64-windows-static protobuf:x64-windows-static grpc:x64-windows-static
  • Open in Visual Studio and build the OpenVR driver (driver_AmethystBuild)
    You'll need to register it by vrpathreg adddriver <path to driver_Amethyst>
  • Publish the Amethyst plugin using the prepared publish profile
    (plugin_KinectV1PublishPublishOpen folder)
  • Copy the published plugin to the plugins folder of your local Amethyst installation
    or register by adding it to $env:AppData\Amethyst\amethystpaths.k2path
    {
     "external_plugins": [
         // Add the published plugin path here, this is an example:
         "F:\\source\\repos\\plugin_OpenVR\\plugin_OpenVR\\bin\\Release\\Publish"
     ]
    }

Wanna make one too? (K2API Devices Docs)

This repository contains templates for plugin types supported by Amethyst.
Install the templates by dotnet new install Amethyst.Plugins.Templates::1.2.0
and use them in Visual Studio (recommended) or straight from the DotNet CLI.
The project templates already contain most of the needed documentation,
although please feel free to check out the official wesite for more docs sometime.

The build and publishment workflow is the same as in this repo (excluding vendor deps).