Replaces #3018. [Spec](https://github.com/gfx-rs/wgpu/blob/trunk/docs/api-specs/mesh_shading.md) # Progress ### Current open PR(s) and other work ### Remaining work - #9124 - #8878 - #9170 - #8517 - #9171 ### `naga` - [x] Add mesh, task shaders to naga shader types so `wgpu-hal` can stop pretending they are compute shaders - #7292 - [x] Support in WGSL frontend - #8370 - [ ] https://github.com/gfx-rs/wgpu/issues/8517 - [x] Validation - #8507 - [x] Support in SPIRV writer - #8456 - [x] Support in HLSL writer - #8752 - [x] Support in MSL writer - #8739 - [x] Support in WGSL regurgitator - #8481 - [ ] #9171 - [x] Reflection info for pipeline validation - #8507 - [x] #8360 - [x] #8746 ### `wgpu-hal` backends - [x] Vulkan - #7089 - [x] DX12 - #7219 (#8110) - still needs naga support - [x] Metal - #8139 - naga PR separate ### Other - [ ] #9170 - [x] Formal spec - #7885 - [x] `wgpu` API - #7345 - [x] `wgpu-core` pipeline validation - #7345 (?) - [x] #8003 - #8507 - [x] General tests- #7345 - [ ] #8517 - [x] Examples - #7345 - [x] #8343 - [x] #8753 - [ ] #4592 - deprecated by #9170 ### Features - [x] #7262 - [x] Primitive ID builtin - not supported in wgpu in general yet - #8236 required - [ ] Queries - #8523 (unplanned) - [x] Point primitives(at least in vulkan, probably its own feature) - [x] Finalize limits - #8003 - #8507 ### Bugs - [ ] #8727 - [x] #8738 - [x] #8744 - [ ] #8878 - [x] #8756 - [ ] #9124 # Issues to work out * How to implement multiview, what features, etc * Queries
Replaces #3018.
Spec
Progress
Current open PR(s) and other work
Remaining work
nagawgpu-halcan stop pretending they are compute shaders - Add mesh shader stages to wgt::ShaderStages and naga::ShaderStage #7292wgpu-halbackendsOther
wgpuAPI - Add mesh shading api to wgpu & wgpu-core #7345wgpu-corepipeline validation - Add mesh shading api to wgpu & wgpu-core #7345 (?)EXPERIMENTAL_MESH_SHADER_MULTIVIEW#8343Features
enable primitive-index;in WGSL #8236 requiredBugs
Issues to work out