CN112419490B - 面料的模拟方法及装置、电子设备、可读存储介质 - Google Patents
面料的模拟方法及装置、电子设备、可读存储介质 Download PDFInfo
- Publication number
- CN112419490B CN112419490B CN202011461856.0A CN202011461856A CN112419490B CN 112419490 B CN112419490 B CN 112419490B CN 202011461856 A CN202011461856 A CN 202011461856A CN 112419490 B CN112419490 B CN 112419490B
- Authority
- CN
- China
- Prior art keywords
- fabric
- rendering
- map
- simulated
- normal
- 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.)
- Active
Links
- 239000004744 fabric Substances 0.000 title claims abstract description 191
- 238000000034 method Methods 0.000 title claims abstract description 50
- 238000009877 rendering Methods 0.000 claims abstract description 119
- 238000004088 simulation Methods 0.000 claims abstract description 93
- 238000013507 mapping Methods 0.000 claims abstract description 33
- 238000004364 calculation method Methods 0.000 claims description 26
- 230000000704 physical effect Effects 0.000 claims description 25
- 238000013016 damping Methods 0.000 claims description 12
- 230000035515 penetration Effects 0.000 claims description 11
- 239000012634 fragment Substances 0.000 claims description 8
- 230000009471 action Effects 0.000 claims description 7
- 238000005452 bending Methods 0.000 claims description 7
- 238000001514 detection method Methods 0.000 claims description 7
- 238000004590 computer program Methods 0.000 claims description 6
- 230000000694 effects Effects 0.000 abstract description 27
- 239000011159 matrix material Substances 0.000 description 14
- 239000000463 material Substances 0.000 description 13
- 238000012545 processing Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 5
- 239000013598 vector Substances 0.000 description 5
- 229920000742 Cotton Polymers 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 239000002245 particle Substances 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000007613 environmental effect Effects 0.000 description 3
- 239000010985 leather Substances 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 239000002184 metal Substances 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000007639 printing Methods 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 244000025254 Cannabis sativa Species 0.000 description 1
- 235000012766 Cannabis sativa ssp. sativa var. sativa Nutrition 0.000 description 1
- 235000012765 Cannabis sativa ssp. sativa var. spontanea Nutrition 0.000 description 1
- 230000002238 attenuated effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 235000009120 camo Nutrition 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 235000005607 chanvre indien Nutrition 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 238000004043 dyeing Methods 0.000 description 1
- 239000011487 hemp Substances 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000009940 knitting Methods 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000000452 restraining effect Effects 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000004753 textile Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 210000002268 wool Anatomy 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Image Generation (AREA)
Abstract
本申请提供一种面料的模拟方法及装置、电子设备、可读存储介质。面料的模拟方法,包括:获取待模拟面料的渲染属性;所述渲染属性包括:基础贴图;和镜面贴图、法线贴图、底纹贴图、透明度中的至少一个属性;基于所述渲染属性渲染所述待模拟面料,以显示模拟面料。该方法用以实现适应多种面料效果的面料模拟,提高面料的模拟效果。
Description
技术领域
本申请涉及服装模拟技术领域,具体而言,涉及一种面料的模拟方法及装置、电子设备、可读存储介质。
背景技术
传统的服装模拟技术,通常只针对特定面料(材质)的服装进行模拟,比如:仅能模拟纯棉、仅能模拟牛仔布等,不能实现适应更多其他材质的面料的模拟,进而呈现的模拟面料的生动性和逼真性也较差。
因此,现有的服装模拟技术不能适应更多其他材质的面料的模拟,适用性较差,模拟效果也较差。
发明内容
本申请实施例的目的在于提供一种面料的模拟方法及装置、电子设备、可读存储介质,用以实现适应多种面料效果的面料模拟,提高面料的模拟效果。
第一方面,本申请实施例提供一种面料的模拟方法,包括:获取待模拟面料的渲染属性;所述渲染属性包括:基础贴图;和镜面贴图、法线贴图、底纹贴图、透明度中的至少一个属性;基于所述渲染属性渲染所述待模拟面料,以显示模拟面料。
在本申请实施例中,与现有技术相比,利用待模拟面料的渲染属性对待模拟面料进行渲染,渲染属性除了包括基本的基础贴图属性,还包括镜面贴图、法线贴图、底纹贴图、透明度中的至少一个属性,通过多种渲染属性的设计,当选择不同的渲染属性时,最终渲染出的模拟面料能够呈现对应材质的面料效果,进而实现适应多种材质的面料模拟,还能够提高显示的模拟面料的生动性和逼真性,提高面料的模拟效果。
作为一种可能的实现方式,所述方法还包括:获取所述模拟面料的物理属性;基于所述物理属性模拟所述模拟面料的物理效果。
在本申请实施例中,基于模拟面料,通过获取模拟面料的物理属性,还能够实现物理效果的模拟,提高模拟面料的适用性和模拟效果。
作为一种可能的实现方式,所述物理属性包括:基本参数、模拟参数、剖分参数和碰撞参数中的至少一项;所述基本参数包括:密度、厚度以及半径;所述模拟参数包括:拉伸强度、弯曲强度以及阻尼系数;所述剖分参数包括:网格剖分度和边线剖分度;所述碰撞参数包括:碰撞层级、碰撞开关、摩擦开关以及渗透深度;所述碰撞层级用于表征所述模拟面料进行碰撞分层时的权重;所述碰撞开关用于表征所述模拟面料是否需要进行碰撞检测;所述摩擦开关用于表征所述模拟面料是否需要进行摩擦作用;所述渗透深度用于表征所述模拟面料的摩擦力。
在本申请实施例中,物理属性可以包括:基本参数、模拟参数、剖分参数和碰撞参数中的至少一项;通过这些物理属性能够实现不同的物理效果的模拟,提高模拟面料的物理模拟效果。
作为一种可能的实现方式,所述密度的范围为:0.01~10Kg/m2;所述厚度的范围为:0.001~0.1m;所述半径的范围为:0.001~0.1m;所述拉伸强度的范围为:0~1;所述弯曲强度的范围为:0~1;所述阻尼系数的范围为:0~1;所述网格剖分度的范围为:0~1;所述边线剖分度的范围为:0~1;所述渗透深度的范围为:0~1。
在本申请实施例中,基于不同的物理属性的不同取值,可以实现不同的物理效果的模拟,提高模拟面料的物理模拟效果。
作为一种可能的实现方式,所述基于所述渲染属性渲染所述待模拟面料,以显示模拟面料,包括:针对所述基础贴图,通过所述基础贴图的主纹理坐标渲染所述基础贴图;和/或针对所述镜面贴图,通过所述镜面贴图的主纹理坐标渲染所述镜面贴图;和/或针对所述法线贴图,通过所述法线贴图的副纹理坐标渲染所述法线贴图;和/或针对所述底纹贴图,通过与所述法线贴图共用所述副纹理坐标进行渲染。
在本申请实施例中,通过两组纹理坐标来实现不同的渲染属性的渲染,现适应多种材质的面料模拟,还能够提高显示的模拟面料的生动性和逼真性,提高面料的模拟效果。
作为一种可能的实现方式,所述渲染属性包括所述法线贴图,所述基于所述渲染属性渲染所述待模拟面料,以显示模拟面料,包括:针对所述法线贴图,通过片元着色器基于目标点的副纹理坐标计算所述目标点的法线的切线以及副切线;基于所述切线和副切线渲染所述法线贴图。
在本申请实施例中,在对法线贴图进行渲染时,可以通过片元着色器进行切线和副切线的计算,通过片元着色器对渲染参数进行计算,提高渲染效率。
作为一种可能的实现方式,所述切线的计算公式为:其中,p为所述目标点,N为所述目标点的法线,Δp1、Δp2分别为所述目标点的第一差分值和第二差分值,Δu1、Δu2分别为所述目标点的副纹理坐标在第一纹理方向上的第三差分值和第四差分值;所述副切线的计算公式为:/>其中,Δv1、Δv2分别为所述目标点的副纹理坐标在第二纹理方向上的第五差分值和第六差分值。
在本申请实施例中,在计算切线和副切线时,通过叉乘进行计算,避免了三阶矩阵的求逆,简化计算过程,实现快速地计算,提高计算的效率,进而提高渲染的效率。
第二方面,本申请实施例提供一种面料的模拟装置,包括用于实现第一方面以及第一方面的任意一种可能的实现方式中所述的方法的功能模块。
第三方面,本申请实施例提供一种电子设备,包括存储器、处理器以及显示器,所述存储器中存储有计算机程序指令,所述计算机程序指令被所述处理器读取并运行时,执行如第一方面以及第一方面的任意一种可能的实现方式中所述的方法。
第四方面,本申请实施例提供一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被计算机运行时执行如第一方面以及第一方面的任意一种可能的实现方式中所述的方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的面料的模拟方法的流程图;
图2为本申请实施例提供的法线贴图的原理示意图;
图3为本申请实施例提供的面料的模拟装置的功能模块;
图4为本申请实施例提供的电子设备的示意图。
图标:200-面料的模拟装置;201-获取模块;202-渲染模块;300-电子设备;301-存储器;302-处理器;303-显示器;304-输入输出模块。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
本申请实施例所提供的面料的模拟方法可以应用于服装的三维仿真模拟。也就是说,该方法的流程可以理解为服装的仿真模拟流程中的一部分。对于三维仿真服装来说,与实体服装一样,也分为不同的面料,不同的面料对应不同的材质,所呈现的效果也不相同。在模拟服装时,先对服装的各个部分的面料进行模拟,当完成服装的各个部分的面料的模拟后,则完成整个服装的模拟。
服装或者面料的模拟属于三维仿真模拟技术,要实现三维仿真模拟技术,需要基于三维仿真模拟平台,在本申请实施例中,三维仿真模拟平台可以是电脑、手机和平板等电子设备,在这些电子设备上,可以安装三维仿真模拟工具(比如应用程序),通过三维仿真模拟工具,输入相关的参数和属性等信息,实现服装的仿真模拟。因此,该面料的模拟方法可以应用于各类电子设备。其应用场景可以是制衣公司的制衣系统与试衣系统等。
请参照图1,为本申请实施例提供的面料的模拟方法的流程图,该模拟方法包括:
步骤101:获取待模拟面料的渲染属性;渲染属性包括:基础贴图;和镜面贴图、法线贴图、底纹贴图、透明度中的至少一个属性。
步骤102:基于渲染属性渲染待模拟面料,以显示模拟面料。
在本申请实施例中,与现有技术相比,利用待模拟面料的渲染属性对待模拟面料进行渲染,渲染属性除了包括基本的基础贴图属性,还包括镜面贴图、法线贴图、底纹贴图、透明度中的至少一个属性,通过多种渲染属性的设计,当选择不同的渲染属性时,最终渲染出的模拟面料能够呈现对应材质的面料效果,进而实现适应多种不同材质的面料的模拟,还能够提高显示的模拟面料的生动性和逼真性,提高面料的模拟效果。
接下来对步骤101-步骤102以及该模拟方法的实施方式进行介绍。
在步骤101中,获取待模拟面料的渲染属性。其中,待模拟面料可以是在服装的模拟过程中,由用户选定的面料,比如:针对服装的某个部位,需要体现丝绸效果,用户可以通过三维仿真模拟平台选择丝绸作为待模拟面料。
当待模拟面料确定以后,对于渲染属性的获取,作为一种可选的实施方式,步骤101包括:获取用户输入的渲染属性,在这种实施方式中,当用户选定面料后,用户将该面料对应的渲染属性输入到三维仿真模拟平台中。作为另一种可选的实施方式,步骤101包括:获取预先存储的待模拟面料的默认渲染属性。在这种实施方式中,三维仿真模拟平台中已经存储有待模拟面料对应的渲染属性,该渲染属性可以是之前在进行该待模拟面料的模拟时,所获取到的渲染属性,比如:在之前完成该面料的模拟时,自动将其对应的渲染属性进行存储,以便后续有模拟需求时,可以作为该面料的默认渲染属性。也可以是由用户预先基于各个面料先创建对应的渲染属性,然后进行存储,作为默认渲染属性。需要注意的是,在这种实施方式中,预先存储的渲染属性均作为默认渲染属性,用户在查看或者使用该默认渲染属性时,依然可以对默认渲染属性进行调整。
在本申请实施例中,渲染属性包括:基础贴图,以及:镜面贴图、法线贴图、底纹贴图、透明度中的至少一个属性。需要注意的是,基础贴图是必须有的属性,其他类型的属性可以根据待模拟面料进行选择性的使用。
进一步地,在步骤101中获取到渲染属性以后,执行步骤102,基于所述渲染属性渲染待模拟面料,以显示模拟面料。作为一种可选的实施方式,步骤102包括:针对基础贴图,通过基础贴图的主纹理坐标渲染基础贴图;和/或针对镜面贴图,通过镜面贴图的主纹理坐标渲染镜面贴图;和/或针对法线贴图,通过法线贴图的副纹理坐标渲染法线贴图;和/或针对底纹贴图,通过与法线贴图共用副纹理坐标进行渲染。
在这种实施方式中,通过两组纹理坐标(主纹理坐标和副纹理坐标)可以实现面料的渲染。对于纹理,实际上是一个二维数组,它的元素是一些颜色值。单个颜色值被称为纹理元素或纹理像素。每个纹理元素在纹理中都有一个唯一的地址,这个地址由一个行和列组成。因而,纹理中的每一个纹理像素可以通过它的坐标来声明,即纹理坐标,纹理坐标位于纹理空间中。因此,当获取到各个贴图(渲染属性)后,通过贴图的纹理坐标的计算可以实现贴图纹理的渲染,当不同的贴图渲染完成后,所组成的纹理叠加效果,则为面料的渲染效果。在应用纹理坐标时,相同的面料,还可以对纹理进行矩阵变换,以实现相同面料呈现不同的效果(缩放、平移、旋转等)。
在本申请实施例中,通过两组纹理坐标来实现不同的渲染属性的渲染,实现适应多种不同材质的面料的模拟,还能够提高显示的模拟面料的生动性和逼真性,提高面料的模拟效果。
接下来对本申请实施例中所涉及到的渲染属性及其渲染原理进行介绍。
基础贴图,是直接反映面料外观的贴图,相当于渲染过程中的主贴图,表示面料外表印上了什么样的图案,基础贴图通过主纹理坐标来计算使用。这个属性可以说必不可少,即使在没有其他类型的属性下,只要将基础贴图设置好,仍然可以粗略的模拟出面料的效果。当添加上其他类型的贴图后,可以更加逼真的去模拟面料。
镜面贴图,将镜面光通过贴图内容来实现,主要用于模拟表面反光强弱不同的面料,比如镶嵌了塑料亮片或金属片的面料。默认镜面贴图是一张全黑的贴图,相当于默认没有镜面光照。通过镜面贴图,可以实现皮革材料以及印花材料等效果。镜面贴图也使用主纹理坐标,镜面贴图默认和基础贴图的形状保持一致。
法线贴图,用于模拟面料表面丰富细节的贴图。由于面料有各种各样的针织方法,进而不同的面料凹凸感是不同的,需要不同的法线贴图来表示。比如精梳棉和粗麻以及毛线织物就有很大的不同。通常法线贴图使用副纹理坐标,这是因为法线贴图表现的是针织物的细节表面,和一块面料印什么图案是无关的。
法线贴图的原理:根据贴图的颜色,确定当前平面的法线,并代替真实的法线,由此就可以产生凹凸不平的感觉。但是,如果直接使用贴图的颜色值是不可以的,除非三角形表面正好在XY平面上,这是因为纹理空间为一个二维的平面空间,拓展到三维空间的话,其表面法线固定为(0,0,1)T,而法线贴图仅仅是一张贴图,无法控制渲染对象面朝哪里,那么只能假定所存储的法线都是在XY平面上,也就是纹理空间下的。为此,为了正确的应用法线贴图,作为一种可选的实施方式,针对法线贴图,通过片元着色器基于目标点的副纹理坐标计算目标点的法线的切线以及副切线;基于切线和副切线渲染法线贴图。为了便于理解,请参照图2,为该计算原理的示意图,其中,N为法线,B为法线的切线,T为法线的副切线,P为目标点,P点所在的区域为前述实施例中的三角形。
在这种实施方式中,通过片元着色器计算切线和副切线,相当于采用了GPU(Graphics Processing Unit,图形处理器)进行计算的方式,采用这种方式,由于本申请的应用场景为服装动态模拟,CPU(Central Processing Unit,中央处理器)端计算压力都集中在服装模拟的计算上。而动态场景下,渲染服装的切线和副切线需要每帧都要进行计算,无疑增加了CPU的计算量。所以,通过将切线和副切线的计算放置于GPU端,虽然稍微增加了GPU的负载,但是减少了CPU的计算压力,有助于平衡计算负载,进而提高渲染效率。
接下来基于图2的示意图,对法线贴图的计算原理进行介绍。首先,将纹理空间的基坐标称之为U和V,其中U和V是正交单位向量,用UV是为了和三维空间下的XYZ区分开来。计算目标为:空间变换矩阵M,可以将纹理贴图的法线Nt变换到对应的纹理空间下,实现法线贴图的渲染,变换后的最终法线Nfinal=M·Nt。为了得到空间变换矩阵M,已知条件有点的副纹理坐标uv=(u,v)T,点(p点)的坐标,点的法线N,需要计算出在切线T以及副切线B,以及M=(T,B,N)。
在计算之前,先对其计算公式进行简化,在传统的方法中,对于三角形上的一个点p(不是顶点,就是随机的一个普通点),首先知道切线以及副切线/>因为切线其本质就是副纹理坐标方向的梯度,所以:/>其中,d表示微分,·表示点乘,对于一个插值化的三角形来说,梯度的变化是固定的,可以根据该公式以及T、B分量不包含法线方向分离,得到:/>其中,Δp1,2为点p的差分值,Δu1,2和Δv1,2为副纹理坐标在T方向和B方向上的差分值,这些值可以通过GLSL(OpenGL ShadingLanguage,OpenGL着色语言)内置函数获取:可以看出,如果直接利用这两个公式对T和B进行计算,需要在像素着色器中计算3阶矩阵的逆矩阵,还包括叉乘,因此,可以对其进行简化。
首先,假设矩阵M的转置矩阵为MT=(x,y,z),其中,x,y,z为三维列向量,那么矩阵的行列式(det M)为:det M=(x×y)·z,其中,×表示向量叉乘,·表示向量点乘,伴随矩阵为:M*=(y×z z×x x×y)。根据伴随矩阵的性质可以求取其逆矩阵为:基于伴随矩阵的逆矩阵,可以对T的计算公式进行改进:/>可以看出,简化后的T的计算公式中的行列式的值实质上就是:|Δp1×Δp2|2,伴随矩阵则使用了2个新的项,分别为Δp1⊥和Δp2⊥,其中,符号⊥表示垂直,这两项表示在三角形平面上,与三角形的边垂直的分量。由于Δp1×Δp2最终结果向量和三角形表面法线N方向一致,可以考虑使用N来代替Δp1×Δp2:Δp1×Δp2=λN,此时再将该值带入到T的简化后公式中,得到:其中,λ为任意非零值,可以直接假设其为1,因为得到T之后还要归一化,无论λ的值是多少都没有影响,并且由于N是法线,那么|N|2表示法线的长度,其为1,因而可以将|N|2同样消除掉。最终,得到的计算公式为:在计算以后,再对T和B进行归一化,然后再对法线贴图进行应用即可。
在本申请实施例中,在计算切线和副切线时,通过叉乘进行计算,避免了三阶矩阵的求逆,简化计算过程,实现快速地计算,提高计算的效率,进而提高渲染的效率。
底纹贴图,是为了表现出布料的原始图样的贴图。底纹贴图和法线贴图共用纹理坐标,从设计角度来说,底纹贴图是对法线贴图的一种颜色上的辅助表现。通常情况可以不使用底纹贴图。如果要添加底纹贴图,对应的基础贴图的样式需要进行修改。如果说基础贴图是面料上烫印的图案,则底纹贴图是无印染图案的面料本身。
透明度,通过调整透明度,可以模拟出具有透明效果的材质,如纱巾这种材质。透明度的设置为0到100,0为全透明,100为完全不透明。
通过上述对渲染属性的介绍,可以看出,通过设计不同的渲染属性,基于渲染属性进行渲染,便能呈现不同的面料显示效果。需要注意的是,对于如何对贴图进行应用,实现贴图的渲染,属于本领域技术人员的公知常识,在此不进行详细地介绍。
在执行步骤102后,便能实现模拟面料的渲染和显示,基于模拟面料,还可以进行物理效果的模拟,因此,该方法还包括:获取模拟面料的物理属性;基于物理属性对模拟面料的物理效果进行模拟。其中,模拟面料的物理属性的获取的实施方式与前述实施例中的渲染属性的获取方式一致,在此不再重复介绍。
对于物理属性,可以包括:基本参数、模拟参数、剖分参数和碰撞参数中的至少一项。其中,基本参数包括:密度、厚度以及半径;模拟参数包括:拉伸强度、弯曲强度以及阻尼系数;剖分参数包括:网格剖分度和边线剖分度;碰撞参数包括:碰撞层级、碰撞开关、摩擦开关以及渗透深度;碰撞层级用于表征模拟面料进行碰撞分层时的权重;碰撞开关用于表征模拟面料是否需要进行碰撞检测;摩擦开关用于表征模拟面料是否需要进行摩擦作用;渗透深度用于表征所述模拟面料的摩擦力。接下来分别就这些属性进行一一介绍。
基本参数中,密度决定板片的重量,其范围为0.01~10Kg/m2,通常默认面料密度为0.2Kg/m2。厚度会影响面料的显示效果,范围为:0.001~0.1m,通常默认面料厚度为0.002m。布料半径表示布料的碰撞半径,范围为0.001~0.1m,通常碰撞半径会比厚度大一些,默认0.004m。在面料模拟中,碰撞分为环境碰撞和自碰撞。环境碰撞相当于面料与模特(面料承载对象)的一个碰撞过程,自碰撞为面料和面料自身进行碰撞。在自碰撞下,又分为点对点碰撞检测与响应,及点与面的碰撞检测与响应。碰撞半径,就是点对点碰撞检测与响应中,面料质点的半径大小。在环境碰撞中,也是使用面料质点对模特进行碰撞计算,也是使用这个碰撞半径。而厚度,就是影响点与面的碰撞检测与响应的一个参数,相当于所谓的面(也就是三角面)的厚度。面料密度,在服装纺织业中术语叫做克重,也可以使用盎司作为重量单位。在实际数据中,最轻的面料,每平米为10克;即使是丝绸也只能到20克。至于密度的上限,内部可以设置为10千克。考虑面料上可能挂着金属片之类的,重量则会急剧增加。
模拟参数中,拉伸强度和弯曲强度是三维仿真模拟平台生成内部约束所需要的参数。拉伸强度,范围0到1,决定了布料的自身拉扯的韧性强度,该值越大,表示刚性越大,更不易发生形变,比如皮革;该值越小,则柔韧性越强,更容易被拉伸开,比如莫代尔棉。弯曲强度,范围0到1,代表了面料弯折后的弹性。弯曲强度越大,表示面料更容易从弯折中恢复,比如比较厚的皮革;弯曲强度越小,则更容易被折叠,大多数棉质面料都如此。阻尼系数没有实际的物理含义,通常是用于对面料速度进行阻尼作用的参数,范围0到1,面料质点的速度会按照阻尼系数进行等比例衰减,通常默认阻尼系数为0.5。当阻尼系数为1时,面料会表现出强烈的整体性,单独面料的速度会在全部面料质点的共同作用下进行运动阻尼。当阻尼系数为0时,三维仿真模拟平台不会对质点速度进行衰减。
剖分参数中,由于三维仿真模拟平台采用三角网格模拟数据,三角网格的剖分参数决定了面料的疏密程度,对于外部界面,只涉及到网格剖分度和边线剖分度。网格剖分度决定了一个板片可剖分三角形的多少,范围为0到1,剖分度越大,板片越精细,内部三角形数量越多。通常来说,板片越精细,模拟效果越好,但是计算数量增加,性能会下降。为此只需要对个别板片进行细分操作,对于大多数板片而言,使用默认参数即可。对于比较细小的板片如袖口,衣领等就需要改动网格剖分度。边线剖分度,涉及到板片边界的三角形剖分情况,范围为0到1,边线剖分度越大,则板片边界线的网格越密集,这个参数通常对于圆弧较多的板片有价值。
碰撞参数中,碰撞层级用于单间服装,代表面料进行碰撞分层的权重值。对于两个层级不同的板片,层级高的板片位于层级低的板片的外侧。碰撞开关是面料与人模是否进行碰撞检测的开关。由于不是所有的板片都可能会和人模碰撞,那么可以用此开关来节约性能,提升效率。比如衣服口袋的衬片可能就不需要和人模碰撞。摩擦开关是布料于人模是否进行摩擦作用的开关。关闭摩擦,布料落在人模上,会滑落下去。渗透深度则是在打开摩擦后,对于摩擦力大小的一个描述,可以简单的理解为摩擦系数。渗透深度越大,面料在人模上的摩擦力越大。渗透深度范围为0到1。
作为举例,请参照表1,为本申请实施例提供的不同的面料所对应的物理属性,可以看出,不同的面料采用不同的物理属性进行物理效果的模拟,使各个面料都能呈现较好的物理效果。
表1
此外,对于物理效果的模拟,可以理解,当物理属性确定以后,一方面,面料的呈现效果本身会有改变,另外,在将面料承载在人模(模拟的人模)以后,这些物理属性就会对面料在人模上的呈现以及运动效果起到约束作用,进而实现物理效果的模拟。
利用本申请实施例所提供的面料的模拟方法,可以快速地制作出不同面料的三维电子服装,呈现真实且逼真的三维电子服装模拟效果,适用性很强,且处理效率也较快,在手机平台上也能达到20-30帧/s的效率。
基于同一发明构思,请参照图3,本申请实施例中还提供一种面料的模拟装置200,包括:获取模块201和渲染模块202。
获取模块201用于获取待模拟面料的渲染属性;渲染模块202用于基于所述渲染属性渲染所述待模拟面料,以显示模拟面料。
可选的,面料的模拟装置200还包括物理效果模拟模块,用于:获取所述模拟面料的物理属性;基于所述物理属性模拟所述模拟面料的物理效果。
可选的,渲染模块202具体用于:针对所述基础贴图,通过所述基础贴图的主纹理坐标渲染所述基础贴图;和/或针对所述镜面贴图,通过所述镜面贴图的主纹理坐标渲染所述镜面贴图;和/或针对所述法线贴图,通过所述法线贴图的副纹理坐标渲染所述法线贴图;和/或针对所述底纹贴图,通过与所述法线贴图共用所述副纹理坐标进行渲染。
可选的,渲染模块202具体还用于:针对所述法线贴图,通过片元着色器基于目标点的副纹理坐标计算所述目标点的法线的切线以及副切线;基于所述切线和副切线渲染所述法线贴图。
前述实施例中的面料的模拟方法中的各实施方式和具体实例同样适用于图3的装置,通过前述对面料的模拟方法的详细描述,本领域技术人员可以清楚地知道图3中的面料的模拟装置200的实施方法,所以为了说明书的简洁,在此不再详述。
基于同一发明构思,请参照图4,本申请实施例还提供一种电子设备300,前述实施例中所述的面料的模拟方法可应用于电子设备300。该电子设备300包括存储器301、处理器302以及面料的模拟装置200。还可以包括:显示器303、输入输出模块304。该电子设备300可以是手机、电脑、平板电脑等。
存储器301、处理器302、显示器303、输入输出模块304各元件之间直接或间接地电连接,以实现数据的传输或交互。例如,这些元件之间可以通过一条或多条通讯总线或信号总线实现电连接。面料的模拟方法分别包括至少一个可以以软件或固件(firmware)的形式存储于存储器301中的软件功能模块,例如面料的模拟装置200包括的软件功能模块或计算机程序。
存储器301可以存储各种软件程序以及模块,如本申请实施例提供的面料的模拟方法及装置对应的程序指令/模块。处理器302通过运行存储在存储器301中的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现本申请实施例中的方法。此外,存储器301在处理器302运行程序的过程中,还可以存储物理属性、渲染属性等数据。
存储器301可以包括但不限于RAM(Random Access Memory,随机存取存储器),ROM(Read Only Memory,只读存储器),PROM(Programmable Read-Only Memory,可编程只读存储器),EPROM(Erasable Programmable Read-Only Memory,可擦除只读存储器),EEPROM(Electric Erasable Programmable Read-Only Memory,电可擦除只读存储器)等。
处理器302可以是一种集成电路芯片,具有信号处理能力。处理器302可以是通用处理器,包括CPU(Central Processing Unit,中央处理器)、NP(Network Processor,网络处理器)等;还可以是数字信号处理器、专用集成电路、现成可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。其可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
显示器303在电子设备300与用户之间提供一个交互界面(例如用户操作界面)或用于显示处理过程中产生的结果给用户参考。在本申请实施例中,显示器303可以是液晶显示器或触控显示器。若为触控显示器,其可为支持单点和多点触控操作的电容式触控屏或电阻式触控屏等。支持单点和多点触控操作是指触控显示器能感应到来自该触控显示器上一个或多个位置处同时产生的触控操作,并将该感应到的触控操作交由处理器302进行计算和处理。比如:显示器303实时显示渲染得到的三维电子服装。
输入输出模块304用于提供给用户输入数据实现用户与电子设备300的交互。输入输出模块304可以是,但不限于,鼠标和键盘等。例如,用户通过输入输出模块304输入指令,或者输入物理属性、渲染属性等。
可以理解,图4所示的结构仅为示意,电子设备300还可包括比图4中所示更多或者更少的组件,或者具有与图4所示不同的配置。图4中所示的各组件可以采用硬件、软件或其组合实现。
基于同一发明构思,本申请实施例还提供一种可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被计算机运行时执行上述任一实施方式的面料的模拟方法。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (7)
1.一种面料的模拟方法,其特征在于,包括:
获取待模拟面料的渲染属性;所述渲染属性包括:基础贴图;和镜面贴图、法线贴图、底纹贴图、透明度中的至少一个属性;
基于所述渲染属性渲染所述待模拟面料,以显示模拟面料,包括:
针对所述基础贴图,通过所述基础贴图的主纹理坐标渲染所述基础贴图;和/或
针对所述镜面贴图,通过所述镜面贴图的主纹理坐标渲染所述镜面贴图;和/或
针对所述法线贴图,通过所述法线贴图的副纹理坐标渲染所述法线贴图;和/或
针对所述底纹贴图,通过与所述法线贴图共用所述副纹理坐标进行渲染;
其中,所述渲染属性包括所述法线贴图,所述基于所述渲染属性渲染所述待模拟面料,以显示模拟面料,包括:
针对所述法线贴图,通过片元着色器基于目标点的副纹理坐标计算所述目标点的法线的切线以及副切线;
基于所述切线和副切线渲染所述法线贴图;
其中,所述切线的计算公式为:
其中,p为所述目标点,N为所述目标点的法线,△p1、△p2分别为所述目标点的第一差分值和第二差分值,△u1、△u2分别为所述目标点的副纹理坐标在第一纹理方向上的第三差分值和第四差分值;
所述副切线的计算公式为:
其中,△v1、△v2分别为所述目标点的副纹理坐标在第二纹理方向上的第五差分值和第六差分值。
2.根据权利要求1所述的模拟方法,其特征在于,所述方法还包括:
获取所述模拟面料的物理属性;
基于所述物理属性模拟所述模拟面料的物理效果。
3.根据权利要求2所述的模拟方法,其特征在于,所述物理属性包括:
基本参数、模拟参数、剖分参数和碰撞参数中的至少一项;
所述基本参数包括:密度、厚度以及半径;
所述模拟参数包括:拉伸强度、弯曲强度以及阻尼系数;
所述剖分参数包括:网格剖分度和边线剖分度;
所述碰撞参数包括:碰撞层级、碰撞开关、摩擦开关以及渗透深度;所述碰撞层级用于表征所述模拟面料进行碰撞分层时的权重;所述碰撞开关用于表征所述模拟面料是否需要进行碰撞检测;所述摩擦开关用于表征所述模拟面料是否需要进行摩擦作用;所述渗透深度用于表征所述模拟面料的摩擦力。
4.根据权利要求3所述的模拟方法,其特征在于,
所述密度的范围为:0.01~10Kg/m2;所述厚度的范围为:0.001~0.1m;所述半径的范围为:0.001~0.1m;
所述拉伸强度的范围为:0~1;所述弯曲强度的范围为:0~1;所述阻尼系数的范围为:0~1;
所述网格剖分度的范围为:0~1;所述边线剖分度的范围为:0~1;
所述渗透深度的范围为:0~1。
5.一种面料的模拟装置,其特征在于,包括:
获取模块,用于获取待模拟面料的渲染属性;所述渲染属性包括:基础贴图;和镜面贴图、法线贴图、底纹贴图、透明度中的至少一个属性;
渲染模块,用于基于所述渲染属性渲染所述待模拟面料,以显示模拟面料;具体用于针对所述基础贴图,通过所述基础贴图的主纹理坐标渲染所述基础贴图;和/或针对所述镜面贴图,通过所述镜面贴图的主纹理坐标渲染所述镜面贴图;和/或针对所述法线贴图,通过所述法线贴图的副纹理坐标渲染所述法线贴图;和/或针对所述底纹贴图,通过与所述法线贴图共用所述副纹理坐标进行渲染;
其中,所述渲染属性包括所述法线贴图,所述渲染模块,还用于针对所述法线贴图,通过片元着色器基于目标点的副纹理坐标计算所述目标点的法线的切线以及副切线;基于所述切线和副切线渲染所述法线贴图;
其中,所述切线的计算公式为:
其中,p为所述目标点,N为所述目标点的法线,△p1、△p2分别为所述目标点的第一差分值和第二差分值,△u1、△u2分别为所述目标点的副纹理坐标在第一纹理方向上的第三差分值和第四差分值;
所述副切线的计算公式为:
其中,△v1、△v2分别为所述目标点的副纹理坐标在第二纹理方向上的第五差分值和第六差分值。
6.一种电子设备,其特征在于,包括存储器、处理器以及显示器,所述存储器中存储有计算机程序指令,所述计算机程序指令被所述处理器读取并运行时,执行如权利要求1-4中任一项所述的方法。
7.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被计算机运行时执行如权利要求1-4任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011461856.0A CN112419490B (zh) | 2020-12-09 | 2020-12-09 | 面料的模拟方法及装置、电子设备、可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011461856.0A CN112419490B (zh) | 2020-12-09 | 2020-12-09 | 面料的模拟方法及装置、电子设备、可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112419490A CN112419490A (zh) | 2021-02-26 |
CN112419490B true CN112419490B (zh) | 2024-05-17 |
Family
ID=74775983
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011461856.0A Active CN112419490B (zh) | 2020-12-09 | 2020-12-09 | 面料的模拟方法及装置、电子设备、可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112419490B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113096229B (zh) * | 2021-04-20 | 2022-06-21 | 浙江凌迪数字科技有限公司 | 一种真实感服装渲染中的闪粉面料实时渲染方法 |
CN116883567A (zh) * | 2023-07-07 | 2023-10-13 | 上海散爆信息技术有限公司 | 一种绒毛渲染方法和装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106354959A (zh) * | 2016-08-31 | 2017-01-25 | 北京维盛视通科技有限公司 | 三维服装与人体模型的碰撞检测方法及装置 |
CN111583379A (zh) * | 2020-06-11 | 2020-08-25 | 网易(杭州)网络有限公司 | 虚拟模型的渲染方法、装置、存储介质与电子设备 |
CN112053424A (zh) * | 2020-09-29 | 2020-12-08 | 北京完美赤金科技有限公司 | 一种3d模型的渲染方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8169435B2 (en) * | 2007-12-06 | 2012-05-01 | Esko Ip Nv | Generating and rendering three dimensional models of flexible packaging |
CA2684192C (en) * | 2009-10-30 | 2017-09-19 | Crosswing Inc. | Apparatus and method for robotic display choreography |
US11534688B2 (en) * | 2018-04-02 | 2022-12-27 | Take-Two Interactive Software, Inc. | Method and apparatus for enhanced graphics rendering in a video game environment |
-
2020
- 2020-12-09 CN CN202011461856.0A patent/CN112419490B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106354959A (zh) * | 2016-08-31 | 2017-01-25 | 北京维盛视通科技有限公司 | 三维服装与人体模型的碰撞检测方法及装置 |
CN111583379A (zh) * | 2020-06-11 | 2020-08-25 | 网易(杭州)网络有限公司 | 虚拟模型的渲染方法、装置、存储介质与电子设备 |
CN112053424A (zh) * | 2020-09-29 | 2020-12-08 | 北京完美赤金科技有限公司 | 一种3d模型的渲染方法及装置 |
Non-Patent Citations (4)
Title |
---|
关于三维动画图像真实性效果优化仿真;邓诗元;汤志浩;;计算机仿真;20180715(第07期);238-242 * |
基于物理的可交互性虚拟服装动画模拟;石敏;王俊铮;毛天露;刘亚宁;;系统仿真学报(第07期);第1-3节 * |
角色动画中布料的模拟与渲染研究;何海涛;《万方在线公开》;第3-4章 * |
角色动画中布料的模拟与渲染研究;何海涛;万方在线公开;第3-4章 * |
Also Published As
Publication number | Publication date |
---|---|
CN112419490A (zh) | 2021-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112419490B (zh) | 面料的模拟方法及装置、电子设备、可读存储介质 | |
US20190250717A1 (en) | Modification of Three-Dimensional Garments Using Gestures | |
US9892540B2 (en) | Image-based deformation of simulated characters of varied topology | |
Decaudin et al. | Virtual garments: A fully geometric approach for clothing design | |
JP6266873B2 (ja) | 素材をシミュレートするための装置、システム及び方法 | |
JP5357685B2 (ja) | 3次元オブジェクト処理装置、3次元オブジェクト処理方法、プログラム、及び情報記憶媒体 | |
CN111803945B (zh) | 界面渲染方法、装置、电子设备及存储介质 | |
CN103679776A (zh) | 图像处理设备 | |
Basori et al. | An overview of interactive wet cloth simulation in virtual reality and serious games | |
Lu et al. | Rapid simulation of flat knitting loops based on the yarn texture and loop geometrical model | |
CN106683152B (zh) | 三维视觉效果模拟方法及装置 | |
WO2009104777A1 (ja) | 着装シミュレーション装置とシミュレーションプログラム、及びシミュレーション方法 | |
CN114663632A (zh) | 基于空间位置的光照显示虚拟物体的方法及设备 | |
WO2023091086A2 (en) | Apparatus and method for simulating a three-dimensional object | |
CN206819351U (zh) | 一种纺织面料物理特性数码属性模拟系统 | |
CN115512030A (zh) | 模型贴图方法、装置、电子设备及存储介质 | |
Guo et al. | Modelling and Simulation of Weft Knitted Fabric Based on Ball B-Spline Curves and Hooke's Law | |
Zheng et al. | Texture mapping-based virtual simulation of striped jacquard fabrics | |
WO2009084427A1 (ja) | ニットシミュレーション装置とニットシミュレーションでの糸の捻れ修正方法 | |
JP5481751B2 (ja) | 隠蔽処理プログラム、可視化処理方法及び装置 | |
CN113192188B (zh) | 服装产品原型视觉特征量化变形模型构建方法和装置 | |
Chiricota | Three‐dimensional garment modelling using attribute mapping | |
Jeong et al. | Draft‐space warping: grading of clothes based on parametrized draft | |
CN109739599A (zh) | 一种基于canvas的产品界面的互动轮盘插件 | |
CN116543093B (zh) | 柔体对象渲染方法、装置、计算机设备和存储介质 |
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 |