Playspace Mover has been deprecated! Check out OVR Advanced Settings on Steam instead: https://store.steampowered.com/app/1009850/OVR_Advanced_Settings/
Lets you drag around your playspace by gripping certain buttons. This allows you to "climb" around certain games, and allows you to adjust your floor level on the fly. This is compatible with KinectToVR, and can run in tandem with any SteamVR app.
If you want to help support this kind of development, feel free to support me through google wallet (naelstrof@gmail.com), paypal (https://paypal.me/naelstrof), or through my Digital Tip Jar!
Ready!
.PlayspaceMover can be configured to use different kinds of bindings, currently it only supports button presses. You can change the default buttons by setting button masks in the options. This can be done through either a shortcut, or a commandline.
I find the easiest way is to experiment using the command line, then set up a permanent config with a shortcut!
Open a command line in the folder with PlayspaceMover.exe like so:
If you're on Oculus, type ./PlayspaceMover.exe -l 128 -r 128 --resetButtonMask 2
then press enter!
This will set the A and X buttons to move the playspace, and if you press B and Y simultaneously it will reset your playspace!
If you're on Vive, try typing ./PlayspaceMover.exe -l 2 -r 2 --resetButtonMask 4
then press enter!
This will set the menu buttons to move your playspace, and if you press both grip buttons simultaneously it will reset your playspace!
PlayspaceMover supports some basic physics! Click here for a video. Here's a list of some of the options, their defaults, and what they do.
Option | Default | Description |
---|---|---|
--physics | N/A | If specified, enables physics. Physics will automatically be enabled anyway if you specify any of the options below though. |
--gravity | 9.81 | How much acceleration is applied to your y velocity every frame in meters per second. |
--friction | 8 | How much force is applied opposing your velocity while on the ground. |
--airFriction | 0 | How much force is applied opposing your velocity while in the air. |
--jumpMultiplier | 80 | How much force is applied when you try throwing yourself. |
--noGround | N/A | If specified, disables ground collision (You probably should have gravity set to 0 if you use this tag.) |
--leftTogglePhysicsMask | 0 | Specifies which buttons you have to hold simultaneously on the left controller to toggle physics. |
--rightTogglePhysicsMask | 0 | Specifies which buttons you have to hold simultaneously on the right controller to toggle physics. |
If your game requires full body tracking, you can make PlayspaceMover spawn some fake trackers! The following options enable/configure this feature.
Option | Default | Description |
---|---|---|
--fakeTrackers | N/A | Enables and spawns fake trackers that follow your HMD around. |
--orbitTracker | N/A | Alternative positioning scheme for the trackers |
--bodyHeight | 2 | Sets your body height in meters, it uses this to calculate where to place your feet and hip trackers. This also automatically enables --fakeTrackers. |
To make this change "permanent", you can create a new shortcut by right-click dragging it to your desktop.
Then edit it's properties by right-clicking on it, and hitting properties. Then append your desired button mask parameters to the "Target:" section. (Don't override it!)
Done! Double click on that shortcut to launch your configured playspace mover!
Try ./PlayspaceMover.exe --help
for more help on bit-masks and other stuff!
Here's a list of the known button bits. There's a couple more for Oculus that aren't listed because I haven't bothered testing for them!
Button | Bit | Mask |
---|---|---|
A/X | 7 | 128 |
B/Y | 1 | 2 |
Button | Bit | Mask |
---|---|---|
Menu | 1 | 2 |
Grip | 2 | 4 |
X:/Steam/steamapps/common/SteamVR/drivers/00vrinputemulator/bin/win64/driver_vrinputemulator.log
to read-only to prevent this!First we have to collect all the libraries that can't be grabbed using nuget.
PlayspaceMover/third-party
.PlayspaceMover/third-party
.PlayspaceMover/third-party
.PlayspaceMover/third-party/OpenVR-InputEmulator-1.3/VRInputEmulator.sln
with whichever Visual Studio you have.boost
, and boost-vc141
with nuget. (Right-click on the project and press Manage nuget packages.)PlayspaceMover/third-party/openvr/headers
as an include folder.PlayspaceMover/PlayspaceMover.sln
with Visual Studio.boost
, and boost-vc141
with nuget. (Right-click on the project and press Manage nuget packages.)