From c35cb6cf457337f8ba0d8b840ce9ce88f2f67211 Mon Sep 17 00:00:00 2001 From: Filippo Scognamiglio Date: Tue, 23 Dec 2014 13:58:22 +0100 Subject: [PATCH] Fix: horizontal sync should not go outside screen boundaries. --- app/qml/ShaderTerminal.qml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/app/qml/ShaderTerminal.qml b/app/qml/ShaderTerminal.qml index 22e81ec..328aac9 100644 --- a/app/qml/ShaderTerminal.qml +++ b/app/qml/ShaderTerminal.qml @@ -232,9 +232,11 @@ ShaderEffect { (screen_distorsion !== 0 ? " float distortion = dot(cc, cc) * screen_distorsion; - vec2 coords = (qt_TexCoord0 - cc * (1.0 + distortion) * distortion);" + vec2 staticCoords = (qt_TexCoord0 - cc * (1.0 + distortion) * distortion);" :" - vec2 coords = qt_TexCoord0;") + + vec2 staticCoords = qt_TexCoord0;") + + + "vec2 coords = staticCoords;" + (horizontal_sincronization !== 0 ? " float dst = sin((coords.y + time * 0.001) * distortionFreq); @@ -298,8 +300,8 @@ ShaderEffect { "finalColor += bloomColor * bloom_strength * bloomAlpha;" : "") + - "finalColor *= smoothstep(-dispX, 0.0, coords.x) - smoothstep(1.0, 1.0 + dispX, coords.x); - finalColor *= smoothstep(-dispY, 0.0, coords.y) - smoothstep(1.0, 1.0 + dispY, coords.y);" + + "finalColor *= smoothstep(-dispX, 0.0, staticCoords.x) - smoothstep(1.0, 1.0 + dispX, staticCoords.x); + finalColor *= smoothstep(-dispY, 0.0, staticCoords.y) - smoothstep(1.0, 1.0 + dispY, staticCoords.y);" + (brightness_flickering !== 0 ? " finalColor *= brightness;" : "") +