Skip to content

#5569 Complexity rework#5580

Draft
akleshchev wants to merge 3 commits intorelease/2026.02from
andreyk/5569_complexity_rework
Draft

#5569 Complexity rework#5580
akleshchev wants to merge 3 commits intorelease/2026.02from
andreyk/5569_complexity_rework

Conversation

@akleshchev
Copy link
Contributor

WIP. Draft of logic for partial complexity updates.

It is a mess and not yet tested. It's in 2026.02 because I started work there, will move to develop later.

Cleanup of the function, since these parts should remain unchanged.
@akleshchev akleshchev marked this pull request as draft March 25, 2026 22:05
@github-actions github-actions bot added the c/cpp label Mar 25, 2026
@akleshchev akleshchev requested a review from Copilot March 26, 2026 18:24
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Reworks avatar visual complexity (ARC) updates toward a cached/partial-recalculation model, aiming to avoid expensive full recomputation on every attachment/texture change.

Changes:

  • Adds per-attachment/body/control-avatar complexity caching with dirty-marking APIs on LLVOAvatar.
  • Switches various call sites (e.g., attach/detach, volume complexity updates) to mark components dirty instead of forcing immediate full updates.
  • Refactors complexity reporting into a helper and preserves the previous algorithm as a “legacy” implementation.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 5 comments.

File Description
indra/newview/llvovolume.cpp Updates volume-triggered complexity updates to mark the owning avatar’s attachment complexity dirty.
indra/newview/llvoavatar.h Introduces complexity cache structures, dirty sets, and new complexity update/dirty-mark methods; expands accountRenderComplexityForObject parameters.
indra/newview/llvoavatar.cpp Implements cached complexity computation (full vs partial), adds cache maintenance helpers, updates attach/detach to mark dirty, and extracts reporting logic.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@akleshchev akleshchev force-pushed the andreyk/5569_complexity_rework branch from 3cac2f3 to 6b02f0d Compare March 26, 2026 20:59
@akleshchev akleshchev force-pushed the andreyk/5569_complexity_rework branch from 6b02f0d to fbd0686 Compare March 26, 2026 22:09
@akleshchev akleshchev force-pushed the andreyk/5569_complexity_rework branch from ce92fa2 to 787b972 Compare March 26, 2026 23:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants