Hello,
This repository is mostly a personal learning project and has three main functions:
- It is my personal OSC Query debugger, and communicates with VRChat by listing all the available addresses.
- It can display the entire Expressions Menu if that menu was exported during the avatar build process using another Unity Editor tool I made specifically for this purpose (learn more).
- In addition to the desktop window, it also has an implementation of the ImGui.NET window:
- being rendered into a SteamVR overlay (introduction commit) using the OpenVR API and Veldrid,
- with some basic overlay mouse input (class, introduction commit),
- and some eye tracking input (class, introduction commit).
For more information, open the website page.
imgui-overlay-f.mp4
et-layout.mp4
If you choose to log-in into the VRChat account, it can switch between avatars.
Logging into the VRChat account is only needed to switch between avatars.
- If you don't need to switch avatars, do not log in.
- This app doesn't do anything else with the VRChat account. It doesn't even try to list all of your avatars.
The code responsible for all VRChat account actions can be inspected here.
- Logging into the VRChat account
Login(username, password)
(API docs) - Sending a 2FA code to VRChat
VerifyTwofer(code, method)
(API docs) - Logging out
Logout()
(API docs) - Switching avatars
SelectAvatar(avatarId)
(API docs)
Logging in will save a cookie file in the %APPDATA%/H-View/
folder, called hview.vrc.cookies.txt
- This file is used to communicate with your VRChat account. Do not share that file.
- This cookie file will be loaded when you start the program.
- To delete this cookie file, go to Costumes > Login > Logout.
- No option specified: Starts as a desktop window. If SteamVR is running, it also creates an additional dashboard overlay.
--no-overlay
Starts as a desktop window.--register-manifest
OnDebug
config only: Register the application path to SteamVR. By default, debug builds do not register themselves.--no-register-manifest
OnRelease
config only: Do not register the application path to SteamVR.
- Included in source code form and DLLs: h-view/THIRDPARTY.md
- A3ESimpleOSC @ https://github.com/lyuma/Av3Emulator/blob/master/Runtime/Scripts/A3ESimpleOSC.cs (MIT License)
- openvr-screengrab @ https://github.com/cnlohr/openvr-screengrab (MIT License)
- ImGui.NET @ https://github.com/ImGuiNET/ImGui.NET (MIT License)
- OpenVR API @ https://github.com/ValveSoftware/openvr (BSD-3-Clause license)
- Other dependencies included through NuGet: h-view/h-view.csproj
- Dear ImGui @ https://github.com/ocornut/imgui (MIT License)
- Veldrid @ https://github.com/veldrid/veldrid (MIT License)
- VRChat.OSCQuery @ https://github.com/vrchat-community/vrc-oscquery-lib (MIT License)
- Newtonsoft.Json @ https://github.com/JamesNK/Newtonsoft.Json (MIT License)
- Facepunch.Steamworks @ https://github.com/Facepunch/Facepunch.Steamworks (MIT License)
- (there may be other implicit packages)
If the project is compiled with INCLUDE_STEAMWORKS
(only on Debug and ReleaseSteamworks builds), the Steam API will be included.
This is used to build my own application for distribution through Steam. See Steamworks API.