@@ -1011,7 +1011,7 @@ void ProcessMaterialGeneric3D( Material* material, shaderStage_t* pStage, Materi
10111011 material->hasDepthFade = hasDepthFade;
10121012 gl_genericShaderMaterial->SetDepthFade ( hasDepthFade );
10131013
1014- material->program = gl_genericShaderMaterial->GetProgram ( pStage->deformIndex );
1014+ material->program = gl_genericShaderMaterial->GetProgram ( pStage->deformIndex , materialSystem. buildOneShader );
10151015}
10161016
10171017void ProcessMaterialLightMapping ( Material* material, shaderStage_t* pStage, MaterialSurface* surface ) {
@@ -1053,7 +1053,7 @@ void ProcessMaterialLightMapping( Material* material, shaderStage_t* pStage, Mat
10531053
10541054 gl_lightMappingShaderMaterial->SetPhysicalShading ( pStage->enablePhysicalMapping );
10551055
1056- material->program = gl_lightMappingShaderMaterial->GetProgram ( pStage->deformIndex );
1056+ material->program = gl_lightMappingShaderMaterial->GetProgram ( pStage->deformIndex , materialSystem. buildOneShader );
10571057}
10581058
10591059void ProcessMaterialReflection ( Material* material, shaderStage_t* pStage, MaterialSurface* /* surface */ ) {
@@ -1067,31 +1067,31 @@ void ProcessMaterialReflection( Material* material, shaderStage_t* pStage, Mater
10671067
10681068 gl_reflectionShaderMaterial->SetReliefMapping ( pStage->enableReliefMapping );
10691069
1070- material->program = gl_reflectionShaderMaterial->GetProgram ( pStage->deformIndex );
1070+ material->program = gl_reflectionShaderMaterial->GetProgram ( pStage->deformIndex , materialSystem. buildOneShader );
10711071}
10721072
10731073void ProcessMaterialSkybox ( Material* material, shaderStage_t* pStage, MaterialSurface* /* surface */ ) {
10741074 material->shader = gl_skyboxShaderMaterial;
10751075
10761076 material->deformIndex = pStage->deformIndex ;
10771077
1078- material->program = gl_skyboxShaderMaterial->GetProgram ( pStage->deformIndex );
1078+ material->program = gl_skyboxShaderMaterial->GetProgram ( pStage->deformIndex , materialSystem. buildOneShader );
10791079}
10801080
10811081void ProcessMaterialScreen ( Material* material, shaderStage_t* pStage, MaterialSurface* /* surface */ ) {
10821082 material->shader = gl_screenShaderMaterial;
10831083
10841084 material->deformIndex = pStage->deformIndex ;
10851085
1086- material->program = gl_screenShaderMaterial->GetProgram ( pStage->deformIndex );
1086+ material->program = gl_screenShaderMaterial->GetProgram ( pStage->deformIndex , materialSystem. buildOneShader );
10871087}
10881088
10891089void ProcessMaterialHeatHaze ( Material* material, shaderStage_t* pStage, MaterialSurface* ) {
10901090 material->shader = gl_heatHazeShaderMaterial;
10911091
10921092 material->deformIndex = pStage->deformIndex ;
10931093
1094- material->program = gl_heatHazeShaderMaterial->GetProgram ( pStage->deformIndex );
1094+ material->program = gl_heatHazeShaderMaterial->GetProgram ( pStage->deformIndex , materialSystem. buildOneShader );
10951095}
10961096
10971097void ProcessMaterialLiquid ( Material* material, shaderStage_t* pStage, MaterialSurface* surface ) {
@@ -1115,14 +1115,14 @@ void ProcessMaterialLiquid( Material* material, shaderStage_t* pStage, MaterialS
11151115
11161116 gl_liquidShaderMaterial->SetGridLighting ( lightMode == lightMode_t::GRID );
11171117
1118- material->program = gl_liquidShaderMaterial->GetProgram ( pStage->deformIndex );
1118+ material->program = gl_liquidShaderMaterial->GetProgram ( pStage->deformIndex , materialSystem. buildOneShader );
11191119}
11201120
11211121void ProcessMaterialFog ( Material* material, shaderStage_t* pStage, MaterialSurface* surface ) {
11221122 material->shader = gl_fogQuake3ShaderMaterial;
11231123 material->fog = surface->fog ;
11241124
1125- material->program = gl_fogQuake3ShaderMaterial->GetProgram ( pStage->deformIndex );
1125+ material->program = gl_fogQuake3ShaderMaterial->GetProgram ( pStage->deformIndex , materialSystem. buildOneShader );
11261126}
11271127
11281128void MaterialSystem::AddStage ( MaterialSurface* surface, shaderStage_t* pStage, uint32_t stage,
@@ -1742,6 +1742,8 @@ void MaterialSystem::Free() {
17421742 }
17431743 }
17441744
1745+ buildOneShader = true ;
1746+
17451747 totalDrawSurfs = 0 ;
17461748
17471749 currentFrame = 0 ;
0 commit comments