CN112419465B - 虚拟模型的渲染方法和装置 - Google Patents
虚拟模型的渲染方法和装置 Download PDFInfo
- Publication number
- CN112419465B CN112419465B CN202011433210.1A CN202011433210A CN112419465B CN 112419465 B CN112419465 B CN 112419465B CN 202011433210 A CN202011433210 A CN 202011433210A CN 112419465 B CN112419465 B CN 112419465B
- Authority
- CN
- China
- Prior art keywords
- map
- mapping
- paillette
- virtual model
- noise
- 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
- 238000009877 rendering Methods 0.000 title claims abstract description 84
- 238000000034 method Methods 0.000 title claims abstract description 55
- 238000013507 mapping Methods 0.000 claims abstract description 131
- 238000012545 processing Methods 0.000 claims abstract description 49
- 238000009499 grossing Methods 0.000 claims abstract description 45
- 230000006870 function Effects 0.000 claims description 43
- 238000004590 computer program Methods 0.000 claims description 18
- 230000008569 process Effects 0.000 claims description 11
- 238000003860 storage Methods 0.000 claims description 8
- 230000000694 effects Effects 0.000 abstract description 35
- 238000010586 diagram Methods 0.000 description 13
- 230000009286 beneficial effect Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 4
- 230000003068 static effect 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
- 238000011161 development Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000011065 in-situ storage Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 235000019646 color tone Nutrition 0.000 description 1
- 229910003460 diamond Inorganic materials 0.000 description 1
- 239000010432 diamond Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请实施例提供的虚拟模型的渲染方法和装置,在为虚拟角色衣服上的亮片添加闪烁效果时,先获取噪波贴图和虚拟模型对应的基础贴图;并根据噪波贴图,对基础贴图中的亮片进行处理,得到亮片随着视线方向进行闪烁的第一贴图后,不是直接根据该第一贴图对虚拟模型进行渲染,而是先对第一贴图中亮片的边缘进行平滑处理,并根据平滑处理后的第二贴图对虚拟模型进行渲染;这样通过对第一贴图中亮片的边缘进行平滑处理,可以有效地解决闪烁时亮片的边缘比较生硬,且锯齿严重的问题,从而提高了贴图的渲染效果。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种虚拟模型的渲染方法和装置。
背景技术
在游戏开发过程中,美术设计人员通常会为了提升虚拟角色的炫酷效果,会在虚拟角色衣服上添加亮片(Shader),使得亮片跟随虚拟角色的转动和位置变化,呈现随机亮片闪烁效果。
然而,采用现有的方法,虽然可以使虚拟角色衣服上的亮片具有闪烁效果,但是,闪烁时亮片的边缘比较生硬,且锯齿严重,这样会导致渲染效果较差。
发明内容
本发明实施例提供了一种虚拟模型的渲染方法和装置,解决了闪烁时亮片的边缘比较生硬,且锯齿严重的问题,从而提高了贴图的渲染效果。
第一方面,本申请实施例提供了一种虚拟模型的渲染方法,该虚拟模型的渲染方法可以包括:
获取噪波贴图和虚拟模型对应的基础贴图。
根据所述噪波贴图,对所述基础贴图中的亮片进行处理,得到第一贴图,所述第一贴图中的亮片随着视线方向进行闪烁。
对所述第一贴图中亮片的边缘进行平滑处理,得到第二贴图。
根据所述第二贴图,对所述虚拟模型进行渲染。
在一种可能的实现方式中,所述对所述第一贴图中亮片的边缘进行平滑处理,得到第二贴图,包括:
通过平滑阶梯函数,对所述第一贴图中亮片的边缘进行平滑处理,得到所述第二贴图。
在一种可能的实现方式中,所述根据所述第二贴图,对所述虚拟模型进行渲染,包括:
获取待映射至所述虚拟模型的遮罩图,所述遮罩图能够随着时间发生流动。
将所述遮罩图叠加到所述第二贴图中,得到第三贴图。
根据所述第三贴图,对所述虚拟模型进行渲染。
在一种可能的实现方式中,所述根据所述第三贴图,对所述虚拟模型进行渲染,包括:
获取所述噪波贴图中亮片的颜色值。
将所述颜色值叠加到所述第三贴图中的亮片中,得到叠加后的第三贴图。
根据所述叠加后的第三贴图对所述虚拟模型进行渲染。
在一种可能的实现方式中,所述根据所述噪波贴图,对所述基础贴图中的亮片进行处理,得到第一贴图,包括:
根据所述噪波贴图,对所述基础贴图中的亮片进行处理,得到初始贴图。
对所述初始贴图中亮片的闪烁数量进行调整,得到第四贴图。
对所述第四贴图中亮片的闪烁强度进行调整,得到所述第一贴图。
在一种可能的实现方式中,所述对所述初始贴图中亮片的闪烁数量进行调整,得到第四贴图,包括:
获取预设参数,所述预设参数用于控制所述闪烁数量。
根据Pow(x,y)函数,对所述初始贴图中亮片的闪烁数量进行调整,得到所述第四贴图;其中,x为所述初始贴图,y为所述预设参数。
在一种可能的实现方式中,所述对所述第四贴图中亮片的闪烁强度进行调整,得到所述第一贴图,包括:
获取所述噪波贴图的红色通道值。
获取预设的强度参数,所述强度参数用于调整所述亮片的闪烁强度。
将所述第四贴图中的亮片值分别和所述红色通道值与所述强度参数相乘,以对所述第四贴图中亮片的闪烁强度进行调整,得到所述第一贴图。
第二方面,本申请实施例还提供了一种虚拟模型的渲染装置,该虚拟模型的渲染装置可以包括:
获取模块,用于获取噪波贴图和虚拟模型对应的基础贴图。
处理模块,用于根据所述噪波贴图,对所述基础贴图中的亮片进行处理,得到第一贴图,所述第一贴图中的亮片随着视线方向进行闪烁;并对所述第一贴图中亮片的边缘进行平滑处理,得到第二贴图。
渲染模块,用于根据所述第二贴图,对所述虚拟模型进行渲染。
在一种可能的实现方式中,所述处理模块,具体用于通过平滑阶梯函数,对所述第一贴图中亮片的边缘进行平滑处理,得到所述第二贴图。
在一种可能的实现方式中,所述处理模块,还用于获取待映射至所述虚拟模型的遮罩图,所述遮罩图能够随着时间发生流动;并将所述遮罩图叠加到所述第二贴图中,得到第三贴图。
所述渲染模块,具体用于根据所述第三贴图,对所述虚拟模型进行渲染。
在一种可能的实现方式中,所述获取模块,还用于获取所述噪波贴图中亮片的颜色值。
所述处理模块,还用于将所述颜色值叠加到所述第三贴图中的亮片中,得到叠加后的第三贴图。
所述渲染模块,具体用于根据所述叠加后的第三贴图对所述虚拟模型进行渲染。
在一种可能的实现方式中,所述处理模块,具体用于根据所述噪波贴图,对所述基础贴图中的亮片进行处理,得到初始贴图;并对所述初始贴图中亮片的闪烁数量进行调整,得到第四贴图;对所述第四贴图中亮片的闪烁强度进行调整,得到所述第一贴图。
在一种可能的实现方式中,所述获取模块,还用于获取预设参数,所述预设参数用于控制所述闪烁数量。
所述处理模块,具体用于根据Pow(x,y)函数,对所述初始贴图中亮片的闪烁数量进行调整,得到所述第四贴图;其中,x为所述初始贴图,y为所述预设参数。
在一种可能的实现方式中,所述获取模块,还用于获取所述噪波贴图的红色通道值;并获取预设的强度参数,所述强度参数用于调整所述亮片的闪烁强度。
所述处理模块,具体用于将所述第四贴图中的亮片值分别和所述红色通道值与所述强度参数相乘,以对所述第四贴图中亮片的闪烁强度进行调整,得到所述第一贴图。
第三方面,本申请实施例还提供了一种虚拟模型的渲染装置,包括处理器和存储器;其中,
所述存储器,用于存储计算机程序。
所述处理器,用于读取所述存储器存储的计算机程序,并根据所述存储器中的计算机程序执行上述第一方面任一种可能的实现方式中所述的虚拟模型的渲染方法。
第四方面,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现上述第一方面任一种可能的实现方式中所述的虚拟模型的渲染方法。
第五方面,本申请实施例还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时,实现上述第一方面任一种可能的实现方式中所述的虚拟模型的渲染方法。
由此可见,本申请实施例中,在为虚拟角色衣服上的亮片添加闪烁效果时,先获取噪波贴图和虚拟模型对应的基础贴图;并根据噪波贴图,对基础贴图中的亮片进行处理,得到亮片随着视线方向进行闪烁的第一贴图后,不是直接根据该第一贴图对虚拟模型进行渲染,而是先对第一贴图中亮片的边缘进行平滑处理,并根据平滑处理后的第二贴图对虚拟模型进行渲染;这样通过对第一贴图中亮片的边缘进行平滑处理,可以有效地解决闪烁时亮片的边缘比较生硬,且锯齿严重的问题,从而提高了贴图的渲染效果。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1为本申请实施例提供的一种边缘生硬且锯齿严重的亮片示意图;
图2为本申请实施例提供的一种虚拟模型的渲染方法的流程示意图;
图3为本申请实施例提供的一种噪波贴图的示意图;
图4为本申请实施例提的一种SmoothStep函数处理效果的示意图;
图5为本申请实施例提供的一种遮罩图的示意图;
图6为本申请实施例提供的一种渲染后的贴图示意图;
图7为本申请实施例提供的一种虚拟模型的渲染装置的结构示意图;
图8为本发明实施例提供的另一种虚拟模型的渲染装置的结构示意图。
通过上述附图,已示出本公开明确的实施例,后文中将有更详细的描述。这些附图和文字描述并不是为了通过任何方式限制本公开构思的范围,而是通过参考特定实施例为本领域技术人员说明本公开的概念。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在本发明的实施例中,“至少一个”是指一个、两个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况,其中A,B可以是单数或者复数。在本发明的文字描述中,字符“/”一般表示前后关联对象是一种“或”的关系。
本申请实施例提供的虚拟模型的渲染方法可以应用于图像处理的场景中,尤其应用于对图像中的亮片进行处理的场景。例如,可以应用于在游戏开发过程中的贴图处理。在游戏开发过程中,美术设计人员通常会为了提升虚拟角色的炫酷效果,会在虚拟角色衣服上添加亮片(Shader),使得亮片跟随虚拟角色的转动和位置变化,呈现随机亮片闪烁效果。
现有技术中,为了使虚拟角色衣服上的亮片具有闪烁效果,虚拟模型的渲染装置可以先根据需求获取噪波贴图,并通过噪波贴图扰动虚拟角色对应的虚拟模型的法线,并针对虚拟角色衣服上的每一个亮片,计算以视线方向和法线扰动方向为参数的点积dot函数,若dot函数的输出值大于0,则确定显示该亮片,若dot函数的输出值小于0,则确定不显示亮片,以确定需要闪烁的亮片,再根据pow函数进一步调整需要闪烁的亮片数量,此外,还可以调整需要闪烁的亮片的闪烁强度,从而为虚拟角色衣服上的亮片添加闪烁效果,使得虚拟角色衣服上的亮片具有闪烁效果。
其中,法线Normal:指法线指平面上垂直于曲线在某点的切线的一条线,通常会根据法线方向和光照方向绘制屏幕上3d物体的阴影。
然而,采用现有的方法,虽然可以使虚拟角色衣服上的亮片具有闪烁效果,但是,由于噪波贴图的每个亮片是边缘生硬的一个颜色,这就会导致该部分的法线是几乎统一的,整体闪烁的时候边缘就会比较生硬,且锯齿严重。示例的,请参见图1所示,图1为本申请实施例提供的一种边缘生硬且锯齿严重的亮片示意图,结合图1所示,由于闪烁时亮片的边缘比较生硬,且锯齿严重,这样会导致渲染效果较差。
为了解决闪烁时亮片的边缘比较生硬,且锯齿严重的问题,从而提高贴图的渲染效果,可以尝试修改dot函数中的法线扰动方向,使得闪烁的亮片的边缘比较柔和且平滑,以解决闪烁时亮片的边缘比较生硬,且锯齿严重的问题,但是,由于dot函数中的法线扰动方向是噪波贴图扰动虚拟角色对应的虚拟模型的法线得到的,因此,在噪波贴图已定的情况下,很难修改dot函数中的法线扰动方向,因此,这种方法显然是不可行的。
在该种情况下,为了解决闪烁时亮片的边缘比较生硬,且锯齿严重的问题,可以尝试在根据dot函数的输出值确定需要闪烁的亮片后,先对需要闪烁的亮片的边缘进行平滑处理,使得平滑处理后的亮片边缘柔和且平滑,然后再根据pow函数进一步调整需要闪烁的亮片的数量,此外,还可以调整需要闪烁的亮片的闪烁强度,为虚拟角色衣服上的亮片添加闪烁效果,这样可以解决闪烁时亮片的边缘比较生硬,且锯齿严重的问题,从而提高贴图的渲染效果。
基于上述构思,本申请实施例提供了一种虚拟模型的渲染方法,可以先获取噪波贴图和虚拟模型对应的基础贴图;根据噪波贴图,对基础贴图中的亮片进行处理,得到第一贴图,第一贴图中的亮片随着视线方向进行闪烁;并对第一贴图中亮片的边缘进行平滑处理,得到第二贴图;再根据第二贴图,对虚拟模型进行渲染。
其中,噪波贴图又称为Noise贴图。示例的,在本申请实施例中,噪波贴图可以为黑白色调的噪波贴图,也可以为彩色调的噪波贴图,具体可以根据实际需要进行设置。可以理解的是,噪波贴图中包括多个形状、大小相同或者不同的亮片。
视线方向(View Direction):指世界坐标下由游戏相机指向像素点的单位向量。
以游戏场景为例,虚拟模型可以理解为游戏场景下目标对象,例如虚拟角色的虚拟模型,虚拟模型对应的基础贴图可以理解为虚拟角色的衣物贴图,该基础贴图中同样包括多个形状、大小相同或者不同的亮片。
可以理解的是,在为虚拟角色衣服上的亮片添加闪烁效果,可以将噪波贴图作为辅助依据,通过该噪波贴图扰动虚拟角色对应的虚拟模型的法线,并针对虚拟角色衣服上的每一个亮片,计算以视线方向和法线扰动方向为参数的dot函数,通过dot函数的输出值确定需要闪烁的亮片,进而为虚拟角色衣服上的亮片添加闪烁效果。
可以看出,本申请实施例中,在为虚拟角色衣服上的亮片添加闪烁效果时,先获取噪波贴图和虚拟模型对应的基础贴图;并根据噪波贴图,对基础贴图中的亮片进行处理在根据噪波贴图,在得到亮片随着视线方向进行闪烁的第一贴图后,不是直接根据该第一贴图对虚拟模型进行渲染,而是先对第一贴图中亮片的边缘进行平滑处理,并根据平滑处理后的第二贴图对虚拟模型进行渲染;这样通过对第一贴图中亮片的边缘进行平滑处理,可以有效地解决闪烁时亮片的边缘比较生硬,且锯齿严重的问题,从而提高了贴图的渲染效果。
下面,将通过几个具体的实施例对本申请实施例提供的虚拟模型的渲染方法进行详细地描述。可以理解的是,在本申请实施例中,下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
图2为本申请实施例提供的一种虚拟模型的渲染方法的流程示意图,该虚拟模型的渲染方法可以由软件和/或硬件装置执行,例如,该硬件装置可以为终端或者服务器。示例的,请参见图2所示,该虚拟模型的渲染方法可以包括:
S201、获取噪波贴图和虚拟模型对应的基础贴图。
示例的,在获取噪波贴图时,可以获取现有的噪波贴图,也可以通过美术控制自行绘制噪波贴图,具体可以根据实际需要进行设置。但针对自定义形状的亮片方案,可能无法直接获取到具有自定义形状的亮片方案的噪波贴图,因此,在该种情况下,可以通过美术控制自行绘制噪波贴图。通过美术控制自行绘制噪波贴图时,噪波贴图中的亮片的柔和边缘,形状、密度以及颜色,均可由美术控制,可控性更强,可以做多边形的钻石亮片。示例的,请参见图3所示,图3为本申请实施例提供的一种噪波贴图的示意图,可以看出,图3所示的噪波贴图中包括多个形状不同的亮片。
示例的,在获取虚拟模型对应的基础贴图时,可以通过美术控制获取基础贴图,可以在shader里采样读取,例如tex2d(_Tex,i.uv),_Tex是通过美术控制获取基础贴图,i.uv是模型的uv分布。
在分别获取到噪波贴图和虚拟模型对应的基础贴图后,可以根据噪波贴图,对基础贴图中的亮片进行处理,得到亮片随着视线方向进行闪烁的第一贴图,即执行下述S202:
S202、根据噪波贴图,对基础贴图中的亮片进行处理,得到第一贴图。
其中,第一贴图中的亮片随着视线方向进行闪烁,亮片随着视线方向进行闪烁可以理解为随着视线方向的变动,亮片具有不同的闪烁效果。
示例的,在根据噪波贴图对基础贴图中的亮片进行处理,得到第一贴图时,可以先根据噪波贴图,对待处理模型的法线添加扰动,得到扰动法线。其具体添加扰动过程为:利用噪波贴图的像素值,对原有的法线进行加减运算,使得原有的法线方向变得不规则,从而得到扰动法线。
在得到扰动法线后,计算以视线方向和法线扰动方向为参数的dot函数,并根据dot函数的输出值对基础贴图中的亮片进行处理,得到初始贴图;初始贴图中包括根据dot函数的输出值确定的需要闪烁的亮片,以及根据dot函数的输出值确定的不需要闪烁的亮片;进一步地,可以获取用于控制闪烁数量的预设参数y,并根据Pow(x,y)函数,对初始贴图中亮片的闪烁数量进行调整,得到调整后的第四贴图。其中,pow(x,y)=x的y次方,x为初始贴图。
在根据pow函数进一步调整需要闪烁的亮片的数量后,还可以调整需要闪烁的亮片的闪烁强度,具体为:分别获取噪波贴图的红色通道以及用于调整亮片的闪烁强度的强度参数,并将第四贴图中的亮片值分别和红色通道值(R通道)与强度参数(SparkleIntensity)相乘,以对第四贴图中亮片的闪烁强度进行调整,从而得到第一贴图。其中,红色通道是图片rgb颜色空间下的红色通道。
为虚拟角色衣服上的亮片添加闪烁效果,这样可以解决闪烁时亮片的边缘比较生硬,且锯齿严重的问题,从而提高贴图的渲染效果。
但是,由于dot函数是以视线方向和法线扰动方向为参数计算得到的,这样会导致闪烁时亮片的边缘比较生硬,且锯齿严重,可参见上述图1所示,基于此,在本申请实施例中,正是因为考虑到闪烁时亮片的边缘比较生硬,且锯齿严重的问题,在根据噪波贴图对基础贴图中的亮片进行处理,得到第一贴图之后,不是直接根据该第一贴图对虚拟模型进行渲染,而是先对该第一贴图中亮片的边缘进行平滑处理,得到第二贴图,再根据平滑处理得到的第二贴图对虚拟模型进行渲染,即执行下述S203-S204,这样通过对第一贴图中亮片的边缘进行平滑处理,可以有效地解决闪烁时亮片的边缘比较生硬,且锯齿严重的问题,从而提高了贴图的渲染效果。
S203、对第一贴图中亮片的边缘进行平滑处理,得到第二贴图。
示例的,在对第一贴图中亮片的边缘进行平滑处理时,可以通过平滑阶梯函数对第一贴图中亮片的边缘进行平滑处理,也可以通过其它类似于平滑阶梯函数的函数对第一贴图中亮片的边缘进行平滑处理,只要可以实现对两边边缘的平滑处理即可。
示例的,平滑阶梯函数可以为SmoothStep函数,该SmoothStep函数的主要是通过求解两个值之间的样条插值,实现对两个值之间的线条进行平滑处理的目的。比起lerp函数,SmoothStep函数的变化更平缓(linstep),示例的,请参见图4所示,图4为本申请实施例提的一种SmoothStep函数处理效果的示意图,可以看出,Smoothstep函数处理后的线条的边缘过度更柔和,且更平滑。
可以理解的是,为了使得第二贴图的平滑效果更好,在美术控制绘制噪波贴图时,也可以使得美术图纸的亮片边缘也保持柔和,这样就可以避免因美术图纸的亮片边缘锯齿严重而对第二贴图的亮片边缘造成影响,这样可以进一步提高第二贴图的平滑效果。
通过对第一贴图中亮片的边缘进行平滑处理,得到平滑效果较好的第二贴图后,就可以根据该平滑效果较好的第二贴图对虚拟模型进行渲染,即执行下述S204:
S204、根据第二贴图,对虚拟模型进行渲染。
可以看出,本申请实施例中,在为虚拟角色衣服上的亮片添加闪烁效果时,先获取噪波贴图和虚拟模型对应的基础贴图;并根据噪波贴图,对基础贴图中的亮片进行处理在根据噪波贴图,在得到亮片随着视线方向进行闪烁的第一贴图后,不是直接根据该第一贴图对虚拟模型进行渲染,而是先对第一贴图中亮片的边缘进行平滑处理,并根据平滑处理后的第二贴图对虚拟模型进行渲染;这样通过对第一贴图中亮片的边缘进行平滑处理,可以有效地解决闪烁时亮片的边缘比较生硬,且锯齿严重的问题,从而提高了贴图的渲染效果。
基于上述图2所示的实施例,在根据对第一贴图中亮片的边缘进行平滑处理得到的第二贴图,对虚拟模型进行渲染时,为了使得渲染后的图像可uv流动,可以获取待映射至虚拟模型的遮罩图,遮罩图能够随着时间发生流动,通过在第二贴图中叠加遮罩图,并根据叠加得到的第三贴图对虚拟模型进行渲染,这样渲染得到的贴图可uv流动。其中,uv流动:指对uv坐标系进行一些随时间的偏移,从而实现闪烁效果。
在获取待映射至虚拟模型的遮罩图时,示例的,可参见图5所示,图5为本申请实施例提供的一种遮罩图的示意图,可以先计算游戏时间与0.5的乘积,得到第一数值;并分别计算第二贴图中各个亮片的纹理坐标与uv坐标之间的距离,再计算距离与5的乘积,得到第二数值;计算第一数值和第二数值的和,并对计算得到的值取cos函数,再计算cos函数的取值与0.7的乘积,这样就可以得到具有随时间流动效果的遮罩图。
在获取到具有随时间流动效果的遮罩图后,通过在第二贴图中叠加遮罩图,并根据叠加得到的第三贴图对虚拟模型进行渲染,这样渲染得到的贴图可uv流动。尤其是在虚拟角色处于静止状态时,通过加一个遮罩uv流动,可以让静止状态的亮片随着时间会原地闪烁,可以保证静止状态下,亮片也会随时间原地闪烁,提高了贴图的炫酷效果。
此外,在根据第三贴图对虚拟模型进行渲染时,为了使得渲染后的贴图中的亮片不再是黑白色调,可以获取噪波贴图中亮片的颜色值,该颜色值可以理解为彩色值,在第三贴图中的亮片的颜色值上乘以噪波贴图的颜色值,以将噪波贴图中的颜色值叠加到第三贴图中的亮片中,对第三贴图中的亮片的颜色进行调节,使得第三贴图中的亮片的颜色也变成彩色,并根据调节后的第三贴图对虚拟模型进行渲染,示例的,可参见图6所示,图6为本申请实施例提供的一种渲染后的贴图示意图,可以看出,渲染后的贴图中的亮片的边缘比较柔和,且平滑,而且渲染后的贴图中的亮片色调更加丰富,而不局限于单一的黑白色调。
图7为本申请实施例提供的一种虚拟模型的渲染装置70的结构示意图,示例的,请参见图7所示,该虚拟模型的渲染装置70可以包括:
获取模块701,用于获取噪波贴图和虚拟模型对应的基础贴图。
处理模块702,用于根据噪波贴图,对基础贴图中的亮片进行处理,得到第一贴图,第一贴图中的亮片随着视线方向进行闪烁;并对第一贴图中亮片的边缘进行平滑处理,得到第二贴图。
渲染模块703,用于根据第二贴图,对虚拟模型进行渲染。
可选的,处理模块702,具体用于通过平滑阶梯函数,对第一贴图中亮片的边缘进行平滑处理,得到第二贴图。
可选的,处理模块702,还用于获取待映射至虚拟模型的遮罩图,遮罩图能够随着时间发生流动;并将遮罩图叠加到第二贴图中,得到第三贴图。
渲染模块703,具体用于根据第三贴图,对虚拟模型进行渲染。
可选的,获取模块701,还用于获取噪波贴图中亮片的颜色值。
处理模块702,还用于将颜色值叠加到第三贴图中的亮片中,得到叠加后的第三贴图。
渲染模块703,具体用于根据叠加后的第三贴图对虚拟模型进行渲染。
可选的,处理模块702,具体用于根据噪波贴图,对基础贴图中的亮片进行处理,得到初始贴图;并对初始贴图中亮片的闪烁数量进行调整,得到第四贴图;对第四贴图中亮片的闪烁强度进行调整,得到第一贴图。
可选的,获取模块701,还用于获取预设参数,预设参数用于控制闪烁数量。
处理模块702,具体用于根据Pow(x,y)函数,对初始贴图中亮片的闪烁数量进行调整,得到第四贴图;其中,x为初始贴图,y为预设参数。
可选的,获取模块701,还用于获取噪波贴图的红色通道值;并获取预设的强度参数,强度参数用于调整亮片的闪烁强度。
处理模块702,具体用于将第四贴图中的亮片值分别和红色通道值与强度参数相乘,以对第四贴图中亮片的闪烁强度进行调整,得到第一贴图。
本申请实施例提供的虚拟模型的渲染装置70,可以执行上述任一实施例中的虚拟模型的渲染方法的技术方案,其实现原理以及有益效果与虚拟模型的渲染方法的实现原理及有益效果类似,可参见虚拟模型的渲染方法的实现原理及有益效果,此处不再进行赘述。
图8为本发明实施例提供的另一种虚拟模型的渲染装置80的结构示意图,示例的,请参见图8所示,该虚拟模型的渲染装置80可以包括处理器801和存储器802;其中,
所述存储器802,用于存储计算机程序。
所述处理器801,用于读取所述存储器802存储的计算机程序,并根据所述存储器802中的计算机程序执行上述任一实施例中的样本数据的获取方法的技术方案。
可选地,存储器802既可以是独立的,也可以跟处理器801集成在一起。当存储器802是独立于处理器801之外的器件时,虚拟模型的渲染装置还可以包括:总线,用于连接存储器802和处理器801。
可选地,本实施例还包括:通信接口,该通信接口可以通过总线与处理器801连接。处理器801可以控制通信接口来实现上述虚拟模型的渲染装置的获取和发送的功能。
本发明实施例所示的虚拟模型的渲染装置80,可以执行上述任一实施例中的虚拟模型的渲染方法的技术方案,其实现原理以及有益效果与虚拟模型的渲染方法的实现原理及有益效果类似,可参见虚拟模型的渲染方法的实现原理及有益效果,此处不再进行赘述。
本发明实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现上述任一实施例中的虚拟模型的渲染方法的技术方案,其实现原理以及有益效果与虚拟模型的渲染方法的实现原理及有益效果类似,可参见虚拟模型的渲染方法的实现原理及有益效果,此处不再进行赘述。
本申请实施例还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时,实现上述任一实施例中的虚拟模型的渲染方法的技术方案,其实现原理以及有益效果与虚拟模型的渲染方法的实现原理及有益效果类似,可参见虚拟模型的渲染方法的实现原理及有益效果,此处不再进行赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所展示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元展示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本发明各个实施例方法的部分步骤。
应理解的是,上述处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital SignalProcessor,简称:DSP)、专用集成电路(英文:Application Specific IntegratedCircuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,还可以为U盘、移动硬盘、只读存储器、磁盘或光盘等。
总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component,PCI)总线或扩展工业标准体系结构(ExtendedIndustry Standard Architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本发明附图中的总线并不限定仅有一根总线或一种类型的总线。
上述计算机可读存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (11)
1.一种虚拟模型的渲染方法,其特征在于,包括:
获取噪波贴图和虚拟模型对应的基础贴图,所述噪波贴图通过美术控制自行绘制,所述基础贴图通过美术控制获取,通过美术控制自行绘制所述噪波贴图时,所述噪波贴图中亮片的形状以及边缘柔和程度由美术控制;
根据所述噪波贴图,对所述基础贴图中的亮片进行处理,得到第一贴图,所述第一贴图中的亮片随着视线方向进行闪烁;
对所述第一贴图中亮片的边缘进行平滑处理,得到第二贴图;
获取待映射至所述虚拟模型的遮罩图,所述遮罩图能够随着时间发生流动;
将所述遮罩图叠加到所述第二贴图中,得到第三贴图;
获取所述噪波贴图中亮片的颜色值;
将所述颜色值叠加到所述第三贴图中的亮片中,得到叠加后的第三贴图;
根据所述叠加后的第三贴图对所述虚拟模型进行渲染;
所述对所述第一贴图中亮片的边缘进行平滑处理,得到第二贴图,包括:
通过平滑阶梯函数,对所述第一贴图中亮片的边缘进行平滑处理,得到所述第二贴图。
2.根据权利要求1所述的方法,其特征在于,所述根据所述噪波贴图,对所述基础贴图中的亮片进行处理,得到第一贴图,包括:
根据所述噪波贴图,对所述基础贴图中的亮片进行处理,得到初始贴图;
对所述初始贴图中亮片的闪烁数量进行调整,得到第四贴图;
对所述第四贴图中亮片的闪烁强度进行调整,得到所述第一贴图。
3.根据权利要求2所述的方法,其特征在于,所述对所述初始贴图中亮片的闪烁数量进行调整,得到第四贴图,包括:
获取预设参数,所述预设参数用于控制所述闪烁数量;
根据Pow(x,y)函数,对所述初始贴图中亮片的闪烁数量进行调整,得到所述第四贴图;其中,x为所述初始贴图,y为所述预设参数。
4.根据权利要求3所述的方法,其特征在于,所述对所述第四贴图中亮片的闪烁强度进行调整,得到所述第一贴图,包括:
获取所述噪波贴图的红色通道值;
获取预设的强度参数,所述强度参数用于调整所述亮片的闪烁强度;
将所述第四贴图中的亮片值分别和所述红色通道值与所述强度参数相乘,以对所述第四贴图中亮片的闪烁强度进行调整,得到所述第一贴图。
5.一种虚拟模型的渲染装置,其特征在于,包括:
获取模块,用于获取噪波贴图和虚拟模型对应的基础贴图,所述噪波贴图通过美术控制自行绘制,所述基础贴图通过美术控制获取,通过美术控制自行绘制所述噪波贴图时,所述噪波贴图中亮片的形状以及边缘柔和程度由美术控制;
处理模块,用于根据所述噪波贴图,对所述基础贴图中的亮片进行处理,得到第一贴图,所述第一贴图中的亮片随着视线方向进行闪烁;并对所述第一贴图中亮片的边缘进行平滑处理,得到第二贴图;
渲染模块,用于根据所述第二贴图,对所述虚拟模型进行渲染;
所述处理模块,还用于获取待映射至所述虚拟模型的遮罩图,所述遮罩图能够随着时间发生流动;并将所述遮罩图叠加到所述第二贴图中,得到第三贴图;
所述获取模块,还用于获取所述噪波贴图中亮片的颜色值;
所述处理模块,还用于将所述颜色值叠加到所述第三贴图中的亮片中,得到叠加后的第三贴图;
所述渲染模块,具体用于根据所述叠加后的第三贴图对所述虚拟模型进行渲染;
所述处理模块,具体用于通过平滑阶梯函数,对所述第一贴图中亮片的边缘进行平滑处理,得到所述第二贴图。
6.根据权利要求5所述的装置,其特征在于,
所述处理模块,具体用于根据所述噪波贴图,对所述基础贴图中的亮片进行处理,得到初始贴图;并对所述初始贴图中亮片的闪烁数量进行调整,得到第四贴图;对所述第四贴图中亮片的闪烁强度进行调整,得到所述第一贴图。
7.根据权利要求6所述的装置,其特征在于,
所述获取模块,还用于获取预设参数,所述预设参数用于控制所述闪烁数量;
所述处理模块,具体用于根据Pow(x,y)函数,对所述初始贴图中亮片的闪烁数量进行调整,得到所述第四贴图;其中,x为所述初始贴图,y为所述预设参数。
8.根据权利要求7所述的装置,其特征在于,
所述获取模块,还用于获取所述噪波贴图的红色通道值;并获取预设的强度参数,所述强度参数用于调整所述亮片的闪烁强度;
所述处理模块,具体用于将所述第四贴图中的亮片值分别和所述红色通道值与所述强度参数相乘,以对所述第四贴图中亮片的闪烁强度进行调整,得到所述第一贴图。
9.一种虚拟模型的渲染装置,其特征在于,包括处理器和存储器;其中,
所述存储器,用于存储计算机程序;
所述处理器,用于读取所述存储器存储的计算机程序,并根据所述存储器中的计算机程序执行上述权利要求1-4任一项所述的虚拟模型的渲染方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现上述权利要求1-4任一项所述的虚拟模型的渲染方法。
11.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时,实现上述权利要求1-4任一项所述的虚拟模型的渲染方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011433210.1A CN112419465B (zh) | 2020-12-09 | 2020-12-09 | 虚拟模型的渲染方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011433210.1A CN112419465B (zh) | 2020-12-09 | 2020-12-09 | 虚拟模型的渲染方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112419465A CN112419465A (zh) | 2021-02-26 |
CN112419465B true CN112419465B (zh) | 2024-05-28 |
Family
ID=74775902
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011433210.1A Active CN112419465B (zh) | 2020-12-09 | 2020-12-09 | 虚拟模型的渲染方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112419465B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113096227B (zh) * | 2021-04-01 | 2023-06-13 | 网易(杭州)网络有限公司 | 亮片的显示方法和装置 |
CN114339448B (zh) * | 2021-12-31 | 2024-02-13 | 深圳万兴软件有限公司 | 光束视频特效的制作方法、装置、计算机设备及存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107154069A (zh) * | 2017-05-11 | 2017-09-12 | 上海微漫网络科技有限公司 | 一种基于虚拟角色的数据处理方法及*** |
CN107204036A (zh) * | 2016-03-16 | 2017-09-26 | 腾讯科技(深圳)有限公司 | 生成头发图像的方法和装置 |
CN109377546A (zh) * | 2018-12-07 | 2019-02-22 | 网易(杭州)网络有限公司 | 虚拟现实模型渲染方法及装置 |
CN109685869A (zh) * | 2018-12-25 | 2019-04-26 | 网易(杭州)网络有限公司 | 虚拟模型渲染方法与装置、存储介质、电子设备 |
CN109887062A (zh) * | 2019-03-14 | 2019-06-14 | 网易(杭州)网络有限公司 | 渲染方法、装置、设备及存储介质 |
CN110033507A (zh) * | 2019-04-08 | 2019-07-19 | 网易(杭州)网络有限公司 | 模型贴图的内描线绘制方法、装置、设备及可读存储介质 |
CN110458930A (zh) * | 2019-08-13 | 2019-11-15 | 网易(杭州)网络有限公司 | 三维地图的渲染方法、装置及存储介质 |
CN111127623A (zh) * | 2019-12-25 | 2020-05-08 | 上海米哈游天命科技有限公司 | 模型的渲染方法、装置、存储介质及终端 |
CN111445563A (zh) * | 2020-03-23 | 2020-07-24 | 腾讯科技(深圳)有限公司 | 一种图像生成的方法以及相关装置 |
CN111462313A (zh) * | 2020-04-02 | 2020-07-28 | 网易(杭州)网络有限公司 | 绒毛效果的实现方法、装置和终端 |
CN112037123A (zh) * | 2019-11-27 | 2020-12-04 | 腾讯科技(深圳)有限公司 | 唇妆特效的显示方法、装置、设备及存储介质 |
-
2020
- 2020-12-09 CN CN202011433210.1A patent/CN112419465B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107204036A (zh) * | 2016-03-16 | 2017-09-26 | 腾讯科技(深圳)有限公司 | 生成头发图像的方法和装置 |
CN107154069A (zh) * | 2017-05-11 | 2017-09-12 | 上海微漫网络科技有限公司 | 一种基于虚拟角色的数据处理方法及*** |
CN109377546A (zh) * | 2018-12-07 | 2019-02-22 | 网易(杭州)网络有限公司 | 虚拟现实模型渲染方法及装置 |
CN109685869A (zh) * | 2018-12-25 | 2019-04-26 | 网易(杭州)网络有限公司 | 虚拟模型渲染方法与装置、存储介质、电子设备 |
CN109887062A (zh) * | 2019-03-14 | 2019-06-14 | 网易(杭州)网络有限公司 | 渲染方法、装置、设备及存储介质 |
CN110033507A (zh) * | 2019-04-08 | 2019-07-19 | 网易(杭州)网络有限公司 | 模型贴图的内描线绘制方法、装置、设备及可读存储介质 |
CN110458930A (zh) * | 2019-08-13 | 2019-11-15 | 网易(杭州)网络有限公司 | 三维地图的渲染方法、装置及存储介质 |
CN112037123A (zh) * | 2019-11-27 | 2020-12-04 | 腾讯科技(深圳)有限公司 | 唇妆特效的显示方法、装置、设备及存储介质 |
CN111127623A (zh) * | 2019-12-25 | 2020-05-08 | 上海米哈游天命科技有限公司 | 模型的渲染方法、装置、存储介质及终端 |
CN111445563A (zh) * | 2020-03-23 | 2020-07-24 | 腾讯科技(深圳)有限公司 | 一种图像生成的方法以及相关装置 |
CN111462313A (zh) * | 2020-04-02 | 2020-07-28 | 网易(杭州)网络有限公司 | 绒毛效果的实现方法、装置和终端 |
Also Published As
Publication number | Publication date |
---|---|
CN112419465A (zh) | 2021-02-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109377546B (zh) | 虚拟现实模型渲染方法及装置 | |
US9311901B2 (en) | Variable blend width compositing | |
CN110163832B (zh) | 人脸融合方法、装置和终端 | |
US5995111A (en) | Image processing apparatus and method | |
CN112419465B (zh) | 虚拟模型的渲染方法和装置 | |
WO2019085838A1 (zh) | 对象渲染方法和装置、存储介质及电子装置 | |
US20130050252A1 (en) | Brushing Tools for Digital Image Adjustments | |
JP2000134486A (ja) | 画像処理装置及び画像処理方法及び記憶媒体 | |
CN109985384B (zh) | 贴图动态调整方法及装置 | |
US20070206025A1 (en) | Image Processor and Method, Computer Program, and Recording Medium | |
US7280117B2 (en) | Graphical user interface for a keyer | |
EP1249788A2 (en) | Image processing | |
CN107564085B (zh) | 图像扭曲处理方法、装置、计算设备及计算机存储介质 | |
GB2531427A (en) | Graphics processing systems | |
CN112426711B (zh) | Bloom效果处理的方法、***、电子装置和存储介质 | |
JP2008011286A (ja) | 画像処理プログラムおよび画像処理装置 | |
EP1408454A1 (en) | Drawing method | |
CN113096227B (zh) | 亮片的显示方法和装置 | |
EP4231243A1 (en) | Data storage management method, object rendering method, and device | |
CN111489417B (zh) | 贴图处理的方法及装置 | |
CN112465941B (zh) | 一种体积云处理方法、装置、电子设备及存储介质 | |
CN114549733A (zh) | 一种图像处理方法、装置、设备及介质 | |
JP2023545634A (ja) | 適応型背景を用いたマルチビューディスプレイシステム及び方法 | |
JP2007233433A (ja) | 画像処理プログラムおよび画像処理装置 | |
CN112274934B (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 |