Backed out changeset 577f38970ed9 - Fix coming up...
parent
28b1297e50
commit
962f90dbbb
|
|
@ -2242,7 +2242,16 @@ void LLRender::texCoord2fv(const GLfloat* tc)
|
|||
|
||||
void LLRender::color4ub(const GLubyte& r, const GLubyte& g, const GLubyte& b, const GLubyte& a)
|
||||
{
|
||||
mColorsp[mCount] = LLColor4U(r,g,b,a);
|
||||
if (LLGLSLShader::sNoFixedFunction &&
|
||||
(!LLGLSLShader::sCurBoundShaderPtr ||
|
||||
LLGLSLShader::sCurBoundShaderPtr->mAttributeMask & LLVertexBuffer::MAP_COLOR))
|
||||
{
|
||||
mColorsp[mCount] = LLColor4U(r,g,b,a);
|
||||
}
|
||||
else
|
||||
{ //not using shaders or shader reads color from a uniform
|
||||
diffuseColor4ub(r,g,b,a);
|
||||
}
|
||||
}
|
||||
void LLRender::color4ubv(const GLubyte* c)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -31,12 +31,13 @@ out vec4 frag_color;
|
|||
|
||||
uniform sampler2D tex0;
|
||||
|
||||
VARYING vec4 vertex_color;
|
||||
uniform vec4 color;
|
||||
|
||||
VARYING vec2 vary_texcoord0;
|
||||
|
||||
void main()
|
||||
{
|
||||
float alpha = texture2D(tex0, vary_texcoord0.xy).a * vertex_color.a;
|
||||
float alpha = texture2D(tex0, vary_texcoord0.xy).a * color.a;
|
||||
|
||||
frag_color = vec4(vertex_color.rgb, alpha);
|
||||
frag_color = vec4(color.rgb, alpha);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -26,16 +26,13 @@
|
|||
uniform mat4 modelview_projection_matrix;
|
||||
|
||||
ATTRIBUTE vec3 position;
|
||||
ATTRIBUTE vec4 diffuse_color;
|
||||
ATTRIBUTE vec2 texcoord0;
|
||||
|
||||
VARYING vec4 vertex_color;
|
||||
VARYING vec2 vary_texcoord0;
|
||||
|
||||
void main()
|
||||
{
|
||||
gl_Position = modelview_projection_matrix * vec4(position.xyz, 1.0);
|
||||
vertex_color = diffuse_color;
|
||||
vary_texcoord0 = texcoord0;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -6333,8 +6333,8 @@ void LLSelectNode::renderOneSilhouette(const LLColor4 &color)
|
|||
LLGLSLShader* shader = LLGLSLShader::sCurBoundShaderPtr;
|
||||
|
||||
if (shader)
|
||||
{ //switch to "solid color" program for SH-2690 -- works around driver bug causing bad triangles when rendering silhouettes
|
||||
gSolidColorProgram.bind();
|
||||
{ //use UI program for selection highlights (texture color modulated by vertex color)
|
||||
gUIProgram.bind();
|
||||
}
|
||||
|
||||
gGL.matrixMode(LLRender::MM_MODELVIEW);
|
||||
|
|
@ -6389,10 +6389,11 @@ void LLSelectNode::renderOneSilhouette(const LLColor4 &color)
|
|||
gGL.setAlphaRejectSettings(LLRender::CF_DEFAULT);
|
||||
gGL.begin(LLRender::LINES);
|
||||
{
|
||||
gGL.color4f(color.mV[VRED], color.mV[VGREEN], color.mV[VBLUE], 0.4f);
|
||||
|
||||
for(S32 i = 0; i < mSilhouetteVertices.size(); i += 2)
|
||||
{
|
||||
u_coord += u_divisor * LLSelectMgr::sHighlightUScale;
|
||||
gGL.color4f(color.mV[VRED], color.mV[VGREEN], color.mV[VBLUE], 0.4f);
|
||||
gGL.texCoord2f( u_coord, v_coord );
|
||||
gGL.vertex3fv( mSilhouetteVertices[i].mV);
|
||||
u_coord += u_divisor * LLSelectMgr::sHighlightUScale;
|
||||
|
|
|
|||
Loading…
Reference in New Issue