diff --git a/src/dawn/native/d3d/PhysicalDeviceD3D.cpp b/src/dawn/native/d3d/PhysicalDeviceD3D.cpp index 2faab618750..7c9a28d3f36 100644 --- a/src/dawn/native/d3d/PhysicalDeviceD3D.cpp +++ b/src/dawn/native/d3d/PhysicalDeviceD3D.cpp @@ -57,12 +57,18 @@ ResultOrError PhysicalDevice::GetSurfaceCapab const Surface*) const { PhysicalDeviceSurfaceCapabilities capabilities; + // StorageBinding is not supported by DXGI swapchains. capabilities.usages = wgpu::TextureUsage::RenderAttachment | wgpu::TextureUsage::TextureBinding | wgpu::TextureUsage::CopySrc | wgpu::TextureUsage::CopyDst; - // This is the only supported format in native mode (see crbug.com/dawn/160). - capabilities.formats.push_back(wgpu::TextureFormat::BGRA8Unorm); + // The list of format allowed with the DXGI flip model. + capabilities.formats = { + wgpu::TextureFormat::BGRA8Unorm, + wgpu::TextureFormat::RGBA8Unorm, + wgpu::TextureFormat::RGBA16Float, + wgpu::TextureFormat::RGB10A2Unorm, + }; capabilities.presentModes = { wgpu::PresentMode::Fifo,