GithubHelp home page GithubHelp logo

honeyselectvr's Introduction

HoneySelectVR

This is an experimental mod for the trial edition of Honey Select that introduces VR capabilities for both the Vive and the Oculus Rift using OpenVR. It provides both a seated and a standing mode to be usable in any environment.

Installation

  1. Download the latest release and extract it into your HoneySelectTrial directory.
  2. Run HoneySelectTrial_64VR.exe
  3. Enjoy!

Caution: SteamVR needs to be installed, set up, and running! Rift users might otherwise experience a weird "monitor" effect.

Modes & Controls

HoneySelectVR comes in two modes:

Mode Description
Seated Default mode. This mode lets you play the game with a mouse, keyboard, or gamepad.
The controls are essentially the same as in the main game. The screen is presented on a big monitor in front of you.
Standing As soon as tracked controllers are registered by the game, it switches into standing mode, also called room scale mode. In this mode, you can freely move around and use your Vive or Touch controllers to stuff.

Seated Mode

As stated earlier, the controls are basically the same as in the main game with the exception of a few VR-related shortcuts. You are presented with a screen in front of your that replaces your monitor and can be configured via the settings or via shortcuts (see below).

Keyboard Shortcuts

Keys Effect
Ctrl+C, Ctrl+C Change to standing mode.
Ctrl+C, Ctrl+V Enable (very experimental) third person camera. Was used for this video.
Alt+S Save settings (IPD, screen position, etc.).
Alt+L Load settings (last saved state).
Ctrl+Alt+L Reset settings to the initial state.
F4 Switch GUI projection mode (flat, curved, spherical).
F5 Toggle camera lock (enabled by default). This prevents the camera to tilt because such movements are known to cause cyber sickness.
Ctrl+F5 Apply shaders (only for the brave)
F12 Recenter
NumPad +
NumPad –
Move GUI up / down.
Ctrl+Shift+NumPad +
Ctrl+Shift+NumPad –
Move GUI left / right
Ctrl+NumPad +
Ctrl+NumPad –
Increase / decrease GUI size.
Alt+NumPad +
Alt+NumPad –
Increase / decrease player scale
Shift+NumPad +
Shift+NumPad –
Increase / decrease GUI distance

Standing Mode

The standing mode is where things start to get interesting. This mode is pretty much disconnected from the usual game in that it comes with its very own controls -- although you can still use your mouse and your keyboard.

Keyboard Shortcuts

Keys Effect
Ctrl+C, Ctrl+C Change to s mode.
Ctrl+C, Ctrl+V Enable (very experimental) third person camera. Was used for this video.
Alt+S Save settings (IPD, screen position, etc.).
Alt+L Load settings (last saved state).
Ctrl+Alt+L Reset settings to the initial state.
Ctrl+F5 Apply shaders (only for the brave)
Alt+NumPad +
Alt+NumPad –
Increase / decrease player scale

Tools

These tools are mainly meant to be used in standing mode but some of them are also available in seated mode. By default, your left hand will start with the menu tool and your right hand will start with the warp tool. In order to change them on either hand, press the menu button on your Vive controller. See here an overview of buttons.

You can get in-game help any time by holding the menu button!

Menu Tool (seated / standing)

With the menu tool you can interact with the user interface of the game. There are, in fact, two ways you can control the mouse: a two-handed way that makes use of a laser pointer, and a one-handed way that lets you use your trackpad like a ... touchpad!

Laser pointer

To use the laser pointer, simply point the other controller at the menu screen. A laser pointer will appear and you can easily interact with the UI. To make a click, press the trigger button.

Trackpad

To use the trackpad, slide with your thumb over the trackpad and the mouse cursor will move accordingly. To make a click, press the trackpad.

Attaching, Detaching and Resizing the Menu

It's possible to detach and resize the menu you're holding at any point in the game.

Simply press the grip button to "let go" of the menu screen -- the screen will then stay put where you left it. You can even use other tools and still interact with the screen using the laser pointer mechanism.

Furthermore, it's possible to resize the screen. In order to do that, point both your controllers at a screen, press the trigger button, and move the controllers apart. It's also possible to move the screen around like this.

Lastly, to take control of the screen again, press the grip button once more.

Warp Tool (standing)

The warp tool is only available in room scale mode and allows you to jump around in the scene.

Warping

In order to warp, touch the trackpad, choose your position and press. While touching the trackpad you are able to see:

  1. Where you will warp to
  2. Your play area
  3. A HMD that further shows where your head will be

You can also rotate your play area while touching the trackpad by drawing circles with your thumb.

Changing Scale and Height

It's also possible to change scale and height with this tool, although it's a bit cumbersome at the moment. To do this, hold the trackpad pressed before warping. You can now change your future height by moving the Vive controller up and down and your scale by moving back and forth. Note that you can only change one of those two each time.

By pressing the grip button you can reset the scale and height.

Settings & Tweaks

Settings can be changed in the file vr_settings.xml, which is generated the first time you start the game. Use RenderScale to tweak the resolution, not the internal resolution dialog, as that one will currently only change the resolution of the GUI.

Tag Default Effect Mode
<Distance> 0.3 Sets the distance between the camera and the GUI at [0,0,0]. Seated
<Angle> 170 Sets the width of the arc the GUI takes up. Seated
<IPDScale> 1 Sets the scale of the camera. The higher, the more gigantic the player is. Seated / Standing
<OffsetY> 0 Sets the vertical offset of the GUI in meters. Seated
<Rotation> 0 Sets by how many degrees the GUI is rotated (around the y / up axis) Seated
<Rumble> True Sets whether or not rumble is activated. Seated / Standing
<RenderScale> 1 Sets the render scale of the renderer. Increase for better quality but less performance, decrease for more performance but poor quality. Seated / Standing
<MirrorScreen> False Sets whether or not the view should be mirrored in the game window. Seated / Standing
<ApplyShaders> False Sets whether or not post-processing shaders should automatically be applied to the camera. Seated / Standing

Building HoneySelectVR

HoneySelectVR depends on the VRGIN library which is included as a submodule. It is therefore important that when you clone the project, you clone it recursively.

git clone --recursive https://github.com/Eusth/HoneySelectVR.git
cd HoneySelectVR

After cloning the repo and setting up the submodule, you should be able to compile the project by simply opening the *.sln file and building.

Note that there is a build configuration called "Install" that will extract your Honey Select Trial install directory from the registry and copy the files where they belong.

honeyselectvr's People

Contributors

eusth avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.