jeudi 28 mars 2013

Slate Material Editor et Py3dsMax (sme)

    Voici quelques fonctions bien utiles pour scripter avec le slate material editor (sme), je vous les présentes a travers un petit script qui permet de stocker tout les matériaux des objets sélectionnés dans une nouvelles vue du sme.


 

from Py3dsMax import mxs

#je recupere la liste des objets selectionnes:
sel = mxs.selection

#je cree une nouvelle vu et recupere son node:
nodeView = mxs.sme.GetView(mxs.sme.CreateView("stock_view"))

#je cree la boucle qui traitera chaque objets:
for node in sel:
 
    #je recupere le node material:
    mat = node.material
 
    #je creer le node material dans la nouvelle vue, je lui donne une position grace a la fonction point2 vector.
    nodeView.CreateNode(mat, mxs.point2(0,0))
 
    #j'execute une commande maxscript qui permet de mettre en ordre les materiaux dans la nouvelles vue.
    mxs.execute('actionMan.executeAction 369891408 "40060"')



mardi 12 mars 2013

Py3dsMax et les modifiers

Voici les principales fonctions py3dsmax pour travailler avec les modifiers:


 
#import de la library py3dsmax
from Py3dsMax import mxs

#cree une liste des objets selectionne
sel = mxs.selection

#cree un modifier avant l'index 6 (l'index 1 est le modifier le plus haut de la pile) 
#pour avoir un modifier toujour en bas de la pile mettre un grand before (ex: 10000)
mxs.addModifier(sel[0], mxs.Skin_Wrap(), before = 6)

#la liste des modifiers de l'objet
ld = sel[0].modifiers

#recupere un modifier par son nom
sk = sel[0].modifiers["Skin_Wrap"]

#recupere le node d'un objet par le nom
corp = mxs.getNodeByName("name_obj")