This section presents meshes, textures, and materials in the FBX SDK.
Meshes are abstracted by the KFbxMesh class. A KFbxMesh defines a list of control points, also known in common literature as vertices. A single instance of KFbxMesh can be bound to multiple instances of KFbxNode to reduce memory consumption. This is known as instancing. Scene geometry uses the concept of layers and layer elements (KFbxLayerElement) to define normal maps, material maps, texture maps, etc.
Materials (KFbxSurfaceLambert, KFbxSurfacePhong) are bound to instances of KFbxNode via KFbxNode::AddMaterial(). Materials define the basic rendering characteristics of geometry in the scene, such its diffuse, ambient, and emissive color properties. Each material occupies a specific index in a KFbxNode, which can be referenced by KFbxMesh::BeginPolygon() to define the material of a newly created polygon.
Textures (KFbxFileTexture, KFbxLayeredTexture, KFbxProceduralTexture) are connected to material channels to define how geometry is rendered. The KFbxFileTexture class uses data contained in a file, for example a .jpg, to define a texture's values.