Skip to content

Commit 608fba0

Browse files
committed
0033074: Visualization, TKOpenGl - PBR shader compilation error on Mesa OpenGL 3.10033074
Graphic3d_ShaderManager::getPBREnvBakingProgram() - fix setting Graphic3d_ShaderProgram::SetPBR() before defining GLSL version via defaultGlslVersion() that relies on this property.
1 parent a626c34 commit 608fba0

1 file changed

Lines changed: 3 additions & 2 deletions

File tree

src/Graphic3d/Graphic3d_ShaderManager.cxx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1545,7 +1545,7 @@ Handle(Graphic3d_ShaderProgram) Graphic3d_ShaderManager::getStdProgramPhong (con
15451545
}
15461546

15471547
Handle(Graphic3d_ShaderProgram) aProgramSrc = new Graphic3d_ShaderProgram();
1548-
aProgramSrc->SetPBR (theIsPBR);
1548+
aProgramSrc->SetPBR (theIsPBR); // should be set before defaultGlslVersion()
15491549

15501550
TCollection_AsciiString aSrcVert, aSrcVertExtraFunc, aSrcVertExtraMain;
15511551
TCollection_AsciiString aSrcFrag, aSrcFragGetVertColor, aSrcFragExtraMain;
@@ -1976,6 +1976,8 @@ Handle(Graphic3d_ShaderProgram) Graphic3d_ShaderManager::getPBREnvBakingProgram
19761976
{
19771977
Standard_ASSERT_RAISE (theIndex >= 0 && theIndex <= 2,"");
19781978
Handle(Graphic3d_ShaderProgram) aProgramSrc = new Graphic3d_ShaderProgram();
1979+
aProgramSrc->SetPBR (true); // should be set before defaultGlslVersion()
1980+
19791981
Graphic3d_ShaderObject::ShaderVariableList aUniforms, aStageInOuts;
19801982

19811983
TCollection_AsciiString aSrcVert = TCollection_AsciiString()
@@ -2022,7 +2024,6 @@ Handle(Graphic3d_ShaderProgram) Graphic3d_ShaderManager::getPBREnvBakingProgram
20222024
aProgramSrc->SetNbLightsMax (0);
20232025
aProgramSrc->SetNbShadowMaps (0);
20242026
aProgramSrc->SetNbClipPlanesMax (0);
2025-
aProgramSrc->SetPBR (true);
20262027
aProgramSrc->AttachShader (Graphic3d_ShaderObject::CreateFromSource (aSrcVert, Graphic3d_TOS_VERTEX, aUniforms, aStageInOuts));
20272028
aProgramSrc->AttachShader (Graphic3d_ShaderObject::CreateFromSource (aSrcFrag, Graphic3d_TOS_FRAGMENT, aUniforms, aStageInOuts));
20282029
return aProgramSrc;

0 commit comments

Comments
 (0)