you should check out lerp() and the fresnel isn´t very correct... You need to get use the pixelposition in worldspace (you will need more vertices for the water...) and I am pretty sure that you don´t have to convert the valuerange. Other than that it looks very nice