One of the basic tasks of computer graphics is rendering three-dimensional objects: taking a scene composed of many geometric objects arranged in 3D space and computing a 2D image that shows the objects as viewed from a particular viewpoint. Ray tracing is an image-order algorithm for making renderings of 3D scenes, and consider it first because it’s possible to get a ray tracer working without developing any of the mathematical machinery that’s used for object-order rendering. Image-order and object-order renderers can compute exactly the same images, but they lend themselves to computing different kinds of effects and have quite different performance characteristics. The view that is produced is determined by the choice of projection direction and image plane. If the image plane is perpendicular to the view direction, the projection is called orthographic; otherwise, it is called oblique.