Avatar Bugs & Feature Requests

Post about current Avatar bugs and Avatar Feature Requests. One item per post!
Non-constructive and off-topic posts will be moved or deleted.
[Feature Request] Comparison of animator parameters and quadrature.
I would like to see the VRC Avatar Parameter Driver functionality extended or a new State Behaviour that implements four arithmetic operations between parameters. It would be great if you could also add a function that allows exception handling by specifying a parameter of any bool type when a calculation result overflows or divides by zero. Another feature that would be very useful would be to add a State Behaviour that outputs the results of comparisons between Animator Parameters to a specified bool parameter. We believe that implementing these functions will enable more complex expressions and increase the readability of Animator compared to the implementation method using BlendTree, so please consider it. (The translation was done using Deepl and may contain unnatural expressions.) VRC Avatar Parameter Driverの機能拡張、もしくは新規のState Behaviourとしてパラメーター同士の四則演算を実装して欲しいです。 計算結果がオーバーフローした場合やゼロ除算が発生した場合に、任意のbool型のパラメーターを指定して例外処理などを行うことが可能な機能も追加していただけると嬉しいです。 そしてもう一つ、Animator Parameter同士の比較の結果を指定したbool型のパラメーターに出力するState Behaviourも追加していただければ非常に便利になると考えております。 これらの機能を実装することでより複雑な表現が可能になり、BlendTreeを用いた実装方法よりもAnimatorの可読性が上昇すると考えていますので、ぜひご検討ください。
0
Please add native, optimized parameter smoothing to the game/SDK.
I would like to propose the addition of native parameter smoothing functionality within VRChat, directly supported by the VRChat client and SDK. Currently, creators must rely on animator-based feedback loop smoothing to mitigate the slow network update rate of float parameters, particularly for advanced use cases such as full face tracking. However, this approach introduces significant inefficiencies and complexity. Feedback-loop smoothing via animator logic results in extremely bloated and overly complex animators. This not only complicates the animation setup process, but also has measurable negative performance impacts. Based on my own testing and benchmarking, a single avatar using full facial tracking with feedback-loop smoothing can increase CPU frame times enough to cause a 5–10 FPS drop in CPU-limited environments, with mirrors disabled. It is 100% reproduceable especially with OSCmooth and Pawlygons facetracking templates. This is purely based on the smoothing logic only, not the actual facetracking logic. The performance degradation scales linearly with the number of face-tracked avatars present in a given instance. This makes the current approach unsustainable, especially as more users adopt advanced tracking setups. I propose that VRChat introduce native parameter smoothing functionality configurable directly through the VRChat Unity SDK. This could be implemented by expanding the existing animator parameter list interface in the SDK to include: A checkbox to enable native smoothing on a per-parameter basis. Two smoothing strength values, ranging from 0.0 to 1.0: Local Smoothing: Applied to the user's own view of their avatar (e.g., for responsive and accurate feedback). Remote Smoothing: Applied to how other users see the avatar (e.g., to compensate for low parameter update frequency over the network). This native implementation would eliminate the need for animator-driven smoothing workarounds, significantly reduce complexity, and greatly improve performance across all facetracked avatars moving forward, especially in CPU-constrained scenarios (me 99% of the time, same can be said for most people nowadays). Such a feature would improve performance by a very measurable amount once it becomes standardized over the current hacky avatar-based feedback-loop method. It would also have huge positive implications for Mobile/Quest as they are much more CPU restricted, yet don't have any facetracking/animator limitations at all. We need more tools to optimize animators, and this would be a great step forward, thank you.
0
Menu Option Types old Prior Type Parameters which may no longer exist in Parameter File, resulting in Conflict Errors
This odd error was found while using VRCFury on an asset I was "expanding" on. In short. The asset had 8 duplicates, each with their own ID, in turn the parameters are the same, with the exception of the last bit being their respective IDs. Ex: PiShock/Equipped/10 If you create a Menu Option as a, say Radial, gave it a parameter that either Currently Exists but later removed, or, never existed. Then change that Menu Option to a Toggle and set a different parameter, which does exist. The old parameter resides in the Menu's file (when viewed in Notepad, my case of image being Notepad++). Though I cannot say this would effect VRChat's Avatar SDK on a Vanilla level, it is hard to trace back when third party tools, like VRCFury, report that /7 is in use on the /10's menu file, yet in Unity it's not visually seen. Switching the Toggle to Radial or 4 axis, will show the incorrect parameter, which you can just simply delete, set back to Toggle, and all is fine. Though there can be multiple solutions, something to help show the old parameter still resides in the Menu Option, or maybe when the Type is changed, remove the old? I'm not entirely sure the best method to resolve the odd lingering parameters in the Menu files. The only way I was able to find this, was opening the Menu file in Notepad, and Ctrl+F the /7. When I reported this in VRCFury's discord, I was informed this same issue came up for another user back on June 6th, when said user duplicated a clothing asset, changed menu types, and resulted in errors for parameters that "shouldn't exist" in their duplicated asset's menu files.
0
Load More