The demo shows a real-time simulated ocean under twilight lighting condition. To obtain good looking wave crests, a rather large height field has to be employed. With Microsoft's newly introduced DirectX Compute Shader we can efficiently perform FFT on GPU, thus greatly improving the performance and image quality.
The water surface is mainly modeled after Jerry Tessendorf's statistic method described in the paper "Simulating Ocean Water", which is one of the most popular techniques used for water effect in todays games. Although the algorithm itself is capable of producing visually impressive result from a presumed statistic model (Phillips spectrum), previous implementations are often limited to a relatively small height field, e.g. 64x64 or 128x128, due to the slow FFT code path on CPU. For example, the demo shown here executes three 512x512 Fourier transforms on a per frame basis. On a GTX280, the transforms can be finished within 2 milliseconds.