I've been banging my head against the problem for a while - it seems like it shouldn't be all that difficult, but finding a solution that fits my needs is proving a little challenging.
Essentially all I want to do is spawn some particles that are spread out in random positions, move them into the shape of a 3D object then move them back to random positions. Ideally, being able to repeat the process so the particles form between multiple different object shapes in their lifetime would be good, but we can probably work around that. The closest I've gotten to what I want is firing the particles at an invisible collision object, then dampening all of the velocity so that they effectively stick the surface, but the result isn't great.
We're doing work for mobile VR so don't have an enormous amount of power to throw around and are working with 2018.3.6f1, so might not have the absolute most tools. Also, no one here has much of an idea of scripting for particles, so we're kinda stuck with Shuriken.