Module ProjectSource

Sourcetype vertex = {
  1. vx : float;
  2. vy : float;
  3. z : float;
  4. u : float;
  5. v : float;
  6. inv_z : float;
  7. u_over_z : float;
  8. v_over_z : float;
  9. normal : Vec3.t;
    (*

    the vertex's own normal, in world space, untouched by projection (a normal is a direction, not a screen position -- nothing about "where on screen is this" applies to it). Used by Shading for Gouraud (blended per vertex) and Phong (blended per pixel) shading.

    *)
}
Sourceval vertex : Camera.t -> width:int -> height:int -> (Vec3.t * (float * float) * Vec3.t) -> vertex option
Sourceval vertex_of_view : Camera.t -> width:int -> height:int -> (Vec3.t * (float * float) * Vec3.t) -> vertex option