Search Unity

  1. Check out our Unite Austin 2017 YouTube playlist to catch up on what you missed. More videos coming soon.
    Dismiss Notice
  2. Unity 2017.2 is now released.
    Dismiss Notice
  3. The Unity Gear Store is here to help you look great at your next meetup, user group or conference. With all new Unity apparel, stickers and more!
    Dismiss Notice
  4. Introducing the Unity Essentials Packs! Find out more.
    Dismiss Notice
  5. Want to see the most recent patch releases? Take a peek at the patch release page.
    Dismiss Notice
  6. Unity 2017.3 beta is now available for download.
    Dismiss Notice

PuppetMaster - Advanced Character Physics Tool [RELEASED]

Discussion in 'Assets and Asset Store' started by Partel-Lang, Oct 1, 2015.

  1. slavaglap

    slavaglap

    Joined:
    Sep 22, 2017
    Posts:
    6
    I did it with "Normal Mode" to "Unpinned"
     
  2. Useless-Media

    Useless-Media

    Joined:
    Apr 19, 2015
    Posts:
    48
    Hello i have a little problem with my Puppet Master.

    I was trying to Lerp the Pin Weight variable to zero while i perform a Jump and i get this behaviour
    lerpPinWeight.gif
    The Ragdoll does its normal awesome stuff but the Character Animator and the Bones dont follow the movement, im using Opsive Third Person Controller

    These are my settings, the one that is changing in runtime is Pin Weight
    puppetMasterSettings.png

    Thanks for your awesome support!

    EDIT: I just need to find a way to update the Character Mesh with the Ragdoll
     
    Last edited: Oct 7, 2017
  3. DiNoGames

    DiNoGames

    Joined:
    Feb 5, 2015
    Posts:
    14
    Hi. How am I supposed to move a rag doll with my mousepointer? In my game I need to switch from animated to ragdoll when mouse is pressed over the character. This works with setting pinstrength to 0. But the rag doll moves independent from the gameobject then and falls down by gravity. I now need to "hook" the rag doll to the mousepointer to move it. How can I achieve this?
     
  4. corjn

    corjn

    Joined:
    Feb 6, 2014
    Posts:
    29

    Thanks a lot Partel, everything is working great now :)
     
  5. slavaglap

    slavaglap

    Joined:
    Sep 22, 2017
    Posts:
    6
    Hi

    And how to check when ragdoll turns on? (with PuppetBehavior Unmapped)


    I tried to use head.state.pinWeightMlp but it is always 1
     
  6. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    1,461
    Perhaps with something like this:
    Code (CSharp):
    1. muscle.state.muscleWeightMlp = Mathf.Lerp(0.02f, 1f, muscle.state.pinWeightMlp);
    Hey,
    If using BehaviourPuppet, do not set pin weight to 0, call behaviourPuppet.SetState(BehaviourPuppet.State.Unpinned) instead.

    Hey,
    If using BehaviourPuppet, do not set pin weight to 0, call behaviourPuppet.SetState(BehaviourPuppet.State.Unpinned) instead. Then disable behaviourPuppet.canGetUp until you need the ragdoll to recover.
    About moving it with a mouse, make a kinematic Rigidbody object that you can move around with the mouse, then just add a Joint of some kind that connects it to one of the ragdoll's rigidbodies.

    Cheers,
    Pärtel
     
  7. Partel-Lang

    Partel-Lang

    Joined:
    Jan 2, 2013
    Posts:
    1,461
    check for behaviourPuppet.state. If == BehaviourPuppet.State.Unpinned, then your character is ragdolled.
     
  8. Useless-Media

    Useless-Media

    Joined:
    Apr 19, 2015
    Posts:
    48
    Hey Partel, this was also my first thought to set the puppet to unpinned but later on i was imagine it will be look cooler when the Animation fade out so pinWeight sound for me the better option in this case.
    What can i do when i want use pinWeight instead?


    EDIT: I found out that the system working fine in the Demo and also with a standard Opsive Third Person Character Setup its working that the Mesh follows the ragdoll when you turn down the pinWeight, i dont know what i mess up with my character but its no bug from the Puppet Master
     
    Last edited: Oct 9, 2017