blob: 3fdc4849d9e500a5beebc765d74d188fd03567f6 [file] [log] [blame] [view]
# Shader features
New shader features require the extensions to be enabled at device creation in addition to adding a `enable` directive in the WGSL.
This file regroups the documentation for all the Dawn-specific shader-only features.
## ChromiumExperimentalSubgroups
This adds support for the [`chromium_experimental_subgroups`](Link to do) WGSL `enable`.
Currently used to investigate subgroup functionality and not for general use.
It also provides the `wgpu::DawnExperimentalSubgroupLimits` structure used to gather data about the subgroup minimum and maximum size on the device.
(the limit cannot be changed when requesting a device)
`wgpu::DawnExperimentalSubgroupLimits` is populated by chaining it to the `wgpu::SupportedLimits` in the calls to `wgpu::Adapter::GetLimits` and `wgpu::Device::GetLimits`.
## ChromiumExperimentalSubgroupsUniformControlFlow
Used to expose that the device supports `VK_KHR_shader_subgroup_uniform_control_flow`.
This is only for use in the investigation of subgroup functionality.