Rg11b10ufloat should be resolvable when it is renderable (#7878)

This commit is contained in:
Andy Leiserson 2025-07-03 14:51:48 -07:00 committed by GitHub
parent 361fe34392
commit b695317a9b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 9 additions and 6 deletions

View File

@ -50,6 +50,8 @@ webgpu:api,validation,queue,submit:command_buffer,submit_invalidates:*
//FAIL: webgpu:api,validation,queue,submit:command_buffer,invalid_submit_invalidates:* //FAIL: webgpu:api,validation,queue,submit:command_buffer,invalid_submit_invalidates:*
// https://github.com/gfx-rs/wgpu/issues/3911#issuecomment-2972995675 // https://github.com/gfx-rs/wgpu/issues/3911#issuecomment-2972995675
webgpu:api,validation,render_pass,render_pass_descriptor:attachments,* webgpu:api,validation,render_pass,render_pass_descriptor:attachments,*
webgpu:api,validation,render_pass,render_pass_descriptor:resolveTarget,*
webgpu:api,validation,texture,rg11b10ufloat_renderable:*
webgpu:api,operation,render_pipeline,overrides:* webgpu:api,operation,render_pipeline,overrides:*
webgpu:api,operation,rendering,basic:clear:* webgpu:api,operation,rendering,basic:clear:*
webgpu:api,operation,rendering,basic:fullscreen_quad:* webgpu:api,operation,rendering,basic:fullscreen_quad:*

View File

@ -2958,11 +2958,12 @@ impl TextureFormat {
storage | binding storage | binding
}; };
let atomic = attachment | atomic_64; let atomic = attachment | atomic_64;
let rg11b10f = if device_features.contains(Features::RG11B10UFLOAT_RENDERABLE) { let (rg11b10f_f, rg11b10f_u) =
attachment if device_features.contains(Features::RG11B10UFLOAT_RENDERABLE) {
} else { (msaa_resolve, attachment)
basic } else {
}; (msaa, basic)
};
let (bgra8unorm_f, bgra8unorm) = if device_features.contains(Features::BGRA8UNORM_STORAGE) { let (bgra8unorm_f, bgra8unorm) = if device_features.contains(Features::BGRA8UNORM_STORAGE) {
( (
msaa_resolve | TextureFormatFeatureFlags::STORAGE_WRITE_ONLY, msaa_resolve | TextureFormatFeatureFlags::STORAGE_WRITE_ONLY,
@ -3003,7 +3004,7 @@ impl TextureFormat {
Self::Bgra8UnormSrgb => (msaa_resolve, attachment), Self::Bgra8UnormSrgb => (msaa_resolve, attachment),
Self::Rgb10a2Uint => ( msaa, attachment), Self::Rgb10a2Uint => ( msaa, attachment),
Self::Rgb10a2Unorm => (msaa_resolve, attachment), Self::Rgb10a2Unorm => (msaa_resolve, attachment),
Self::Rg11b10Ufloat => ( msaa, rg11b10f), Self::Rg11b10Ufloat => ( rg11b10f_f, rg11b10f_u),
Self::R64Uint => ( s_ro_wo, atomic_64), Self::R64Uint => ( s_ro_wo, atomic_64),
Self::Rg32Uint => ( s_ro_wo, all_flags), Self::Rg32Uint => ( s_ro_wo, all_flags),
Self::Rg32Sint => ( s_ro_wo, all_flags), Self::Rg32Sint => ( s_ro_wo, all_flags),