[发明专利]一种基于GPU的三维流体模拟方法有效
申请号: | 201110325105.0 | 申请日: | 2011-10-24 |
公开(公告)号: | CN102402791A | 公开(公告)日: | 2012-04-04 |
发明(设计)人: | 郭华 | 申请(专利权)人: | 克拉玛依红有软件有限责任公司 |
主分类号: | G06T13/20 | 分类号: | G06T13/20 |
代理公司: | 北京市盛峰律师事务所 11337 | 代理人: | 赵建刚 |
地址: | 834000 新疆维*** | 国省代码: | 新疆;65 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 gpu 三维 流体 模拟 方法 | ||
技术领域
本发明涉及计算机图形学领域,特别是涉及一种基于GPU的三维流体模拟方法。
背景技术
流体模拟是计算机图形学和动画的一个非常重要的技术,逼真的流体将为用户带来更真实的体验。但流体的模拟很困难,因为正确的模拟流体行为,所述模拟流体行为包括对流,扩散,湍流及表面张力的模拟是很复杂的。
流体模拟通常有两种方法:基于网格的流体模拟方法和基于粒子的流体模拟方法。
下面详细介绍基于网格的流体模拟方法和基于粒子的流体模拟方法。
1)基于网络的流体模拟方法是把流体堪称是连续的,而把空间区域离散成网格,再使用有限差分法即欧拉模型来实现基于网格的流体模拟的全过程。
基于网格的流体模拟的方法的优点是:可行性,是一个可以操作的方法;
基于网格的流体模拟的方法的缺点是:采用基于网格的流体模拟的方法对流,扩散,湍流及表面张力的模拟过程中需要计算的强度大,而且整个模拟过程不能逼真的模拟例如模拟空间有界的一些模拟效果。
2)基于粒子的流体模拟方法所采用的模型为拉格朗日模型,是把流体表示成一组离散的例子,通过求解粒子动力学来模拟整个流体运动的全过程。
基于粒子的流体模拟方法的优点是:采用基于粒子的流体模拟方法对流,扩散,湍流及表面张力的模拟过程中涉及到的计算更加简单,而且整个模拟过程中的表面重建更容易,流体可以在空间自由扩散。
目前被广泛采用的基于粒子的流体模拟方法是光滑粒子流体动力学(SPH)方法,SPH是一种求解偏微分方程的数值方法,属于无网格法的一种。由于SPH方法彻底摆脱了计算网格的约束,采用任意分布的粒子来表示求解域,不会遇到网格变形过大或网格畸变的问题,所以特别适合求解冲击动力学中的大变形问题。同时由于SPH法是具有拉格朗日性质的动力学方法,所以可以方便的跟踪物质的运动轨迹,适合描述流体界面的大变形运动过程以及流体与固体之间的相互作用。SPH方法作为一种具有无网格、自适应、稳定以及拉格朗日性质的动力学求解算法,已经成为冲击动力学研究的一个热点问题,并在工程实践中有着广泛的应用前景。
SPH方法是把流体分为一组离散的粒子,粒子之间有空间距离,粒子的属性在这个空间距离上使用内核函数来平滑。所有粒子的物理量可以通过累加在一定范围内的所有粒子的相关属性来获得。粒子的物理量及其空间导数通过搜索光滑半径内与其相互作用的粒子的物理量进行插值得到。这样就简化了流体力学偏微分方程组的求解过程,与传统的流体模拟方法相比,采用SPH算法得到的模拟结果不仅可以真实的模拟流体流动的效果,还能实现流体表面的剧烈变形,甚至表面破碎,如浪花飞溅效果都可以逼真的模拟出来。
传统的SPH算法本身还存在着边界粒子计算精度低和张力不稳定的固有缺陷。
SPH方法的更新过程是通过粒子模拟流体的运动规律来完成的,但这仅仅是完成了一个粒子系统的模拟,模拟后的结果还仅仅是一堆水粒子,还需要对模拟得到的模拟结果进行渲染。目前常见的渲染方法采用了基于点精灵的直接粒子渲染方法及基于等值面抽取(marching cube)的表面渲染方法。下面分别介绍两种常见的渲染方法,具体如下所述:
1)基于点精灵的直接渲染方法
首先在模拟中实现粒子的运动,然后渲染所有的粒子。这种方法的缺点是不易实现。
2)基于等值面抽取(marching cube)的表面渲染方法
基于等值面抽取(marching cube)的表面渲染方法所涉及的算法完全在CPU上执行,从离散体密度场直接构建等值面的三角形网格。这种方法的优点是简单且容易实现;缺点是效率很低。
因而,目前需要本领域技术人员迫切解决的一个技术问题就是:如何找到一种新型的三维流体模拟方法,该方法是实现对三维流体模拟过程的简单及实时操作。
发明内容
本发明所要解决的一个技术问题是提供一种基于GPU的三维流体模拟方法,该方法可以实现对三维流体模拟过程的简单及实时操作。
为了解决上述问题,本发明公开了一种基于GPU的三维流体模拟方法,包括:
采集三维流体的数据信息并进行存储,获得三维流体的数据信息;
CPU对获得的三维流体的数据信息进行预处理操作,获得预处理的预处理结果;
GPU对获得的三维流体的数据信息进行流体模拟,获得三维流体的数据信息的流体模拟结果;
将所获得的三维流体的数据信息的流体模拟结果进行渲染,获得渲染后的三维流体的数据信息的流体模拟结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于克拉玛依红有软件有限责任公司,未经克拉玛依红有软件有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110325105.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:具有数据线切换方案的存储器系统
- 下一篇:精甲·丁草胺可湿性粉剂