Going beyond flatland (2D graphics) is more of a challenge than purely adding another axis. Many techniques are applied together to map the high expectations of mind onto the 2D displays. To render a 3D scene, techniques such as painting, shading, textures, lighting, reflections, hidden-surface removal, perspective projections are employed.
Shaping is the first step in 3D technology. A 3D shape can be constructed using basic geometry (polygon, simplest being triangle), mathematical modeling (equations), or graphics techniques like lofting, lathing and extrusion where a 2D object is moved over a well-defined path in 3D space. A warping technique, deformation grid, is also used. The result is usually a wire-frame model.
Shading is then used to provide skin to wire-frame model. Flat shading model is the crudest technique that does no smoothing. Gouraud shading , a smooth-shading technique, creates color gradients based on the location of an object's face with respect to a light source. But the technique lacks, sharp highlights and shadow casting. This problem is solved using another smooth-shading technique called Phong shading which is based on how we perceive the colors. It uses ambient, diffuse and specular optical properties of the material of which the 3D object is made up of.
Texturing is next step towards achieving realism of 3D object. While the ray-traced rendering use optical properties of the material, the non ray-traced rendering use mapping ie overlaying bitmaps over surfaces of object to create a realistic texture. Texture maps, bump maps and reflections maps are fundamental map types.
Hidden-surface removal algorithms like Z-Buffer algorithm and perspective projections are employed to create the real effect of relative positioning of objects in the 3D world.
3D visualization is different 3D graphics as the former provides interactivity as well. A user can navigate through the virtual world by changing the scene perspective or maneuver objects by applying operations like translation, rotation and scaling.
A 3D animation is another buzz which is basically a sequence of frames rendered at rate greater then Perception of Vision (20 frames / second).
The 3D world specified as vertices, after various transformations, is rasterized and display. This process constituents the graphics pipeline. The graphics pipeline has following stages:
- World Transformation
- View Transformation
- Projection Transformation
- Clipping and Viewport Scaling