multiDraw method

  1. @override
void multiDraw(
  1. List<IndexedDraw> draws
)
override

Several indexed draws of the same bindings in one call — DeviceFeature.multiDraw. Each entry follows drawIndexed's rules.

The call a batch of submeshes sharing one pipeline wants: WebGL2 turns it into one WEBGL_multi_draw call, and a backend without a native form may loop, which costs calls and not correctness.

Implementation

@override
void multiDraw(List<IndexedDraw> draws) {
  for (final entry in draws) {
    entry.checkFeatures(features, backend: _name);
  }
  _gated(
    DeviceFeature.multiDraw,
    'multiDraw',
    List<IndexedDraw>.unmodifiable(draws),
  );
}