Online Manual v1.3.0 (Update at 2022/06/16)
- Application Startup
- Basic Operation
- Change Settings on SteamVR Dashboard
- Basic Settings
- Image Saving Function / Settings
- Translation and Text Recognition Function / Settings
- 2D Code Reading Function / Settings
- Advanced Settings
- Transfer of configuration data
1. Application Startup
After extracting the compressed file downloaded from booth, execute “VRHandsFrame.exe” in the folder.
After execution, SteamVR will launch at the same time.
(If SteamVR is already running, only the application will launch)
* the application does not work properly if it is placed in a location containing multi-bytes characters.
please be careful where you install the application.
The first time VRHandsFrame is launched, it will be registered in the startup settings of SteamVR.
After the second time, it will automatically launch linked to the startup of SteamVR.
Each direct execution of VRHandsFrame.exe will overwrite the startup settings.
If you have moved the location of the app folder or want to run a different version of the app, run VRHandsFrame.exe directly from the target folder to override the startup settings.
If you wish to remove the auto startup settings, please configure the SteamVR settings.
2. Basic Operation
Hold both hands close together while pressing the grip buttons on the two-handed controller.
Hold a hand-sign pose as if you were forming a frame.
While you keep the framing pose, a white frame continue to generate in a clockwise direction.
When frame generation is complete, the frame color changes.
After the frame color changes, the assigned function becomes available.
When the controller is moved with the grip held down, the frame scales accordingly.
Once the frame is fully generated, the angle and positioning of the controller can be changed.
Move the controller to bring the object into the frame.
Pressing the trigger button on either the left or right controller while holding the grip down executes the assigned function.
If both left and right controller triggers are pressed, the frame is fixed at the position at the moment of pressing, and the timer function is activated. (Default timer is 5 seconds)
Two different functions can be performed depending on the position of the two hands at the start of frame generation.
(Image saving and translation functions are assigned by default)
If the trigger/grip presses interfere with actions of each VR game, you may avoid that interference by changing the “Reverse Trigger Roles and Grip Roles” or “Use Button/Trigger Touch Action” items in the Advanced Settings.
If the area in the frame is extremely too narrow or too wide, the area cannot be determined.
The frame color is used to determine the area. If the RGB values of the background/object are extremely similar to the frame color, it may fail to recognize the area.
3. Change Settings on SteamVR Dashboard
Selecting the VRHandsFrame icon on the SteamVR Dashboard with the pointer will bring up the settings screen. Various settings can be changed here.
To change the settings, select the red button “保存 Save” on the settings screen.
VRHandsFrame settings can be switched between “Global Settings” and “Application Settings”.
This setting is commonly available regardless of the game being launched.
Individual settings that can be saved for each game/application running on SteamVR.
To switch settings, select the green button on the dashboard “Use Global settings” or “Use Application Settings”.
If you switch settings before selecting the “保存 Save” button, the settings before saving will be lost. Please be careful.
4. Basic Settings
Select the “基本設定” tab on the dashboard to change basic settings.
Select the function to be assigned to the hand sign shown on the left from “Photo”, “Translation”, and “2D Code”.
Sets the color of the frame to be assigned to the hand sign shown on the left.
Sets the duration required to maintain the hand sign before the function becomes available.
[Frame Disable Duration]
Sets the duration from when the hand sign is released until the frame is completely erased (returns to the standby state).
Sets the number of seconds to count when using the timer function.
Sets sound effect ON/OFF.
Choose which eye’s view to refer.
5. Image Saving Function / Settings
The area within the frame is cropped as an image.
Since the VR view is cropped as it is, the UI of another overlay application may be reflected in the image.
In the default state, the images are saved to the folder “VRHandsFrame” in My Pictures. In addition, captured images are saved in subfolders for each application.
Please Select to the “Photo” tab to change settings.
[Image Save Path]:
You can set the path to save the image. Copy the path you want to save on the desktop and select the “Paste” button. If you want to restore the default settings, select the “Default” button.
6. Translation and Text Recognition Function / Settings
Recognizes characters reflected in the image within the frame and translates them into the respective languages.
After the translation results are displayed, you can page forward with the right hand trigger and backward with the left hand trigger. To exit the translation function, press the right trigger at the end of the page, or press both hand triggers simultaneously in the middle of the page.
The default character recognition engine uses the engine provided by the Windows system.
Therefore, if you want to use the default character recognition, you need to install Windows language packs for each language. Please refer to the following manual to install the language pack for the character recognition target.
VRHandsFrame’s translation functionality allows users to share a single translation server by default. The translation server uses a service called Google App Script (GAS), which limits the number of translations (5000 times/day). This means that, by default, 5000 times/day of translation resources are shared by all VRHandsFrame users.
You can individually set up your own personal GAS translation server or use some translation engines (DeepL, Azure) contracted by yourself.
You can also setup personal translation servers.
By setting up a translation server as GAS settings, each user can use the full 5000 times/day translation resource.
For more information on setting up a personal translation server, please refer to the following additional manuals
In Addition, VRHandsFrame also enables highly accurate image and text recognition using the Google Cloud Vision API. The installation of a language pack is not required to use the Vision API, but additional configuration is necessary.
Due to the use of Google’s service, there is a limit of 1000 times/month of character recognition that can be used for free, and 1001 times or more will be charged to Google’s service.
See additional manuals below for details.
Appendix：Use Google Cloud Vision API
Character Recognition and Translation Engine Comparison Table
Please Select the “Translation” tab to change the settings on the dashboard.
[Language from Translate]:
Set the translation source language. (24 languages)
[Language to Translate]:
Set the translation target language. (24 languages)
When the source and target languages are the same, the text recognition results are displayed. Please use this function to check the recognition accuracy.
Select the font size for the translation results (S / M / L)
Set the translation engine. By default, Google App Script (GAS) is used.
If you wish to use an additional translation engine, set the API key you obtained in the following Config file.
[Translation Engine Settings File] \VRHandsFrame_Data\StreamingAssets\config\translation_api.json
Use Google App Script(GAS). Default setting.
Use DeepL API (Free/Pro). API key setting is required.
Use Microsoft Azure Translator API. API key setting is required.
Select “global” for the resource region in Azure Settings Web Page.
Basically, use DeepL API.
For languages not supported by DeepL API (Traditional Chinese, Korean), use Azure API or GAS.
Set up a Google Apps Script API Key (GAS Key) for your personal translation server.
Please refer to the additional manual for setting up.
7. 2D Code Reading Function / Settings
The 2D code displayed on the image in the frame is read.
Place the 2D code in the frame from the front, avoiding an oblique angle as much as possible. If the reading result is a URL, press the trigger to open the browser on the desktop.
Please go to the “2D Code” tab to change the settings on the dashboard.
Select font size for 2D code reading results (S / M / L)
8. Advanced Settings
You can change the advanced settings of VRHandsFrame.
To change the settings, select the “詳細設定” tab.
Since there are multiple setting screens, each selection switches the page.
Advanced Settings 1
[Reverse Trigger Roles and Grip Roles]:
Turning the setting ON will swap the roles of the trigger and grip on the VRHandsFrame.
[Use Button/Trigger Touch Action]:
When the setting is turned on, the touch of the “button” and “trigger” can be assigned to perform hand sign conditions and functions instead of pressing the “grip” and “trigger”.
* Some controllers do not support touch operation of triggers due to hardware specifications.
Binding of various controllers when [Use Button/Trigger Touch Action] is turned on
|Controllers||Generate the frame||Fix the frame|
|Oculus Touch Controller||Touch right A + left X button||Touch trigger|
|Vive Controller||Touch Right + left trackpad ||Touch trigger|
|Index Controller||Touch right A + left A button||Touch trigger|
|Vive Cosmos Controller||Touch right A + left X button||Press trigger|
|Windows MR Controller||Touch Right + left trackpad ||Press trigger|
[Disable Functions while Running Current App]:
Turning the setting ON will disable VRHandsFrame all functionality when using the current app.
(assumes use of Application Settings)
[Adjust Scale of Generating Frame]:
Adjusts the size of the generated frame.
The larger this value is, the closer the frame generation criteria will be to the midpoint of both hands.
The smaller this value is, the farther the frame generation criteria will be to the midpoint of both hands.
(This is intended to be used as a workaround for cases where the frame is covered by the avatar’s hands.)
[Threshold of Detecting Frame]:
Sets the threshold for frame detection. (Default value: 5)
If frames cannot be detected due to differences in CPU or HMD rendering processes, increasing the threshold may improve the problem.
[Ignore Brightness Settings in OVR Advanced Settings]:
Ignore the brightness settings of another overlay application “OVR Advanced Settings” while VRHandsFrame functions are running.
Advanced Settings 2
[Use Google Cloud Vision API for Text Recognition]:
After turning on the setting and performing additional configuration, Google Cloud Vision API can be used for text recognition.
Please refer to the additional manual for how to configure Vision API.
[Estimate language When Using Vision API [beta]]
Estimates the language of text recognition when using Vision API. Note that the language may be recognized as different from the expected language.
When enabled, the [Language from translation source] setting is ignored.
Languages other than supported languages can also be recognized and translated, but the incidence of misrecognition will be higher.
9. Transfer of configuration data
When upgrading VRHandsFrame or when you want to install VRHandsFrame on a different PC, you can take over the configuration data.
Each VRHandsFrame configuration data is saved in json format files in the following folder.
If you want to take over the configuration data, copy the entire [folder for configuration] to the same location in the new VRHandsFrame, or copy the json files individually.
[folder for configuration] \VRHandsFrame_Data\StreamingAssets\config [Global Settings File] \VRHandsFrame_Data\StreamingAssets\config\global.json [Application Settings File] \VRHandsFrame_Data\StreamingAssets\config\[Application Name]\settings.json [Vision API Settings File] \VRHandsFrame_Data\StreamingAssets\config\vision_api.json [Translation Engine Settings File] \VRHandsFrame_Data\StreamingAssets\config\translation_api.json