func display() { // Clear the background as white gl.ClearColor(1.0, 1.0, 1.0, 1.0) gl.Clear(gl.COLOR_BUFFER_BIT) // Use the GLSL program gl.UseProgram(program) gl.BindBuffer(gl.ARRAY_BUFFER, vboTriangle) gl.EnableVertexAttribArray(attributeCoord2d) // Describe our vertices array to OpenGL (it can't guess its format automatically) gl.VertexAttribPointer(attributeCoord2d, 2, gl.FLOAT, gl.FALSE, 0, gl.Pointer(nil)) gl.EnableVertexAttribArray(attributeColor) gl.BindBuffer(gl.ARRAY_BUFFER, vboTriangleColors) gl.VertexAttribPointer(attributeColor, 3, gl.FLOAT, gl.FALSE, 0, gl.Pointer(nil)) // Push each element in buffer_vertices to the vertex shader gl.DrawArrays(gl.TRIANGLES, 0, 3) gl.DisableVertexAttribArray(attributeCoord2d) gl.DisableVertexAttribArray(attributeColor) gl.BindBuffer(gl.ARRAY_BUFFER, 0) // Unbind // Display the result glfw.SwapBuffers() }
func (loc *AttributeLocation) Disable() { gl.DisableVertexAttribArray(loc.id) }