Merge pull request #6 from OpenVR-Advanced-Settings/improve-docs

Add table of contents to readme, improve docs for building on windows and command line args
This commit is contained in:
Robin Appelman
2018-12-25 22:25:17 +01:00
committed by GitHub
2 changed files with 105 additions and 7 deletions
+71 -7
View File
@@ -1,11 +1,41 @@
![language](https://img.shields.io/badge/Language-C%2B%2B11%2C%20QML-green.svg) ![dependencies](https://img.shields.io/badge/Dependencies-OpenVR%2C%20Qt5-green.svg) ![license_gpl3](https://img.shields.io/badge/License-GPL%203.0-green.svg) [![Build status](https://ci.appveyor.com/api/projects/status/8oivf5xws6vsq2x3/branch/master?svg=true)](https://ci.appveyor.com/project/icewind1991/openvr-advancedsettings/branch/master)
> * [Features](#features)
> * [Usage](#usage)
> * [Installer](#installer)
> * [Standalone](#standalone)
> * [Command Line Arguments](#command_line_arguments)
> * [Desktop mode](#desktop_mode)
> * [Preview Builds](#preview_builds)
> * [Documentation](#documentation)
> * [Top Page](#top_page)
> * [SteamVR Page](#steamvr_page)
> * [Chaperone Page](#chaperone_page)
> * [Chaperone Proximity Warning Settings Page](#chaperone_proximity_page)
> * [Play Space Page](#play_space_page)
> * [Playspace Fix Page](#playspace_fix_page)
> * [Audio Page](#audio_page)
> * [Revive Page](#revive_page)
> * [Utilities Page](#utilities_page)
> * [Accessibility Page](#accessibility_page)
> * [Statistics Page](#statistics_page)
> * [Settings Page](#settings_page)
> * [How To Compile](#how_to_compile)
> * [Building on Windows](#building_on_windows)
> * [Building on Linux](#building_on_linux)
> * [Notes](#notes)
> * [Known Bugs](#known_bugs)
> * [License](#license)
<a name="top"></a>
# OpenVR Advanced Settings Overlay
Adds an overlay to the OpenVR dashboard that allows access to advanced settings.
![Example Screenshot](docs/screenshots/InVRScreenshot.png)
<a name="features"></a>
# Features
- Set supersampling values.
@@ -27,14 +57,17 @@ Adds an overlay to the OpenVR dashboard that allows access to advanced settings.
- Simple Alarm Clock
- Player height adjust toggle (Credits to mklim)
<a name="usage"></a>
# Usage
<a name="installer"></a>
## Installer
Download the newest installer from the [release section](https://github.com/OpenVR-Advanced-Settings/OpenVR-AdvancedSettings/releases) and execute it.
If you have an older standalone version installed, delete the old application folder first.
<a name="standalone"></a>
## Standalone
I am not currently providing standalone Archives if you want a standalone version you can:
@@ -44,16 +77,35 @@ To install for the first time simply start AdvancedSettings.exe once while Steam
To upgrade an existing installation first stop SteamVR and delete the old application folder (or override it). Then start SteamVR and run AdvancedSettings.exe once.
<a name="command_line_arguments"></a>
## Command Line Arguments
The application (`AdvancedSettings.exe`) can be run with the following five optional arguments:
`"-desktop"`: Creates a settings window on the desktop.
`"-nosound"`: Forces sound effects off.
`"-nomanifest"`: Forces not creating a `.vrmanifest`.
`"-installmanifest"`: Force installs the `.vrmanifest`.
`"-removemanifest"`: Force uninstalls the `.vrmanifest`.
<a name="desktop_mode"></a>
## Desktop mode
Executing startdesktopmode.bat from the application folder shows a window on the desktop instead of a vr overlay. Desktop mode can be used alongside an already running vr overlay instance.
<a name="preview_builds"></a>
## Preview builds
If you want to try latest and greatest unreleased features, you can download latest changes in the alpha branches of the repository.
<a name="documentation"></a>
# Documentation
<a name="top_page"></a>
## Top Page:
![Root Page](docs/screenshots/RootPage.png)
@@ -63,6 +115,7 @@ If you want to try latest and greatest unreleased features, you can download lat
- **Microphone**: Allows to set the microphone volume and to mute/unmute it.
- **Push-to-Talk**: Enable/disable push-to-talk and allows to apply push-to-talk profiles. Profiles can be created on the Audio page.
<a name="steamvr_page"></a>
## - SteamVR Page:
![SteamVR Page](docs/screenshots/SteamVRPage.png)
@@ -76,6 +129,7 @@ If you want to try latest and greatest unreleased features, you can download lat
- **Enable Always-on Reprojection**: Enable/disable forced reprojection.
- **Restart SteamVR**: Restart SteamVR (May crash the Steam overlay when SteamVR Home is running when you restart. Therefore I advice that you close SteamVR Home before restarting).
<a name="chaperone_page"></a>
## - Chaperone Page:
![Chaperone Page](docs/screenshots/ChaperonePage.png)
@@ -91,7 +145,7 @@ If you want to try latest and greatest unreleased features, you can download lat
- **Flip Orientation**: Flips the orientation of the play space.
- **Reload from Disk**: Reloads the chaperone bounds geometry from disk.
<a name="chaperone_proximity_page"></a>
## - Chaperone Proximity Warning Settings Page:
![Chaperone Proximity Warning Settings Page](docs/screenshots/ChaperoneWarningPage.png)
@@ -104,6 +158,7 @@ If you want to try latest and greatest unreleased features, you can download lat
- **Open dashboard**: Opens the dashboard when the user's distance to the chaperone falls below the configured activation distance. The idea is to pause the game (most single-player games auto-pause when the dashboard is shown) to give the user time for reorientation.
- **Velocity Dependent Fade/Activation Distance**: Dynamically modifies the chaperone's fade distance and the proximity warning's activation distance as a function of the player's speed. The used formula is: *distance = old_distance * ( 1 + distance_modifier * max(left_controller_speed, right_controller_speed, hmd_speed) )*
<a name="play_space_page"></a>
## - Play Space Page:
![Play Space Page](docs/screenshots/PlayspacePage.png)
@@ -113,6 +168,7 @@ Allows to temporarily move and rotate the center of the playspace. This allows t
- **Virtual Move Shortcut**: Allows moving the placespace center by holding down the application menu shortcut and moving the controller.
- **Adjust Chaperone**: When enabled then the chaperone bounds stay in place when the playspace is moved or rotated (so noone gets hurt). Unfortunately this does not work when moving up/down.
<a name="playspace_fix_page"></a>
## - Playspace Fix Page:
![Playspace Fix Page](docs/screenshots/FloorFixPage.png)
@@ -121,6 +177,7 @@ Allows to temporarily move and rotate the center of the playspace. This allows t
- **Fix Floor** Allows you to fix the height of your floor. Just place one controller on your floor and press the button.
- **Recenter Playspace** Besides fixing the floor height, also recenters the place space around the controller on the floor.
<a name="audio_page"></a>
## - Audio Page:
![Audio Page](docs/screenshots/AudioPage.png)
@@ -137,6 +194,7 @@ Allows to temporarily move and rotate the center of the playspace. This allows t
- **PTT Profile**: Allows you to apply/define/delete push-to-talk profiles that save buttons, controller and notification settings.
- **Audio Profile**: Allows you to apply/define/delete audio profiles that save playback devices, mute state, and volume.
<a name="revive_page"></a>
## - Revive Page:
![Revive Page](docs/screenshots/RevivePage.png)
@@ -159,6 +217,7 @@ Any changes to controller settings are immediately applied by Revive (Requires R
- **Z**: Allows to modify the touch controllers z-offset. (TouchZ setting the vrsettings file)
- **Controller Profile**: Allows to apply/define/delete controller profiles that save the controller settings (grip button mode, deadzone, sensitivity, pitch/yaw/roll and x/y/z-offsets).
<a name="utilities_page"></a>
## - Utilities Page:
![Utilities Page](docs/screenshots/UtilitiesPage.png)
@@ -169,12 +228,14 @@ Any changes to controller settings are immediately applied by Revive (Requires R
- **Steam Desktop Overlay Width:** Allows to increase the size of the Steam desktop overlay. Useful for multi-monitor setups.
<a name="accessibility_page"></a>
## - Accessibility Page:
![Accessibility Page](docs/screenshots/AccessibilityPage.png)
- **Adjust Player Height:** Offsets the player height to allows short or wheelchair-bound players to fully interact with height-limited applications by both boosting their height and being able to touch the in-game floor when necessary by pressing a configurable motion controller button.
<a name="statistics_page"></a>
## - Statistics Page:
![Statistics Page](docs/screenshots/StatisticsPage.png)
@@ -189,6 +250,7 @@ Any changes to controller settings are immediately applied by Revive (Requires R
- **Timed Out**: Number of times the currently running application timed out.
- **Reprojection Ratio**: Ratio of presented frames to reprojected frames.
<a name="settings_page"></a>
## - Settings Page:
![Settings Page](docs/screenshots/SettingsPage.png)
@@ -196,21 +258,21 @@ Any changes to controller settings are immediately applied by Revive (Requires R
- **Autostart:** Allows you to enable/disable auto start.
- **Force Revive Page:** Force the Revive page button on the root page to be visible.
<a name="how_to_compile"></a>
# How to Compile
Building has been tested with Qt 5.10 and Visual Studio 2017 community.
If both have been installed in their default paths than the project can be build using `build_windows.cmd`, this compiles the binary and copies all files necessary for execution into the output directory.
<a name="building_on_windows"></a>
## Building on Windows
The following environment variables should be set for the build script to work
- QT: `C:\Qt\5.10.1\msvc2017_64` or wherever you installed Qt.
- PLATFORM: `amd64` only x64 builds have been tested atm.
Full build instructions can be found [here](docs/building_for_windows.md).
<a name="building_on_linux"></a>
## Building on Linux
If you want to run Advanced Settings on linux you can build it yourself using `qmake` and `make` or using Qt Creator, you'll have to copy the `res` folder from the `src` folder into folder that contains the binary
and copy `third-party/openvr/lib/linux64/libopenvr_api.so` into your systems library path.
<a name="notes"></a>
# Notes:
- The center marker and the play space marker are provided by the chaperone subsystem, and therefore they will have the same color and visibility settings as the chaperone bounds.
@@ -219,10 +281,12 @@ and copy `third-party/openvr/lib/linux64/libopenvr_api.so` into your systems lib
- You can modify the shutdown wait time when restarting SteamVR by opening restartvrserver.bat and changing the number behind "timeout /t" (unit is seconds).
<a name="known_bugs"></a>
# Known Bugs
- None yet.
<a name="license"></a>
# License
This software is released under GPL 3.0.
+34
View File
@@ -0,0 +1,34 @@
# Building for Windows
> * [Requirements](#requirements)
> * [Locations and Environment Variables](#locs_and_envs)
> * [Building](#features)
<a name="requirements"></a>
## Requirements
For compiling:
1. Microsoft Visual Studio (tested on 2017 Community)
2. Qt Framework (tested on 5.10 and 5.11)
Additionally, for fully building portable and installer release versions:
3. 7zip Command Line
4. Nullsoft Scriptable Install System (NSIS)
<a name="locs_and_envs"></a>
## Locations and Environment Variables
Visual Studio must be installed in the default location of `C:\Program Files (x86)\Microsoft Visual Studio\2017\Community`.
The `QT` environment variable must be set to the location of your Qt installation (for example `C:\Qt\5.11.1\msvc2017_64`).
The `PLATFORM` environment variable must be set to `amd64`.
For building the portable and installer release versions, the locations of 7zip Command Line (`7z.exe`) and NSIS (`makensis.exe`) must be in the `PATH` environment variable.
<a name="building"></a>
## Building
With the programs above installed and environment variables set, go into the root folder of the repository and first run `build_windows.cmd` and then `package.cmd`. Compiled binaries along with everything needed to run portable will output to `.\bin\win64\AdvancedSettings\`.