Drone Show Houdini

   1907   3   3
User Avatar
Member
1 posts
Joined: Feb. 2024
Offline
Does anyone have experience in creating simulations for drone shows?
I tried to achieve the result with POPNET, it kind of works but the particles/drones can't define the shortest path from the points of the 1st object to the points of the 2nd one.
I would love to get some advice.
Here is the file for review.

Attachments:
Test.hipnc (566.0 KB)

User Avatar
Member
100 posts
Joined: Jan. 2015
Offline
Hello,

Last time I tried to solve this I used this lib :
https://pythonot.github.io/ [pythonot.github.io]

IIRC I had to follow this Entagma setup showcase too :
https://entagma.com/advanced-setups-15-solving-optimal-transport-using-python-and-pot/ [entagma.com]

I have to say that once I had those morphing pair sorted using the POT algorithm, visually it wasn't the most pleasing result, as the trajectory are ofc linear and very "mathematical". So I end up adding a bit of curling noise on the trajectory, and at the end the result wasn't that far from the un-optimal initial version without POT solving :O)

I remember this Junichiro Horikawa video was also very interesting to watch on the subject ! (as usually)
https://www.youtube.com/watch?v=Q0SdwtIlWJE [www.youtube.com]

I can't however share the .hip file
Edited by PaQ WaK - July 5, 2024 13:15:31

Attachments:
Drone.gif (1.4 MB)

Gameloft
User Avatar
Member
2 posts
Joined: May 2023
Offline
Hello,

I am equally passionate about drone swarm shows and have recently explored similar techniques within Houdini to enhance the visual fluidity and precision of transitions between drone formations.

My method involves creating initial geometries, then scattering points which represent drones. To animate transitions effectively, I've developed algorithms in Python and VEX that automatically establish optimal point-to-point correspondences, allowing drones to navigate smoothly from one geometry to another.

Collision avoidance has been a critical focus of my work. I've implemented a straightforward yet robust algorithm in Python, initially accelerated significantly by leveraging CuPy, a CUDA-based library akin to NumPy, optimized specifically for GPU computing (utilizing an RTX 4090). However, recent optimizations now provide comparable performance using CPU alone. For example, determining optimal associations for 10,000 drones takes approximately 200 seconds on CPU versus 180 seconds on GPU, making GPU usage optional.

This fully procedural approach efficiently manages even substantial formations; processing a show involving approximately 2,000 drones typically requires just 40 to 50 seconds.

Here is an example showcasing my approach:
https://youtu.be/UgbsujTqCD4 [youtu.be]
Edited by vagodime - April 27, 2025 07:33:07
User Avatar
Member
8052 posts
Joined: July 2005
Online
I think using the Crowd Solver for this would be interesting.
  • Quick Links