From 72c0aed4c1594804ae2b4c60f5f29b374e5275c2 Mon Sep 17 00:00:00 2001 From: Eladash Date: Sat, 28 Mar 2020 13:20:37 +0300 Subject: [PATCH] rsx: Reset vertex program/constants at each boot --- rpcs3/Emu/RSX/rsx_methods.cpp | 2 ++ rpcs3/Emu/RSX/rsx_methods.h | 2 -- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/rpcs3/Emu/RSX/rsx_methods.cpp b/rpcs3/Emu/RSX/rsx_methods.cpp index 38cf196bf8..ec906d3a8f 100644 --- a/rpcs3/Emu/RSX/rsx_methods.cpp +++ b/rpcs3/Emu/RSX/rsx_methods.cpp @@ -1586,6 +1586,8 @@ namespace rsx { // Reset all regsiters registers.fill(0); + transform_program.fill(0); + transform_constants = {}; // Special values set at initialization, these are not set by a context reset registers[NV4097_SET_SHADER_PROGRAM] = (0 << 2) | (CELL_GCM_LOCATION_LOCAL + 1); diff --git a/rpcs3/Emu/RSX/rsx_methods.h b/rpcs3/Emu/RSX/rsx_methods.h index 187f8492e4..aa3b96fa85 100644 --- a/rpcs3/Emu/RSX/rsx_methods.h +++ b/rpcs3/Emu/RSX/rsx_methods.h @@ -541,8 +541,6 @@ namespace rsx vertex_textures(fill_array(registers, std::make_index_sequence<4>())), vertex_arrays_info(fill_array(registers, std::make_index_sequence<16>())) { - //NOTE: Transform constants persist through a context reset (NPEB00913) - transform_constants = {}; } ~rsx_state() = default;