SL-20141 Remove "Local Lights" checkbox and instead make the number of lights rendered scale with the "Quality & speed" slider
parent
5d7b1b09ff
commit
a1a32edf52
|
|
@ -9046,16 +9046,16 @@
|
|||
<key>Value</key>
|
||||
<integer>0</integer>
|
||||
</map>
|
||||
<key>RenderLocalLights</key>
|
||||
<key>RenderLocalLightCount</key>
|
||||
<map>
|
||||
<key>Comment</key>
|
||||
<string>Whether or not to render local lights.</string>
|
||||
<string>Number of local lights to render.</string>
|
||||
<key>Persist</key>
|
||||
<integer>1</integer>
|
||||
<key>Type</key>
|
||||
<string>Boolean</string>
|
||||
<string>S32</string>
|
||||
<key>Value</key>
|
||||
<integer>1</integer>
|
||||
<integer>256</integer>
|
||||
</map>
|
||||
<key>RenderShadowSplitExponent</key>
|
||||
<map>
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
version 58
|
||||
version 59
|
||||
// The version number above should be incremented IF AND ONLY IF some
|
||||
// change has been made that is sufficiently important to justify
|
||||
// resetting the graphics preferences of all users to the recommended
|
||||
|
|
@ -42,7 +42,7 @@ RenderGamma 1 0
|
|||
RenderGlowResolutionPow 1 9
|
||||
RenderMaxPartCount 1 8192
|
||||
RenderObjectBump 1 1
|
||||
RenderLocalLights 1 1
|
||||
RenderLocalLightCount 1 4096
|
||||
RenderTransparentWater 1 1
|
||||
RenderReflectionsEnabled 1 1
|
||||
RenderReflectionProbeDetail 1 2
|
||||
|
|
@ -87,10 +87,10 @@ RenderAvatarMaxComplexity 1 35000
|
|||
RenderFarClip 1 64
|
||||
RenderFlexTimeFactor 1 0
|
||||
RenderGlowResolutionPow 1 8
|
||||
RenderLocalLights 1 0
|
||||
RenderLocalLightCount 1 8
|
||||
RenderMaxPartCount 1 0
|
||||
RenderTransparentWater 1 0
|
||||
RenderReflectionsEnabled 1 0
|
||||
RenderReflectionsEnabled 1 1
|
||||
RenderReflectionProbeDetail 1 0
|
||||
RenderTerrainDetail 1 0
|
||||
RenderTerrainLODFactor 1 1
|
||||
|
|
@ -117,7 +117,7 @@ RenderFarClip 1 96
|
|||
RenderFlexTimeFactor 1 1.0
|
||||
RenderGlowResolutionPow 1 8
|
||||
RenderMaxPartCount 1 2048
|
||||
RenderLocalLights 1 1
|
||||
RenderLocalLightCount 1 256
|
||||
RenderTransparentWater 1 0
|
||||
RenderReflectionsEnabled 1 1
|
||||
RenderReflectionProbeDetail 1 0
|
||||
|
|
@ -146,7 +146,7 @@ RenderFarClip 1 128
|
|||
RenderFlexTimeFactor 1 1.0
|
||||
RenderGlowResolutionPow 1 9
|
||||
RenderMaxPartCount 1 4096
|
||||
RenderLocalLights 1 1
|
||||
RenderLocalLightCount 1 512
|
||||
RenderTransparentWater 1 0
|
||||
RenderTerrainDetail 1 1
|
||||
RenderTerrainLODFactor 1 2.0
|
||||
|
|
@ -175,7 +175,7 @@ RenderFarClip 1 128
|
|||
RenderFlexTimeFactor 1 1.0
|
||||
RenderGlowResolutionPow 1 9
|
||||
RenderMaxPartCount 1 4096
|
||||
RenderLocalLights 1 1
|
||||
RenderLocalLightCount 1 1024
|
||||
RenderTransparentWater 1 1
|
||||
RenderTerrainDetail 1 1
|
||||
RenderTerrainLODFactor 1 2.0
|
||||
|
|
@ -204,7 +204,7 @@ RenderFarClip 1 128
|
|||
RenderFlexTimeFactor 1 1.0
|
||||
RenderGlowResolutionPow 1 9
|
||||
RenderMaxPartCount 1 4096
|
||||
RenderLocalLights 1 1
|
||||
RenderLocalLightCount 1 2048
|
||||
RenderTransparentWater 1 1
|
||||
RenderTerrainDetail 1 1
|
||||
RenderTerrainLODFactor 1 2.0
|
||||
|
|
@ -233,7 +233,7 @@ RenderFarClip 1 128
|
|||
RenderFlexTimeFactor 1 1.0
|
||||
RenderGlowResolutionPow 1 9
|
||||
RenderMaxPartCount 1 4096
|
||||
RenderLocalLights 1 1
|
||||
RenderLocalLightCount 1 4096
|
||||
RenderTerrainDetail 1 1
|
||||
RenderTerrainLODFactor 1 2.0
|
||||
RenderTransparentWater 1 1
|
||||
|
|
@ -260,7 +260,7 @@ RenderAvatarPhysicsLODFactor 1 1.0
|
|||
RenderFarClip 1 256
|
||||
RenderFlexTimeFactor 1 1.0
|
||||
RenderGlowResolutionPow 1 9
|
||||
RenderLocalLights 1 1
|
||||
RenderLocalLightCount 1 8192
|
||||
RenderMaxPartCount 1 8192
|
||||
RenderTerrainDetail 1 1
|
||||
RenderTerrainLODFactor 1 2.0
|
||||
|
|
@ -299,7 +299,7 @@ list safe
|
|||
RenderAnisotropic 1 0
|
||||
RenderAvatarMaxNonImpostors 1 16
|
||||
RenderAvatarMaxComplexity 1 80000
|
||||
RenderLocalLights 1 0
|
||||
RenderLocalLightCount 1 0
|
||||
RenderMaxPartCount 1 1024
|
||||
RenderTerrainDetail 1 0
|
||||
RenderTransparentWater 1 0
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
version 53
|
||||
version 54
|
||||
// The version number above should be incremented IF AND ONLY IF some
|
||||
// change has been made that is sufficiently important to justify
|
||||
// resetting the graphics preferences of all users to the recommended
|
||||
|
|
@ -42,7 +42,7 @@ RenderGamma 1 0
|
|||
RenderGlowResolutionPow 1 9
|
||||
RenderMaxPartCount 1 8192
|
||||
RenderObjectBump 1 1
|
||||
RenderLocalLights 1 1
|
||||
RenderLocalLightCount 1 4096
|
||||
RenderTerrainDetail 1 1
|
||||
RenderTerrainLODFactor 1 2.0
|
||||
RenderTransparentWater 1 1
|
||||
|
|
@ -85,7 +85,7 @@ RenderAvatarMaxComplexity 1 35000
|
|||
RenderFarClip 1 64
|
||||
RenderFlexTimeFactor 1 0
|
||||
RenderGlowResolutionPow 1 8
|
||||
RenderLocalLights 1 0
|
||||
RenderLocalLightCount 1 8
|
||||
RenderMaxPartCount 1 0
|
||||
RenderTerrainDetail 1 0
|
||||
RenderTerrainLODFactor 1 1
|
||||
|
|
@ -97,7 +97,7 @@ RenderUseAdvancedAtmospherics 1 0
|
|||
RenderShadowDetail 1 0
|
||||
WLSkyDetail 1 96
|
||||
RenderFSAASamples 1 0
|
||||
RenderReflectionsEnabled 1 0
|
||||
RenderReflectionsEnabled 1 1
|
||||
RenderReflectionProbeDetail 1 0
|
||||
RenderScreenSpaceReflections 1 0
|
||||
RenderReflectionProbeLevel 1 0
|
||||
|
|
@ -115,7 +115,7 @@ RenderFarClip 1 96
|
|||
RenderFlexTimeFactor 1 1.0
|
||||
RenderGlowResolutionPow 1 8
|
||||
RenderMaxPartCount 1 2048
|
||||
RenderLocalLights 1 1
|
||||
RenderLocalLightCount 1 256
|
||||
RenderTerrainDetail 1 1
|
||||
RenderTerrainLODFactor 1 1.0
|
||||
RenderTransparentWater 1 1
|
||||
|
|
@ -144,7 +144,7 @@ RenderFarClip 1 128
|
|||
RenderFlexTimeFactor 1 1.0
|
||||
RenderGlowResolutionPow 1 9
|
||||
RenderMaxPartCount 1 4096
|
||||
RenderLocalLights 1 1
|
||||
RenderLocalLightCount 1 512
|
||||
RenderTerrainDetail 1 1
|
||||
RenderTerrainLODFactor 1 2.0
|
||||
RenderTransparentWater 1 1
|
||||
|
|
@ -173,7 +173,7 @@ RenderFarClip 1 128
|
|||
RenderFlexTimeFactor 1 1.0
|
||||
RenderGlowResolutionPow 1 9
|
||||
RenderMaxPartCount 1 4096
|
||||
RenderLocalLights 1 1
|
||||
RenderLocalLightCount 1 1024
|
||||
RenderTerrainDetail 1 1
|
||||
RenderTerrainLODFactor 1 2.0
|
||||
RenderTransparentWater 1 1
|
||||
|
|
@ -202,7 +202,7 @@ RenderFarClip 1 128
|
|||
RenderFlexTimeFactor 1 1.0
|
||||
RenderGlowResolutionPow 1 9
|
||||
RenderMaxPartCount 1 4096
|
||||
RenderLocalLights 1 1
|
||||
RenderLocalLightCount 1 2048
|
||||
RenderTerrainDetail 1 1
|
||||
RenderTerrainLODFactor 1 2.0
|
||||
RenderTransparentWater 1 1
|
||||
|
|
@ -231,7 +231,7 @@ RenderFarClip 1 128
|
|||
RenderFlexTimeFactor 1 1.0
|
||||
RenderGlowResolutionPow 1 9
|
||||
RenderMaxPartCount 1 4096
|
||||
RenderLocalLights 1 1
|
||||
RenderLocalLightCount 1 4096
|
||||
RenderTerrainDetail 1 1
|
||||
RenderTerrainLODFactor 1 2.0
|
||||
RenderTransparentWater 1 1
|
||||
|
|
@ -258,7 +258,7 @@ RenderAvatarMaxNonImpostors 1 16
|
|||
RenderFarClip 1 256
|
||||
RenderFlexTimeFactor 1 1.0
|
||||
RenderGlowResolutionPow 1 9
|
||||
RenderLocalLights 1 1
|
||||
RenderLocalLightCount 1 8192
|
||||
RenderMaxPartCount 1 8192
|
||||
RenderTerrainDetail 1 1
|
||||
RenderTerrainLODFactor 1 2.0
|
||||
|
|
@ -298,7 +298,7 @@ list safe
|
|||
RenderAnisotropic 1 0
|
||||
RenderAvatarMaxNonImpostors 1 16
|
||||
RenderAvatarMaxComplexity 1 80000
|
||||
RenderLocalLights 1 0
|
||||
RenderLocalLightCount 1 0
|
||||
RenderMaxPartCount 1 1024
|
||||
RenderTerrainDetail 1 0
|
||||
RenderDeferredSSAO 0 0
|
||||
|
|
@ -313,7 +313,6 @@ RenderDeferredSSAO 1 0
|
|||
|
||||
list Intel
|
||||
RenderAnisotropic 1 0
|
||||
RenderLocalLights 1 0
|
||||
RenderFSAASamples 1 0
|
||||
|
||||
list GL3
|
||||
|
|
|
|||
|
|
@ -414,12 +414,6 @@ static bool handleRenderDynamicLODChanged(const LLSD& newvalue)
|
|||
return true;
|
||||
}
|
||||
|
||||
static bool handleRenderLocalLightsChanged(const LLSD& newvalue)
|
||||
{
|
||||
gPipeline.setLightingDetail(-1);
|
||||
return true;
|
||||
}
|
||||
|
||||
static bool handleReflectionProbeDetailChanged(const LLSD& newvalue)
|
||||
{
|
||||
if (gPipeline.isInit())
|
||||
|
|
@ -722,7 +716,6 @@ void settings_setup_listeners()
|
|||
setting_setup_signal_listener(gSavedSettings, "RenderFogRatio", handleFogRatioChanged);
|
||||
setting_setup_signal_listener(gSavedSettings, "RenderMaxPartCount", handleMaxPartCountChanged);
|
||||
setting_setup_signal_listener(gSavedSettings, "RenderDynamicLOD", handleRenderDynamicLODChanged);
|
||||
setting_setup_signal_listener(gSavedSettings, "RenderLocalLights", handleRenderLocalLightsChanged);
|
||||
setting_setup_signal_listener(gSavedSettings, "RenderVSyncEnable", handleVSyncChanged);
|
||||
setting_setup_signal_listener(gSavedSettings, "RenderDeferredNoise", handleReleaseGLBufferChanged);
|
||||
setting_setup_signal_listener(gSavedSettings, "RenderDebugPipeline", handleRenderDebugPipelineChanged);
|
||||
|
|
|
|||
|
|
@ -413,9 +413,6 @@ void LLViewerShaderMgr::setShaders()
|
|||
gViewerWindow->setCursor(UI_CURSOR_WAIT);
|
||||
}
|
||||
|
||||
// Lighting
|
||||
gPipeline.setLightingDetail(-1);
|
||||
|
||||
// Shaders
|
||||
LL_INFOS("ShaderLoading") << "\n~~~~~~~~~~~~~~~~~~\n Loading Shaders:\n~~~~~~~~~~~~~~~~~~" << LL_ENDL;
|
||||
LL_INFOS("ShaderLoading") << llformat("Using GLSL %d.%d", gGLManager.mGLSLVersionMajor, gGLManager.mGLSLVersionMinor) << LL_ENDL;
|
||||
|
|
@ -580,21 +577,6 @@ std::string LLViewerShaderMgr::loadBasicShaders()
|
|||
|
||||
S32 sum_lights_class = 3;
|
||||
|
||||
// class one cards will get the lower sum lights
|
||||
// class zero we're not going to think about
|
||||
// since a class zero card COULD be a ridiculous new card
|
||||
// and old cards should have the features masked
|
||||
if(LLFeatureManager::getInstance()->getGPUClass() == GPU_CLASS_1)
|
||||
{
|
||||
sum_lights_class = 2;
|
||||
}
|
||||
|
||||
// If we have sun and moon only checked, then only sum those lights.
|
||||
if (gPipeline.getLightingDetail() == 0)
|
||||
{
|
||||
sum_lights_class = 1;
|
||||
}
|
||||
|
||||
#if LL_DARWIN
|
||||
// Work around driver crashes on older Macs when using deferred rendering
|
||||
// NORSPEC-59
|
||||
|
|
|
|||
|
|
@ -192,7 +192,6 @@ LLTrace::SampleStatHandle<> FPS_SAMPLE("fpssample"),
|
|||
NUM_OBJECTS("numobjectsstat"),
|
||||
NUM_ACTIVE_OBJECTS("numactiveobjectsstat"),
|
||||
ENABLE_VBO("enablevbo", "Vertex Buffers Enabled"),
|
||||
LIGHTING_DETAIL("lightingdetail", "Lighting Detail"),
|
||||
VISIBLE_AVATARS("visibleavatars", "Visible Avatars"),
|
||||
SHADER_OBJECTS("shaderobjects", "Object Shaders"),
|
||||
DRAW_DISTANCE("drawdistance", "Draw Distance"),
|
||||
|
|
@ -402,7 +401,6 @@ void update_statistics()
|
|||
record(LLStatViewer::TRIANGLES_DRAWN_PER_FRAME, last_frame_recording.getSum(LLStatViewer::TRIANGLES_DRAWN));
|
||||
|
||||
sample(LLStatViewer::ENABLE_VBO, (F64)gSavedSettings.getBOOL("RenderVBOEnable"));
|
||||
sample(LLStatViewer::LIGHTING_DETAIL, (F64)gPipeline.getLightingDetail());
|
||||
sample(LLStatViewer::DRAW_DISTANCE, (F64)gSavedSettings.getF32("RenderFarClip"));
|
||||
sample(LLStatViewer::CHAT_BUBBLES, gSavedSettings.getBOOL("UseChatBubbles"));
|
||||
|
||||
|
|
|
|||
|
|
@ -130,7 +130,6 @@ S32 LLPipeline::RenderShadowDetail;
|
|||
S32 LLPipeline::RenderShadowSplits;
|
||||
bool LLPipeline::RenderDeferredSSAO;
|
||||
F32 LLPipeline::RenderShadowResolutionScale;
|
||||
bool LLPipeline::RenderLocalLights;
|
||||
bool LLPipeline::RenderDelayCreation;
|
||||
bool LLPipeline::RenderAnimateRes;
|
||||
bool LLPipeline::FreezeTime;
|
||||
|
|
@ -349,8 +348,7 @@ LLPipeline::LLPipeline() :
|
|||
mResetVertexBuffers(false),
|
||||
mLastRebuildPool(NULL),
|
||||
mLightMask(0),
|
||||
mLightMovingMask(0),
|
||||
mLightingDetail(0)
|
||||
mLightMovingMask(0)
|
||||
{
|
||||
mNoiseMap = 0;
|
||||
mTrueNoiseMap = 0;
|
||||
|
|
@ -471,8 +469,6 @@ void LLPipeline::init()
|
|||
mScreenTriangleVB->unmapBuffer();
|
||||
}
|
||||
|
||||
setLightingDetail(-1);
|
||||
|
||||
//
|
||||
// Update all settings to trigger a cached settings refresh
|
||||
//
|
||||
|
|
@ -491,7 +487,6 @@ void LLPipeline::init()
|
|||
connectRefreshCachedSettingsSafe("RenderShadowSplits");
|
||||
connectRefreshCachedSettingsSafe("RenderDeferredSSAO");
|
||||
connectRefreshCachedSettingsSafe("RenderShadowResolutionScale");
|
||||
connectRefreshCachedSettingsSafe("RenderLocalLights");
|
||||
connectRefreshCachedSettingsSafe("RenderDelayCreation");
|
||||
connectRefreshCachedSettingsSafe("RenderAnimateRes");
|
||||
connectRefreshCachedSettingsSafe("FreezeTime");
|
||||
|
|
@ -982,7 +977,6 @@ void LLPipeline::refreshCachedSettings()
|
|||
RenderShadowSplits = gSavedSettings.getS32("RenderShadowSplits");
|
||||
RenderDeferredSSAO = gSavedSettings.getBOOL("RenderDeferredSSAO");
|
||||
RenderShadowResolutionScale = gSavedSettings.getF32("RenderShadowResolutionScale");
|
||||
RenderLocalLights = gSavedSettings.getBOOL("RenderLocalLights");
|
||||
RenderDelayCreation = gSavedSettings.getBOOL("RenderDelayCreation");
|
||||
RenderAnimateRes = gSavedSettings.getBOOL("RenderAnimateRes");
|
||||
FreezeTime = gSavedSettings.getBOOL("FreezeTime");
|
||||
|
|
@ -1356,39 +1350,6 @@ void LLPipeline::enableShadows(const bool enable_shadows)
|
|||
//should probably do something here to wrangle shadows....
|
||||
}
|
||||
|
||||
S32 LLPipeline::getMaxLightingDetail() const
|
||||
{
|
||||
/*if (mShaderLevel[SHADER_OBJECT] >= LLDrawPoolSimple::SHADER_LEVEL_LOCAL_LIGHTS)
|
||||
{
|
||||
return 3;
|
||||
}
|
||||
else*/
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
}
|
||||
|
||||
S32 LLPipeline::setLightingDetail(S32 level)
|
||||
{
|
||||
refreshCachedSettings();
|
||||
|
||||
if (level < 0)
|
||||
{
|
||||
if (RenderLocalLights)
|
||||
{
|
||||
level = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
level = 0;
|
||||
}
|
||||
}
|
||||
level = llclamp(level, 0, getMaxLightingDetail());
|
||||
mLightingDetail = level;
|
||||
|
||||
return mLightingDetail;
|
||||
}
|
||||
|
||||
class LLOctreeDirtyTexture : public OctreeTraveler
|
||||
{
|
||||
public:
|
||||
|
|
@ -5251,7 +5212,9 @@ void LLPipeline::calcNearbyLights(LLCamera& camera)
|
|||
return;
|
||||
}
|
||||
|
||||
if (mLightingDetail >= 1)
|
||||
static LLCachedControl<S32> local_light_count(gSavedSettings, "RenderLocalLightCount", 256);
|
||||
|
||||
if (local_light_count >= 1)
|
||||
{
|
||||
// mNearbyLight (and all light_set_t's) are sorted such that
|
||||
// begin() == the closest light and rbegin() == the farthest light
|
||||
|
|
@ -5518,7 +5481,9 @@ void LLPipeline::setupHWLights()
|
|||
|
||||
mLightMovingMask = 0;
|
||||
|
||||
if (mLightingDetail >= 1)
|
||||
static LLCachedControl<S32> local_light_count(gSavedSettings, "RenderLocalLightCount", 256);
|
||||
|
||||
if (local_light_count >= 1)
|
||||
{
|
||||
for (light_set_t::iterator iter = mNearbyLights.begin();
|
||||
iter != mNearbyLights.end(); ++iter)
|
||||
|
|
@ -5661,10 +5626,6 @@ void LLPipeline::enableLights(U32 mask)
|
|||
{
|
||||
assertInitialized();
|
||||
|
||||
if (mLightingDetail == 0)
|
||||
{
|
||||
mask &= 0xf003; // sun and backlight only (and fullbright bit)
|
||||
}
|
||||
if (mLightMask != mask)
|
||||
{
|
||||
stop_glerror();
|
||||
|
|
@ -5692,28 +5653,13 @@ void LLPipeline::enableLights(U32 mask)
|
|||
}
|
||||
}
|
||||
|
||||
void LLPipeline::enableLightsStatic()
|
||||
{
|
||||
assertInitialized();
|
||||
U32 mask = 0x01; // Sun
|
||||
if (mLightingDetail >= 2)
|
||||
{
|
||||
mask |= mLightMovingMask; // Hardware moving lights
|
||||
}
|
||||
else
|
||||
{
|
||||
mask |= 0xff & (~2); // Hardware local lights
|
||||
}
|
||||
enableLights(mask);
|
||||
}
|
||||
|
||||
void LLPipeline::enableLightsDynamic()
|
||||
{
|
||||
assertInitialized();
|
||||
U32 mask = 0xff & (~2); // Local lights
|
||||
enableLights(mask);
|
||||
|
||||
if (isAgentAvatarValid() && getLightingDetail() <= 0)
|
||||
if (isAgentAvatarValid())
|
||||
{
|
||||
if (gAgentAvatarp->mSpecialRenderMode == 0) // normal
|
||||
{
|
||||
|
|
@ -7961,9 +7907,9 @@ void LLPipeline::renderDeferredLighting()
|
|||
unbindDeferredShader(LLPipeline::sUnderWaterRender ? gDeferredSoftenWaterProgram : gDeferredSoftenProgram);
|
||||
}
|
||||
|
||||
bool render_local = RenderLocalLights; // && !gCubeSnapshot;
|
||||
static LLCachedControl<S32> local_light_count(gSavedSettings, "RenderLocalLightCount", 256);
|
||||
|
||||
if (render_local)
|
||||
if (local_light_count > 0)
|
||||
{
|
||||
gGL.setSceneBlendType(LLRender::BT_ADD);
|
||||
std::list<LLVector4> fullscreen_lights;
|
||||
|
|
@ -7998,8 +7944,15 @@ void LLPipeline::renderDeferredLighting()
|
|||
// mNearbyLights already includes distance calculation and excludes muted avatars.
|
||||
// It is calculated from mLights
|
||||
// mNearbyLights also provides fade value to gracefully fade-out out of range lights
|
||||
S32 count = 0;
|
||||
for (light_set_t::iterator iter = mNearbyLights.begin(); iter != mNearbyLights.end(); ++iter)
|
||||
{
|
||||
count++;
|
||||
if (count > local_light_count)
|
||||
{ //stop collecting lights once we hit the limit
|
||||
break;
|
||||
}
|
||||
|
||||
LLDrawable * drawablep = iter->drawable;
|
||||
LLVOVolume * volume = drawablep->getVOVolume();
|
||||
if (!volume)
|
||||
|
|
@ -8046,24 +7999,20 @@ void LLPipeline::renderDeferredLighting()
|
|||
camera->getOrigin().mV[1] > c[1] + s + 0.2f || camera->getOrigin().mV[1] < c[1] - s - 0.2f ||
|
||||
camera->getOrigin().mV[2] > c[2] + s + 0.2f || camera->getOrigin().mV[2] < c[2] - s - 0.2f)
|
||||
{ // draw box if camera is outside box
|
||||
if (render_local)
|
||||
if (volume->isLightSpotlight())
|
||||
{
|
||||
if (volume->isLightSpotlight())
|
||||
{
|
||||
drawablep->getVOVolume()->updateSpotLightPriority();
|
||||
spot_lights.push_back(drawablep);
|
||||
continue;
|
||||
}
|
||||
|
||||
gDeferredLightProgram.uniform3fv(LLShaderMgr::LIGHT_CENTER, 1, c);
|
||||
gDeferredLightProgram.uniform1f(LLShaderMgr::LIGHT_SIZE, s);
|
||||
gDeferredLightProgram.uniform3fv(LLShaderMgr::DIFFUSE_COLOR, 1, col.mV);
|
||||
gDeferredLightProgram.uniform1f(LLShaderMgr::LIGHT_FALLOFF, volume->getLightFalloff(DEFERRED_LIGHT_FALLOFF));
|
||||
gGL.syncMatrices();
|
||||
|
||||
mCubeVB->drawRange(LLRender::TRIANGLE_FAN, 0, 7, 8, get_box_fan_indices(camera, center));
|
||||
stop_glerror();
|
||||
drawablep->getVOVolume()->updateSpotLightPriority();
|
||||
spot_lights.push_back(drawablep);
|
||||
continue;
|
||||
}
|
||||
|
||||
gDeferredLightProgram.uniform3fv(LLShaderMgr::LIGHT_CENTER, 1, c);
|
||||
gDeferredLightProgram.uniform1f(LLShaderMgr::LIGHT_SIZE, s);
|
||||
gDeferredLightProgram.uniform3fv(LLShaderMgr::DIFFUSE_COLOR, 1, col.mV);
|
||||
gDeferredLightProgram.uniform1f(LLShaderMgr::LIGHT_FALLOFF, volume->getLightFalloff(DEFERRED_LIGHT_FALLOFF));
|
||||
gGL.syncMatrices();
|
||||
|
||||
mCubeVB->drawRange(LLRender::TRIANGLE_FAN, 0, 7, 8, get_box_fan_indices(camera, center));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
|||
|
|
@ -239,12 +239,6 @@ public:
|
|||
void releaseSunShadowTargets();
|
||||
void releaseSunShadowTarget(U32 index);
|
||||
|
||||
// void setLocalLighting(const bool local_lighting);
|
||||
// bool isLocalLightingEnabled() const;
|
||||
S32 setLightingDetail(S32 level);
|
||||
S32 getLightingDetail() const { return mLightingDetail; }
|
||||
S32 getMaxLightingDetail() const;
|
||||
|
||||
bool shadersLoaded();
|
||||
bool canUseWindLightShaders() const;
|
||||
bool canUseAntiAliasing() const;
|
||||
|
|
@ -348,7 +342,6 @@ public:
|
|||
void setupHWLights();
|
||||
void setupAvatarLights(bool for_edit = false);
|
||||
void enableLights(U32 mask);
|
||||
void enableLightsStatic();
|
||||
void enableLightsDynamic();
|
||||
void enableLightsAvatar();
|
||||
void enableLightsPreview();
|
||||
|
|
@ -945,7 +938,6 @@ protected:
|
|||
|
||||
U32 mLightMask;
|
||||
U32 mLightMovingMask;
|
||||
S32 mLightingDetail;
|
||||
|
||||
static bool sRenderPhysicalBeacons;
|
||||
static bool sRenderMOAPBeacons;
|
||||
|
|
@ -975,7 +967,6 @@ public:
|
|||
static S32 RenderShadowSplits;
|
||||
static bool RenderDeferredSSAO;
|
||||
static F32 RenderShadowResolutionScale;
|
||||
static bool RenderLocalLights;
|
||||
static bool RenderDelayCreation;
|
||||
static bool RenderAnimateRes;
|
||||
static bool FreezeTime;
|
||||
|
|
|
|||
|
|
@ -540,17 +540,6 @@
|
|||
function="Pref.RenderOptionUpdate" />
|
||||
</check_box>
|
||||
|
||||
<check_box
|
||||
control_name="RenderLocalLights"
|
||||
height="16"
|
||||
initial_value="true"
|
||||
label="Local Lights"
|
||||
layout="topleft"
|
||||
left="420"
|
||||
name="LocalLights"
|
||||
top_delta="16"
|
||||
width="300" />
|
||||
|
||||
<slider
|
||||
control_name="WLSkyDetail"
|
||||
decimal_digits="0"
|
||||
|
|
|
|||
Loading…
Reference in New Issue