executeBundles method

  1. @override
void executeBundles(
  1. List<RenderBundle> bundles
)
override

Replays bundles into this pass — DeviceFeature.renderBundles.

Each bundle was recorded against attachments of the formats and sample count this pass has (see RenderBundleDescriptor); one that does not match throws an ArgumentError. State does not leak either way: the pipeline, bindings and per-draw state are what each bundle set for itself, and after the call this pass's bindings are forgotten as clearBindings forgets them, as WebGPU specifies.

Implementation

@override
void executeBundles(List<RenderBundle> bundles) {
  _passOnly('executeBundles');
  for (final bundle in bundles) {
    debugCheckLive(bundle, 'executeBundles');
  }
  _gated(
    DeviceFeature.renderBundles,
    'executeBundles',
    List<RenderBundle>.unmodifiable(bundles),
  );
  _forget();
  _boundIndices = null;
}