Jump to content

"Banding" effect on pop sim


stefdln

Recommended Posts

Hey folks

I just made this very simple yet cool pop sim which I like a lot.

OrbVideoODF.mp4

The only issue I'm having right now with this one is, as you can see on the vid, I'm having some kind of "banding" effect, or more precisely one can guess the underlying geometry the particles are emanating from and are swirling onto.

And obviously I would like to get rid of that particular thing.

Can someone here give me a hint on how to achieve that ? It would really be appreciated.

Thanks in advance

Cheers

orbsOdForce.hipnc

Link to comment
Share on other sites

What you are calling "banding" seems to be more like a gathering of particles. The popwind acts a lot like a washing machine. It just stirs things around. You can use a popgrain node to push particles apart, but the real problem is that you are adding hundreds of thousands of particles per frame. Try setting your life to 1.0 to remove older particles.

particle_sphere.gif

ap_orbsOdForce.hipnc

  • Like 1
Link to comment
Share on other sites

Hey guys thanks for your time and for your answers !

@Librarian Thanks, you totally got rid of that accumulation thing, unfortunately the drawback is that all the motion got less interesting. But thanks anyway for your help !

@Atom Thanks for the insight. I tried everything you said but as with Librarian's trick, you get rid of that kind of layering effect which I like a lot, as particles can't last for enough time to achieve that look. In fact I tried emmitting like 100 000 particles with a long life span on frame 1 once and then moving them around with the popwind, but the problem still occurs at some point. My guess is that this seems to be related to the way minpos works on a deforming surface, or maybe the flow of the particles is too fast, I can't really tell actually, what do you think ?

I'll keep on investigating.

Thanks to you all

Cheers

Link to comment
Share on other sites

More Experimentos
if you change in POINT SOURCE( SOP SOLVER) Dive inside and change
first Wrangel in SOPSOLVER

#include <voptype.h>
 #include <voplib.h>

int npts = ch("npts");
 int seed = ch("seed");
 float frame = ch("frame");
 int firstpointcount = ch("firstpointcount");
 int firstprimcount = ch("firstprimcount");

for(int i = 0; i < npts; ++i)
 {
  float r = rand(vop_floattovec((float)i, frame, (float)seed));
  int sourcept = (int)(r * firstpointcount);
  sourcept = clamp(sourcept, 0, firstpointcount-1);
  int newpt = addpoint(geoself(), sourcept);
  setpointattrib(geoself(), "sourceptnum", newpt, sourcept);
 }

 for(int i = 0; i < firstprimcount; ++i)
   removeprim(geoself(), i, 0);
 for(int i = 0; i < firstpointcount; ++i)
   removepoint(geoself(), i);

middle change with this..
and have this outside

i@birth = int(10.0 * @Cd.r);
for(int sourcept = 0; sourcept < firstpointcount; ++sourcept)
{ 
 for (int j = 0; j < point(geoself(), "birth", sourcept); j++) {
 int newpt = addpoint(geoself(), sourcept);
 setpointattrib(geoself(), "sourceptnum", newpt, sourcept);
 }
}

Just found somewhere this HM Fun:wub:..file to have FUN

test1.hipnc

te4.jpg

Link to comment
Share on other sites

Here's a solution that keeps the effect looking very similar but removes your problem. It basically does the same thing as minpos but without actually using the source geometry so there aren't any polygons to worry about.

It wouldn't work for any source geometry that wasn't a sphere + noise but it does work here.

orbsOdForceVOP.hipnc

Link to comment
Share on other sites

Yeah, the problem with a minpos solution is that it gathers into strings over time. You get 5, maybe 10 seconds of animation before it all clumps together. In this example I have expanded the sphere and inverted the normal to use it as a collision object for containment. You might be able to use other shapes with this setup.

particle_sphere.gif

ap_lib_test1.hipnc

Link to comment
Share on other sites

Hey folks, just checked out all of your proposals and each one of these rocks !

This is definitely advanced stuff to me, but I will try and understand by myself what is going on under the hood for each file as this is not that obvious to me right now.

Thanks a lot to all of you

Cheers

Link to comment
Share on other sites

@Atom Hey Atom, I'm having a look at the file you just sent a couple days ago, trying to get what you did. 
I'm almost grasping it but one thing is bothering my noob/intermediate user knowledge, I just can't render the particles because the points are hiding behind the biggest sphere and I'm really having a hard time finding a place where I could hide this object.
Could you please explain where I could find a switch that would help me out ?

Sorry if this seems like a dumb question,
Thanks in advance,

Link to comment
Share on other sites

On the DOPNetwork titled "Experiment" there is an Object field. This field contains an asterisk by default denoting the wildcard of all nodes with geometry inside the dop network. If you examine your network you'll discover that there is a StaticCollision node named geo1. When you import everything using the asterisk the collision geometry is imported as well.

Houdini supports some symbolic grammar to allow you to modify this list. You can use the caret symbol to exclude an object from import.

Try using...

* ^geo1

to import the particles but exclude the geo1 collision node inside the dopnetwork.

Untitled-1.jpg

Edited by Atom
Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...