Make your VRChat Avatar’s memory more efficient with one click
MemoryOptimizer allows you to surpass the typical parameter memory limits of the VRCSDK, by marking existing parameters as unsynced and using its own set of parameters to cyclically sync the unsynced parameters using parameter drivers. With Change Detection enabled, parameters that that have recently changed in value will be resynced first for faster perceived syncing.
This does have some limitations, as the syncing time will be delayed compared to if you would sync the parameter normally, so it’s not ideal for time-sensitive applications. Also, with the change detection option enabled, the system can get stuck on a certain step of the cycle and not sync the other parameters (See Change Detection).
Tools > TES > MemoryOptimizer
from the top toolbar to open the MemoryOptimizer windowInstall
button!This system works by only syncing a few parameters at a time, so by the very nature of the system not all parameters can be optimized. Consequently, some advanced systems like 15-Bits-Position-Rotation-Networking can not be optimized by this system. That being said, most things should work just fine!
To select a parameter, simply click the Optimize
button.
Install
.You can also use the Select All
and Deselect Prefix
buttons to quickly select the parameters you need.
Try changing the amount of Sync Steps to get as many parameters optimized as possible!
Change Detection will detect and prioritize recently changed parameters before continuing to resync other parameters for more responsive interactions.
[!NOTE] Enabling Change Detection requires at least 3 sync steps
It is not advised to enable Change Detection for parameters that are constantly updated.
If a parameter is changing more often than the total sync time, the MemoryOptimizer system may stay frozen updating that parameter due to Change Detection.
Examples of parameters that are frequently updated include:
[!WARNING] This option may have a significant performance impact at higher parameter counts, so it is better decrease step count to improve sync latency if possible.
Sync steps are the amount of steps the system divides your params into to sync them. A higher number will take longer to sync, but will take up less parameter space (depending on how many parameters are selected of each type).
It is generally recommended to have as few sync steps as possible, as the more steps you have the longer the system will take to completely sync. Try changing this number to see if you save significantly more or less space with your selected parameters.
[!TIP] By default the sync steps slider is limited to 4 steps, but this can be unlocked in the settings.
dev.jetees.memoryoptimizer
未設定
0.1.18
2022.3 以降
なし
なし
未設定