pipeline method

  1. @override
GpuPipeline pipeline(
  1. GpuShader vertex,
  2. GpuShader fragment, {
  3. GpuVertexLayout? layout,
})
override

The pipeline for vertex and fragment reading layout (null: the vertex shader's inputs, interleaved in declaration order). Cached: the same arguments return the same pipeline.

Implementation

@override
GpuPipeline pipeline(
  GpuShader vertex,
  GpuShader fragment, {
  GpuVertexLayout? layout,
}) => _pipelines.putIfAbsent((vertex, fragment, layout?.key ?? ''), () {
  log.add('pipeline ${vertex.name}+${fragment.name}');
  return _NullPipeline(vertex, fragment);
});