Module GlLight

module GlLight: sig .. end

type color_material = [ `ambient | `ambient_and_diffuse | `diffuse | `emission | `specular ] 
val color_material : face:Gl.face -> color_material -> unit
type fog_param = [ `End of float
| `color of Gl.rgba
| `density of float
| `index of float
| `mode of [ `exp | `exp2 | `linear ]
| `start of float ]
val fog : fog_param -> unit
type light_param = [ `ambient of Gl.rgba
| `constant_attenuation of float
| `diffuse of Gl.rgba
| `linear_attenuation of float
| `position of Gl.point4
| `quadratic_attenuation of float
| `specular of Gl.rgba
| `spot_cutoff of float
| `spot_direction of Gl.point3
| `spot_exponent of float ]
val light : num:int -> light_param -> unit
val light_model : [ `ambient of Gl.rgba
| `color_control of [ `separate_specular_color | `single_color ]
| `local_viewer of bool
| `two_side of bool ] -> unit
type material_param = [ `ambient of Gl.rgba
| `ambient_and_diffuse of Gl.rgba
| `color_indexes of float * float * float
| `diffuse of Gl.rgba
| `emission of Gl.rgba
| `shininess of float
| `specular of Gl.rgba ]
val material : face:Gl.face -> material_param -> unit