summaryrefslogtreecommitdiff
path: root/indra/newview
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview')
-rw-r--r--indra/newview/app_settings/settings.xml2
-rw-r--r--indra/newview/lldrawpoolbump.cpp1
-rw-r--r--indra/newview/llfloaterpreference.cpp10
-rw-r--r--indra/newview/llviewerobject.cpp2
-rw-r--r--indra/newview/llviewerobjectlist.cpp54
-rw-r--r--indra/newview/llvovolume.cpp8
-rw-r--r--indra/newview/skins/default/xui/en/floater_preferences_graphics_advanced.xml2
7 files changed, 47 insertions, 32 deletions
diff --git a/indra/newview/app_settings/settings.xml b/indra/newview/app_settings/settings.xml
index 8c96ccd107..bea54f0b69 100644
--- a/indra/newview/app_settings/settings.xml
+++ b/indra/newview/app_settings/settings.xml
@@ -9235,7 +9235,7 @@
<key>RenderMaxVRAMBudget</key>
<map>
<key>Comment</key>
- <string>Maximum amount of texture memory to budget for, or 0 for autodetect. Requires restart.</string>
+ <string>Maximum amount of texture memory to budget for (in MB), or 0 for autodetect. Requires restart.</string>
<key>Persist</key>
<integer>1</integer>
<key>Type</key>
diff --git a/indra/newview/lldrawpoolbump.cpp b/indra/newview/lldrawpoolbump.cpp
index cd9ff0192e..684cf55b6b 100644
--- a/indra/newview/lldrawpoolbump.cpp
+++ b/indra/newview/lldrawpoolbump.cpp
@@ -535,7 +535,6 @@ void LLDrawPoolBump::endFullbrightShiny()
if( cube_map )
{
cube_map->disable();
- cube_map->restoreMatrix();
if (shader->mFeatures.hasReflectionProbes)
{
gPipeline.unbindReflectionProbes(*shader);
diff --git a/indra/newview/llfloaterpreference.cpp b/indra/newview/llfloaterpreference.cpp
index b3403fda0f..81b3c23417 100644
--- a/indra/newview/llfloaterpreference.cpp
+++ b/indra/newview/llfloaterpreference.cpp
@@ -1215,6 +1215,16 @@ void LLFloaterPreferenceGraphicsAdvanced::refreshEnabledState()
ctrl_shadow->setEnabled(enabled);
shadow_text->setEnabled(enabled);
+ if (!LLFeatureManager::instance().isFeatureAvailable("RenderFSAASamples"))
+ {
+ getChildView("fsaa")->setEnabled(FALSE);
+ }
+
+ if (!LLFeatureManager::instance().isFeatureAvailable("RenderReflectionProbeDetail"))
+ {
+ getChildView("ReflectionDetail")->setEnabled(FALSE);
+ }
+
// Hardware settings
if (!LLFeatureManager::getInstance()->isFeatureAvailable("RenderCompressTextures"))
diff --git a/indra/newview/llviewerobject.cpp b/indra/newview/llviewerobject.cpp
index 47cb9e9732..2e76103773 100644
--- a/indra/newview/llviewerobject.cpp
+++ b/indra/newview/llviewerobject.cpp
@@ -4062,7 +4062,7 @@ void LLViewerObject::updateTextures()
void LLViewerObject::boostTexturePriority(BOOL boost_children /* = TRUE */)
{
- if (isDead())
+ if (isDead() || !getVolume())
{
return;
}
diff --git a/indra/newview/llviewerobjectlist.cpp b/indra/newview/llviewerobjectlist.cpp
index dc0785f990..816fa6607e 100644
--- a/indra/newview/llviewerobjectlist.cpp
+++ b/indra/newview/llviewerobjectlist.cpp
@@ -789,7 +789,33 @@ void LLViewerObjectList::updateApparentAngles(LLAgent &agent)
max_value = llmin((S32) mObjects.size(), mCurLazyUpdateIndex + num_updates);
}
-#if 0
+ // Iterate through some of the objects and lazy update their texture priorities
+ for (i = mCurLazyUpdateIndex; i < max_value; i++)
+ {
+ objectp = mObjects[i];
+ if (!objectp->isDead())
+ {
+ num_objects++;
+
+ // Update distance & gpw
+ objectp->setPixelAreaAndAngle(agent); // Also sets the approx. pixel area
+ objectp->updateTextures(); // Update the image levels of textures for this object.
+ }
+ }
+
+ mCurLazyUpdateIndex = max_value;
+ if (mCurLazyUpdateIndex == mObjects.size())
+ {
+ // restart
+ mCurLazyUpdateIndex = 0;
+ mCurBin = 0; // keep in sync with index (mObjects.size() could have changed)
+ }
+ else
+ {
+ mCurBin = (mCurBin + 1) % NUM_BINS;
+ }
+
+#if 1
// Slam priorities for textures that we care about (hovered, selected, and focused)
// Hovered
// Assumes only one level deep of parenting
@@ -822,32 +848,6 @@ void LLViewerObjectList::updateApparentAngles(LLAgent &agent)
LLSelectMgr::getInstance()->getSelection()->applyToRootObjects(&func);
#endif
- // Iterate through some of the objects and lazy update their texture priorities
- for (i = mCurLazyUpdateIndex; i < max_value; i++)
- {
- objectp = mObjects[i];
- if (!objectp->isDead())
- {
- num_objects++;
-
- // Update distance & gpw
- objectp->setPixelAreaAndAngle(agent); // Also sets the approx. pixel area
- objectp->updateTextures(); // Update the image levels of textures for this object.
- }
- }
-
- mCurLazyUpdateIndex = max_value;
- if (mCurLazyUpdateIndex == mObjects.size())
- {
- // restart
- mCurLazyUpdateIndex = 0;
- mCurBin = 0; // keep in sync with index (mObjects.size() could have changed)
- }
- else
- {
- mCurBin = (mCurBin + 1) % NUM_BINS;
- }
-
LLVOAvatar::cullAvatarsByPixelArea();
}
diff --git a/indra/newview/llvovolume.cpp b/indra/newview/llvovolume.cpp
index 41b57b8a6b..038935963d 100644
--- a/indra/newview/llvovolume.cpp
+++ b/indra/newview/llvovolume.cpp
@@ -800,7 +800,13 @@ void LLVOVolume::updateTextureVirtualSize(bool forced)
{
continue;
}
-
+
+ // clear out boost selected periodically
+ if (imagep->getBoostLevel() == LLGLTexture::BOOST_SELECTED)
+ {
+ imagep->setBoostLevel(LLGLTexture::BOOST_NONE);
+ }
+
F32 vsize;
F32 old_size = face->getVirtualSize();
diff --git a/indra/newview/skins/default/xui/en/floater_preferences_graphics_advanced.xml b/indra/newview/skins/default/xui/en/floater_preferences_graphics_advanced.xml
index 4a08cc5285..75b50c0e39 100644
--- a/indra/newview/skins/default/xui/en/floater_preferences_graphics_advanced.xml
+++ b/indra/newview/skins/default/xui/en/floater_preferences_graphics_advanced.xml
@@ -666,7 +666,7 @@
layout="topleft"
left_delta="130"
top_delta="0"
- name="ReflectionDetial"
+ name="ReflectionDetail"
width="150">
<combo_box.item
label="Disabled"