Browse Source

Merge pull request #4031 from Morph1984/fix-gs-outputs

gl_shader_decompiler: Fix geometry shader outputs on Intel drivers
nce_cpp
bunnei 6 years ago
committed by GitHub
parent
commit
eb1b451f94
  1. 14
      src/video_core/renderer_opengl/gl_shader_decompiler.cpp

14
src/video_core/renderer_opengl/gl_shader_decompiler.cpp

@ -626,7 +626,9 @@ private:
break; break;
} }
} }
if (stage != ShaderType::Vertex || device.HasVertexViewportLayer()) {
if (stage != ShaderType::Geometry &&
(stage != ShaderType::Vertex || device.HasVertexViewportLayer())) {
if (ir.UsesLayer()) { if (ir.UsesLayer()) {
code.AddLine("int gl_Layer;"); code.AddLine("int gl_Layer;");
} }
@ -655,6 +657,16 @@ private:
--code.scope; --code.scope;
code.AddLine("}};"); code.AddLine("}};");
code.AddNewLine(); code.AddNewLine();
if (stage == ShaderType::Geometry) {
if (ir.UsesLayer()) {
code.AddLine("out int gl_Layer;");
}
if (ir.UsesViewportIndex()) {
code.AddLine("out int gl_ViewportIndex;");
}
}
code.AddNewLine();
} }
void DeclareRegisters() { void DeclareRegisters() {

Loading…
Cancel
Save