In my test it didn’t matter.
It’s just more constraints. Disabling collision is easiest by setting it on the rigid body constraint settings (I think it’s the default anyways.)
In my test it didn’t matter.
It’s just more constraints. Disabling collision is easiest by setting it on the rigid body constraint settings (I think it’s the default anyways.)
I’m a little confused…about the adjacent bodies/ joints, I made some research and the only thing that comes up is the rigid body joint constraint, but I can’t find it among the constraints in 2.8.
every video and tutorial show an older version of Blender, they go into game engine (which I understand has been removed from 2.8) and add this rigid body joint constraint.
has it changed name? where should I look?
Since I couldn’t find the rigid body joint, I tried the other constraints, but none of them works. I tried the “limit distance” because the name was promising, I kinda saw some difference in how the rigid bodies react to the collider, they get hit and go higher as if they were trying to stay on top of the leg, but then they phase through it. Pivot point was useless because the rigid bodies started moving back and forth and they would phase through the leg anyway.
I also solved the maifold problem. you know, chopping her head off was the right way to do it. I replaced it with an icosphere that I modified to match the rough dimensions of the head and I closed her neck. no more problems there.
still, the skirt won’t react to the legs. I’m soooo close to the end of the problems…
It’s a confusing name, it’s actually in physics. That’s what those empties you have managing the physics are doing-- they’re just rigid body constraints.
That’s good. The ideal way to do rigid body colliders is actually to not use any mesh-type colliders, which are some combination of slow and unreliable, and instead use multiple primitives (sphere/box/capsule) to approximate the shape. It’s probably not worth worrying about, just that if you want to import to a game engine, you’d want to be dividing the head to sphere, each leg to capsule, etc…
ok, so, I’ve been trying, but still no collision. well, some kind of collision happens but for an instant, then everything passes through the body again.
I used empties to linkthe rigid bodies, but they do basically nothing other that limiting the movements of the rigid bodies. when the legs go up, the rigid bodies phase through the legs anyway.
what I’ve tried: rigid body on the left parented to an empty (that is positioned between the rigid body on the left and that on the right) and to its bone, then I parented the rigid body on the right to the same empty and to its own bone. I left the constraint as fixed and chose as first and second object the two rigid bodies. I did it for a few rigid bodies on the front where the problem with the skirt happens.
result: the rigid bodies have less movements (probaly because of the fixed type) and they don’t react to the body collider.
I checked the Metaball Capsule but it has no physics options, so I really don’t know how to use it. should I convert it to mesh and then use physics?
but, more than anything, why are these rigid bodies not colliding against a the passive rigid body of the character? it makes no sense. If I let a cube fall onto her, it collides, but not the ones from the skirt.
I really don’t know what else to do…
wait, I just converted the capsule to mesh, gave it passive, animated rigid body with capsuele shape and now it’s colliding with the rigid bodies of the skirt. I guess now it’s all about making the rigid bodies stick together horizontally so that they don’t move around the leg but lay on top of it.
I guess it’s the constraint that I need and that I didn’t understand how to make.
Yes, that’s all they do, and all you need them to do. But think about the difference between a skirt made out of long, unconnected slats and a skirt made out of cloth. The difference is that the motion of the cloth skirt is limited not just by what’s above a particular piece, but by what’s to either side.
No, that’s not what I meant. Check out options in properties/physics/rigid body/collisions/shape.
Obviously, fixed won’t work. Point is a good first step, although you’ll want some stretch eventually. Here’s a pic of a similar setup I’ve made, although for a different rendering engine (that uses the same underlying physics engine):
Each of those colored shapes is a rigid body, and each of the yellow boxes is a rigid body constraint. I’m using passive rigid bodies parented to bones to collide, because there’s no mesh collider for the engine I was using (and mesh deformers aren’t ideal anyways.) Notice that the skirt’s rigid bodies overlap and are joined top and bottom, left and right. These rigid body constraints are all individually tuned spring-type.
basically I should make the rigid bodies wider so that they overlap and connect them on the sides (since they’re already connected on the top and bottom) and I shouldn’t use a generic type like I did for the hair but rather a generic spring (because the point type won’t let the mesh stretch) and I’ll have to play around with the settings until I’m satisfied with the movements?
Did I get it right? because it is getting pretty frustrating, since the skirt is the last part I need to do to finish the character (I mean, the bow on the back will be the same as the one in the front and I’ve already make that).
Yes, that sounds about right. You’re being pretty ambitious for how familiar you are with Blender and especially Blender’s physics, that’s why it’s frustrating. (I mean, think about how much you’ve learned about physics already, and you even changed major versions in the middle of your project! You’re doing great.)
Yeah I know I’m being ambitious, but still if I’m doing something, I don’t like leaving it half way through and forget about it, otherwise I wouldn’t have started it at all. I’m actually starting all over again with the skirt, I deleted the bones, rigid bodies and empties for a fresh start, so maybe this time it works. I hope, at least…
well… I think I broke the software… I finished doing everything between the rigid bodies, empties and bones, and now physics in general won’t work during animation. everything that has physics in it (hair, bow, upper part of the top and a box in the air) stays completely still. the skirt rigid bodies follow the movement of the body but are still, the bow, upper top and hair are still in place, the body moves but they stay where they are…
like I said, I created a box in the air with rigid body just to see if it fell down but it stays where it is.
what happened now?
edit: I came back to the skirt I had, I removed all the bones, rigid bodies and empties and everything was working. I added new bones, the rigid bodies and the empties and again everything that works with physics stopped moving. I don’t know what’s happening. it’s like blender stopped calculating the physics of rigid bodies and leaves them where they are. I also see that the rigid body cache is 0B, so I guess it’s not working at all…
edit2: I’ve gone back to a previous save that worked. I tried to use the Limit Distance constraint but it seems that anything that I do now breaks the physics of the project. I can’t do anything anymore, otherwise everything stops working. talk about frustrating…
Ok, so I moved on to other parts that needed to be added. I edited the tiara, parented to the head bone and everything and everything works fine. I started with the earrings that will have physics and as soon as I gave one box rigid body physics, every rigid body existing stopped working. so either there’s a solution to this or I can’t do anything anymore and everything I’ve done till now has been for nothing. I suppose it’s something about not calculating physics anymore and I guess the solution is in the scene tab, but I really don’t know what to do there. I’ve looked on the internet andI can’t find anyone who has had the same problem, so either I’m extremely unlucky (which is possible) or it’s an easy solution that everybody knows but me.
just in case, this is the file: https://drive.google.com/open?id=1JRJ2da7KwM50As2nEDkpfLwaSogMVrJO
edit: I’ve been trying to find out where the problem is (obviously I found nothing) so I’ve tried different things to understand when the problem appear. old save, everything works, as soon as I create a new rigid body (a box in the air with just rigid body), every rigid body stops. I’m starting to think that this is gonna be a huge problem. the rigid body cache stops working: I had 107 frames in memory but as soon as I apply the rigid body to the box, the frames don’t update. I tried deleting the bakes (even though I have never baked anything there), updated all to frame, reduced and increased again the sim start and end, deactivated and reactivated the rigid body world… they get to 0 and it says that the cache is outdated.
the project, as it is, is basically dead. I can’t add anything anymore, otherwise everything else freezes…
The main issue is TOP collider. When you delete that mesh, your physics come back. It’s probably a dependency issue of some sort, where collider is getting weights that are in some way defined by physics-- but since it’s a collider mesh, physics depend on its shape.
Other comments: if you really want to use sphere-type collision for your rigid bodies, at least change their meshes to spheres so that you can see how their collision is working.
Your file is way too complex for me to troubleshoot any further. If you have further problems you want me to look at, I need you to simplify the scene to simplest it can be to reproduce those problems. Simplifying like that is a basic part of troubleshooting problems, and something you should be doing anyways.
Okay, it didn’t cross my mind that the problem could have beet that top collider.
About the sphere type collision I guess you’re talking about the hair and (I don’t remember) the bow. I actually left them like this because I was focusing on the skirt, I wasn’t thinking about it anymore.
About simplifying the project, what should I do? I mean I don’t know to what extent a project can be considered simple or not, so I actually don’t know what I should be editing to make it easier to work with.
Thank you for your help, I’ll go deal with that collider in a few minutes and then I’ll keep on trying to solve the everlasting problem with the skirt that doesn’t want to react with the collider… I’m starting to lose hope about this…
Well, here’s what I did to troubleshoot your problem: I deleted everything that was a mesh and focused on just the rigid bodies. I deleted components of the rigid bodies until the problem went away. If I were less lazy (if this were my own project) I would have then taken a look at simplifying the armature until the problem went away.
The simplest demonstration of a problem is the version of the problem that recreates the situation with the fewest moving parts: objects, empties, bones, constraints, keyframes.
BTW, it wasn’t creating a new rigid body that created the problem. What creating a new rigid body did was clear the physics cache. Problems weren’t showing up from a change made earlier because the physics were cached, not actually being computed every frame.
by simplifying the armature I guess you mean that there are a lot of different objects attached to the body, right? the problem is that (except for the scalp, top hair and head) I can’t join many of the objects because they appear during the animation and some (like the tiara) will have to to animated separately from the body for a second animation.
about the skirt that phases through the body, I’ve been looking at the image you posted and I have one question about it. when I created the rigid bodies, empties and bones for the skirt, following a youtube tutorial, I selected a rigid body, an empty and their bone and set them as bone parent. now that I have another empty between two rigid bodies horizontally, how should I parent them? both rigid bodies and the empty but which bone? or should I parent one rigid body to its bone and to the top empty and the other two on its side?
because, obviously, if I just set the constraint, the empty will stay where it is because it’s not parented to the bone, hence it won’t follow the animation. also, (given that I’m almost certain that I have to parent these new empties to a bone), should I parent them to both the main bones and the bones that copy the rotation of the rigid bodies? I ask because in the beginning I parented the main bones to the rigid bodies and empties and then I duplicated the bones, and by doing that, they should have kept the relation with the rigid bodies and the empties, so, as a consequence, now that I’m parenting new empties, I should do on both sets of bones, right?
I really don’t know if I’m saying something that makes sense…anyway, I will try until it works in the meantime
well, I tried. I made the rigid bodies wider. I went vertically, rigid body on the bottom selected with the top, left and right empties and then the bone (in pose mode) and parented as bone. deselect. selected the rigid body above, selected with the top, right and left empties and the bone (without deselecting the bone below), parented as bone. deselect everything. I did it again with the other lines of the skirt. I first tried with only the main bones. the rigid bodies moved together, the movements has been restricted but it was okay. the rigid bodies ignored the leg and phased through. I repeated the parenting process with the bones that copy the rotation of the rigid bones. now some of the rigid bodies blink and appear for a split second in different places (I don’t know why, it’s like the rigid body is trying to be in 2 locations at the same time) but still, they phase through the leg. they don’t even give a hint of collision. why is it so had to make rigid bodies collide with another rigid body? shouldn’t this be the basis of the rigid body physics? I mean, if I let a cube fall on the character, it collides…
Empties that hold rigid body constraints do not need to follow the animation. (The way it works is a little crappy, in my opinion-- it’s something they need to revisit.) Orientation of the empty at initial frame of animation determines its orientation, and after that, it’s as if it is parented to the first rigid body of the rigid body constraint. Even though it isn’t displayed there.
For parenting, what I’ve been doing is parenting all rigid bodies in a chain, including the anchor (passive/animated body) of that chain, to a bone marker that doesn’t deform, get animated, or depend upon the physics. That gives me reasonable results both when posing in a still and when running physics. The physics bodies absolutely cannot be parented to a physics body participating in the sim, not in 2.8, or they’ll give weird, jerky behavior. They can be totally unparented, that’s fine, you just need to start the animation unposed and take reasonable amounts of time to adopt your the initial pose.
If you parent the bodies like I said, you also want to parent the empties in the same way. If you don’t parent the bodies, don’t parent the empties. It’s fine that they lag. Yes, it’s dumb that they’re always lying to you about where they are, but that’s how Blender works, at least until they redo their rigid body sim code. (Not sure how likely it is that they ever will. It’s of limited use to game modellers who generally have to tune physics to the engine they’re using, and people who render in Blender tend to prefer the slower soft-body based physics.)
You should read the Blender manual on physics, especially on rigid body physics. It’s out of date in some ways, but it’s still very useful.
Probably parented to objects participating in physics sim, like I was talking about above.
Problems with mesh-based collision from your body, which can be resolved by increasing number of physics steps, or preferably by replacing your mesh collider with a set of rigid body primitive colliders.
Again, read the manual. Computer-based collision doesn’t work the way you’d expect. It is not real physics.
Okay, now I’m getting somewhere. I recreated the body collider in multiple simple shapes, now the rigid bodies react exactly like they’re supposed to, the leg hits the rigid bodies and they remain on top of it…
guess what, new problem! the entire upper row of the skirt bones stopped copying the rotation of the rigid bodies, so now they move around with the body but are still, which means, in turn, that the actual skirt mesh doesn’t remain on top of the leg. I’ve tried to remove the copy rotation and apply it again, but only one single bone started moving again.
what is it now? the moment something gets solved, something else stops working…
I also tried deleting the bones that copied the rotation and made a new copy to set that constraint, but as soon as I click on “copy rotation”, all the rigid bodies move to a different place…
I guess this has nothing to do with physics since it’s a bone constraint that stopped working. it makes no sense, they were working in a earlier save and the only difference is the body collider with which they have nothing to do, since it the empty that is linked to a collider (and it is an icosphere inside the body anyway, it’s still there, so no changes at all to the skirt)
edit: I copied the rotation of the rigid body below the right one, and the bone copied its rotation, but if I copy the rotation of the right rigid body, the bone stops
Suspect dependency loops-- that somehow you’ve created a structure where that bone depends on physics (via a bone constraint) but physics depends on that bone (via parenting, bone or object constraints, or deformed mesh colliders.)