Browse Source

newShader validates overlapping vertex input locations.

Sasha Szpakowski 11 months ago
parent
commit
c7b4ebbc55
2 changed files with 2 additions and 2 deletions
  1. 1 1
      src/modules/graphics/Shader.cpp
  2. 1 1
      src/modules/graphics/ShaderStage.cpp

+ 1 - 1
src/modules/graphics/Shader.cpp

@@ -1117,7 +1117,7 @@ bool Shader::validateInternal(StrongRef<ShaderStage> stages[], std::string &err,
 			program.addShader(stages[i]->getGLSLangValidationShader());
 			program.addShader(stages[i]->getGLSLangValidationShader());
 	}
 	}
 
 
-	if (!program.link(EshMsgCrossStageIO))
+	if (!program.link((EShMessages)(EshMsgCrossStageIO | EshMsgOverlappingLocations)))
 	{
 	{
 		err = "Cannot compile shader:\n\n" + std::string(program.getInfoLog()) + "\n" + std::string(program.getInfoDebugLog());
 		err = "Cannot compile shader:\n\n" + std::string(program.getInfoLog()) + "\n" + std::string(program.getInfoDebugLog());
 		return false;
 		return false;

+ 1 - 1
src/modules/graphics/ShaderStage.cpp

@@ -58,7 +58,7 @@ ShaderStage::ShaderStage(Graphics */*gfx*/, ShaderStageType stage, const std::st
 	bool forcedefault = false;
 	bool forcedefault = false;
 	bool forwardcompat = true;
 	bool forwardcompat = true;
 
 
-	if (!glslangShader->parse(GetResources(), defaultversion, defaultprofile, forcedefault, forwardcompat, EShMsgSuppressWarnings))
+	if (!glslangShader->parse(GetResources(), defaultversion, defaultprofile, forcedefault, forwardcompat, (EShMessages)(EShMsgSuppressWarnings | EshMsgOverlappingLocations)))
 	{
 	{
 		const char *stagename = "unknown";
 		const char *stagename = "unknown";
 		getConstant(stage, stagename);
 		getConstant(stage, stagename);