refactor(render): extract frame resource preparation
Move ordered resource begin, clear/state setup, live upload/reveal, weather timing, and display pacing behind focused owners while preserving the accepted frame order and retryable shutdown ownership. Co-authored-by: Codex <codex@openai.com>
This commit is contained in:
parent
733126a272
commit
bc6f09f987
8 changed files with 1068 additions and 205 deletions
|
|
@ -377,6 +377,20 @@ corrected-diff reviews are clean.
|
|||
- prove `WbMeshAdapter.Tick` remains before reveal evaluation and drawing;
|
||||
- prove dispatcher begin occurs once for the whole world/paperdoll frame.
|
||||
|
||||
Completed 2026-07-22. `RenderFrameResourceController` now owns the exact
|
||||
resource-begin → atmosphere/GL-clear → live-upload/reveal/particle transaction,
|
||||
with a single captured GPU slot shared by every phase. Focused sources own the
|
||||
login reveal cell, teleport render state, upload timing, and render-time weather
|
||||
clock. `DisplayFramePacingController` owns requested VSync, the event-refreshed
|
||||
monitor-rate cache, software pacing, and the post-render callback without adding
|
||||
a monitor query to the frame hot path. Borrowed frame owners are withdrawn before
|
||||
render teardown; portal fallback ownership transfers before the throwable sink
|
||||
bind; pacing releases its borrowed surface/profiler before their owners close.
|
||||
`GameWindow.cs` is 6,181 raw lines, 60.7% below the 15,723-line campaign
|
||||
baseline. Twenty-one focused tests, the Release build, and the complete suite
|
||||
pass (7,269 passed / 5 skipped). Retail, architecture, and adversarial
|
||||
corrected-diff reviews are clean.
|
||||
|
||||
### D — world frame builder
|
||||
|
||||
- move animated/equipped classification, camera/root selection, outdoor-node
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue