Advertisement
yaotungyu

trimmerBlastV2_waitForPop

Sep 21st, 2017
215
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 4.40 KB | None | 0 0
  1. import assets
  2. import maya.cmds as cmds
  3. import sys
  4. shotCode = 'KNG_203_010_210'
  5. ep = shotCode.split('_')[1]
  6. animPaths = 'Y:/KNG/episodes/'+ep+'/shots/'+shotCode+'/work/anm/Maya'
  7. abcCachPath = 'Y:/KNG/episodes/'+ep+'/shots/'+shotCode+'/products/caches'
  8. #loop through all artiist verisons and create list with all files. sort it to get the latest. (opening scene use)
  9.  
  10.  
  11. def returnFiles(path):
  12.     return cmds.getFileList(folder=path)
  13.  
  14. #test a recursive file tree mapper
  15. artists = returnFiles(animPaths)
  16. allVer = []
  17. for name in artists:
  18.     checkPath = animPaths+'/'+name
  19.     checkPathFiles = returnFiles(checkPath)
  20.     for chk in checkPathFiles:
  21.         allVer.append(animPaths+'/'+name+'/'+chk)
  22.  
  23. #look for published mb fils only
  24. mbOnly = []
  25. for fl in allVer:
  26.     if fl.split('.')[-1]=='mb' and fl.split('.')[-2]=='0001':
  27.         mbOnly.append(fl)
  28.  
  29. #need better mb seeker
  30. currentVerMax = mbOnly[0].split('/')[-1]
  31. verMaxIndex=0
  32. for i in range(0,len(mbOnly)):
  33.     if mbOnly[i].split('/')[-1]>currentVerMax:
  34.         currentVerMax = mbOnly[i].split('/')[-1]
  35.         verMaxIndex = i
  36.  
  37.  
  38.  
  39. latestPubPathFull = mbOnly[verMaxIndex]
  40. mbBase = '/'.join(latestPubPathFull.split('/')[0:-1])
  41. latestPub = latestPubPathFull.split('/')[-1]
  42. verNum = latestPub.split('.')[0][-5:]
  43.  
  44. newVerNum = verNum.replace(verNum[-1],str(int(verNum[-1])+1))
  45. upVer = latestPub.replace(verNum,newVerNum)
  46. upVerFullPath = mbBase+'/'+upVer
  47.  
  48.  
  49. #OPEN
  50. cmds.file(latestPubPathFull,open=1,f=1)
  51.  
  52. allAsset = assets.all() #get pipeline's asset class
  53. search = 'Kong' #search for this name
  54. cacheIndex = 0 #indexing the asset
  55.  
  56. i=0
  57. for ass in allAsset:
  58.     if str(ass) == search:
  59.         cacheIndex = i
  60.     i+=1
  61.  
  62. from groom_tools import groom_io
  63. groom_io.reconnect_yeti_input(asset=allAsset[cacheIndex])
  64.  
  65.  
  66.  
  67. import maya.cmds as cmds
  68. import maya.mel as mel
  69. import os
  70.  
  71. tMax = cmds.playbackOptions( q=True, max=True) + 5
  72. tMin = cmds.playbackOptions( q=True, min=True)
  73.  
  74. docDir = os.getenv("HOME")
  75. glPlayblastBase = docDir+'/glPlayblaster'
  76. fullPath = cmds.file(q=True,sceneName=True)
  77. splitNames = fullPath.split('/')
  78. fileName = splitNames[10][:-3]
  79. savingPath = glPlayblastBase+'/'+splitNames[5]+'/'+fileName
  80.  
  81.  
  82. 'turn off all yeti display!!!!!'
  83. yets = cmds.ls(type='pgYetiMaya')
  84. for yet in yets:
  85.     cmds.setAttr(yet+'.displayOutput',0)
  86.  
  87.  
  88. #find current setting for play back loop mode
  89. cmds.playbackOptions(by=1.0)
  90. loopMode = cmds.playbackOptions( q=1,loop=1)
  91.  
  92. cmds.playbackOptions( ast=971.0,min=971.0, aet=1001.0,max=1001.0, loop='once')
  93. cmds.currentTime(971.0)
  94. cmds.select(clear=1)
  95.  
  96. mel.eval("paneLayout -e -manage false $gMainPane")
  97.  
  98. cmds.play(wait=1)
  99.  
  100. cmds.playbackOptions( ast=1001.0,min=1001.0, aet=tMax,max=tMax)
  101.  
  102.  
  103. 'turn yeti dieplay on again!'
  104. for yet in yets:
  105.     cmds.setAttr(yet+'.displayOutput',1)
  106.  
  107. #pan = cmds.getPanel(type='modelPanel')
  108. #cmds.deleteUI(pan)
  109. cmds.lsUI( editors=True )
  110. windUpState=False
  111. def openPbWindow():
  112.     pbWindow = cmds.window('pbWindow')
  113.     pbForm = cmds.formLayout('pbForm')
  114.     pbModelEditor = cmds.modelEditor('pbModelEditor')
  115.     cmds.formLayout( pbForm, edit=True, attachForm=[(pbModelEditor, 'top', 0), (pbModelEditor, 'left', 0), (pbModelEditor, 'top', 0), (pbModelEditor, 'bottom', 0), (pbModelEditor, 'right', 0)])
  116.    
  117.     cmds.modelEditor( pbModelEditor, edit=True, camera='RENDER',allObjects = False, polymeshes=True,displayAppearance='smoothShaded', displayTextures=True,rendererName ="vp2Renderer",pluginShapes=1,hs=1 )
  118.     cmds.window('pbWindow',e=1,wh=(1207,720))
  119.     cmds.showWindow( pbWindow )
  120.     return True
  121.  
  122.  
  123. windUpState = openPbWindow()
  124.  
  125.  
  126. #AO/Sample query
  127. if windUpState:
  128.     optionState = cmds.getAttr("hardwareRenderingGlobals.ssaoEnable")
  129.     cmds.setAttr( "hardwareRenderingGlobals.ssaoEnable", 1)
  130.     cmds.setAttr( "hardwareRenderingGlobals.multiSampleEnable", 1)
  131.      
  132.     cmds.setAttr('defaultRenderGlobals.imageFormat',32)
  133.    
  134.    
  135.    
  136.    
  137.     cmds.playblast( f=savingPath+'/'+fileName, quality=100, st=1001.0, et=tMax ,fmt='image',wh=(1920,1080),forceOverwrite=True,epn=pbModelEditor,percent=100,v=0)
  138.     fileOpen = cmds.getFileList(folder=savingPath)[0]
  139.     os.system("start "+ savingPath+'/'+fileOpen)
  140.    
  141.     cmds.setAttr( "hardwareRenderingGlobals.ssaoEnable", optionState)
  142.     cmds.setAttr( "hardwareRenderingGlobals.multiSampleEnable", optionState)
  143.    
  144.     mel.eval("paneLayout -e -manage true $gMainPane")
  145.     cmds.deleteUI(pbWindow)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement