Welcome to od|forum

Register now to gain access to all of our features. Once registered and logged in, you will be able to contribute to this site by submitting your own content or replying to existing content. You'll be able to customize your profile, receive reputation points as a reward for submitting content, while also communicating with other members via your own private inbox, plus much more! This message will be removed once you have signed in.

none

Differential curve growth

120 posts in this topic

Hey guys this thread is awesome! I have been collecting research on topics like this every now and then for a while but never had the full set of skills to implement. Your scene files are a great help.

 

If anyone is feeling suitably adventurous you should check out this journal article on modelling coral growth under the influence of hydrodynamics:

 

http://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1002849

 

Thanks to PLOS the full-text article and PDF are free to read and download.

 

This forum is the greatest!

Share this post


Link to post
Share on other sites

Good stuff Ian, thanks for the .hip file as well!

 

Here's a cleaned-up .hip of the veiny coral growth setup, pretty simple. Probably some bits in there that could be more elegant, I'm open to suggestions!!

 

https://drive.google.com/file/d/0B4ni3j-ZLbj5LU02ajVuX2MxZjA/view?usp=sharing

 

--Dave

 

 

Thanks for the file as well. It's great!  The first popnet in your file (the main object underneat) is about where I had gotten (but using a sop solver instead of pops). The only thing I was basing mine off of differently was the curvature and adding in some age attributes to 'freeze' it over time as well. (again, more like the floraform video).

Share this post


Link to post
Share on other sites

The challenge though is to make it appealing... I love this stuff, but I don't know if we'd wanna associate H16 with fungal growth or alien infections. :)

Share this post


Link to post
Share on other sites

The challenge though is to make it appealing... I love this stuff, but I don't know if we'd wanna associate H16 with fungal growth or alien infections. :)

 

Doesn't need to be fungal, though. :D

 

post-12141-0-62917500-1460625782_thumb.j

2 people like this

Share this post


Link to post
Share on other sites

Just saw this thread - very cool stuff here!

The laplacian growth mentioned earlier is actually pretty simple. Find the laplacian of a sdf (which emphasises high curvature 'pointy bits'), and advect along the volume gradient direction where the laplacian is higher. You can even get away with just adding a constant value to the sdf to push it out rather than doing a proper fancy advection. The trick is in fiddling around with processing fields to keep them smooth, and also adding in some fun custom stuff - eg. also multiply that displacement also by the dot product of the gradient and another vector field.

3 people like this

Share this post


Link to post
Share on other sites

Hey there, 

I was asked to add my solution to this awesome thread so here it is. 

It's rather simple, check the hip file if you like. Theres a vector "self" (pointing away from the spline itself) added to all points, and a vector "surf" pointing towards points densely scattered on the collision geo but only added to points that got pushed outside of the volume. Finally another vector "straight" is added pointing to the center between the previous and the next point, effectively damping the bending. 

Finally I should note that the very last step of the solver is a wrangle that has an animated lerp between the previous' and current frame's shape to safely control the speed of the whole thing in one parameter. Without that it would fill the whole thing in a max of 40 frames and then slow down harshly, but it was too late to tweak the forces and I wanted to render it :)

Cheers!

 

BrainGrowth_v001.hipnc

8 people like this

Share this post


Link to post
Share on other sites

Yeah, I read Jan's post earlier and I thought that setting it up in POPs would do that as easily - and I was correct, thanks Guu for testing it so I didn't have too. :D

And it's really nice being able to set this effect up in POPs, so fast, so simple. 

Edited by Farmfield

Share this post


Link to post
Share on other sites

This thread has prompted me to actually do this as a project in my graduate Houdini class.  Here is the result I have so far, but I am actually going to use it for my final to make a music video.  I am getting an interesting behavior though, which it would be great if someone could take a look at and help me track down the cause.  I have been looking at the code for most of the night and for whatever reason, I am just not seeing what is doing it.  I am doing the solver method and am working on building an HDA out of it to leave with my professor so future students may be able to use it.  The behavior I can't seem to figure out is the contraction.  This is the exact file that I rendered from, and I am only moving the points in one line of code in the solver, so it shouldn't be moving that when my force scale approaches 0, but it is and I am confounded as to where it is getting the instruction from.  Honestly, I like the look and the behavior, I just want to know where it is coming from so I can control it.  Also, has anyone figured out how to control the spacing?

 

personal1.1.hipnc

7 people like this

Share this post


Link to post
Share on other sites

I have made another one for my final in my Procedural Modeling and Animation class... Let me know what you think.

 

3 people like this

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