From b3c2fbcfa77d70cc9bafce8bf19b1ff98c45a135 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bar=C4=B1=C5=9F=20Hamil?= Date: Sat, 21 Jun 2025 13:23:57 +0300 Subject: [PATCH] Flip overlays in Linux (yes hacky but works) --- src/Ryujinx.Graphics.Gpu/Window.cs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/Ryujinx.Graphics.Gpu/Window.cs b/src/Ryujinx.Graphics.Gpu/Window.cs index ad6deb2ee..c5186c77b 100644 --- a/src/Ryujinx.Graphics.Gpu/Window.cs +++ b/src/Ryujinx.Graphics.Gpu/Window.cs @@ -314,6 +314,14 @@ namespace Ryujinx.Graphics.Gpu // Create canvas for drawing overlays using var canvas = new SKCanvas(bitmap); + // On Linux with OpenGL, we need to flip the Y-axis because OpenGL uses bottom-left origin + // while SkiaSharp uses top-left origin + if (OperatingSystem.IsLinux()) + { + canvas.Scale(1, -1); + canvas.Translate(0, -height); + } + // Render all overlays _overlayManager.Render(canvas);