服装动态模拟方法、装置、电子设备及存储介质制造方法及图纸

技术编号:27881913 阅读:28 留言:0更新日期:2021-03-31 01:24
本申请提供一种服装动态模拟方法、装置、电子设备及存储介质,包括:获取表征待模拟服装的多个三角形中的各个三角形的顶点在当前时刻的第一位置和第一速度;基于各个顶点的第一位置和第一速度,确定出各个顶点在下一时刻的第二位置;根据各个顶点的第一位置、第二位置和当前时刻至下一时刻的时长,分别确定出每个顶点是否会与除该顶点所处三角形之外的三角形的顶点发生碰撞的检测结果;根据检测结果,确定与检测结果对应的约束条件;基于约束条件、预先确定的各个顶点的质量和各个顶点的第二位置,对各个顶点的第二位置进行更新,将各个顶点分别移动至各自对应的更新后的位置,以使模拟出的展示效果贴近服装的真实动态展示效果。

【技术实现步骤摘要】
服装动态模拟方法、装置、电子设备及存储介质
本申请涉及计算机图形学
,具体而言,涉及一种服装动态模拟方法、装置、电子设备及存储介质。
技术介绍
电子服装的动态模拟是虚拟现实领域的热门技术,相关技术被应用到诸多领域,如网络购物、3D游戏、三维动画等。电子服装的动态模拟不仅可以比较直观地为消费者展示服装的着装效果,也可以为游戏体验者带来较佳的游戏体验。在现有技术利用计算机对服装进行动态模拟时,通常只会考虑服装与人体模型之间的碰撞,不曾考虑存在同一件服装的自碰撞情况,继而导致模拟出来的衣服动态展示效果无法贴近服装的真实动态展示效果。
技术实现思路
鉴于此,本申请实施例的目的在于提供一种服装动态模拟方法、装置、电子设备及存储介质,以使模拟出来的衣服动态展示效果贴近服装的真实动态展示效果。第一方面,本申请实施例提供一种服装动态模拟方法,所述方法包括:获取表征待模拟服装的多个三角形中的各个三角形的顶点在当前时刻的第一位置和第一速度;基于各个顶点的第一位置和第一速度,确定出各个顶点在下一时刻的第二位置;根据各个顶点的第一位置、第二位置和所述当前时刻至所述下一时刻的时长,分别确定出每个顶点是否会与除该顶点所处三角形之外的三角形的顶点发生碰撞的检测结果;根据所述检测结果,确定出与所述检测结果对应的约束条件;基于所述约束条件、预先确定的各个顶点的质量和各个顶点的第二位置,对各个顶点的第二位置进行更新,得到更新后的位置;将各个顶点分别移动至各自对应的更新后的位置。在上述实现过程中,根据表征待模拟服装的多个三角形中的各个三角形的顶点的第一位置、第二位置和所述当前时刻至所述下一时刻的时长,分别确定出每个顶点是否会与除该顶点所处三角形之外的三角形的顶点发生碰撞的检测结果,继而根据所述检测结果,确定出与所述检测结果对应的约束条件,充分考虑了服装的自碰撞情况,针对待模拟服装上的各个顶点,该顶点与其余顶点发生碰撞,以及不发生碰撞,对该顶点的位置的校正方式不同,因此,在确定出对应的约束条件之后,基于所述约束条件、预先确定的各个顶点的质量和各个顶点的第二位置,准确地对各个顶点的第二位置进行更新,得到更新后的位置,最后通过将各个顶点分别移动至各自对应的更新后的位置以对衣服进行动态模拟,由于上述过程充分考虑了衣服的自碰撞情况,继而使得模拟出来的衣服动态展示效果贴近服装的真实动态展示效果。基于第一方面,在一种可能的设计中,所述根据各个顶点的第一位置、第二位置和所述当前时刻至所述下一时刻的时长,分别确定出每个顶点是否会与除该顶点所处三角形之外的三角形的顶点发生碰撞的检测结果,包括:根据各个顶点的第一位置和第二位置,确定出不可能发生碰撞的三角形对,以及可能会发生碰撞的三角形对;针对所述可能发生碰撞的三角形对中的每对三角形,根据该对三角形中的各个顶点的第一位置、第二位置和所述时长,确定出表征该顶点是否会与该对三角形中,除该顶点所处三角形之外的三角形的顶点发生碰撞的第一检测结果;针对所述不可能发生碰撞的三角形对中的每对三角形,确定出表征该对三角形中的顶点之间不会发生碰撞的第二检测结果;其中,所述检测结果包括:所述第一检测结果和所述第二检测结果。在上述实现过程中,根据各个顶点的第一位置和第二位置,确定出不可能发生碰撞的三角形对,以及可能会发生碰撞的三角形对,可以理解的是,由于不可能发生碰撞的三角形对中的顶点不会与服装上的其余顶点发生自碰撞,因此,无需对不可能发生碰的三角形对中的顶点进行碰撞检测运算,只需对可能发生碰撞的三角形对中的顶点进行碰撞检测运算,继而降低碰撞检测的计算复杂度。基于第一方面,在一种可能的设计中,所述根据各个顶点的第一位置、第一速度和所述当前时刻至所述下一时刻的时长,分别确定出每个顶点是否会与除该顶点所处三角形之外的三角形的顶点发生碰撞的检测结果,包括:根据各个顶点的第一位置、第一速度和所述时长,分别确定出每个顶点是否会与除该顶点所处三角形之外的三角形发生碰撞,以及是否会与除该顶点所处三角形之外的三角形的顶点发生碰撞的检测结果。在上述实现过程中,由于衣服上的一部分顶点可能会与衣服上的三角形碰撞,另一部分也可能会与衣服上的顶点发生碰撞,针对这两种碰撞所需的校正方式不同(即所需约束条件不同),因此,通过充分考虑衣服上的顶点与衣服上的三角形存在碰撞的情况,继而能够使得模拟出来的衣服动态展示效果更贴近服装的真实动态展示效果。基于第一方面,在一种可能的设计中,所述根据各个顶点的第一位置、第二位置和所述时长,分别确定出每个顶点是否会与除该顶点所处三角形之外的三角形发生碰撞,包括:针对每个顶点,从除该顶点所处三角形之外的其余三角形中,分别确定出距离该顶点最近的特征点;针对每个特征点,确定该特征点与该顶点所构成的直线的方向向量和长度;根据该特征点所处目标三角形上的各个目标顶点的第一位置、第二位置和所述时长,确定出各个目标顶点的第二速度;根据该顶点的第一位置、第二位置和所述时长,确定出该顶点的第二速度;根据所述目标三角形上的各个目标顶点的第二速度,以及该顶点的第二速度,确定该顶点和各个目标顶点在所述方向向量上的投影速度;根据各个目标顶点的投影速度,确定出该特征点在所述方向向量方向上的速度;根据该顶点的投影速度、该特征点的速度、所述长度,以及所述当前时刻至所述下一时刻之间的时长,确定该顶点是否会与所述目标三角形发生碰撞。在上述实现过程中,在确定衣服上的某个顶点是否会与衣服上的目标三角形发生碰撞时,通过利用目标三角形上的一个特征点的移动速度和方向来表征该目标三角形的移动速度和方向,并将该顶点的速度投影到该顶点与该特征点所构成的直线的方向向量上,以使该顶点的投影速度方向和该特征点的速度方向一致,继而能够利用该顶点的投影速度和该特征点的速度,简单快速地确定出该顶点是否会与该目标三角形碰撞。基于第一方面,在一种可能的设计中,在所述根据所述检测结果,确定出与所述检测结果对应的约束条件之前,所述方法还包括:获取表征人体模型的多个三角形中的各个三角形的端点的位置;其中,所述待模拟服装穿戴于所述人体模型上;根据各个端点的位置、各个顶点的第一位置和第二位置,分别确定出每个顶点是否会与各个端点所处三角形发生碰撞的检测结果。在上述实现过程中,由于衣服上的顶点可能会与人体模型存在碰撞,而且,衣服与人体模型碰撞所对应的位置校正方式和衣服的自碰撞不同,即约束条件不同,因此,通过充分考虑衣服上的顶点与人体模型存在碰撞的情况,继而能够使得模拟出来的衣服动态展示效果更贴近服装的真实动态展示效果。基于第一方面,在一种可能的设计中,在所述得到更新后的位置之后,所述方法还包括:针对各个顶点,基于该顶点的更新后的位置和该顶点的第一位置,确定该顶点在所述下一时刻的速度。在上述实现过程中,在需要模拟衣服不断运动的状态,且衣服上的顶点在不同时刻所对应的速度可能会不断发生变化时,通过确定该顶点在所述下一时刻的速度,继而能保证后续利用所述下一时刻的速度对衣服的移动状态进行模拟时,模拟效果更贴近服装的真实动态展示效果。基本文档来自技高网...

【技术保护点】
1.一种服装动态模拟方法,其特征在于,所述方法包括:/n获取表征待模拟服装的多个三角形中的各个三角形的顶点在当前时刻的第一位置和第一速度;/n基于各个顶点的第一位置和第一速度,确定出各个顶点在下一时刻的第二位置;/n根据各个顶点的第一位置、第二位置和所述当前时刻至所述下一时刻的时长,分别确定出每个顶点是否会与除该顶点所处三角形之外的三角形的顶点发生碰撞的检测结果;/n根据所述检测结果,确定出与所述检测结果对应的约束条件;/n基于所述约束条件、预先确定的各个顶点的质量和各个顶点的第二位置,对各个顶点的第二位置进行更新,得到更新后的位置;/n将各个顶点分别移动至各自对应的更新后的位置。/n

【技术特征摘要】
1.一种服装动态模拟方法,其特征在于,所述方法包括:
获取表征待模拟服装的多个三角形中的各个三角形的顶点在当前时刻的第一位置和第一速度;
基于各个顶点的第一位置和第一速度,确定出各个顶点在下一时刻的第二位置;
根据各个顶点的第一位置、第二位置和所述当前时刻至所述下一时刻的时长,分别确定出每个顶点是否会与除该顶点所处三角形之外的三角形的顶点发生碰撞的检测结果;
根据所述检测结果,确定出与所述检测结果对应的约束条件;
基于所述约束条件、预先确定的各个顶点的质量和各个顶点的第二位置,对各个顶点的第二位置进行更新,得到更新后的位置;
将各个顶点分别移动至各自对应的更新后的位置。


2.根据权利要求1所述的方法,其特征在于,所述根据各个顶点的第一位置、第二位置和所述当前时刻至所述下一时刻的时长,分别确定出每个顶点是否会与除该顶点所处三角形之外的三角形的顶点发生碰撞的检测结果,包括:
根据各个顶点的第一位置和第二位置,确定出不可能发生碰撞的三角形对,以及可能会发生碰撞的三角形对;
针对所述可能发生碰撞的三角形对中的每对三角形,根据该对三角形中的各个顶点的第一位置、第二位置和所述时长,确定出表征该顶点是否会与该对三角形中,除该顶点所处三角形之外的三角形的顶点发生碰撞的第一检测结果;
针对所述不可能发生碰撞的三角形对中的每对三角形,确定出表征该对三角形中的顶点之间不会发生碰撞的第二检测结果;其中,所述检测结果包括:所述第一检测结果和所述第二检测结果。


3.根据权利要求1所述的方法,其特征在于,所述根据各个顶点的第一位置、第二位置和所述当前时刻至所述下一时刻的时长,分别确定出每个顶点是否会与除该顶点所处三角形之外的三角形的顶点发生碰撞的检测结果,包括:
根据各个顶点的第一位置、第二位置和所述时长,分别确定出每个顶点是否会与除该顶点所处三角形之外的三角形发生碰撞,以及是否会与除该顶点所处三角形之外的三角形的顶点发生碰撞的检测结果。


4.根据权利要求3所述的方法,其特征在于,所述根据各个顶点的第一位置、第二位置和所述时长,分别确定出每个顶点是否会与除该顶点所处三角形之外的三角形发生碰撞,包括:
针对每个顶点,从除该顶点所处三角形之外的其余三角形中,分别确定出距离该顶点最近的特征点;
针对每个特征点,确定该特征点与该顶点所构成的直线的方向向量和长度;
根据该特征点所处目标三角形上的各个目标顶点的第一位置、第二位置和所述时长,确定出各个目标顶点的第二速度;
根据该顶点的第一位置、第二位置和所述时长,确定出该顶点的第二速度;
根据所述目标三角形上的各个目标顶点的第二速度,以及该顶点的第二速度,确定该顶点和各个目标顶点在所述方向向量上的投影速度;
根据各个目标顶点的投影速度,确定出该特征点在所述方向向量方向上的速度;
根据该顶点的投影速度、该特征点的速度、所述长度,以及所述时长,确定该顶点是否会与所述目标三角形发生碰撞。


5.根据...

【专利技术属性】
技术研发人员:徐艳霞
申请(专利权)人:北京维盛视通科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1