PFlow Trajectory
displayed with Splines by Anselm v. Seherr-Thoß aka PsychoSilence, Germany
Step 7:
Now we have a wind (and/or other forces) in our scene but PFlow sitll doesn´t know this. We have to drag a “Force” operator into Event 01 and add the forces that should take influence on our particle system.
Basicly this is our particle system setup.
Now it´s gambling time! Play around with the Lock/Bond settings and scrub through your timeline until you get the desired effect.
Have a look at the playblast
of what i got so far:
Final Step: Last step is the execution of a tiny MAX Script while your PFSource is selected. Download Script from here
Now let´s have a look at the MAX Script part of this tutorial. I´m not a scripting god but I will explain a few significant lines of this script to you to convey a better understanding of it.
| |
pf = $
i2 = 1
pTest = false
endOfPFAnimation = 100
endFrame = 100
fIncrmnt = 2
sliderTime = endOfPFAnimation
while not pTest do
(
pf.particleIndex = i2
if pf.particlePosition == [0,0,0] then
(
pTest = true
global numParts = i2 - 1
)
i2 += 1
)
for i in 1 to numParts do
(
newShp = splineShape()
addNewSpline newShp
newShp.name = ("ParticleSpline_" + i as string)
newShp.thickness=0.19
newShp.displayRenderSettings=true
newShp.renderable=true
newShp.displayRenderMesh=true
newShp.adaptive=true
)
for t in 0 to (endFrame/fIncrmnt) do
(
sliderTime = (t * fIncrmnt)
for i in 1 to numParts do
(
pf.particleIndex = i
pId = pf.particleID
if pId != 0 then
(
ParticleSplineShp = execute ("$ParticleSpline_" + pId as string)
addKnot ParticleSplineShp 1 #smooth #curve pf.particlePosition
)
)
)
select $'ParticleSpline_*'
updateShape $ |
|
|
|