Commit 647de32
Remove MMCE one-at-a-time blocking throttle; allow COV/BG/SCR to pre-queue together
The `cacheHasActiveInteractiveModeLocked` + `cacheHasQueuedInteractiveModeLocked`
guard in cacheGetTextureInternal prevented BG and SCR art from queuing until the
active MMCE request (typically COV) fully finished loading. This added a dead
render-frame gap between each art type and meant a slow or missing COV file held
up all subsequent art.
The art thread already processes requests one-at-a-time (FIFO) so the serial
constraint existed only in the queue submission, not execution. With the 1-frame
COV head-start delay still in place, COV queues on frame 8 and BG/SCR on frame 9;
the art thread then loads them in that order without any extra render-frame waits.
On navigation cacheAdvanceGeneration() drops all queued requests and signals abort
on the active one — generation tracking discards stale completions correctly.
The game-change drop (drop queued request for a different game) is kept as a
safety net with an explanatory comment.
Co-authored-by: NathanNeurotic <109461996+NathanNeurotic@users.noreply.github.com>1 parent ad76b51 commit 647de32
1 file changed
Lines changed: 3 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1417 | 1417 | | |
1418 | 1418 | | |
1419 | 1419 | | |
| 1420 | + | |
| 1421 | + | |
| 1422 | + | |
1420 | 1423 | | |
1421 | 1424 | | |
1422 | 1425 | | |
1423 | 1426 | | |
1424 | | - | |
1425 | | - | |
1426 | | - | |
1427 | | - | |
1428 | | - | |
1429 | | - | |
1430 | | - | |
1431 | | - | |
1432 | 1427 | | |
1433 | 1428 | | |
1434 | 1429 | | |
| |||
0 commit comments