Convex hull will likely not encapsulate the proper shape of the wave mesh, as it “wraps” it completely.
A similar SetCustomTriangleMesh() function compared to SetCustomConvexHull() could be added. However the CustomGeometry component is inefficient for per-frame changing data; I’d rather recommend getting comfortable with modifying a Model resource’s vertex buffers directly (the model may be loaded from disk, or created programmatically, doesn’t matter) in which case you can call SetTriangleMesh() repeatedly. This kind of update is basically “pulling the rug” from under the physics system repeatedly and it will not be able to use any time continuity in the collision detection, so I’d expect poor performance, and possibly misbehaving collision.
Note that there’s a physics geometry caching feature which tries to use cached data for a model if possible, and you’ll need to circumvent the caching by either making the vertex buffer dynamic, or calling
each time before updating.