CN110969692B - 一种纤维级织物实时渲染方法、系统及终端 - Google Patents
一种纤维级织物实时渲染方法、系统及终端 Download PDFInfo
- Publication number
- CN110969692B CN110969692B CN201911170612.4A CN201911170612A CN110969692B CN 110969692 B CN110969692 B CN 110969692B CN 201911170612 A CN201911170612 A CN 201911170612A CN 110969692 B CN110969692 B CN 110969692B
- Authority
- CN
- China
- Prior art keywords
- fiber
- yarn
- rendering
- fibers
- grade fabric
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/40—Hidden part removal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/16—Cloth
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Image Generation (AREA)
- Treatment Of Fiber Materials (AREA)
Abstract
本申请公开了一种纤维级织物实时渲染方法、系统及终端,对纤维级织物的纱线控制点进行曲线插值和预计算;对曲线插值和预计算后的所述纱线控制点进行遍历并渲染得到深度贴图;生成所述纤维级织物的核心纤维与常规纤维;对所述核心纤维与常规纤维进行遮挡剔除;对所述深度贴图中的纤维级织物进行阴影和光照计算获得渲染结果。对纤维级织物的纱线控制点进行预计算,由前往后对纱线控制点进行遍历并渲染获得初步的深度贴图,然后进行核心纤维和常规纤维生成,最后进行遮挡剔除和亮度处理,进而保证了在不丢失外观细节的前提下进一步提升了渲染效率。
Description
技术领域
本申请涉及计算机图形技术领域,具体涉及一种纤维级织物实时渲染方法、系统及终端。
背景技术
虚拟世界中以衣服为主体的各式各样的织物是不可或缺的一部分,在动画制作、电影特效等领域都发挥着重要的作用。由于织物种类的多样性和结构的复杂性,如何渲染出与现实世界真实感相当的织物,一直是计算机图形学领域的研究热点。
根据织物的几何建模方式,可以将现有技术划分为三大类,分别为:基于曲面的织物、基于体素的织物与基于纤维的织物。基于曲面的表示方式将织物表示为一张或多张网格化或参数化的二维曲面,虽然保证了渲染效率但是丢失了大量的几何外观细节。基于体素和基于纤维的表示方式分别使用密度立方体与纤维曲线集合来对织物的微观结构进行表示,独立的几何结构与光散射模型可以很好地对织物特有的光照特性以及绒毛、分叉等外观细节进行重现,但是伴随而来的是庞大的数据,渲染时间长达几十甚至上百小时,仅应用于离线渲染领域。
但是在要求越来越高的实时交互的虚拟世界中,尤其在电子游戏、虚拟现实和计算机辅助服装设计等交互性极强的领域,不仅需要保证渲染效率,还需要保证渲染的细节,因此如何能够提高渲染的效率的渲染细节是本领域亟待解决的问题。
发明内容
本申请为了解决上述技术问题,提出了如下技术方案:
第一方面,本申请实施例提供了一种纤维级织物实时渲染方法,所述方法包括:对纤维级织物的纱线控制点进行曲线插值和预计算;对曲线插值和预计算后的所述纱线控制点进行遍历并渲染得到深度贴图;生成所述纤维级织物的核心纤维与常规纤维;对所述核心纤维与常规纤维进行遮挡剔除;对所述深度贴图中的纤维级织物进行阴影和光照计算获得渲染结果。
采用上述实现方式,对纤维级织物的纱线控制点进行预计算,由前往后对纱线控制点进行遍历并渲染获得初步的深度贴图,然后进行核心纤维和常规纤维生成,最后进行遮挡剔除和亮度处理,进而保证了在不丢失外观细节的前提下进一步提升了渲染效率。
结合第一方面,在第一方面第一种可能的实现方式中,所述对纤维级织物的纱线控制点进行曲线插值和预计算包括:使用三次厄尔密样条曲线对所述纤维级织物的纱线控制点进行插值;将所述纤维级织物从纱线空间变换至世界空间所需的局部坐标系进行预计算。
结合第一方面第一种可能的实现方式,在第一方面第二种可能的实现方式中,所述对曲线插值和预计算后的所述纱线控制点进行遍历并渲染得到深度贴图,包括:进行场景管理,并按照由近至远的顺序进行遍历;从光源位置出发,生成完整织物的简模,并渲染得到第一深度贴图。
结合第一方面第一种可能的实现方式,在第一方面第三种可能的实现方式中,所述生成所述纤维级织物的核心纤维与常规纤维包括:依据过程式纱线几何模型,利用渲染管线通过顶点着色器、细分着色器、几何着色器与片元着色器对述纤维级织物的核心纤维与常规纤维进行生成。
结合第一方面第三种可能的实现方式,在第一方面第四种可能的实现方式中,所述对所述核心纤维与常规纤维进行遮挡剔除包括:根据视点与核心纤维之间的关系,对位于核心纤维贴图面片下方的不可视纤维进行剔除通过判断单纱中心与纱线中心的连线与纱线中心与视点连线的夹角以及单纱在横截面纵向的投影,进行缠绕遮挡剔除。
第二方面,本申请实施例提供了一种纤维级织物实时渲染系统,所述系统包括:计算模块,用于对纤维级织物的纱线控制点进行曲线插值和预计算;第一渲染模块,用于对曲线插值和预计算后的所述纱线控制点进行遍历并渲染得到深度贴图;图像生成模块,用于生成所述纤维级织物的核心纤维与常规纤维;第一图像处理模块,用于对所述核心纤维与常规纤维进行遮挡剔除;第二图像处理模块,用于对所述深度贴图中的纤维级织物进行阴影和光照计算获得渲染结果。
结合第二方面,在第二方面第一种可能的实现方式中,所述计算模块包括:插值计算单元,用于使用三次厄尔密样条曲线对所述纤维级织物的纱线控制点进行插值;预计算单元,用于将所述纤维级织物从纱线空间变换至世界空间所需的局部坐标系进行预计算。
结合第二方面第一种可能的实现方式,在第二方面第二种可能的实现方式中,所述第一渲染模块包括:遍历单元,用于进行场景管理,并按照由近至远的顺序进行遍历;渲染单元,用于从光源位置出发,生成完整织物的简模,并渲染得到深度贴图。
结合第二方面第二种可能的实现方式,在第二方面第三种可能的实现方式中,所述图像生成模块包括:图像生成单元,用于依据过程式纱线几何模型,利用渲染管线通过顶点着色器、细分着色器、几何着色器与片元着色器对述纤维级织物的核心纤维与常规纤维进行生成。
结合第二方面第三种可能的实现方式,在第二方面第四种可能的实现方式中,所述第一图像处理模块包括:第一剔除单元,用于根据视点与核心纤维之间的关系,对位于核心纤维贴图面片下方的不可视纤维进行剔除;第二剔除单元,用于通过判断单纱中心与纱线中心的连线与纱线中心与视点连线的夹角以及单纱在横截面纵向的投影,进行缠绕遮挡剔除。
第三方面,本申请实施例提供了一种终端,包括:处理器;存储器,用于存储计算机可执行指令;当所述处理器执行所述计算机可执行指令时,所述处理器执行第一方面或第一方面任一实现方式所述的纤维级织物实时渲染方法。
附图说明
图1为本申请实施例提供的一种纤维级织物实时渲染方法的流程示意图;
图2为本申请实施例提供的一种公告牌遮挡面片结构示意图;
图3为本申请实施例提供的核心纤维贴图结构示意图;
图4为本申请实施例提供的核心纤维与常规纤维结构示意图;
图5为本申请实施例提供的半柱体剔除结构示意图;
图6为本申请实施例提供的缠绕剔除结构示意图;
图7为本申请实施例提供的一种渲染结果示意图;
图8为本申请实施例提供的一种纤维级织物实时渲染系统的示意图;
图9为本申请实施例提供的一种终端的示意图。
具体实施方式
下面结合附图与具体实施方式对本方案进行阐述。
图1为本申请实施例提供的一种纤维级织物实时渲染方法的流程示意图,参见图1,所述纤维级织物实时渲染方法包括:
S101,对纤维级织物的纱线控制点进行曲线插值和预计算。
先使用三次厄尔密样条曲线(Cubic Hermite spline)对织物的纱线控制点进行插值:
p(t)=(2t3-3t2+1)p0+(t3-2t2+t)m0+(-2t3+3t2)p1+(t3-t2)m1
同时结合参数方程对纤维从纱线空间变换至世界空间所需的局部坐标系进行预计算。
S102,对曲线插值和预计算后的所述纱线控制点进行遍历并渲染得到深度贴图。
使用KD-Tree对纱线控制点进行场景管理,并按照由近至远的顺序进行遍历。原始的纤维级织物实时渲染流程直接以织物的纱线控制点模型作为输入,在没有做采样处理的情况下,控制点数量动辄十几甚至上百万,无论数据交换或着色器计算都占据了巨大的性能开销。参考三维点云的渲染优化方式,本申请采用KD-Tree对织物的纱线控制点进行场景管理。由于KD-Tree是一种特殊的二叉空间分割树(BSP),其由近至远的空间遍历方式有助于在CPU中对纱线控制点进行视锥体剔除以减少进入渲染管线的顶点数据量,同时便于提前深度测试进行逆向画家算法(基于GPU的遮挡剔除),使得被遮挡的控制点免于片元着色器的计算。
从光源位置出发,使用公告牌技术生成完整织物的简模,并渲染得到深度贴图。纤维级织物的阴影主要由纱线与纱线之间的阴影组成。传统的Shadow Mapping算法从光源处渲染深度贴图时,需要先对纱线生成类圆柱体曲线,进行前向面剔除后再进行渲染。类圆状体曲线的生成需要较大的计算代价,同时从纱线空间向世界空间进行转换时,插值点数量的多少直接对其所建立的参考坐标系造成影响,数量过多会造成渲染效率低下,数量过少又会影响到类圆柱体的生成效果,出现类圆柱体扭曲等现象。本申请利用公告牌技术生成遮挡面片可以很好的对上述问题进行解决,示意图如图2所示。相比于类圆柱体,利用公告牌生成的织物简模面片数量少,提高了渲染速度;同时不存在因插值点数量过少导致类圆柱体无法对纱线进行完整包裹的问题,并且免去了前向面剔除,在一定程度上改善了阴影失真与悬浮的问题。
S103,生成所述纤维级织物的核心纤维与常规纤维。
依据过程式纱线几何模型,充分利用渲染管线(顶点着色器、细分着色器、几何着色器与片元着色器)对核心纤维与常规纤维进行生成。过程式纱线几何模型在纱线空间中对模型进行构建。所谓纱线空间,即是将纱线中心控制点与Z轴的正半轴进行对齐。故对于第k个纱线中心控制点,可以表示为:
对于给定的单纱中心控制点,几何模型在相应的XOY平面对单纱中心控制点进行求解。故纱线的第i根单纱的中心控制点可以表示为:
与测定的单纱半径不同,纤维的半径是一个关于旋转角度θ的函数:
其中Ri与θi为纤维的初始半径与角度,可以通过根据给定的分布进行拒绝采样得到。纤维按种类又细分为常规纤维、环形纤维与自由纤维,可以在缠绕周期中通过修改参数Rmax统一的进行建模。
对于顶点着色器输入的纱线控制曲线,细分着色器可以最大限度的将其细分为64根纤维,并依据纱线中的单纱数量进行平均分配。每根单纱中的第一条纤维可以结合单周期单纱的法向量贴图、高度贴图、方向贴图,如图3所示,被几何着色器扩展为始终朝向视点的核心纤维面片,其余纤维也以微小的宽度被几何着色器相应的扩展,使得纤维级织物具有鲜明的毛绒感,如图4所示。
S104,对所述核心纤维与常规纤维进行遮挡剔除。
在细分着色器中进行遮挡剔除,包括如下步骤:半柱体剔除,单纱可以近似地看作圆柱,而核心纤维则是圆柱在以单纱中心与视点连线方向为法向量的平面上的投影。它相当于单纱的横截面,单纱中始终有一半的纤维为这个横截面所遮挡。根据视点与核心纤维之间的关系,本申请定义位于视点一侧的半圆柱为可视区域,另一侧的半圆柱为不可视区域,如图5所示。故所谓的半柱体剔除,即是对位于核心纤维贴图面片下方的纤维进行剔除:
通过纤维中心与单纱中心的连线可以判断纤维所在的半圆位置:cosθ≥0表示纤维位于可视域,cosθ<0则表示纤维位于不可视区域。但是还需要进一步进行判断,因为环形纤维与自由纤维会超出核心纤维面片。故进一步对纤维在双副切线方向进行投影:
若projpf<Rply,即投影长度小于单纱半径,则纤维中心完全处于不可视区域,否则位于可视区域。若纤维端两端均位于不可见区域,则进行剔除,其余情况则进行渲染。半柱体剔除的优化思路与实现简单,且在绝大多数观察角度下并不会造成纱线纤维细节的丢失。
由纤维缠绕形成单纱、单纱缠绕形成纱线的几何模型可知,相对的几何关系使得缠绕相交处上方的单纱将下方单纱遮蔽。
与单纱的半柱体剔除类似,通过判断单纱中心与纱线中心的连线与纱线中心与视点连线的夹角,本申请可以对潜在的不可视单纱,即满足cosθ<0的单纱进行筛选,进而根据单纱在横截面纵向的投影来判断是否被遮挡,如图6所示。被遮挡的单纱,其投影长度大致满足如下几何关系:
S105,对所述深度贴图中的纤维级织物进行阴影和光照计算获得渲染结果。
基于PBR的着色模型与步骤4渲染得到的深度贴图,对织物的阴影、光照进行计算,最终渲染结果如图7所示。
由上述实施例可知,本申请实施例提供了一种纤维级织物实时渲染方法,首先对纤维级织物的纱线控制点进行预计算,由前往后对纱线控制点进行遍历并渲染获得初步的深度贴图,然后进行核心纤维和常规纤维生成,最后进行遮挡剔除和亮度处理,进而保证了在不丢失外观细节的前提下进一步提升了渲染效率。
与上述实施例提供的一种纤维级织物实时渲染方法相对应,本申请还提供了一种纤维级织物实时渲染系统的实施例。参见图7,纤维级织物实时渲染系统20包括:计算模块201、第一渲染模块202、图像生成模块203、第一图像处理模块204和第二图像处理模块205。
所述计算模块201,用于对纤维级织物的纱线控制点进行曲线插值和预计算。所述计算模块201包括:插值计算单元和预计算单元。
所述插值计算单元,用于使用三次厄尔密样条曲线对所述纤维级织物的纱线控制点进行插值。所述预计算单元,用于将所述纤维级织物从纱线空间变换至世界空间所需的局部坐标系进行预计算。
所述第一渲染模块202,用于对曲线插值和预计算后的所述纱线控制点进行遍历并渲染得到深度贴图。所述第一渲染模块203包括:遍历单元和渲染单元。
所述遍历单元,用于进行场景管理,并按照由近至远的顺序进行遍历。所述渲染单元,用于从光源位置出发,生成完整织物的简模,并渲染得到深度贴图。
所述图像生成模块203,用于生成所述纤维级织物的核心纤维与常规纤维。所述图像生成模块203包括:图像生成单元,用于依据过程式纱线几何模型,利用渲染管线通过顶点着色器、细分着色器、几何着色器与片元着色器对述纤维级织物的核心纤维与常规纤维进行生成。
所述第一图像处理模块204,用于对所述核心纤维与常规纤维进行遮挡剔除。所述第一图像处理模块204包括:第一剔除单元和第二剔除单元。
所述第一剔除单元,用于根据视点与核心纤维之间的关系,对位于核心纤维贴图面片下方的不可视纤维进行剔除。所述第二剔除单元,用于通过判断单纱中心与纱线中心的连线与纱线中心与视点连线的夹角以及单纱在横截面纵向的投影,进行缠绕遮挡剔除。
所述第二图像处理模块205,用于对所述深度贴图中的纤维级织物进行阴影和光照计算获得渲染结果。
本申请实施例还提供了一种终端,参见图9,所述终端30包括:处理器301、存储器302和通信接口303。
在图9中,处理器301、存储器302和通信接口303可以通过总线相互连接;总线可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
处理器301通常是控制终端30的整体功能,例如终端的启动、以及终端启动后对纤维级织物的纱线控制点进行曲线插值和预计算;对曲线插值和预计算后的所述纱线控制点进行遍历并渲染得到深度贴图;生成所述纤维级织物的核心纤维与常规纤维;对所述核心纤维与常规纤维进行遮挡剔除;对所述深度贴图中的纤维级织物进行阴影和光照计算获得渲染结果。此外,处理器301可以是通用处理器,例如,中央处理器(英文:centralprocessing unit,缩写:CPU),网络处理器(英文:network processor,缩写:NP)或者CPU和NP的组合。处理器也可以是微处理器(MCU)。处理器还可以包括硬件芯片。上述硬件芯片可以是专用集成电路(ASIC),可编程逻辑器件(PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(CPLD),现场可编程逻辑门阵列(FPGA)等。
存储器302被配置为存储计算机可执行指令以支持终端30数据的操作。存储器301可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
启动终端30后,处理器301和存储器302上电,处理器301读取并执行存储在存储器302内的计算机可执行指令,以完成上述的纤维级织物实时渲染方法实施例中的全部或部分步骤。
通信接口303用于终端30传输数据,例如实现与用户设备、服务器等之间的数据通信。通信接口303包括有线通信接口,还可以包括无线通信接口。其中,有线通信接口包括USB接口、Micro USB接口,还可以包括以太网接口。无线通信接口可以为WLAN接口,蜂窝网络通信接口或其组合等。
在一个示意性实施例中,本申请实施例提供的终端30还包括电源组件,电源组件为终端30的各种组件提供电力。电源组件可以包括电源管理系统,一个或多个电源,及其他与为终端30生成、管理和分配电力相关联的组件。
通信组件,通信组件被配置为便于终端30和其他设备之间有线或无线方式的通信。终端30可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。通信组件经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。通信组件还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在一个示意性实施例中,终端30可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、终端、微终端、处理器或其他电子元件实现。
本申请说明书中各个实施例之间相同相似的部分互相参见即可。尤其,对于系统及终端实施例而言,由于其中的方法基本相似于方法的实施例,所以描述的比较简单,相关之处参见方法实施例中的说明即可。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
当然,上述说明也并不仅限于上述举例,本申请未经描述的技术特征可以通过或采用现有技术实现,在此不再赘述;以上实施例及附图仅用于说明本申请的技术方案并非是对本申请的限制,如来替代,本申请仅结合并参照优选的实施方式进行了详细说明,本领域的普通技术人员应当理解,本技术领域的普通技术人员在本申请的实质范围内所做出的变化、改型、添加或替换都不脱离本申请的宗旨,也应属于本申请的权利要求保护范围。
Claims (10)
1.一种纤维级织物实时渲染方法,其特征在于,所述方法包括:
对纤维级织物的纱线控制点进行曲线插值和预计算;
对曲线插值和预计算后的所述纱线控制点进行遍历并渲染得到深度贴图;
生成所述纤维级织物的核心纤维与常规纤维;
对所述核心纤维与常规纤维进行遮挡剔除;
对所述深度贴图中的纤维级织物进行阴影和光照计算获得渲染结果;
其中依据过程式纱线几何模型,利用渲染管线对核心纤维与常规纤维进行生成;过程式纱线几何模型在纱线空间中对模型进行构建;纱线空间是将纱线中心控制点与Z轴的正半轴进行对齐,对于第k个纱线中心控制点,表示为:
对于给定的单纱中心控制点,几何模型在相应的XOY平面对单纱中心控制点进行求解;纱线的第i根单纱的中心控制点表示为:
其中α为旋转控制因子,Rply为测定的单纱半径,θi ply则为第i根单纱的初始角度;将单纱控制中心与Z轴的正半轴进行对齐,单纱的第i根纤维中心控制点表示为:
与测定的单纱半径不同,纤维的半径是一个关于旋转角度θ的函数:
其中Ri与θi为纤维的初始半径与角度,通过根据给定的分布进行拒绝采样得到;纤维按种类细分为常规纤维、环形纤维与自由纤维,在缠绕周期中通过修改参数Rmax统一的进行建模;
顶点着色器输入的纱线控制曲线,细分着色器将其细分为64根纤维,并依据纱线中的单纱数量进行平均分配;每根单纱中的第一条纤维结合单周期单纱的法向量贴图、高度贴图、方向贴图,被几何着色器扩展为朝向视点的核心纤维面片,其余纤维以微小的宽度被几何着色器相应的扩展,使得纤维级织物具有鲜明的毛绒感。
2.根据权利要求1所述的纤维级织物实时渲染方法,其特征在于,所述对纤维级织物的纱线控制点进行曲线插值和预计算包括:
使用三次厄尔密样条曲线对所述纤维级织物的纱线控制点进行插值;
将所述纤维级织物从纱线空间变换至世界空间所需的局部坐标系进行预计算。
3.根据权利要求2所述的纤维级织物实时渲染方法,其特征在于,所述对曲线插值和预计算后的所述纱线控制点进行遍历并渲染得到深度贴图,包括:
进行场景管理,并按照由近至远的顺序进行遍历;
从光源位置出发,生成完整织物的简模,并渲染得到深度贴图。
4.根据权利要求3所述的纤维级织物实时渲染方法,其特征在于,所述生成所述纤维级织物的核心纤维与常规纤维包括:
依据过程式纱线几何模型,利用渲染管线通过顶点着色器、细分着色器、几何着色器与片元着色器对述纤维级织物的核心纤维与常规纤维进行生成。
5.根据权利要求4所述的纤维级织物实时渲染方法,其特征在于,所述对所述核心纤维与常规纤维进行遮挡剔除包括:
根据视点与核心纤维之间的关系,对位于核心纤维贴图面片下方的不可视纤维进行剔除;
通过判断单纱中心与纱线中心的连线与纱线中心与视点连线的夹角以及单纱在横截面纵向的投影,进行缠绕遮挡剔除。
6.一种纤维级织物实时渲染系统,其特征在于,所述系统包括:
计算模块,用于对纤维级织物的纱线控制点进行曲线插值和预计算;
第一渲染模块,用于对曲线插值和预计算后的所述纱线控制点进行遍历并渲染得到深度贴图;
图像生成模块,用于生成所述纤维级织物的核心纤维与常规纤维;
第一图像处理模块,用于对所述核心纤维与常规纤维进行遮挡剔除;
第二图像处理模块,用于对所述深度贴图中的纤维级织物进行阴影和光照计算获得渲染结果;
其中依据过程式纱线几何模型,利用渲染管线对核心纤维与常规纤维进行生成;过程式纱线几何模型在纱线空间中对模型进行构建;纱线空间是将纱线中心控制点与Z轴的正半轴进行对齐,对于第k个纱线中心控制点,表示为:
对于给定的单纱中心控制点,几何模型在相应的XOY平面对单纱中心控制点进行求解;纱线的第i根单纱的中心控制点表示为:
其中α为旋转控制因子,Rply为测定的单纱半径,θi ply则为第i根单纱的初始角度;将单纱控制中心与Z轴的正半轴进行对齐,单纱的第i根纤维中心控制点表示为:
与测定的单纱半径不同,纤维的半径是一个关于旋转角度θ的函数:
其中Ri与θi为纤维的初始半径与角度,通过根据给定的分布进行拒绝采样得到;纤维按种类细分为常规纤维、环形纤维与自由纤维,在缠绕周期中通过修改参数Rmax统一的进行建模;
顶点着色器输入的纱线控制曲线,细分着色器将其细分为64根纤维,并依据纱线中的单纱数量进行平均分配;每根单纱中的第一条纤维结合单周期单纱的法向量贴图、高度贴图、方向贴图,被几何着色器扩展为朝向视点的核心纤维面片,其余纤维以微小的宽度被几何着色器相应的扩展,使得纤维级织物具有鲜明的毛绒感。
7.根据权利要求6所述的纤维级织物实时渲染系统,其特征在于,所述计算模块包括:
插值计算单元,用于使用三次厄尔密样条曲线对所述纤维级织物的纱线控制点进行插值;
预计算单元,用于将所述纤维级织物从纱线空间变换至世界空间所需的局部坐标系进行预计算。
8.根据权利要求7所述的纤维级织物实时渲染系统,其特征在于,所述第一渲染模块包括:
遍历单元,用于进行场景管理,并按照由近至远的顺序进行遍历;
渲染单元,用于从光源位置出发,生成完整织物的简模,并渲染得到深度贴图。
9.根据权利要求8所述的纤维级织物实时渲染系统,其特征在于,所述图像生成模块包括:
图像生成单元,用于依据过程式纱线几何模型,利用渲染管线通过顶点着色器、细分着色器、几何着色器与片元着色器对述纤维级织物的核心纤维与常规纤维进行生成。
10.根据权利要求9所述的纤维级织物实时渲染系统,其特征在于,所述第一图像处理模块包括:
第一剔除单元,用于根据视点与核心纤维之间的关系,对位于核心纤维贴图面片下方的不可视纤维进行剔除;
第二剔除单元,用于通过判断单纱中心与纱线中心的连线与纱线中心与视点连线的夹角以及单纱在横截面纵向的投影,进行缠绕遮挡剔除。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911170612.4A CN110969692B (zh) | 2019-11-26 | 2019-11-26 | 一种纤维级织物实时渲染方法、系统及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911170612.4A CN110969692B (zh) | 2019-11-26 | 2019-11-26 | 一种纤维级织物实时渲染方法、系统及终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110969692A CN110969692A (zh) | 2020-04-07 |
CN110969692B true CN110969692B (zh) | 2023-05-26 |
Family
ID=70031605
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911170612.4A Active CN110969692B (zh) | 2019-11-26 | 2019-11-26 | 一种纤维级织物实时渲染方法、系统及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110969692B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113112582B (zh) * | 2021-04-20 | 2022-07-12 | 浙江凌迪数字科技有限公司 | 一种真实感服装渲染中的侧光织物面料实时渲染方法 |
CN117058301B (zh) * | 2023-06-29 | 2024-03-19 | 武汉纺织大学 | 一种基于延迟着色的针织物实时渲染方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102254340A (zh) * | 2011-07-29 | 2011-11-23 | 北京麒麟网信息科技有限公司 | 一种基于gpu加速的环境光遮挡图像绘制方法及系统 |
CN106056661A (zh) * | 2016-05-31 | 2016-10-26 | 钱进 | 基于Direct3D 11的三维图形渲染引擎 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10410380B2 (en) * | 2016-06-29 | 2019-09-10 | Cornell University | Image rendering utilizing procedural yarn model generated in multi-stage processing pipeline |
-
2019
- 2019-11-26 CN CN201911170612.4A patent/CN110969692B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102254340A (zh) * | 2011-07-29 | 2011-11-23 | 北京麒麟网信息科技有限公司 | 一种基于gpu加速的环境光遮挡图像绘制方法及系统 |
CN106056661A (zh) * | 2016-05-31 | 2016-10-26 | 钱进 | 基于Direct3D 11的三维图形渲染引擎 |
Also Published As
Publication number | Publication date |
---|---|
CN110969692A (zh) | 2020-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11954790B2 (en) | Web-side real-time hybrid rendering method, device and computer equipment combined with ray tracing | |
CN113178014B (zh) | 场景模型渲染方法、装置、电子设备和存储介质 | |
US11024077B2 (en) | Global illumination calculation method and apparatus | |
CN106469463B (zh) | 一种基于cpu与gpu混合的渲染方法 | |
CN110969692B (zh) | 一种纤维级织物实时渲染方法、系统及终端 | |
CN114820906B (zh) | 图像渲染方法、装置、电子设备及存储介质 | |
JP5839907B2 (ja) | 画像処理装置および画像処理方法 | |
CN108537861A (zh) | 贴图生成方法、装置、设备和存储介质 | |
CN106780686A (zh) | 一种3d模型的合并渲染系统及方法、终端 | |
CN110148201B (zh) | 一种超高精度的织物实时渲染方法 | |
CN111508053A (zh) | 模型的渲染方法、装置、电子设备及计算机可读介质 | |
CN104966320A (zh) | 一种基于三阶Bezier曲线的伪装迷彩自动生成方法 | |
CN102982575B (zh) | 一种基于光线跟踪的毛发渲染方法 | |
CN102831634B (zh) | 一种高效精确的通用软阴影生成方法 | |
WO2024037116A1 (zh) | 三维模型的渲染方法、装置、电子设备及存储介质 | |
CN103136399A (zh) | 面向室内场景的辐射度并行绘制系统和方法 | |
CN104700447A (zh) | 基于Intel众核架构的光线追踪并行优化方法 | |
Stich et al. | Efficient and robust shadow volumes using hierarchical occlusion culling and geometry shaders | |
Kahl | Hardware Acceleration of Progressive Refinement Radiosity using Nvidia RTX | |
CN117058301B (zh) | 一种基于延迟着色的针织物实时渲染方法 | |
Guo et al. | Multichannel 3D ink painting rendering model based on the LMS algorithm | |
KR101287513B1 (ko) | 3차원 렌더링을 위한 격자 기반의 텍스처 매핑장치 및 방법 | |
US11087523B2 (en) | Production ray tracing of feature lines | |
WO2024064523A1 (en) | Accelerated bounding volume hierarchy (bvh) traversal for ray tracing | |
Romeiro et al. | Scalable GPU rendering of CSG models |
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 |