Skip to content

Optimize avatar complexity calculations #5579

Description

@akleshchev

Avatar complexity can take a lot of time to calculate, optimize it

An example:
Image

Image Image

Avatar has a single mVisualComplexityStale flag, when it's set viewer recalculates all of the complexity, every texture, mesh, object, not just an added one or changed one. Even lod schanges can trigger this. Ideally state should be stored per object, at minimum simple additions shouldn't force full recalculation. Another options is to split compexity into sections (per joint, hud, textures)

Test plan

  • Enable Advanced menu > Performance Tools > Show avatar complexity
  • Make sure complexity didn't change between 26.2 and 26.3


This repo is using Opire - what does it mean? 👇
💵 Everyone can add rewards for this issue commenting /reward 100 (replace 100 with the amount).
🕵️‍♂️ If someone starts working on this issue to earn the rewards, they can comment /try to let everyone know!
🙌 And when they open the PR, they can comment /claim #5579 either in the PR description or in a PR's comment.

🪙 Also, everyone can tip any user commenting /tip 20 @akleshchev (replace 20 with the amount, and @akleshchev with the user to tip).

📖 If you want to learn more, check out our documentation.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or requesttriageFlags issues that need to be triaged

Type

No type

Fields

No fields configured for issues without a type.

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions