基于“质点-弹簧”模型的柔性物体建模

2016-08-12 02:15徐晓梅闫浩
中国新通信 2016年13期
关键词:质点水波顶点

徐晓梅 闫浩

【摘要】 三维场景模型建立的真实性将直接影响最终的模拟效果,在对柔性物体如布料建模的过程中因涉及到受力及弹性约束等因素的制约将会对模型的建立有直接的影响。本文对传统物体建模方法进行了分析,总结了传统建模过程中的一些问题并针对此问题给出了相应的解决方案。

【关键字】 三维场景 质点-弹簧 柔性物体建模

一、研究背景

随着三维动画的普及,计算机动画逐渐成为流行技术,它不仅贴近了人们的日常生活,且被大多数人所接受。在高校的计算机学科中,计算机图形图像处理是三维图形学和图像处理以及艺术学科的交叉学科,而对计算机动画的研究也主要集中在刚性物体和柔性物体的研究上。计算机动画在刚性物体的研究上已经取得了很大的进步,但在柔性物体及流体的研究上,理论研究还不够完善。究其原因在于柔性物体不容易用数学公式进行建模,且计算量庞大,计算速度慢。因此在计算机图形图像领域,对柔性物体的研究仍有很大的发展空间。

二、传统建模方法

早期人们对流体及柔性物体的建模主要是采用简单数学公式通过几何建模来实现。例如人们通过三角函数的组合来模拟大海效果,通过额外粒子系统的支持来模拟浪花,然而使用这种方案的效果并不好。因为大海的所有顶点都看似在某一个中心附近有规则晃动,当仔细观察海平面时候,其效果单一,而且使用几何建模的形式对大海进行建模需要有人工的微调并持续观察,该方法需要太多的人工干预,通用性受到了极大的限制[1]。Ogre官方网站的示例程序中有一个水波的实现,其原理为:建立一个网格平面,加入多个水波种子,然后不断扩散,期间需要修改网格的顶点坐标,使得他们相互作用,最终共同生成水波效果[2][3]。然而这个水波程序整个代码却非常复杂,它不仅提供了雨滴落在水面上所呈现的效果,同时也包括实体在水面上行走的时候激起来的水波,甚至包括了折射和反射功能,该例子虽然做的很细致但也体现了基于几何模型模拟流体是一种比较复杂的工程,需要太多的编程技巧和复杂的流程控制。由此可见采用几何方法对柔性物体进行建模不仅需要大量的人力干预,而且几乎无法模拟出较为复杂的柔性物体。因此现在柔性物体的建模基本上都采用了更加先进的物理建模方案。

三、物理建模方法

随着计算机硬件的发展尤其是CPU处理速度以及GPU渲染能力的增强,人们通过引入质量,力学等概念采用物理建模方案来对柔性物体进行建模,使其更加逼真的展现出柔性物体的真实性。使用“质点-弹簧”模型建立的柔性物体,将会被分解为N个不同的质点,这些质点会通过不同的组合方式连接。其连接方式有形连接法、交叉连接法、隔点连接法[4]。矩形连接法将每个质点和它的上、下、左、右四个顶点用弹簧连接;交叉连接法将每个质点和它的“左上、右下、左下、右下”四个点用弹簧连接,隔点连接法将每个质点和它的“左边的左边、右边的右边、上边的上边、下边的下边”四个点用弹簧连接。选定任意一种弹簧连接方式,将布料网格的顶点按照从上到下,从左到右的顺序连接起来同,当模型中顶点按照上述方式连接起来之后,再根据实际情况对每个顶点的受力做具体分析。在“质点-弹簧”模型中,模型中每个顶点不仅仅受到内力的作用还要受到外力的作用。因此在“质点-弹簧”模型中,每个顶点同时受到了弹簧的内在拉力作用和外在作用力的影响。设模型中的一个顶点位置为Pos0,由“质点-弹簧”模型中顶点的连接方式可以知道,每一个顶点都和其他的四个顶点连接,设其他四个顶点分别为Pos1,Pos2,Pos3,Pos4,Pos1-Pos4到Pos0的距离分别为Len1,Len2,Len3,Len4。则该顶点在该处受到的合力大小为,这四个弹簧所受到的合力F。然而弹簧不仅仅有拉伸和压缩的作用力,弹簧同样还存在着弯曲力,设弯曲力为F1。在四边形中,顶点所受到的弯曲力的大小为该质点上面质点、下面质点的夹角和左边质点、右边质点夹角乘以一个弯曲系数获得一个以当前质点为圆,两个质点的距离为半径的圆在邻质点的切线方向的一个力,柔性物体所受到的内力为F和F1的合力,同时也会受到诸如空气阻力、重力等外力。根据这种算法柔性物体在不同力的作用下生成效果图,从而能够自然的反映出物体的真实场景效果。

结束语:虽然采用“质点-弹簧”模型在对柔性物体进行建模时能够快速高效的生成场景效果图,但在实际运用中仍会面临一些问题,比如求解精度相低,运算量大等特点,这些都会从不程度上导致模拟率降低。所以在实际的运用中就需要我们不断的探索学习,将各种算法结合运用并加以改进从而满足实际场景的需要,绘制出高效逼真的场景效果图。

参 考 文 献

[1] Song O Y,Shin H, Ko H S. Stable but nondissipative water[J]. ACM Transactions on Graphics,2005,24(1):81-97.

[2] SUN X P,Li C F. Ogre-based dynamic dimulation of water in 3D games[J].Computer Engineering and Desgin,2011(03):102-106.

[3] Xiao M W.Simulation fire with texture splats[C]. Visualization. 2002, 227-234.

[4]Wu A,Geyer H. The 3-D Spring-mass Model Reveals A Reveals A Time-based Deadbeat Control For Highly Robust Running And Steering In Uncertain Envirionments[J].IEEE Transactions On Robotics.2013, 29(05):1114-1124.

猜你喜欢
质点水波顶点
引力作用下两质点相遇时间问题的解法探讨
Your Name
戈壁里的水波
小蝌蚪在开会
质点的直线运动
质点的直线运动
“图形的认识”复习专题
删繁就简三秋树
修车
数学问答