vertexShader property

Shader get vertexShader

The vertex shader used when rendering this geometry.

Set by subclasses, either directly with setVertexShader or, for a shader from baseShaderLibrary, by name with setVertexShaderName. A name is resolved on first access and cached, so the lookup happens once (at render time) rather than per draw. Throws if accessed before a shader has been assigned, or before the base shader bundle has loaded for a named shader.

Implementation

gpu.Shader get vertexShader {
  final resolved = _vertexShader ??= _vertexShaderName == null
      ? null
      : baseShaderLibrary[_vertexShaderName!];
  if (resolved == null) {
    throw Exception('Vertex shader has not been set');
  }
  return resolved;
}