Huge renderer update (WIP). Still plenty to do, especially pertaining to UI.
-Nametag bubble visbility is oddly inconsistent. May vanish with future planned UI merges... -VBOs are PAINFULLY slow on ATI hardware. This repos self-compiled davep/shining-fixes branch, so I'll leave the ball in LL's court for now regarding that.
This commit is contained in:
@@ -56,6 +56,7 @@
|
||||
#include "llcontrol.h"
|
||||
#include "llboost.h"
|
||||
#include "llweb.h"
|
||||
#include "llviewershadermgr.h"
|
||||
|
||||
#if LL_WINDOWS
|
||||
#include "lldxhardware.h"
|
||||
@@ -110,7 +111,7 @@ BOOL LLFeatureList::isFeatureAvailable(const std::string& name)
|
||||
return mFeatures[name].mAvailable;
|
||||
}
|
||||
|
||||
LL_WARNS("RenderInit") << "Feature " << name << " not on feature list!" << LL_ENDL;
|
||||
LL_WARNS_ONCE("RenderInit") << "Feature " << name << " not on feature list!" << LL_ENDL;
|
||||
|
||||
// changing this to TRUE so you have to explicitly disable
|
||||
// something for it to be disabled
|
||||
@@ -124,7 +125,7 @@ F32 LLFeatureList::getRecommendedValue(const std::string& name)
|
||||
return mFeatures[name].mRecommendedLevel;
|
||||
}
|
||||
|
||||
LL_WARNS("RenderInit") << "Feature " << name << " not on feature list or not available!" << LL_ENDL;
|
||||
LL_WARNS_ONCE("RenderInit") << "Feature " << name << " not on feature list or not available!" << LL_ENDL;
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -528,6 +529,8 @@ void LLFeatureManager::applyFeatures(bool skipFeatures)
|
||||
|
||||
void LLFeatureManager::setGraphicsLevel(S32 level, bool skipFeatures)
|
||||
{
|
||||
LLViewerShaderMgr::sSkipReload = true;
|
||||
|
||||
applyBaseMasks();
|
||||
|
||||
switch (level)
|
||||
@@ -550,6 +553,9 @@ void LLFeatureManager::setGraphicsLevel(S32 level, bool skipFeatures)
|
||||
}
|
||||
|
||||
applyFeatures(skipFeatures);
|
||||
|
||||
LLViewerShaderMgr::sSkipReload = false;
|
||||
LLViewerShaderMgr::instance()->setShaders();
|
||||
}
|
||||
|
||||
void LLFeatureManager::applyBaseMasks()
|
||||
@@ -591,7 +597,7 @@ void LLFeatureManager::applyBaseMasks()
|
||||
{
|
||||
maskFeatures("NoPixelShaders");
|
||||
}
|
||||
if (!gGLManager.mHasVertexShader)
|
||||
if (!gGLManager.mHasVertexShader || !mGPUSupported)
|
||||
{
|
||||
maskFeatures("NoVertexShaders");
|
||||
}
|
||||
@@ -635,6 +641,10 @@ void LLFeatureManager::applyBaseMasks()
|
||||
{
|
||||
maskFeatures("TexUnit8orLess");
|
||||
}
|
||||
if (gGLManager.mHasMapBufferRange)
|
||||
{
|
||||
maskFeatures("MapBufferRange");
|
||||
}
|
||||
|
||||
// now mask by gpu string
|
||||
// Replaces ' ' with '_' in mGPUString to deal with inability for parser to handle spaces
|
||||
|
||||
Reference in New Issue
Block a user