基于高度场的海洋模拟

大规模海洋场景的仿真受到各领域工作者的关注。在民用方面,对海洋场景的实时绘制已经成为计算机游戏、动画制作、电影制作和工程应用方面强有力的辅助工具;在军用方面,海洋仿真技术为各国海军战斗人员提供经济,安全,可靠的训练环境;在科研方面,海洋仿真可以把抽象的,专业的图表和数据转化成直观的动画,为船舶设计人员提供帮助。

海面模拟一直是计算机图形领域研究热门的问题,也是一个挑战,主要研究点是对大面积开阔水域的模拟。然后在这种情况下使用传统模拟3D流体的方法意味着需要构建极其巨大的网格,海量的运算使得这种方法在普通的计算机上是几乎不可能模拟出来的。

Jerry Tessendorf[1]等人提出基于高度场y=h(x,z)的方法模拟水面,为普通计算机模拟海面提供了可能,甚至在大规模GPU计算下也能达到实时模拟的效果。接下来介绍基于高度场的海洋模拟相关案例:

  • 水面涟漪仿真: 介绍水面涟漪的模拟;

  • 海洋仿真: 介绍不同等级的海浪和水面涟漪的耦合仿真;

  • 海浪模拟:介绍不同等级的海浪仿真;

  • 浮力模拟: 介绍在Qt框架下,使用不同等级的海浪,模拟刚体浮在海浪表面的物理过程;

  • 基于Qt的海洋模拟:介绍在Qt框架下,海浪的仿真以及如何调整相关属性。

[1] Tessendorf J . Simulating Ocean Water[J]. simulating nature realistic & interactive techniques siggraph, 2001.