package tgls

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

OpenGL 3.x thin bindings.

Tgl3 can program core OpenGL 3.2 and 3.3 contexts. Consult the binding conventions.

Open the module use it, this defines only the module Gl in your scope. To use in the toplevel with findlib, just #require "tgls.tgl3", it automatically loads the library and opens the Tgl3 module.

References

v0.8.6 — OpenGL 3.x — homepage

OpenGL 3.x

module Gl : sig ... end

OpenGL 3.x bindings.

Conventions

To find the name of an OCaml function corresponding to a C function name, map the gl prefix to the module name Tgl3.Gl, add an underscore between each minuscule and majuscule and lower case the result. For example glGetError maps to Tgl3.Gl.get_error

To find the name of an OCaml value corresponding to a C enumerant name, map the GL_ prefix to the module name Tgl3.Gl and lower case the rest. For example GL_COLOR_BUFFER_BIT maps to Tgl3.Gl.color_buffer_bit.

The following exceptions occur:

  • A few enumerant names do clash with functions name. In that case we postfix the enumerant name with _enum. For example we have Tgl3.Gl.viewport and Tgl3.Gl.viewport_enum.
  • If applying the above procedures results in an identifier that doesn't start with a letter, prefix the identifier with a '_'.
  • If applying the above procedures results in an identifier that is an OCaml keyword, suffix the identifier with a '_'.