catchyid Posted October 19, 2016 Share Posted October 19, 2016 Hi, I have a wall, my goal is to pre-fracture it to use in DOP simulation. I will have two layers of fracture: one layer to create big pieces using VDB, and another (second) layer to break some pieces even further with Voronoi fracture node (see attached) The problem when using VDB (create VDB from polygons, intersect, then back to polygons) is that it creates smoothed surfaces which is problematic in sharp corners, e.g. the crack corners are smoothed and it's easy to spot the entire crack before it breaks. Some possible solutions: 1) increase the VDB grid resolution significantly to capture sharp edges --> not practical! 2) use the unfractured mesh and switch to the fractured mesh once I kick on DOP --> still one will see the crack 3) stretch the borders edges so they overlap and hide the crack --> doable but I am not sure how to do it easily proceduraly , e.g. select border faces and move them horizontally in opposite directions? There might be too much human intervention needed to select the right faces (ps. I am new to Houdini, so I might be mistaken ) So, is there a solid better way to hide those smoothed faces when using VDB nodes other than option 3 ?? One last note, I've tried using Cookie node instead of VDB but it fails, e.g. intersecting two meshes using Cookie node is not guaranteed to work and in my case it always fails. Any feedback would be appreciated crack_design_my_own.hiplc wall.bgeo Quote Link to comment Share on other sites More sharing options...
mine Posted October 19, 2016 Share Posted October 19, 2016 (edited) You can use "convert VBD" to go back to polys, use the second input of this node connecting the original geometry. Also in the same node "conert VDB" switch on "compute vertex normals". Maybe this way you can hide your initial fracturing Edited October 19, 2016 by mine 1 Quote Link to comment Share on other sites More sharing options...
catchyid Posted October 23, 2016 Author Share Posted October 23, 2016 Thanks, this improved the result a lot it's still noticable though, but the camera is far so it's not noticable. I am wondering how big companies manage such situations, do they have ppl really working on these small details (to hide such seams), or they have programmers to fix such problems ... Once more, thanks for your help Quote Link to comment Share on other sites More sharing options...
Atom Posted October 23, 2016 Share Posted October 23, 2016 (edited) I don't think I would use VDB at all, too much overhead. If you are just trying to use some custom drawn crack then just create a curve and animate it using a carve followed up by a polywire. Use the full version as your points for the fracture and use the animated version as the glue bond breaker. This setup demonstrates how to import the animated curve into the glue SOP and remove bounds over time. The only thing I have not really figured out is how to add velocity to newly unbound pieces. then you could really rip through the building. As it stands, they just free themselves and start to become affected by gravity. ap_crack_design_my_own.hiplc Edited October 23, 2016 by Atom Quote Link to comment Share on other sites More sharing options...
Atom Posted October 25, 2016 Share Posted October 25, 2016 Here is another variation on this. The fracture is broken into two types, large chunks and small chunks. The small chunks all lay inside an area defined by a user drawn curve. A null moves along the curve. The position of the curve is copied, via CHOPS, to a box that moves along with the null on the path. Any fracture pieces that the box passed through will begin to fall. If the box does not touch a fracture piece, it will remain frozen, even hanging in mid air. ap_vornoi_interior_crumble_pattern_vertical_1d.hipnc 2 Quote Link to comment Share on other sites More sharing options...
catchyid Posted November 1, 2016 Author Share Posted November 1, 2016 Atom...I really appreciate the time you put in this. I still have to understand your pipeline, I am at the middle of a tight deadline and I am working really hard to get things done. However from the images you shared, it seems that your approach is better than mine. Once more, thanks, and will update you once I test your approach... Quote Link to comment Share on other sites More sharing options...
catchyid Posted November 13, 2016 Author Share Posted November 13, 2016 Hi Atom, finally I got a chance to look at your file carefully! Your method is better than using VDB because VDB created many polygons that made my scene very heavy even for playback (I had to increase VDB resolution to capture the wall details, specially around sharp edges...). The only thing that I still need to investigate is finding an easy way to create unbreakable bonds between big chunks (in your scene you made them inactive so they won't move), so the entire left or right wall acts as one piece. What I did previously is I created three different packed rigidbodies (left wall, right wall, crack) and created three different constraint networks such that walls have bond strength set to -1, i.e. unbreakable. That worked but I don't like it because I am creating three rigidbodies for the same object. What I wish I could do is : if a constraint is inside left|right wall set it to -1, if a constraint inside crack set it to 1000, if a constraint between left|right and crack set to 100 for example. That would require programming somewhere, will investigate that when I have time Anyways, thanks for providing me with your method, it will definitely help (actually I might redo my destruction scene because VDB generated mesh is reaallllly slowing down my playback) Thanks again, Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.