Jump to content
none

Differential curve growth

Recommended Posts

added some attraction and repulsion forces so it will fill up the volume.
still sometimes the line can escape the bounding object but hey! maybe someone here will fix it
if you will run it you will see the green parts indicate the point is being attracted to the surface and if it is red it is being repulsed by it

diffrenial_line_grow_B3.hipnc

 

growth.gif

Edited by leohak
  • Like 1

Share this post


Link to post
Share on other sites

Just wanted to post this as an example of using this technique as foundation for something else. Scene file in the Vimeo description. :) 

 

  • Like 2

Share this post


Link to post
Share on other sites

Nice thread with interesting topic.

My two cents to this topic:  

- solver which allows structure to separate grown parts from initial structure when some condition is met and continue to process those parts same way it processes starting structure.

In attached example I tried to keep things as simple as possible. The whole magic is inside solver inside for each loop, where shape is tested against conditions if physical distance between two points is small enough and there is more than K points on the shape in between them, separation occurs.  This example works in 2D but with this concept it can be extended to work in 3D space. Instead for searching if two points are close enough you search for 3 points which form triangle whose area is small enough but larger than zero.

gs.mov

gs2.mov

Both examples are in the scene file   

DiffGrow_separation.hip

 

cheers            

  

dgs.mp4

  • Like 3

Share this post


Link to post
Share on other sites

Hmm, there's a slight weirdness going on in those clips so when I get time I'll put on a face mask, some rubber gloves, and investigate the mysteries of this organic compound. :)

Share this post


Link to post
Share on other sites

Hey guys, 

I very new to Houdini and was messing around with the differential line growth tutorial from Entagma.

Instead of using a single circle I used a copy and transform node to have that growth relative between multiple clones, then after the solver I want to translate each primitive on the z axis.

I have been able to achieve it manually but it's just the opposite of what houdini is cool for, so I tried the for each loop trying to translate each primitive by increment but it didn't work.

I'm sure it's very easy that I am missing because of my lack of knowledge but should be for sure piece of cake for most of you.

Cheers!

Capture d’écran 2017-12-23 à 07.52.34.png

  • Like 2

Share this post


Link to post
Share on other sites

That looks really cool, Jonas, and loops are tricky sometimes, depends on what you're trying to do, but post the scene file with the loop and we can see how you thought - and I'd love a scene file either way, that thing looks really cool... :D

 

Share this post


Link to post
Share on other sites

Thanks, much appreciated. And just to be clear, I don't remember how Entagma set this up, I actually don't remember 90% of my own setups I posted on Vimeo, I have to go back and check all the time what the hell I did on one setup or another when people ask me how I thought, etc... :D

 

  • Haha 1

Share this post


Link to post
Share on other sites

Man, it's really badly threaded, though, checking the performance monitor, the relax node isn't multithreaded so it'll just drag the whole thing to a crawl... I really would recommend setting this stuff up in POPs instead, using either the POP interact or the grain solver, it's just so much faster as they are multithreaded.

 

And what expression? In the transform? That will fetch the information for which iteration you are currently on which is a detail attribute of the node I pointed to. :)

Edited by Farmfield

Share this post


Link to post
Share on other sites

Yeah, it's a lot of fun and you can do really cool stuff. Here's a setup I'll go through in my upcoming course, whenever I'll get that out - but yeah, it's in the works. :)

 

differential_wave.gif

  • Like 2
  • Thanks 1

Share this post


Link to post
Share on other sites

Ok now I'm trying to constrain the growth within a letter but also copy it over multiple scattered points on the letter. It seems to work fine except on the for each, it translates all primitives instead of having the 3 groups starting from the origin. I can't really visualize how I could achieve this, I tried to have the copy to points before the copy/transform but the scale is relative to the SOP centroid.

loopcopy to points.hipnc

5a3f8fc01e3b8_Capturedecran2017-12-24a03_29_59.png.68e63a2f7a5cf08c6d902fff0d5df590.png5a3f8efb8d206_Capturedecran2017-12-24a03_25_35.png.71b4c3a95caea7d0deba35b8f55f50dd.png5a3f8f5f64b4d_Capturedecran2017-12-24a03_28_17.png.dae07190c4ef1525303b65df32ded80f.png5a3f920d87421_Capturedecran2017-12-24a03_39_43.png.7e7fc16345fd50b36a64fe8482bab56f.png

Capture d’écran 2017-12-24 à 03.25.42.png

  • Like 1

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

×