Creating a fully custom puppet
Hey all, I spent quite some time last night figuring out how to build a puppet completely from scratch with custom animation, and some of it's not very intuitive so I thought I'd share what I was able to discover.
If you want to do anything off the beaten path, like puppets with more or fewer than two legs, wheely robots, clay-mation characters (one sculpture per frame), etc but still want to take advantage of Mm's excellent character controller physics, you should consider starting from an empty puppet and using custom animations.
Follow along, and try entering play mode at various points to see how each change interacts with the puppet's physics.
Create a Basic puppet, and scope into it.
Tweak the puppet by pressing L1+Square on the circle around the puppet's feet. From now on this is how you'll tweak the puppet.
Disable procedural animation and procedural walk. I believe this is under the menu with the gears icon, but I don't recall exactly. It's at the very bottom of one of the tabs.
Once procedural animation is off, many of the puppet's settings and Puppet Interface gadget outputs will become useless to you, such as the upper and lower body sections, footstep events, etc.
Starting from the outermost limbs, delete all the puppet's parts. You have to press Triangle twice to delete a part, because the first triangle press puts you in a "Reposition Joint" mode, as all the limbs are connected together using ball joints and bolts.
We'll be creating new body parts and connecting them with joints.
Create a sphere or some other basic sculpt that will act as your character's body, and scope out once so you're back in the puppet.
Tweak the Puppet (L1+Square on the circle on the ground again) and go to the tab with the person icon. It's to the right of the upper and lower body tabs.
Click the hips button and connect the hips to the sculpt you created.
This seems to be important so Dreams knows to move the sculpt using the puppet's motion, though I'm not completely sure if this is necessary.
I think assigning more than one sculpt in this menu is unnecessary, and it seems like assigning a leg here will prevent the leg from being animatable.
Go to the physics tab, and change the vertical position of the puppet collider, the radius, and the height of the capsule to suit the type of character you want to make. If this is positioned far above the ground, it will cause your character to move up huge vertical gaps like they were stairs, so make sure it's touching the ground unless that's what you want.
Tweak your sculpt to disable colliision. Any sculpts that can collide with the character controller's capsule will cause your puppet to be able to stand on them and jump in midair or get otherwise pushed around, so you should be disabling collision on most sculpts, or at least tweaking the collision filters so the sculpt doesn't collide with the puppet's capsule.
Create another sculpt for a body segment such as a belly, or a limb such as an upper leg.
Connect it to the "hips" using a joint. Make sure the joint starts at the hips and goes to the new body part. This is usually a Ball Joint, but sometimes a Bolt if you want to restrict the range of movement (elbows, knees, robots with pivoting parts). The start and end points of the joint don't actually matter, all that matters is the pivot location.
Tweak the sculpt to disable collision.
Grab it and move it around to test the range of motion. Reposition the joint as needed to get the motion you want.
Note that from this point on, entering play mode will result in a floppy hanging limb, so you may want to create a keyframe with your default pose in it and just set it to always active until you start animating. I don't think ball joints have a way to make the limb not floppy, even if you tighten them all the way up, so just leave the joint loose and use a keyframe instead.
Repeat the last three steps as necessary, connecting parts to other parts to create your desired body shape and making sure your ball joints and bolts have the desired range of motion. Always make sure they have collision disabled so they don't hit the Puppet's capsule collider shape.
You may want to create invisible body parts if you need more range of movement. For instance, if you attach an arm directly to an upper body, your character won't be able to shrug. You can solve this by adding a shoulder segment, even if it's invisible.
You can create hidden sculpts and show or hide them to get animations that would be impossible with just jointed motions, such as facial expressions. Instead of creating just one sculpt, create multiple and group them together before connecting the joint. Groups that are made physical should move as one object. You could also use this if you wanted to make a character using purely hand-crafted animation (pixel art, clay-mation, or painted animation frames).
For some reason, assigning body parts as legs or feet seems to prevent me from animating them.
I haven't tested how keyframes interact with reconfiguring the joints after they are created, and I've had issues with a timeline that wouldn't update my character's pose until it played for a few seconds, so there's definitely a lot more experimentation required in the animation department.
what i do is i make the seperate body parts, group them, bring in a deluxe blank puppet, scope the custom puppet into it, delete the normal puppet, then set the body structure. also use ball joints to connect the body parts
Yung: You could just scope a puppet into another puppet. But it wouldn't procedurally animate very well. You could just use the rig inside the puppet group and put that into the other puppet and it would flop about if you like.
Yung Cash Register A.K.A Lil’ Broomstick commented
is it possible to make a puppet that has other puppets for limbs?? I’ve been trying to figure this out but I can’t seem to. I think it would be a really funny thing.
A message to everyone with the floppy limbs problem:
Disable the "movable" aspect of every sculpt that is floppy. It's in the physics menu.
And that's it. It won't prevent you from animating or moving it - it just disables the physics for the sculpt.
I used this to help me make a four legged quadruped. I'm slowly coming along with the animation for it and I'm pleased with how smooth the animation can be made, but I still wish to death that MM would make a quadruped puppet for us. There are so many neat things we can't do with them as easy as the bipeds. However, I do find use for leaving the Procedural Animation button on as long as "Breathiness" is turned down to zero. It allows the built in use of the motion sensor. Leaving Procedural Walk on doesn't affect the front legs, but it makes the back legs do weird things. It's too bad because it was fun to mess with the other tweaks and some of them would blend okay if it weren't for the problems with the back legs.
Can you possible demonstrate by making a video. Ik it seem simple to you by now but i cant seem to follow along with your writen instruction.
I can't connect the pelvis to my sculpted part.
Its becausee as soon ad i go into the puppets properties everything else is greyed out and unavailable.
How do I connect to various sculptures?
@supposer thank you i will try that !! :3
@Love: Just scope into the head. Keep scoping in until you're in sculpting mode. Now you're sculpting the head.
Can someone exlpain to me how to individualy resculpt the puppet's parts ? I found how to move them for exemple but not at all how to just select the head for exemple to reshape it and sculpt it directly. Thank you :)
This is ridiculously insane to do in-game. I understand all of the logic and procedures and why these need to be done but the act of manipulating with the DS4 or the Move controllers is a constant burden.
I loved creating in LBP1-3 but this has really turned me off.
Definitely need a video tutorial for this. Guess that's gonna come with the official release.
@elliot: Or perhaps you have "stay upright" turned on?
@elliottbw sounds like maybe you have the Precise Move toggle turned on, under the Guides menu. It's located here in the menu: https://indreams.me/guide/palette-glossary/assembly/guides/precise-move
Check if turning that off helps.
elliottbw (elldude9) commented
Even creating custom animations for the existing puppet's limbs is utterly impossible. While you record, things either clip, flip over, get confused, snap from one angle to another (with neither angle being the one you want to set it to), or a multitude of other behaviours that lead me to believe that the puppet is performing some sort of demonic ritual.
I tried a lot of things, and still wasn't able to solve the floppy limbs problem. There's also an issue with giving your puppet a default keyframe, as it makes your character impossible to animate any time the keyframe is active. My hack for now has just been to put a toggle switch in my character that disables the idle animation and I press that button any time I need to edit keyframes.
I saw this comment from an Mm person: https://feedback.indreams.me/forums/917434-dreams-how-do-i/suggestions/36376597-is-there-anyway-to-make-a-puppet-ragdoll
Maybe turning off "physical" or "movable" after connecting the joint is needed to make the joints not become floppy? I'll have to investigate this.