This wave renderer shows impulse distortions on a 3D mesh, bridging some CPU logic and GPU.
I created this C++ demo for use in a larger project which required a 3D pool to simulate ripples. The waves combine, clip through each other, and rebound off the sides. The forces aren't 1:1 with reality to give a more consistent and visually pleasing result.
In future iterations, I believe the amount of work handled by the CPU can be pushed more to the GPU.