PDA

View Full Version : Freeze Feild on particles with goal object?


TechnicallyArtistic
02-17-2007, 11:19 AM
So here's what I need. Particles flowing down a tentical. Some of the particles need to die randomly as the travel across. Some need to float off. And some need to stick to a floor plane and either stay or die there.

What's flowing down the tenticales is kinda like bubbles. Idealy I'd like them to kinda travel across the surface like suds. The plan is make a few emeiters for each effect break down. Floating, sticking, and staying and dying. Also, as they get to the tip of the tentical I need to make sure the bubles aren't just overlapping each other a bunch and that we maintain some volume between the bubbles and the tentical.

As far as I've gotten is I have a nurbs tentical with a ramp controling U and V goals for the particles. The particles start up top the tentical and via expression and ramps travel in a straight line down the tentical at various speeds and for various distances. This is pretty much the same set up as in the gnomon video tutorial where they have all the animated sprite guys running across a plane. After that I was trying to see if I could make a freeze feild, like in this tutorial here (http://www.highend3d.com/maya/tutorials/dynamics_fx/231-4.html). But when I combine the methods the freeze feild doesn't work. Best my brain can wrap around it is because the goal u and v isn't per a particle?

I don't know that I'm too worried about the floating away part. There's enough examples out there for things like smoke and such. But the traveling down and sticking to the floor part I'm struggeling with a little.

Oh yeah. To make things more compled and add another layer of dificulty, I think this thing has 5 tenticales, so if the particles reacted to each other, that'd be even better.

Anyway, if anybody has some advice and or demo files, it'd help a lot.

FloydBishop
02-17-2007, 05:28 PM
If you're trying to use the freeze field for the particles that touch the floor, why not just alter the settings on the floor to catch the particles and lock them in place? Try upping your friction and such on the floor. You may need different floor objects for the different sets of particles if you need them to react differently when they hit the floor.

If they need to flow across the surface first, before locking into position, you could set up a dampening field for these particles so that they would slow to a stop.

Those are just some ideas off the top of my head. I may not have understood what you are trying to do.

TechnicallyArtistic
02-17-2007, 07:39 PM
I had tried setting up a colision object with a really high friction, but the particles just kinda vibrated around when they hit it, and eventualy made it past some how. The higher the fiction the more they wildly vibrated around.

I'll try an dampening feild on the particles. The issue I have at the moment is that the reaction needs to be assigned per a particle, as far as I can tell, and since the particles are driven down by a goal v ramp, it seems to solve over the feilds and the feilds don't seem to do much.

TechnicallyArtistic
02-19-2007, 01:53 AM
Ok, I totaly need to start over on this (and stop asking these questions at 5 in the morning right before I decide to stop for the night cause I can't stay awake).

So here's what I've done.

I have omni directional particles being emited with a nurbs cone as their goal.

I've got them set up to folow down the cone by hooking up a ramp via the aray mapper through goalU. The ramp has a fractial set up that effectivly makes collums of variations of grey. The idea is the particles will use this ramp to flow down a certain length of the ramp before dying.
I have the ramp set up to goalUUPP as well, so individual particles pick a random spot side to side on the ramp so they all live for various amounts of time.

The goalV is a random number so the particles are placed randomly around the cone as they flow down.

So, the next iteration of what I'm trying to get is if those particles encounter another object like a floor, they stop flowing down the cone and stick to the floor. I can make a nurbs floor plane, make it a collision object, turn the resiliance down to 0 and friction up to one, and get half the effect I'm going for. If the cone hits through the particles stop and stick to the floor.... until the cone lifts off and then the particles jump back to the cone and continue on their way.

So what I need to do is find a way to get these particles that are passing down this cone to stop and stick to the floor if they come in contact with it and not go back to the cone if the cone removes its self from the floor. And I need it per a particle, so that the particles that don't hit the floor don't jump over to it and coninute just doing what they were doing.

Also, if anybody can tell me how to get these particles to colide with each other (I'm using spheres) that'd help a lot too. So it fills up the volume some, rather than them just passing through each other. I'd love it if I could get them to move around each other. I saw a tutorial kinda like that on High End about intercoliding particles, but the effect I saw jittered too much for my needs when sitting still. I need a nice smooth flowing motion to everything. (think soap sudds running down the side of a car or dish or something like that is pretty much what I'm going for.)

Aikiman
02-19-2007, 02:40 AM
you could try using a collison event to kill the particle and emit a new one that way the new one wont have any goal influence on it which would sort that problem of ytour cone moving away again. Also lowering the conserve value down from 1 a little may help with the 'vibrating' you are getting.

mandark1011
02-19-2007, 03:00 PM
I think an event is definately what you want for the floor sticking. instead of emitting another particle upon the event why not write a runtime that queries when the event happens.

ex

if (event == 0)
{
goalPP = 1;
conserve = 1;
}
if (event >= 1)
{
goalPP = 0;
conserve = 0;
}

TechnicallyArtistic
02-20-2007, 10:02 AM
Ok. Kinda new to doing Dynamics here, and I obviously don't know my way around yet.
I figure the collision event thing is what I'm looking for. I was trying to just write a run time expression for the effect before, but wasn't haveing any luck.

Here's the file I've got running so far
download here. (http://home.comcast.net/%7Eevil_the_cat/newTenticalTesting.rar)

Can you take a glance at that and give me just a little more direction on the collision event? I think I was able to set up a collison event, but I couldn't figure out how to refference to it in the expression
I think I tried something like

if (event -name floorstick == 0)
{
goalPP = 1;
conserve = 1;
}
if (event -name floorstick >= 1)
{
goalPP = 0;
conserve = 0;
}


But I'm sure I don't totaly grasp whats going on yet, so any direction on what I'm doing wrong would be helpful.

While I'm at it can any of you recomend any books? I'm usualy pretty good at picking up new stuff, but I don't find the Maya help files particularly useful when it comes to teqniques so much, and the learning curve seems to be big in just trying to find useful resources to go through in a timely manner.

mandark1011
02-20-2007, 03:14 PM
when you create a collision it isnt creating a collision event.
After you create your collision you need to then choose the particles menu again and click on create collision event. This will give you an extra attribute in your expression editor called event which you can query in runtime. I dont think you need to call a name either just event, but im not sure how your shot is set up cause im at work and unable to download it right now

the Gnomon dvds on dynamics sure helped me when i was first learning....i still refer back to them occasionally for specific techniques

TechnicallyArtistic
02-20-2007, 10:23 PM
I gotta stop doing this stuff at the end of the day when I'm falling asleerp.

That script you gave me works. What I did was I did one without adding the particle name at the head of the attributes, and then I did one with them added, but then I added the name flag at the same time.

So I just tried it and it seems to be what I'm going for. Thanks for the info.

CGTalk Moderation
02-20-2007, 10:23 PM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.