Jump to content
Farmfield

POP splitting - understanding groups/streams - 2nd try

Recommended Posts

Ok, so this is about me (and anyone else interested) learning how to manage particles in groups/streams and I'm going back to the type of growth I've done before, stacking POPs, but never managed to get working in one single POP network. Basically, the groups and/or streams just don't act as I expect them too, I just don't "get it", how the streams/groups are handled through the solver cycle...

So this is what I came up with, because if I understand how to set this up, I know I "got it" - so to speak. :D

Here's the "rules".

Blue particles are born from the orange input point on the first frame. Blue particles create a trail of red, static particles.

At a random interval, blue particles replicate a pink particle. Pink particles create a trail of green, static particles.

Pink and blue particles avoid the static red and green particles. Pink and blue particles also travel through a noise field. The noise doesn't affect the red and green particles.

Oh, and the colors aren't just descriptive, they should have these colors.

And it all seems so simple - if I still was in Max, I'd be able to set this up in PF or TP in 10 minutes - but getting this going in a single POP, I can't even get half way before it "breaks", thus the very basic hip file. No reason to supply the 15 ways I failed to do this... ;)

Untitled-1.jpg

 

splittage.hipnc

Edited by Farmfield
  • Like 1

Share this post


Link to post
Share on other sites

Nice, that will be intresting and informative !

when you got the time, I'm wondering why you made that popwrangle (stick in y), is it to stay 2d ? Cause it doesn't seem to affect the particles (they move out of the XZ plane).

Share this post


Link to post
Share on other sites

Hehe, that's actually a great example on how the groups/streams make stuff stop working. If you move the node above the trail, it works. I have no clue why it doesn't apply to all particles no matter the group - it should as no group is set in the node. But it's even worse, because even if you set the first gen group, it doesn't work anyway...

So there's a question for someone to answer, why doesn't that work? :P

Share this post


Link to post
Share on other sites
1 hour ago, Farmfield said:

So there's a question for someone to answer, why doesn't that work? :P

Not sure how TP or Max users work but you can easily debug this in H. Just dive in and you'll see the 'stream_1st_gen' group has lost it's effect at /obj/POPtastic_splittage/popnet/popreplicate1/sopsolver1/pointreplicate1

Send this into SideFx as a bug. 

Share this post


Link to post
Share on other sites

this way it works, dunno yet if it helps tho.

I made another stream (of them all for the moment) to isolate the wrangling.

maybe if you go further (adding the splits) we can check that out ?

 

 

splittage_stick-y.hipnc

Edited by 6ril

Share this post


Link to post
Share on other sites

here is simple example of how streams work, no need to put stream name in group field, POP nodes in the stream affect only incoming stream (or streams if they were merged)

ts_streams_example.hipnc

Edited by anim
  • Like 5

Share this post


Link to post
Share on other sites

Typically, starting a thread, I just got sucked into other stuff and haven't been able to follow up until now. :P

Anyway, Tomas, that's just awesome. This is exactly what I needed to understand how streams work. Absolutely perfect and I huge thanks!

On 5/10/2016 at 8:17 PM, marty said:

Not sure how TP or Max users work but you can easily debug this in H. Just dive in and you'll see the 'stream_1st_gen' group has lost it's effect at /obj/POPtastic_splittage/popnet/popreplicate1/sopsolver1/pointreplicate1

Send this into SideFx as a bug. 

Well, in both PF and TP you need to manually set what you want to debug - it's all closed off. That's why I dropped Max 1-1/2 years ago and haven't touched it since, basically. In Houdini you really got access to all the data, can analyse and manipulayte whatever you want - it's another world. ;)

As for jumping into the pop replicate sub-network, it hadn't even crossed my mind - which in itself is eye opening. I really gotta rethink my approach to Houdini POP's, I really have to get to the point where i "get it" in regard to how the DOP networks handle the data, everything I do is surfing on the surface of DOP's - and it's annoying as hell, Houdini really has a knack for making you feel stupid, hehe... ;)

Share this post


Link to post
Share on other sites

Yup, once Dops clicks it's not too bad. In terms of data usage:

Dops = spaghetti, but, Dops contains Sops too, and, Sops = Dag.  B) Quite a tasty meal!

  • Like 1

Share this post


Link to post
Share on other sites

I think, for consistency, it would have been simpler for new Houdini users if DOPs/POPs looked like the solver, like in this mockup...

POPS.jpg

 

Share this post


Link to post
Share on other sites

this would be really confusing and pretty limiting

you need to realize that every solver can work on completely different data, so it's not like SOPs where you just pass one geometry downstream and modify it

if you understand the DOP flow, then it's pretty logical what's happening in the network, 

but if you limit your view only on solver part of POPs, and limit yourself even more, by assuming all POPs work on Geometry data, then it becomes almost the same as SOPs (with the difference that you solve the Greometry node by node left right up down), and obviously the "last frame" is then automatically the geometry you start with on the topleft-most node

what may confuse you in POPs is stream logic, that creates and uses groups behind the scenes based on streams and their connections, but once you get past that, it's very logical

 

 

Share this post


Link to post
Share on other sites

Sorry for the late reply here, but I kinda got stuck with work... :D

But yeah, it's true. I really don't understand how data flows through the DOP's per timestep, funny enough jumping into solver sub networks often makes way more sense than the DOP context itself. And seeing I really haven't had any issues understanding most other parts/contexts in Houdini, it annoys the hell out of me that I still haven't come to grips with how the data is handled in DOPs.

And it's not like I can't do most things in DOP's, the problem is doing the more advanced stuff, when things start to "misbehave", if I get unpredictable results - as I can't really see (or understand) how the data flows through the network, I'm just lost trying to troubleshoot it.

That being said, it's likely gonna be a doh moment when I finally figure it out. Perhaps I'm somehow trying to overcomplicate it in my mind, or I'm missing something, perhaps something obvious. Either way it's really annoying.

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

×