summaryrefslogtreecommitdiff
path: root/src/3d/visual_debug.cc
diff options
context:
space:
mode:
authorskal <pascal.massimino@gmail.com>2026-03-12 17:14:57 +0100
committerskal <pascal.massimino@gmail.com>2026-03-12 17:14:57 +0100
commitefad11008616d30f685752fc70aa05be524c1a78 (patch)
tree3a2dad4e054749af900c03800b3868d7a26a7678 /src/3d/visual_debug.cc
parentce032eb25a480c086edcd7bbfa4a742e5e44a6a7 (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/3d/visual_debug.cc')
-rw-r--r--src/3d/visual_debug.cc18
1 files changed, 2 insertions, 16 deletions
diff --git a/src/3d/visual_debug.cc b/src/3d/visual_debug.cc
index f6796d5..036d6ce 100644
--- a/src/3d/visual_debug.cc
+++ b/src/3d/visual_debug.cc
@@ -68,19 +68,11 @@ void VisualDebug::create_pipeline(WGPUTextureFormat format) {
const char* shader_code =
(const char*)GetAsset(AssetId::ASSET_SHADER_VISUAL_DEBUG, &shader_len);
-#if defined(DEMO_CROSS_COMPILE_WIN32)
- WGPUShaderModuleWGSLDescriptor wgsl_desc = {};
- wgsl_desc.chain.sType = WGPUSType_ShaderModuleWGSLDescriptor;
- wgsl_desc.code = shader_code;
- WGPUShaderModuleDescriptor shader_desc = {};
- shader_desc.nextInChain = (const WGPUChainedStruct*)&wgsl_desc.chain;
-#else
WGPUShaderSourceWGSL wgsl_desc = {};
wgsl_desc.chain.sType = WGPUSType_ShaderSourceWGSL;
wgsl_desc.code = {shader_code, shader_len};
WGPUShaderModuleDescriptor shader_desc = {};
shader_desc.nextInChain = (const WGPUChainedStruct*)&wgsl_desc.chain;
-#endif
WGPUShaderModule shader_module =
wgpuDeviceCreateShaderModule(device_, &shader_desc);
@@ -105,21 +97,13 @@ void VisualDebug::create_pipeline(WGPUTextureFormat format) {
WGPURenderPipelineDescriptor pipeline_desc = {};
pipeline_desc.layout = pipeline_layout;
pipeline_desc.vertex.module = shader_module;
-#if defined(DEMO_CROSS_COMPILE_WIN32)
- pipeline_desc.vertex.entryPoint = "vs_main";
-#else
pipeline_desc.vertex.entryPoint = str_view("vs_main");
-#endif
pipeline_desc.vertex.bufferCount = 1;
pipeline_desc.vertex.buffers = &vertex_layout;
WGPUFragmentState fragment_state = {};
fragment_state.module = shader_module;
-#if defined(DEMO_CROSS_COMPILE_WIN32)
- fragment_state.entryPoint = "fs_main";
-#else
fragment_state.entryPoint = str_view("fs_main");
-#endif
fragment_state.targetCount = 1;
WGPUColorTargetState color_target = {};
@@ -138,6 +122,8 @@ void VisualDebug::create_pipeline(WGPUTextureFormat format) {
depth_stencil.depthWriteEnabled = WGPUOptionalBool_False; // Don't write depth
depth_stencil.depthCompare =
WGPUCompareFunction_Less; // But do test against it
+ depth_stencil.stencilFront.compare = WGPUCompareFunction_Always;
+ depth_stencil.stencilBack.compare = WGPUCompareFunction_Always;
pipeline_desc.depthStencil = &depth_stencil;
pipeline_desc.multisample.count = 1;