mirror of
https://github.com/tangerineturtle1/NX2navi.git
synced 2026-11-15 19:19:58 -04:00
Merge main's helper rows as number sliders into the 0.10.0 line.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> # Conflicts: # runtime/ui/menu.cpp
This commit is contained in:
@@ -24,6 +24,6 @@
|
||||
- **The draw replay on several CPU cores is off by default again** (`replay_workers = 0`). With three workers on by
|
||||
default in 0.9.1 and 0.9.2 some players' games ended with a lost graphics device; the cause is not found yet. The
|
||||
settings menu has it under Game, Testing, as *CPU helper threads (experimental)*: 0 to 8, after a restart.
|
||||
- **The other experimental performance settings have rows there too**, each a switch: *Helpers work ahead* (on is
|
||||
`replay_pipe = 4`), *Helpers take small jobs* (on is `replay_small = 16`) and *Start next frame early*
|
||||
(`tail_early`). A row whose setting does nothing without another one is greyed out and says which it needs.
|
||||
- **The other experimental performance settings have rows there too**: *Helpers work ahead* (`replay_pipe`, 0 to 4),
|
||||
*Helpers take small jobs* (`replay_small`, 0 to 64) and *Start next frame early* (`tail_early`). A row whose setting
|
||||
does nothing without another one is greyed out and says which it needs.
|
||||
|
||||
@@ -92,8 +92,7 @@
|
||||
# groups its workers still record. replay_small = N (default 0, needs replay_pipe): a group of N draws or more that is
|
||||
# too small to share out goes whole to one worker. Kokiri Forest standing on an RX 7900 XT with FSR 4, tail_early = 1,
|
||||
# replay_workers = 5, replay_pipe = 4 and replay_small = 16: 63 instead of 45 fps with all of them off. Also in the
|
||||
# menu: Game, Testing, as switches: Helpers work ahead (on is replay_pipe = 4) and Helpers take small jobs (on is
|
||||
# replay_small = 16).
|
||||
# menu: Game, Testing, Helpers work ahead (replay_pipe) and Helpers take small jobs (replay_small).
|
||||
# replay_pipe = 0
|
||||
# replay_small = 0
|
||||
# EXPERIMENTAL, THE GAME CRASHES WITH 1. 1 lifts the virtual core gate: guest threads run without the console's limit
|
||||
|
||||
@@ -1449,9 +1449,7 @@ static void tab_game(float scale) {
|
||||
// Testing: experimental rows, then the debug menu where the game version has it
|
||||
opt_group_text("Testing");
|
||||
// vk_exec.c rw_init and tail_enabled read these at start: each row notes the restart and the bar's Restart does
|
||||
// it. A row whose setting does nothing without another one (rw_init) is greyed out until that one is set. The two
|
||||
// rows under the workers are switches: on writes the value measured best (4 groups at once, groups from 16 draws),
|
||||
// and any other value set in nx2navi.ini shows as on and stays.
|
||||
// it. A row whose setting does nothing without another one (rw_init) is greyed out until that one is set.
|
||||
// Automatic first, the default (vk_exec.c vk_exec_replay_workers_auto), named with the count it gives on this PC
|
||||
{
|
||||
static const char *const vals[] = {"auto", "0", "1", "2", "3", "4", "5", "6", "7", "8"};
|
||||
@@ -1464,9 +1462,9 @@ static void tab_game(float scale) {
|
||||
const bool workers = (!strcmp(wset, "auto") ? vk_exec_replay_workers_auto(nullptr) : atoi(wset)) > 0,
|
||||
pipe = workers && cfg_int("NX2NAVI_REPLAY_PIPE") > 0;
|
||||
if (!workers) opt_disable_next(UI_MENU_NEEDS_WORKERS);
|
||||
opt_toggle_value("NX2NAVI_REPLAY_PIPE", UI_MENU_REPLAY_PIPE, UI_MENU_REPLAY_PIPE_DESC, "4", "0");
|
||||
opt_slider("NX2NAVI_REPLAY_PIPE", UI_MENU_REPLAY_PIPE, 0, 4, UI_MENU_REPLAY_PIPE_DESC, 1, "%.0f");
|
||||
if (!pipe) opt_disable_next(workers ? UI_MENU_NEEDS_PIPE : UI_MENU_NEEDS_WORKERS);
|
||||
opt_toggle_value("NX2NAVI_REPLAY_SMALL", UI_MENU_REPLAY_SMALL, UI_MENU_REPLAY_SMALL_DESC, "16", "0");
|
||||
opt_slider("NX2NAVI_REPLAY_SMALL", UI_MENU_REPLAY_SMALL, 0, 64, UI_MENU_REPLAY_SMALL_DESC, 4, "%.0f");
|
||||
opt_toggle("NX2NAVI_TAIL_EARLY", UI_MENU_TAIL_EARLY, UI_MENU_TAIL_EARLY_DESC);
|
||||
// The debug menu, a tool for testing with English text of its own: off unless switched on here
|
||||
if (dbg_supported()) {
|
||||
|
||||
@@ -513,10 +513,13 @@ static const char *const text_en[UI_TEXT_COUNT] = {
|
||||
"frames a second on an 8-core CPU. If your game crashes with this on, set it to 0.",
|
||||
[UI_MENU_REPLAY_PIPE] = "Helpers work ahead (experimental)",
|
||||
[UI_MENU_REPLAY_PIPE_DESC] = "The game carries on with the rest of the frame while the helper threads are still "
|
||||
"busy, instead of waiting for them. A small gain: 1 to 2% more frames a second.",
|
||||
"busy, instead of waiting for them. The number is how many batches of work the "
|
||||
"helpers may have at once; 0 turns it off. A small gain: 4 gave 1 to 2% more frames a "
|
||||
"second.",
|
||||
[UI_MENU_REPLAY_SMALL] = "Helpers take small jobs (experimental)",
|
||||
[UI_MENU_REPLAY_SMALL_DESC] = "Gives the helper threads the smaller batches of drawing work too, not only the large "
|
||||
"ones. A small gain: about 2% more frames a second.",
|
||||
"ones. The number is the smallest batch a helper takes, counted in draw calls; 0 "
|
||||
"turns it off. A small gain: 16 gave about 2% more frames a second.",
|
||||
[UI_MENU_TAIL_EARLY] = "Start next frame early (experimental)",
|
||||
[UI_MENU_TAIL_EARLY_DESC] = "The game starts on its next frame while the graphics card is still finishing the "
|
||||
"current one. The biggest gain of these settings: 19 to 29% more frames a second with "
|
||||
|
||||
Reference in New Issue
Block a user