summaryrefslogtreecommitdiff
path: root/indra/newview/llviewertexturelist.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llviewertexturelist.cpp')
-rwxr-xr-xindra/newview/llviewertexturelist.cpp15
1 files changed, 6 insertions, 9 deletions
diff --git a/indra/newview/llviewertexturelist.cpp b/indra/newview/llviewertexturelist.cpp
index b98726900f..2209b24ca7 100755
--- a/indra/newview/llviewertexturelist.cpp
+++ b/indra/newview/llviewertexturelist.cpp
@@ -1280,7 +1280,7 @@ S32Megabytes LLViewerTextureList::getMaxVideoRamSetting(bool get_recommended, fl
// - it's going to be swapping constantly regardless
S32Megabytes max_vram(gGLManager.mVRAM);
- if(gGLManager.mIsATI)
+ if(!get_recommended && gGLManager.mIsATI)
{
//shrink the availabe vram for ATI cards because some of them do not handel texture swapping well.
max_vram = max_vram * 0.75f;
@@ -1295,15 +1295,15 @@ S32Megabytes LLViewerTextureList::getMaxVideoRamSetting(bool get_recommended, fl
{
if (!get_recommended)
{
- max_texmem = (S32Megabytes)512;
+ max_texmem = (S32Megabytes) 2048;
}
else if (gSavedSettings.getBOOL("NoHardwareProbe")) //did not do hardware detection at startup
{
- max_texmem = (S32Megabytes)512;
+ max_texmem = (S32Megabytes) 2048;
}
else
{
- max_texmem = (S32Megabytes)128;
+ max_texmem = (S32Megabytes) 512;
}
LL_WARNS() << "VRAM amount not detected, defaulting to " << max_texmem << " MB" << LL_ENDL;
@@ -1311,10 +1311,7 @@ S32Megabytes LLViewerTextureList::getMaxVideoRamSetting(bool get_recommended, fl
S32Megabytes system_ram = gSysMemory.getPhysicalMemoryClamped(); // In MB
//LL_INFOS() << "*** DETECTED " << system_ram << " MB of system memory." << LL_ENDL;
- if (get_recommended)
- max_texmem = llmin(max_texmem, system_ram/2);
- else
- max_texmem = llmin(max_texmem, system_ram);
+ max_texmem = llmin(max_texmem, (S32Megabytes)(system_ram));
// limit the texture memory to a multiple of the default if we've found some cards to behave poorly otherwise
max_texmem = llmin(max_texmem, (S32Megabytes) (mem_multiplier * max_texmem));
@@ -1344,7 +1341,7 @@ void LLViewerTextureList::updateMaxResidentTexMem(S32Megabytes mem)
mem = llclamp(mem, getMinVideoRamSetting(), getMaxVideoRamSetting(false, mem_multiplier));
if (mem != cur_mem)
{
- gSavedSettings.setS32("TextureMemory", mem.value());
+ gSavedSettings.setS32("TextureMemory", mem.value()/3);
return; //listener will re-enter this function
}