animationmgr: avoid looping over all avars in favor of only active ones
This commit is contained in:
parent
7940f779e9
commit
6c1f4faff2
4 changed files with 23 additions and 9 deletions
|
|
@ -58,12 +58,7 @@ void CAnimationManager::tick() {
|
|||
|
||||
std::vector<CAnimatedVariable*> animationEndedVars;
|
||||
|
||||
for (auto& av : m_lAnimatedVariables) {
|
||||
|
||||
// first of all, check if we need to update it at all
|
||||
// TODO: this has a 100% cache miss rate, maybe move active avars to a separate vec
|
||||
if (!av->m_bIsBeingAnimated)
|
||||
continue;
|
||||
for (auto& av : m_vActiveAnimatedVariables) {
|
||||
|
||||
if (av->m_eDamagePolicy == AVARDAMAGE_SHADOW && !*PSHADOWSENABLED) {
|
||||
av->warp(false);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue