版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、柔性织物动态仿真柔性织物动态仿真 关键技术研究关键技术研究报告人:刘 真2008年9月内容提纲内容提纲选题背景与选题意义织物仿真相关问题的研究基于图形硬件的织物仿真与碰撞检测 选题背景与选题意义选题背景与选题意义在人们的日常生活中,织物随处可见,服装更占据着人们生活中的重要地位。对织物进行逼真模拟以及对具有更广泛意义的柔性物体的动态仿真技术的深入研究,必将带动其他相关领域的发展,如电脑动画,电脑娱乐等。研究三维织物动态仿真技术时,不仅要考虑织物的几何形变,而且要考虑到其物理性能,同时,还要融合计算机图形学,计算机动画,计算几何,微分方程数值解,弹性力学等多门专业学科的知识和技术,对这一问题的研
2、究已不仅仅是单纯的学科应用问题,更是对学科理论的实践与证明。选题背景与选题意义 织物仿真相关问题的研究织物仿真相关问题的研究模拟仿真技术是指遵循相似原理(几何、环境及性能相似),用模型(物理模型或数学模型)代替实际系统进行试验和研究。用于建立织物模拟仿真模型的方法很多,这些方法可主要可以分为:(1)几何方法(2)物理方法(3)混合方法 织物模型的简单说明 (弹簧质点模型) 弹簧质子模型的基本思想主要是把一块织物划分为 m x n的矩形网格,每个网格结点是一个虚拟质点,每个质点用弹簧相连,弹簧无质量且其长度不能为零。相邻质点的连接有三种方式。连接质点i,j和i+1,j+1、连接质点i+1,j和i
3、,j+1的弹簧,叫做“剪切弹簧”;连接质点i,j和i+2,j、连接质点i,j和i,j+2的弹簧,叫做“弯曲弹簧”;连接质点i , j和i+1,j、连接质点i,j和i,j+1的弹簧,叫做“结构弹簧”。这三种“弹簧”结构,分别对应了,三种在织物运动中的作用力。对动力学求解的说明在质点弹簧模型中,根据牛顿动力学原理,质点i , j随时间运动的加速度、速度、位移可以表示如下:式中 为时间间隔, 为质点i , j在任意时刻t所受到的合力, 为质点在任意时刻t的加速度,Vi,j(t)为质点在i , j在任意时刻t的速度, 为质点 i , j在任意时刻t的位置。织物动感模拟过程中,初始状态已知,方程求解过程
4、就成为数值求解中的常微分方程的初值问题。 tttvtPttPttttvttvtFmttjijijijijijijiji)()()()()()()(1)(,_,_,_,_,_,_,_,_t)(,_tFjiji,_)(,_tPji常用求解方法对于常微分方程有一套成熟经典的求解方法(1)欧拉法;(2)中值法;(3)四阶龙格库塔法。 欧拉法:这种方法数值求解简单,精度不够,其局部截断为O(h2),实际效率低。中值法:这种方法的局部截断误差达到了O (h3)。每次迭代都需要通过两次力学求导获得与时间步长有关的二次精确解。该方法还需建立两个存储结构来存储状态向量。四阶龙格库塔法:其局部截断误差达O (h5
5、)。在数值求解中,尽管每一步的计算量大,但因为允许采用较大步长,总的计算量反而减小。四阶龙格一库塔法精度高,稳定性能好,在实际中得以广泛应用。积分方法10X10质点网格所需时间(S) 20X20质点网格所需时间(S)欧拉积分31.2846.03中点积分39.2059.33四阶龙格库塔积分42.7067.42系统设置如下:结构弹簧刚性常数4,结构弹簧阻尼0.6;剪切弹簧常数4,剪切弹簧阻尼0.6;弯曲弹簧常数2.4,弯曲弹簧阻尼0.8,仿真步长0.01。 质子质子弹簧模型的超弹性问题弹簧模型的超弹性问题 所谓超弹性问题,把仿真的织物上约束点固定住,然后将其自然下垂,将会发现约束点处的弹簧会拉得很
6、长,甚至会超过100%,这种过度拉伸的现象就是织物动感模拟中的“高弹性”效应。事实上,真实的织物是不会这样拉伸的,拉得超出一定的限度就会被撕裂。 质子弹簧模型假定质子之间的力学关系为简单的线性关系,在这个模型中,弹簧的力学关系是简单的线性。真实的织物不但不存在“高弹性”效应,它们的变形产生的弹力是非线性的,当变形加大时,弹力会急剧增加。一般来织物的形变不会超过10%,亚麻、粗斜纹棉布等织物变形率还应更小。 )(01LLkF在本文中采用了一种较为简单的校正策略,采用非线性的力学公式来近似织物的非线性力。 这里K为弹簧的弹性系数,Dist为弹簧两端的粒子之间的距离,restLen为弹簧的自然长度。
7、 )0 . 1/(9 . 0tan(restLenDistkF同时,调整弹簧两端的质子速度,将质子在沿弹簧方向上的分量和设为零。以避免弹簧的“高弹性”问题进一步发生。10X10质子弹簧网格。结构弹簧刚性常数4,结构弹簧阻尼0.6;剪切弹簧常数4,剪切弹簧阻尼0.6;弯曲弹簧常数2.4,弯曲弹簧阻尼0.8;仿真步长0.01;求解方法为,四阶龙格库塔法。不难看出质点弹簧模型中的“超弹性”问题已经得到明显改善。 基于图形硬件的织物仿真与碰撞检测计算机图形学,从诞生的那天起,就与硬件有着紧密的联系。由于图形学的高计算量要求,图形硬件的早期研究主要集中于专有硬件设备的研制。随着图形硬件的发展,图形硬件的
8、功能早已经今非昔比,并已经具备了可编程的能力。 目前可编程的两个点就是顶点处理和片元处理。顶点处理涉及在各个顶点发生的操作,尤其是变换和光照。片元是各个像素的数据结构,是通过图形图元的栅格化创建的。片元包含了更新帧缓冲区中的一个单独位置所需要的全部数据。片元处理是由在各个片元基础上发生的操作,尤其是在从纹理内存读取和在各个片元上应用于纹理值的操作组成。 采用图形硬件来做通用计算以下的主要优势:(1)高效的并行性。(2)高密集的运算。GPU通常具有128位 或256位位宽.(3)超长图形流水线。图形处理单元通用计算的一般步骤:(1)将需要运算的数据以一定方式转化为纹理数据。(2)编写顶点、片元着
9、色器代码。(3)绘制简单几何模型,触发GPU运算。(4)读取GPU渲染(GPU的渲染过程,就是GPU的运算过程)后的纹理数据,得出结果。基于基于GPU的织物动态仿真实现的织物动态仿真实现1967年,Verlet在研究Lennard-Jones液体的性质时提出了著名的Verlet算法.对每一个粒子之间的运动使用Verlet方法来作求解方式。在Verlet方法中每一个粒子的新位置在固定的时间间隔 内, 其中 是粒子在时刻的位置, 是在时刻时受到的合力,m为粒子的质量.tmtFtttPtPttP/ )()()(2)(2)(tP)(tF利用Verlet方法求解织物运动方程,其中不出现质点速度信息,是一
10、个时间与位置的推导关系。其表述了离散点随时间的位置变化关系。速度是隐式得出的,算法稳定。Verlet方法中间的交换信息少,易于GPU实现.假定连接各个质点之间的弹簧有着无限的刚性,也就是说,质子之间的距离是相对固定的。使用松驰法技术来调整织物中每个质子的距离。质子和之间的距离调整用下式表示: dPPDist),(21)(*),(/1 (12211PPPPDistds)(*),(/1 (12212PPPPDistds1P2P对于织物与碰撞体之间的碰撞问题,本节中假定织物是与一个简单的球体进行的碰撞。对于质点与球体之间的约束可以较为简单,主要就是对质子到球心之间的距离与球体半径之间的判断。如果距离
11、小于半径,则质子进入球体内部,则需要进行质子位置调整。 下面给出整个GPU仿真的步骤:在每一个仿真时间步长 内。(1)对于所有质子,如果其不是固定质子,则根据下式计算新的位置。for(迭代次数) (2)然后对,新生成的质子位置,进行松弛法调整。 P1: P2: (3)最后调整质子与约束几何之间的位置,如果有质子进入到约束几何体内部则将其位置,校正到几何体表面。_对于第二步和第三步可以进行互换,调整顺序不影响校正效果。可以对(2)(3)组合进行多次。但会影响仿真速度。tmtFtttPtPttP/ )()()(2)(2)(*),(/1 (12211PPPPDistds)(*),(/1 (12212
12、PPPPDistds将织物质子的位置存入三个大小为的纹理中,这三个纹理循环使用。一个纹理存储老的位置信息,一个用于存放当前的位置,第三个用于记录计算后的新位置,分别记为:texture_old ,texture_cur,texture_new。 三个纹理循环使用。对于约束计算由于有9种约束,分别为:质点和碰撞球体;质点和周围质点之间的八个方向上的距离约束;再加上进行Verlet积分运算,计算一帧数据,至少要进行10遍绘制。每一次绘制进行一次相应的GPU运算,下一次的运算,以当前新产生的纹理作为输入,进行下一步的运算,如此反复迭代10次。织物大小CPU仿真运算一次所花时间GPU仿真运算一次所花时
13、间20200.019秒0.250秒40400.170秒0.350秒5125122.630秒1.021秒102410246.312秒1.554秒对于规模较小的织物仿真来说采用CPU进行有一定的优势,但随着织物质点的数目的增加,GPU仿真的速度就大大优于CPU。在织物较简单的时候,CPU仿真算法要优于GPU,这是由于GPU的渲染流水线、纹理访问等额外计算不可忽略;随着织物复杂度的增加,GPU的效率要明显高于CPU的效率,这是图形硬件的并行流计算的特性造成的,而CPU则由于缺少优化的对于流数据的并行处理失去了计算优势;随着场景复杂度的增加,CPU的效率降低很快,而GPU则保持很好的算法稳定性,这也是
14、图形硬件的优势。 基于图形硬件的织物碰撞检测碰撞检测的基本思想 1)判断运动的路径中是否有物体。 2)是否有其它物体占有了相同的空间。OpenGL提供3 种操作模式:渲染模式、选择模式和反馈模式其中渲染模式是OpenGL 的正常模式。在渲染模式下,所要绘制的几何图元被光栅化,并在计算成位图像素后,被送到帧缓存中。选择模式下,用户定义选择视景体,OpenGL 将落在这个视景体之内的物体名称存储在一个堆栈中。通过返回这个堆栈中的物体名称,可以确定拾取到的物体。此时, OpenGL不发送光栅化的图像到帧缓存,而只是根据用户定义的特殊视景体,把绘制的物体生成拾取记录.由于没有执行光栅化,该模式下运行效
15、率很高。反馈模式下,OpenGL 需要将绘制的几何图元反馈到一个反馈内存中,比如图元的顶点坐标、颜色等。 下面给出对织物质点网格本文所述算法进碰撞检测的具体过程:1) 定义观察点和选择视景体。选定一个织物网格在t时刻的一个质点的坐标为观察点的坐标,记为P ( X0 , Y0 , Z0 ) ,质点在t时刻的速度为V(V_x ,V_y , V_z),以这个观察点为中心定义一个截面积为0. 0001 0. 0001,前后截面位于观察点两侧各为1.0 的选择视景体。视景体的前后截面定义在观察点两侧,可以从2个方向观察目标多面体模型。注意要定义一个截面积远小于模型三角片大小的视景体,尽量拾取到较少的三角
16、片,通常保证只拾取到一个三角片。 2) 创建名称堆栈将约束模型的所有三角片放到已定义的视景体中进行渲染。建立的视景体用模型视点矩阵和投影矩阵对场景中约束模型的顶点进行变换,同时裁剪掉任何位于视景体之外的图元。由于目标多面体模型的三角片数目较大,为三角片命名时适宜采用指向三角片对象的指针。指针的值代表所指对象的实际存储空间的地址,具有惟一性,而且通过该指针可以直接找到所指对象,便于以后查询该三角片。3) 命中信息的获取与视景体相交的三角片将导致一次选择命中。命中记录由三项组成,依次为命中记录发生时名称堆栈中的名称数,记录的命中的所有顶点的最大和最小窗口Z坐标, 以及命中发生时名称堆栈的内容。 选
17、择缓存区从选择模式切换回绘图模式时,函数返回该选择缓存区拾取记录的数目,即: hits =glRender(GL_RENDER);当hits不为0,就表明视景体与目标多面体模型三角片相交。因此通过查看各命中记录的三角片名,即可确定相交的三角片,一般只有一个三角片被命中,这样就得到了沿观察方向距离观察点最近的目标三角片。分别计算点在t时刻与 到平面的有符号距离。如果与同号,则说明质点在的运动时间内没有与任合约束模型的三角面片相碰撞;如果与异号则说明质点在的运动时间内与约束模型的三角面片相碰撞。如果发生碰撞,则要记录下当前质点的编号与当前面片的三个顶点的坐标,为下一步的织物碰撞响应做准备。在碰撞响应中,将会根据记录下来的信息,对发生碰撞的的质点作位置和速度上的调整,以使其的运动满足动力学方程与空间
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026年汽车美容保养行业高级技师考核试卷
- 2025-2026年心理健康与压力管理测试卷
- 某机械加工厂设备管理细则
- 机械制造厂技术规范
- 环保设备采购协议
- 科室院感度工作计划(2026版)
- 2026下半年初中数学教资面试逐字稿题库
- 高中美术教资面试教资面试答辩题库
- 具身智能+企业会议室智能服务机器人应用分析研究报告
- T-CTS 35-2026 城市道路交通管理路网空间拓扑数据
- 2026年上半年事业单位联考综合应用能力A类考试模拟题及答案详解
- 2026年苏科版八年级信息技术上册(全册)教学设计(附目录)
- 浙江杭州育才中学2026-2027学年七年级上学期开学检测数学试题(含简单答案)
- 2026年贵州省人民法院聘用书记员考试试题及答案
- 业主委员会考核物业评分细则
- GJB827B--2020军事设施建设费用定额
- 第一节土石方工程课件
- 2024年普通话水平测试朗读短文50篇
- 水利小型农田水利工程质量评定常用表式
- 乒乓球循环赛积分表决赛
- 土地复垦验收确认文件范本
评论
0/150
提交评论