threecrate_gpu/utils.rs
1//! GPU utilities
2
3use threecrate_core::Result;
4
5/// Create a compute shader from WGSL source
6pub fn create_compute_shader(_device: &wgpu::Device, _source: &str) -> Result<wgpu::ShaderModule> {
7 // Note: Shader module creation is infallible; validation happens at pipeline creation time
8 let module = _device.create_shader_module(wgpu::ShaderModuleDescriptor {
9 label: Some("ThreeCrate Compute Shader"),
10 source: wgpu::ShaderSource::Wgsl(_source.into()),
11 });
12 Ok(module)
13}