CompileWholeProgram method

GlProgram CompileWholeProgram(
  1. String vertShaderText,
  2. String fragShaderText,
  3. List<String> transformVarying
)

Implementation

GlProgram CompileWholeProgram(String vertShaderText, String fragShaderText,
    List<String> transformVarying) {
  GlProgram program = _gl.createProgram();
  GlShader vs = _CompileShader(_gl, GL_VERTEX_SHADER, vertShaderText);
  _gl.attachShader(program, vs);
  // delete shader vs?

  GlShader fs = _CompileShader(_gl, GL_FRAGMENT_SHADER, fragShaderText);
  _gl.attachShader(program, fs);
  // delete shader fs?

  if (transformVarying.length > 0) {
    _gl.transformFeedbackVaryings(
        program, transformVarying, GL_INTERLEAVED_ATTRIBS);
  }

  _gl.linkProgram(program);

  if (!_gl.getProgramParameter(program, GL_LINK_STATUS)) {
    throw _gl.getProgramInfoLog(program);
  }

  return program;
}