CubeCreator creates one material that will be applied to each face of the cube. This material is shared by all the cubes in the scene.
We’ll use a Phong shader for the material.
KFbxSurfacePhong* gMaterial = NULL; ...
// Create global material for cube. void CreateMaterial(KFbxSdkManager* pSdkManager) { KString lMaterialName = "material"; KString lShadingName = "Phong"; fbxDouble3 lBlack(0.0, 0.0, 0.0); fbxDouble3 lRed(1.0, 0.0, 0.0); fbxDouble3 lDiffuseColor(0.75, 0.75, 0.0); gMaterial = KFbxSurfacePhong::Create(pSdkManager, lMaterialName.Buffer());
The following properties are used by the Phong shader to calculate the color for each pixel in the material:
// Generate primary and secondary colors. gMaterial->GetEmissiveColor() .Set(lBlack); gMaterial->GetAmbientColor() .Set(lRed); gMaterial->GetDiffuseColor() .Set(lDiffuseColor); gMaterial->GetTransparencyFactor() .Set(40.5); gMaterial->GetShadingModel() .Set(lShadingName); gMaterial->GetShininess() .Set(0.5); }