Iterating over Material Objects
From C4 Engine Wiki
The following code iterates through the nodes belonging to a model and visits each material object used by any geometries in the model.
void IterateMaterials(Model *model) { Node *node = model->GetFirstSubnode(); while (node) { if (node->GetNodeType() == kNodeGeometry) { Geometry *geometry = static_cast<Geometry *>(node); long count = geometry->GetMaterialCount(); for (long index = 0; index < count; index++) { MaterialObject *material = geometry->GetMaterialObject(index); // do something with the material } } node = model->GetNextNode(node); } }
