diff --git a/src/ac6_texture_overrides.cpp b/src/ac6_texture_overrides.cpp index 0bdb2270..cf9d2785 100644 --- a/src/ac6_texture_overrides.cpp +++ b/src/ac6_texture_overrides.cpp @@ -19,11 +19,13 @@ REXCVAR_DECLARE(std::string, user_data_root); -REXCVAR_DEFINE_BOOL(ac6_texture_swaps_enabled, true, "AC6/TextureSwaps", - "Enable AC6 texture dump and replacement support"); +REXCVAR_DEFINE_BOOL(ac6_texture_swaps_enabled, false, "AC6/TextureSwaps", + "Enable AC6 texture dump and replacement support (default off: the " + "replacement lookup currently checks the filesystem on every texture " + "upload, which can cause frame stutters; enable for texture modding)"); REXCVAR_DEFINE_BOOL(ac6_texture_swaps_dump_enabled, false, "AC6/TextureSwaps", "Dump host-ready textures to the user-data texture dump folder"); -REXCVAR_DEFINE_BOOL(ac6_texture_swaps_replace_enabled, true, "AC6/TextureSwaps", +REXCVAR_DEFINE_BOOL(ac6_texture_swaps_replace_enabled, false, "AC6/TextureSwaps", "Load matching replacement DDS files from the user-data texture override folders"); REXCVAR_DEFINE_STRING(ac6_texture_swaps_dump_dir, "texture_dumps", "AC6/TextureSwaps", "User-data subdirectory that stores dumped texture DDS files and metadata"); diff --git a/src/main.cpp b/src/main.cpp index f0c63723..a90c54d6 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -32,6 +32,8 @@ REXCVAR_DECLARE(bool, guest_vblank_sync_to_refresh); REXCVAR_DECLARE(bool, host_present_from_non_ui_thread); #if REX_HAS_D3D12 REXCVAR_DECLARE(bool, d3d12_allow_variable_refresh_rate_and_tearing); +REXCVAR_DECLARE(bool, d3d12_low_latency_swap_chain); +REXCVAR_DECLARE(int32_t, d3d12_max_frame_latency); #endif REXCVAR_DECLARE(bool, vfetch_index_rounding_bias); REXCVAR_DECLARE(int32_t, video_mode_width); @@ -114,11 +116,17 @@ void ApplyAc6DefaultSettings() { REXCVAR_SET(guest_vblank_sync_to_refresh, true); } if (!rex::cvar::HasNonDefaultValue("host_present_from_non_ui_thread")) { - REXCVAR_SET(host_present_from_non_ui_thread, false); + REXCVAR_SET(host_present_from_non_ui_thread, true); } #if REX_HAS_D3D12 if (!rex::cvar::HasNonDefaultValue("d3d12_allow_variable_refresh_rate_and_tearing")) { - REXCVAR_SET(d3d12_allow_variable_refresh_rate_and_tearing, false); + REXCVAR_SET(d3d12_allow_variable_refresh_rate_and_tearing, true); + } + if (!rex::cvar::HasNonDefaultValue("d3d12_low_latency_swap_chain")) { + REXCVAR_SET(d3d12_low_latency_swap_chain, true); + } + if (!rex::cvar::HasNonDefaultValue("d3d12_max_frame_latency")) { + REXCVAR_SET(d3d12_max_frame_latency, 1); } #endif if (!rex::cvar::HasNonDefaultValue("vfetch_index_rounding_bias")) {