Exemple #1
0
def multi_polyQuad():
    args,counter = pm.ls(sl=True),1
    w=400
    window = pm.window(w=w,h=40)
    pm.columnLayout()
    progressMessage=pm.text(l='Running through Objects...',w=w)
    argName=pm.text(l='',w=w)
    progressControl = pm.progressBar(isInterruptable=True, beginProgress=True, maxValue=len(args), width=w)
    window.show()
    for arg in args:
        if pm.progressBar(progressControl, query=True, isCancelled=True ) :
            break
        progressMessage.setLabel('Cleaning up then Quadding object '+str(counter)+'/'+str(len(args))+':')
        argName.setLabel(arg)
        pm.select(arg,r=True)
        #cleanup mesh
        mel.eval('polyCleanupArgList 3 { "0","1","0","0","0","0","0","0","0","1e-05","0","1e-05","0","1e-05","0","1","0" };')
        #quad all polies
        pm.polyQuad(arg, a=30, kgb=False, ktb=False,khe=False,ws=True,ch=False)
        #merge all verts
        pm.polyMergeVertex((arg+'.vtx[0:'+str(pm.polyEvaluate(arg,v=True))+']'), d=.001,am=True,ch=0)
        pm.polyNormalPerVertex(arg,ufn=True)
        pm.polySoftEdge(arg,angle=68, ch=0)
        pm.progressBar(progressControl, edit=True, step=1)
        counter+=1
    pm.progressBar(progressControl, edit=True, endProgress=True)
    pm.select(args, r=True)
    pm.selectMode(o=True)
    window.delete()
Exemple #2
0
import pymel.core as pm
sel=pm.ls(sl=True)
for obj in sel:
	if obj.getShape().type()=='mesh':
		pm.polyQuad(obj,kgb=True,ws=True,khe=False,ktb=False)
		pm.polySoftEdge(obj,a=180)
	if pm.polyUVSet(obj,auv=True,q=True):
		if 'UVW' in pm.polyUVSet(obj,auv=True,q=True):
			pm.polyCopyUV(obj,uvSetNameInput="UVW", uvSetName="map1", ch=0)
			pm.polyUVSet(obj,uvs="UVW",delete=True)
	pm.delete(obj,ch=True)
pm.select(sel,r=True)


shaders=pm.ls(type='phong')
for shader in shaders:
	if len(shader.split('_'))>1:
		name=shader.split('_')[1]
	else:
		name=shader
	shader.rename(name+'_MTL')