Skip to content
Snippets Groups Projects
Commit 7f36558d authored by David Parks's avatar David Parks
Browse files

merge

parents f96f2231 0c6d1f7c
No related branches found
No related tags found
No related merge requests found
...@@ -125,6 +125,9 @@ void LLDrawPoolAlpha::beginPostDeferredPass(S32 pass) ...@@ -125,6 +125,9 @@ void LLDrawPoolAlpha::beginPostDeferredPass(S32 pass)
{ {
simple_shader = &gDeferredAlphaProgram; simple_shader = &gDeferredAlphaProgram;
fullbright_shader = &gObjectFullbrightProgram; fullbright_shader = &gObjectFullbrightProgram;
//prime simple shader (loads shadow relevant uniforms)
gPipeline.bindDeferredShader(*simple_shader);
} }
else else
{ {
...@@ -290,11 +293,6 @@ void LLDrawPoolAlpha::render(S32 pass) ...@@ -290,11 +293,6 @@ void LLDrawPoolAlpha::render(S32 pass)
gGL.setSceneBlendType(LLRender::BT_ALPHA); gGL.setSceneBlendType(LLRender::BT_ALPHA);
} }
if (deferred_render && current_shader != NULL)
{
gPipeline.unbindDeferredShader(*current_shader);
}
if (sShowDebugAlpha) if (sShowDebugAlpha)
{ {
if(gPipeline.canUseWindLightShaders()) if(gPipeline.canUseWindLightShaders())
...@@ -411,29 +409,11 @@ void LLDrawPoolAlpha::renderAlpha(U32 mask) ...@@ -411,29 +409,11 @@ void LLDrawPoolAlpha::renderAlpha(U32 mask)
if(use_shaders && (current_shader != target_shader)) if(use_shaders && (current_shader != target_shader))
{ {
llassert(target_shader != NULL); llassert(target_shader != NULL);
if (deferred_render && current_shader != NULL)
{
gPipeline.unbindDeferredShader(*current_shader);
diffuse_channel = 0;
}
current_shader = target_shader; current_shader = target_shader;
if (deferred_render) current_shader->bind();
{
gPipeline.bindDeferredShader(*current_shader);
diffuse_channel = current_shader->enableTexture(LLViewerShaderMgr::DIFFUSE_MAP);
}
else
{
current_shader->bind();
}
} }
else if (!use_shaders && current_shader != NULL) else if (!use_shaders && current_shader != NULL)
{ {
if (deferred_render)
{
gPipeline.unbindDeferredShader(*current_shader);
diffuse_channel = 0;
}
LLGLSLShader::bindNoShader(); LLGLSLShader::bindNoShader();
current_shader = NULL; current_shader = NULL;
} }
...@@ -510,12 +490,8 @@ void LLDrawPoolAlpha::renderAlpha(U32 mask) ...@@ -510,12 +490,8 @@ void LLDrawPoolAlpha::renderAlpha(U32 mask)
} }
} }
if (deferred_render && current_shader != NULL) LLVertexBuffer::unbind();
{
gPipeline.unbindDeferredShader(*current_shader);
LLVertexBuffer::unbind();
}
if (!light_enabled) if (!light_enabled)
{ {
gPipeline.enableLightsDynamic(); gPipeline.enableLightsDynamic();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment