Force Field from PRT hair


Hi people nice to be here in the forum, i use max by dos days

i have a question about stoke

id like to use a PRT hair as a force field that can be loaded in to Fumefx

i think that the way is to use the PRT-hair to generate the velocity by the spline then create a Mamga field that can be used in to fumefx as a spacewarp

i did a quick test in the magma field:
input particles - here i added the PRT hair
particle query - here i read the tangents
then i multiply the tangents value and i feed it into the Output velocity

but i don’t get any result…i have no error messages but the force field has zero power

any suggestion?!?!?


I don’t see the NearestParticle mentioned anywhere.

The correct approach would be:
*Create a NearestParticle operator.
*Drag from Particles input to create InputParticles and pick the PRT Hair.
*Drag from Position input to create a Position inputChannel.
*Click the button Add Particle Query in the NearestParticle to add a ParticleQuery connected to the same input nodes.
*Pick the Tangent channel, output to Velocity, multiplied by some factor.

Without the Nearest Particle, you cannot tell the ParticleQuery the index of the particle to query.

Alternatively, you can

  • Create a Stoke>PVelocitySplat operator
  • Drag from input sockets to create InputParticles and Position inputs.
  • Enter manually “Tangent” in place of the “Velocity” property to expose the Tangent channel.
  • Uncheck the >Remove Divergence option to get the field verbatim as defined by the particles. If you leave it on, you will get an “uncompressible fluid” field
  • Connect the Tangent output multiplied by some factor to the Velocity output.

Both do about the same, but the PVelocitySplat produces a cleaner field that gives you more options. However, it might be a bit slower.

To get that data into FumeFX, you can then create a Field Force spacewarp (which has its own multiplier, but it creates an acceleration field and not a velocity field, so it will behave differently). Or you can export the field as FXD files.


thanks Bobo!

i’m going to explore the two methods and tell you more :wink: