6ril Posted May 4, 2016 Share Posted May 4, 2016 (edited) Hi there, could I pick your brain about what would be the best approach, or even a working approach to achieve this: I need to punch a bunch of holes (square shaped) into a box (red square in the picture). A large box 250meter side and 2 meters height, I mention the size of it because I tried to use vdbs to achieve this, but since I need accurate results, the vdb approach is just not working with such a difference in the dimensions (250x250x2) (or could it?). Also, the holes are overlapping (see picture attached) In other 3d applications, I would work it on a curve level and then extrude it, but I just can't find a way to do that in Houdini :/ At least not procedurally. I need it procedural, as the holes are placed on points via a copySOP, and they will eventually change. I'm attaching a hip file to better expose my goal. Thanks in advance overlapping_holes.hipnc Edited May 7, 2016 by 6ril Quote Link to comment Share on other sites More sharing options...
jon3de Posted May 4, 2016 Share Posted May 4, 2016 (edited) convert your boxes to vdb and back to polys. Use that with the cookie. You don´t get 100 % planar cuts everywhere though. Depends on your resolution of the vdb and what quality you need. Does this help? Jon overlapppingHoles.hipnc Edited May 4, 2016 by jon3de Quote Link to comment Share on other sites More sharing options...
acey195 Posted May 4, 2016 Share Posted May 4, 2016 You might be able to combine the overlapping holes using something like 2d triangulate, then the hole sop could generate some better results. you could also do a 2D signed distance field trick yourself: -bricker the base mesh, for each point calculate the distance to the hole shapes (and make that distance negative if its inside one of the hole shapes) -then displace the points in y according to this distance value. -use a clip sop (below plane) to clip away all the negative values. -reset the points' y position -clean up mesh Quote Link to comment Share on other sites More sharing options...
mestela Posted May 4, 2016 Share Posted May 4, 2016 With that sort of shape, you might be better off rendering it from an ortho camera, then trying the trace sop. It's a bit back n forth (render -> cop -> trace), but can be surprisingly stable. We had some flat animated artwork that needed to be extruded into 3d holograms, it was all done this way. overlapping_holes_1.hipnc 1 Quote Link to comment Share on other sites More sharing options...
6ril Posted May 4, 2016 Author Share Posted May 4, 2016 Thanks guys for your input. I should have mentioned that the accuracy I need is precisely at the edges of the holes. I need sharp 90 degree corners. The reason is that those holes are filled with fracturable geo and I need the connection to be perfect to avoid visibility at render time. So jon3de, as I said in my intitial question, I tried the vdb way, and it's not adapted. acey195, well... err... I'll see if I can decipher what you are kinda describing. Matt, thanks for this method, I will have to try it, but I fear that the corners will always have a little bevel, due to the rasterization of the rendering, but maybe with the proper resolution it might just be fine. May I ask why you did it at such a small scale ? (to optimize the ortho render?) I though it would be something easy, but no : / Anybody know if this would be possible : instead of working with boxes, to work with rectangle curves. Copy one rectangle over all the points, and then, somehow only keep the silhouet, the outer edge only, like a boolean add on curves? That would solve it all. Quote Link to comment Share on other sites More sharing options...
mestela Posted May 4, 2016 Share Posted May 4, 2016 The trace sop takes the image you give it, and traces it within a 1x1 square. that's all. Again, it handles corners and fine detail much better than I expected, you might be surprised. Quote Link to comment Share on other sites More sharing options...
6ril Posted May 4, 2016 Author Share Posted May 4, 2016 3 minutes ago, mestela said: The trace sop takes the image you give it, and traces it within a 1x1 square. that's all. Again, it handles corners and fine detail much better than I expected, you might be surprised. thanks, I'll give it a go and see if the bevels can be avoided Any idea about the curve approach ?? I'm sure I'll need it sometime, and I just can see how to do it. Seems to me that the curve features are really week in H :/ Quote Link to comment Share on other sites More sharing options...
mestela Posted May 4, 2016 Share Posted May 4, 2016 I've dabbled in it, never quite worked as I expected. There's a few interesting threads here, search for curvesect and surfsect. Trace worked for me. Quote Link to comment Share on other sites More sharing options...
acey195 Posted May 4, 2016 Share Posted May 4, 2016 2 minutes ago, mestela said: search for curvesect and surfsect. Oh yeah forgot about that, if you use NURBS for your base plane and use project with your cutting curves and then use a trim, I think it should be quite stable if you then convert it back to polygon with a high accuracy Quote Link to comment Share on other sites More sharing options...
petz Posted May 4, 2016 Share Posted May 4, 2016 attached is another method plus a version using curves. Quote It's a bit back n forth (render -> cop -> trace) can´t you just use the geometry cop instead of actual rendering the scene? hth. petz. overlapping_holes_2.hipnc 6 Quote Link to comment Share on other sites More sharing options...
6ril Posted May 4, 2016 Author Share Posted May 4, 2016 (edited) Petz, thanks a lot ! Far above my vex knowledge but I'll do my best to learn from it. 3 methods I'll call them left middle and right. left isn't working cause the node "removesharededges1" tells me "this node is using an incomplete asset definition...." middle is just perfect! I think I'll use that one. right is well over my head, but can be really useful elsewhere. thanks again Petz ! awesome answer. Edited May 4, 2016 by 6ril Quote Link to comment Share on other sites More sharing options...
petz Posted May 4, 2016 Share Posted May 4, 2016 36 minutes ago, 6ril said: left isn't working cause the node "removesharededges1" tells me "this node is using an incomplete asset definition...." ah, yes, sorry, forgot to embed the asset but you can use "remove shared edges" in a divide-sop instead. petz 1 Quote Link to comment Share on other sites More sharing options...
6ril Posted May 4, 2016 Author Share Posted May 4, 2016 thanks again petz, I owe you a home made fruit juice with mango and oranges. Claimable in south of france. Quote Link to comment Share on other sites More sharing options...
6ril Posted May 4, 2016 Author Share Posted May 4, 2016 Problem solved ! this forum is such a tremendous help, I can't imagine learning H without it. thank you all ! oh and jon3de, thanks as your suggestion did help in a way, made me realize how clumpsy I was when I tried the vdb way Instead of doing it in a smart way as you suggested, I tried it by converting everything in to vdb, then vdb combine... heavy as hell. it's still not the way to go for my goal, but I learnt something Quote Link to comment Share on other sites More sharing options...
mestela Posted May 5, 2016 Share Posted May 5, 2016 brilliant set of example workflows, thanks for sharing petz! good catch on the geometry cop too. man, love learning new ways to use/abuse houdini. Quote Link to comment Share on other sites More sharing options...
Tesla's fan Posted May 5, 2016 Share Posted May 5, 2016 do u mean this? overlapping_holes_foreach.hipnc Quote Link to comment Share on other sites More sharing options...
6ril Posted May 5, 2016 Author Share Posted May 5, 2016 yes I meant that, thanks, but petz provided an awesome solution, in 2 node avoiding a foreach. 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.