diff options
| author | skal <pascal.massimino@gmail.com> | 2026-03-12 17:14:57 +0100 |
|---|---|---|
| committer | skal <pascal.massimino@gmail.com> | 2026-03-12 17:14:57 +0100 |
| commit | efad11008616d30f685752fc70aa05be524c1a78 (patch) | |
| tree | 3a2dad4e054749af900c03800b3868d7a26a7678 /src/gpu/texture_readback.cc | |
| parent | ce032eb25a480c086edcd7bbfa4a742e5e44a6a7 (diff) | |
fix(win): update wgpu-native to v27, unify Windows/macOS API paths
- fetch_win_deps.sh: update wgpu-native v0.19.4.1 → v27.0.4.0 (same as macOS)
- platform.h: remove v0.19 compat shims, Windows now uses WGPUStringView API
- gpu.cc/gpu.h: remove DEMO_CROSS_COMPILE_WIN32 old-API branches
- texture_readback.cc, visual_debug.cc, hybrid3d_effect.cc: same cleanup
- rotating_cube_effect.cc: remove #ifdef guard for depthSlice
- glfw3webgpu.c: remove old WGPUSurfaceDescriptorFromWindowsHWND branch
- asset_manager.cc: fix DEMO_STRIP_ALL→STRIP_ALL guard (vs_main was missing
in STRIP_ALL Windows builds because disk-loading path ran on embedded data)
- tracker.cc: skip MP3 assets gracefully in STRIP_ALL builds instead of fatal
handoff(Gemini): Windows .exe now runs under Wine. demo64k.exe renders frames
and progresses through audio timeline. Pre-existing test failures unchanged.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Diffstat (limited to 'src/gpu/texture_readback.cc')
| -rw-r--r-- | src/gpu/texture_readback.cc | 26 |
1 files changed, 1 insertions, 25 deletions
diff --git a/src/gpu/texture_readback.cc b/src/gpu/texture_readback.cc index e512428..e7f2729 100644 --- a/src/gpu/texture_readback.cc +++ b/src/gpu/texture_readback.cc @@ -71,19 +71,7 @@ std::vector<uint8_t> read_texture_pixels(WGPUInstance instance, // Wait for copy to complete before mapping wgpuDevicePoll(device, true, nullptr); - // Map buffer for reading (API differs between Win32 and native) -#if defined(DEMO_CROSS_COMPILE_WIN32) - // Win32: Old callback API - MapState map_state = {}; - auto map_cb = [](WGPUBufferMapAsyncStatus status, void* userdata) { - MapState* state = (MapState*)(userdata); - state->status = status; - state->done = true; - }; - wgpuBufferMapAsync(staging, WGPUMapMode_Read, 0, buffer_size, map_cb, - &map_state); -#else - // Native: New callback info API + // Map buffer for reading MapState map_state = {}; auto map_cb = [](WGPUMapAsyncStatus status, WGPUStringView message, void* userdata, void* user2) { @@ -99,7 +87,6 @@ std::vector<uint8_t> read_texture_pixels(WGPUInstance instance, map_info.callback = map_cb; map_info.userdata1 = &map_state; wgpuBufferMapAsync(staging, WGPUMapMode_Read, 0, buffer_size, map_info); -#endif // Wait for mapping to complete (synchronous blocking) for (int i = 0; i < 100 && !map_state.done; ++i) { @@ -221,16 +208,6 @@ std::vector<uint8_t> texture_readback_fp16_to_u8(WGPUDevice device, wgpuDevicePoll(device, true, nullptr); // Map buffer -#if defined(DEMO_CROSS_COMPILE_WIN32) - MapState map_state = {}; - auto map_cb = [](WGPUBufferMapAsyncStatus status, void* userdata) { - MapState* state = (MapState*)(userdata); - state->status = status; - state->done = true; - }; - wgpuBufferMapAsync(staging, WGPUMapMode_Read, 0, buffer_size, map_cb, - &map_state); -#else MapState map_state = {}; auto map_cb = [](WGPUMapAsyncStatus status, WGPUStringView message, void* userdata, void* user2) { @@ -245,7 +222,6 @@ std::vector<uint8_t> texture_readback_fp16_to_u8(WGPUDevice device, map_info.callback = map_cb; map_info.userdata1 = &map_state; wgpuBufferMapAsync(staging, WGPUMapMode_Read, 0, buffer_size, map_info); -#endif for (int i = 0; i < 100 && !map_state.done; ++i) { wgpuDevicePoll(device, true, nullptr); |
