Launch Options: Difference between revisions

From VRChat Wiki
DAG-XR (talk | contribs)
Removed WIP noticebox; added "see also" heading.
DAG-XR (talk | contribs)
Undo Category:Needs images; found an uploaded image relevant to article.
 
(6 intermediate revisions by 5 users not shown)
Line 5: Line 5:


===Steam===
===Steam===
[[File:SteamDebugLaunchParam.webp|thumb|You can navigate through Steam to input different launch options for VRChat.]]
Steam allows you to set launch options per application, to set launch options for VRChat, right-click VRChat in your game list and click on '''Properties'''. After clicking Properties, under General, click on the box under Launch Options, then put your desired launch options in.
Steam allows you to set launch options per application, to set launch options for VRChat, right-click VRChat in your game list and click on '''Properties'''. After clicking Properties, under General, click on the box under Launch Options, then put your desired launch options in.


Line 11: Line 12:


=== VRC Quick Launcher ===
=== VRC Quick Launcher ===
The [[VRC Quick Launcher]] allows custom parameters to be set
The [[VRC Quick Launcher]] allows custom parameters to be set.


==List of Launch Options and Arguments==
==List of Launch Options and Arguments==
Line 18: Line 19:
{| class="wikitable"
{| class="wikitable"
|-
|-
!Launch Options!!Descriptions
!Launch Options
!Descriptions
|-
|-
| --no-vr||Forces desktop mode
| --no-vr
|Forces desktop mode
|-
|-
| --fps=x||Overrides the FPS cap to X instead of the default. On Desktop, 90 is the default. In VR, the headset's reported maximum refresh rate is the default.
| --fps=x
|Overrides the FPS cap to X instead of the default. On Desktop, 90 is the default. In VR, the headset's reported maximum refresh rate is the default. Setting <code>--fps=0</code> removes the framerate cap entirely in desktop mode, which can be useful for performance testing.
|-
|-
| --profile=x
| --profile=x
|Launches with a different user profile, where X is a number. 0 is the default profile
|Launches with a different user profile, where X is a number. 0 is the default profile. Each profile stores its own credentials, allowing multiple VRChat clients to run simultaneously on different accounts. This is commonly used by world and avatar creators for testing. See [[Debug Menu#Testing with multiple clients|Testing with multiple clients]].
|-
| --error-world
|The user will join the [[Error World]] instead of their home world on launch.
|}
|}


Line 31: Line 38:
{| class="wikitable"
{| class="wikitable"
|-
|-
!Launch Options!!Descriptions
!Launch Options
!Descriptions
|-
|-
| --watch-avatars||Watches the location where the VRChat SDK builds test avatars, and if wearing a test avatar that's been updated automatically switches to the newer version.
| --watch-avatars
|Watches the location where the VRChat SDK builds test avatars, and if wearing a test avatar that's been updated automatically switches to the newer version.
|-
|-
| --watch-worlds||Watches the location where the VRChat SDK builds worlds, and automatically joins any new local world created.
| --watch-worlds
|Watches the location where the VRChat SDK builds worlds, and automatically joins any new local world created.
|-
|-
| --osc=<ARG1>:<ARG2>:<ARG3>
| --osc=<ARG1>:<ARG2>:<ARG3>
Line 48: Line 58:
| Forces the MIDI drive to search for a connected MIDI device which contains the deviceName specified, including partial matches, case-insensitive.
| Forces the MIDI drive to search for a connected MIDI device which contains the deviceName specified, including partial matches, case-insensitive.
|-
|-
| --enforce-world-server-checks||Force require the world to be processed fir server side check
| --enforce-world-server-checks||Force require the world to be processed for server side check
|}
|}


Line 56: Line 66:
{| class="wikitable"
{| class="wikitable"
|-
|-
!Launch Options!! Descriptions
!Launch Options
! Descriptions
|-
|-
| --custom-arm-ratio="<ARG>"
| --custom-arm-ratio="<ARG>"
|Adjusts the ratio used to scale the avatar when using measure-by-arms mode. "0.4537" is the default argument value.
|Adjusts the ratio used to scale the avatar when using measure-by-arms mode. "0.4537" is the default argument value.
|-
|-
| --legacyfbt-calibrate||Swaps to the older method of locking your avatar in place during calibration.
| --legacyfbt-calibrate
|Swaps to the older method of locking your avatar in place during calibration.
|-
|-
| --disable-shoulder-tracking||Prevents arm (elbow) trackers from affecting the shoulders.
| --disable-shoulder-tracking
|Prevents arm (elbow) trackers from affecting the shoulders.
|-
|-
| --calibration-range="<ARG>"|| If you're having problems with your hip tracker but your feet are fine, you can also try adjusting your calibration range.  
| --calibration-range="<ARG>"
| If you're having problems with your hip tracker but your feet are fine, you can also try adjusting your calibration range.  
|-
|-
| --enable-ik-debug-logging||Adds extra log output related to IK features.
| --enable-ik-debug-logging
|Adds extra log output related to IK features.
|-
|-
| --freeze-tracking-on-disconnect||When a tracker disconnects it continues to lock the tracked body to its final location relative to the player, rather than transitioning that part to untracked behavior.  
| --freeze-tracking-on-disconnect
|When a tracker disconnects it continues to lock the tracked body to its final location relative to the player, rather than transitioning that part to untracked behavior.  


Made new efforts to ensure that even if you activate this option after the tracker has disconnected it will still remember and use the proper final location of the tracker.
Made new efforts to ensure that even if you activate this option after the tracker has disconnected it will still remember and use the proper final location of the tracker.
Line 80: Line 96:
{| class="wikitable"
{| class="wikitable"
|-
|-
!Launch Options!!Descriptions
!Launch Options
!Descriptions
|-
|-
| --enable-debug-gui||Enables the [[Debug Menu|debug menu]]
| --enable-debug-gui
|Enables the [[Debug Menu|debug menu]]
|-
|-
| --enable-sdk-log-levels
| --enable-sdk-log-levels
|Enables a large amount of additional logging.
|Enables a large amount of additional logging.
|-
|-
| --enable-udon-debug-logging||Enable Udon heap and stack dumps in the client. Usually only enabled in editor.
| --enable-udon-debug-logging
|Enable Udon heap and stack dumps in the client. Usually only enabled in editor.
|-
|-
| --enable-verbose-logging||Output verbose logs
| --enable-verbose-logging
|Output verbose logs
|-
|-
| --log-debug-levels="<ARG>"||ARG
| --log-debug-levels="<ARG>"
|ARG
{| class="wikitable"
{| class="wikitable"
|-
|-
! Arguments !! Descriptions
! Arguments
! Descriptions
|-
|-
|API;
|API;
|API
|API
|-
|-
|All;||All Request
|All;
|All Request
|-
|-
|Always;||Always
|Always;
|Always
|-
|-
|AssetBundleDownloadManager;||Related to Asset Bundle Download
|AssetBundleDownloadManager;
|Related to Asset Bundle Download
|-
|-
|ContentCreator;||For Contents Creator
|ContentCreator;
|For Contents Creator
|-
|-
|Errors;||Related to Error
|Errors;
|Related to Error
|-
|-
|NetworkData;||Related to Network Data
|NetworkData;
|Related to Network Data
|-
|-
|NetworkProcessing;||Related to Network Processing
|NetworkProcessing;
|Related to Network Processing
|-
|-
|NetworkTransport;||Related to Network Transport
|NetworkTransport;
|Related to Network Transport
|-
|-
|Warnings"||Related to Warning
|Warnings"
|Related to Warning
|}
|}
|}
|}
Line 122: Line 153:
{| class="wikitable"
{| class="wikitable"
|-
|-
!Launch Options!!Descriptions
!Launch Options
!Descriptions
|-
|-
| --disable-hw-video-decoding|| rowspan="2" |Forces video decoding to be done in software or hardware.
| --disable-hw-video-decoding
| rowspan="2" |Forces video decoding to be done in software or hardware. The default for all GPU vendors is hardware decoding.


On AMD graphics cards, the default is "software" because there have been issues in the past.
Use the "disable" variant to force software decoding.
 
You can use the "enable" variant to force hardware decoding.
 
With other GPU vendors, the default is "hardware", use the "disable" variant to force software decoding.


Warning: Using the "software" option will utilize your CPU to decode video, which can impact your performance.
Warning: Using the "software" option will utilize your CPU to decode video, which can impact your performance.
Line 138: Line 167:
| --enable-hw-video-decoding
| --enable-hw-video-decoding
|-
|-
| --affinity=<ARG>||Sets VRChat's thread affinity to the specified threads. <ARG> is a bitmask indicating which threads should be utilized for- VRChat. For example, FFFF selects the first 16 threads, FF selects the first 8, and so on.
| --affinity=<ARG>
|Sets VRChat's thread affinity to the specified threads. <ARG> is a bitmask indicating which threads should be utilized for- VRChat. For example, FFFF selects the first 16 threads, FF selects the first 8, and so on.


Most users do not need to use this feature. It is left up to the user to determine if they should use this feature.
Most users do not need to use this feature. It is left up to the user to determine if they should use this feature.
Line 148: Line 178:
{| class="wikitable"
{| class="wikitable"
|-
|-
| <ARG>||
| <ARG>
|
|-
|-
| -2 ||Idle priority
| -2
|Idle priority
|-
|-
| -1 ||Below Normal priority
| -1
|Below Normal priority
|-
|-
| 0 ||Normal priority
| 0
|Normal priority
|-
|-
| 1 ||Above Normal priority
| 1
|Above Normal priority
|-
|-
| 2 ||High priority
| 2
|High priority
|-
|-
|}
|}
Line 168: Line 204:
{| class="wikitable"
{| class="wikitable"
|-
|-
| <ARG>||
| <ARG>
|
|-
|-
| -2 ||Idle priority
| -2
|Idle priority
|-
|-
| -1 ||Below Normal priority
| -1
|Below Normal priority
|-
|-
| 0 ||Normal priority
| 0
|Normal priority
|-
|-
| 1 ||Above Normal priority
| 1
|Above Normal priority
|-
|-
| 2 ||High priority
| 2
|High priority
|-
|-
|}
|}
Line 185: Line 227:
|This prevents VRChat from installing or updating the vrchat:// information in your registry and prevents the "VRChat Installation Helper" popup from appearing.  
|This prevents VRChat from installing or updating the vrchat:// information in your registry and prevents the "VRChat Installation Helper" popup from appearing.  
|-
|-
| --disable-amd-stutter-workaround
| --enable-amd-stutter-workaround
|Disables a rendering workaround that helps prevent stutter on AMD graphics cards. Does nothing on non-AMD GPUs.
|Enables a rendering workaround that may help prevent stutter on AMD graphics cards. Does nothing on non-AMD GPUs. The workaround is disabled by default.
 
It is not recommended to disable this workaround, as it may lead to stutters, but advanced users can set this flag for testing.
|-
|-
| --enable-avpro-in-proton
| --enable-avpro-in-proton
Line 200: Line 240:
{| class="wikitable"
{| class="wikitable"
|-
|-
!Launch Options!!Descriptions
!Launch Options
!Descriptions
|-
|-
| -screen-width||Override the default screen width. This must be an integer from a supported resolution.
| -screen-width
|Override the default screen width. This must be an integer from a supported resolution.
|-
|-
| -screen-height||Override the default screen height. This must be an integer from a supported resolution.
| -screen-height
|Override the default screen height. This must be an integer from a supported resolution.
|-
|-
| -screen-fullscreen||Override the default full-screen state. This must be 0 or 1.
| -screen-fullscreen
|Override the default full-screen state. This must be 0 or 1.
|-
|-
| -monitor N||Run Standalone Player on the specified monitor, indicated by a 1-based index number.
| -monitor N
|Run Standalone Player on the specified monitor, indicated by a 1-based index number.
|}
|}
==See also==
==See also==
Line 219: Line 264:
* [https://docs.vrchat.com/docs/launch-options docs.vrchat.com - Launch Options]
* [https://docs.vrchat.com/docs/launch-options docs.vrchat.com - Launch Options]


<references />
[[Category:Resources]]
[[Category:Guides{{#translation:}}]]
[[Category:Guides{{#translation:}}]]

Latest revision as of 08:03, 15 April 2026

V · EThis is an official VRChat information page!
It is reviewed and approved by the VRCWiki Team. Learn how to contribute to this page by reading the Contribution Guide.

Launch Options are special parameters used to modify how VRChat starts.

How to use Launch Options

Launch Options are only supported on the following:

Steam

You can navigate through Steam to input different launch options for VRChat.

Steam allows you to set launch options per application, to set launch options for VRChat, right-click VRChat in your game list and click on Properties. After clicking Properties, under General, click on the box under Launch Options, then put your desired launch options in.

Meta Quest Link App / Manual

You must create a shortcut to the VRChat executable. After launching Oculus Home, launch this shortcut by clicking its icon. The Oculus launcher does not support launch options natively.

VRC Quick Launcher

The VRC Quick Launcher allows custom parameters to be set.

List of Launch Options and Arguments

General

Launch Options Descriptions
--no-vr Forces desktop mode
--fps=x Overrides the FPS cap to X instead of the default. On Desktop, 90 is the default. In VR, the headset's reported maximum refresh rate is the default. Setting --fps=0 removes the framerate cap entirely in desktop mode, which can be useful for performance testing.
--profile=x Launches with a different user profile, where X is a number. 0 is the default profile. Each profile stores its own credentials, allowing multiple VRChat clients to run simultaneously on different accounts. This is commonly used by world and avatar creators for testing. See Testing with multiple clients.
--error-world The user will join the Error World instead of their home world on launch.

Creator

Launch Options Descriptions
--watch-avatars Watches the location where the VRChat SDK builds test avatars, and if wearing a test avatar that's been updated automatically switches to the newer version.
--watch-worlds Watches the location where the VRChat SDK builds worlds, and automatically joins any new local world created.
--osc=<ARG1>:<ARG2>:<ARG3> Customize network settings for incoming/outgoing OSC messages.

Accepts the following 3 arguments:

- <ARG1>: The port that the VRChat client should listen on for incoming OSC messages. - <ARG2>: The IP that outgoing OSC messages should be sent to. - <ARG3>: The port that outgoing OSC messages should be sent to.

--midi=deviceName Forces the MIDI drive to search for a connected MIDI device which contains the deviceName specified, including partial matches, case-insensitive.
--enforce-world-server-checks Force require the world to be processed for server side check

IK

These launch options[1] are for Inverse Kinematics on an avatar.

Launch Options Descriptions
--custom-arm-ratio="<ARG>" Adjusts the ratio used to scale the avatar when using measure-by-arms mode. "0.4537" is the default argument value.
--legacyfbt-calibrate Swaps to the older method of locking your avatar in place during calibration.
--disable-shoulder-tracking Prevents arm (elbow) trackers from affecting the shoulders.
--calibration-range="<ARG>" If you're having problems with your hip tracker but your feet are fine, you can also try adjusting your calibration range.
--enable-ik-debug-logging Adds extra log output related to IK features.
--freeze-tracking-on-disconnect When a tracker disconnects it continues to lock the tracked body to its final location relative to the player, rather than transitioning that part to untracked behavior.

Made new efforts to ensure that even if you activate this option after the tracker has disconnected it will still remember and use the proper final location of the tracker.

--ignore-trackers=serial1,serial2 Ignore tracking data from devices with the specified serial numbers. Comma delimited list.

Debug

Launch Options Descriptions
--enable-debug-gui Enables the debug menu
--enable-sdk-log-levels Enables a large amount of additional logging.
--enable-udon-debug-logging Enable Udon heap and stack dumps in the client. Usually only enabled in editor.
--enable-verbose-logging Output verbose logs
--log-debug-levels="<ARG>" ARG
Arguments Descriptions
API; API
All; All Request
Always; Always
AssetBundleDownloadManager; Related to Asset Bundle Download
ContentCreator; For Contents Creator
Errors; Related to Error
NetworkData; Related to Network Data
NetworkProcessing; Related to Network Processing
NetworkTransport; Related to Network Transport
Warnings" Related to Warning

System

Launch Options Descriptions
--disable-hw-video-decoding Forces video decoding to be done in software or hardware. The default for all GPU vendors is hardware decoding.

Use the "disable" variant to force software decoding.

Warning: Using the "software" option will utilize your CPU to decode video, which can impact your performance.

Most users do not need to use this feature.

--enable-hw-video-decoding
--affinity=<ARG> Sets VRChat's thread affinity to the specified threads. <ARG> is a bitmask indicating which threads should be utilized for- VRChat. For example, FFFF selects the first 16 threads, FF selects the first 8, and so on.

Most users do not need to use this feature. It is left up to the user to determine if they should use this feature.

--process-priority=<ARG> Manually sets the process priority of VRChat to the specified level.

<ARG> is a number that represents the priority level to use:

<ARG>
-2 Idle priority
-1 Below Normal priority
0 Normal priority
1 Above Normal priority
2 High priority
--main-thread-priority=<ARG> Manually sets the priority of the main Unity thread that VRChat runs on to the specified level.

<ARG> is a number that represents the priority level to use:

<ARG>
-2 Idle priority
-1 Below Normal priority
0 Normal priority
1 Above Normal priority
2 High priority
--skip-registry-install This prevents VRChat from installing or updating the vrchat:// information in your registry and prevents the "VRChat Installation Helper" popup from appearing.
--enable-amd-stutter-workaround Enables a rendering workaround that may help prevent stutter on AMD graphics cards. Does nothing on non-AMD GPUs. The workaround is disabled by default.
--enable-avpro-in-proton Allow Proton users to re-enable AVPro for video playback. This may cause crashes!

Unity

Unity comes with built-in launch options. These are not supported or guaranteed to work. You can view the full list here.

Some useful ones are listed below:

Launch Options Descriptions
-screen-width Override the default screen width. This must be an integer from a supported resolution.
-screen-height Override the default screen height. This must be an integer from a supported resolution.
-screen-fullscreen Override the default full-screen state. This must be 0 or 1.
-monitor N Run Standalone Player on the specified monitor, indicated by a 1-based index number.

See also

References

  1. 'IK 2.0 Features and Options' on docs.vrchat.com; retrieved on March 18, 2025.