Home Artists Posts Import Register

Content

I spent a few hours checking the performance impact of local distortion physics. In the alpha version it's quite significant compared to all other aspects of the plugin.

In my test scene I had one person atom idling and some basic lighting. Even with nothing happening, and most other programs closed, it was pretty hard to get consistent results so I had to repeat the tests quite a few times. Anyway, here are the results, rounded to closest integer.

Baseline comparisons:

  • Plugin not added: 145 fps
  • TM v5.2.4 added: 143-144 fps

TM v6.0 alpha 3 results:

  • Local distortion physics (LDP) off: 143-144 fps - same as v5.2.4
  • LDP on, joint distances calculated (relative to neighboring joints) but no changes being applied to joints: 143 fps
  • LDP on, all physics updated to joints: 133 fps
  • LDP on, only collider radius and depth updated to joints: 136 fps
  • LDP on, all physics except collider radius and depth updated to joints: 139 fps

In short, the biggest performance impact comes from updating the collider radius and depth, though the other parameters are also significant. The fps drop is probably a result of stuff that happens in the background in Unity's physics system / PhysX itself, rather than anything to do with how TittyMagic applies the values to the colliders and joints.

It's unlikely that this can be optimized without sacrificing something. First I'll check how things look if the local distortion physics updates run at half the normal physics rate. If it's not visually noticeable that updates are skipped, that'll be a great solution since it'll likely cut the performance impact in half as well. Might even experiment with lower frequencies than that - probably the frequency should be configurable in the plugin UI, and it should also be possible to toggle the feature on or off per parameter (which it currently does not do even if the effect slider is 0).

I hope that was interesting to someone :)

-everlaster

Comments

babul

In case you decide to reduce updates frequency, I hope there will be some 'max looks, low fps' option in case of using Video Renderer plugin. But if it wouldn't even matter when doing that, then neat.

everlaster

Yeah it'll definitely be configurable, even if there's barely any visual difference :)

Logan

The "Maestro of Mammaries" strikes again! Great job!