Hotrian / HeadlessOverlayToolkit

Create Cross Application OpenVR Overlays! Made with Unity.
59 stars 16 forks source link

This is the master branch for the Headless Overlay Toolkit project.

This branch is currently out of development! Are you looking for the redux branch?

This is a stripped down version of the SteamVR Unity Plugin with a custom Overlay script that allows for a number of things not built into the default Overlay script. For instance, this Overlay script allows drawing multiple Overlays at once, as well as placing Overlays into the world.

To use this, grab Unity 5.3.6f1 and roll your own by cloning the repo or downloading the source as a zip. Other versions of Unity may work, but this Repo has only been tested with v5.3.5 and v5.3.6. Newer versions of Unity (5.4+) will likely have issues.

Demos:

Note that these demos were taken during development, and do not necessarily represent the current state of the branch.

Features:

Known Issues:

Additional Notes:

If you want to run this headless (Windows OS Only):

It seems like -batchmode no longer does what it is supposed to do, and that you cannot run HOTK using -batchmode.

Instead, I have written a script that causes the Standalone Player Window to move off screen, and hide itself from the Taskbar. This is very similar to running headless, except the Splash Screen will still display if you are using Unity Personal Edition and cannot disable the Splash.

To run this in sort-of-headless mode:

Now when you launch your application, you should see the Splash Screen (if on Unity Personal or not disabled), then the application should appear to close, as the Window should disappear and it will no longer appear on the Taskbar or Alt+Tab. However, if you check Task Manager you should see the application is in fact running in the background, and if you check SteamVR you should see your Overlay(s) as before.

By Disabling/Deleting the Main Camera, you can further reduce resource usage. When there is no Main Camera, Unity will no longer render anything to the Desktop Window, which is fine if you are trying to run Headless. Your Overlays will still be sent to SteamVR and rendered as before.