kernelBundle function
A bundle named name that carries kernels in its kernel section, each
claimed as a stage of its name: what GraphicsDevice.loadShaders takes
on any device with compute.
Implementation
ShaderBundle kernelBundle(String name, Iterable<ComputeKernel> kernels) {
final list = kernels.toList();
return ShaderBundle(
name: name,
sdk: '',
stages: <ShaderBundleStage>[
for (final k in list)
ShaderBundleStage(k.name, kind: ShaderStageKind.compute),
],
sections: <String, ByteData>{
ShaderBundle.kernelSection: encodeKernelSection(<String, String>{
for (final k in list) k.name: k.source,
}),
},
);
}