let acc_frustrum ~left ~right ~bottom ~top ~near ~far ~jitter_x
~jitter_y ~eye_x ~eye_y ~focus ~viewport_w ~viewport_h=
let xwsize = right -. left and
ywsize = top -. bottom in
let dx = 0.0 -. jitter_x *. (xwsize /. (float viewport_w))+.
eye_x *. near /. focus and
dy = 0.0 -. jitter_y *. (ywsize /. (float viewport_h)) +.
eye_y *. near /. focus
in
let x = ((left +. dx), (right +. dx)) and
y = ((bottom +. dy), (top +. dy)) and
z = (near, far) in
GlMat.mode `projection ;
GlMat.load_identity () ;
GlMat.frustum ~x ~y ~z ;
GlMat.mode `modelview ;
GlMat.load_identity () ;
GlMat.translate3 (0.0 -. dx, 0.0 -. dy, 0.0) ;
()