PDA

View Full Version : Particle trail


bertjenkins
02-16-2011, 12:01 AM
Hi

Over the years I've never quite worked out how to emit particles and then have each individual particle leave it's own trail behind. I don't mean smoke or fluids (or streak particles) i just mean that the motion of each particle is left behind permanently so that it forms a 'tube' of particles that live forever, one particle thick, with no gaps, and no movement.

I've done it by emitting loads of particles from a sphere (with a speed of 0) and then moving the sphere, but this is really inefficient, as obviously you have to keyframe the sphere.

any ideas?

thanks in advance!

hkspowers
02-16-2011, 01:38 AM
Particle Trails in Maya (http://forums.cgsociety.org/showthread.php?f=86&t=851283&highlight=particle+streaks)

bertjenkins
02-16-2011, 10:33 AM
Wow thanks!

eaclou
02-24-2011, 09:22 PM
Hi everyone,

I followed the link to the sigillarium blog ( http://www.sigillarium.com/blog/lang/en/228/ ) and got an example scene working pretty well, but i'm having the same problem as a commenter who said:


Thank you very much for this high level tutorial Sagroth! Its a great contributrion and very appreciated. About your last post, yes, it´s clearly understandable what the script does in terms of birthTime and for lifespan related ramps, this works fine. I´m using Maya2009 right now and i got the problem, that with fields (tested gravity and uniform), i still get the “chunk” drop. I guess we need to add the trick to active the field per particle a short amount of time after its creation.
I've been testing why it has not been working for me, so I added an expression on the trail particle to print out its "birthTime" attribute to check.

In my scene, every particle instance prints out "0", even though when I added a print function to the main particle to check the value of birthTime that I was inputting, it was correct.

In his example scene, the printout on the trail particle behaved as it should.

The code is identical, so I'm not sure what's going on -- I tried to change the lifespan modes to all the different kinds, but it still prints "0" for birthTime and age.... I noticed his example scene used Maya 2008, and I'm using 2009 --surely the mechanics of birthTime were not changed? Still, the 2008 example file still works when running in 2009, with smooth dynamic field results.

HowardM
02-25-2011, 12:34 AM
why isnt this a check box now in maya 2011? ;)

eaclou
02-25-2011, 02:53 AM
I can now get the print command to display the correct value of birthTime (I had to start fresh and set lifespan to NOT "live forever" BEFORE writing the expressions.

However, the behavior is still wrong, and now that I know that age and birthTime actually ARE being affected, I have even fewer ideas about what could be going on. I can't find any relevant differences between the example scene (which works on my computer) and my built-from scratch one that could explain why i'm getting the "chunks" of particles and not a smooth trail with a gravity field

Anyone have any ideas?

eaclou
02-25-2011, 10:11 PM
Pretty sure I figured it out, and the answer appears to be that nothing was bugging out, just that the example scene used a bit of a trick that the author never mentioned. For those trying to follow along and are interested:

-interpolating the birthTime attr of the trail particles does nothing at all to smooth out the particles on its own. You will still see the "chunk"ing effect if you apply a field to the trail particles.
-you must add a per-particle attribute of the field_magnitude to your trail particle shape, and then connect that attributePP to a ramp with the particle's age as an input. (The author of tutorial never mentioned this PP field attribute/ramp - but it is the driver of the functionality)
-somewhere along that ramp you need a transition from black to white (or whatever values you desire, so long as there is a transition - a hard switch to another value will result in chunking).

The tutorial author's scene used a ramp from black to white for the entire range of the particle's age, so that age would have an effect on how strong the field's magnitude is for that particle, thus resulting in a smooth interpolation. With this ramp, however, gravity is significantly weaker overall than it should be (doesn't reach full-strength until a particle is almost dead). The workaround is to have a very short transition from black to white at the bottom of the ramp, ideally the equivalent of 1 frame duration, so that after 1 frame the particle will be influenced by the field at its actual magnitude.

Phew... took me longer than it should have to figure that out.

CGTalk Moderation
02-25-2011, 10:11 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.