PDA

View Full Version : Particle animation during path follow


gubenhinden
01-22-2010, 01:45 PM
Hi there,

i'm stuck on a problem and cant find any help so far.

I'm working on an animation, where particles are emitted with PF source for 50 frames, a wind modifies the flow and follow a path afterwards with the speed by icon which im moving with a path constraint along the path. Thats all working atm. The problem is that the Particles stop to animate (getting faster, spinning arround etc.) as soon as the emitter stops spawning particles.

My whole animation will show an text object disolving into particles which are flying through the room and build another object afterwards.

my other question is if there is any chance to destroy the object itself and use those particles to move along the path. Im working with a animated gradient ramp in the opacity channel of the map to fake the disolving of the object and emit particles right in time...
i tried to destroy the object with a parray and use those particles but i havent figured out how thats going to work. Also with the Wind force its not realy handy to time the right start and stop point right in time to the gradient ramp animation

thanks alot in advance :-)

PsychoSilence
01-22-2010, 04:23 PM
Dear Fabian,
you can cut up you text object with free scripts from script spot, just check what suits your purpose best:

http://www.scriptspot.com/search/node/fracture

then reset Xform on the fragments(eventually you have to center the pivot of each chunk too) and use a birth script to make each chunk a particle at the position of the chunk. A procedure is described in another thread as well: http://forums.cgsociety.org/showthread.php?f=206&t=467448&highlight=fragments

check SplitItUp by Rivendale:
http://forums.cgsociety.org/showpos...12&postcount=35 (http://forums.cgsociety.org/showpost.php?p=2699512&postcount=35)

and here´s a script that links fragments to particles and spawns only as much particles as there are frags:

Quote:
on ChannelsUsed pCont do
(
pCont.useAge = true
pCont.useTM = true
pCont.useShape = true
)

on Init pCont do
(
global ChunksArray = $frag_* as array
)

on Proceed pCont do
(
t = pCont.getTimeStart() as float

if t < 0 do
(
NumChunks = ChunksArray.count
for i = 1 to NumChunks do
(
pCont.AddParticle()
pCont.particleIndex = pCont.NumParticles()
pCont.particleAge = 0
pCont.particleTM = ChunksArray.transform
pCont.particleShape = ChunksArray[i].mesh
)
)
)

on Release pCont do
(

)


note that $frag_* can be replaced with the name of your fragments. the wildcard (*) makes sure every frag will be included from frag_0 to frag_n.

NumChunks = ChunksArray.count counts the Fragments.

for i = 1 to NumChunks do
(
...
)
Adds as much particles as there are frags.

Hoffe das hilft Dir weiter. Viel Erfolg!

Anselm

CGTalk Moderation
01-22-2010, 04: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.