(GLSL) Pointcloud Relax .tox

Hi! (wasn’t allowed to post in the shared tox category for some reason)

I’ve recently made this .tox, which takes a 2D texture as input, where each pixel represents a point. It relaxes the points based on their radius and the number of neighbors.

With the help of my good friend GPT, I tried to improve performance by using a compute shader, as the need for multiple passes can make the computation too slow to run every frame if needed. However, I’m not sure if I’m implementing it correctly, as the performance improvement isn’t that significant. That said, it works! If you have any ideas for improvements, feel free to share your thoughts.

The next step would be to find a solution to prevent jittery results when applied to moving points—perhaps by filtering the movement over time.

Moving points still need to stay close to their neighboring pixels, as I’m using them to check proximity. This is another area that could be improved, though calculating the distance of every point around might be too expensive.

Anyway here it is !

image
pc_relax.tox (10.9 KB)

nice example/shader. To make it more clear you could put your viewers into Normalized Split and View as Points where applicable. A bit of time-filtering to reduce jittering may help. Cache TOP could be used for that.