public static Matrix4x4 Frustum (float left, float right, float bottom, float top, float zNear, float zFar);
public static Matrix4x4 Frustum (FrustumPlanes fp);

Parameters

leftThe X coordinate of the left side of the near projection plane in view space.
rightThe X coordinate of the right side of the near projection plane in view space.
bottomThe Y coordinate of the bottom side of the near projection plane in view space.
topThe Y coordinate of the top side of the near projection plane in view space.
zNearZ distance to the near plane from the origin in view space.
zFarZ distance to the far plane from the origin in view space.
frustumPlanesFrustum planes struct that contains the view space coordinates of that define a viewing frustum.

Returns

Matrix4x4 A projection matrix with a viewing frustum defined by the plane coordinates passed in.

Description

This function returns a projection matrix with viewing frustum that has a near plane defined by the coordinates that were passed in.

The corners of the near plane of the viewing frustum of the projection matrix are as follows:
top-left : (left, top, zNear)
top-right : (right, top, zNear)
bottom-right : (right, bottom, zNear)
bottom-left : (left, bottom, zNear)

The returned matrix embeds a z-flip operation whose purpose is to cancel the z-flip performed by the camera view matrix. If the view matrix is an identity or some custom matrix that doesn't perform a z-flip, consider multiplying the third column of the projection matrix (i.e. m02, m12, m22 and m32) by -1.

See also glFrustum.