summaryrefslogtreecommitdiff
path: root/indra/newview/llfeaturemanager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llfeaturemanager.cpp')
-rw-r--r--indra/newview/llfeaturemanager.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/indra/newview/llfeaturemanager.cpp b/indra/newview/llfeaturemanager.cpp
index a2aae91ae1..f482d5a37d 100644
--- a/indra/newview/llfeaturemanager.cpp
+++ b/indra/newview/llfeaturemanager.cpp
@@ -463,6 +463,18 @@ bool LLFeatureManager::loadGPUClass()
{
mGPUClass = GPU_CLASS_5;
}
+
+ #if LL_WINDOWS
+ const F32Gigabytes MIN_PHYSICAL_MEMORY(2);
+
+ LLMemory::updateMemoryInfo();
+ F32Gigabytes physical_mem = LLMemory::getMaxMemKB();
+ if (MIN_PHYSICAL_MEMORY > physical_mem && mGPUClass > GPU_CLASS_1)
+ {
+ // reduce quality on systems that don't have enough memory
+ mGPUClass = (EGPUClass)(mGPUClass - 1);
+ }
+ #endif //LL_WINDOWS
} //end if benchmark
else
{