Jump to content
ParticleSkull

Granular Sheet - Can't Rip the Mesh

Recommended Posts

What about the option "constraint break"? 

Maybe you can also play with some attributes exposed in the grain update node. For example the constraint weight? The object could transfer some attributes onto the granular sheed while it tried to cut thourh it. So setting the value on that area to 0 (constraint weight) or to 1 (constraint break) could give more precise control over the area which is meant to tear. Didn't try this but maybe you can get it to work.

Unbenannt.png

Edited by Heraklit

Share this post


Link to post
Share on other sites

How about deleting prims or edges bigger than a specific number?

Because the Farmfield lives for those ugly @$$ workarounds... :D

 

  • Like 4

Share this post


Link to post
Share on other sites

A different approach you can try is to compare the sim point neighbours with the initial point neighbours and use the attribute to delete primitives on the mesh. Have a look at my hip file it's just a quick proof of concept but with some work I think you can get good results with it.

 

granular sheet - ripping it ZJ.hiplc

tear_it_up.PNG

  • Like 3

Share this post


Link to post
Share on other sites

Great setup, Zybrand. Much appreciated - I love when I don't have to figure out stuff for myself. ;)

***

Alvaro - Add a shitload of drag and you got yourself a decent metal rip system. Remember the Monster rip tut w. Pflow? :D

 

Share this post


Link to post
Share on other sites

Hey Johnny, my setup is totally based on that tut :D

I just think it's weird when Max can rip the mesh based on broken constraints but Houdini can't!

EDIT: btw, it looks like I can't put a shitload of drag on it. At some point it kinda looks the same

Edited by ParticleSkull

Share this post


Link to post
Share on other sites

Hi @Zybrand, thx man, you're a genius! It works just perfectly!

I still have some doubts about what's going on there though and I'd really apreciate some help to understand it properly. 

My doubts are all on the vex codes: 

1st - start_n and sim_n are getting the amount of connected neighbours of each point, right?

2nd - difference is checking if sim_n is loosing connections. If it does, @blast = 1.

3rd - why do I need the sim_n line on the difference node? Shouldn't I be able to compare sim_neighbours with start_neighbours directly? Something like: if(i@sim_neighbours < i@start_neighbours)

TDUIdwg.jpg

Thank's ;)

Alvaro

Share this post


Link to post
Share on other sites

In fact I think I got it. 

the line int sim_n = point(1,"sim_neighbours",@ptnum); is just a way to copy the sim_neighbours attribute into the difference node. ;)

Thank you

 

Edited by ParticleSkull

Share this post


Link to post
Share on other sites

Thanks Johnny, next time I'll grab one of your setups ;)

Hi Alvaro, cool I'll glad it works. Yes I think you understand get it, I am setting the initial amount of neighbours before the sim and getting the amount of neighbours after the sim. You have to set the start neighbours before the 2D triangulate because the amount of neighbours changes and I am calculating the the neighbours after the sim to get the new amount. And then the difference node just compares the the values on the geometry you want to tear.

You can probably get better results if you work on the attribute promote -> delete prims part of my setup. That was just a quick test to see if it would work but maybe an edge group can get you better tear lines.

  • Like 1

Share this post


Link to post
Share on other sites

Hey David @Skybar, that's fancy!

It would be even better than Zybrand's excellent solution but, unfortunatelly, it generates these suspended poligons around. Do you think it can have any solution on this?

Jz6ffG4.jpg

/Alvaro

Share this post


Link to post
Share on other sites
Guest tar
5 hours ago, ParticleSkull said:

Do you think it can have any solution on this?
 

CleanSOP -> Manifold-Only Topology.

Share this post


Link to post
Share on other sites

@Skybar Nice one! getting the attribute as part of the sim handy. And good idea to just use the attribute copy to transform the mesh.

Share this post


Link to post
Share on other sites

Yeah, that's it,  thank you @marty! It's perfect now :D

Thank you guys, you're all awesome. I always learn way more than expect on these topics
Cheers,
Alvaro

Share this post


Link to post
Share on other sites

Still very difficult to replicate the behaviour in Pflow, though - but I remember it didn't translate well using Thinking Particles either. But I might try setting this up with bullet and constraints and see what you can get. The great part with packed primitives is, they are points, so instead of unpacking them after the sim, you can simply delete all the packed primitive related attributes and use them as points together with the point deform SOP.

And funny, even with all the control in Houdini, I still miss the TP workflow, it's just so easy to "organize" the particles using rules. Sure, you can do that in POPs using streams, but it just isn't as straightforward as the TP workflow. And note it was 2+ years since I did anything in TP, so this is a pretty persistent feeling. ;)

Edit:

Here's William Wallace's tutorial and the "look" is just over 20 minutes in. [link]

I might try constraining particles to their original height, or have a higher drag in Y than X/Z, that should make them bulge more outwards.

Alvaro, aside from disabling gravity and upping drag, lower the constraint stiffness to keep the particles from "springing back", thus keeping the rip shape - if you hadn't figured that out already. :D

Edited by Farmfield
  • Like 1

Share this post


Link to post
Share on other sites

Hey Johan,
Cool! Would love to see the packed primitives setup.

Thx for the tip on the stiffness! I haven't realised it works this way.

The solution I got to have the metal look is to decrease a lot the Scale Time (0.01) on the Dop Network node. We could also play with the Max Speed and Max Acceleration on POP Grains' Solver tab but for now the Scale Time looks perfect.

  • Like 1

Share this post


Link to post
Share on other sites

Oh, that was a smart workaround, mess with the timescale - great tip. Lowering the speed/acceleration was the first things I did, then lower the stiffness, increase drag and disable gravity. But the timescale basically does the same thing in one setting. Very clever Alvaro. :)

  • Like 1

Share this post


Link to post
Share on other sites

Yeah, i'm a genius! haha

Have you tried the Drift Threshold (solver tab also) ?  It kinda freezes particles below certain speed. Looks cool

Edited by ParticleSkull

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×