SH-2240 Better fix for red moon -- stop special casing "highlight_color" as a parameter.
parent
aa8f3d3070
commit
c8f558f677
|
|
@ -965,8 +965,7 @@ void LLShaderMgr::initAttribsAndUniforms()
|
|||
llassert(mReservedUniforms.size() == LLShaderMgr::PROJECTOR_AMBIENT_LOD+1);
|
||||
|
||||
mReservedUniforms.push_back("color");
|
||||
mReservedUniforms.push_back("highlight_color");
|
||||
|
||||
|
||||
mReservedUniforms.push_back("diffuseMap");
|
||||
mReservedUniforms.push_back("specularMap");
|
||||
mReservedUniforms.push_back("bumpMap");
|
||||
|
|
|
|||
|
|
@ -70,7 +70,6 @@ public:
|
|||
PROJECTOR_LOD,
|
||||
PROJECTOR_AMBIENT_LOD,
|
||||
DIFFUSE_COLOR,
|
||||
HIGHLIGHT_COLOR,
|
||||
DIFFUSE_MAP,
|
||||
SPECULAR_MAP,
|
||||
BUMP_MAP,
|
||||
|
|
|
|||
|
|
@ -27,12 +27,12 @@
|
|||
out vec4 gl_FragColor;
|
||||
#endif
|
||||
|
||||
uniform vec4 highlight_color;
|
||||
uniform vec4 color;
|
||||
uniform sampler2D diffuseMap;
|
||||
|
||||
VARYING vec2 vary_texcoord0;
|
||||
|
||||
void main()
|
||||
{
|
||||
gl_FragColor = highlight_color*texture2D(diffuseMap, vary_texcoord0.xy);
|
||||
gl_FragColor = color*texture2D(diffuseMap, vary_texcoord0.xy);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -327,8 +327,9 @@ void LLDrawPoolAlpha::render(S32 pass)
|
|||
{
|
||||
gPipeline.enableLightsFullbright(LLColor4(1,1,1,1));
|
||||
}
|
||||
|
||||
gGL.diffuseColor4f(1,0,0,1);
|
||||
|
||||
|
||||
LLViewerFetchedTexture::sSmokeImagep->addTextureStats(1024.f*1024.f);
|
||||
gGL.getTexUnit(0)->bind(LLViewerFetchedTexture::sSmokeImagep, TRUE) ;
|
||||
renderAlphaHighlight(LLVertexBuffer::MAP_VERTEX |
|
||||
|
|
|
|||
|
|
@ -246,7 +246,7 @@ void LLDrawPoolTerrain::render(S32 pass)
|
|||
sShader->unbind();
|
||||
sShader = &gHighlightProgram;
|
||||
sShader->bind();
|
||||
sShader->uniform4f(LLShaderMgr::HIGHLIGHT_COLOR, 1,1,1,1);
|
||||
gGL.diffuseColor4f(1,1,1,1);
|
||||
LLGLEnable polyOffset(GL_POLYGON_OFFSET_FILL);
|
||||
glPolygonOffset(-1.0f, -1.0f);
|
||||
renderOwnership();
|
||||
|
|
|
|||
|
|
@ -283,7 +283,6 @@ void LLDrawPoolWLSky::renderHeavenlyBodies()
|
|||
if (gPipeline.canUseVertexShaders())
|
||||
{
|
||||
gHighlightProgram.bind();
|
||||
gHighlightProgram.uniform4fv(LLShaderMgr::HIGHLIGHT_COLOR, 1, color.mV);
|
||||
}
|
||||
|
||||
LLFacePool::LLOverrideFaceColor color_override(this, color);
|
||||
|
|
|
|||
|
|
@ -3583,7 +3583,7 @@ void LLPipeline::renderHighlights()
|
|||
if ((LLViewerShaderMgr::instance()->getVertexShaderLevel(LLViewerShaderMgr::SHADER_INTERFACE) > 0))
|
||||
{
|
||||
gHighlightProgram.bind();
|
||||
gHighlightProgram.uniform4f(LLShaderMgr::HIGHLIGHT_COLOR,1,1,1,0.5f);
|
||||
gGL.diffuseColor4f(1,1,1,0.5f);
|
||||
}
|
||||
|
||||
if (hasRenderDebugFeatureMask(RENDER_DEBUG_FEATURE_SELECTED))
|
||||
|
|
@ -3613,10 +3613,7 @@ void LLPipeline::renderHighlights()
|
|||
{
|
||||
// Paint 'em red!
|
||||
color.setVec(1.f, 0.f, 0.f, 0.5f);
|
||||
if ((LLViewerShaderMgr::instance()->getVertexShaderLevel(LLViewerShaderMgr::SHADER_INTERFACE) > 0))
|
||||
{
|
||||
gHighlightProgram.uniform4f(LLShaderMgr::HIGHLIGHT_COLOR,1,0,0,0.5f);
|
||||
}
|
||||
|
||||
int count = mHighlightFaces.size();
|
||||
for (S32 i = 0; i < count; i++)
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in New Issue