Clustering, Glue and Strength rbdbulletsolver issue

   1048   1   2
User Avatar
Member
10 posts
Joined: Dec. 2016
Offline
So I'm working on a lego brick setup:



I'm struggling very much with trying to get glue constraints to work properly with my lego brick rbd setup. I've managed to create a bunch of connections that I want to use for a glue constraint setup:



The picture above is a series of prims I've generated, with green to red representing how strong the brick to brick connection is (more stud to hole connections means higher strength).

When I plug this into an rbdconstraintproperties and use an attribute to drive the strength of the glue, I can't seem to get it to work exactly how I want. Some parts of the glue constraint mesh is seperated, so when the sim begins I'd want those to fall and simulate seperately. But the result I get is the glue contraint network acting as a whole and even when I set some strengths to 0 it ignores it.

I've seen online and from others trying to help that you need to cluster and name pieces correctly, but i've had no luck with any of this. My end goal is to have the lego simulate like it work in real life, pieces that aren't connected to eachother will fall away, and pieces that are connected will use their strength value.

I've attached my constraint setup as well as a stash of the full mesh / proxy mesh. Any help, explinations or examples would be amazing!
Edited by pidgyedits - Dec. 11, 2021 19:26:08

Attachments:
LegoBrickConstraints.hip (4.7 MB)

User Avatar
Staff
628 posts
Joined: Oct. 2012
Offline
Yeah, I think the issues probably are from mismatched names.
On your constraint geometry, there should be a 'name' point attribute which specifies the object the constraint anchor is attached to. This is matched against the 'name' point attribute on the proxy geometry prims (your geometry doesn't have that, so the solver is setting up default names - it's better to set this up yourself if you're creating constraints)

The constraint setup seems to be renaming the points in its loop, so you probably need to go through and make sure that the constraint points have the same name as the piece they're supposed to be attached to
  • Quick Links