mirror of
https://github.com/RetroDECK/Duckstation.git
synced 2024-11-26 23:55:40 +00:00
GPU/HW: Fix incorrect offset application in line upscaler
Fixes green line in pause screen of Spyro.
This commit is contained in:
parent
f1cfe1b954
commit
b8a2487abf
|
@ -886,7 +886,7 @@ std::string GPU_HW_ShaderGen::GenerateBatchLineExpandGeometryShader()
|
||||||
WriteCommonFunctions(ss);
|
WriteCommonFunctions(ss);
|
||||||
|
|
||||||
ss << R"(
|
ss << R"(
|
||||||
CONSTANT float2 WIDTH = (1.0 / float2(VRAM_SIZE)) * float2(RESOLUTION_SCALE, RESOLUTION_SCALE);
|
CONSTANT float2 WIDTH = (float(RESOLUTION_SCALE * 2u) / float2(VRAM_SIZE));
|
||||||
)";
|
)";
|
||||||
|
|
||||||
// GS is a pain, too different between HLSL and GLSL...
|
// GS is a pain, too different between HLSL and GLSL...
|
||||||
|
@ -916,7 +916,7 @@ void main() {
|
||||||
|
|
||||||
// top-left
|
// top-left
|
||||||
out_data.v_col0 = in_data[0].v_col0;
|
out_data.v_col0 = in_data[0].v_col0;
|
||||||
gl_Position = gl_in[0].gl_Position - offset;
|
gl_Position = gl_in[0].gl_Position;
|
||||||
EmitVertex();
|
EmitVertex();
|
||||||
|
|
||||||
// top-right
|
// top-right
|
||||||
|
@ -926,7 +926,7 @@ void main() {
|
||||||
|
|
||||||
// bottom-left
|
// bottom-left
|
||||||
out_data.v_col0 = in_data[1].v_col0;
|
out_data.v_col0 = in_data[1].v_col0;
|
||||||
gl_Position = gl_in[1].gl_Position - offset;
|
gl_Position = gl_in[1].gl_Position;
|
||||||
EmitVertex();
|
EmitVertex();
|
||||||
|
|
||||||
// bottom-right
|
// bottom-right
|
||||||
|
@ -958,7 +958,7 @@ void main(line Vertex input[2], inout TriangleStream<Vertex> output)
|
||||||
|
|
||||||
// top-left
|
// top-left
|
||||||
v.col0 = input[0].col0;
|
v.col0 = input[0].col0;
|
||||||
v.pos = input[0].pos - offset;
|
v.pos = input[0].pos;
|
||||||
output.Append(v);
|
output.Append(v);
|
||||||
|
|
||||||
// top-right
|
// top-right
|
||||||
|
@ -968,7 +968,7 @@ void main(line Vertex input[2], inout TriangleStream<Vertex> output)
|
||||||
|
|
||||||
// bottom-left
|
// bottom-left
|
||||||
v.col0 = input[1].col0;
|
v.col0 = input[1].col0;
|
||||||
v.pos = input[1].pos - offset;
|
v.pos = input[1].pos;
|
||||||
output.Append(v);
|
output.Append(v);
|
||||||
|
|
||||||
// bottom-right
|
// bottom-right
|
||||||
|
|
Loading…
Reference in a new issue