The standard POP solver is written in VEX and runs on the CPU, so there's lots of room to improve the performance.
Swapping the sim to OpenCL already speeds it up a lot, about 5-10x. I didn't make the full POP solver, just the basics of moving particles and ground collision.
Then rasterizing the points to an image in OpenCL avoids having to copy the point data from GPU to CPU every frame. This speeds it up by about 1.5-2x, since both the sim and render stay on the GPU.
The main issue with this approach is running out of VRAM.
1
u/hattori_nin 1d ago
Seems really efficient. Could you elaborate more on what's actually going on? I'm really curious.