Maya Sticky Lips Rigging Tutorial Part 2

Поделиться
HTML-код
  • Опубликовано: 12 окт 2024

Комментарии • 50

  • @dcpalley23
    @dcpalley23  6 лет назад +19

    Here is the Python code used to create the setRange node setup for the stickyLips:
    lf_main_attr = "head_icon.Lf_Sticky_Lips"
    rt_main_attr = "head_icon.Rt_Sticky_Lips"
    lip_val_list = [34, 30]
    lip_name_list = ['upperLip', 'lowerLip']
    name_counter = 0
    for each in lip_val_list:
    half_val = (each / 2) + 1
    total_val = each + 1
    div_val = 10.0 / half_val
    counter = 0
    while(counter

    • @geetanjalikharbe8395
      @geetanjalikharbe8395 4 года назад

      awesome script and thanks for sharing it...... i am facing a weird issue after using the script. The sticky shape is off-centered. both my curves have 21 cvs (upper lip) and 23 cvs (lower lip) so i have p ut that value in val_list. but the resultant shape isnt symmetrical. I also tried changing the number of cvs but the result is still the same.

    • @geetanjalikharbe8395
      @geetanjalikharbe8395 4 года назад

      ok, so i increased the cv's by 1 number in both upper and lower lip and now its working in a symmetrical way... :)

    • @IndyRigger
      @IndyRigger 2 года назад

      Thank you. ❤️

  • @rimateng2484
    @rimateng2484 5 лет назад

    Sir, these videos are amazing! Thank you for sharing with us!

  • @NicolásEstebanLobosOpitz
    @NicolásEstebanLobosOpitz 3 месяца назад

    # Error: RuntimeError: file C:\Program Files\Autodesk\Maya2023\Python\lib\site-packages\pymel\internal\pmcmds.py line 217: The destination attribute 'UpprLip_Wire_Bshape.inputTarget[0].inputTargetGroup[0].targetWeights[17.0]' cannot be found.

  • @indexMemories
    @indexMemories 5 лет назад +1

    That's pretty sick. Get decent lips deformation in under a minute. I imagine it's used widely in pipelines?

    • @dcpalley23
      @dcpalley23  5 лет назад +2

      RepublicanMug thanks man! I honestly don’t know or even doubt that it’s used in pipelines. For most studios, I’m sure they have something even better than this, and I’ve been pretty happy with these results. Problem is, most studios keep their methods to themselves, so there’s no way of knowing what they use.

  • @loledison8092
    @loledison8092 4 года назад

    it's amazing!!!Thank you so much for sharing this course!But i have a question that if i want lips stick from right to left ,or left to right.How do i make it happen?

    • @dcpalley23
      @dcpalley23  4 года назад

      Thanks for the comment! If you want to switch so it moves from left to right or vice versa, you would need to adjust the python script. Instead of setting up the script so that it flips the values on the right side to mirror the left side, you would set up the right side as a continuation of the left side. It will take you a bit of manipulating the code I provided, but if you understand python code, it is definitely doable.

  • @cristophercabra
    @cristophercabra 5 лет назад +1

    I have an erro on line 13:
    lip_sr = pm.shadingNode( 'setRange', asUtility=True, n='lf_' + lip_name_list[name_counter] + str(counter+1) + '_setRange')
    # Error: NameError: file line 13: name 'pm' is not defined #
    do you know what a can do?

    • @dcpalley23
      @dcpalley23  5 лет назад +2

      In the first line of code you need to import the pymel code. The first line should have: import pymel.core as pm and it will run

  • @francescofanara2676
    @francescofanara2676 2 года назад +1

    Hello man! I found this tutorial now after years, but still it looks good! Running the code I had this error:
    # Error: RuntimeError: file C:\Program Files\Autodesk\Maya2019\Python\lib\site-packages\pymel\core\general.py line 222: The destination attribute 'upperLip_wire_bShape.inputTarget[0].inputTargetGroup[0].targetWeights[0]' cannot be found. #
    The line 222 of C:\Program Files\Autodesk\Maya2019\Python\lib\site-packages\pymel\core\general.py is the following:
    210 def connectAttr( source, destination, **kwargs ):
    211 """
    212 Maya Bug Fix:
    213 - even with the 'force' flag enabled, the command would raise an error if the connection already existed.
    214
    215 """
    216 if kwargs.get('force', False) or kwargs.get('f', False):
    217 try:
    218 cmds.connectAttr( source, destination, **kwargs )
    219 except RuntimeError, e:
    220 if str(e) != 'Maya command error':
    221 # we only want to pass on a certain connection error. all others we re-raise
    222 raise e
    223 else:
    224 cmds.connectAttr( source, destination, **kwargs )
    Please help me if you can! :(((

    • @kelsiemorris5484
      @kelsiemorris5484 2 года назад

      Hi! I have been having the same issue and I was just wondering if you managed to fix it? And if so how?

    • @doctorsteen
      @doctorsteen Год назад

      Same problem, any luck?

    • @lilmaskreti
      @lilmaskreti Год назад

      @@doctorsteen I was having the same issue, it's going to sound stupid, the solution is: type down the exact same line manually for all 8 times it appears ('_wire_bShape.inputTarget[0].inputTargetGroup[0].targetWeights[' ). that's what I just did and it worked. some copy/paste corruption on the characters there idk.

  • @lintingying
    @lintingying 4 года назад

    thanks for sharing. helps a lot

  • @haryjack3470
    @haryjack3470 4 года назад

    thanks for information , but why copy skin weight don't work with curve and geometry pleas replay

    • @dcpalley23
      @dcpalley23  4 года назад +1

      Thanks for the comment! As long as both the geometry and the curves are bound to the rig, the copy skin weights should work. If it doesn’t work, then maybe something isn’t bound to the rig yet.

    • @haryjack3470
      @haryjack3470 4 года назад

      thanks for replay every think some your video but for copy doing weight don't work curve don't much a geometry
      1 clothes joint
      2 one to one
      I don't know why don't work 😐

  • @haryjack3470
    @haryjack3470 4 года назад

    I've taken all the steps. select line in geometry convert to linear curve for upper and lower lip after reverse and clear history both them and skin with head join and tip jaw joint after go to center but I have problem with copy skiing weigh the lines don't attach to the geometry I don't know why pleas help me hhhh sorry for my English so bad

    • @dcpalley23
      @dcpalley23  4 года назад +1

      hary jack thanks for the comment. The important thing to check when copying skin weights is to make sure both the head geo and the curve you just made are both bound to the rig. In the beginning of the video, I showed you that the head geo was bound to the rig already with jaw weights painted. The reason copy skin weights doesn’t work if one of the objects you’re copying isn’t bound to the rig.

    • @haryjack3470
      @haryjack3470 4 года назад

      thanks a lot , for replay , what about scale all character or head don't scale with head destroy mouth or lip hhhh I have a lot of problem

    • @dcpalley23
      @dcpalley23  4 года назад +1

      hary jack good question. Since the main setup is being done on a separate blendshape model, it won’t be affected by the scale. If you intend to do this on the main model and not a blendshape, then that is a different story.

  • @몽그리의아카이빙
    @몽그리의아카이빙 3 года назад

    woooooooooooooooow Thank you!

  • @christysonia658
    @christysonia658 6 лет назад

    i used the python, am getting error in 8th line. am not good in python..so not able to get the point..
    # Error: line 1: unexpected indent
    # File "", line 8
    # for each in lip_val_list
    # ^
    # IndentationError: unexpected indent #
    can you help to sort it out.. orelse please provide a tutorial to link the setarrange node and blendshape in manual without script.

    • @dcpalley23
      @dcpalley23  6 лет назад +1

      Christy Sonia that error typically means there’s an issue with indentation. It sounds like that line is indented out when it shouldn’t be. Indent it back using shift and tab buttons.
      If you’re getting into this level of rigging, I strongly suggest learning python coding. It’s basically required for any sort of rigging job these days.

  • @austinbroder662
    @austinbroder662 5 лет назад

    Hey! I'm having an issue with the setRange node creation script. I'm sure it's obvious but I'm getting an error on the last line:
    // Error: invalid syntax
    # File "", line 81
    # name_counter = name_counter + 1
    # ^
    # SyntaxError: invalid syntax //
    It looks like the indentation is correct, and the error is aligned to right after the "1", what is wrong here?
    Thanks!

    • @dcpalley23
      @dcpalley23  5 лет назад

      Austin Broder hmmmmm the syntax all seems correct there. Is there anything after the + 1 or on the line after it. That’s the only thing I could think as being wrong.

    • @austinbroder662
      @austinbroder662 5 лет назад

      @@dcpalley23 Weird...I tried on my other computer and it worked fine. Thanks anywho!

  • @jojjo223
    @jojjo223 6 лет назад

    I'm a bit late to the party here, but when I run the provided python (I changed the names of lr_main_attr and rt_main_attr to match my attribute paths, as well as changed the lip_val_list numbers to match my CV counts), all I get is "invalid syntax". Any ideas as to what's going on?

    • @dcpalley23
      @dcpalley23  6 лет назад

      Jordan Tetzlaff does it give you a specific line number for the error or what line of code the error is on. In the script editor, turn on “show stack trace” and that should at least make the error more specific.

    • @JBG-dj5iz
      @JBG-dj5iz 6 лет назад +1

      Hello, don't know why exactly but it's the very last "1", not reconized in maya, you need to delete this and type "1" again, will be reconize and you will run the script.

    • @jojjo223
      @jojjo223 6 лет назад

      perfect! That worked! Thank you so much!

    • @dcpalley23
      @dcpalley23  6 лет назад +1

      It probably was due to posting the script in a comment here. Text editors don't like importing code from different programs.

  • @nazun4-n5r
    @nazun4-n5r 5 лет назад

    # Error: NameError: file line 13: name 'pm' is not defined
    I'm fix
    lip_val_list = [22, 50]
    help me!

    • @dcpalley23
      @dcpalley23  5 лет назад

      The first line in your script needs to be:
      import pymel.core as pm
      Without that line at the beginning of your script, Maya won't recognize 'pm'

  • @aninditaray7110
    @aninditaray7110 6 лет назад

    making zipper lips is not possible to make manually
    i dont know scripting thought to make it manually :(

    • @dcpalley23
      @dcpalley23  6 лет назад

      Anindita Ray yes I am using scripting but only because it would take a lot longer to do without. Everything I’m doing with the scripting can be done manually, it’ll just take you a lot longer. I would strongly suggest learning some Python scripting, especially if you’re working in rigging

    • @aninditaray7110
      @aninditaray7110 6 лет назад

      thank you so much for your reply
      yes i will learn but can you make a video manually just a little bit of the script part so that i can understand how to do rest

  • @beyazpiyonable
    @beyazpiyonable 6 лет назад

    Hey man, awesome setup! I'd really like to implement this on my own but the script is giving me error at line 69. I also tried with your own naming convention but same thing. I quadra-checked it from the video. Code with fixed identation is down below(copy/paste code from youtube comment is not ideal i guess) . Can you check on what's going on or put the code to pastebin so i can try that again? I put the error to the bottom. I tried to re-define it, left is working but right isn't.
    pastebin.com/N2wMUZU2

    • @dcpalley23
      @dcpalley23  6 лет назад

      Beyazpiyon it looks like it might be an issue with the counter. The error shouldn’t be happening, since the mid_pma variable is referenced before that line. It could be an issue where the counter is right before it creates the mid_pma, but it counts up later. Make sure the counter = counter + 1 lines are indented correctly. I’m away from my computer, but I will try to check it later.

    • @beyazpiyonable
      @beyazpiyonable 6 лет назад

      Yes man, you were right. It's fixed now. I can't tell how many times i tried to figure this setup out. Fantastic, thank you very much. Looking forward to your other videos!