From 86eac5ad8c8e83eaa1554bef02bd7ff756c63a3f Mon Sep 17 00:00:00 2001 From: Skyth <19259897+blueskythlikesclouds@users.noreply.github.com> Date: Thu, 17 Oct 2024 16:07:22 +0300 Subject: [PATCH] Remove half pixel offset from primitive 2D renderer. --- UnleashedRecomp/gpu/video.cpp | 5 +++++ UnleashedRecompLib/config/SWA.toml | 10 ++++++++++ 2 files changed, 15 insertions(+) diff --git a/UnleashedRecomp/gpu/video.cpp b/UnleashedRecomp/gpu/video.cpp index 59773e6..aa88be6 100644 --- a/UnleashedRecomp/gpu/video.cpp +++ b/UnleashedRecomp/gpu/video.cpp @@ -2444,6 +2444,11 @@ void SetShadowResolutionMidAsmHook(PPCRegister& r11) r11.u64 = 4096; } +void Primitive2DHalfPixelOffsetMidAsmHook(PPCRegister& f13) +{ + f13.f64 = 0.0; +} + static void SetResolution(be* device) { uint32_t width = g_swapChain->getWidth(); diff --git a/UnleashedRecompLib/config/SWA.toml b/UnleashedRecompLib/config/SWA.toml index 537a79d..4bd71fa 100644 --- a/UnleashedRecompLib/config/SWA.toml +++ b/UnleashedRecompLib/config/SWA.toml @@ -93,3 +93,13 @@ registers = ["r3"] name = "SetShadowResolutionMidAsmHook" address = 0x82BAD87C registers = ["r11"] + +[[midasm_hook]] +name = "Primitive2DHalfPixelOffsetMidAsmHook" +address = 0x830D1F40 +registers = ["f13"] + +[[midasm_hook]] +name = "Primitive2DHalfPixelOffsetMidAsmHook" +address = 0x830D213C +registers = ["f13"]