summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xindra/newview/app_settings/settings.xml24
-rwxr-xr-xindra/newview/llvocache.cpp7
2 files changed, 18 insertions, 13 deletions
diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml
index 27342712c6..7bfca2834b 100755
--- a/indra/newview/app_settings/settings.xml
+++ b/indra/newview/app_settings/settings.xml
@@ -4753,18 +4753,7 @@
<string>Boolean</string>
<key>Value</key>
<integer>0</integer>
- </map>
- <key>InvisibleObjectsInMemoryTime</key>
- <map>
- <key>Comment</key>
- <string>Number of frames invisible objects stay in memory before being removed. 0 means never to remove.</string>
- <key>Persist</key>
- <integer>1</integer>
- <key>Type</key>
- <string>U32</string>
- <key>Value</key>
- <integer>64</integer>
- </map>
+ </map>
<key>JoystickAvatarEnabled</key>
<map>
<key>Comment</key>
@@ -6581,6 +6570,17 @@
<key>Value</key>
<integer>0</integer>
</map>
+ <key>NonvisibleObjectsInMemoryTime</key>
+ <map>
+ <key>Comment</key>
+ <string>Number of frames non-visible objects stay in memory before being removed. 0 means never to remove.</string>
+ <key>Persist</key>
+ <integer>1</integer>
+ <key>Type</key>
+ <string>U32</string>
+ <key>Value</key>
+ <integer>64</integer>
+ </map>
<key>NoPreload</key>
<map>
<key>Comment</key>
diff --git a/indra/newview/llvocache.cpp b/indra/newview/llvocache.cpp
index 0466dea39d..f16f3507c3 100755
--- a/indra/newview/llvocache.cpp
+++ b/indra/newview/llvocache.cpp
@@ -347,7 +347,7 @@ void LLVOCacheEntry::updateDebugSettings()
static LLCachedControl<F32> squared_back_angle(gSavedSettings,"BackProjectionAngleSquared");
//the number of frames invisible objects stay in memory
- static LLCachedControl<U32> inv_obj_time(gSavedSettings,"InvisibleObjectsInMemoryTime");
+ static LLCachedControl<U32> inv_obj_time(gSavedSettings,"NonvisibleObjectsInMemoryTime");
sMinFrameRange = inv_obj_time - 1; //make 0 to be the maximum
@@ -374,6 +374,11 @@ bool LLVOCacheEntry::isRecentlyVisible() const
vis = (rad * rad / mSceneContrib < sBackDistanceSquared);
}
+ if(!vis)
+ {
+ vis = (getVisible() + sMinFrameRange > LLViewerOctreeEntryData::getCurrentFrame());
+ }
+
return vis;
}