Materials are what give an object its outward appearance. In Blender, materials are extremely versatile and because of that rather complex. Almost any aspect of the way light behaves when reflecting from an object may be controlled and that not only by simple parameters, but by image maps and node networks as well.
Up to 16 materials can be associated with an object and, within an object, individual parts can refer to one of these 16 materials. In Text3d
objects, each individual character may refer to a different material and in curves this is true for each control point.
From a developer's point of view, assigning materials to objects is a two-step process. First, we have to define a new material, and then we have to assign a material or materials to an object. The first step may be omitted if we can refer to already existing materials.
If an object like a mesh already has faces defined we then still have to assign a material to each face. Newly created faces will have the active...