<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Maya blendshape (MEL question)... in Maya Programming Forum</title>
    <link>https://forums.autodesk.com/t5/maya-programming-forum/maya-blendshape-mel-question/m-p/5571106#M14047</link>
    <description>&lt;P&gt;&lt;SPAN&gt;Hello, I am new to mel scripting, so please bear with me. I am trying to transfer my blendshapes from my Daz3d rig to my custom one.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I am duplicating them one by one, but I have multiple characters, so I am trying to make a script to do it for me.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;so far this is what I got:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;select -r -sym GenesisFBXASC046Shape ;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;setAttr "GenesisFBXASC046V4_PHMEyeOpenFBXASC045CloseR_head.Genesis_V4_PHMEyeOpen_CloseR_head" 1;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;duplicate -rr;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;// Result: GenesisFBXASC046Shape1 //&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;setAttr "GenesisFBXASC046V4_PHMEyeOpenFBXASC045CloseR_head.Genesis_V4_PHMEyeOpen_CloseR_head" 0;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have 50 blendshapes so far for each character, what would be the best course of action for this scripted?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank you for your time.&lt;/SPAN&gt;&lt;/P&gt;</description>
    <pubDate>Fri, 10 Apr 2015 14:50:37 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2015-04-10T14:50:37Z</dc:date>
    <item>
      <title>Maya blendshape (MEL question)...</title>
      <link>https://forums.autodesk.com/t5/maya-programming-forum/maya-blendshape-mel-question/m-p/5571106#M14047</link>
      <description>&lt;P&gt;&lt;SPAN&gt;Hello, I am new to mel scripting, so please bear with me. I am trying to transfer my blendshapes from my Daz3d rig to my custom one.&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I am duplicating them one by one, but I have multiple characters, so I am trying to make a script to do it for me.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;so far this is what I got:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;select -r -sym GenesisFBXASC046Shape ;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;setAttr "GenesisFBXASC046V4_PHMEyeOpenFBXASC045CloseR_head.Genesis_V4_PHMEyeOpen_CloseR_head" 1;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;duplicate -rr;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;// Result: GenesisFBXASC046Shape1 //&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;setAttr "GenesisFBXASC046V4_PHMEyeOpenFBXASC045CloseR_head.Genesis_V4_PHMEyeOpen_CloseR_head" 0;&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I have 50 blendshapes so far for each character, what would be the best course of action for this scripted?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Thank you for your time.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 10 Apr 2015 14:50:37 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/maya-programming-forum/maya-blendshape-mel-question/m-p/5571106#M14047</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2015-04-10T14:50:37Z</dc:date>
    </item>
    <item>
      <title>Re: Maya blendshape (MEL question)...</title>
      <link>https://forums.autodesk.com/t5/maya-programming-forum/maya-blendshape-mel-question/m-p/5589682#M14048</link>
      <description>&lt;P&gt;If you want to make the script work for all blendShape then you can use the following MEL procedure. It is a generic procedure.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;proc blendShapeSetAttribute(int $blendShapeCount, string $shapeName, string $attrName)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; string $shape = $shapeName;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; string $attr = $shapeName + $attrName;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for ($count=1; $count&amp;lt;$blendShapeCount; $count++)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ($count != 0)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $shape = $shapeName + $count;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $attr&amp;nbsp; = $shape + "."+ $attrName;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; select -r -sym $shape;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; setAttr $attr 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; duplicate -rr;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; setAttr $attr 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;};&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The above procedure will work for any blendShape or any polygons.&amp;nbsp; I have executed the above procedure like below for “pSphere”.&lt;/P&gt;&lt;P&gt;blendShapeSetAttribute(50, "pSphere", "scaleX");&lt;/P&gt;&lt;P&gt;for “pSphere1” to “pSphere49” it will select the current sphere and set the given attribute “scaleX” to 1.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;In your case, if attribute name is same irrespective of shape count and shapeName starts with 0 instead of 1, then use the below procedure.&lt;/P&gt;&lt;P&gt;proc blendShapeSetAttribute(int $blendShapeCount, string $shapeName, string $attrName)&lt;/P&gt;&lt;P&gt;{&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; string $shape = $shapeName;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; for ($count=0; $count&amp;lt;$blendShapeCount; $count++)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ($count != 0)&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; $shape = $shapeName + $count;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; select -r -sym $shape;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; setAttr $attr 1;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; duplicate -rr;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; setAttr $attr 0;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&amp;nbsp;&amp;nbsp;&lt;/P&gt;&lt;P&gt;};&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Call the procedure like below.&lt;/P&gt;&lt;P&gt;blendShapeSetAttribute(50, "GenesisFBXASC046Shape", "GenesisFBXASC046V4_PHMEyeOpenFBXASC045CloseR_head.Genesis_V4_PHMEyeOpen_CloseR_head");&lt;/P&gt;</description>
      <pubDate>Mon, 13 Apr 2015 18:02:07 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/maya-programming-forum/maya-blendshape-mel-question/m-p/5589682#M14048</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2015-04-13T18:02:07Z</dc:date>
    </item>
  </channel>
</rss>

