From bd0154a6b0e7a9e3904874caa731f1bed6ef1a40 Mon Sep 17 00:00:00 2001 From: Kai Blaschke Date: Sun, 25 Jan 2026 17:19:29 +0100 Subject: [PATCH 1/2] Fix inverted Y coordinate passed to per-pixel expressions --- src/libprojectM/MilkdropPreset/PerPixelMesh.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libprojectM/MilkdropPreset/PerPixelMesh.cpp b/src/libprojectM/MilkdropPreset/PerPixelMesh.cpp index 6e2bf9cc1..44687152d 100644 --- a/src/libprojectM/MilkdropPreset/PerPixelMesh.cpp +++ b/src/libprojectM/MilkdropPreset/PerPixelMesh.cpp @@ -230,7 +230,7 @@ void PerPixelMesh::CalculateMesh(const PresetState& presetState, const PerFrameC if (perPixelContext.perPixelCodeHandle) { *perPixelContext.x = static_cast(curVertex.X() * 0.5f * presetState.renderContext.aspectX + 0.5f); - *perPixelContext.y = static_cast(curVertex.Y() * -0.5f * presetState.renderContext.aspectY + 0.5f); + *perPixelContext.y = static_cast(curVertex.Y() * 0.5f * presetState.renderContext.aspectY + 0.5f); *perPixelContext.rad = static_cast(curRadiusAngle.radius); *perPixelContext.ang = static_cast(curRadiusAngle.angle); *perPixelContext.zoom = static_cast(*perFrameContext.zoom); From 9c7377762cd9267f9a031c4a692582dccd5b9451 Mon Sep 17 00:00:00 2001 From: Kai Blaschke Date: Mon, 26 Jan 2026 00:22:24 +0100 Subject: [PATCH 2/2] Fix angle to per-pixel expressions --- src/libprojectM/MilkdropPreset/PerPixelMesh.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libprojectM/MilkdropPreset/PerPixelMesh.cpp b/src/libprojectM/MilkdropPreset/PerPixelMesh.cpp index 44687152d..0c4a7b9a1 100644 --- a/src/libprojectM/MilkdropPreset/PerPixelMesh.cpp +++ b/src/libprojectM/MilkdropPreset/PerPixelMesh.cpp @@ -232,7 +232,7 @@ void PerPixelMesh::CalculateMesh(const PresetState& presetState, const PerFrameC *perPixelContext.x = static_cast(curVertex.X() * 0.5f * presetState.renderContext.aspectX + 0.5f); *perPixelContext.y = static_cast(curVertex.Y() * 0.5f * presetState.renderContext.aspectY + 0.5f); *perPixelContext.rad = static_cast(curRadiusAngle.radius); - *perPixelContext.ang = static_cast(curRadiusAngle.angle); + *perPixelContext.ang = static_cast(-curRadiusAngle.angle); *perPixelContext.zoom = static_cast(*perFrameContext.zoom); *perPixelContext.zoomexp = static_cast(*perFrameContext.zoomexp); *perPixelContext.rot = static_cast(*perFrameContext.rot);