sig
type client_state =
GL_COLOR_ARRAY
| GL_EDGE_FLAG_ARRAY
| GL_FOG_COORD_ARRAY
| GL_INDEX_ARRAY
| GL_NORMAL_ARRAY
| GL_SECONDARY_COLOR_ARRAY
| GL_TEXTURE_COORD_ARRAY
| GL_VERTEX_ARRAY
external glEnableClientState : client_state:VertArray.client_state -> unit
= "ml_glenableclientstate"
external glDisableClientState : client_state:VertArray.client_state -> unit
= "ml_gldisableclientstate"
external glDrawArrays : mode:GL.primitive -> first:int -> count:int -> unit
= "ml_gldrawarrays"
external glMultiDrawArrays : mode:int -> arr:(int * int) array -> unit
= "ml_glmultidrawarrays"
external glArrayElement : i:int -> unit = "ml_glarrayelement"
module Elem :
sig
type elem_data_type =
GL_UNSIGNED_BYTE
| GL_UNSIGNED_SHORT
| GL_UNSIGNED_INT
end
external glDrawElements :
mode:GL.primitive ->
count:int ->
data_type:VertArray.Elem.elem_data_type ->
data:('a, 'b, Bigarray.c_layout) Bigarray.Array1.t -> unit
= "ml_gldrawelements"
external glDrawRangeElements :
mode:GL.primitive ->
start:int ->
end_:int ->
count:int ->
data_type:VertArray.Elem.elem_data_type ->
data:('a, 'b, Bigarray.c_layout) Bigarray.Array1.t -> unit
= "ml_gldrawrangeelements_bytecode" "ml_gldrawrangeelements_native"
type interleaved_format =
GL_V2F
| GL_V3F
| GL_C4UB_V2F
| GL_C4UB_V3F
| GL_C3F_V3F
| GL_N3F_V3F
| GL_C4F_N3F_V3F
| GL_T2F_V3F
| GL_T4F_V4F
| GL_T2F_C4UB_V3F
| GL_T2F_C3F_V3F
| GL_T2F_N3F_V3F
| GL_T2F_C4F_N3F_V3F
| GL_T4F_C4F_N3F_V4F
external glInterleavedArrays :
fmt:VertArray.interleaved_format ->
stride:int ->
pointer:('a, 'b, Bigarray.c_layout) Bigarray.Array1.t -> unit
= "ml_glinterleavedarrays"
module Coord :
sig type coord_data_type = GL_SHORT | GL_INT | GL_FLOAT | GL_DOUBLE end
external glVertexPointer :
size:int ->
data_type:VertArray.Coord.coord_data_type ->
stride:int -> data:('a, 'b, Bigarray.c_layout) Bigarray.Array1.t -> unit
= "ml_glvertexpointer"
external glTexCoordPointer :
size:int ->
data_type:VertArray.Coord.coord_data_type ->
stride:int -> data:('a, 'b, Bigarray.c_layout) Bigarray.Array1.t -> unit
= "ml_gltexcoordpointer"
module Norm :
sig
type norm_data_type =
GL_BYTE
| GL_SHORT
| GL_INT
| GL_FLOAT
| GL_DOUBLE
end
external glNormalPointer :
data_type:VertArray.Norm.norm_data_type ->
stride:int -> data:('a, 'b, Bigarray.c_layout) Bigarray.Array1.t -> unit
= "ml_glnormalpointer"
module Index :
sig
type index_data_type =
GL_UNSIGNED_BYTE
| GL_SHORT
| GL_INT
| GL_FLOAT
| GL_DOUBLE
end
external glIndexPointer :
data_type:VertArray.Index.index_data_type ->
stride:int -> data:('a, 'b, Bigarray.c_layout) Bigarray.Array1.t -> unit
= "ml_glindexpointer"
module Color :
sig
type color_data_type =
GL_BYTE
| GL_UNSIGNED_BYTE
| GL_SHORT
| GL_UNSIGNED_SHORT
| GL_INT
| GL_UNSIGNED_INT
| GL_FLOAT
| GL_DOUBLE
end
external glColorPointer :
size:int ->
data_type:VertArray.Color.color_data_type ->
stride:int -> data:('a, 'b, Bigarray.c_layout) Bigarray.Array1.t -> unit
= "ml_glcolorpointer"
external glEdgeFlagPointer :
stride:int ->
data:('a, Bigarray.int8_unsigned_elt, Bigarray.c_layout)
Bigarray.Array1.t ->
unit = "ml_gledgeflagpointer"
external glSecondaryColorPointer :
size:int ->
data_type:VertArray.Color.color_data_type ->
stride:int -> data:('a, 'b, Bigarray.c_layout) Bigarray.Array1.t -> unit
= "ml_glsecondarycolorpointer"
module VAttr :
sig
type vertattr_data_type =
GL_BYTE
| GL_UNSIGNED_BYTE
| GL_SHORT
| GL_UNSIGNED_SHORT
| GL_INT
| GL_UNSIGNED_INT
| GL_FLOAT
| GL_DOUBLE
end
external glVertexAttribPointer :
index:int ->
size:int ->
data_type:VertArray.VAttr.vertattr_data_type ->
normalized:bool ->
stride:int -> data:('a, 'b, Bigarray.c_layout) Bigarray.Array1.t -> unit
= "ml_glvertexattribpointer_bytecode" "ml_glvertexattribpointer_native"
external glVertexPointer0 :
size:int ->
data_type:VertArray.Coord.coord_data_type -> stride:int -> unit
= "ml_glvertexpointer0"
external glTexCoordPointer0 :
size:int ->
data_type:VertArray.Coord.coord_data_type -> stride:int -> unit
= "ml_gltexcoordpointer0"
external glColorPointer0 :
size:int ->
data_type:VertArray.Color.color_data_type -> stride:int -> unit
= "ml_glcolorpointer0"
external glSecondaryColorPointer0 :
size:int ->
data_type:VertArray.Color.color_data_type -> stride:int -> unit
= "ml_glsecondarycolorpointer0"
external glIndexPointer0 :
data_type:VertArray.Index.index_data_type -> stride:int -> unit
= "ml_glindexpointer0"
external glNormalPointer0 :
data_type:VertArray.Norm.norm_data_type -> stride:int -> unit
= "ml_glnormalpointer0"
external glEdgeFlagPointer0 : stride:int -> unit = "ml_gledgeflagpointer0"
external glVertexAttribPointer0 :
index:int ->
size:int ->
data_type:VertArray.VAttr.vertattr_data_type ->
normalized:bool -> stride:int -> unit = "ml_glvertexattribpointer0"
external glDrawElements0 :
mode:GL.primitive ->
count:int -> data_type:VertArray.Elem.elem_data_type -> unit
= "ml_gldrawelements0"
external glVertexPointerOfs8 :
size:int ->
data_type:VertArray.Coord.coord_data_type ->
stride:int -> ofs:int -> unit = "ml_glvertexpointer_ofs8"
external glVertexPointerOfs16 :
size:int ->
data_type:VertArray.Coord.coord_data_type ->
stride:int -> ofs:int -> unit = "ml_glvertexpointer_ofs16"
external glVertexPointerOfs32 :
size:int ->
data_type:VertArray.Coord.coord_data_type ->
stride:int -> ofs:int -> unit = "ml_glvertexpointer_ofs32"
external glIndexPointerOfs8 :
data_type:VertArray.Index.index_data_type ->
stride:int -> ofs:int -> unit = "ml_glindexpointer_ofs8"
external glIndexPointerOfs16 :
data_type:VertArray.Index.index_data_type ->
stride:int -> ofs:int -> unit = "ml_glindexpointer_ofs16"
external glIndexPointerOfs32 :
data_type:VertArray.Index.index_data_type ->
stride:int -> ofs:int -> unit = "ml_glindexpointer_ofs32"
external glTexCoordPointerOfs8 :
size:int ->
data_type:VertArray.Coord.coord_data_type ->
stride:int -> ofs:int -> unit = "ml_gltexcoordpointer_ofs8"
external glTexCoordPointerOfs16 :
size:int ->
data_type:VertArray.Coord.coord_data_type ->
stride:int -> ofs:int -> unit = "ml_gltexcoordpointer_ofs16"
external glTexCoordPointerOfs32 :
size:int ->
data_type:VertArray.Coord.coord_data_type ->
stride:int -> ofs:int -> unit = "ml_gltexcoordpointer_ofs32"
external glColorPointerOfs8 :
size:int ->
data_type:VertArray.Color.color_data_type ->
stride:int -> ofs:int -> unit = "ml_glcolorpointer_ofs8"
external glColorPointerOfs16 :
size:int ->
data_type:VertArray.Color.color_data_type ->
stride:int -> ofs:int -> unit = "ml_glcolorpointer_ofs16"
external glColorPointerOfs32 :
size:int ->
data_type:VertArray.Color.color_data_type ->
stride:int -> ofs:int -> unit = "ml_glcolorpointer_ofs32"
external glSecondaryColorPointerOfs8 :
size:int ->
data_type:VertArray.Color.color_data_type -> stride:int -> unit
= "ml_glsecondarycolorpointer_ofs8"
external glSecondaryColorPointerOfs16 :
size:int ->
data_type:VertArray.Color.color_data_type -> stride:int -> unit
= "ml_glsecondarycolorpointer_ofs16"
external glSecondaryColorPointerOfs32 :
size:int ->
data_type:VertArray.Color.color_data_type -> stride:int -> unit
= "ml_glsecondarycolorpointer_ofs32"
external glNormalPointerOfs8 :
data_type:VertArray.Norm.norm_data_type -> stride:int -> ofs:int -> unit
= "ml_glnormalpointer_ofs8"
external glNormalPointerOfs16 :
data_type:VertArray.Norm.norm_data_type -> stride:int -> ofs:int -> unit
= "ml_glnormalpointer_ofs16"
external glNormalPointerOfs32 :
data_type:VertArray.Norm.norm_data_type -> stride:int -> ofs:int -> unit
= "ml_glnormalpointer_ofs32"
external glEdgeFlagPointerOfs8 : stride:int -> ofs:int -> unit
= "ml_gledgeflagpointer_ofs8"
external glEdgeFlagPointerOfs16 : stride:int -> ofs:int -> unit
= "ml_gledgeflagpointer_ofs16"
external glEdgeFlagPointerOfs32 : stride:int -> ofs:int -> unit
= "ml_gledgeflagpointer_ofs32"
external glVertexAttribPointerOfs8 :
index:int ->
size:int ->
data_type:VertArray.VAttr.vertattr_data_type ->
normalized:bool -> stride:int -> ofs:int -> unit
= "ml_glvertexattribpointer_ofs8_bytecode"
"ml_glvertexattribpointer_ofs8_native"
external glVertexAttribPointerOfs16 :
index:int ->
size:int ->
data_type:VertArray.VAttr.vertattr_data_type ->
normalized:bool -> stride:int -> ofs:int -> unit
= "ml_glvertexattribpointer_ofs16_bytecode"
"ml_glvertexattribpointer_ofs16_native"
external glVertexAttribPointerOfs32 :
index:int ->
size:int ->
data_type:VertArray.VAttr.vertattr_data_type ->
normalized:bool -> stride:int -> ofs:int -> unit
= "ml_glvertexattribpointer_ofs32_bytecode"
"ml_glvertexattribpointer_ofs32_native"
external glDrawElementsOfs8 :
mode:GL.primitive ->
count:int -> data_type:VertArray.Elem.elem_data_type -> ofs:int -> unit
= "ml_gldrawelements_ofs8"
external glDrawElementsOfs16 :
mode:GL.primitive ->
count:int -> data_type:VertArray.Elem.elem_data_type -> ofs:int -> unit
= "ml_gldrawelements_ofs16"
external glDrawElementsOfs32 :
mode:GL.primitive ->
count:int -> data_type:VertArray.Elem.elem_data_type -> ofs:int -> unit
= "ml_gldrawelements_ofs32"
external glGenVertexArray : unit -> int = "ml_glgenvertexarray"
external glBindVertexArray : int -> unit = "ml_glbindvertexarray"
external glDeleteVertexArray : int -> unit = "ml_gldeletevertexarray"
external glIsVertexArray : int -> bool = "ml_glisvertexarray"
end