the particule approach won’t give any z fighting or clipping issues if the particles stays above water, particles don’t write depth. Also, you’ll have to place them in the translucent bucket and have a translucentBucketFilter, but i guess you’re familiar with that.
the dynamic ripple approach is doable, we would just need a generated height map, and use it in addition to the actual height map to generate ripples. The hard par would be to place it at the correct position.
@thetoucher approach is interesting, even only one object (a sort of flat triangle just below the water surface) for the trail could give good results I think. set it to only render depth, and scale it according to the boat velocity….or even cull it when the boat doesn’t move….nice idea.