Merge pull request #4031 from Morph1984/fix-gs-outputs
gl_shader_decompiler: Fix geometry shader outputs on Intel drivers
This commit is contained in:
commit
22369df357
|
@ -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() {
|
||||||
|
|
Reference in New Issue