diff --git a/src/Nazara/Renderer/GLSLShader.cpp b/src/Nazara/Renderer/GLSLShader.cpp index ba8ceeb5c..f56cbada5 100644 --- a/src/Nazara/Renderer/GLSLShader.cpp +++ b/src/Nazara/Renderer/GLSLShader.cpp @@ -308,10 +308,10 @@ bool NzGLSLShader::SendBoolean(int location, bool value) bool NzGLSLShader::SendColor(int location, const NzColor& color) { - NzVector3f vecColor(color.r/255.f, color.g/255.f, color.b/255.f); + NzVector4f vecColor(color.r/255.f, color.g/255.f, color.b/255.f, color.a/255.f); - if (glProgramUniform3fv) - glProgramUniform3fv(m_program, location, 1, vecColor); + if (glProgramUniform4fv) + glProgramUniform4fv(m_program, location, 1, vecColor); else { if (!Lock()) @@ -320,7 +320,7 @@ bool NzGLSLShader::SendColor(int location, const NzColor& color) return false; } - glUniform3fv(location, 1, vecColor); + glUniform4fv(location, 1, vecColor); Unlock(); } diff --git a/src/Nazara/Renderer/ShaderBuilder.cpp b/src/Nazara/Renderer/ShaderBuilder.cpp index 6fdc37cc6..8e68f38e8 100644 --- a/src/Nazara/Renderer/ShaderBuilder.cpp +++ b/src/Nazara/Renderer/ShaderBuilder.cpp @@ -35,7 +35,7 @@ namespace /********************Uniformes********************/ if ((flags & nzShaderBuilder_DiffuseMapping) == 0 || flags & nzShaderBuilder_Lighting) - sourceCode += "uniform vec3 MaterialDiffuse;\n"; + sourceCode += "uniform vec4 MaterialDiffuse;\n"; if (flags & nzShaderBuilder_DiffuseMapping) sourceCode += "uniform sampler2D MaterialDiffuseMap;\n"; @@ -65,7 +65,7 @@ namespace if (flags & nzShaderBuilder_DiffuseMapping) sourceCode += " = texture2D(MaterialDiffuseMap, vTexCoord);\n"; else - sourceCode += " = vec4(MaterialDiffuse, 1.0);\n"; + sourceCode += " = MaterialDiffuse;\n"; sourceCode += '}';