Collection of theoretical improvements for ATI cards, as well as a couple memory leaks. Thanks to Shyotl for bringing them up and offering solutions.
Signed-off-by: Beeks <HgDelirium@gmail.com>
This commit is contained in:
@@ -2,10 +2,21 @@
|
||||
<llsd>
|
||||
<map>
|
||||
<!--Expanded settings from Vanilla SL -->
|
||||
<key>ShyotlRenderUseStreamVBO</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>Use VBO's for stream buffers</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>Boolean</string>
|
||||
<key>Value</key>
|
||||
<integer>1</integer>
|
||||
</map>
|
||||
<key>AscentShowLookAt</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>Avatar position modifier (X)</string>
|
||||
<string>Show Others' Lookat points</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
|
||||
@@ -99,7 +99,17 @@ void LLFloaterHardwareSettings::refreshEnabledState()
|
||||
!gGLManager.mHasVertexBufferObject)
|
||||
{
|
||||
childSetEnabled("vbo", FALSE);
|
||||
//Streaming VBOs -Shyotl
|
||||
childSetEnabled("vbo_stream", FALSE);
|
||||
}
|
||||
else
|
||||
#if LL_DARWIN
|
||||
childSetEnabled("vbo_stream", FALSE); //Hardcoded disable on mac
|
||||
childSetValue("vbo_stream", (LLSD::Boolean) FALSE); //Hardcoded disable on mac
|
||||
#else
|
||||
childSetEnabled("vbo_stream", LLVertexBuffer::sEnableVBOs);
|
||||
#endif
|
||||
|
||||
|
||||
// if no windlight shaders, turn off nighttime brightness, gamma, and fog distance
|
||||
childSetEnabled("gamma", !gPipeline.canUseWindLightShaders());
|
||||
|
||||
@@ -526,6 +526,8 @@ void settings_setup_listeners()
|
||||
gSavedSettings.getControl("RenderFastAlpha")->getSignal()->connect(boost::bind(&handleResetVertexBuffersChanged, _1));
|
||||
gSavedSettings.getControl("RenderObjectBump")->getSignal()->connect(boost::bind(&handleResetVertexBuffersChanged, _1));
|
||||
gSavedSettings.getControl("RenderMaxVBOSize")->getSignal()->connect(boost::bind(&handleResetVertexBuffersChanged, _1));
|
||||
//See LL jira VWR-3258 comment section. Implemented by LL in 2.1 -Shyotl
|
||||
gSavedSettings.getControl("ShyotlRenderUseStreamVBO")->getSignal()->connect(boost::bind(&handleResetVertexBuffersChanged, _1));
|
||||
gSavedSettings.getControl("RenderUseFBO")->getSignal()->connect(boost::bind(&handleRenderUseFBOChanged, _1));
|
||||
gSavedSettings.getControl("RenderDeferredNoise")->getSignal()->connect(boost::bind(&handleReleaseGLBufferChanged, _1));
|
||||
gSavedSettings.getControl("RenderUseImpostors")->getSignal()->connect(boost::bind(&handleRenderUseImpostorsChanged, _1));
|
||||
|
||||
@@ -102,6 +102,10 @@
|
||||
#include "llspatialpartition.h"
|
||||
#include "llmutelist.h"
|
||||
|
||||
#if !LL_DARWIN
|
||||
#include "llfloaterhardwaresettings.h"
|
||||
#endif
|
||||
|
||||
#ifdef _DEBUG
|
||||
// Debug indices is disabled for now for debug performance - djs 4/24/02
|
||||
//#define DEBUG_INDICES
|
||||
@@ -321,6 +325,7 @@ void LLPipeline::init()
|
||||
|
||||
sDynamicLOD = gSavedSettings.getBOOL("RenderDynamicLOD");
|
||||
sRenderBump = gSavedSettings.getBOOL("RenderObjectBump");
|
||||
LLVertexBuffer::sUseStreamDraw = gSavedSettings.getBOOL("ShyotlRenderUseStreamVBO");
|
||||
sRenderAttachedLights = gSavedSettings.getBOOL("RenderAttachedLights");
|
||||
sRenderAttachedParticles = gSavedSettings.getBOOL("RenderAttachedParticles");
|
||||
|
||||
@@ -4911,6 +4916,10 @@ void LLPipeline::setUseVBO(BOOL use_vbo)
|
||||
|
||||
resetVertexBuffers();
|
||||
LLVertexBuffer::initClass(use_vbo);
|
||||
#if !LL_DARWIN
|
||||
if(LLFloaterHardwareSettings::isOpen())
|
||||
LLFloaterHardwareSettings::instance()->refreshEnabledState();
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -63,7 +63,12 @@
|
||||
mouse_opaque="true" name="vbo" radio_style="false"
|
||||
tool_tip="Enabling this on modern hardware gives a performance gain. However, older hardware often has poor implementations of VBOs and you may get crashes when this is enabled."
|
||||
width="315" />
|
||||
|
||||
<check_box bottom_delta="-18" control_name="ShyotlRenderUseStreamVBO" enabled="true" follows="left|top"
|
||||
font="SansSerifSmall" height="16" initial_value="false"
|
||||
label="Enable Streamed VBOs" left="157"
|
||||
mouse_opaque="true" name="vbo_stream" radio_style="false"
|
||||
tool_tip="Disabling this may improve performance when VBOs are enabled. Disabling produced observable improvement on various AMD GPUs."
|
||||
width="315" />
|
||||
<slider bottom_delta="-21" can_edit_text="false" control_name="TextureMemory"
|
||||
decimal_digits="0" enabled="true"
|
||||
follows="left|top" height="16" increment="16"
|
||||
|
||||
Reference in New Issue
Block a user