At least in OpenGL you can use vertex array. May not be fastest but it's 1 way. You can create a single trianglestrip to cover the entire visible rectangular ocean grid. You only need to define texture coordinates once, maybe even X and Z coordinates for vertices too and only change Vertex Y when animating, or is it just texture coordinates that change. Depending ofc how do you animate it. I would imagine normals are not needed with water, and they slow rendering down a bit.