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

117 posts in this topic

notting

Edited by none
This is a rough copy of the original post deleted by the author.
2 people like this

Share this post


Link to post
Share on other sites

Hmm, feed the initial line into a POP network, use a per point repelling force, then use an add SOP to get it into a line again..? :)

Share this post


Link to post
Share on other sites

^ my thinking exactly, though using a POP network for the forces and a SOP solver in pops for creating the line, resampling, and piping the points back out into POPs.

 

Doing it manually in a solver with PC lookup makes it even more controllable, sounds like an awesome setup and will absolutely dissect this one! Much appreciated!

 

Oh, and please don't casually use terms like slerp like that, someone's gonna get an aneurism. :D

1 person likes this

Share this post


Link to post
Share on other sites

Thank you Richard, this setup is a lot of fun to play with.

Share this post


Link to post
Share on other sites

Hurray! That POP version is ace. I played with it for awhile, its alot more stable than my solver version, and there's so much flexibility with all the POP forces. I also failed to make it stick to a surface though. I feel there should be a pop node that just does this. I cant get POP attract to work well.

 

In my solver version, I was doing the resample wrong, and I switched to what you have in yours, re-sampling based on size of the line. I got a bunch of stability back from just that change.

 

Here it is again, with the resample fix and a bit of smoothing on the line. And some quick renders.

 

post-7586-0-77984400-1459361644_thumb.jp

 

post-7586-0-23462300-1459361657_thumb.jp

 

post-7586-0-45488100-1459361664_thumb.jp

16_03_30_grow_line_SOLVER_01.hip

5 people like this

Share this post


Link to post
Share on other sites

Awesome stuff guys, in order to constrain it to a surface, I used inverted surface normals as velocity field (advect by volume pop) and the same geometry as static collision object, it's not perfect as steep or sharp parts on the geometry (ears) makes the particles go wild. Still a lot of fun to play with :)

post-7548-0-85057400-1459369380_thumb.pn

Edited by Yader
3 people like this

Share this post


Link to post
Share on other sites

What I like best with this setup is I didn't even have to set it up myself, I just vaguely outlined the idea and some genius took it from there! :D

 

Edit: Wow, after looking through the scene file, I must admit I thought the POP approach would work but not that it would work this good. That's absolutely awesome!

 

About surface control, nothing gives control than converting your mesh to a volume, doing a volume lookup in VOP's, then just use the sample value in a displace along normal (or set it up manually) to shift the point position using the gradient as the normal value. The cool thing using this technique is you can pipe additional values into the displacement, like having lower number particles displace into the mesh while keeping higher numbers at the surface, you could basically fill an object with one of these setups that way like Raphael Gadot did in this setup!

 

Edited by Farmfield
4 people like this

Share this post


Link to post
Share on other sites

Couldn't help myself, I dug into this a bit more tonight. Volumes were definitely the next step, and I've got them kinda working in my setup (this is my first bash at volumes). The thing I haven't cracked is that they loose the shape I love so much in the surface versions. I need to work on a way to get the surface tendrils to prefer to stick to the surface if possible. I have a few ideas, but nothing that I managed to hook up tonight.

 

Right now the volume versions are quite cool, but look too random to me. The volume version has another force called contain_force. It needs to be high-ish to do anything useful.

 

post-7586-0-00191300-1459401409_thumb.jp

 

I also added a second set of points in the surface version that act as another repelling force. It looks really cool. The line tends to wrap around them creating a circular entrance point. This is the exclusion force. Should be easy to hook up for the volumes, but I haven't done it yet.

 

post-7586-0-42221300-1459401419_thumb.jp

 

Anyway, i'll render an animated version soon. If the settings are all sensible, the wires tend to be pretty stable now.

 

 

16_03_30_grow_line_SOLVER_01.hip

3 people like this

Share this post


Link to post
Share on other sites

A nice evolution of the concept.
There is a little bit of additional setup to prepare a shape other than the torus. Initially when I used the font the line did not "cling" to the shape. But after centering it on the world origin and adding more faces with the Divide node, in bricker mode, the line eventually took hold.

post-12295-0-39639500-1459435712_thumb.p

 

Because the resulting line is open we can measure the length and use that to drive the polywire radius, here the line is thinner at the start compared to the end.

1.0-$PT/($NPT-1)/100

post-12295-0-19134500-1459445669_thumb.p

 

And, of course, random sized Wire Radius.

rand($PT)/50

post-12295-0-47175200-1459446061_thumb.p

Edited by Atom
4 people like this

Share this post


Link to post
Share on other sites

Nice results!

 

I made a few gifs of my system so far. You guys are all into doing this in POPs, so I might try to convert my forces over. Shouldn't be too hard. My solver version and the POP version have pretty different movement to them. Its so interesting to play with this!

 

surface growth

 

post-7586-0-60650300-1459457860.gif

 

volume growth - you can see the trouble I'm having with the endpoints of the line in this one

 

post-7586-0-62199000-1459457869.gif

Edited by rich_lord

Share this post


Link to post
Share on other sites

I like solver approach since it SOP. It seems further points getting more repelling force.
 

zerotoone = fit01(distbetween, 0, maxdist)

Expression looks a bit strange for me. Equivalents are:

fit(distbetween, 0, 1, 0, maxdist)
clamp(distbetween, 0, 1) * maxdist

Is it intentional?

Edited by f1480187
1 person likes this

Share this post


Link to post
Share on other sites

Controlling the repelling force distances for the POP setup is dependent on three things, the force, the drag settings and - interestingly enough - the SOP solver resampling length. It took me a while to get a hang over how they were acting in relation to each other, but once I realized what tweaks gave what result, the setup became very controllable.

 

And I'm doing something really fun with it right now and I'll post the finished result on Vimeo and link it here when it's done. :D

Share this post


Link to post
Share on other sites

Someone at work dared me to try and apply this to solid shapes, here it is.

 

It's super unstable, even the tiniest of changes will make it explode, and the resultant shapes don't have the elegance of the curves. Still cool though. :)

 

post-7292-0-06176200-1459521474.gif

 

surface_grow_pops_3d.hipnc

3 people like this

Share this post


Link to post
Share on other sites

Nice catch f1480187! 

 

You are right, I misunderstood the fit01 function. Next time i'm in this file I'll find out if correcting this makes my effect stop working!

 

Also - Super cool mestela! I'm also working on a surface based version of this effect, but am coming up well short so far. The geo keeps freaking out! The remesh node is so sensitive.

 

The original posted thread has a few nice surface implementations, and of course, there are these guys for some mega inspiration! - 

Love their work.

4 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