Simulating debris and recording back to geo issue

Hey!

Recently bought this tool and was hoping to simulate my character falling through some debris with the debris being simmed too. However i seem to be unable to effectively record it back to the original geo.

I thought i could just select my geo, run the ‘assign and connect’, hit ’ sim ', and cache the solver so i can watch it realtime. Then when im happy, record sim (which i thought would put the anim back on the original geo.

Am i being an idiot here, as it doesn’t work with getting the sim onto the geo again

Thanks,
Josh

Hey @Josh_Thornhill and welcome!

Sorry to hear that recording problem. :sob:

Could you let us know

  1. Which app and version were you on? Maya 2024 or Blender 4.0? And
  2. Ragdoll version?
  3. How did you assign your marker? A few screenshot of Outliner/Viewport showing us your scene setup would be super helpful.

Thank you. :slight_smile:

  1. Maya 2023.3 (sp3)
  2. Ragdoll version - 2024.05.15
  3. Selected the geo and went to ‘assign and connect’ for the geo, then changed the collision shape to ‘mesh’ for better interactions.

This is after recording, the actual geo stays where it was, but the simmed geo is still doing what i want it to. Any ideas how i can get the actual geo to match the ‘simmed’ geo?

Thanks! This is helpful. :+1:

I noticed that you were using “Assign and Connect” when assigning markers, which is mostly for something that are chained, like joints. And in that case, only object that has root marker assigned gets translation from recording, child objects then inherits root’s translation and only rotation was recorded to them from markers.

So I am guessing those debris meshes are not moving because of that. Select one of those meshes, go to its marker attribute tab and have a look at Record panel, see if “Record Translation” is off.

And, if you change solver’s Display Type to Wire, you should see one of those debris mesh is actually moving in recording playback, because it has root marker assigned.

If when I am guessing is correct, this can be fixed easily by

  1. Go to Ragdoll menu → Select → Markers
  2. Maya Windows menu → General Editors → Attribute Spread Sheet
  3. Turn all those “Record Translation” back on.

I did some digging and found the ‘record translation’ attribute and wrote quick script to turn them all on for the markers, however it ‘did’ record it but it just exploded the original geo (and doesn’t follow at all what the simmed geo was doing). Is this caused because of the assign / connect’ thing you’re talking about?

So from where they originally were, after recording they’re now here (the wrong position). And just sim going through the floor before exploding :confused:

I’m putting my scene scale to 1 here too, not sure if this causes issues?

Is this caused because of the assign / connect’ thing you’re talking about?

No, it should not. :thinking:

From the screenshot you took, it looks like the debris geo are matching the transformation of simulation?

Before recording, did you have solver’s Cache attribute set to Off?

I’m putting my scene scale to 1 here too, not sure if this causes issues?

Nah, that only affects simulation, not recording.

It still seems to not put the geo back even if i set the solvers Cache to 1 :frowning:

Oh, did you mean those geo are not reset back to where they were?

Perhaps you have to check your Animation Layer Editor, Ragdoll records keyframes into animation layers.

If you delete it or mute it, those geo should be right back where they were.

So as i understood it i’ve set my geo up ready to fall - i then select the geo, hit ‘assign’ and set the scene scale to 1, with the ground set to an environment. Solver cache is 1, i sim and the simmed geo looks perfect.

Hit record, it all breaks haha

Not sure why though

Hmmm… Have you tried reset recording options?

By the way, solver cache does not have to start from 1 though. Let value be 0 (Off) as default is fine.

OMG yes, this was it. Thats so strange! :smiley: Thank you so much!

Have another question, how do i tell some pieces to start ‘asleep’ so they only sim once something has interacted?

Awesome!

how do i tell some pieces to start ‘asleep’ so they only sim once something has interacted?

Is this what you are looking for?

Alternatively (perhaps you already know this), you can set keyframe to marker’s Behavior attribute to achieve the similar result.

For example, set it to Animated at frame 1, marker will not be moved by simulation, but via animation (remain static if it has no keyframe). Then set a key to it as Simulated at frame 20 to opt physics back in.

image

1 Like

Fantastic! Maybe the animated approach is a bit more intuitive :slight_smile: Thanks David! Life saver!

2 Likes