catbot
7df82e4fee
perf(window): block message loop while paused on Win32 ( #134 )
...
When `updating` is false (paused / minimized / stopped), the FIFO
present no longer paces StartSync()'s message loop, so the bare
PeekMessage(PM_REMOVE) spin pinned a core at 100% while uselessly
re-running Gamepad::Tick() (mutex + per-pad COM reads) and
onBeforeUpdate every iteration.
Block on MsgWaitForMultipleObjectsEx with a short timeout while
!updating: the loop now wakes on input or every ~16ms, eliminating the
busy-spin while preserving gamepad polling / onBeforeUpdate at a sane
rate (e.g. to detect a controller button asking to resume). The
updating path is unchanged — present remains vsync-gated.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-18 14:00:58 +00:00
..
Crafter.Graphics-Clipboard.cpp
clipboard
2026-05-19 00:45:22 +02:00
Crafter.Graphics-ComputeShader.cpp
perf(pipeline): shared, disk-persisted VkPipelineCache ( #69 )
2026-06-16 18:23:25 +00:00
Crafter.Graphics-Device.cpp
perf(device): pop retired deletions off the front in O(ready) ( #116 )
2026-06-17 19:37:58 +00:00
Crafter.Graphics-Dom.cpp
browser DOM support
2026-05-18 02:07:48 +02:00
Crafter.Graphics-Font.cpp
Merge remote-tracking branch 'origin/master' into claude/issue-57
2026-06-16 17:02:48 +00:00
Crafter.Graphics-FontAtlas.cpp
perf(ui): per-shelf dirty spans for tight atlas uploads ( #129 )
2026-06-18 13:35:54 +00:00
Crafter.Graphics-Gamepad.cpp
browser DOM support
2026-05-18 02:07:48 +02:00
Crafter.Graphics-Input.cpp
feat(input): wire native mouse-wheel scroll on Wayland + Win32, normalize all backends to ±1/detent ( #32 )
2026-06-12 15:02:28 +00:00
Crafter.Graphics-InputField.cpp
perf(ui): memoize the input-field caret prefix width ( #128 )
2026-06-18 13:29:55 +00:00
Crafter.Graphics-Mesh-WebGPU.cpp
perf(mesh): dirty-range vertex upload for deforming-mesh Refit ( #119 )
2026-06-17 19:50:48 +00:00
Crafter.Graphics-Mesh.cpp
perf(mesh): dirty-range vertex upload for deforming-mesh Refit ( #119 )
2026-06-17 19:50:48 +00:00
Crafter.Graphics-PipelineRTWebGPU.cpp
feat(webgpu-rt): atomic pixel accumulator + raysPerPixel for >1 ray/pixel/bounce ( #30 )
2026-06-09 22:45:25 +00:00
Crafter.Graphics-RenderingElement3D-WebGPU.cpp
tlas build options
2026-06-16 15:49:17 +02:00
Crafter.Graphics-RenderingElement3D.cpp
perf(tlas): dirty-track the per-frame TLAS instance+metadata upload ( #118 )
2026-06-17 19:58:45 +00:00
Crafter.Graphics-Router.cpp
browser DOM support
2026-05-18 02:07:48 +02:00
Crafter.Graphics-ShaderBindingTableWebGPU.cpp
webgpu triangle
2026-05-18 18:43:30 +02:00
Crafter.Graphics-UI-Shared.cpp
Merge remote-tracking branch 'origin/master' into claude/issue-123
2026-06-18 13:29:49 +00:00
Crafter.Graphics-UI-WebGPU.cpp
perf(ui): reuse handles vector in WebGPU custom Dispatch ( #132 )
2026-06-18 13:54:09 +00:00
Crafter.Graphics-UI.cpp
perf(ui): flush only the written descriptor range, not the whole heap ( #61 )
2026-06-16 18:29:24 +00:00
Crafter.Graphics-UIComponents.cpp
perf(text): cache shaped runs in ShapeText ( #52 )
2026-06-16 15:40:52 +00:00
Crafter.Graphics-WebGPUComputeShader.cpp
webgpu triangle
2026-05-18 18:43:30 +02:00
Crafter.Graphics-Window.cpp
perf(window): block message loop while paused on Win32 ( #134 )
2026-06-18 14:00:58 +00:00