diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml index 0b9146e344..d2d87b0f47 100644 --- a/indra/newview/app_settings/settings.xml +++ b/indra/newview/app_settings/settings.xml @@ -6548,6 +6548,17 @@ Value 0 + FSEnableAggressiveComplexityUpdates + + Comment + Enable avctive complexity calculations. This may have a significant detrimental performance impact if enabled. + Persist + 1 + Type + Boolean + Value + 0 + FullScreenAspectRatio Comment diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index 4465716187..2b40e2d4e3 100644 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -11090,9 +11090,12 @@ void LLVOAvatar::calculateUpdateRenderComplexity() // Disable useless diagnostics //static std::set all_textures; - bool needs_update = mVisualComplexityStale && - (mVisualComplexity==VISUAL_COMPLEXITY_UNKNOWN || - mVisualComplexityUpdateTimer.getElapsedTimeF32()>VISUAL_COMPLEXITY_UPDATE_SECONDS); + // remove the timer based complexity updates + //bool needs_update = mVisualComplexityStale && + // (mVisualComplexity==VISUAL_COMPLEXITY_UNKNOWN || + // mVisualComplexityUpdateTimer.getElapsedTimeF32()>VISUAL_COMPLEXITY_UPDATE_SECONDS); + bool needs_update = mVisualComplexityStale; + if (needs_update) { @@ -11260,7 +11263,8 @@ void LLVOAvatar::calculateUpdateRenderComplexity() mVisualComplexity = cost; } mVisualComplexityStale = false; - mVisualComplexityUpdateTimer.reset(); + // Remove the timer for now. + // mVisualComplexityUpdateTimer.reset(); static LLCachedControl show_my_complexity_changes(gSavedSettings, "ShowMyComplexityChanges", 20); diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp index 609efbdd1f..82013fda94 100644 --- a/indra/newview/llvovolume.cpp +++ b/indra/newview/llvovolume.cpp @@ -5613,7 +5613,11 @@ void LLVolumeGeometryManager::rebuildGeom(LLSpatialGroup* group) vobj = bridge->mDrawable->getVObj(); vol_obj = dynamic_cast(vobj); } - if (vol_obj) + // option to reduce the number of complexity updates + // if (vol_obj) + static LLCachedControl< bool >aggressiveComplexityUpdates(gSavedSettings, "FSEnableAggressiveComplexityUpdates", false); + if (aggressiveComplexityUpdates && vol_obj) + // { vol_obj->updateVisualComplexity(); }