Un poly par mat
Script COFFEE pour Cinéma 4D R13.
ajoute_poly(doc, mat, neutre, i) { var poly = AllocObject(Osinglepoly); var tex = AllocTag(Ttexture); tex#TEXTURETAG_MATERIAL = mat; poly->InsertTag(tex); poly#ID_BASEOBJECT_REL_POSITION:VECTOR_Y = -10 - i; doc->InsertObject(poly, neutre, NULL); } main(doc,op) { var mat = doc->GetFirstMaterial(); if (!mat) return; var neutre = AllocObject(Onull); neutre->SetName("Mats"); doc->InsertObject(neutre, NULL, NULL); var i = 0; if (mat->GetBit(BIT_ACTIVE)) ajoute_poly(doc, mat, neutre, i); mat = mat->SearchNext(BIT_ACTIVE); while(mat) { i++; ajoute_poly(doc, mat, neutre, i); mat = mat->SearchNext(BIT_ACTIVE); } }