Jump to content
rdollase

connecting seperate glue networks

Recommended Posts

Hi,

I'm pretty new at Houdini and am trying to find a way to get fractured objects from different glue networks to glue together.  For instance, I want the wood of a window frame to have different glue strength than the glass in the widnow, so the glass shatters more easily than the wood.  But I also want the edges of the glass to be glued to the frame.  My attempts so far only manage to glue every piece of glass and wood together in a third network which is not what I want; I want only the glass pieces adjacent to the wood to glue together.  Is there a way to do this procedurally?

Thanks

Share this post


Link to post
Share on other sites

Isolate the edges in SOP and treat as it's own element separate from the rest of glass.

I image you want jagged glass edges to remain inside frame. If so you can import into DOPs with edges active==0, or use pin constraint or glue -1 value

Edited by Yon Anadeyo

Share this post


Link to post
Share on other sites

Thanks for the reply Yon!  I'm wondering, though, if there isn't a way to do it without having to select specific areas by hand.  For instance I'd like to use this technique on larger sims such as an entire building where the bricks would have one glue strength and the wood frame a different glue strength.  So there would be a brick glue system and a wood glue system but then a third system only for wood pieces and brick pieces that are near to each other.  I thought that, just as pieces in an ordinary glue system are connected only to adjacent pieces, there might be a way to connect to adjacent pieces that are in a different system.

Share this post


Link to post
Share on other sites

I don't think connectadjacentpieces  has a feature to connect to anything other then what is in the input, by its name attribute. There's no input 1, input 2, connect these together. But there is always a way in Houdini, maybe go inside the node and try to make a solution.

I think treating edges as separate element is still valid approach. But you will need to develop a SOP network to prodecurally isolate the edge.

Think, the distance between the points used to fracture, and a point at the centroid of the entire object. Where closer to the edge will be higher value. This attribute can isolate edge. For wood against brick, a simple attribute transfer made work.

Share this post


Link to post
Share on other sites

You can achieve it using something like this:

Later on I made a more generic version called Adjacency Skeleton. Need to update the video sometime :)

Share this post


Link to post
Share on other sites

Thanks Pusat.  I'm guessing there's a way to get this technique to work with pieces from different fracture/glue systems?  Need to find a path to learn a bit more about VEX coding, it looks like, to get anywhere.

Share this post


Link to post
Share on other sites

Indeed, this tool only creates connections between immediate neighbours up to N depth, so you don't need to create unnecessary connections. After that you can decide how to break up your glue network using noise, rules, etc.

In your case you can easily identify the connections that belong to different material by querying the attributes as this node stores original name attributes, and which piece they originate from, etc.

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

×