guOrthoF

*Creates an orthogonal projection matrix (floating point)*

```
#include <ultra64.h> /* gu.h */
void guOrthoF(
float mf[4][4],
float l,
float r,
float b,
float t,
float n,
float f,
float scale);
```

**mf**- 4x4 projection matrix resulting from calculation
**l**- Near plane's lower-left x coordinate
**r**- Near plane's upper-right x coordinate
**b**- Near plane's lower-left y coordinate
**t**- Near plane's upper-right y coordinate
**n**- z-coordinate of near clipping plane
**f**- z-coordinate of far clipping plane
**scale**- Scale for matrix elements
- * Can be used to set the significant number of digits for RSP fixed-point computations.

None.

Returns an orthogonal projection matrix to **mf** for a parallel view of the orthogonal projection. When this function is called, the result is the creation of the following kind of projection matrix:

The near clipping plane is a rectangle with the lower-left vertex at
(**l**, **b**, -**n**) and the upper-right vertex at (**r**, **t**, -**n**). The far clipping plane is a rectangle with the lower-left vertex at (**l**, **b**, -**f**) and the upper-right vertex at (**r**, **t**, -**f**). Both near and far (**n** and **f**) can take either positive or negative values. Fixed point is handled with the guOrtho function.

In this function, the near plane and far plane are proportionate with the z plane in the world coordinate system, which differs from the specifications made with guPerspectiveF. In the case of guPerspectiveF, distances are always specified using positive values. Also, the resolution of the Z buffer declines as the distance between the near plane and far plane increases.

guFrustum, guFrustumF, guLookAt, guLookAtF, guOrtho, guPerspective, and guPerspectiveF

03/01/99 Completely rewritten.