Jump to content

RBD Chains?


7ofDiamonds

Recommended Posts

Hi guys, I'm trying to create some chains, these are small scale chains, but there's lots of them (maybe 100s?).

Here's a reference:

 

Would like to constraint them to two main objects, (eg: the two rings at the ends in the example) and have them move and interact to these main objects.

 

What's the best way to go about doing this? I would appreciate any tips or a workflow that could help me make this process efficient. Thanks!

 

post-12698-0-35089400-1446873536_thumb.j

Link to comment
Share on other sites

I've came up with something simple that seems to work for me. I've attached a hip file. The chain collisions seem to be working well, other than the weird jiggles that I'm getting.

 

Also, another question regarding the building of the chain itself. I'm trying to alternate the rotation of the chains, but I'm not getting the desired result. I'm using if ($CY % 2 == 1, 90, 0) for the rotation but it's like doubling up and doing every two chains instead of every other. What I am I doing wrong?  :(

 

49bcexee9n.jpg

 

 

This network is marked red in the hip file under the chainlink geo`. 

 

I appreciate all the help, thank you!

 

chain_test_v2.hipnc

Link to comment
Share on other sites

last time i did chains, i used bullet.  i generated proxy geometry using spheres (simple way from geo of link: vdbfrompoly node -> vdb to spheres node).  if you have fast motion, you'll need to crank up the substeps potentially, but bullet is pretty fast so large numbers of substeps is not too bad.

 

you're making your copy too complex.  just rotate 90 every time with cumulative.  or turn off cumulative if you want to use your expression.

  • Like 1
Link to comment
Share on other sites

last time i did chains, i used bullet.  i generated proxy geometry using spheres (simple way from geo of link: vdbfrompoly node -> vdb to spheres node).  if you have fast motion, you'll need to crank up the substeps potentially, but bullet is pretty fast so large numbers of substeps is not too bad.

 

you're making your copy too complex.  just rotate 90 every time with cumulative.  or turn off cumulative if you want to use your expression.

I forgot to mention that the second post with the example file was built with bullet and it seems to be working fine. I'll test out the proxy geometry with spheres.

 

Thanks for the tip on the copy! Somehow that just flew by me, didn't think about the cumulative. Thanks!!

Link to comment
Share on other sites

last time i did chains, i used bullet.  i generated proxy geometry using spheres (simple way from geo of link: vdbfrompoly node -> vdb to spheres node).  if you have fast motion, you'll need to crank up the substeps potentially, but bullet is pretty fast so large numbers of substeps is not too bad.

 

you're making your copy too complex.  just rotate 90 every time with cumulative.  or turn off cumulative if you want to use your expression.

 

Have a couple of questions regarding the vdb to spheres method. Should the entire chain link be an RBD packed/fractured object? If so, where can I plug in this proxy geo? There doesn't seem to be a proxy geo input for the RBD packed/fractured object. Or should I be using something else?

 

P/s - I'm trying the setup that I have in the file above, but somehow, if the chains are smaller, they seem to just randomly break at certain times..

 

**UPDATE**

I've attached a hip file for what I have right now. Just a simple chain dropping onto the floor. Collisions seems to work for a while, but after frame 14, things just break, I have my global substep at 4, and the substep on the bullet solver itself at 300! I feel like I'm doing something wrong.  :(

chain_test_v3.hipnc

Edited by 7ofDiamonds
Link to comment
Share on other sites

yeah, packed rbd object.  you use proxy geo directly (the sphere representation) and then when you dop import your sim, you feed your beauty geo to the dop import and just import the xform's for each named piece.  you have to set up your names, tho.  so set up a single link with proxy geo, then pack it and use a name attribute, then do your copy to make the chain links.  that is then your geo for your sim.  i'm trying to remember which bullet geometry type to use -- just run thru them and use the one that makes the bullet geo look retain the sphere shapes you set up.  the docs should have a section on the whole proxy geo and dop import thing.

 

if you have a any kind of instantaneous forces, you may need even higher subframes on the dop (20+ isn't crazy, so long as your sim times don't bog you down).

  • Like 1
Link to comment
Share on other sites

yeah, packed rbd object.  you use proxy geo directly (the sphere representation) and then when you dop import your sim, you feed your beauty geo to the dop import and just import the xform's for each named piece.  you have to set up your names, tho.  so set up a single link with proxy geo, then pack it and use a name attribute, then do your copy to make the chain links.  that is then your geo for your sim.  i'm trying to remember which bullet geometry type to use -- just run thru them and use the one that makes the bullet geo look retain the sphere shapes you set up.  the docs should have a section on the whole proxy geo and dop import thing.

 

if you have a any kind of instantaneous forces, you may need even higher subframes on the dop (20+ isn't crazy, so long as your sim times don't bog you down).

 

The concave bullet geo seems to be representing the spheres correctly. However, my sim times are through the roof, even with just 3 links, and even with a substep of 20+, they seem to be breaking, even worse than without the proxy geo :/

chain_test_v4.hipnc

Edited by 7ofDiamonds
Link to comment
Share on other sites

There are several steps to optimise your scene. 

First uncheck Create Packed Prims  on assemble SOP. Then promote names to points. Or just remove assemble and set the names using wrangle.

Then go to DOPs and set geometry representation to Convex Hull. Check 'Create Covex Hull per set of connected polygons' and thats it you re back in business :D

 

EDIT: even better : it also works with 'Create Packed Prims' turned on and without any change in SOPs, BUT you have to use Active object instead of Deforming active object.

 

Cheers!

chain_test_v5.hiplc

Edited by rayman
  • Like 1
Link to comment
Share on other sites

There are several steps to optimise your scene. 

First uncheck Create Packed Prims  on assemble SOP. Then promote names to points. Or just remove assemble and set the names using wrangle.

Then go to DOPs and set geometry representation to Convex Hull. Check 'Create Covex Hull per set of connected polygons' and thats it you re back in business :D

 

EDIT: even better : it also works with 'Create Packed Prims' turned on and without any change in SOPs, BUT you have to use Active object instead of Deforming active object.

 

Cheers!

 

Thank you so much Pavel! The collisions seem to be working very well this way! 

I tried using Create Packed Prims, but I seem to be losing the names from the groups (I created an output group in the copy sop). 

 

I also added a DOPimport with "Transform Input Geometry" on and plugged my beauty geo into the it. It doesn't error out, but it shows nothing in my viewport. I thought it was something to do with the Packed Prims since they lost their names, but even with the Create Packed Prims turned off (and naming in tact), it doesn't seem to be displaying anything at all.

 

I really feel that it's caused by the Packed Prims but I cannot pin point it. I tried it with just a simple box as proxy geo, and a sphere as beauty geo, and it seems to be working fine as an RBD object, but not as a Packed object.

chain_test_v6.hipnc

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

Hey guys! As promised, here's the finished piece. Would love to go in and fix some things with the smoke and some artifacts, but this is it for now!

https://youtu.be/r0SrUmXZMgA

 

Would appreciate feedback!

Also thanks to Pavel and Miles for helping a lot with the chains!

Edited by 7ofDiamonds
  • Like 1
Link to comment
Share on other sites

that is a VERY good sim.

 

nice job!

 

Thank you very much Michael! I really appreciate it!

 

Awesome! Can I share it around?

It's setted as unlisted so I think it's better to ask first.

 

Hey Alvaro! The reason it's unlisted is because it's not completely finished yet. I would probably take another week or two to go in and fix some issues with the smoke, lighting and stuff. Once that's done, I'll update this thread. But I don't mind if you wanted to share what I posted above :)

Link to comment
Share on other sites

  • 2 weeks later...
  • 3 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...