| # Surface Capabilities |
| |
| The `surface-capabilities` feature allows querying a surface's capabilities and creating a swap chain with additional usage flags. |
| |
| Additional functionality: |
| - Adds `wgpu::Device::GetSupportedSurfaceUsage(wgpu::Surface)` method for querying the surface's supported usage flags. One or the combination of these flags can be used to create a swap chain. |
| |
| Example Usage: |
| ``` |
| wgpu::TextureUsage supportedUsage = device.GetSupportedSurfaceUsage(surface); |
| |
| wgpu::SwapChainDescriptor desc = {}; |
| // set usage flags. |
| desc.usage = supportedUsage; |
| |
| device.CreateSwapChain(surface, &desc); |
| ``` |
| |
| Notes: |
| - If this feature is not enabled, only `wgpu::TextureUsage::RenderAttachment` flag is allowed to be used in `wgpu::SwapChainDescriptor::usage`. |