summaryrefslogtreecommitdiff
path: root/src/gpu/gpu.cc
diff options
context:
space:
mode:
authorskal <pascal.massimino@gmail.com>2026-02-15 09:24:39 +0100
committerskal <pascal.massimino@gmail.com>2026-02-15 09:24:39 +0100
commit24ebf83d69861d7e726d5836b198a307702f6d61 (patch)
tree8362dbc3d0275d02db996bd3e0bc66223f6fe507 /src/gpu/gpu.cc
parente94ff513689c6477e9c756f58370e4f3490dd675 (diff)
feat(gpu): add shader labels for better error identification
Add descriptive labels to shader modules (render_shader, compute_shader) to make shader compilation errors easier to identify in wgpu-native output. Note: wgpu-native already reports detailed shader errors via device error callback - look for "In wgpuDeviceCreateShaderModule" in error output. Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Diffstat (limited to 'src/gpu/gpu.cc')
-rw-r--r--src/gpu/gpu.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gpu/gpu.cc b/src/gpu/gpu.cc
index 6d2c7d5..ce234fa 100644
--- a/src/gpu/gpu.cc
+++ b/src/gpu/gpu.cc
@@ -138,10 +138,12 @@ RenderPass gpu_create_render_pass(WGPUDevice device, WGPUTextureFormat format,
wgsl_src.chain.sType = WGPUSType_ShaderSourceWGSL;
wgsl_src.code = str_view(composed_shader.c_str());
WGPUShaderModuleDescriptor shader_desc = {};
+ shader_desc.label = label_view("render_shader");
shader_desc.nextInChain = &wgsl_src.chain;
WGPUShaderModule shader_module =
wgpuDeviceCreateShaderModule(device, &shader_desc);
+
// Create Bind Group Layout & Bind Group
std::vector<WGPUBindGroupLayoutEntry> bgl_entries;
std::vector<WGPUBindGroupEntry> bg_entries;
@@ -241,6 +243,7 @@ ComputePass gpu_create_compute_pass(WGPUDevice device, const char* shader_code,
wgsl_src.chain.sType = WGPUSType_ShaderSourceWGSL;
wgsl_src.code = str_view(composed_shader.c_str());
WGPUShaderModuleDescriptor shader_desc = {};
+ shader_desc.label = label_view("compute_shader");
shader_desc.nextInChain = &wgsl_src.chain;
WGPUShaderModule shader_module =
wgpuDeviceCreateShaderModule(device, &shader_desc);