Advertisement
yaotungyu

TJ202_helmet_brows

Feb 23rd, 2018
162
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 4.35 KB | None | 0 0
  1. ns='Tarzan_01_Yeti_Nodes'
  2. yetiPath ='G:/Animation/Tech Anim/tempFixes/TNJ/202_tnj_helmet_eyebrows/Tarzan_yeti_nodes_browOnly.mb'
  3. cmds.file(yetiPath,ns=ns,rfn=ns+'RN',r=1)
  4. cmds.blendShape(cmds.ls('Tarzan_0*:body_Geo5')[0],ns+':body_Geo',n=ns+'_browBlend')
  5. cmds.blendShape(ns+'_browBlend',e=1,w=([0,1]))
  6. cmds.setAttr(ns+':body_Geo.v',0)
  7. cmds.setAttr(ns+':Head_Gro.v',0)
  8.  
  9.  
  10.  
  11. ns='Tarzan_01_Yeti_Nodes'
  12. yetiPath ='G:/Animation/Tech Anim/tempFixes/TNJ/202_tnj_helmet_eyebrows/Tarzan_yeti_nodes_browOnly.mb'
  13. cmds.file(yetiPath,ns=ns,rfn=ns+'RN',r=1)
  14. cmds.blendShape(cmds.ls('Tarzan_0*:body_Geo5')[0],ns+':body_Geo',n=ns+'_browBlend')
  15. cmds.blendShape(ns+'_browBlend',e=1,w=([0,1]))
  16. cmds.setAttr(ns+':body_Geo.v',0)
  17. cmds.setAttr(ns+':Head_Gro.v',0)
  18.  
  19. cmds.select(['President_United_States_01_Yeti_Nodes:President_United_States_groom_yetiMaya2'])
  20. tMax = cmds.playbackOptions( q=True, max=True) + 2
  21. tMin = cmds.playbackOptions( q=True, min=True)
  22. for f in range(int(tMin),int(tMax)):
  23.     frm = str(f)
  24.     cmds.currentTime(f)
  25.     pm.exportSelected(sf.latestAssNameBase(target)+'.'+frm,type='ASS',options='-mask 24',f=True,)
  26. mtoa.core.createStandIn(path=tzAss+'.####.ass')
  27. cmds.expression( s=cmds.ls(sl=1)[0]+".frameNumber=frame")
  28. cmds.select(cmds.listRelatives(p=1))
  29. cmds.rename('hair_AiStandin')
  30. cmds.parent('hair_AiStandin',cmds.ls('Tarzan_0*:Geo')[0])
  31.  
  32.  
  33.  
  34. #############################
  35. sf.rig2Cfx('Tarzan')
  36. sf.importNamedYeti(['Tarzan'])
  37.  
  38. ns='Tarzan_01_Yeti_Nodes'
  39. cfxNs = cmds.ls('Tarzan_0*:body_Geo5')[0].split(':')[0]
  40. yetiPath ='G:/Animation/Tech Anim/tempFixes/TNJ/202_tnj_helmet_eyebrows/Tarzan_yeti_nodes_browOnly.mb'
  41. cmds.file(yetiPath,ns=ns,rfn=ns+'RN',r=1)
  42. cmds.blendShape(cmds.ls('Tarzan_0*:body_Geo5')[0],ns+':body_Geo',n=ns+'_browBlend')
  43. cmds.blendShape(ns+'_browBlend',e=1,w=([0,1]))
  44. cmds.setAttr(ns+':body_Geo.v',0)
  45. cmds.setAttr(ns+':Head_Gro.v',0)
  46. tMax = cmds.playbackOptions( q=True, max=True) + 2
  47. tMin = cmds.playbackOptions( q=True, min=True)
  48.  
  49. sf.sf_Environ()
  50. tzAss = sf.yetiCachePath+'/'+cfxNs+'/v0001/ass/'
  51. tzGrm = sf.yetiCachePath+'/'+cfxNs+'/v0001/grm/'
  52. cmds.sysFile(tzGrm,md=1)
  53.  
  54. cmds.pgYetiCommand(ns+':pgYetiMaya_DreadShape',
  55.                    writeCache=str(tzGrm+cfxNs+'YetiCache_v0001.%04d.grm'),
  56.                    range=[1000,tMax],
  57.                    samples=5,
  58.                    sampleTimes="-0.25 -0.125 0.0 0.125 0.25",
  59.                    updateViewport=False,
  60.                    )
  61. cmds.setAttr( ns+':pgYetiMaya_DreadShape.cacheFileName', tzGrm+'/tarzan_yeti_brow.%04d.grm',type="string")
  62. cmds.setAttr( ns+':pgYetiMaya_DreadShape.fileMode',1)
  63. cmds.setAttr( ns+':pgYetiMaya_DreadShape.overrideCacheWithInputs',0)
  64.  
  65. import pymel.core as pm
  66. cmds.currentTime(1000)
  67. pm.exportSelected(tzAss+cfxNs+'_YetiCache_v0001.'+str(1000),type='ASS',options='-mask 24',f=True,)
  68.  
  69. with open(tzAss+cfxNs+'_YetiCache_v0001.'+str(1000)+'.ass','r') as assBase:
  70.     baseData = assBase.read()
  71.  
  72. for assNum in range(1001,int(tMax)):
  73.     with open(tzAss+cfxNs+'_YetiCache_v0001.'+str(assNum)+'.ass','w') as assSaver:
  74.         assSaver.write(baseData.replace(' samples 1 5 FLOAT\n999.75 999.875 1000 1000.125 1000.25',' samples 1 5 FLOAT\n'+str(float(assNum)-.25)+' '+str(float(assNum)-0.125)+' '+str(assNum)+' '+str(float(assNum)+0.125)+' '+str(float(assNum)-0.25)).replace(' frame 1000',' frame '+str(assNum)))
  75.  
  76.  
  77.  
  78. import pymel.core as pm
  79. cmds.select([ns+':pgYetiMaya_Dread'])
  80.  
  81. import os
  82. cmds.currentTime(1001)
  83. pm.exportSelected(tzAss+'tarzan_brow.1000',type='ASS',options='-mask 24',f=True,)
  84.  
  85. with open(tzAss+'tarzan_brow.1000.ass','r') as assBase:
  86.     baseData = assBase.read()
  87.  
  88. baseData.replace(' samples 1 5 FLOAT\n999.75 999.875 1000 1000.125 1000.25')
  89. cmds.attributeQuery()
  90. for assNum in range(int(tMin),int(tMax)):
  91.     with open(tzAss+'tarzan_brow.'+str(assNum)+'.ass','w') as assSaver:
  92.         assSaver.write(baseData.replace(' samples 1 5 FLOAT\n1000.75 1000.875 1001 1001.125 1001.25',' samples 1 5 FLOAT\n'+str(float(assNum)-.25)+' '+str(float(assNum)-0.125)+' '+str(assNum)+' '+str(float(assNum)+0.125)+' '+str(float(assNum)-0.25)))
  93.    
  94.  
  95.  
  96.  
  97. mtoa.core.createStandIn(path=tzAss+'.####.ass')
  98. cmds.expression( s=cmds.ls(sl=1)[0]+".frameNumber=frame")
  99. cmds.select(cmds.listRelatives(p=1))
  100. cmds.rename('hair_AiStandin')
  101. cmds.parent('hair_AiStandin',cmds.ls('Tarzan_0*:Geo')[0])
  102. cmds.file(yetiPath,ur=1)
  103.  
  104.  
  105. cmds.listRelatives(parsedName,shapes=1)[0]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement