Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Puppet2D - An advanced skeletal animation tool

Discussion in 'Assets and Asset Store' started by jamieniman, Dec 31, 2013.

  1. jamieniman

    jamieniman

    Joined:
    Jan 7, 2013
    Posts:
    985
    Puppet2D

    Introducing Puppet2D - a new skeletal animation tool that makes animating 2D characters easy and fun!

    $introducingPuppet2d.png

    This is a tool that makes it really easy to animate your 2D characters in Unity - in a similar way to how Rayman does it!

    Features

    • A fast bone creation tool
    • Create easy to use controls
    • IK (Inverse Kinematic) keeps feet on ground, and great for animating
    • Convert Sprites into Mesh for skinning
    • Skin meshes to bones, for subtle deformations
    • Ability to edit skin weights
    • No need to commit to a new animation workflow or external program, animation itself can be done using Unitys standard tools.

    If you want to know more check out the website:

    www.puppet2d.com

    And let me know what you think?
     

    Attached Files:

    Last edited: Jan 10, 2014
    aaronfg and Gozdek like this.
  2. wccrawford

    wccrawford

    Joined:
    Sep 30, 2011
    Posts:
    2,039
    Seems interesting. Link to store on site goes to frontpage, though, so I can't tell the price. Also, the demo video and feature list don't really show me why it's better than the existing options, other than that you do it completely in Unity's interface.
     
  3. TheValar

    TheValar

    Joined:
    Nov 12, 2012
    Posts:
    760
    Definitley intersted in this. Right now I have uni2d to do this sort of thing but it's not perfect and since I don't really use any of it's other features I would consider picking this up depending on the price. As wccrawford states I can't get to the store page for it.
     
  4. jamieniman

    jamieniman

    Joined:
    Jan 7, 2013
    Posts:
    985
    Thanks for your interest -

    Its currently going through Unity's Submission process, I'll let you know when it makes it through.

    The price at the moment is $30 TBD (Subject to Unity's final decision)

    Essentially its a tool dedicated to creating easy to use puppets. It works in a similar way to how you would rig a character in maya - directly animating bones can get messy, using custom made controls makes the whole process more intuitive. As an example- you can quickly zero them to reset them to their initial pose.
     
    Last edited: Jan 10, 2014
  5. breughel

    breughel

    Joined:
    Jul 3, 2013
    Posts:
    2
    This looks intriguing; I'm a nut for animation tools. The mesh deformation is the thing. Will definitely want to take this for a spin when it's released.
     
  6. p6r

    p6r

    Joined:
    Nov 6, 2010
    Posts:
    1,158
    Very very interesting and interested...
    Very professional editor ! Great job !!!

    (Unfortunately I can't see a lot of things on the video because it's unsharp on vimeo and I don't know how to select a better quality like on youtube !?!)

    6R
     
  7. jamieniman

    jamieniman

    Joined:
    Jan 7, 2013
    Posts:
    985
    Thanx!
    Im uploading it to youtube now - hopefully it won't compress too badly...

    Ok thats done, its a youtube vid now, thanks for letting me know
     
    Last edited: Jan 10, 2014
  8. Toad

    Toad

    Joined:
    Aug 14, 2010
    Posts:
    298
    Last edited: Dec 31, 2013
  9. jamieniman

    jamieniman

    Joined:
    Jan 7, 2013
    Posts:
    985
    Unlike spine, Puppet2d is only for Unity. It makes use of Unitys already well developed animation editor, its also useful working directly in unity without having a different pipeline. The puppet control side of the tool can also make animating feel easier. Spine has some great features - like ffd, I'd like to get them into puppet2d in the future.
    I've made puppet2d mimic the way I rig and animate in maya. Check out the tutorial to see if its for u:

    http://www.puppet2d.com/#!tutorials/c1kqr
     
    Last edited: Jan 10, 2014
  10. bigSky

    bigSky

    Joined:
    Jan 31, 2011
    Posts:
    114
    Looks like a great tool. The tutorial video links to a "private" video - so we can't see it:|
     
  11. jamieniman

    jamieniman

    Joined:
    Jan 7, 2013
    Posts:
    985
    Woops! Its public now - happy new year!
    Tutorial
     
    Last edited: Jan 10, 2014
  12. p6r

    p6r

    Joined:
    Nov 6, 2010
    Posts:
    1,158
    Thanks ! Now I can see the different buttons and texts...
    I like your very well done video and especially the animations of the characters : very dynamic and funny !
    Very attractive work.

    For the programming, is it the usual way to code the animations ???
    How long do you need exactly to make a skeleton ?

    6R
     
  13. jamieniman

    jamieniman

    Joined:
    Jan 7, 2013
    Posts:
    985
    Yup, animations can be done in the usual Unity way. Making the skeleton can be done in a few clicks. The whole process for setup could be done in a small time - the tutorial shows the whole process starting with the spritesheet and ending with a run cycle, its only around 20mins, and I stop to explain somewhat.
    Hopefully should make animating much easier so u can concentrate on the acting and performance :)
     
    Last edited: Jan 10, 2014
  14. Toad

    Toad

    Joined:
    Aug 14, 2010
    Posts:
    298
    Looks really cool. Think I'll be picking this up when it hits the store.

    Would be great if you could add free-form deformation (with the ability to define internal mesh vertices)
     
  15. jamieniman

    jamieniman

    Joined:
    Jan 7, 2013
    Posts:
    985
    Would definitely love to get ffds into it in the future :)
     
    Last edited: Jan 10, 2014
  16. funshark

    funshark

    Joined:
    Mar 24, 2009
    Posts:
    225
    Definitely a "must have" tool for people who are doing skeletal animations.

    Spine, actually, can't animate IK and doesn't have controllers. It doesn't have animated FFD too or skinning. So this tool is more similar to the Ubisoft 2D framework or the vanillaware one.

    Now what you have to add are:

    - Possibility to switch skinned sprites
    - animated FFD
     
  17. Havamal_Soapworks_LLC

    Havamal_Soapworks_LLC

    Joined:
    Jan 7, 2014
    Posts:
    1
    I will definitely be picking this up when its available in the Asset Store.
     
  18. eezSZI

    eezSZI

    Joined:
    Nov 16, 2012
    Posts:
    121
    Agreed.
     
  19. TOO-TIDY-STUDIOS

    TOO-TIDY-STUDIOS

    Joined:
    Feb 26, 2011
    Posts:
    139
    I'm ready to buy. Looks awesome!
     
  20. Falagard

    Falagard

    Joined:
    Jan 8, 2014
    Posts:
    43
    I'm also ready to buy. Get it up on the store ASAP :)
     
  21. jamieniman

    jamieniman

    Joined:
    Jan 7, 2013
    Posts:
    985
    Last edited: Jan 10, 2014
  22. jeffweber

    jeffweber

    Joined:
    Dec 17, 2009
    Posts:
    616
    Is it possible to manipulate the bones via code at runtime? I have a character that is controlled by physics and want to update the bones based on this physics driven model.

    -Jeff
     
  23. jamieniman

    jamieniman

    Joined:
    Jan 7, 2013
    Posts:
    985
    The bones are gameObjects, so that should work fine. I've tried out using Unity ragdoll on it and that works great. You'll need to disable the script on the global control if you have any controls though.
     
  24. Kelde

    Kelde

    Joined:
    Feb 28, 2012
    Posts:
    629
    and i bought Spine...daaaaaaaaaaaamn!!!!:p

    oh well, spent money on dumber stuff in my life, ill actually ditch Spine for this as this is purely for Unity and Spine is not the best option for me atm.

    Very good tool, cant wait to learn this. Please keep tutorial videos coming, i saw the one but it was kinda fast and with a british accent it can become hard for us not english speaking people:)
     
  25. jamieniman

    jamieniman

    Joined:
    Jan 7, 2013
    Posts:
    985
    Ha ha, I can do a fake American accent for the next one!
     
  26. luispedrofonseca

    luispedrofonseca

    Joined:
    Aug 29, 2012
    Posts:
    938
    How does this compare to Spine in terms of features and especially integration with other packages (NGUI, 2DToolkit,etc)?
     
  27. zombiegorilla

    zombiegorilla

    Moderator

    Joined:
    May 8, 2012
    Posts:
    9,042
    It looks great!

    I do have a question though, once you have created the animations, do you still need to have the script(s) attached? I have several nested elements with their own controllers and a bunch of scripting to control various states. Can I use Puppet2d to create the animations, then remove it from the character/gameobject?

    Along the same lines, can I take something that have hand-animated in the Unity animation/animator tools and use Puppet2d to tweak/modify it?

    Again this looks great, I really like the fact that it uses native tools rather than an external structure.

    Cheers!
    ZG
     
  28. Jesse_Pixelsmith

    Jesse_Pixelsmith

    Joined:
    Nov 22, 2009
    Posts:
    296
    May have just settled the SmoothMoves / Spine debate for me and my team. We own smooth moves, and was considering picking up Spine for some features, but the workflow seemed clunky to get into Unity .. I like that this is native.

    Funny that searching for comparisons between SmoothMoves/Spine brought me here. Haven't tested it yet, but for $30 it's far too reasonable not to check out!
     
  29. jamieniman

    jamieniman

    Joined:
    Jan 7, 2013
    Posts:
    985
    Any gameobject can be animated by the bones - so u can use 2dToolkit sprites or NGUI ones. If you want it to be skinned to the bones you'll need to use a mesh (not a sprite) , this can be made easily by converting a Unity Sprite to a mesh using the "convert Sprite to Mesh" button in the Puppet2D GUI.
     
    PabloAM likes this.
  30. jamieniman

    jamieniman

    Joined:
    Jan 7, 2013
    Posts:
    985
    If you want to use the controls, you'll need to keep the scripts on the controls, as they are always updating the bone positions. I'm looking into making a bake animation button that will give u the option of removing the controls.
    (Love ur avatar by the way!)
     
  31. Jesse_Pixelsmith

    Jesse_Pixelsmith

    Joined:
    Nov 22, 2009
    Posts:
    296
    Having some basic issues getting the rig setup. I've watched the vid and read the pdf, but I must be missing something or something is bugged.

    When I create bones, I seem to get 2 bones with each click. For instance I've clicked twice to make a hip then a spine bone, but I've ended up with 4 bones.

    $Puppet2DBoneProblem.PNG


    I was also having some issues assigning IK controllers. When I clicked on a bone and hit Create IK Control, it seemed to assign it to a different bone, at the position of the bone I clicked, causing the skeleton to distort. Because of the aforementioned problem with placing bones, I had to manually delete and reparent many bones to get my skeleton the way I wanted, but maybe this messed up some internal references.

    Please advise if you've seen this before, but this seems to be happening right out of the box.
    On Win 7 64 bit, Unity Pro
     
  32. Jesse_Pixelsmith

    Jesse_Pixelsmith

    Joined:
    Nov 22, 2009
    Posts:
    296
    Also I'm doing the rig on sprites I've imported to be 1:1 scale with my game. In this case my character is about 1.3 meters( units) tall as you can see with the white cube reference on the right. I notice your demo scene has the character quite scaled up in comparison. Might this be causing issues?

    If so is there any problem with rigging at a large scale and then scaling the whole character down later?
     
  33. jamieniman

    jamieniman

    Joined:
    Jan 7, 2013
    Posts:
    985
    I've done a fix for the double bone issue - which I'm updating the asset with - if you'd like it sooner send me ur email and I'll send it to you.
     
  34. jamieniman

    jamieniman

    Joined:
    Jan 7, 2013
    Posts:
    985
    It shouldn't be causing an issue. Once you get the update, let me know if there is any more problems.

    Once rigged you can rescale the global_CTRL to any size btw.
     
  35. jamieniman

    jamieniman

    Joined:
    Jan 7, 2013
    Posts:
    985
    Just to confirm - you should select the third bone at the end of 3 bones (eg the hand or foot) and click IK Control. You shouldn't have any thing else parented to the 1st or second bone when u do this (so the double bone thing could have been breaking it)
     
  36. Jesse_Pixelsmith

    Jesse_Pixelsmith

    Joined:
    Nov 22, 2009
    Posts:
    296

    Does it need to be 3 bones?

    For example in the character above, he doesn't have an upper and lower leg, then a foot, he just has a leg and a foot.

    So I had my bone hierarchy as

    LegL -> FootL

    Where as your example has

    LegL -> KneeL -> FootL


    Also sent you my email via PM, let me know if you didn't get it. I've been having weird issues with people not getting my PMs and it doesn't save a copy in sent unless you expressly remember to click that.
     
  37. jamieniman

    jamieniman

    Joined:
    Jan 7, 2013
    Posts:
    985
    Yup - IK Controls need to have 3 bones to work.

    Got ur PM -ill send it to u now
     
    Last edited: Jan 12, 2014
  38. p6r

    p6r

    Joined:
    Nov 6, 2010
    Posts:
    1,158
    Hello jamieniman,

    I just have bought your great plugin and followed your .pdf documentation. No problem : I could animate the included guy too for tests...
    But in your doc and your video tutorial I couldn't understand (in english and so fast !) why we have to bind some tiles or to parent other ones or to convert to meshes other ones !?! For example, Why only "parent to Bones" the arms and not the legs !?!
    I don't know if you explain this in your video !?!
    Could you help me, please ??? Because if I want to use my characters I have to know exactly why this or why not this !?! Especially if the character isn't necessary a human with 2 legs and 2 arms...
    Thanks,
    6R
     
  39. jamieniman

    jamieniman

    Joined:
    Jan 7, 2013
    Posts:
    985
    Essentially there are two ways the bones can move the character - skinning or parenting. You can always do one or another or both as in the example.
    Parenting means only 1 bone can influence each sprite or gameobject. Its more optimised that using skinning.
    Skinning on the otherhand means you can have multiple bones influence the same object. This can be useful to get it to deform as u bend the limbs or spine etc.
    Hope this helps.
     
  40. KoxRobin

    KoxRobin

    Joined:
    Jun 17, 2013
    Posts:
    1
    In this case, I guess you can use bones to fake full legs. As they did for Rayman, he has legs made in kinetic bones, but they still invisible.
     
  41. jamieniman

    jamieniman

    Joined:
    Jan 7, 2013
    Posts:
    985
    Are u perhaps getting the multi bone issue as well? I have a fix for this, if u pm me ur email I can send it to you before the asset gets the update.
    If that doesn't fix the problem, let me know
     
  42. Jesse_Pixelsmith

    Jesse_Pixelsmith

    Joined:
    Nov 22, 2009
    Posts:
    296
    So I was ready to get a couple of animations onto my character, and I parented the Global_CTRL to my Player GameObject and saved the prefab. Problem is when I put the prefab into my scene the components with skinned mesh renderers are blank.

    I did the same thing to your demo character just to be sure it wasn't something wrong with my character. See attached screen

    $Puppet2d Mesh Renderer Issue.PNG
     
  43. jamieniman

    jamieniman

    Joined:
    Jan 7, 2013
    Posts:
    985
    Thanks for telling me about the bug - I've fixed it, just cleaning up the new code and I'll send it to you (and update the package)
     
  44. Jesse_Pixelsmith

    Jesse_Pixelsmith

    Joined:
    Nov 22, 2009
    Posts:
    296
    A few people have been asking me about the program, so posting my 2 cents here:

    It's a quite a cool tool, if rough around the edges. I've had a few issues with it (couple of them are posted here - The new one is that I don't seem to be able to do a build because editor scripts are trying to run.. but Jamie has been responding quickly with fixes.

    He wants the tool to be the best it can be and I assume he's using it in his own games. As long as it doesn't become abandonware, I'm satisfied with the progress. Haven't bought an asset of this scope this early in dev cycle so I'm tolerant when it comes to bugs etc here, especially when the fixes are frequent.

    Bottom line, if this looks interesting to you, buy it. $30 is a killer price for these features.
     
  45. jamieniman

    jamieniman

    Joined:
    Jan 7, 2013
    Posts:
    985
    Thanks to everyone who has bought Puppet2D so far. I hope your all enjoying using it :)
    Theres been a large amount of user testing since its release 3 days ago, and a some bugs have come up which I've got fixes for. I'm updating the package with the fixes, but if you bought it and don't want to wait for the update please email me with your Invoice number and I'll send you the fixes.
    The fixes so far are:
    - multi bone bug
    - Creating prefabs made the meshes dissappear (now they get saved in Assets/Puppet2D/Models/)
    - Not being able to build bug


    Thanks again
    Jamie
     
    Last edited: Jan 16, 2014
  46. jamieniman

    jamieniman

    Joined:
    Jan 7, 2013
    Posts:
    985
    Just to let everyone know - the latest package is out (v1.3) with some fixes.

    I've also done an update since then - which allows you to flip the character from a check box on the global_CTRL (send me your invoice number if you want it before the package gets updated )
     
  47. Aedous

    Aedous

    Joined:
    Jun 20, 2009
    Posts:
    244
    Very impressive tool, it's going to save so much on disk space with animations, and also open up a lot of possibilities since it's integrated into unity :D.
     
  48. Orion

    Orion

    Joined:
    Mar 31, 2008
    Posts:
    261
    Got it set up quickly and it works well! I'm using it on tiny character that are composed of lots of sprites. It still runs well with more than 100 animated characters at once!
    Check it out
    Zoom with the mouse wheel, 1, 2, 3 to speed up or slow down
     
  49. jamieniman

    jamieniman

    Joined:
    Jan 7, 2013
    Posts:
    985
    I've done a few more bug fixes since the last update (if you'd like them earlier than the next release please email me with you invoice number)
    - Improved Sprite To Mesh Conversion
    - Fixed IOS mode bone creation bug
    - Flip Checkbox on the Global_CTRL
     
  50. p6r

    p6r

    Joined:
    Nov 6, 2010
    Posts:
    1,158
    When I try to convert a sprite to a mesh, instead of creating a mesh it now adds a "New GameObject" and a polygon collider in the inspector for this sprite !?! (I use version 1.3 !)
    Yesterday, all was OK after deleting and reinstalling the new version from the asset store !?!
    Could you help me, please ? Is it an issue when we run Unity again !?!

    6R