An Open Programming Architecture for Modeling Ocean Waves
Lawrence M. Lachman · 2007
Typical ocean simulations provide for wave modeling that is extraordinarily restrictive. The closed solution models ocean waves, with frequencies obtained from a particular energy spectrum. This energy spectrum and the underlying wave model are hardwired into the software such that users who wish to use a different energy spectrum, or a different wave formula and methodology are unable to do so. Sophisticated computer programmers in this field (physicists, oceanographers, and naval architects) use their own wave models in order to compute the hydrodynamic motion and frequency response of their ships. However, they have no way to plug that same wave model into existing maritime ocean simulators. Thus, the ocean computed and rendered by these image generators has no bearing on the computed sway, surge, heave, yaw, pitch, or roll of the vessels, and if the vessel's position and orientation happens to look reasonable within the context of the rendered ocean (with respect to the waves surrounding the vessel), then that is merely a coincidence. Our creative solution introduces new algorithms for rendering ocean waves in one unified manner, while simulation algorithms that are not native to any software system perform the generation and animation of the waves, modify the character of the ocean surface, and manage the underlying physics. Presented at the IMAGE 2007 Conference Scottsdale, Arizona July 2007 INTRODUCTION There are many models for ocean behavior, each having multiple inherent assumptions and initial conditions, such that no single approach can be used to generate accurate, realistic results in varying environmental conditions. This is inherent in the nature of the ocean. Ocean water simulation is a computationally expensive process and a difficult problem for applications that require visually plausible three-dimensional effects at high frame rates. Our goals in designing an open architecture for ocean water simulation were to create a flexible and scalable framework (making it truly useful for a multitude of wave models), provide a high degree of visual fidelity regardless of how the waves are defined, and be fast enough to achieve realtime frame rates regardless of the complexity of the wave model. The focus of this paper is the creation and rendering of wave geometry (and associated parameters); and not the rendering of the water surface, such as the color and clarity of the water volume or the reflection, refraction, and propagation of light. We begin by introducing the topic of wave models. We will then review previous work in the field of ocean water synthesis. The framework of the open architecture is then detailed, followed by four empirical case studies that proved its viability. We conclude with a discussion of the latest work done in GPU-based wave simulation and its applicability to the open architecture.