{"record":{"id":"aff3cfc4fd16328f","repo":"gfx-rs/wgpu","slug":"raytracing-not-implemented-for-web","errorCode":null,"errorMessage":"Raytracing not implemented for web","messagePattern":"Raytracing not implemented for web","errorType":"panic","errorClass":null,"httpStatus":null,"severity":"error","filePath":"wgpu/src/backend/webgpu.rs","lineNumber":2332,"sourceCode":"                crate::BindingResource::Sampler(sampler) => {\n                    let sampler = &sampler.inner.as_webgpu().inner;\n                    webgpu_sys::GpuBindGroupEntry::new(binding.binding, sampler)\n                }\n                crate::BindingResource::SamplerArray(..) => {\n                    panic!(\"Web backend does not support arrays of samplers\")\n                }\n                crate::BindingResource::TextureView(texture_view) => {\n                    let texture_view = &texture_view.inner.as_webgpu().inner;\n                    webgpu_sys::GpuBindGroupEntry::new_with_gpu_texture_view(\n                        binding.binding,\n                        texture_view,\n                    )\n                }\n                crate::BindingResource::TextureViewArray(..) => {\n                    panic!(\"Web backend does not support BINDING_INDEXING extension\")\n                }\n                crate::BindingResource::AccelerationStructure(_) => {\n                    unimplemented!(\"Raytracing not implemented for web\")\n                }\n                crate::BindingResource::AccelerationStructureArray(_) => {\n                    unimplemented!(\"Raytracing not implemented for web\")\n                }\n                crate::BindingResource::ExternalTexture(external_texture) => {\n                    let external_texture = &external_texture.inner.as_webgpu().inner;\n                    webgpu_sys::GpuBindGroupEntry::new_with_gpu_external_texture(\n                        binding.binding,\n                        external_texture,\n                    )\n                }\n            })\n            .collect::<Vec<webgpu_sys::GpuBindGroupEntry>>();\n\n        let bgl = &desc.layout.inner.as_webgpu().inner;\n        let mapped_desc = webgpu_sys::GpuBindGroupDescriptor::new(&mapped_entries, bgl);\n        if let Some(label) = desc.label {\n            mapped_desc.set_label(label);","sourceCodeStart":2314,"sourceCodeEnd":2350,"githubUrl":"https://github.com/gfx-rs/wgpu/blob/3e11ff59bf3f9795d285ecc045014089640d7248/wgpu/src/backend/webgpu.rs#L2314-L2350","documentation":"Panic in the WebGPU backend bind-group creation path: a ray-tracing resource was requested, but the browser API has no ray tracing, so the corresponding arm aborts. The faulty input is a ray-tracing binding in a bind group on the web backend.","triggerScenarios":"Thrown at wgpu/src/backend/webgpu.rs:2332 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Remove ray-tracing bindings when running on the WebGPU backend","Gate ray tracing code paths to native backends that support them"],"exampleFix":null,"handlingStrategy":"fallback","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"3e11ff59bf3f9795d285ecc045014089640d7248","analyzedAt":"2026-09-03T01:43:21.459Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-10T07:17:11.731Z"}