Jump to content

RBD spring constraints between two deforming packed objects


BRZ32

Recommended Posts

Down the rabbit hole we go.

I have two packed rbd objects and one static object for collision purposes.

Of the two rbd packed objects, one is static deforming and the other is active deforming.

My goal is to constrain the AD to the SD using spring constraints and then hit them with the static object breaking some of the constraints.

The problem is no amount of strength will keep the pieces together, the whole thing just explodes. None of the pieces are interpenetrating. It's fine until it gets hit but once they begin to move, the spring get stretched to crazy lengths and become unstable.

Overwriting the springs each frame seems to keep things together and apply forces in a somewhat predictable manner.

However, overwriting them each frame makes trying to delete the constraints both in sops and a solver within dops seemingly impossible. Bullet and the constraint solver both manage to pick up the springs and attach them to their respective pieces no matter how I delete them and thus pieces go flying all over the place. 

 

I'll be working on putting together an example file but it will take some time to recreate since I can't attach the studio file >.<

In the mean time, perhaps someone has set up something similar to this and found a work around to having to overwrite the springs each frame?

If so any help would be very much appreciated.

 

 

Link to comment
Share on other sites

Just an update on this -

In the docs it talks about the difference between a relative offset anchor and a point anchor using an anchor_id.

I had expected the constraints to be able to grab the anchor_id from inside a packed primitive, much like the packed rbd objects can grab the ode primitive information each frame. Unfortunately this doesn't seem to be the case. It just fails to find any points except existing centroid points that happen to have a matching point number to an anchor_id.

So I tried using unpacked rbd objects(Including just an empty object with configured ode info) but the naming convention of unpacked objects doesn't respect the piece attribute as a packed object would.

 

for example:
Packedobject1 can have dop object names (Packedobject1/Packedobject1_1001, Packedobject1/Packedobject1_1002, Packedobject1/Packedobject1_1003 etc)

But an unpacked rbd fracture object using the same geo has the naming convention (fractureobject1, fractureobject1, fractureobject1, etc)

So when you fetch the dop geometry to make the glue constraints in sop space... the point attribute name(The Dop Object name) is wrong because all constraints have the same name FractureObject1.

 

I can't seem to find a way to specify what the dop object name is or how its defined. If anyone knows what node it is inside the rbd fracture object or where and or what node I can use to specify how dops names the objects during a sim that would be helpful. 

Link to comment
Share on other sites

  • 3 weeks later...
  • 2 years later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...