![]() |
|
|
view frustum is a semi-infinite pyramid, although the
base is usually rectangular rather than square because the screen isn't square.
In practice, however, it is normal to chop off the frustum near the point and
somewhere further down towards the base. The view frustum defines what parts
of the 3D world can be seen from the camera position when looking through a
window (usually the screen). Here's a little piccie to help clarify things a
bit :You can define a frustum using the view rectangle, the camera origin and
the near- and far-plane distances from the camera origin. This information can
then be used to make the top, bottom, left, right, near and far planes. All
the planes have their normals facing into the frustum (by convention, doesn't
matter so long as they either all point inwards or all point outwards).
Once you have these 6 planes it is easy to determine whether any given point
is inside the frustum or not - you just make sure it is above every plane. You
just test it against each plane in turn, rejecting the point if it fails at
any point in the test.