Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import mtoa.renderToTexture as rt
- import maya.cmds as cmds
- import maya.mel as mel
- global delList
- delList = []
- mySel = cmds.ls(selection=True)
- hideList = cmds.ls(selection=True)
- mel.eval('ToggleVisibilityAndKeepSelection;')
- cmds.duplicate(renameChildren=1, rr=1, name='renderToUV')
- newItems = cmds.ls(selection=True)
- for item in newItems:
- delList.insert(0, item)
- cmds.polyUnite(cmds.ls(selection=True), ch=1, mergeUVSets=1, name='renderToUV')
- cmds.rename(cmds.ls(selection=True), "renderToUVmerge")
- global parNam
- parNam = cmds.listRelatives(mySel[0], p=True)
- outNam = str(parNam[0])+"OCC_"
- cmds.select("renderToUVmerge")
- cmds.rename(cmds.ls(selection=True), outNam)
- delList.insert(0,outNam)
- mel.eval('DeleteHistory;')
- result = cmds.promptDialog(title='Render to UVs',
- message='Enter Resolution:',
- button=['OK', 'Cancel'],
- defaultButton='OK',
- cancelButton='Cancel',
- dismissString='Cancel')
- def bakeUVTexture (userIn2,mySel):
- mySel2 = cmds.ls(selection=True)
- #Find material name and texture node name
- cmds.hyperShade(mySel2, smn=1)
- matname = cmds.ls(selection=True)
- mel.eval('select -noExpand `listHistory '+str(matname[0])+'`;')
- texFileName = cmds.ls(selection=True)
- #Assign Surface Shader to object
- cmds.shadingNode('aiAmbientOcclusion', asShader=1, n='surfaceMat')
- cmds.select(outNam)
- cmds.hyperShade(assign='surfaceMat')
- delList.insert(0,"surfaceMat")
- delList.insert(0,"surfaceMatSG")
- #Bake texture map out and move file to TMP folder
- cmds.select(outNam)
- cmds.arnoldRenderToTexture(folder='C:/TMP/', resolution=int(userIn2))
- print(userIn2)
- if result == 'OK':
- userIn = cmds.promptDialog(query=True, text=True)
- bakeUVTexture(userIn,mySel)
- for i in delList:
- if i == "surfaceMatSG":
- mel.eval('select -r -ne surfaceMatSG;')
- cmds.delete()
- else:
- cmds.select(i, r=1)
- cmds.delete()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement