Avatar Particle System Limits
A description of the limits placed on particle systems on avatars
To prevent abuse and heavy particle use affecting performance, Particle Systems can be limited when used on avatars. Here are the limits we recommend as of June 19, 2018.
Enabled on Quest
This system is enabled by default on Quest with the default settings and cannot be disabled. This is for performance and safety reasons.
Please note that the limiter will prevent any particles from colliding with PlayerLocal. There is no setting to disable this without disabling the limiter.
This feature is in beta. This feature may be changed, modified, or removed with future releases.
We encourage users to experiment with these settings to find and share setups that allow legitimate uses of particle systems, but stop systems that cause performance issues or crash the application.
Default Particle Limiter Setup
{
"betas": [
"particle_system_limiter"
],
"ps_max_particles": 50000,
"ps_max_systems": 200,
"ps_max_emission": 5000,
"ps_max_total_emission": 40000,
"ps_mesh_particle_divider": 60,
"ps_mesh_particle_poly_limit": 50000,
"ps_collision_penalty_high": 50,
"ps_collision_penalty_med": 30,
"ps_collision_penalty_low": 10,
"ps_trails_penalty": 10
}
Particle Limiter Configuration Description
Value Name | Description |
---|---|
betas | Adding or removing the string "particle_system_limiter" will enable/disable the Limiter system |
ps_max_particles | Max particles a single particle system can spawn |
ps_max_emission | Max emission a single particle system is allowed |
ps_max_total_emission | Max emission allowed between all particle systems on an avatar |
ps_mesh_particle_divider | The mesh particle penalty is calculated using the highest poly mesh on them divided by this value, the resulting value divides the max particle allowance for the particle system |
ps_mesh_particle_poly_limit | The max poly count a mesh on a particle system can be |
ps_collision_penalty_high | The penalty for high quality collision on a particle system, the resulting value divides the max particle allowance for the particle system |
ps_collision_penalty_med | The penalty for medium quality collision on a particle system, the resulting value divides the max particle allowance for the particle system |
ps_collision_penalty_low | The penalty for low quality collision on a particle system, the resulting value divides the max particle allowance for the particle system |
ps_trails_penalty | The penalty for having trails enabled on the particle system, the resulting value divides the max particle allowance for the particle system |
Modifying the VRChat Particle Limiter Configuration
If you prefer, you can change the particle limiter system for your own local view. Changing these settings from the default is only recommended for advanced users.
Editing these values will require an application restart before they take effect.
You can override all settings or disable the Limiter system completely by adding a file into the following directory:
%AppData%\..\LocalLow\VRChat\vrchat
Name the file as such:
config.json
Ensure that the file extension is json
, and not txt
. It is best to edit the configuration file with an editor like Notepad++.
Copy and paste the contents of the default configuration at the top of this page into your file, and then edit it to your whims! You could, for example, increase ps_max_particles
to allow more particles per individual system, or remove the string "particle_system_limiter"
from the beta
section to disable the system entirely without deleting the file.
Pre-filled Default Configuration File
You can also download a file pre-filled with the default configuration here. If the file displays rather than downloads when you click it, right click the link, click Save As, and download it. You must rename the file to config.json
. Place the file into the directory specified above (%AppData%\..\LocalLow\VRChat\vrchat
), and you'll be good to go. Remember, the file must be named config.json
precisely.
Updated about 1 year ago