Generating images from 3D models is a complex, multi-step process. Most 3D models are represented by a mesh, a set of small faces (usually triangles) delimited by vertices (that is, points in the 3D space) representing the model's surface. Some models also contain some texture or color information, indicating which color each vertex or small surface should be. Finally, models can be placed into a larger 3D scene (translated/rotated). Given a virtual camera defined by its intrinsic parameters (such as its focal length and principal point) and its own pose in the 3D scene, the task is to render what the camera sees of the scene. This procedure is presented in a simplified manner in the following Figure 7-6:
Converting a 3D scene into a 2D image thus implies multiple transformations, projecting the...