In computer games and other real-time graphics applications, the ocean surface is typically modeled as a texture or bump-mapped plane with simple lighting effects. This paper describes a system for realistically rendering the water surface in real time. Our system can render calm ocean waves with sophisticated lighting effects at 100 fps on a 680 MHz Pentium III with a GeForce 3 graphics card. The wave geometry is represented view-dependently as a dynamic displacement map with surface detail described by a dynamic bump map. The illumination model includes reflection, refraction, and Fresnel effects which are critical for producing the look and feel of water.