Debug Menu: Difference between revisions
Debug menus specifically related to players not users, replace usages of user with player |
Testing with multiple clients |
||
| (16 intermediate revisions by 6 users not shown) | |||
| Line 1: | Line 1: | ||
{{Noticebox/ | {{Noticebox/Official}} | ||
[[File:World Debug Menu 1.png|thumb|300x300px|Screenshot of AssetBundles / Memory debug UI tab]] | |||
Debug | The '''Debug Menu''' consists of multiple menus and consoles which are windows within the [[Special:MyLanguage/VRChat|VRChat]] client that display various pools of data, and are used for troubleshooting. There are different debugging windows for [[Special:MyLanguage/Worlds|Worlds]], [[Special:MyLanguage/Avatars|Avatars]], and even [[Special:MyLanguage/Open Sound Control|OSC]]. | ||
==Avatar Debug Console== | ==Avatar Debug Console== | ||
The Avatar Debug Console displays information about your current avatar's animator, and other settings. This | The Avatar Debug Console displays information about your current avatar's animator, and other settings. This console can be found in the [[Special:MyLanguage/Action Menu|Action Menu]] in <code>Options > Avatar > Debug</code>. To scroll up and down you can press <code>Page Up</code>, and <code>Page Down</code> on desktop. | ||
*Left column: Lists the avatars parameters. | *Left column: Lists the avatars parameters. | ||
| Line 17: | Line 18: | ||
**'''Miscellaneous''': | **'''Miscellaneous''': | ||
*Right column: Lists all the layers for each Playable Layer and their current weight and state.<span id="avatar-dynamics-overlay"></span> | *Right column: Lists all the layers for each Playable Layer and their current weight and state.<span id="avatar-dynamics-overlay"></span> | ||
==Avatar Dynamics Overlay== | ==Avatar Dynamics Overlay== | ||
These options allow you to visualize Avatar Dynamics features like PhysBones, and Contacts. These options can be found in the [[Action Menu]] in <code>Options > Avatar > Avatar Overlay</code> | These options allow you to visualize Avatar Dynamics features like PhysBones, and Contacts. These options can be found in the [[Special:MyLanguage/Action Menu|Action Menu]] in <code>Options > Avatar > Avatar Overlay</code> | ||
*'''None''': Turns off all the Overlays. | *'''None''': Turns off all the Overlays. | ||
| Line 27: | Line 29: | ||
See also, '''VRChat Learning Channel's''' [https://www.youtube.com/watch?v=8hqDquZWvhY Avatar Dynamics Debugging Overlay Demonstration] on ''YouTube''.<span id="osc-debug-console"></span> | See also, '''VRChat Learning Channel's''' [https://www.youtube.com/watch?v=8hqDquZWvhY Avatar Dynamics Debugging Overlay Demonstration] on ''YouTube''.<span id="osc-debug-console"></span> | ||
==OSC Debug Console== | ==OSC Debug Console== | ||
[[File:Osc debug.png|thumb|Screenshot of OSC debug console.]] | [[File:Osc debug.png|thumb|Screenshot of OSC debug console.]] | ||
Displays incoming OSC messages to VRChat, and their values. The OSC console can be found in the [[Action Menu]] in <code>Options > OSC > OSC Debug</code>. To scroll up and down, you can press <code>Page Up</code>, and <code>Page Down</code> on desktop, or use the scroll bar in VR mode. See also VRChat's | Displays incoming OSC messages to VRChat, and their values. The OSC console can be found in the [[Special:MyLanguage/Action Menu|Action Menu]] in <code>Options > OSC > OSC Debug</code>. To scroll up and down, you can press <code>Page Up</code>, and <code>Page Down</code> on desktop, or use the scroll bar in VR mode. See also VRChat's [https://docs.vrchat.com/docs/osc-debugging| OSC Debugging page]. | ||
==World Debug | ==World Debug Menus== | ||
{{Noticebox/Update|type=section|Images and information such as using launch options to access are outdated.}} | |||
This | This menu is used to debug your worlds in-game. The Debug UI can be opened by: | ||
* | *Pressing the <code>Toggle Debug UI</code> button in the Debug section of the Quick Menu settings page. | ||
*Press <code>Right Shift + Tilde (~) + 1-9</code> with the number corresponding to the menu number <span id="debug-menu-1"></span>you want. | *Press <code>Right Shift + Tilde (~) + 1-9</code> with the number corresponding to the menu number <span id="debug-menu-1"></span>you want. On non-QWERTY keyboard layouts (such as French AZERTY), the key combination uses the same ''physical'' key positions, regardless of the key labels or system language. It must be the Right Shift key specifically, not the Left Shift key. | ||
Some tabs of the Debug UI can only be accessed if the world has World Debugging enabled in its world's settings. By default, only the creator of the world can access these menus. | |||
More information can be accessed at {{VRC link|https://creators.vrchat.com/worlds/udon/world-debug-views|World Debug View}} on ''creators.vrchat.com''. | |||
Debug Menu 1 displays information about | ===AssetBundles / Memory=== | ||
AssetBundles / Memory or Debug Menu 1 displays information about loaded assets. | |||
[[File:World Debug Menu 1.png|none|thumb|Screenshot of World Debug Menu 1]] | [[File:World Debug Menu 1.png|none|thumb|Screenshot of World Debug Menu 1]] | ||
=== | ===Version & Info=== | ||
Debug Menu 2 displays information about the build of VRChat you are using, | Version & Info or Debug Menu 2 is default page and displays information about the build of VRChat you are using, and explains the Debug Menu. | ||
[[File:World Debug Menu 2.png|none|thumb|Screenshot of World Debug Menu 2]] | [[File:World Debug Menu 2.png|none|thumb|Screenshot of World Debug Menu 2]] | ||
=== | ===Log Viewer=== | ||
Log Viewer or Debug Menu 3 displays your output log. Hold <code>Tab</code> to activate the mouse cursor so you can use the buttons at the top as well as scroll the log output. | |||
Debug Menu 3 displays your output log. | |||
For additional information, you can use two launch parameters, if you're using VRChat on Steam or SteamVR: | For additional information, you can use two launch parameters, if you're using VRChat on Steam or SteamVR: | ||
| Line 59: | Line 64: | ||
[[File:World Debug Menu 3.png|none|thumb|Screenshot of World Debug Menu 3]] | [[File:World Debug Menu 3.png|none|thumb|Screenshot of World Debug Menu 3]] | ||
=== | ===Players=== | ||
Players or Debug Menu 4 displays stats about players. | |||
Debug Menu 4 displays stats about players. | |||
*'''M''': Whether or not the player is the master of the instance | *'''M''': Whether or not the player is the master of the instance | ||
| Line 70: | Line 74: | ||
*'''Intrvl''': The amount of time between the player sending synced data about themselves. | *'''Intrvl''': The amount of time between the player sending synced data about themselves. | ||
*'''D''': The current delay.<span id="debug-menu-5"></span> | *'''D''': The current delay.<span id="debug-menu-5"></span> | ||
[[File:World Debug Menu 4.png|none|thumb|Screenshot of World Debug Menu 4]] | [[File:World Debug Menu 4.png|none|thumb|Screenshot of World Debug Menu 4]] | ||
===Debug Menu 5=== | ===Debug Menu 5=== | ||
Debug Menu 5 displays graphs related to networking. World Debugging must be enabled. | |||
Debug Menu 5 displays graphs related to networking. | |||
[[File:World Debug Menu 5.png|none|thumb|Screenshot of World Debug Menu 5]] | [[File:World Debug Menu 5.png|none|thumb|Screenshot of World Debug Menu 5]] | ||
===Net Objects=== | |||
Net Objects or Debug Menu 6 displays all networked objects in the world. Showing networking stats of that object sorted from the highest networking impact to least. World Debugging must be enabled. | |||
= | |||
Debug Menu 6 displays all networked objects in the world. Showing networking stats of that object. | |||
*'''Name''': GameObjects name. | *'''Name''': GameObjects name. | ||
*'''Owner''': The PlayerID of the owner of the object. | *'''Owner''': The PlayerID of the owner of the object. | ||
| Line 94: | Line 94: | ||
*'''Interval''': A rough approximation of how many times this object tries to sync per second.<span id="debug-menu-7"></span> | *'''Interval''': A rough approximation of how many times this object tries to sync per second.<span id="debug-menu-7"></span> | ||
[[File:World Debug Menu 6.png|none|thumb|Screenshot of World Debug Menu 6]] | [[File:World Debug Menu 6.png|none|thumb|Screenshot of World Debug Menu 6]] | ||
===Debug Menu 7 === | |||
Debug Menu 7 highlights all the PhysBones and Contacts in the world, similar to the Avatar Dynamics Overlay. World Debugging must be enabled. | |||
[[File:World-debug-view-7.webp|none|thumb|Screenshot of World Debug Menu 7]] | |||
===Debug Menu 8=== | ===Debug Menu 8=== | ||
Debug Menu 8 displays a panel on top of every synced object in the world. Each panel displays stats about that object. World Debugging must be enabled. | |||
Debug Menu 8 displays a panel on top of every synced object in the world. Each panel displays stats about that object. | |||
*'''P''': Ping of the owner | *'''P''': Ping of the owner | ||
| Line 108: | Line 111: | ||
===Debug Menu 9=== | ===Debug Menu 9=== | ||
Debug Menu 9 displays a panel near players to display their networking stats. World Debugging must be enabled. | |||
[[File:World Debug Menu 9.png|none|thumb|Screenshot of World Debug Menu 9]] | |||
===Performance=== | |||
The Performance tab displays selected performance graphs and allows saving them to disk. This menu has no keybind. | |||
[[File:World Debug Menu Performance.png|none|thumb|Screenshot of World Debug Menu Performance]] | |||
===Audio Sources=== | |||
The Audio Sources tab displays all audio sources in the scene. It includes information such as source names, types, playback state, distance from the user, Steam Audio near-field enhancement details, audio conversion state, and perspective correction data. This tab is only viewable if the world has the World Debugging setting enabled. | |||
==Testing with multiple clients== | |||
Creators commonly test worlds and avatars by running multiple VRChat clients simultaneously, each logged into a different account. This is an allowed practice among world and avatar creators. | |||
To launch a second VRChat client on a separate account, create a shortcut to the VRChat executable (for example, located at <code>steamapps\common\VRChat\VRChat.exe</code>) and add the <code>--profile=2</code> [[Launch Options|launch option]]. The <code>--profile</code> flag stores credentials separately, so each profile only requires logging in once. Common launch options for a testing client include: | |||
[[ | |||
<code>--no-vr --profile=2 --enable-debug-gui --enable-sdk-log-levels --enable-udon-debug-logging</code> | |||
Building a world with 0 clients in the SDK build panel causes any already-running test clients to reload the world without launching a new client. | |||
When testing avatar visual consistency (such as Bounds or Anchor Override changes), checking with a second account is more reliable than checking in a mirror, because the local mirror view may differ from what other players see. | |||
==Official resources== | |||
*{{VRC link|https://creators.vrchat.com/worlds/udon/world-debug-views|World Debug View}} page in the VRChat Documentation | |||
*[https://docs.vrchat.com/docs/osc-debugging| OSC Debugging] page in the VRChat Documentation | |||
[[Category:User Interface{{#translation:}}]] | |||
[[Category:Menus{{#translation:}}]] | |||
Latest revision as of 20:22, 6 April 2026

The Debug Menu consists of multiple menus and consoles which are windows within the VRChat client that display various pools of data, and are used for troubleshooting. There are different debugging windows for Worlds, Avatars, and even OSC.
Avatar Debug Console
The Avatar Debug Console displays information about your current avatar's animator, and other settings. This console can be found in the Action Menu in Options > Avatar > Debug. To scroll up and down you can press Page Up, and Page Down on desktop.
- Left column: Lists the avatars parameters.
- Parameter: Name of the parameter.
- Type: What variable type the parameter is. Available types are Bool, Float, and Int.
- Value: Their current value.
- Center column: Contains 3 sections.
- Tracking control: Shows if the parts of the avatars body has IK enabled or disabled.
- Name: Name of the avatars body part.
- Value: What type of tracking its using. Either tracking the Ik, or an animation.
- Animation Controllers: Shows the current weight of the avatars Playable Layers.
- Miscellaneous:
- Tracking control: Shows if the parts of the avatars body has IK enabled or disabled.
- Right column: Lists all the layers for each Playable Layer and their current weight and state.
Avatar Dynamics Overlay
These options allow you to visualize Avatar Dynamics features like PhysBones, and Contacts. These options can be found in the Action Menu in Options > Avatar > Avatar Overlay
- None: Turns off all the Overlays.
- PhysBones Proximity: Visualizes PhysBones near your hands.
- PhysBones: Visualizes PhysBones on all avatars.
- Contacts: Shows all contacts on avatar and their current contact state.
See also, VRChat Learning Channel's Avatar Dynamics Debugging Overlay Demonstration on YouTube.
OSC Debug Console

Displays incoming OSC messages to VRChat, and their values. The OSC console can be found in the Action Menu in Options > OSC > OSC Debug. To scroll up and down, you can press Page Up, and Page Down on desktop, or use the scroll bar in VR mode. See also VRChat's OSC Debugging page.
World Debug Menus
This menu is used to debug your worlds in-game. The Debug UI can be opened by:
- Pressing the
Toggle Debug UIbutton in the Debug section of the Quick Menu settings page. - Press
Right Shift + Tilde (~) + 1-9with the number corresponding to the menu number you want. On non-QWERTY keyboard layouts (such as French AZERTY), the key combination uses the same physical key positions, regardless of the key labels or system language. It must be the Right Shift key specifically, not the Left Shift key.
Some tabs of the Debug UI can only be accessed if the world has World Debugging enabled in its world's settings. By default, only the creator of the world can access these menus.
More information can be accessed at World Debug View on creators.vrchat.com.
AssetBundles / Memory
AssetBundles / Memory or Debug Menu 1 displays information about loaded assets.

Version & Info
Version & Info or Debug Menu 2 is default page and displays information about the build of VRChat you are using, and explains the Debug Menu.

Log Viewer
Log Viewer or Debug Menu 3 displays your output log. Hold Tab to activate the mouse cursor so you can use the buttons at the top as well as scroll the log output.
For additional information, you can use two launch parameters, if you're using VRChat on Steam or SteamVR:
--enable-sdk-log-levels--enable-udon-debug-logging

Players
Players or Debug Menu 4 displays stats about players.
- M: Whether or not the player is the master of the instance
- L: Whether or not the player is the local player
- VR: Whether or not the player is in VR
- Group: The current group that the player is in. Grouping in this context is an internal networking system used to combine multiple objects together by distance so that their data can be sent together.
- Ping: The player's ping
- Intrvl: The amount of time between the player sending synced data about themselves.
- D: The current delay.

Debug Menu 5
Debug Menu 5 displays graphs related to networking. World Debugging must be enabled.

Net Objects
Net Objects or Debug Menu 6 displays all networked objects in the world. Showing networking stats of that object sorted from the highest networking impact to least. World Debugging must be enabled.
- Name: GameObjects name.
- Owner: The PlayerID of the owner of the object.
- Group: The current group that this object is in. Grouping in this context is an internal networking system used to combine multiple objects together by distance so that their data can be sent together.
- Sleeping: Whether or not the object is sleeping. Only objects with VRCObjectSync can sleep. Sleeping causes the object to stop transmitting data.
- Delay: The current delay of this object between the owner and the viewer.
- Size: The current number of bytes per serialization of this object. Every time it needs to sync, it will send this many bytes.
- Bps: A rough approximation of how many bytes per second this object is using up.
- Since Last: A running counter of how long it has been since the last time this object has sent data.
- Interval: A rough approximation of how many times this object tries to sync per second.

Debug Menu 7
Debug Menu 7 highlights all the PhysBones and Contacts in the world, similar to the Avatar Dynamics Overlay. World Debugging must be enabled.

Debug Menu 8
Debug Menu 8 displays a panel on top of every synced object in the world. Each panel displays stats about that object. World Debugging must be enabled.
- P: Ping of the owner
- Q: Quality of the data (100% is no dropped packets)
- O: PlayerID of the owner of the object
- G: The current group that this object is in. Grouping in this context is an internal networking system used to combine multiple objects together by distance so that their data can be sent together.
- Held: Whether or not this object is held, if it is a pickup
- Status: Displays various things about what this object is doing, such as
Should Sleep,Player,Held, orDiscontinuity

Debug Menu 9
Debug Menu 9 displays a panel near players to display their networking stats. World Debugging must be enabled.

Performance
The Performance tab displays selected performance graphs and allows saving them to disk. This menu has no keybind.

Audio Sources
The Audio Sources tab displays all audio sources in the scene. It includes information such as source names, types, playback state, distance from the user, Steam Audio near-field enhancement details, audio conversion state, and perspective correction data. This tab is only viewable if the world has the World Debugging setting enabled.
Testing with multiple clients
Creators commonly test worlds and avatars by running multiple VRChat clients simultaneously, each logged into a different account. This is an allowed practice among world and avatar creators.
To launch a second VRChat client on a separate account, create a shortcut to the VRChat executable (for example, located at steamapps\common\VRChat\VRChat.exe) and add the --profile=2 launch option. The --profile flag stores credentials separately, so each profile only requires logging in once. Common launch options for a testing client include:
--no-vr --profile=2 --enable-debug-gui --enable-sdk-log-levels --enable-udon-debug-logging
Building a world with 0 clients in the SDK build panel causes any already-running test clients to reload the world without launching a new client.
When testing avatar visual consistency (such as Bounds or Anchor Override changes), checking with a second account is more reliable than checking in a mirror, because the local mirror view may differ from what other players see.
Official resources
- World Debug View page in the VRChat Documentation
- OSC Debugging page in the VRChat Documentation