CN109002571A - 基于等几何弹簧质点模型的布料动态仿真方法 - Google Patents

基于等几何弹簧质点模型的布料动态仿真方法 Download PDF

Info

Publication number
CN109002571A
CN109002571A CN201810431831.2A CN201810431831A CN109002571A CN 109002571 A CN109002571 A CN 109002571A CN 201810431831 A CN201810431831 A CN 201810431831A CN 109002571 A CN109002571 A CN 109002571A
Authority
CN
China
Prior art keywords
particle
cloth
spring
collision
mass
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810431831.2A
Other languages
English (en)
Other versions
CN109002571B (zh
Inventor
徐岗
李鹏高
肖周芳
许金兰
吴卿
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Dianzi University
Original Assignee
Hangzhou Dianzi University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Dianzi University filed Critical Hangzhou Dianzi University
Priority to CN201810431831.2A priority Critical patent/CN109002571B/zh
Publication of CN109002571A publication Critical patent/CN109002571A/zh
Application granted granted Critical
Publication of CN109002571B publication Critical patent/CN109002571B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/17Mechanical parametric or variational design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2113/00Details relating to the application field
    • G06F2113/12Cloth
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/16Cloth

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了基于等几何弹簧质点模型的布料动态仿真方法。本发明步骤:基于弹簧‑质点模型将布料面片离散成质点,质点与质点之间用三类弹簧相连;对布料的质点进行受力分析,计算出质点下一时刻的速度和位移,对与发生超弹性现象的弹簧相连的质点进行位置修正和速度约束;分别构建布料和碰撞物的AABB层次包围体结构,进行碰撞检测,检测到发生碰撞时进行碰撞响应,否则直接进入下一步,碰撞响应后进入下一步;定义布料的张量积Bézier曲面模型,将弹簧‑质点模型中质点的位置投射到张量积Bézier曲面的控制顶点上,对布料面片进行动态表达和模拟。本发明能精确表达布料模型,仿真效率高,适用于虚拟试衣等应用。

Description

基于等几何弹簧质点模型的布料动态仿真方法
技术领域
本发明属于计算机图形三维动态仿真领域,具体涉及一种基于等几何弹簧质点模型的布料动态仿真方法。
背景技术
目前,虚拟试穿正成为国内外研究的一个热点,其中核心问题是对布料的仿真模拟。本发明立足于这一研究热点,对布料动态仿真进行了相关的探索和研究。
自上个世纪80年代以来,很多学者都投入到布料仿真的研究中,并提出了许多有效的布料仿真理论和模拟方法。目前,国内外关于布料仿真的研究主要分为三个阶段:首先,布料仿真的研究起源可以追溯到Well在1986年关于布料模型的初步探索。该方法最先提出通过拟合在悬挂点和制约点之间的悬链线来模拟布料的外形。随后,Agui等和Ng等分别采用纯几何变换模拟了一些特殊情况下的织物仿真。因为基于纯几何的方法计算简单,因此模拟速度很快,但该方法仅能模拟出悬垂的布料,却不能表现出动态布料的真实特点。随后基于物理连续介质的弹性变形模型模拟出了布料真实的物理特点,然而连续体模型仿真性能不高,从微观上看,布料并不是一种严格的连续介质,不符合连续模型中的前提,使得较为复杂的连续模型也难以准确高效地表达出织物的皱裙等变形细节。并且连续介质模型由于计算量大且复杂,导致仿真效率低,因此,并不适用于实时性要求较高的虚拟试穿等场景。
Provot首次提出以质点-弹簧模型来模拟约束下的柔性织物,他将布料离散为四边形网格,网格交点为质点,质点与质点之间以弹簧形式相连,该方法不仅计算效率高,而且能真实的模拟出布料的物理属性。但是基于弹簧-质点模型表达的布料,最终都是以三角形面片的形式表达,然而三角形表现的形式使得布料的表达不够精确和灵活,同时,三角形细分次数过多会大大减低仿真的速率。
发明内容
本发明针对上述现有技术的不足,提出一种基于等几何弹簧质点模型的布料动态仿真方法,根据已有的弹簧-质点结构作为布料的物理分析模型,并采用张量积Bézier曲面作为布料面片的表达模型。
本发明采用的技术方案如下:
本发明包括以下步骤:
步骤1、基于弹簧-质点模型将布料面片离散成一个个质点,质点与质点之间用三类弹簧相连,构建出布料的物理分析模型。其中,结构弹簧连接经向或纬向上相邻的两个质点;剪切弹簧连接位于对角线上相邻的两个质点;弯曲弹簧连接在经向或纬向上中间间隔有一个质点的两个质点。
步骤2、布料动态仿真过程中,将时间离散化为td,时间间隔为Δt,时间序列下标d=0,1,2...,n,对布料的质点进行受力分析,并采用显示欧拉法求解动力学方程组,计算出质点下一时刻的速度和位移;每次计算得到各质点在时刻td+Δt的位移后,对与发生超弹性现象的弹簧相连的质点进行位置修正和速度约束。
步骤3、分别构建布料和碰撞物的AABB层次包围体结构,通过构建出的AABB层次包围体结构进行碰撞检测,检测到发生碰撞时进行碰撞响应,否则直接进入步骤4;碰撞响应后进入步骤4。碰撞响应过程如下:当检测到发生碰撞时,如果布料发生碰撞的质点已经穿透到碰撞物中,那么将该发生穿透的质点上一时刻的位置赋值给该发生穿透的质点,从而将该发生穿透的质点位置调整至碰撞物表面;如果布料发生碰撞的质点未穿透到碰撞物中,则该发生碰撞的质点位置不做调整。
步骤4、首先,由Bernstein基函数和控制点定义布料的张量积Bézier曲面模型;然后,将质点-弹簧模型中质点的位置投射到张量积Bézier曲面的控制顶点上,布料面片便用张量积Bézier曲面进行动态表达和模拟。
进一步,步骤2中,对与发生超弹性现象的弹簧相连的质点进行位置修正和速度约束时,首先进行位置修正,具体为:遍历与该质点相连的所有弹簧的伸长量是否在各弹簧原长的0.95~1.05倍之间,若超过则对与该质点相连的所有弹簧中最长或者最短的那根弹簧进行调整,调整方法是将该质点沿该弹簧方向移动至该弹簧形变为原长的0.95~1.05倍之间。然后对该质点的速度进行约束,具体为:先对该质点的速度进行矢量分解,将沿弹簧形变方向的速度分量设为零,而与弹簧形变方向垂直的速度分量减小至原来的0.8倍。
进一步,步骤3中,碰撞检测过程为检测布料AABB层次包围体结构与碰撞物AABB层次包围体结构是否发生相交。
本发明的有益效果是:本发明使用张量积Bézier曲面来动态的表达布料的面片。张量积Bézier曲面能够很好拟合控制点,精确地表达布料的分析模型;与基于三角网格逼近的仿真方法相比,本发明所提出的等几何弹簧质点模型无需预先进行三角网格细分,并且能够在精确表示布料几何模型的前提下进行高精度的动态仿真求解。仿真结果表明,本发明所提出的方法可在较少的自由度数目下得到高精度的动态仿真效果,不仅提高了仿真效率,而且展现出了布料局部柔性的动态仿真效果,适用于虚拟试衣等工程应用领域。
附图说明
图1是本发明的流程图;
图2-1、图2-2、图2-3和图2-4分别是布料与虚拟环境中桌子发生碰撞响应时,在第2秒、第3.2秒、第4.5秒和第6秒时的碰撞响应仿真效果图。
图3-1、图3-2和图3-3分别是通过张量积Bézier曲面来模拟旗袍动态仿真效果时旗袍初始形态效果图、通过鼠标拽动布料下边后产生的形变动态效果图以及通过鼠标转动后布料的形变效果图。
具体实施方式
下面结合附图对本发明的具体实施方式进行进一步阐释。
如图1所示,基于等几何弹簧质点模型的布料动态仿真方法,具体步骤如下:
步骤1、基于已有的弹簧-质点模型将布料面片离散成一个个质点,质点与质点之间用三类弹簧相连,构建出布料的物理分析模型。其中,结构弹簧连接经向或纬向上相邻的两个质点,作用是为了防止布料在经、纬方向上产生过度的拉伸和压缩形变,起到固定布料结构的作用。剪切弹簧连接位于对角线(斜线)上相邻的两个质点,作用是为了阻止布料斜向的过度变形,模拟布料的伸展性。弯曲弹簧连接在经向或纬向上中间间隔有一个质点的两个质点,弯曲弹簧用于模拟布料在弯曲或折叠时的抗弯曲性能。
步骤2、布料动态仿真过程中,将时间离散化为td,时间间隔为Δt,时间序列下标d=0,1,2...,n,进行布料受力分析,布料受力包括各质点的重力、各弹簧-质点模型的阻尼力、碰撞物的碰撞响应支持力以及各质点间弹簧的弹力,其中,各质点的运动符合牛顿第二定律。然后使用计算效率较高的显示欧拉法来求解系统动力学方程,求解质点下一个时刻的速度和位移如下:
(1)式中,sij(td),vij(td),aij(td)分别为布料第i行第j列的质点在时刻td的位移、速度和加速度,而时刻td+Δt的位移和速度分别表示为sij(td+Δt)和vij(td+Δt)。
根据公式(1)每次计算得到各质点在时刻td+Δt的位移后,对与发生超弹性现象的弹簧相连的质点进行位置修正和速度约束。本发明中,首先设定各弹簧的原长,在仿真过程中,弹簧发生形变的长度范围不在弹簧原长的0.95~1.05倍之间时,就可能产生超弹性现象。超弹性现象产生的原因是由于在仿真过程中,将弹簧的伸缩量与弹力大小理想成线性的关系,但在实际中,当弹簧的长度超过一定范围后,其伸缩量和弹力之间将变成非线性关系,这就使得布料在一些受力较集中的局部区域(如布料悬挂点处)被过度拉伸或者产生过度的收缩,从而造成超弹性现象的产生,使布料呈现出不真实的形变状态。对与发生超弹性现象的弹簧相连的质点进行位置修正和速度约束时,首先进行位置修正,具体为:遍历与该质点相连的所有弹簧的伸长量是否在各弹簧原长的0.95~1.05倍之间,若超过则对与该质点相连的所有弹簧中最长或者最短的那根弹簧进行调整,调整方法是将该质点沿该弹簧方向移动至该弹簧形变为原长的0.95~1.05倍之间。然后对该质点的速度进行约束,具体为:先对该质点的速度进行矢量分解,将沿弹簧形变方向的速度分量设为零,而与弹簧形变方向垂直的速度分量减小至原来的0.8倍。
步骤3、分别构建布料和碰撞物(本实施例中采用桌子)的AABB层次包围体结构,通过构建出的AABB层次包围体进行碰撞检测,检测到发生碰撞时进行碰撞响应,否则直接进入步骤4;碰撞响应后进入步骤4。AABB层次包围体结构的构建具体如下:首先采用最小值与最大值表示法(最小值与最大值表示法为:将包围体空间区域界定为长方体的两个对角顶点,长方体的长、宽、高方向分别与三坐标系的坐标轴平行,长方体的左下角顶点到坐标系原点的距离为最小值,长方体的右上角顶点到坐标系原点的距离为最大值)将布料或碰撞物包围在内,然后采用自顶向下的方法以二叉树的组织形式来分别建立布料或碰撞物的AABB层次包围体结构。碰撞检测过程为检测布料AABB层次包围体结构与碰撞物AABB层次包围体结构是否发生相交。碰撞响应过程如下:当检测到发生碰撞时,如果布料发生碰撞的质点已经穿透到碰撞物中,那么将该发生穿透的质点上一时刻的位置赋值给该发生穿透的质点,从而将该发生穿透的质点位置调整至碰撞物表面;如果布料发生碰撞的质点未穿透到碰撞物中,则该发生碰撞的质点位置不做调整。
步骤4、首先,由Bernstein基函数和控制点定义布料的张量积Bézier曲面模型;然后,将弹簧-质点模型中质点的位置投射到张量积Bézier曲面的控制顶点上,布料面片便用张量积Bézier曲面进行动态表达和模拟,如图2-1、2-2、2-3和2-4所示。
其中,张量积Bézier曲面是采用矢值函数S(u,w)来表示u,w方向确定的平面上的二维区域R到三维欧几里得空间Ω的映射,即:
(2)式中,u∈[0,1],w∈[0,1],Vkh,k=0,1,2...,m,h=0,1,2...,n为张量积Bézier曲面的控制顶点,m,n分别为张量积Bézier曲面沿u,w方向的幂次;Bm,k(u)为u方向的Bernstein基函数族;Bn,h(u)为w方向的Bernstein基函数族。
应用实例:本实施例从用户的角度出发采用真实的图片纹理对布料进行纹理渲染,极大提高了成衣的效率,符合虚拟试穿中实时性、高效性和逼真性的要求,适用于3D虚拟试穿的应用场景,同时,实现鼠标交互事件,用户不仅可以通过鼠标左键转换不同的视角来观察布料模型各个部分的动态效果,而且可以通过鼠标来拽动虚拟布料的下边,使布料展现出用户所想要的动态效果,如图3-1、3-2和3-3所示。

Claims (3)

1.基于等几何弹簧质点模型的布料动态仿真方法,其特征在于:该方法包括以下步骤:
步骤1、基于弹簧-质点模型将布料面片离散成一个个质点,质点与质点之间用三类弹簧相连,构建出布料的物理分析模型;其中,结构弹簧连接经向或纬向上相邻的两个质点;剪切弹簧连接位于对角线上相邻的两个质点;弯曲弹簧连接在经向或纬向上中间间隔有一个质点的两个质点;
步骤2、布料动态仿真过程中,将时间离散化为td,时间间隔为Δt,时间序列下标d=0,1,2...,n,对布料的质点进行受力分析,并采用显示欧拉法求解动力学方程组,计算出质点下一时刻的速度和位移;每次计算得到各质点在时刻td+Δt的位移后,对与发生超弹性现象的弹簧相连的质点进行位置修正和速度约束;
步骤3、分别构建布料和碰撞物的AABB层次包围体结构,通过构建出的AABB层次包围体结构进行碰撞检测,检测到发生碰撞时进行碰撞响应,否则直接进入步骤4;碰撞响应后进入步骤4;碰撞响应过程如下:当检测到发生碰撞时,如果布料发生碰撞的质点已经穿透到碰撞物中,那么将该发生穿透的质点上一时刻的位置赋值给该发生穿透的质点,从而将该发生穿透的质点位置调整至碰撞物表面;如果布料发生碰撞的质点未穿透到碰撞物中,则该发生碰撞的质点位置不做调整;
步骤4、首先,由Bernstein基函数和控制点定义布料的张量积Bézier曲面模型;然后,将弹簧-质点模型中质点的位置投射到张量积Bézier曲面的控制顶点上,布料面片便用张量积Bézier曲面进行动态表达和模拟。
2.根据权利要求1所述的基于等几何弹簧质点模型的布料动态仿真方法,其特征在于:步骤2中,对与发生超弹性现象的弹簧相连的质点进行位置修正和速度约束时,首先进行位置修正,具体为:遍历与该质点相连的所有弹簧的伸长量是否在各弹簧原长的0.95~1.05倍之间,若超过则对与该质点相连的所有弹簧中最长或者最短的那根弹簧进行调整,调整方法是将该质点沿该弹簧方向移动至该弹簧形变为原长的0.95~1.05倍之间;然后对该质点的速度进行约束,具体为:先对该质点的速度进行矢量分解,将沿弹簧形变方向的速度分量设为零,而与弹簧形变方向垂直的速度分量减小至原来的0.8倍。
3.根据权利要求1所述的基于等几何弹簧质点模型的布料动态仿真方法,其特征在于:步骤3中,碰撞检测过程为检测布料AABB层次包围体结构与碰撞物AABB层次包围体结构是否发生相交。
CN201810431831.2A 2018-05-08 2018-05-08 基于等几何弹簧质点模型的布料动态仿真方法 Active CN109002571B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810431831.2A CN109002571B (zh) 2018-05-08 2018-05-08 基于等几何弹簧质点模型的布料动态仿真方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810431831.2A CN109002571B (zh) 2018-05-08 2018-05-08 基于等几何弹簧质点模型的布料动态仿真方法

Publications (2)

Publication Number Publication Date
CN109002571A true CN109002571A (zh) 2018-12-14
CN109002571B CN109002571B (zh) 2022-12-09

Family

ID=64573272

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810431831.2A Active CN109002571B (zh) 2018-05-08 2018-05-08 基于等几何弹簧质点模型的布料动态仿真方法

Country Status (1)

Country Link
CN (1) CN109002571B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110717297A (zh) * 2019-10-12 2020-01-21 武汉纺织大学 织物仿真模型的建立方法、系统、存储介质及电子设备
CN112926252A (zh) * 2021-02-09 2021-06-08 北京工业大学 液体与布料交互现象模拟方法
CN113435098A (zh) * 2021-06-30 2021-09-24 西南交通大学 一种织物类薄层软体物质变形后形貌精确仿真方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009003895A (ja) * 2007-06-25 2009-01-08 Nippon Telegr & Teleph Corp <Ntt> 対象物衝突模擬装置、その方法、そのプログラム、及びその記録媒体
CN104881557A (zh) * 2015-06-19 2015-09-02 南京大学 一种计算机中人体服装动态仿真实现方法
CN105677950A (zh) * 2015-12-30 2016-06-15 浙江巴贝领带有限公司 一种织物变形仿真的方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009003895A (ja) * 2007-06-25 2009-01-08 Nippon Telegr & Teleph Corp <Ntt> 対象物衝突模擬装置、その方法、そのプログラム、及びその記録媒体
CN104881557A (zh) * 2015-06-19 2015-09-02 南京大学 一种计算机中人体服装动态仿真实现方法
CN105677950A (zh) * 2015-12-30 2016-06-15 浙江巴贝领带有限公司 一种织物变形仿真的方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110717297A (zh) * 2019-10-12 2020-01-21 武汉纺织大学 织物仿真模型的建立方法、系统、存储介质及电子设备
CN110717297B (zh) * 2019-10-12 2022-07-12 武汉纺织大学 织物仿真模型的建立方法、系统、存储介质及电子设备
CN112926252A (zh) * 2021-02-09 2021-06-08 北京工业大学 液体与布料交互现象模拟方法
CN112926252B (zh) * 2021-02-09 2024-03-26 北京工业大学 液体与布料交互现象模拟方法
CN113435098A (zh) * 2021-06-30 2021-09-24 西南交通大学 一种织物类薄层软体物质变形后形貌精确仿真方法
CN113435098B (zh) * 2021-06-30 2022-11-15 西南交通大学 一种织物类薄层软体物质变形后形貌精确仿真方法

Also Published As

Publication number Publication date
CN109002571B (zh) 2022-12-09

Similar Documents

Publication Publication Date Title
CN104821006B (zh) 一种基于人体混合包围盒的动态服装仿真方法
CN104680573B (zh) 一种基于三角网格简化的纹理映射方法
CN109002571A (zh) 基于等几何弹簧质点模型的布料动态仿真方法
CN104881557A (zh) 一种计算机中人体服装动态仿真实现方法
CN103366054B (zh) 一种基于质点弹簧模型的衣物接缝处理和褶皱增强方法
CN102156785A (zh) 一种动态布料仿真方法
CN103559741B (zh) 虚拟手术中基于粒子的多相耦合方法
CN107578323A (zh) 三维真实人体在线虚拟试衣系统
CN106204697B (zh) 一种布料撕裂动态模拟系统
CN106934192A (zh) 一种参数优化的浅水方程模型水体建模方法
CN109992830A (zh) 基于物质点方法的山体滑坡灾害场景模拟方法
Bender et al. Efficient Cloth Simulation Using an Adaptive Finite Element Method.
CN110008873A (zh) 面部表情捕捉方法、系统及设备
CN104156502B (zh) 一种基于位置的衣物褶皱几何生成方法
Ozgen et al. Directional constraint enforcement for fast cloth simulation
Peng et al. PGN-Cloth: Physics-based graph network model for 3D cloth animation
Luo et al. Cloth Simulation with Adaptive Force Model in Three-Dimensional Space
Liu et al. Phusis cloth: A physics engine for real-time character cloth animation
Li Simulation of the 3D Garment Based on the Dynamic Particle System
CN108647411A (zh) 一种基于Grassmann空间和递归曲面表达的桁架受力模型建模方法
CN102004821A (zh) 织物流固耦合模型的动态流场混合分析方法
Mandal et al. Physics-based Mesh Deformation with Haptic Feedback and Material Anisotropy
Ye et al. Research on the visual dynamic simulation technology of fishing net
Gan et al. Design and Implementation of Collision Module in Virtual Reality Scene
Yang et al. Mass-spring Model for Liquid Object Collision Simulation

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant