File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -433,14 +433,17 @@ impl Device {
433433 }
434434 . map_err ( DeviceError :: from_hal) ?;
435435
436+ // Cloned as we need them below anyway.
436437 let alignments = adapter. raw . capabilities . alignments . clone ( ) ;
437438 let downlevel = adapter. raw . capabilities . downlevel . clone ( ) ;
439+ let limits = & adapter. raw . capabilities . limits ;
438440
439441 let enable_indirect_validation = instance_flags
440442 . contains ( wgt:: InstanceFlags :: VALIDATION_INDIRECT_CALL )
441- && downlevel
442- . flags
443- . contains ( wgt:: DownlevelFlags :: INDIRECT_EXECUTION ) ;
443+ && downlevel. flags . contains (
444+ wgt:: DownlevelFlags :: INDIRECT_EXECUTION | wgt:: DownlevelFlags :: COMPUTE_SHADERS ,
445+ )
446+ && limits. max_storage_buffers_per_shader_stage >= 2 ;
444447
445448 let indirect_validation = if enable_indirect_validation {
446449 Some ( crate :: indirect_validation:: IndirectValidation :: new (
You can’t perform that action at this time.
0 commit comments