Coastal hazard

Hey there!
I’ve just decided to participate to the challenge - better late than never!

I’ll be properly starting this weekend, but I thought I could create this thread today by writing down my idea: at night, a quite drunk mariner gets out of a bar set on a small island. This drunk fellow, after hitting trash cans and other stuff along his way, finally reaches his car and opens the door when a giant crab with laser-shooting eyes comes up and destroys the car. Don’t drink and drive, especially during a giant crab attack!

To speed things up with the fabrication, I’ll take a low/mid-poly approach and a 3D isometric style. Regarding how much ragdoll there will be in there, I’ll try to put as many things as possible: the mariner himself will be a ragdoll to imitate his uncertain walk, all the props the mariner will touch (the bar’s door, the trash cans, an old lady, that kind of stuff), the giant crab, the destroyed car … That’ll be fun!

I’ll share the chars and env first while learning the ragdoll ways; the update after will be the first ragdoll tests. Best of luck to everyone!

Welcome aboard @williamB, looking forward to seeing this! Best of luck!

Hey there! As promised, a few screens of the env and the basic shape of the character I’ll use for the anim


I’m fine-tuning the whole env as we speak; like I said, I’m keeping things fairly simple as I don’t have much free time to allocate on the challenge - to this end, I’ll put everything in unreal to avoid the render times and stay on track while having a good looking result (I’ll do a blast first, but might as well have a nice render).
Regarding the ragdoll scenes, there’ll three distinct things happening before the giant crab, but I’m keeping the surprise for now!

Next update will be with the finished env, finished chars and early ragdoll tests!

1 Like

Hey there!
I’m finalizing the env as we speak, but more on that later - the characters are also all done, I went with this style:


This is the sailor/mariner, but the 2 or 3 other chars will have the same base with different outfits and hair.

Also, I experimented a bit with the drunk ragdoll and got to a nice result with a perpetual walk setup:

I’ll try with a locomotion system though, as I like the clumsiness it could result from!

2 Likes

That is fantastic! :smiley: Getting the feet right can be a challenge. I’ve had luck just increasing the size of the box, such that it’s got a larger area to balance on. Alternatively you could try and make the ankle stiffer; almost immobile.

For the head, try putting a Pin Constraint on it, and turn Translate Stiffness = 0. He’ll instantly look more alive. :slight_smile: Then you can animate that pin constraint too, to make him look in a global direction. :slight_smile:

1 Like

Thanks :smiley: !

I’ve had luck just increasing the size of the box, such that it’s got a larger area to balance on. Alternatively you could try and make the ankle stiffer; almost immobile.

The ankles already have a big stiffness value, but increasing the size of the box is a great idea! I’ll test that later today and share the result here

For the head, try putting a Pin Constraint on it, and turn Translate Stiffness = 0 . He’ll instantly look more alive. :slight_smile: Then you can animate that pin constraint too, to make him look in a global direction. :slight_smile:

Good idea as well! I reduced the pose stiffness to have a jiggly effect but I’ll try with a pin constraint - given the fact that he’ll hit some stuff on the way, such a constraint will definitely be handy to keep him walking

Small update! I didn’t have as much time as I thought I would have tonight, so I only tested to fix the ground contact and the head, and also I tried to give an inconstant direction - I’m quite happy with the result so far!

Of course this is an extreme example and needs to be refined (realistically, the guy would fall to the ground with his body center that far), but I think I’ll go with this solution as I find the results pretty good and funny. Plus, there’s surprisingly a lot of control to actually make sure he’s keeping a realistic walk so that’s great!
Next step is to import the setup in my env scene and start to properly make him walk depending on his surroundings.

Speaking of env, a small update as well:

Still WIP but it’s starting to get in shape!

2 Likes

Hahahah look at him go! Pretty cool how Ragdoll can break up a cycle - one thing I do is animate the pins rotation to give the effect of the character trying to balance, it’s kinda fun working with the simulation on this one - if you see the character leaning too far back go back a bunch of frames and counter the pin to rotate forwards and vice versa the character leaning forwards too much .

1 Like

Looks very cool. :slight_smile: To deal with the leaning forward too much, what Jason mentioned is a solid technique. You can also add a Gravity Field or Uniform Field to help him along by pushing him in the direction he’s walking.

1 Like

The use of pins rotations and fields are a wonderful idea, definitely easier than tweaking the keyframes - thanks for the tips! I didn’t add these in my current tests, but they’ll definitely come handy when I’ll tune-fine the sim!

Speaking of which, a quick update:

So basically I added the main char in the scene and started to adapt his walk to his surroundings - obviously it’s still not there yet, and the feet are still sliding towards the end (hence your tips above that are really handy) but I’m quite happy with the result so far.

There are three ragdoll things missing in the version above:

  • there will be another (sleeping) drunkard on the bench (bench that is catapulted because our main character throws a beer mug behind him, knocking down the sign)
  • something when the garbage stuff is pushed on the ground (probably someone on bike trying to avoid the planks and garbage cans, hitting the nearby sea wall and falling into the water)
  • THE CRAB

The crab part will be at the end when our sailor will stop to unlock his car, and it’ll be pretty brutal!

I have a couple of questions regarding some issues I faced though:

  1. Is there a way to constraint something on two distinct points? I want the main char to push open the pub’s door, so I figured that physicalizing the door and pinning it would do the trick but it didn’t work the way I intended (it was hanging as if it was tied to a rope). How would you approach such a use case?
  2. As we can see in the blast, the beer mug falls flat instead of being thrown in the air; I used an attach constraint where I keyframed the translate and rotation stiffness and damping values - they’re set to the maximum until the mug should be thrown in the air. Unfortunately, instead of getting the arm’s movement velocity, it just falls. Is there a way to actually throw something after an object is constrained onto something else? I could cheat with fields and such (I’m planning on using them anyway to make sure the mug hits the sign), but I was wondering if it was possible without any field help

Thanks in advance! I’ll try to have the crab ready and done for tomorrow

Haha this is lovely! :sweat_smile:

If you put a drunkard on that bench, he’ll be an additional weight that will likely keep the bench from flipping. Increase the density on the sign, and you should be good.

The Distance Constraint is just that, keeping, avoiding or maintaining a distance between two points.

I think I see what you want, you don’t want Distance Constraint for this, instead you can use a limit similar to how an elbow and a knee works to make a door hinge.

Something like this?

Here’s how you can do that.

Step 1 - Setup

I’ll make a door similar to the one you have.

Step 2 - Hinge

Next we need somewhere to Reparent the door, this will be our hinge.

Step 3 - Reparent

Make the hinge a child of the door. You can swap these around, but the pivot of the hinge will be at the child rather than the parent, and in my case the pivot of the door is at the center of the door, whereas the pivot of the hinge is at the center of the sphere, which is where I want my door to revolve around.

Step 4 - Limit

Finally, lock all axes (a value of -1) except for the one the door is meant to revolve around, which can have a value equal to the amount of rotation you want to allow the door to have.

Hey @marcus !
Thank you very much for the step by step tuto, that’s exactly what I wanted! When I tried on my own I managed to get until step 3’s output in a completely different way, but I found myself stuck because I couldn’t visualize the limits in the manipulator’s view - I didn’t know you could access these settings in the attribute editor :smiley: Your way is definitely more optimized though so I followed it to the letter!

Because the only time window I’ve got before the end date of the challenge is today, I’ve decided to stay late tonight to entirely finish the project, or at least, I’ll try! To stick to the deadline, I’ll deliver a blast, but I’ll still do a rendered version later.
Here’s a updated version with the crab:

There still are a few things to iron out on the crab’s movements, especially regarding its legs that feel a bit too light to my taste, but nearly there!
On a technical note, the sailor isn’t influenced by the crab yet because I created two solvers for the scene, one for the crab and one for everything else - I found out that scaling the crab too much would make the ragdoll rig explode, and the only way to prevent that was to set the max mass ratio to 10x or 100x. When I’ll be completely satisfied with the crab’s anim, I’ll bake it and import it back to the scene where our poor sailor will be attached to its pince when it’s attacking. Speaking of bake, I already baked the trash cans and library as I was super satisfied with their sim and I didn’t want my hero to change the way they fall to the ground!

I’ll also make the other black-out drunk guys in a few, shouldn’t be too hard as the chars are exactly the same as the hero one, so I can simply copy/paste the markers and integrate them in the scene.

You can expect a new version in a couple of hours!

Edit: I just noticed how bad looking the door closed itself, oops! Gonna fix that as well

Would it be possible to show the result? I suspect the selection order was different, which would set the pivot at the middle of the door instead. Or, maybe the door’s pivot is somewhere else, such as the origin in case of the transforms being frozen.

An alternative is making two locators, one for the door another for the hinge, and assign to those. That’ll let you control the pivots more easily, then you can constrain or parent the door to one of those locators.

Yes, we found this as well. It’s one of the consequences of making the limbs that much stronger in the latest version of the crab.

You could try the previous version, download-link on the same page as the original link. Or you could try addressing it on your crab directly, there’s some steps here.

To get some understanding of why this works, it’s because the mass of the feet are currently manually set to 1.0 whereas the body is automatically computed based on its size. So when you scale the crab, the body gains weight, whereas the feet stays the same. At some point, the body gets so heavy that the solver struggles to keep them aligned. Like placing a strand of hair underneath a bowling ball, asking it remain straight and hold up the ball.

When you give the solver a max mass, you prevent the body from gaining too much weight, which somewhat protects this from happening.

Hehehe, is this the rig I’m seeing in there? A little easter egg? :slight_smile: :slight_smile:

image

Would it be possible to show the result?

I could but it wasn’t great: instead of going with a separate object for the door, I went with a joint and a pin constraint - my idea was to limit the rotation values to mimic an hinge, but the best I managed to have was the hold by a rope thing (there wasn’t any limits shown in the manipulator and I didn’t think to check in the attribute editor, hence my surprise above). If you’re still interested, I’ll try to replicate it and send you some screenshots though!

To get some understanding of why this works

Aaaaah okay, yeah that makes a lot of sense, thanks for the details! No worries though, I managed to have something stable and workable with the max mass ratio, but that’s definitely good to know for the future projects

Hehehe, is this the rig I’m seeing in there? A little easter egg? :slight_smile: :slight_smile:

Hehe there’s no easter egg I’m afraid, that’s just the animated rig!

Made some good progress but I’m gonna call it a night:

It won’t be perfect, and if I had the time I would have fine-tune a lot of things, but I prefer to release something in time than nothing!
I’m gonna exaggerate a few arm movements of the sailor (when he throws the mug and when he unlocks the car), put the said props in his hands, clean a few things there and there and quickly put the sleeping drunkard on the bench tomorrow

1 Like

New update!
This time with a couple of drunkards! Nearly done there, still have to do the beer mug throw and fix a few things there and there, and that’ll be done!

5 Likes

Ahaha, that’s great.

image

This guy could use either some limits or a stronger spine. :slight_smile: The default limits for the spine should suffice, they default to 45 degrees.

It also looks like the sign drops on the seat, waits a little bit, and then tosses the guy. The timing seems a bit late. I wonder if the seat has been hand-animated? Or what’s happening there?

For the crab, his claw is moving quite fast IMO, and it almost looks like traditional, non-physical IK. I’d have a go with animating the FK controls, and let Ragdoll transfer that into physics via Pose Stiffness, should get you some nice secondary motion on the body as well.

Thanks for feedback!

This guy could use either some limits or a stronger spine. :slight_smile: The default limits for the spine should suffice, they default to 45 degrees.

That’s already the case actually!


But I think my pose stiffness might be a little too low, I reduced it to have a nice effect but maybe too much - gonna have a look at that!

It also looks like the sign drops on the seat, waits a little bit, and then tosses the guy. The timing seems a bit late. I wonder if the seat has been hand-animated? Or what’s happening there?

Nope the seat is fully ragdoll’d actually, but you’re right there is a small pause! I guess I’ve must have messed up a bit with the density/mass settings, I had some trouble getting a good value with the drunkard sat on it, even after giving a huge density and mass to the sign falling onto it; when the sign drops, the bench slowly builds up the impact until finally throwing the drunkard. I’ll take a look at this as well - worst case scenario, if I don’t manage to have a better result in sim, I’ll cheat a bit and move the sign’s keyframes a couple frames forward in time to get rid of this small pause

For the crab, his claw is moving quite fast IMO, and it almost looks like traditional, non-physical IK. I’d have a go with animating the FK controls, and let Ragdoll transfer that into physics via Pose Stiffness, should get you some nice secondary motion on the body as well.

Well, this is also a full ragdoll anim here :smiley: I animated the claw thanks to a pin constraint; I started by animating the FK controls and ramping up the pose stiffness values, but I lacked some precision when grabbing the sailor so I opted for the pin with strong stiffness values instead as it was simpler to have control. I’ll try and see what I can do to slow it down a bit!

New update!
I corrected the flying drunkard’s spine to make it less broken when in the air, fixed the sign pausing when hitting the bench, added the mug throw, started to tweak the crab’s claw anim and played around with the viewport 2.0 light settings:

Tomorrow, I’ll continue tweaking the crab’s anim, there are still a few things I’m not found of, and add a more obvious arm movement for our main character when he unlocks the car; I’ll also try to add a few props on the table receiving the flying guy for even more physics, depending on the time I’ll have.

3 Likes

This is a viewport render? Really nice. :open_mouth: The house lights and car lights make a huge difference. I love how he walks into the trash and knocks it over, and with this lighting it makes it much more dream-like.

And I just noticed you’ve got waves and rocks on the side; subtle detail, very nice!

image

1 Like

This is a viewport render?

Yes it is :smiley: !

Thanks for the kind words, I appreciate it!
Because I won’t be home tomorrow, I tried to fix as much stuff as I could today; it won’t be perfect, but at least I’m submitting in time. So here’s my final submission:

There’s also the 1080p version here:

Thanks a lot for your great tips @marcus and @Jason, it really helped me out wrapping my head around this great plugin! Good luck to everyone, there’s a lot of great submissions!

1 Like