Perhaps one could imagine so, but if looking closer at the scenario, it is obvious that it must be done this way:

The water surface is large, even with LOD it consist of around 50000 vertices. The vertex shader has to calculate the height of each of those during each re-paint. Also not that these vertices are at fixed lcations in the XZ plane.

The boat physics need to know the surface hieght also, but *only under the boat*. This is a question of calculating Y for 16 positions of XZ only. In addition, these 16 XZ pairs are different each time, unless to boat sits still.

A vertex shader is superiorly fast. Consider calculating 50000 vertex positions 80 times per second (thats 4 million height calculations / second) in the CPU. The calculation is not simple at all, so you could say "see you later" to your computer.

As a general rule, a vertex shader is ALWAYS faster. Much faster.

Things should be described as simply as possible - but not simpler [A. Einstein]