折叠渲染优化方法技术

技术编号:39819565 阅读:4 留言:0更新日期:2023-12-22 19:39
本发明专利技术公开了一种折叠渲染优化方法

【技术实现步骤摘要】
折叠渲染优化方法、装置、计算机设备及存储介质


[0001]本专利技术涉及数字化服装设计领域,具体涉及一种折叠渲染优化方法

装置

计算机设备及存储介质


技术介绍

[0002]在服装仿真的第一步就是将衣片的数据进行三角网格化,衣片的数据通常只有外轮廓边框,而为了能够仿真服装布料的物理形态,就需要将衣片封闭轮廓中填入网格密度均匀且没有瘦长形状的三角形,因为算法有随机性,因此每一个三角形的形态往往存在一些差异,不可能完全相等

生成三角网格的算法有很多比较成熟的技术,例如:
constrained Delaunay triangulation、conforming Delaunay triangulation、constrained conforming Delaunay triangulation


[0003]第二步就是将生成的网格数据渲染展示,目前,三角网格渲染已经是较为成熟的技术

在一些现有技术文献和网站
(
相关网站例如
OpenGL
中的渲染方式:
https://learnopengl.com/Getting

started/Hello

Triangle

)
中均有相关报道

[0004]三角网格
(
或者说三角形
)
的渲染流程一般涉及以下内容:
[0005]三角网格渲染的主体数据结构是网格顶点的位置

顶点的法向及三角网格的拓扑结构,其中顶点位置和法向是一一对应的,三角网格的拓扑结构是指顶点组合成三角形的方式

比如有一组顶点
0:va

1:vb

2:vc

3:...

4:...

......
就有一组相同个数对应法向
0:na

1:nb

2:nc

3:...

4:...

......
假设网格中有一个三角形由前三个顶点组成的,那么这个三角面片的拓扑结构就是由三个顶点的索引号组成
[0,1,2]。
根据右手定则,索引号的排列顺序也决定了面的方向,由此可以计算出每个面的法向量,而每个顶点的法向是根据所有引用了这个顶点的三角面的法向量加权平均所得

当渲染流程中的片段着色器往三角网格内填充颜色时,也会因为三角形的形状及面积影响最终的填充效果

[0006]因此,在翻折线两侧的三角网格形态直接关系着折叠的渲染效果,参见图1,最主要的原因有两个:一是折线两侧三角网格形态的随机性;二是因为翻折使两侧网格角度差变大,但翻折线上的顶点是由两侧三角网格的法向混合计算的,导致了顶点计算光照时明暗混合

[0007]现有技术中,渲染三角面片计算顶点法向时,通常仅使用与当前顶点相连的三角面片的法向加权平均得出的,因此导致了在折叠线
(
翻折线
)
附近的面片渲染之后会产生锯齿状不光顺的渲染效果,参见图
2。
[0008]有些技术方案会在渲染前对折叠线上顶点的法向进行优化

将折叠线的顶点进行拆分,分别只关联两侧的三角面,从网格拓扑结构上将两侧的面片分开渲染,最终得到拆分之后效果,降低了锯齿效果

这种拆分顶点的方式是为了解决上面的第二点原因

具体方式就是将翻折线上的顶点复制了一份相同位置的数据但一份数据只计算左侧的法向,一份数据只计算右侧的法向

例如图3,
V0
法向由
f0、f1、f2、f3
计算得出,
V0

的法向由
f4、f5、f6、f7
计算得出

左侧
f0、f1、f2、f3
面的拓扑结构只关联
V0
,右侧
f4、f5、f6、f7
的拓扑结构只关联
V0

,就能将明暗法向分开

[0009]然而,在布料的复杂模拟过程中,依旧有一些锯齿效果无法通过上述优化的技术方案完全被优化

通过以上方法产生的渲染效果跟真实布料的折叠效果也不径相同,折叠的边缘非常尖锐,非常不符合布料的形态

[0010]而本专利技术的渲染优化主要是解决上述第一点原因,将翻折线两侧的网格细化及规整


技术实现思路

[0011]针对上述技术问题以及本领域存在的不足之处,本专利技术提供了一种折叠渲染优化方法,使任意一段翻折线附近任意一侧的三角网格都成对组成两对边等长或尽可能等长的四边形,利用平行辅助线产生类似“卡线”的效果,使翻折线附近的三角网格都非常规整,因此能在渲染中平滑了光照效果

[0012]具体技术方案如下:
[0013]一种折叠渲染优化方法,包括步骤:
[0014]S1
,在翻折线两侧分别生成第一平行辅助线组和第二平行辅助线组,第一平行辅助线组和第二平行辅助线组包含相同数量且一一对应的至少一条平行辅助线,第一平行辅助线组和第二平行辅助线组中相互对应的平行辅助线与翻折线的距离相等,利用平行辅助线约束平行辅助线和翻折线之间

不同平行辅助线之间的三角网格;平行辅助线和翻折线之间

不同平行辅助线之间的三角网格的顶点为翻折线或平行辅助线上的顶点;
[0015]S2
,设置翻折线的翻折角度;
[0016]S3
,基于翻折线

生成的平行辅助线和设置的翻折角度进行折叠效果渲染和模拟仿真

[0017]本专利技术的折叠渲染优化方法中,关于第一平行辅助线组和第二平行辅助线组,可做以下理解:在翻折线两侧分别生成
n
条平行辅助线,
n
为正整数,翻折线一侧第
m
条平行辅助线与翻折线的距离和翻折线另一侧第
m
条平行辅助线与翻折线的距离相等,
m
为不大于
n
的任意正整数

[0018]在一实施例中,所述的折叠渲染优化方法,生成的平行辅助线和翻折线具有相同数量的顶点个数,生成的平行辅助线和翻折线被各自的顶点分割成相同数量且一一对应的平行辅助线段和翻折线段,任一翻折线段和与之对应的平行辅助线段尽可能保持长度一致,任一翻折线段与任一侧与之对应的最近平行辅助线段之间的网格以及任意相邻两条对应的平行辅助线段之间的网格均为由两个三角网格组成的四边形

即本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种折叠渲染优化方法,其特征在于,包括步骤:
S1
,在翻折线两侧分别生成第一平行辅助线组和第二平行辅助线组,第一平行辅助线组和第二平行辅助线组包含相同数量且一一对应的至少一条平行辅助线,第一平行辅助线组和第二平行辅助线组中相互对应的平行辅助线与翻折线的距离相等,利用平行辅助线约束平行辅助线和翻折线之间

不同平行辅助线之间的三角网格;平行辅助线和翻折线之间

不同平行辅助线之间的三角网格的顶点为翻折线或平行辅助线上的顶点;
S2
,设置翻折线的翻折角度;
S3
,基于翻折线

生成的平行辅助线和设置的翻折角度进行折叠效果渲染和模拟仿真
。2.
根据权利要求1所述的折叠渲染优化方法,其特征在于,生成的平行辅助线和翻折线具有相同数量的顶点个数,生成的平行辅助线和翻折线被各自的顶点分割成相同数量且一一对应的平行辅助线段和翻折线段,任一翻折线段和与之对应的平行辅助线段尽可能保持长度一致,任一翻折线段与任一侧与之对应的最近平行辅助线段之间的网格以及任意相邻两条对应的平行辅助线段之间的网格均为由两个三角网格组成的四边形
。3.
根据权利要求1所述的折叠渲染优化方法,其特征在于,平行辅助线的数量为2条,分别位于翻折线等距的两侧;或者,翻折线任意一侧的平行辅助线的数量不少于2条
。4.
根据权利要求1所述的折叠渲染优化方法,其特征在于,翻折线任意一侧的任意相邻两条平行辅助线之间的距离分别独立选自
0.1

10mm。5.
根据权利要求1所述的折叠渲染优化方法,其特征在于,翻折线与距离翻折线最近的平行辅助线之间的距离为
0.1

10mm。6.
根据权利要求1所述的折叠渲染优化方法,其特征在于,步...

【专利技术属性】
技术研发人员:刘郴尹君骆立康
申请(专利权)人:浙江凌迪数字科技有限公司
类型:发明
国别省市:

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

1