You would need maya/3dsmax/houdini/(maybe) blender and generate loads and loads of vector fields.
Then create a lot (A LOT, Millions and millions) of gpu particles, and set up the vector fields correctly.
Keep in mind, this will be very heavy on performance.
I would not suggest a beginner to try it, but if you really want to… I wish you all the best ![]()