diff --git a/indra/llrender/llglslshader.cpp b/indra/llrender/llglslshader.cpp index d6ab5208c6f541859d9f8ee30fb94dc9dc8b368a..5a6f3d8292c2daf5db8599e28590faa52ca8becb 100644 --- a/indra/llrender/llglslshader.cpp +++ b/indra/llrender/llglslshader.cpp @@ -1009,9 +1009,8 @@ void LLGLSLShader::vertexAttrib4fv(U32 index, GLfloat* v) } } -void LLGLSLShader::setAlphaRange(F32 minimum, F32 maximum) +void LLGLSLShader::setMinimumAlpha(F32 minimum) { gGL.flush(); - uniform1f("minimum_alpha", minimum); - uniform1f("maximum_alpha", maximum); + uniform1f(LLShaderMgr::MINIMUM_ALPHA, minimum); } diff --git a/indra/llrender/llglslshader.h b/indra/llrender/llglslshader.h index eb19599ecaaf9bea9618ff080d95dd45f17f4271..2a6c050eac9bbe18dd6f22d4fc48a746e4fe9bf9 100644 --- a/indra/llrender/llglslshader.h +++ b/indra/llrender/llglslshader.h @@ -108,7 +108,7 @@ class LLGLSLShader void uniformMatrix3fv(const std::string& uniform, U32 count, GLboolean transpose, const GLfloat *v); void uniformMatrix4fv(const std::string& uniform, U32 count, GLboolean transpose, const GLfloat *v); - void setAlphaRange(F32 minimum, F32 maximum); + void setMinimumAlpha(F32 minimum); void vertexAttrib4f(U32 index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); void vertexAttrib4fv(U32 index, GLfloat* v); diff --git a/indra/llrender/llshadermgr.cpp b/indra/llrender/llshadermgr.cpp index 810afe210d977d9869454cf071f764780fc92e4d..84dc768983de6b853abcc93b00e7096123cbd49f 100644 --- a/indra/llrender/llshadermgr.cpp +++ b/indra/llrender/llshadermgr.cpp @@ -1009,6 +1009,9 @@ void LLShaderMgr::initAttribsAndUniforms() llassert(mReservedUniforms.size() == LLShaderMgr::GLOW_DELTA+1); + + mReservedUniforms.push_back("minimum_alpha"); + mReservedUniforms.push_back("shadow_matrix"); mReservedUniforms.push_back("env_mat"); mReservedUniforms.push_back("shadow_clip"); diff --git a/indra/llrender/llshadermgr.h b/indra/llrender/llshadermgr.h index 9cc2f1bd7f90b83f554b6bf6372c2b7b0afc9ed7..a5150b3e51c70c7a242a4a5914e3116e903d295b 100644 --- a/indra/llrender/llshadermgr.h +++ b/indra/llrender/llshadermgr.h @@ -107,6 +107,8 @@ class LLShaderMgr GLOW_STRENGTH, GLOW_DELTA, + MINIMUM_ALPHA, + DEFERRED_SHADOW_MATRIX, DEFERRED_ENV_MAT, DEFERRED_SHADOW_CLIP, diff --git a/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskF.glsl index 14b79c37fd25120eea29f384c94ce7901ac4ce40..e9989a4e4893ef9163aa232e1aa2fe6d65fc64b4 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskF.glsl @@ -28,7 +28,6 @@ out vec4 gl_FragData[3]; #endif uniform float minimum_alpha; -uniform float maximum_alpha; uniform sampler2D diffuseMap; @@ -40,7 +39,7 @@ void main() { vec4 col = texture2D(diffuseMap, vary_texcoord0.xy) * vertex_color; - if (col.a < minimum_alpha || col.a > maximum_alpha) + if (col.a < minimum_alpha) { discard; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskIndexedF.glsl b/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskIndexedF.glsl index 381fba8813e99ea4fbea82c555408d21676e5ffa..fdf8d72b38f8ddac681a71645790ea13e6672b78 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskIndexedF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskIndexedF.glsl @@ -30,7 +30,6 @@ out vec4 gl_FragData[3]; VARYING vec3 vary_normal; uniform float minimum_alpha; -uniform float maximum_alpha; VARYING vec4 vertex_color; VARYING vec2 vary_texcoord0; @@ -39,7 +38,7 @@ void main() { vec4 col = diffuseLookup(vary_texcoord0.xy) * vertex_color; - if (col.a < minimum_alpha || col.a > maximum_alpha) + if (col.a < minimum_alpha) { discard; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskNoColorF.glsl b/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskNoColorF.glsl index b582ba7f9c5309fd9a13f34391baea94faf031e5..bb20e2ca476ae6c4a141ce3420a0566bb0a5a017 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskNoColorF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/diffuseAlphaMaskNoColorF.glsl @@ -29,7 +29,6 @@ out vec4 gl_FragData[3]; #endif uniform float minimum_alpha; -uniform float maximum_alpha; uniform sampler2D diffuseMap; @@ -40,7 +39,7 @@ void main() { vec4 col = texture2D(diffuseMap, vary_texcoord0.xy); - if (col.a < minimum_alpha || col.a > maximum_alpha) + if (col.a < minimum_alpha) { discard; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/impostorF.glsl b/indra/newview/app_settings/shaders/class1/deferred/impostorF.glsl index 5decddebbbde7f87bf3e5ab1ff6ddd9d331c65c9..a44173a2a4d519f481a5c68976798ea5215d5f28 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/impostorF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/impostorF.glsl @@ -28,7 +28,6 @@ out vec4 gl_FragData[3]; #endif uniform float minimum_alpha; -uniform float maximum_alpha; uniform sampler2D diffuseMap; @@ -41,7 +40,7 @@ void main() { vec4 col = texture2D(diffuseMap, vary_texcoord0.xy); - if (col.a < minimum_alpha || col.a > maximum_alpha) + if (col.a < minimum_alpha) { discard; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/shadowAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/deferred/shadowAlphaMaskF.glsl index 71b12326d8b0a7ece01bf13bc2eb5bca1d678bb2..46d42d2a4ad6d27d635a732682d4344baa7f4f80 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/shadowAlphaMaskF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/shadowAlphaMaskF.glsl @@ -28,7 +28,6 @@ out vec4 gl_FragColor; #endif uniform float minimum_alpha; -uniform float maximum_alpha; uniform sampler2D diffuseMap; @@ -40,7 +39,7 @@ void main() { float alpha = texture2D(diffuseMap, vary_texcoord0.xy).a * vertex_color.a; - if (alpha < minimum_alpha || alpha > maximum_alpha) + if (alpha < minimum_alpha) { discard; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/treeF.glsl b/indra/newview/app_settings/shaders/class1/deferred/treeF.glsl index b934bc6991913b278ffb56f365789f5ea657c96f..ea98d6884ca63a83f63953970de7de5db3637f2c 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/treeF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/treeF.glsl @@ -34,12 +34,11 @@ VARYING vec3 vary_normal; VARYING vec2 vary_texcoord0; uniform float minimum_alpha; -uniform float maximum_alpha; void main() { vec4 col = texture2D(diffuseMap, vary_texcoord0.xy); - if (col.a < minimum_alpha || col.a > maximum_alpha) + if (col.a < minimum_alpha) { discard; } diff --git a/indra/newview/app_settings/shaders/class1/deferred/treeShadowF.glsl b/indra/newview/app_settings/shaders/class1/deferred/treeShadowF.glsl index 29ec6e6beef5c3dfeeb2f247b4cc71cc7d71c4ce..20d01705358e1db54915476bfe3ea372a1985f88 100644 --- a/indra/newview/app_settings/shaders/class1/deferred/treeShadowF.glsl +++ b/indra/newview/app_settings/shaders/class1/deferred/treeShadowF.glsl @@ -28,7 +28,6 @@ out vec4 gl_FragColor; #endif uniform float minimum_alpha; -uniform float maximum_alpha; uniform sampler2D diffuseMap; @@ -39,7 +38,7 @@ void main() { float alpha = texture2D(diffuseMap, vary_texcoord0.xy).a; - if (alpha < minimum_alpha || alpha > maximum_alpha) + if (alpha < minimum_alpha) { discard; } diff --git a/indra/newview/app_settings/shaders/class1/interface/alphamaskF.glsl b/indra/newview/app_settings/shaders/class1/interface/alphamaskF.glsl index 4f2767fc970f6695e6ec0da6a618c7a7fcdefc45..d2f5e1987aa6132df7c1d9dcbccc7e95313734b9 100644 --- a/indra/newview/app_settings/shaders/class1/interface/alphamaskF.glsl +++ b/indra/newview/app_settings/shaders/class1/interface/alphamaskF.glsl @@ -30,7 +30,6 @@ out vec4 gl_FragColor; uniform sampler2D diffuseMap; uniform float minimum_alpha; -uniform float maximum_alpha; VARYING vec2 vary_texcoord0; VARYING vec4 vertex_color; @@ -38,7 +37,7 @@ VARYING vec4 vertex_color; void main() { vec4 col = vertex_color*texture2D(diffuseMap, vary_texcoord0.xy); - if (col.a < minimum_alpha || col.a > maximum_alpha) + if (col.a < minimum_alpha) { discard; } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightAlphaMaskF.glsl index 6815f7aa85af3482d56f803b841300d8db9a7829..10413bdeb093494eb710e9f0f2dcd1664937390d 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightAlphaMaskF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightAlphaMaskF.glsl @@ -28,7 +28,6 @@ out vec4 gl_FragColor; #endif uniform float minimum_alpha; -uniform float maximum_alpha; vec3 atmosLighting(vec3 light); vec3 scaleSoftClip(vec3 light); @@ -40,7 +39,7 @@ void default_lighting() { vec4 color = diffuseLookup(vary_texcoord0.xy) * vertex_color; - if (color.a < minimum_alpha || color.a > maximum_alpha) + if (color.a < minimum_alpha) { discard; } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightAlphaMaskNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightAlphaMaskNonIndexedF.glsl index 2640668d7dce2db2c7412f05712313ba0596e9ec..1164e5b0a69fee830ed7028e78e77ab6f1dc6259 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightAlphaMaskNonIndexedF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightAlphaMaskNonIndexedF.glsl @@ -28,8 +28,6 @@ out vec4 gl_FragColor; #endif uniform float minimum_alpha; -uniform float maximum_alpha; - uniform sampler2D diffuseMap; @@ -43,7 +41,7 @@ void default_lighting() { vec4 color = texture2D(diffuseMap,vary_texcoord0.xy) * vertex_color; - if (color.a < minimum_alpha || color.a > maximum_alpha) + if (color.a < minimum_alpha) { discard; } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightAlphaMaskF.glsl index 92113d9afa6aff8a98cae86f3339249307eff3c0..ba99c0ed71eeded3abbb157914e701818e660225 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightAlphaMaskF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightAlphaMaskF.glsl @@ -28,7 +28,6 @@ out vec4 gl_FragColor; #endif uniform float minimum_alpha; -uniform float maximum_alpha; vec3 fullbrightAtmosTransport(vec3 light); vec3 fullbrightScaleSoftClip(vec3 light); @@ -40,7 +39,7 @@ void fullbright_lighting() { vec4 color = diffuseLookup(vary_texcoord0.xy) * vertex_color; - if (color.a < minimum_alpha || color.a > maximum_alpha) + if (color.a < minimum_alpha) { discard; } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightNonIndexedAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightNonIndexedAlphaMaskF.glsl index d1ad3da0096242b2ea7e5052ae318e58fad57ac6..276fad4f44864aae30831bfc36d5adf7dd67341b 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightNonIndexedAlphaMaskF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightNonIndexedAlphaMaskF.glsl @@ -28,7 +28,6 @@ out vec4 gl_FragColor; #endif uniform float minimum_alpha; -uniform float maximum_alpha; vec3 fullbrightAtmosTransport(vec3 light); vec3 fullbrightScaleSoftClip(vec3 light); @@ -42,7 +41,7 @@ void fullbright_lighting() { vec4 color = texture2D(diffuseMap,vary_texcoord0.xy) * vertex_color; - if (color.a < minimum_alpha || color.a > maximum_alpha) + if (color.a < minimum_alpha) { discard; } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterAlphaMaskF.glsl index 32a1c71099b0fbffc82528acd11da0f29b77452b..754b2922d979512b31b6e908a3c21a715a9823c7 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterAlphaMaskF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterAlphaMaskF.glsl @@ -28,7 +28,6 @@ out vec4 gl_FragColor; #endif uniform float minimum_alpha; -uniform float maximum_alpha; vec4 diffuseLookup(vec2 texcoord); @@ -42,7 +41,7 @@ void fullbright_lighting_water() { vec4 color = diffuseLookup(vary_texcoord0.xy) * vertex_color; - if (color.a < minimum_alpha || color.a > maximum_alpha) + if (color.a < minimum_alpha) { discard; } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterNonIndexedAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterNonIndexedAlphaMaskF.glsl index 1b5aa614413c04fdc7673de2e6abf024002bab79..f69b907dc751b135a8e250670d55eb5edb0b8cfa 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterNonIndexedAlphaMaskF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightFullbrightWaterNonIndexedAlphaMaskF.glsl @@ -28,7 +28,6 @@ out vec4 gl_FragColor; #endif uniform float minimum_alpha; -uniform float maximum_alpha; uniform sampler2D diffuseMap; @@ -42,7 +41,7 @@ void fullbright_lighting_water() { vec4 color = texture2D(diffuseMap, vary_texcoord0.xy) * vertex_color; - if (color.a < minimum_alpha || color.a > maximum_alpha) + if (color.a < minimum_alpha) { discard; } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightWaterAlphaMaskF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightWaterAlphaMaskF.glsl index 60289cf7f7733694076f9eafc99311fb0fc9e888..103dd633c92971597f5b0cf8d8d3aa7b0dbe83af 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightWaterAlphaMaskF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightWaterAlphaMaskF.glsl @@ -28,7 +28,6 @@ out vec4 gl_FragColor; #endif uniform float minimum_alpha; -uniform float maximum_alpha; vec3 atmosLighting(vec3 light); vec4 applyWaterFog(vec4 color); @@ -40,7 +39,7 @@ void default_lighting_water() { vec4 color = diffuseLookup(vary_texcoord0.xy) * vertex_color; - if (color.a < minimum_alpha || color.a > maximum_alpha) + if (color.a < minimum_alpha) { discard; } diff --git a/indra/newview/app_settings/shaders/class1/lighting/lightWaterAlphaMaskNonIndexedF.glsl b/indra/newview/app_settings/shaders/class1/lighting/lightWaterAlphaMaskNonIndexedF.glsl index d0038ae89bc82931ab06636665bb66ad20fa6c9b..bef72752daf6cbc9be38d290b2610e8f47a800a0 100644 --- a/indra/newview/app_settings/shaders/class1/lighting/lightWaterAlphaMaskNonIndexedF.glsl +++ b/indra/newview/app_settings/shaders/class1/lighting/lightWaterAlphaMaskNonIndexedF.glsl @@ -28,7 +28,6 @@ out vec4 gl_FragColor; #endif uniform float minimum_alpha; -uniform float maximum_alpha; uniform sampler2D diffuseMap; @@ -42,7 +41,7 @@ void default_lighting_water() { vec4 color = texture2D(diffuseMap,vary_texcoord0.xy) * vertex_color; - if (color.a < minimum_alpha || color.a > maximum_alpha) + if (color.a < minimum_alpha) { discard; } diff --git a/indra/newview/app_settings/shaders/class1/objects/impostorF.glsl b/indra/newview/app_settings/shaders/class1/objects/impostorF.glsl index e7c81888eb7e7fe70711bac9c90aab682b56a5ad..3c6e22b2959140012b6bc53714c7fdc6e05ceebd 100644 --- a/indra/newview/app_settings/shaders/class1/objects/impostorF.glsl +++ b/indra/newview/app_settings/shaders/class1/objects/impostorF.glsl @@ -28,7 +28,6 @@ out vec4 gl_FragColor; #endif uniform float minimum_alpha; -uniform float maximum_alpha; uniform sampler2D diffuseMap; @@ -38,7 +37,7 @@ void main() { vec4 color = texture2D(diffuseMap,vary_texcoord0.xy); - if (color.a < minimum_alpha || color.a > maximum_alpha) + if (color.a < minimum_alpha) { discard; } diff --git a/indra/newview/lldrawpoolalpha.cpp b/indra/newview/lldrawpoolalpha.cpp index 230c4e2638dc619d291345dc5d16553859a17e27..54f937d8fd4d84896e00f8196de76e5ddfce621e 100644 --- a/indra/newview/lldrawpoolalpha.cpp +++ b/indra/newview/lldrawpoolalpha.cpp @@ -90,7 +90,7 @@ void LLDrawPoolAlpha::renderDeferred(S32 pass) { LLFastTimer t(FTM_RENDER_GRASS); gDeferredDiffuseAlphaMaskProgram.bind(); - gDeferredDiffuseAlphaMaskProgram.setAlphaRange(0.33f, 1.f); + gDeferredDiffuseAlphaMaskProgram.setMinimumAlpha(0.33f); //render alpha masked objects LLRenderPass::pushBatches(LLRenderPass::PASS_ALPHA_MASK, getVertexDataMask() | LLVertexBuffer::MAP_TEXTURE_INDEX, TRUE, TRUE); @@ -136,7 +136,7 @@ void LLDrawPoolAlpha::beginPostDeferredPass(S32 pass) simple_shader = NULL; fullbright_shader = NULL; gObjectFullbrightAlphaMaskProgram.bind(); - gObjectFullbrightAlphaMaskProgram.setAlphaRange(0.33f, 1.f); + gObjectFullbrightAlphaMaskProgram.setMinimumAlpha(0.33f); } deferred_render = TRUE; @@ -232,14 +232,14 @@ void LLDrawPoolAlpha::render(S32 pass) if (!LLPipeline::sRenderDeferred || !deferred_render) { simple_shader->bind(); - simple_shader->setAlphaRange(0.33f, 1.f); + simple_shader->setMinimumAlpha(0.33f); pushBatches(LLRenderPass::PASS_ALPHA_MASK, getVertexDataMask() | LLVertexBuffer::MAP_TEXTURE_INDEX, TRUE, TRUE); } if (fullbright_shader) { fullbright_shader->bind(); - fullbright_shader->setAlphaRange(0.33f, 1.f); + fullbright_shader->setMinimumAlpha(0.33f); } pushBatches(LLRenderPass::PASS_FULLBRIGHT_ALPHA_MASK, getVertexDataMask() | LLVertexBuffer::MAP_TEXTURE_INDEX, TRUE, TRUE); //LLGLSLShader::bindNoShader(); @@ -275,16 +275,16 @@ void LLDrawPoolAlpha::render(S32 pass) if (LLPipeline::sImpostorRender) { fullbright_shader->bind(); - fullbright_shader->setAlphaRange(0.5f, 1.f); + fullbright_shader->setMinimumAlpha(0.5f); simple_shader->bind(); - simple_shader->setAlphaRange(0.5f, 1.f); + simple_shader->setMinimumAlpha(0.5f); } else { fullbright_shader->bind(); - fullbright_shader->setAlphaRange(0.f, 1.f); + fullbright_shader->setMinimumAlpha(0.f); simple_shader->bind(); - simple_shader->setAlphaRange(0.f, 1.f); + simple_shader->setMinimumAlpha(0.f); } } else diff --git a/indra/newview/lldrawpoolavatar.cpp b/indra/newview/lldrawpoolavatar.cpp index 7290a48a1a578b5c8a55abd228e9e10dfc977b70..60313b25a0f56a345c98bebe0fa6a3d0481151b4 100644 --- a/indra/newview/lldrawpoolavatar.cpp +++ b/indra/newview/lldrawpoolavatar.cpp @@ -576,7 +576,7 @@ void LLDrawPoolAvatar::beginImpostor() if (LLGLSLShader::sNoFixedFunction) { gImpostorProgram.bind(); - gImpostorProgram.setAlphaRange(0.01f, 1.f); + gImpostorProgram.setMinimumAlpha(0.01f); } gPipeline.enableLightsFullbright(LLColor4(1,1,1,1)); @@ -608,7 +608,7 @@ void LLDrawPoolAvatar::beginRigid() if (sVertexProgram != NULL) { //eyeballs render with the specular shader sVertexProgram->bind(); - sVertexProgram->setAlphaRange(0.2f, 1.f); + sVertexProgram->setMinimumAlpha(0.2f); } } else @@ -641,7 +641,7 @@ void LLDrawPoolAvatar::beginDeferredImpostor() sDiffuseChannel = sVertexProgram->enableTexture(LLViewerShaderMgr::DIFFUSE_MAP); sVertexProgram->bind(); - sVertexProgram->setAlphaRange(0.01f, 1.f); + sVertexProgram->setMinimumAlpha(0.01f); } void LLDrawPoolAvatar::endDeferredImpostor() @@ -659,7 +659,7 @@ void LLDrawPoolAvatar::beginDeferredRigid() sVertexProgram = &gDeferredNonIndexedDiffuseAlphaMaskNoColorProgram; sVertexProgram->bind(); - sVertexProgram->setAlphaRange(0.2f, 1.f); + sVertexProgram->setMinimumAlpha(0.2f); } void LLDrawPoolAvatar::endDeferredRigid() @@ -716,7 +716,7 @@ void LLDrawPoolAvatar::beginSkinned() if (LLGLSLShader::sNoFixedFunction) { - sVertexProgram->setAlphaRange(0.2f, 1.f); + sVertexProgram->setMinimumAlpha(0.2f); } } @@ -1014,7 +1014,7 @@ void LLDrawPoolAvatar::beginDeferredSkinned() sRenderingSkinned = TRUE; sVertexProgram->bind(); - sVertexProgram->setAlphaRange(0.2f, 1.f); + sVertexProgram->setMinimumAlpha(0.2f); sDiffuseChannel = sVertexProgram->enableTexture(LLViewerShaderMgr::DIFFUSE_MAP); gGL.getTexUnit(0)->activate(); diff --git a/indra/newview/lldrawpoolsimple.cpp b/indra/newview/lldrawpoolsimple.cpp index 80c202d4e2fd92698afd4177071529cf48440ea6..6e0ea78af2b2d326dbb639a943852d51cf688ec9 100644 --- a/indra/newview/lldrawpoolsimple.cpp +++ b/indra/newview/lldrawpoolsimple.cpp @@ -269,7 +269,7 @@ void LLDrawPoolGrass::beginRenderPass(S32 pass) if (mVertexShaderLevel > 0) { simple_shader->bind(); - simple_shader->setAlphaRange(0.5f, 1.f); + simple_shader->setMinimumAlpha(0.5f); } else { @@ -325,7 +325,7 @@ void LLDrawPoolGrass::renderDeferred(S32 pass) { LLFastTimer t(FTM_RENDER_GRASS_DEFERRED); gDeferredNonIndexedDiffuseAlphaMaskProgram.bind(); - gDeferredNonIndexedDiffuseAlphaMaskProgram.setAlphaRange(0.5f, 1.f); + gDeferredNonIndexedDiffuseAlphaMaskProgram.setMinimumAlpha(0.5f); //render grass LLRenderPass::renderTexture(LLRenderPass::PASS_GRASS, getVertexDataMask()); } diff --git a/indra/newview/lldrawpooltree.cpp b/indra/newview/lldrawpooltree.cpp index cdf6e1ab5230b1a42adabe3ee4b13a9a835d59e0..d198e28c140e6750219a4e66488c7e861011e95b 100644 --- a/indra/newview/lldrawpooltree.cpp +++ b/indra/newview/lldrawpooltree.cpp @@ -75,7 +75,7 @@ void LLDrawPoolTree::beginRenderPass(S32 pass) if (gPipeline.canUseVertexShaders()) { shader->bind(); - shader->setAlphaRange(0.5f, 1.f); + shader->setMinimumAlpha(0.5f); gGL.diffuseColor4f(1,1,1,1); } else @@ -144,7 +144,7 @@ void LLDrawPoolTree::beginDeferredPass(S32 pass) shader = &gDeferredTreeProgram; shader->bind(); - shader->setAlphaRange(0.5f, 1.f); + shader->setMinimumAlpha(0.5f); } void LLDrawPoolTree::renderDeferred(S32 pass) @@ -170,7 +170,7 @@ void LLDrawPoolTree::beginShadowPass(S32 pass) gSavedSettings.getF32("RenderDeferredTreeShadowBias")); gDeferredTreeShadowProgram.bind(); - gDeferredTreeShadowProgram.setAlphaRange(0.5f, 1.f); + gDeferredTreeShadowProgram.setMinimumAlpha(0.5f); } void LLDrawPoolTree::renderShadow(S32 pass) diff --git a/indra/newview/lltexlayer.cpp b/indra/newview/lltexlayer.cpp index 9f5cbf6ec8829d9afe86fce543129b6185ca65c0..6f6d5dbf122ea787f6d24f4065209104015ada5d 100644 --- a/indra/newview/lltexlayer.cpp +++ b/indra/newview/lltexlayer.cpp @@ -300,7 +300,7 @@ BOOL LLTexLayerSetBuffer::render() if (use_shaders) { gAlphaMaskProgram.bind(); - gAlphaMaskProgram.setAlphaRange(0.004f, 1.f); + gAlphaMaskProgram.setMinimumAlpha(0.004f); } LLVertexBuffer::unbind(); @@ -947,7 +947,7 @@ BOOL LLTexLayerSet::render( S32 x, S32 y, S32 width, S32 height ) LLGLDisable no_alpha(GL_ALPHA_TEST); if (use_shaders) { - gAlphaMaskProgram.setAlphaRange(0.0f, 1.f); + gAlphaMaskProgram.setMinimumAlpha(0.0f); } gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); gGL.color4f( 0.f, 0.f, 0.f, 1.f ); @@ -957,7 +957,7 @@ BOOL LLTexLayerSet::render( S32 x, S32 y, S32 width, S32 height ) gGL.flush(); if (use_shaders) { - gAlphaMaskProgram.setAlphaRange(0.004f, 1.f); + gAlphaMaskProgram.setMinimumAlpha(0.004f); } } @@ -987,7 +987,7 @@ BOOL LLTexLayerSet::render( S32 x, S32 y, S32 width, S32 height ) LLGLDisable no_alpha(GL_ALPHA_TEST); if (use_shaders) { - gAlphaMaskProgram.setAlphaRange(0.f, 1.f); + gAlphaMaskProgram.setMinimumAlpha(0.f); } gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); @@ -999,7 +999,7 @@ BOOL LLTexLayerSet::render( S32 x, S32 y, S32 width, S32 height ) gGL.flush(); if (use_shaders) { - gAlphaMaskProgram.setAlphaRange(0.004f, 1.f); + gAlphaMaskProgram.setMinimumAlpha(0.004f); } } @@ -1135,7 +1135,7 @@ void LLTexLayerSet::renderAlphaMaskTextures(S32 x, S32 y, S32 width, S32 height, LLGLDisable no_alpha(GL_ALPHA_TEST); if (use_shaders) { - gAlphaMaskProgram.setAlphaRange(0.f, 1.f); + gAlphaMaskProgram.setMinimumAlpha(0.f); } gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); gGL.color4f( 0.f, 0.f, 0.f, 1.f ); @@ -1145,7 +1145,7 @@ void LLTexLayerSet::renderAlphaMaskTextures(S32 x, S32 y, S32 width, S32 height, gGL.flush(); if (use_shaders) { - gAlphaMaskProgram.setAlphaRange(0.004f, 1.f); + gAlphaMaskProgram.setMinimumAlpha(0.004f); } } @@ -1717,7 +1717,7 @@ BOOL LLTexLayer::render(S32 x, S32 y, S32 width, S32 height) LLGLDisable alpha_test(no_alpha_test ? GL_ALPHA_TEST : 0); if (use_shaders && no_alpha_test) { - gAlphaMaskProgram.setAlphaRange(0.f, 1.f); + gAlphaMaskProgram.setMinimumAlpha(0.f); } LLTexUnit::eTextureAddressMode old_mode = tex->getAddressMode(); @@ -1731,7 +1731,7 @@ BOOL LLTexLayer::render(S32 x, S32 y, S32 width, S32 height) gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); if (use_shaders && no_alpha_test) { - gAlphaMaskProgram.setAlphaRange(0.004f, 1.f); + gAlphaMaskProgram.setMinimumAlpha(0.004f); } } @@ -1768,14 +1768,14 @@ BOOL LLTexLayer::render(S32 x, S32 y, S32 width, S32 height) LLGLDisable no_alpha(GL_ALPHA_TEST); if (use_shaders) { - gAlphaMaskProgram.setAlphaRange(0.f, 1.f); + gAlphaMaskProgram.setMinimumAlpha(0.f); } gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); gGL.color4fv( net_color.mV ); gl_rect_2d_simple( width, height ); if (use_shaders) { - gAlphaMaskProgram.setAlphaRange(0.004f, 1.f); + gAlphaMaskProgram.setMinimumAlpha(0.004f); } } @@ -1874,14 +1874,14 @@ BOOL LLTexLayer::blendAlphaTexture(S32 x, S32 y, S32 width, S32 height) LLGLSNoAlphaTest gls_no_alpha_test; if (use_shaders) { - gAlphaMaskProgram.setAlphaRange(0.f, 1.f); + gAlphaMaskProgram.setMinimumAlpha(0.f); } gGL.getTexUnit(0)->bind(tex, TRUE); gl_rect_2d_simple_tex( width, height ); gGL.getTexUnit(0)->unbind(LLTexUnit::TT_TEXTURE); if (use_shaders) { - gAlphaMaskProgram.setAlphaRange(0.004f, 1.f); + gAlphaMaskProgram.setMinimumAlpha(0.004f); } } else @@ -1899,7 +1899,7 @@ BOOL LLTexLayer::blendAlphaTexture(S32 x, S32 y, S32 width, S32 height) LLGLSNoAlphaTest gls_no_alpha_test; if (use_shaders) { - gAlphaMaskProgram.setAlphaRange(0.f, 1.f); + gAlphaMaskProgram.setMinimumAlpha(0.f); } gGL.getTexUnit(0)->bind(tex); gl_rect_2d_simple_tex( width, height ); @@ -1907,7 +1907,7 @@ BOOL LLTexLayer::blendAlphaTexture(S32 x, S32 y, S32 width, S32 height) success = TRUE; if (use_shaders) { - gAlphaMaskProgram.setAlphaRange(0.004f, 1.f); + gAlphaMaskProgram.setMinimumAlpha(0.004f); } } } @@ -1931,7 +1931,7 @@ BOOL LLTexLayer::renderMorphMasks(S32 x, S32 y, S32 width, S32 height, const LLC if (use_shaders) { - gAlphaMaskProgram.setAlphaRange(0.f, 1.f); + gAlphaMaskProgram.setMinimumAlpha(0.f); } gGL.setColorMask(false, true); @@ -2011,7 +2011,7 @@ BOOL LLTexLayer::renderMorphMasks(S32 x, S32 y, S32 width, S32 height, const LLC if (use_shaders) { - gAlphaMaskProgram.setAlphaRange(0.004f, 1.f); + gAlphaMaskProgram.setMinimumAlpha(0.004f); } LLGLSUIDefault gls_ui; diff --git a/indra/newview/pipeline.cpp b/indra/newview/pipeline.cpp index 76ddeab203483318bde12e181a30b0f1cdddeeea..152f4728dd3dec4d2a16f64cd5a95c48d87fb732 100644 --- a/indra/newview/pipeline.cpp +++ b/indra/newview/pipeline.cpp @@ -8154,10 +8154,10 @@ void LLPipeline::renderShadow(glh::matrix4f& view, glh::matrix4f& proj, LLCamera { LLFastTimer ftm(FTM_SHADOW_ALPHA); gDeferredShadowAlphaMaskProgram.bind(); - gDeferredShadowAlphaMaskProgram.setAlphaRange(0.598f, 1.f); + gDeferredShadowAlphaMaskProgram.setMinimumAlpha(0.598f); renderObjects(LLRenderPass::PASS_ALPHA_SHADOW, LLVertexBuffer::MAP_VERTEX | LLVertexBuffer::MAP_TEXCOORD0 | LLVertexBuffer::MAP_COLOR, TRUE); gDeferredTreeShadowProgram.bind(); - gDeferredTreeShadowProgram.setAlphaRange(0.598f, 1.f); + gDeferredTreeShadowProgram.setMinimumAlpha(0.598f); renderObjects(LLRenderPass::PASS_GRASS, LLVertexBuffer::MAP_VERTEX | LLVertexBuffer::MAP_TEXCOORD0, TRUE); }