民族特需品数字化展示中的水面模拟方法——基于质点弹簧模型

2012-01-12 06:41徐国凯唐勇孙炎辉郭栋梁宋鹏王刚韩志敏
大连民族大学学报 2012年1期
关键词:质点雨滴水面

徐国凯,唐勇,孙炎辉,郭栋梁,宋鹏,王刚,韩志敏

(1.大连民族学院机电信息工程学院,辽宁大连 116605;2.燕山大学a.信息科学与工程学院;b.研究生学院,河北秦皇岛 066004)

民族特需品数字化展示中的水面模拟方法
——基于质点弹簧模型

徐国凯1,唐勇2a,孙炎辉1,郭栋梁2b,宋鹏1,王刚2b,韩志敏1

(1.大连民族学院机电信息工程学院,辽宁大连 116605;2.燕山大学a.信息科学与工程学院;b.研究生学院,河北秦皇岛 066004)

提出了一种基于质点弹簧模型的快速可交互的实时水面模拟方法。使用虚拟弹簧按照四边形连接规则将组成水面几何结构的点连接起来;为模拟质点间相对运动引起的阻力,引入内摩擦系数和速度衰减系数,水面的受力运动模型中质点的运动规律遵循质点弹簧运动规律;水面渲染时,借助Cg着色语言实现水面的反射和折射;通过简化物理碰撞规则,实现了对雨滴与水面交互的加速处理。实验表明,交互时帧率达到60fps,且真实感强,可以明显提高民族特需品的数字化展示效果。

民族特需品;虚拟现实;水面模拟;质点弹簧模型;实时交互

使用虚拟现实技术对少数民族特需品(简称民族特需品或特需品)进行保护或展示,是民族遗产数字化领域的一个新的研究课题。在民族特需品的交互式展示中对于水面的模拟问题显得非常重要,因为凡涉及到与水相关的特需品,都不可避免的要对水面进行模拟。但是,由于水面的物理运动规律复杂,求解耗时,使得如何在计算机中实时地模拟真实水面及实时交互运动成为一个研究难点。

2001年Jerry Tessendorf使用快速傅里叶变换(FFT,Fast Fourier Transform)模拟了大规模海面的运动效果[1],尽管取得了较真实的效果,但是需要花费大量时间去求解一系列复杂方程。2003年Kei lwasaki等使用纹理映射切片(texture mapped slices)表示物体,快速渲染出具有光学性质的水面[2],但随着切片数目的增加,运算量急剧增大。2006年Yaohua Hu等使用菲涅耳凹凸映射(Fresnel bump mapping)和视点相关(view-dependent)技术,在主频680 MHz的Pentium III和GeForce 3显卡上对海水表面进行模拟,渲染速度能达到100fps[3],因为使用平面镜来处理水面局部的反射和折射,所以局限于模拟平静的海洋波。Kei lwasaki等从水面逐点采样得到粒子,提出一种有效的GPU加速表面重建方法[4],但是在采样时未对表面细节加以区分,降低了最终水面质量。2007年Cem Yuksel等基于波浪粒子(wave particle)的概念,对流体表面进行模拟,实现了与漂浮物的交互[5],但是波形方程求解复杂,且需要大量粒子来保证水面质量。2008年Dongyoung Kim等利用基于质量守恒定律的表面对流模拟水面的波动现象[6],由于使用二维平面网格,所以不能很好的处理水面破碎现象。2010年Nils Thürey等用多尺度分析方法处理不同张力的流体表面[7],获得了很好效果,但是渲染速度只有22.3fps,不能达到实时要求。

本文首次引入质点弹簧模型来模拟水面,并对其进行基于水面特征的扩展,实现外界物体和水面的动态交互的实时逼真模拟。

1 水面模型的建立与渲染

1.1 水面的几何网络模型

水面的几何模型设计成均匀规则的拓扑结构,由ROW×COLUM个均匀分布的质点组成(水面与XOZ平面重合,中心在坐标原点)。构成水面的基本单元由五个质点和五根弹簧组成,如图1。5个质点之间通过4个水平弹簧连接在一起,中心质点通过一个竖直放置的弹簧与基准面连接。

图1 水面的基本单元

为最大限度地加快模拟速度,水面各质点采用四边形连接,虽然降低了水面绘制的细节,但组成水面的基本图元数远小于采用三角形的连接方式。各个基本单元构成一张弹簧网,形成水面的骨架,水面的变形将由构成四边形的质点和弹簧控制,如图2。

对于边界上的基本单元,根据其形状特点,设计“Γ”型和“Τ”型2种结构,在计算质点受力时,可不必区分当前质点是否处在边界,统一了各类不同单元的计算过程。

图2 水面的结构

对于水面左前方边界的基本单元,把此处的第0号基本单元的0号质点作为前邻居和左邻居,构成“Γ”型结构,如图3(a);对于水面右边界的基本单元,把第i号基本单元的i号质点作为右邻居,形成“Τ”型结构,如图3(b)。其他角及边界基本单元通过旋转转换成“Γ”型和“Τ”型结构。

图3 水面边界基本单元

1.2 水面的受力运动模型

当物体与水面交互时,水面受到外力的作用,质点发生位移,致使弹簧产生形变,对相连质点产生力的作用。对任一水面质点,根据胡克定律,其受到弹簧的回复力为

其中kv为竖直方向弹簧劲度系数,xv为竖直方向弹簧形变量,k为水平方向弹簧劲度系数,xi为某一水平方向弹簧形变量。

水面质点间相对运动产生的内摩擦力为

其中vo为中心质点的运动速度,vi为其相邻质点的运动速度,f为内摩擦系数。通过调节f以及公式(1)中弹簧劲度系数的大小,可以模拟不同粘度的水面运动。

考虑质点的重力,最终质点所受合力为

其中m为水面质点质量,g为重力加速度。根据牛顿第二定律,计算质点的加速度,进而求出质点在经过一个时间步长之后的速度,此时,质点的运动为匀速直线运动,最终求得质点的新位置。

为保证水面快速回复到平静状态,引入一个数值大于1的速度衰减系数α,使得所有质点的动能快速趋向于0。速度衰减公式为

1.3 水面渲染

使用立方体纹理贴图的天空盒作为场景背景。对于水面某一点的反射颜色,即反射光线与天空盒相交处的颜色,利用着色语言Cg中的reflect函数计算水面某一点反射光线的方向向量,作为立方体纹理查找texCUBE函数的一个参数,计算反射光线与天空盒的交点颜色。

对于水面某一点的折射颜色,即折射光线与水下物体相交处的颜色,利用Cg中的refract函数计算水面某一点的折射光线的方向向量,建立水池四周与底部的平面方程,求出折射光线和水池各个的交点,从而获得水面折射颜色。

将反射颜色和折射颜色混合,以实现菲涅耳效果(Fresnel effect),反射颜色在混合颜色中所占比例为

其中refl_f为反射因子,bias为偏移系数,scale为缩放系数,power为Fresnel指数,I为入射光方向向量,N为法向量。

反射因子限制在[0,1]之间,水面某一点菲涅耳效果颜色计算公式为

其中Cfresnel为菲涅耳效果颜色,refl_f为反射因子,Creflected为反射颜色,Crefracted为折射颜色。

在Cg使用Phong光照模型计算水面自身颜色,和菲涅耳效果颜色混合,得到水面最终颜色。计算水面最终颜色的公式为

其中Cfinal为水面最终颜色,fres_f为菲涅耳效果颜色在混合颜色中的比例因子,Cfresnel为菲涅耳效果颜色,Cself为水面自身颜色。

水面的最终颜色与反射颜色和折射颜色有关,首先绘制除水面以外的物体,最后绘制水面。

2 物体和水面的交互

为了模拟雨滴随机碰撞水面的效果,通过一个随机函数初始化雨滴的高度和速度(均控制在合理范围内),雨滴做自由落体运动。为简化碰撞检测过程,以雨滴的高度低于平静水面高度作为雨滴碰撞水面的条件;为加速模拟速度,雨滴只影响其附近4个水面质点,如图4。被影响水面质点位置计算公式为

其中row、col为质点所在的行和列,pz、px为雨滴在水平面的坐标,minz、minx分别为水面左上角Z方向最小值和X方向最小值,size_z、size_x为Z方向和X方向上的行间距和列间距,floor是向下取整函数。

图4 雨滴碰撞水面

碰撞之后,将雨滴的位置和速度重新随机初始化,雨滴的动量全部转移到碰撞区域的4个水面质点上。为了简化计算过程,约定质点的速度和雨滴距质点的距离成反比。

mdrop为雨滴质量,vdrop为雨滴速度,m为水面质点质量,vi为碰撞区域某一水面质点速度,disti为雨滴距碰撞区域水面质点距离,μ为比例因子。

获得雨滴能量的4个水面质点,按照公式(1) -(4)将能量传播出去,带动水面波动。

3 实验结果

针对所提出的水面模拟方法,进行了两项模拟实验:雨滴落入水面;小船在水面游动。实验硬件平台为:8核Intel(R)Xeon(R)X5482 CPU,16G内存,NVIDIA GeForce GTX 460显卡。使用Microsoft Visual Studio 2005作为软件实验环境,OpenGL图形库和Cg着色语言。

如图5左侧为雨滴打在水面上的效果。水面被划分成128×128个网格,雨滴的数量为100。水波碰到边界会被反射回去。图5右侧展示了在水面上运动的小船产生的尾迹。将小船看成一个质点,在XOZ平面上运动,带动相应的水面质点运动,形成了一连串的圆形水波,圆形水波相互叠加以后形成了锥形的尾迹。

图5 雨滴和船与水面交互

4 结论

提出了一种简单的实时水面交互模拟方法。引入质点弹簧模型来组建水面的几何结构;设计了水面的受力运动模型;实现了水面的反射和折射效果;在物体和水面的交互过程中,简化了复杂的碰撞问题,在不严重影响逼真度的情况下明显加快了绘制速度,明显提高了与水相关的少数民族特需品的数字化展示效果。目前此方法只能模拟相对缓和的水面波动,对于激烈的水面运动,如水面破碎效果还没有实现,将是以后改进的地方。

[1]TESSENDORF J.Simulating Ocean Water[C].SIGGRAPH 2001 Course notes,2001.

[2]LWASAKI K,DOBASHI Y,NISHITA T.A Fast Rendering Method for Refractive and Reflective Caustics Due to Water Surfaces[C].Computer Graphics Forum Proceedings of Eurographics,2003,22(3):601-609.

[3]HU Y H,VELHO L,TONG X,et al.Realistic,Real–Time Rendering of Ocean Waves[J].Journal of Visualization and Computer Animation,2006,17(1):59-67.

[4]IWASAKI K,DOBASHI Y,YOSHIMOTO F,et al.Realtime Rendering of Point Based Water Surfaces[C].Computer Graphics International-CGI,2006,102-114.

[5]YUKSEL C,HOUSE D H,KEYSER J.Wave Particles[J].ACM Transactions on Graphics,2007,26(3):99-106.

[6]KIM D Y,YOO K H.Real-Time Water Wave Simulation with Surface Advection based on Mass Conservancy[J].International Journal of Contents,2008,4(2):7-12.

[7]THÜREY N,WOJTAN C,GROSS M,et al.A Multiscale Approach to Mesh-based Surface Tension Flows[J].ACM Transactions on Graphics,2010,29(4):1-10.

Water Surface Simulation Method for Digital Display of Special Necessities for Ethnic Minorities Based on Mass-spring Model

XU Guo-kai1,TANG Yong2,SUN Yan-hui1,GUO Dong-liang2b,SONG Peng1,WANG Gang2b,HAN Zhi-min1
(1.College of Electromechanical&Information Engineering,Dalian Nationalities University,Dalian Liaoning 116605,China;2.a.College of Information Science and Engineering,b.College of Post-graduated,Yanshan University,Qinhuangdao Hebei 066004,China)

A fast interactive real-time water surface simulation method based on the Massspring model is proposed.These dots formed a water surface geometry structure are connected in accordance with the quadrilateral connection rules using Virtual spring.To simulate the resistance caused by the relative motion between particles,the coefficient of internal friction and speed attenuation coefficient are introduced.The motion law of the particle in surface force model follows the motion law of the particle spring.The water surface reflection and refraction is achieved with the Cg shading language in surface rendering.Then rain and surface water interactions and accelerated processing is realized by utilizing the simplifed physical impact rules.Experimental results show that the interactive frame rate gets 60fps,and a strong sense of reality is abtained,which significantly improves the digital display of special necessities for ethnic minorities.

special necessities for ethnic minorities;virtual reality;water surface simulation; mass-spring model;real-time interaction

TP319.4

A

1009-315X(2012)01-00015-04

2011-11-07

国家科技支撑计划课题(2009BAH41B05)。

徐国凯(1956-),男,辽宁抚顺人,教授,主要从事民族遗产数字化技术及其应用研究。

(责任编辑 刘敏)

猜你喜欢
质点雨滴水面
巧用“搬运法”解决连续质点模型的做功问题
小雨滴
可爱的小雨滴
水黾是怎样浮在水面的
小雨滴
创造足以乱真的水面反光
质点的直线运动
质点的直线运动
争夺水面光伏
一块水面