Is there a way to move particles within a prt volume. And I don’t mean with a noise modifier overall but actually getting the particles to move around inside the volume and maybe even outside the volume somewhat (within reason)?
The PRT Volume object takes the surface of the mesh object and converts it to a level set. In the process, a voxel grid is generated and one or more particles are created inside the voxels that are inside the volume. This happens on each frame and if the geometry is changing, NEW voxels and NEW particles might be generated on each frame, without any connection to particles on previous frames.
Thus the PRT Volume cannot be seen as a Particle System since the particles do not “live” in the volume, they are born on each frame independently without any historical connection to particles from previous frames, not unlike the way vertices of 3ds Max procedural objects are deleted and recreated on each frame.
What you can do of course is save a single frame from a PRT Volume to a PRT file, then load that file using a PRT Volume and either reload the particles into Particle Flow or animate them yourself using a Krakatoa Channels Modifier. In the former case, you could use the Krakatoa Collision operator to collide millions of particles with the backside of the source mesh to prevent the particles from exiting. For the latter case, the upcoming v1.6.0 of Krakatoa will support Velocities from a single frame PRT file, so it will be possible to produce a history-independent animation of particles moving linearly based on the current time, the original Positions and the original Velocities. See here: software.primefocusworld.com/sof … mation.php
Obviously the second case does not confine the particles to the volume, so the PFlow approach is probably what you are interested in.
that’s pretty damn amazing.
Hmmm… There’s no way to do history dependent animation in Krakatoa KCMs then… Hehe, I know that’s the point, but it never occurred to me. You can’t advect particles though a vector field because you can’t retrieve the position at the previous time step. I wonder if you can overload the PRT’s, saving them out and loading them in with the same PRT loader just with an offset in time. Darn weekend… I need to get my home license of Krakatoa.
As I might have mentioned already, we did some prototyping in that area. So it would be possible to have a PRT System object that keeps track of certain channels like Position and Velocity to perform history-dependent simulations. It was decided not to develop it further, at least not for 1.6.0, but it looked promising.