Feedback

What's your question?

By: [ Editor ] Asked from United States of America

Particle grid acting like the ripple fx

Hi Everyone,

I am vfx and 3D artist learning the ways of programming and, I got a question for you guys. How could I create a ripple fx in Houdini, Maya and or XSI. I don't want to do it using fluid dynamics nor softbodies. It has to be done using particles. here is what I mean

http://www.youtube.com/watch?v=bqfrNraWtro

This was done using only particles, I am not sure of all of the details in terms of the actual process that was took place in the creating of this "river chocolate fx" but someone told me that those were all particles with math functions.

Anyways, like I said before I am in the learning path of programming so this will be a good exercise for me to play with however, so far my results ==0 I tried sin and cos functions with other fields but I just can't get it to work, ANY HINTS, I promise I'll make it look good once I know how to even start.

Cheers and happy fx

ps: The starting point is a grid of particles then ....???? Martin

  • 2

julian [ Admin ]

Similar to above, you can set the y motion as a function of distance from a point. Then the ripples will be concentric circles like your link.

vector $pos = position;
vector $center = <<100 ,0 ,0>>;
float $distance = mag($pos - $center);
position = <<$pos.x, 10 * sin(($distance / 5) + (frame/12)) , $pos.z>>;

Another option is to set up springs between the particles and use a collision object or a force to get the simulation going.

Or you could use the water texture node. To do this you would use an arrayMapper. Set the X and Z position of particles to the U and V coordinates of the arrayMapper. The arrayMapper output should conmnect to the particle Y position


Hi Martin

A couple of files here

One file has a particle grid that is controlled with the above expression.

The other has particles with an arrayMapper attached. The mapper source is a water 2d texture node with concentric ripples. There is an expression that normalizes the X and Z positions and these values connect to the arrayMapper. the arrayMapper gives back the value it looked up in the waterTexture, and this is set as the position.y value

NN comments
julian
-
, moved your comments here, as they are not answers, but comments on the answer:

I have created two atttributes, the RampPosition UandV where I have added arrayMapper5 and arraryMapper6 outValuePP.

However this does not work. I get only one particle moving for like 10 frames then it disappears.

julian, What did you mean by this? – set up springs between the particles and use a collision object or a force to get the simulation going, Martin

julian
-
– I haven’t forgot about the arrayMapper file – I will get there -been super busy this weekend

martin_61
-

comment comment thee erher e

or Cancel