1. Welcome to VRCat! Please note that this message board is not related to VRChat in any official manner. It is run entirely by the community, and moderated by the community. Any content present has not been reviewed by VRChat moderators or staff. Your use of these forums implies understanding of this message. Thanks!
    Dismiss Notice

Mathematically measure avatar performance?

Discussion in 'Avatars' started by ZircronSwift, Dec 17, 2018.

  1. ZircronSwift

    ZircronSwift Member

    Joined:
    Nov 20, 2017
    Messages:
    13
    Likes Received:
    19
    VRChat:
    ZircronSwift
    There is shockingly little documentation on exactly how expensive components of an avatar have in VRChat. We are told 'polygons don't matter', but how many is too many? There is a lot of generalisation on the guidelines on what makes a performant avatar, but I find the lack of specifics frustrating, and would like to go through the process of being scientific on it and seeing the weight of the various components you can add to an avatar.

    The only issue is that there seems to be no tool to measure that. There was one assets that specifically measure the performance of your avatar against a control, but there was no instructions to interpret the data (the numbers could be interoperated as either the control or the subject being either better or worse by a percentage. It really didn't help). There is a profiler feature in Unity, but after making 230 copies of the control avatar and it still not affecting FPS at all, I realise it would not be feasible for my testing purposes.

    Even if the hit in performance is minuscule and translate to 0FPS in-game, it would be important documentation to emphasise how little that component matters to performance. For the sake of science, does anyone have a way to measure this in an objective way?
     
  2. ultimabear

    ultimabear Member

    Joined:
    Feb 21, 2018
    Messages:
    67
    Likes Received:
    6
    VRChat:
    flyingfunk
    No there is no accurate or simple enough way to do that. Only reasonable solution i can see is to measure it in runtime somehow (in actual gameplay) and do something when it gets too high (warning/kicking or something).