Currently there is no way to distort UI elements in Roblox.
Effects like bulge, wave or fisheye require rendering the whole UI into an ImageLabel or uploading every element as an image. Both options are complicated and remove normal UI behavior.
It would be useful to have a UI modifier that distorts an object and its descendants while keeping text, buttons, layouts and input working.
This could be used for curved menus, screen effects, perspective UI and animated transitions, like in this post