SL-10101 Remade most frequent setting calls to cached variants
parent
df497ee700
commit
e1c7688b2c
|
|
@ -5439,7 +5439,8 @@ void LLAppViewer::resumeMainloopTimeout(const std::string& state, F32 secs)
|
|||
{
|
||||
if(secs < 0.0f)
|
||||
{
|
||||
secs = gSavedSettings.getF32("MainloopTimeoutDefault");
|
||||
static LLCachedControl<F32> mainloop_timeout(gSavedSettings, "MainloopTimeoutDefault", 60);
|
||||
secs = mainloop_timeout;
|
||||
}
|
||||
|
||||
mMainloopTimeout->setTimeout(secs);
|
||||
|
|
@ -5466,7 +5467,8 @@ void LLAppViewer::pingMainloopTimeout(const std::string& state, F32 secs)
|
|||
{
|
||||
if(secs < 0.0f)
|
||||
{
|
||||
secs = gSavedSettings.getF32("MainloopTimeoutDefault");
|
||||
static LLCachedControl<F32> mainloop_timeout(gSavedSettings, "MainloopTimeoutDefault", 60);
|
||||
secs = mainloop_timeout;
|
||||
}
|
||||
|
||||
mMainloopTimeout->setTimeout(secs);
|
||||
|
|
|
|||
|
|
@ -4302,10 +4302,13 @@ F32 LLMeshRepository::getStreamingCostLegacy(LLSD& header, F32 radius, S32* byte
|
|||
F32 dlow = llmin(radius/0.06f, max_distance);
|
||||
F32 dmid = llmin(radius/0.24f, max_distance);
|
||||
|
||||
F32 METADATA_DISCOUNT = (F32) gSavedSettings.getU32("MeshMetaDataDiscount"); //discount 128 bytes to cover the cost of LLSD tags and compression domain overhead
|
||||
F32 MINIMUM_SIZE = (F32) gSavedSettings.getU32("MeshMinimumByteSize"); //make sure nothing is "free"
|
||||
static LLCachedControl<U32> metadata_discount_ch(gSavedSettings, "MeshMetaDataDiscount", 384); //discount 128 bytes to cover the cost of LLSD tags and compression domain overhead
|
||||
static LLCachedControl<U32> minimum_size_ch(gSavedSettings, "MeshMinimumByteSize", 16); //make sure nothing is "free"
|
||||
static LLCachedControl<U32> bytes_per_triangle_ch(gSavedSettings, "MeshBytesPerTriangle", 16);
|
||||
|
||||
F32 bytes_per_triangle = (F32) gSavedSettings.getU32("MeshBytesPerTriangle");
|
||||
F32 metadata_discount = (F32)metadata_discount_ch;
|
||||
F32 minimum_size = (F32)minimum_size_ch;
|
||||
F32 bytes_per_triangle = (F32)bytes_per_triangle_ch;
|
||||
|
||||
S32 bytes_lowest = header["lowest_lod"]["size"].asInteger();
|
||||
S32 bytes_low = header["low_lod"]["size"].asInteger();
|
||||
|
|
@ -4332,10 +4335,10 @@ F32 LLMeshRepository::getStreamingCostLegacy(LLSD& header, F32 radius, S32* byte
|
|||
bytes_lowest = bytes_low;
|
||||
}
|
||||
|
||||
F32 triangles_lowest = llmax((F32) bytes_lowest-METADATA_DISCOUNT, MINIMUM_SIZE)/bytes_per_triangle;
|
||||
F32 triangles_low = llmax((F32) bytes_low-METADATA_DISCOUNT, MINIMUM_SIZE)/bytes_per_triangle;
|
||||
F32 triangles_mid = llmax((F32) bytes_mid-METADATA_DISCOUNT, MINIMUM_SIZE)/bytes_per_triangle;
|
||||
F32 triangles_high = llmax((F32) bytes_high-METADATA_DISCOUNT, MINIMUM_SIZE)/bytes_per_triangle;
|
||||
F32 triangles_lowest = llmax((F32) bytes_lowest-metadata_discount, minimum_size)/bytes_per_triangle;
|
||||
F32 triangles_low = llmax((F32) bytes_low-metadata_discount, minimum_size)/bytes_per_triangle;
|
||||
F32 triangles_mid = llmax((F32) bytes_mid-metadata_discount, minimum_size)/bytes_per_triangle;
|
||||
F32 triangles_high = llmax((F32) bytes_high-metadata_discount, minimum_size)/bytes_per_triangle;
|
||||
|
||||
if (bytes)
|
||||
{
|
||||
|
|
@ -4429,13 +4432,13 @@ bool LLMeshCostData::init(const LLSD& header)
|
|||
mSizeByLOD[2] = bytes_med;
|
||||
mSizeByLOD[3] = bytes_high;
|
||||
|
||||
F32 METADATA_DISCOUNT = (F32) gSavedSettings.getU32("MeshMetaDataDiscount"); //discount 128 bytes to cover the cost of LLSD tags and compression domain overhead
|
||||
F32 MINIMUM_SIZE = (F32) gSavedSettings.getU32("MeshMinimumByteSize"); //make sure nothing is "free"
|
||||
F32 bytes_per_triangle = (F32) gSavedSettings.getU32("MeshBytesPerTriangle");
|
||||
static LLCachedControl<U32> metadata_discount(gSavedSettings, "MeshMetaDataDiscount", 384); //discount 128 bytes to cover the cost of LLSD tags and compression domain overhead
|
||||
static LLCachedControl<U32> minimum_size(gSavedSettings, "MeshMinimumByteSize", 16); //make sure nothing is "free"
|
||||
static LLCachedControl<U32> bytes_per_triangle(gSavedSettings, "MeshBytesPerTriangle", 16);
|
||||
|
||||
for (S32 i=0; i<4; i++)
|
||||
{
|
||||
mEstTrisByLOD[i] = llmax((F32) mSizeByLOD[i]-METADATA_DISCOUNT, MINIMUM_SIZE)/bytes_per_triangle;
|
||||
mEstTrisByLOD[i] = llmax((F32)mSizeByLOD[i] - (F32)metadata_discount, (F32)minimum_size) / (F32)bytes_per_triangle;
|
||||
}
|
||||
|
||||
return true;
|
||||
|
|
|
|||
|
|
@ -191,7 +191,9 @@ LLTool* LLTool::getOverrideTool(MASK mask)
|
|||
{
|
||||
return NULL;
|
||||
}
|
||||
if (gSavedSettings.getBOOL("EnableAltZoom"))
|
||||
|
||||
static LLCachedControl<bool> alt_zoom(gSavedSettings, "EnableAltZoom", true);
|
||||
if (alt_zoom)
|
||||
{
|
||||
if (mask & MASK_ALT)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -682,8 +682,8 @@ void LLViewerMedia::updateMedia(void *dummy_arg)
|
|||
|
||||
std::vector<LLViewerMediaImpl*> proximity_order;
|
||||
|
||||
bool inworld_media_enabled = gSavedSettings.getBOOL("AudioStreamingMedia");
|
||||
bool inworld_audio_enabled = gSavedSettings.getBOOL("AudioStreamingMusic");
|
||||
static LLCachedControl<bool> inworld_media_enabled(gSavedSettings, "AudioStreamingMedia", true);
|
||||
static LLCachedControl<bool> inworld_audio_enabled(gSavedSettings, "AudioStreamingMusic", true);
|
||||
U32 max_instances = gSavedSettings.getU32("PluginInstancesTotal");
|
||||
U32 max_normal = gSavedSettings.getU32("PluginInstancesNormal");
|
||||
U32 max_low = gSavedSettings.getU32("PluginInstancesLow");
|
||||
|
|
@ -941,7 +941,8 @@ void LLViewerMedia::setAllMediaEnabled(bool val)
|
|||
LLViewerParcelMedia::play(LLViewerParcelMgr::getInstance()->getAgentParcel());
|
||||
}
|
||||
|
||||
if (gSavedSettings.getBOOL("AudioStreamingMusic") &&
|
||||
static LLCachedControl<bool> audio_streaming_music(gSavedSettings, "AudioStreamingMusic", true);
|
||||
if (audio_streaming_music &&
|
||||
!LLViewerMedia::isParcelAudioPlaying() &&
|
||||
gAudiop &&
|
||||
LLViewerMedia::hasParcelAudio())
|
||||
|
|
@ -1012,7 +1013,8 @@ void LLViewerMedia::setAllMediaPaused(bool val)
|
|||
LLViewerParcelMedia::play(LLViewerParcelMgr::getInstance()->getAgentParcel());
|
||||
}
|
||||
|
||||
if (gSavedSettings.getBOOL("AudioStreamingMusic") &&
|
||||
static LLCachedControl<bool> audio_streaming_music(gSavedSettings, "AudioStreamingMusic", true);
|
||||
if (audio_streaming_music &&
|
||||
!LLViewerMedia::isParcelAudioPlaying() &&
|
||||
gAudiop &&
|
||||
LLViewerMedia::hasParcelAudio())
|
||||
|
|
|
|||
|
|
@ -399,7 +399,8 @@ void LLViewerShaderMgr::setShaders()
|
|||
return;
|
||||
}
|
||||
|
||||
LLGLSLShader::sIndexedTextureChannels = llmax(llmin(gGLManager.mNumTextureImageUnits, (S32) gSavedSettings.getU32("RenderMaxTextureIndex")), 1);
|
||||
static LLCachedControl<U32> max_texture_index(gSavedSettings, "RenderMaxTextureIndex", 16);
|
||||
LLGLSLShader::sIndexedTextureChannels = llmax(llmin(gGLManager.mNumTextureImageUnits, (S32) max_texture_index), 1);
|
||||
|
||||
//NEVER use more than 16 texture channels (work around for prevalent driver bug)
|
||||
LLGLSLShader::sIndexedTextureChannels = llmin(LLGLSLShader::sIndexedTextureChannels, 16);
|
||||
|
|
|
|||
|
|
@ -1380,7 +1380,8 @@ BOOL LLVOVolume::calcLOD()
|
|||
mLODDistance = distance;
|
||||
mLODRadius = radius;
|
||||
|
||||
if (gSavedSettings.getBOOL("DebugObjectLODs"))
|
||||
static LLCachedControl<bool> debug_lods(gSavedSettings, "DebugObjectLODs", false);
|
||||
if (debug_lods)
|
||||
{
|
||||
if (getAvatar() && isRootEdit())
|
||||
{
|
||||
|
|
@ -4276,10 +4277,16 @@ F32 LLVOVolume::getBinRadius()
|
|||
|
||||
F32 scale = 1.f;
|
||||
|
||||
S32 size_factor = llmax(gSavedSettings.getS32("OctreeStaticObjectSizeFactor"), 1);
|
||||
S32 attachment_size_factor = llmax(gSavedSettings.getS32("OctreeAttachmentSizeFactor"), 1);
|
||||
LLVector3 distance_factor = gSavedSettings.getVector3("OctreeDistanceFactor");
|
||||
LLVector3 alpha_distance_factor = gSavedSettings.getVector3("OctreeAlphaDistanceFactor");
|
||||
static LLCachedControl<S32> octree_size_factor(gSavedSettings, "OctreeStaticObjectSizeFactor", 3);
|
||||
static LLCachedControl<S32> octree_attachment_size_factor(gSavedSettings, "OctreeAttachmentSizeFactor", 4);
|
||||
static LLCachedControl<LLVector3> octree_distance_factor(gSavedSettings, "OctreeDistanceFactor", LLVector3(0.01f, 0.f, 0.f));
|
||||
static LLCachedControl<LLVector3> octree_alpha_distance_factor(gSavedSettings, "OctreeAlphaDistanceFactor", LLVector3(0.1f, 0.f, 0.f));
|
||||
|
||||
S32 size_factor = llmax((S32)octree_size_factor, 1);
|
||||
S32 attachment_size_factor = llmax((S32)octree_attachment_size_factor, 1);
|
||||
LLVector3 distance_factor = octree_distance_factor;
|
||||
LLVector3 alpha_distance_factor = octree_alpha_distance_factor;
|
||||
|
||||
const LLVector4a* ext = mDrawable->getSpatialExtents();
|
||||
|
||||
BOOL shrink_wrap = mDrawable->isAnimating();
|
||||
|
|
@ -5352,8 +5359,10 @@ void LLVolumeGeometryManager::rebuildGeom(LLSpatialGroup* group)
|
|||
|
||||
U32 useage = group->getSpatialPartition()->mBufferUsage;
|
||||
|
||||
U32 max_vertices = (gSavedSettings.getS32("RenderMaxVBOSize")*1024)/LLVertexBuffer::calcVertexSize(group->getSpatialPartition()->mVertexDataMask);
|
||||
U32 max_total = (gSavedSettings.getS32("RenderMaxNodeSize")*1024)/LLVertexBuffer::calcVertexSize(group->getSpatialPartition()->mVertexDataMask);
|
||||
LLCachedControl<S32> max_vbo_size(gSavedSettings, "RenderMaxVBOSize", 512);
|
||||
LLCachedControl<S32> max_node_size(gSavedSettings, "RenderMaxNodeSize", 65536);
|
||||
U32 max_vertices = (max_vbo_size * 1024)/LLVertexBuffer::calcVertexSize(group->getSpatialPartition()->mVertexDataMask);
|
||||
U32 max_total = (max_node_size * 1024) / LLVertexBuffer::calcVertexSize(group->getSpatialPartition()->mVertexDataMask);
|
||||
max_vertices = llmin(max_vertices, (U32) 65535);
|
||||
|
||||
U32 cur_total = 0;
|
||||
|
|
@ -6106,7 +6115,8 @@ U32 LLVolumeGeometryManager::genDrawInfo(LLSpatialGroup* group, U32 mask, LLFace
|
|||
#endif
|
||||
|
||||
//calculate maximum number of vertices to store in a single buffer
|
||||
U32 max_vertices = (gSavedSettings.getS32("RenderMaxVBOSize")*1024)/LLVertexBuffer::calcVertexSize(group->getSpatialPartition()->mVertexDataMask);
|
||||
LLCachedControl<S32> max_vbo_size(gSavedSettings, "RenderMaxVBOSize", 512);
|
||||
U32 max_vertices = (max_vbo_size * 1024)/LLVertexBuffer::calcVertexSize(group->getSpatialPartition()->mVertexDataMask);
|
||||
max_vertices = llmin(max_vertices, (U32) 65535);
|
||||
|
||||
{
|
||||
|
|
@ -6149,7 +6159,8 @@ U32 LLVolumeGeometryManager::genDrawInfo(LLSpatialGroup* group, U32 mask, LLFace
|
|||
texture_index_channels = gDeferredAlphaProgram.mFeatures.mIndexedTextureChannels;
|
||||
}
|
||||
|
||||
texture_index_channels = llmin(texture_index_channels, (S32) gSavedSettings.getU32("RenderMaxTextureIndex"));
|
||||
static LLCachedControl<U32> max_texture_index(gSavedSettings, "RenderMaxTextureIndex", 16);
|
||||
texture_index_channels = llmin(texture_index_channels, (S32) max_texture_index);
|
||||
|
||||
//NEVER use more than 16 texture index channels (workaround for prevalent driver bug)
|
||||
texture_index_channels = llmin(texture_index_channels, 16);
|
||||
|
|
|
|||
|
|
@ -335,7 +335,8 @@ BOOL LLVOWLSky::updateGeometry(LLDrawable * drawable)
|
|||
}
|
||||
|
||||
{
|
||||
const U32 max_buffer_bytes = gSavedSettings.getS32("RenderMaxVBOSize")*1024;
|
||||
LLCachedControl<S32> max_vbo_size(gSavedSettings, "RenderMaxVBOSize", 512);
|
||||
const U32 max_buffer_bytes = max_vbo_size * 1024;
|
||||
const U32 data_mask = LLDrawPoolWLSky::SKY_VERTEX_DATA_MASK;
|
||||
const U32 max_verts = max_buffer_bytes / LLVertexBuffer::calcVertexSize(data_mask);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue