一种虚拟对象的渲染方法、装置、计算机设备及存储介质与流程

文档序号:32902099发布日期:2023-01-13 01:56阅读:23来源:国知局
一种虚拟对象的渲染方法、装置、计算机设备及存储介质与流程

1.本技术涉及计算机技术领域,具体涉及一种虚拟对象的渲染方法、装置、计算机设备及计算机可读存储介质。


背景技术:

2.游戏场景设计中往往有针对各个天气环境搭建不同的场景模型,为了丰富游戏中的气候效果,在下雪天的时候,需要场景上的地表和物件能表现出对应的反馈,以提升游戏画面的表现力和模拟真实性。
3.相关技术中,针对游戏场景分别搭建积雪场景模型和无雪场景模型,然后根据游戏中的天气调用响应的场景模型进行场景渲染。但是,由于两套场景模型相互的独立,在切换不同场景模型实现场景中天气变化效果时,存在场景画面切换突兀,也即从无雪场景过渡成有雪场景表现效果较差。


技术实现要素:

4.本技术实施例提供一种虚拟对象的渲染方法、装置、计算机设备及计算机可读存储介质,可以提高对虚拟对象的雪景渲染效果。
5.本技术实施例提供了一种虚拟对象的渲染方法,包括:
6.确定虚拟场景中待渲染的虚拟对象模型,以及所述虚拟对象模型需要渲染的雪花沉积效果;
7.获取预设噪点图,并根据所述预设噪点图生成用于实现所述雪花沉积效果的雪花蒙版贴图,其中,所述雪花蒙版贴图包括所述雪花沉积效果对应的雪花覆盖区域,以及所述雪花覆盖区域的雪花沉积厚度;
8.获取所述虚拟对象模型在世界空间的法线信息;
9.根据所述法线信息对所述雪花蒙版贴图中的所述雪花覆盖区域和所述雪花沉积厚度进行处理,得到目标雪花蒙版贴图;
10.基于所述目标雪花蒙版贴图对所述虚拟对象模型进行渲染。
11.相应的,本技术实施例还提供了一种虚拟对象的渲染装置,包括:
12.确定单元,用于确定虚拟场景中待渲染的虚拟对象模型,以及所述虚拟对象模型需要渲染的雪花沉积效果;
13.第一获取单元,用于获取预设噪点图,并根据所述预设噪点图生成用于实现所述雪花沉积效果的雪花蒙版贴图,其中,所述雪花蒙版贴图包括所述雪花沉积效果对应的雪花覆盖区域,以及所述雪花覆盖区域的雪花沉积厚度;
14.第二获取单元,用于获取所述虚拟对象模型在世界空间的法线信息;
15.处理单元,用于根据所述法线信息对所述雪花蒙版贴图中的所述雪花覆盖区域和所述雪花沉积厚度进行处理,得到目标雪花蒙版贴图;
16.渲染单元,用于基于所述目标雪花蒙版贴图对所述虚拟对象模型进行渲染。
17.相应的,本技术实施例还提供了一种计算机设备,包括存储器,处理器及存储在储存器上并可在处理器上运行的计算机程序,其中,处理器执行本技术实施例任一提供的贴图处理方法。
18.相应的,本技术实施例还提供了一种计算机可读存储介质,计算机可读存储介质存储有多条指令,指令适于处理器进行加载,以执行如上的贴图处理方法。
19.本技术实施例在对虚拟对象进行雪景渲染过程中,通过程序生成一噪点图,然后通过不同采样率对噪点图进行采样处理的,得到多个目标噪点图,将多个目标噪点图按照不同合成比重进行合成处理,以此生成用于实现雪景效果的蒙版贴图,进一步的,获取虚拟对象在世界空间的法线信息,结合法线信息对蒙版贴图进行调整,并基于调整后蒙版贴图渲染虚拟对象的雪景效果,以此,可以提高对虚拟对象的雪景渲染效果。
附图说明
20.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
21.图1为本技术实施例提供的一种虚拟对象的渲染方法的流程示意图。
22.图2为本技术实施例提供的一种虚拟对象的渲染方法的应用场景示意图。
23.图3为本技术实施例提供的另一种虚拟对象的渲染方法的应用场景示意图。
24.图4为本技术实施例提供的另一种虚拟对象的渲染方法的应用场景示意图。
25.图5为本技术实施例提供的另一种虚拟对象的渲染方法的应用场景示意图。
26.图6为本技术实施例提供的另一种虚拟对象的渲染方法的应用场景示意图。
27.图7为本技术实施例提供的另一种虚拟对象的渲染方法的应用场景示意图。
28.图8为本技术实施例提供的另一种虚拟对象的渲染方法的流程示意图。
29.图9为本技术实施例提供的一种虚拟对象的渲染装置的结构框图。
30.图10为本技术实施例提供的计算机设备的结构示意图。
具体实施方式
31.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
32.本技术实施例提供一种虚拟对象的渲染方法、装置、计算机可读存储介质及计算机设备。具体地,本技术实施例的虚拟对象的渲染方法可以由计算机设备执行,其中,该计算机设备可以为终端或者服务器等设备。该终端可以为智能手机、平板电脑、笔记本电脑、触控屏幕、个人计算机(pc,personal computer)、个人数字助理(personal digital assistant,pda)等终端设备。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台
等基础云计算服务的云服务器。
33.例如,该计算机设备可以是终端,该终端可以确定虚拟场景中待渲染的虚拟对象模型,以及虚拟对象模型需要渲染的雪花沉积效果;获取预设噪点图,并根据预设噪点图生成用于实现雪花沉积效果的雪花蒙版贴图,其中,雪花蒙版贴图包括雪花沉积效果对应的雪花覆盖区域,以及雪花覆盖区域的雪花沉积厚度;获取虚拟对象模型在世界空间的法线信息;根据法线信息对雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行处理,得到目标雪花蒙版贴图;基于目标雪花蒙版贴图对虚拟对象模型进行渲染。
34.基于上述问题,本技术实施例提供第一种虚拟对象的渲染方法、装置、计算机设备及计算机可读存储介质,可以提高对虚拟对象的雪景渲染效果。
35.以下分别进行详细说明。需说明的是,以下实施例的描述顺序不作为对实施例优选顺序的限定。
36.本技术实施例提供一种虚拟对象的渲染方法,该方法可以由终端或服务器执行,本技术实施例以虚拟对象的渲染方法由终端执行为例来进行说明。
37.请参阅图1,图1为本技术实施例提供的一种虚拟对象的渲染方法的流程示意图。该虚拟对象的渲染方法的具体流程可以如下:
38.101、确定虚拟场景中待渲染的虚拟对象模型,以及虚拟对象模型需要渲染的雪花沉积效果。
39.在本技术实施例中,虚拟场景指的是计算机通过数字通讯技术勾勒出的数字化场景,虚拟场景可以为三维空间场景。虚拟场景由多个相同类型或者不同类型的虚拟对象构成,虚拟对象可以为虚拟场景中的动态对象或者静态对象,比如,虚拟对象可以为房屋,树木,其他建筑物等静态对象;或者虚拟场景中的人物,动物等动态对象。其中,虚拟对象可以通过对虚拟对象模型进行渲染得到。
40.其中,雪花沉积效果指的是叠加在虚拟对象模型表面的雪景类型,本技术实施例中,可以预设多种雪花沉积效果,也即多种雪景类型,可以根据虚拟场景的实时渲染需求为不同的虚拟对象模型选择相应的雪花沉积效果。
41.102、获取预设噪点图,并根据预设噪点图生成用于实现雪花沉积效果的雪花蒙版贴图。
42.其中,预设噪点图可以通过离线工具生成,或者可以通过程序在线生成。在本技术实施例中,可以通过程序生成一张预设噪点图,其程序实现逻辑包括:首先创建一指定尺寸的图像;从预设像素值范围中随机选取预设像素值,设置为该指定尺寸的图像中的各个像素点的像素值,以生成随机噪点图。其中,指定尺寸可以为任意尺寸,预设像素值范围可以根据实际情况设定,比如,预设像素值范围可以为:0~255。
43.本技术实施例通过程序在线生成噪点图,可以减少噪点图的空间占用,通过程序生成噪点图可以根据实际需求产生不同的变化,满足不同噪点图的制作需求。
44.例如,请参阅图2,图2为本技术实施例提供的一种虚拟对象的渲染方法的应用场景示意图,图2示出了通过上述程序代码生成的预设噪点图。
45.在一些实施例中,为了满足对虚拟对象模型的雪景渲染需求,步骤“根据预设噪点图生成用于实现雪花沉积效果的雪花蒙版贴图”,可以包括以下操作:
46.根据预设噪点图生成用于实现雪花沉积效果的至少一张目标噪点图;
47.对至少一张目标噪点图进行合成处理,得到雪花蒙版贴图。
48.在一些实施例中,为了提高对虚拟对象模型的雪景渲染效果,步骤“根据预设噪点图生成用于实现雪花沉积效果的至少一张目标噪点图”,可以包括以下操作:
49.基于不同采样参数分别对预设噪点图进行处理,得到各采样频率对应的目标噪点图。
50.具体的,获取不同采样参数,采样参数可以包括采样步长以及采样频率等,通过平滑波函数和线性插值函数基于采样参数对预设噪点图进行采样处理,生成多个目标噪点图,采样参数不同,生成的目标噪点图也不相同。
51.例如,请参阅图3,图3为本技术实施例提供的另一种虚拟对象的渲染方法的应用场景示意图。图3中的各个目标噪点图是使用不同的采样率对预设噪点图进行采样的结果。其中,采样率越小,获得的细节越少,采样率越大,获得的细节越多。右上方的目标噪点图的采样率是最小的,所以细节越少。左上方的目标噪点图的采样率最大,所以细节越多。
52.在一些实施例中,步骤“对至少一张目标噪点图进行合成处理,得到雪花蒙版贴图”,可以包括以下操作:
53.将各目标噪点图中对应位置的像素点的像素值进行叠加,得到每一像素点对应的叠加后像素值;
54.确定叠加后像素值大于预设像素值的目标像素点;
55.基于目标像素点确定雪花覆盖区域,以及基于目标像素点的像素值确定雪花覆盖区域的雪花沉积厚度。
56.具体的,由于多个目标噪点图为基于初始噪点图生成,则各目标噪点图的尺寸与初始噪点图的尺寸相同,因而各个目标噪点图的像素点与初始噪点图的像素一一对应。则将多个目标噪点图进行合成处理可以为将各个噪点图一一对应的像素点的像素值进行叠加,从而得到一合成后噪点图。
57.例如,请参阅图4,图4为本技术实施例提供的另一种虚拟对象的渲染方法的应用场景示意图。图4示出了由多个目标噪点图合成的合成后噪点图。
58.其中,噪点图中像素点的像素值可以为灰度值,取值范围可以为0~255,其中,白色为255,黑色为0。在本技术实施例中,可以通过噪点图中的白色区域控制雪花区域。
59.其中,预设像素值可以为0~255中任一数值,例如,预设像素值可以为:150等。进一步的,从合成后噪点图的像素点中确定像素值大于预设像素值的像素点,作为目标像素点,根据目标像素点的位置得到雪花区域,也即雪花覆盖区域,然后,根据目标像素点的像素值的大小确定雪花覆盖区域的雪花沉积厚度。
60.具体的,在将多个目标噪点图进行合成的过程中为了保证雪花沉积效果的真实性,设置每一张目标噪点图的合成比重不一样,比如,可以设置细节越少目标噪点图的占用更多的合成比重,细节越多的占用更少的合成比重。以使得将多个目标噪点图中细节最少的目标噪点图中的采样纹理作为合成噪点图中的纹理的大致形状,然后通过其他细节多的目标噪点图叠加提供细节。
61.例如,请继续参阅图3,在将图3中的多个目标噪点图进行合成时,设置右上方的目标噪点图(采样率最小,细节最少)的合成比重最大,设置左上方的目标噪点图(采样率最大,细节最多)的合成比重最小;通过右上方的目标噪点图的采样纹理作为合成噪点图中的
纹理的大致形状,然后通过其他细节多的目标噪点图叠加提供细节,以得到最终的合成后噪点图。
62.在本技术实施例中,通过预设噪点图生成多个目标噪点图的实现步骤可以包括:首先确定对预设噪点图中的噪点元素进行重采样的采样步长和采样频率;获取预设噪点图的最左点位置与最右点位置,根据最左点位置与最右点位置,以及采样步长和采样频率计算水平混合系数;以及获取预设噪点图的最上点位置与最下点位置,根据最上点位置与最下点位置,以及采样步长和采样频率计算垂直混合系数;进一步的,对于预设噪点图的左上位置和右上位置之间的像素点的像素值根据水平混合系数进行差值处理,对于预设噪点图的左上位置和左下位置之间的像素点的像素值根据垂直混合系数进行差值处理,以得到重采样后的噪点图,也即目标噪点图。相应的,通过设置不同的采样步长和采样频率,对预设噪点图进行采样处理,可以得到不同的目标噪点图。
63.进一步的,以及将多个目标噪点图进行合成的实现步骤可以包括:由于多个目标噪点图为基于同一个预设噪点图得到,个目标噪点图的图像尺寸相同,可以通过将多个目标噪点图一一对应的像素点的像素值进行叠加,得到每一位置的像素点的叠加后像素值,以得到由多个目标噪点图合成的一个合成后噪点图。
64.通过预设噪点图生成多个目标噪点图,将多个噪点图进行合成得到的合成后噪点图,进一步的,将合成后噪点图中像素值小于预设像素值的像素点设置为透明,从而可以得到合成后噪点图中的透明区域和非透明区域。以此,可以将该合成后噪点图作为虚拟对象模型的雪花蒙版贴图,用于实现初始的虚拟对象模型的雪花沉积效果。
65.103、获取虚拟对象模型在世界空间的法线信息。
66.在本技术实施例中,虚拟对象模型可以为三维模型,虚拟对象模型包括多个模型顶点。在虚拟对象模型所处的世界空间中,各模型顶点分别对应有一条法线。各模型顶点的法线由该模型顶点在世界空间的各空间方向上的法线分量构成。
67.例如,基于世界空间构建的空间坐标轴可以由空间x轴方向、空间y轴方向以及空间z轴方向构成,则虚拟对象模型的模型顶点的法线由:模型顶点在空间x轴方向的法线分量、模型顶点在空间y轴方向的法线分量以及模型顶点在空间z轴方向的法线分量构成。
68.在本技术实施例中,获取虚拟对象模型的法线信息的步骤可以包括:获取世界空间中虚拟对象模型的各个模型顶点对应的位置坐标,根据每一模型顶点的位置坐标计算该模型顶点在世界空间的各个坐标轴上(xyz)的法线分量,基于在各个坐标轴上的法线分量计算模型顶点的法线向量,得到各个模型顶点对应的法线,基于虚拟对象模型的每一模型顶点对应的法线,得到虚拟对象模型的法线信息。
69.104、根据法线信息对雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行处理,得到目标雪花蒙版贴图;
70.通过上述步骤得到的雪花蒙版贴图可以初步实现虚拟对象模型的雪花沉积效果,但是,虚拟场景可以为三维空间场景,虚拟对象模型可以为三维模型,为了更好的模拟真实场景的雪景效果,本方案进一步的结合世界法线信息,对雪花蒙版贴图进一步进行调整,以使调整后的雪花蒙版贴图更加贴合真实场景的雪景。
71.在一些实施例中,为了提高虚拟对象模型的雪花沉积效果的真实性,步骤“根据法线信息对雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行处理,得到目标雪花蒙版贴
图”,可以包括以下操作:
72.根据法线信息计算虚拟对象模型的模型表面的斜率;
73.基于模型表面的斜率对模型表面的雪花覆盖区域以及雪花沉积厚度进行调整,得到目标雪花蒙版贴图。
74.首先,获取虚拟对象模型中处于不同平面的各个模型表面,然后根据各个模型表面对应的法线,计算各表面的斜率,具体的,根据法线信息计算虚拟对象模型的模型表面的斜率的实现步骤可以包括:根据虚拟对象模型的各个模型顶点的位置坐标以及世界空间的不同坐标轴平面,将虚拟对象模型的模型表面划分为多个,根据各个模型表面的位置信息计算各个模型表面对应的法线;基于模型表面的法线确定法线平面,计算模型表面与法线平面之间的斜率,得到模型表面的斜率,斜率可以表示模型表面的倾斜角度。
75.进一步的,获取各个模型表面对应的雪花蒙版贴图区域,基于各个模型表面的斜率对各个模型表面对应的雪花蒙版贴入区域中的雪花覆盖区域以及雪花沉积效果进行相应的调整,在一些实施例中,为了实现雪花沉积效果的真实性,设置模型表面的斜率与该模型表面的雪花覆盖区域以及雪花沉积厚度的对应关系,包括:斜率越大,雪花覆盖区域越小,雪花沉积厚度越小;斜率越小,雪花覆盖区域越大,雪花沉积厚度越大;则根据斜率调整虚拟对象模型的雪花沉积效果的实现步骤可以包括:确定虚拟对象模型的不同模型表面对应的斜率,根据每一斜率与雪花覆盖区域以及雪花沉积厚度的对应关系,确定不同模型表面的不同的雪花覆盖区域以及不同的雪花沉积厚度。
76.例如,请参阅图5,图5为本技术实施例提供的另一种虚拟对象的渲染方法的应用场景示意图。图5示出了虚拟对象模型中,处于不同平面的模型表面根据表面的斜率调整雪花覆盖区域以及雪花沉积厚度后得到的雪花沉积效果表现。通过结合虚拟对象模型的世界法线信息对雪花蒙版贴图进一步的处理,得到更符合真实场景的目标雪花蒙版贴图。
77.105、基于目标雪花蒙版贴图对虚拟对象模型进行渲染。
78.具体的,根据目标雪花蒙版贴图对虚拟对象模型进行渲染可以包括:通过目标雪花蒙版贴图中非透明区域的范围控制雪花覆盖区域的范围,以及通过非透明区域中各像素点的像素值控制雪花沉积厚度。
79.在一些实施例中,为了保证虚拟场景中的虚拟对象模型的雪花沉积效果更贴合真实环境氛围,步骤“基于目标雪花蒙版贴图对虚拟对象模型进行渲染”,可以包括以下操作:
80.获取虚拟场景的天气系统信息;
81.根据天气系统信息对目标雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行调整,得到调整后的目标雪花蒙版贴图;
82.基于调整后的目标雪花蒙版贴图对虚拟对象模型进行渲染。
83.其中,天气系统信息包括虚拟场景的实时天气情况,比如,天气系统信息可以包括天气,温度,湿度,风等信息。
84.在一些实施例中,天气系统信息包括云层参数,为了实现虚拟场景中的虚拟对象模型的雪花沉积效果更贴合真实环境氛围,步骤“根据天气系统信息对目标雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行调整”,可以包括以下操作:
85.根据云层参数确定目标雪花蒙版贴图中的目标雪花覆盖区域,以及目标雪花覆盖区域对应的目标雪花沉积厚度;
86.基于目标雪花覆盖区域,以及目标雪花沉积厚度分别对目标雪花蒙版贴图中的花覆盖范围和雪花沉积厚度进行调整。
87.其中,云层参数可以为云层密度,结合真实环境中的天气效果,通过云层密度实时调整目标雪花蒙版贴图。具体的,云层密度越大,目标雪花蒙版贴图中的目标雪花覆盖区域越大,以及目标雪花沉积厚度越大。
88.例如,当云层密度由大变小时,雪花覆盖区域的范围由大变小,雪花沉积厚度由大变小;当云层密度由小变大时,雪花覆盖区域的范围由小变大,雪花沉积厚度由小变大。
89.在一些实施例中,天气系统信息包括风力参数,为了实现虚拟场景中的虚拟对象模型的雪花沉积效果更贴合真实环境氛围,步骤“根据天气系统信息对目标雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行调整”,可以包括以下操作:
90.根据风力参数确定目标雪花蒙版贴图中的目标雪花覆盖区域,以及目标雪花覆盖区域对应的目标雪花沉积厚度;
91.基于目标雪花覆盖区域,以及目标雪花沉积厚度分别对目标雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行调整。
92.其中,风力参数可以为风力强度,结合真实环境中的天气效果,通过风力强度实时调整目标雪花蒙版贴图。具体的,风力强度越大,目标雪花蒙版贴图中的目标雪花覆盖区域越小,以及目标雪花沉积厚度越小。
93.例如,当风力强度由大变小时,雪花覆盖区域的范围由小变大,雪花沉积厚度由小变大;当风力强度由小变大时,雪花覆盖区域的范围由大变小,雪花沉积厚度由大变小。
94.例如,请参阅图6,图6为本技术实施例提供的另一种虚拟对象的渲染方法的应用场景示意图。图6示出了雪花覆盖区域以及雪花沉积厚度随风力强度变化的曲线,可知,雪花覆盖区域以及雪花沉积厚度随着风力强度做动态分布。
95.在一些实施例中,天气系统信息包括雪花下落时间参数,为了实现虚拟场景中的虚拟对象模型的雪花沉积效果更贴合真实环境氛围,步骤“根据天气系统信息对目标雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行调整”,包括:
96.根据雪花下落时间参数确定目标雪花蒙版贴图中的目标雪花覆盖区域,以及目标雪花覆盖区域对应的目标雪花沉积厚度;
97.基于目标雪花覆盖区域,以及目标雪花沉积厚度分别对目标雪花蒙版贴图中的花覆盖范围和雪花沉积厚度进行调整。
98.其中,雪花下落时间参数可以为雪花下落时长,结合真实环境中的天气效果,通过雪花下落时长实时调整目标雪花蒙版贴图。具体的,雪花下落时长越长,目标雪花蒙版贴图中的目标雪花覆盖区域越大,以及目标雪花沉积厚度越大。
99.例如,请参阅图7,图7为本技术实施例提供的另一种虚拟对象的渲染方法的应用场景示意图。在图7中,左侧图中的树木可以为雪花刚开始下落的雪花沉积效果展示,当雪花下落一段时间后,树木的雪花沉积效果展示为右侧图。
100.在一些实施例中,雪花下落时间参数还可以为雪花停止下落的时长,结合真实环境中的天气效果,通过雪花停止下落的时长实时调整目标雪花蒙版贴图。具体的,雪花停止下落的时长越长,目标雪花蒙版贴图中的目标雪花覆盖区域越小,以及目标雪花沉积厚度越小,当雪花停止下落的时长达到一定时长,雪花全部融化,虚拟对象模型的雪花沉积效果
消失。
101.本技术实施例中,在对虚拟场景的实时雪景渲染过程中,生成预设噪点图,对预设噪点图通过不同采样处理,得到多个目标噪点图,进而按照各个目标噪点图的不同合成比重对多个目标噪点图进行合成,从而得到实现初始雪花沉积效果的蒙版贴图,进一步的,获取虚拟对象模型的法线信息,结合法线信息,以及虚拟场景中的天气系统信息对虚拟对象模型的雪花沉积效果进行渲染,以实现虚拟场景中的雪花从无到有,从薄到厚的真实雪景环境表现。
102.本技术实施例公开了一种虚拟对象的渲染方法,该方法包括:确定虚拟场景中待渲染的虚拟对象模型,以及虚拟对象模型需要渲染的雪花沉积效果;获取预设噪点图,并根据预设噪点图生成用于实现雪花沉积效果的雪花蒙版贴图,其中,雪花蒙版贴图包括雪花沉积效果对应的雪花覆盖区域,以及雪花覆盖区域的雪花沉积厚度;获取虚拟对象模型在世界空间的法线信息;根据法线信息对雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行处理,得到目标雪花蒙版贴图;基于目标雪花蒙版贴图对虚拟对象模型进行渲染,以此,提高对虚拟对象的雪景渲染效果。
103.根据上述介绍的内容,下面将举例来进一步说明本技术的虚拟对象的渲染方法。请参阅图8,图8为本技术实施例提供的另一种虚拟对象的渲染方法的流程示意图,以该虚拟对象的渲染方法应用于终端为例,具体流程可以如下:
104.201、终端接收针对虚拟场景的雪景渲染请求,根据雪景渲染请求创建初始噪点图。
105.本技术实施例应用于虚拟场景的实时雪景渲染,可以避免预先设计雪景渲染素材导致占用存储空间,以及基于预先设计的雪景渲染素材对虚拟场景进行雪景渲染的单一性。
106.其中,雪景渲染请求可以通过虚拟场景的天气系统触发,当接收到雪景渲染请求时,可以生成一整初始噪点图。具体的,可以通过程序在线生成,创建初始噪点图的程序代码可以参见上述实施例,在此不多做赘述。
107.202、终端对初始噪点图进行不同的采样处理,得到多个目标噪点图,并将多个目标噪点图进行合成,得到初始雪景蒙版贴图。
108.对于创建的初始噪点图,可以通过不同采样率生成噪点元素,得到多个不同的目标噪点图。为每一目标噪点图设置合成比重,将各个目标噪点图按照对应的合成比重进行合成处理,得到用于实现雪景效果的初始雪景蒙版贴图。
109.进一步的,将初始雪景蒙版贴图中像素值小于预设像素值的像素点设置为透明,得到初始雪景蒙版贴图中的透明区域,通过初始雪景蒙版贴图中的非透明区域实现积雪范围以及积雪厚度。
110.203、终端获取虚拟场景中的虚拟物体的世界法线,基于虚拟物体的世界法线对初始雪景蒙版贴图进行调整,得到调整后蒙版贴图。
111.在本技术实施例中,虚拟场景可以为三维空间场景,虚拟场景中的虚拟物体设计为三维模型,为了保证三维空间场景中雪景效果的真实性,可以获取虚拟场景中各虚拟物体的世界法线,基于世界法线调整初始雪景蒙版贴图中各虚拟物体对应的积雪区域以及积雪厚度,得到调整后蒙版贴图,得到更符合三维空间的真实场景的雪景蒙版贴图。
112.204、终端获取虚拟场景的天气系统信息,基于天气系统信息和调整后蒙版贴图渲染虚拟场景的雪景效果。
113.首先,根据调整后蒙版贴图渲染虚拟场景中各虚拟物体的初始雪景效果。由于本方案的雪景渲染为实时渲染,虚拟场景中的天气信息会存在变化,为了保证雪景效果随天气信息的变化,实时获取虚拟场景的天气系统信息,根据天气系统信息对虚拟场景中各虚拟物体的初始雪景效果进行调整,以使虚拟场景中各虚拟物体的雪景效果随天气变化而变化,保证虚拟场景的雪景效果贴合真实环境。
114.本技术实施例公开了一种虚拟对象的渲染方法,该方法包括:终端接收针对虚拟场景的雪景渲染请求,根据雪景渲染请求创建初始噪点图,对初始噪点图进行不同的采样处理,得到多个目标噪点图,并将多个目标噪点图进行合成,得到初始雪景蒙版贴图,获取虚拟场景中的虚拟物体的世界法线,基于虚拟物体的世界法线对初始雪景蒙版贴图进行调整,得到调整后蒙版贴图,获取虚拟场景的天气系统信息,基于天气系统信息和调整后蒙版贴图渲染虚拟场景的雪景效果。以此,可以提高对虚拟对象的雪景渲染效果。
115.为便于更好的实施本技术实施例提供的虚拟对象的渲染方法,本技术实施例还提供一种基于上述虚拟对象的渲染方法的虚拟对象的渲染装置。其中名词的含义与上述虚拟对象的渲染方法中相同,具体实现细节可以参考方法实施例中的说明。
116.请参阅图9,图9为本技术实施例提供的一种虚拟对象的渲染装置的结构框图,该装置包括:
117.确定单元301,用于确定虚拟场景中待渲染的虚拟对象模型,以及所述虚拟对象模型需要渲染的雪花沉积效果;
118.第一获取单元302,用于获取预设噪点图,并根据所述预设噪点图生成用于实现所述雪花沉积效果的雪花蒙版贴图,其中,所述雪花蒙版贴图包括所述雪花沉积效果对应的雪花覆盖区域,以及所述雪花覆盖区域的雪花沉积厚度;
119.第二获取单元303,用于获取所述虚拟对象模型在世界空间的法线信息;
120.处理单元304,用于根据所述法线信息对所述雪花蒙版贴图中的所述雪花覆盖区域和所述雪花沉积厚度进行处理,得到目标雪花蒙版贴图;
121.渲染单元305,用于基于所述目标雪花蒙版贴图对所述虚拟对象模型进行渲染。
122.在一些实施例中,处理单元304可以包括:
123.计算子单元,用于根据所述法线信息计算所述虚拟对象模型的模型表面的斜率;
124.第一调整子单元,用于基于所述模型表面的斜率对所述模型表面的雪花覆盖区域以及雪花沉积厚度进行调整,得到所述目标雪花蒙版贴图。
125.在一些实施例中,渲染单元305可以包括:
126.第一获取子单元,用于获取所述虚拟场景的天气系统信息;
127.第二调整子单元,用于根据所述天气系统信息对所述目标雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行调整,得到调整后的目标雪花蒙版贴图;
128.渲染子单元,用于基于所述调整后的目标雪花蒙版贴图对所述虚拟对象模型进行渲染。
129.在一些实施例中,第二调整子单元具体可以用于:
130.根据所述云层参数确定所述目标雪花蒙版贴图中的目标雪花覆盖区域,以及所述
目标雪花覆盖区域对应的目标雪花沉积厚度;
131.基于所述目标雪花覆盖区域,以及所述目标雪花沉积厚度分别对所述目标雪花蒙版贴图中的花覆盖范围和雪花沉积厚度进行调整。
132.在一些实施例中,第二调整子单元具体可以用于:
133.根据所述风力参数确定所述目标雪花蒙版贴图中的目标雪花覆盖区域,以及所述目标雪花覆盖区域对应的目标雪花沉积厚度;
134.基于所述目标雪花覆盖区域,以及所述目标雪花沉积厚度分别对所述目标雪花蒙版贴图中的花覆盖范围和雪花沉积厚度进行调整。
135.在一些实施例中,第二调整子单元具体可以用于:
136.根据所述雪花下落时间参数确定所述目标雪花蒙版贴图中的目标雪花覆盖区域,以及所述目标雪花覆盖区域对应的目标雪花沉积厚度;
137.基于所述目标雪花覆盖区域,以及所述目标雪花沉积厚度分别对所述目标雪花蒙版贴图中的花覆盖范围和雪花沉积厚度进行调整。
138.在一些实施例中,第一获取单元302可以包括:
139.生成子单元,用于根据所述预设噪点图生成用于实现所述雪花沉积效果的至少一张目标噪点图;
140.合成子单元,用于对所述至少一张目标噪点图进行合成处理,得到所述雪花蒙版贴图。
141.在一些实施例中,生成子单元具体可以用于:
142.基于不同采样参数分别对所述预设噪点图进行处理,得到各采样频率对应的目标噪点图。
143.在一些实施例中,合成子单元具体可以用于:
144.将各目标噪点图中对应位置的像素点的像素值进行叠加,得到每一像素点对应的叠加后像素值;
145.确定叠加后像素值大于预设像素值的目标像素点;
146.基于所述目标像素点确定所述雪花覆盖区域,以及基于所述目标像素点的像素值确定所述雪花覆盖区域的雪花沉积厚度。
147.本技术实施例公开了一种虚拟对象的渲染装置,通过确定单元301确定虚拟场景中待渲染的虚拟对象模型,以及所述虚拟对象模型需要渲染的雪花沉积效果;第一获取单元302获取预设噪点图,并根据所述预设噪点图生成用于实现所述雪花沉积效果的雪花蒙版贴图,其中,所述雪花蒙版贴图包括所述雪花沉积效果对应的雪花覆盖区域,以及所述雪花覆盖区域的雪花沉积厚度;第二获取单元303获取所述虚拟对象模型在世界空间的法线信息;处理单元304根据所述法线信息对所述雪花蒙版贴图中的所述雪花覆盖区域和所述雪花沉积厚度进行处理,得到目标雪花蒙版贴图;渲染单元305基于所述目标雪花蒙版贴图对所述虚拟对象模型进行渲染。以此,可以提高对虚拟对象的雪景渲染效果。
148.相应的,本技术实施例还提供一种计算机设备,该计算机设备可以为终端。如图10所示,图10为本技术实施例提供的计算机设备的结构示意图。该计算机设备500包括有一个或者一个以上处理核心的处理器501、有一个或一个以上计算机可读存储介质的存储器502及存储在存储器502上并可在处理器上运行的计算机程序。其中,处理器501与存储器502电
性连接。本领域技术人员可以理解,图中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
149.处理器501是计算机设备500的控制中心,利用各种接口和线路连接整个计算机设备500的各个部分,通过运行或加载存储在存储器502内的软件程序和/或模块,以及调用存储在存储器502内的数据,执行计算机设备500的各种功能和处理数据,从而对计算机设备500进行整体监控。
150.在本技术实施例中,计算机设备500中的处理器501会按照如下的步骤,将一个或一个以上的应用程序的进程对应的指令加载到存储器502中,并由处理器501来运行存储在存储器502中的应用程序,从而实现各种功能:
151.确定虚拟场景中待渲染的虚拟对象模型,以及虚拟对象模型需要渲染的雪花沉积效果;
152.获取预设噪点图,并根据预设噪点图生成用于实现雪花沉积效果的雪花蒙版贴图,其中,雪花蒙版贴图包括雪花沉积效果对应的雪花覆盖区域,以及雪花覆盖区域的雪花沉积厚度;
153.获取虚拟对象模型在世界空间的法线信息;
154.根据法线信息对雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行处理,得到目标雪花蒙版贴图;
155.基于目标雪花蒙版贴图对虚拟对象模型进行渲染。
156.在一些实施例中,根据法线信息对雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行处理,得到目标雪花蒙版贴图,包括:
157.根据法线信息计算虚拟对象模型的模型表面的斜率;
158.基于模型表面的斜率对模型表面的雪花覆盖区域以及雪花沉积厚度进行调整,得到目标雪花蒙版贴图。
159.在一些实施例中,基于目标雪花蒙版贴图对虚拟对象模型进行渲染,包括:
160.获取虚拟场景的天气系统信息;
161.根据天气系统信息对目标雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行调整,得到调整后的目标雪花蒙版贴图;
162.基于调整后的目标雪花蒙版贴图对虚拟对象模型进行渲染。
163.在一些实施例中,天气系统信息包括云层参数;
164.根据天气系统信息对目标雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行调整,包括:
165.根据云层参数确定目标雪花蒙版贴图中的目标雪花覆盖区域,以及目标雪花覆盖区域对应的目标雪花沉积厚度;
166.基于目标雪花覆盖区域,以及目标雪花沉积厚度分别对目标雪花蒙版贴图中的花覆盖范围和雪花沉积厚度进行调整。
167.在一些实施例中,天气系统信息包括风力参数;
168.根据天气系统信息对目标雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行调整,包括:
169.根据风力参数确定目标雪花蒙版贴图中的目标雪花覆盖区域,以及目标雪花覆盖
区域对应的目标雪花沉积厚度;
170.基于目标雪花覆盖区域,以及目标雪花沉积厚度分别对目标雪花蒙版贴图中的花覆盖范围和雪花沉积厚度进行调整。
171.在一些实施例中,天气系统信息包括雪花下落时间参数;
172.根据天气系统信息对目标雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行调整,包括:
173.根据雪花下落时间参数确定目标雪花蒙版贴图中的目标雪花覆盖区域,以及目标雪花覆盖区域对应的目标雪花沉积厚度;
174.基于目标雪花覆盖区域,以及目标雪花沉积厚度分别对目标雪花蒙版贴图中的花覆盖范围和雪花沉积厚度进行调整。
175.在一些实施例中,根据预设噪点图生成用于实现雪花沉积效果的雪花蒙版贴图,包括:
176.根据预设噪点图生成用于实现雪花沉积效果的至少一张目标噪点图;
177.对至少一张目标噪点图进行合成处理,得到雪花蒙版贴图。
178.在一些实施例中,根据预设噪点图生成用于实现雪花沉积效果的至少一张目标噪点图,包括:
179.基于不同采样参数分别对预设噪点图进行处理,得到各采样频率对应的目标噪点图。
180.在一些实施例中,对至少一张目标噪点图进行合成处理,得到雪花蒙版贴图,包括:
181.将各目标噪点图中对应位置的像素点的像素值进行叠加,得到每一像素点对应的叠加后像素值;
182.确定叠加后像素值大于预设像素值的目标像素点;
183.基于目标像素点确定雪花覆盖区域,以及基于目标像素点的像素值确定雪花覆盖区域的雪花沉积厚度。
184.本方案在对虚拟对象进行雪景渲染过程中,通过程序生成一噪点图,然后通过不同采样率对噪点图进行采样处理的,得到多个目标噪点图,将多个目标噪点图按照不同合成比重进行合成处理,以此生成用于实现雪景效果的蒙版贴图,进一步的,获取虚拟对象在世界空间的法线信息,结合法线信息对蒙版贴图进行调整,并基于调整后蒙版贴图渲染虚拟对象的雪景效果,以此,可以提高对虚拟对象的雪景渲染效果。
185.以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
186.可选的,如图10所示,计算机设备500还包括:触控显示屏503、射频电路504、音频电路505、输入单元506以及电源507。其中,处理器501分别与触控显示屏503、射频电路504、音频电路505、输入单元506以及电源507电性连接。本领域技术人员可以理解,图10中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
187.触控显示屏503可用于显示图形用户界面以及接收用户作用于图形用户界面产生的操作指令。触控显示屏503可以包括显示面板和触控面板。其中,显示面板可用于显示由用户输入的信息或提供给用户的信息以及计算机设备的各种图形用户接口,这些图形用户
接口可以由图形、引导信息、图标、视频和其任意组合来构成。可选的,可以采用液晶显示器(lcd,liquid crystal display)、有机发光二极管(oled,organic light-emitting diode)等形式来配置显示面板。触控面板可用于收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板上或在触控面板附近的操作),并生成相应的操作指令,且操作指令执行对应程序。可选的,触控面板可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器501,并能接收处理器501发来的命令并加以执行。触控面板可覆盖显示面板,当触控面板检测到在其上或附近的触摸操作后,传送给处理器501以确定触摸事件的类型,随后处理器501根据触摸事件的类型在显示面板上提供相应的视觉输出。在本技术实施例中,可以将触控面板与显示面板集成到触控显示屏503而实现输入和输出功能。但是在某些实施例中,触控面板与触控面板可以作为两个独立的部件来实现输入和输出功能。即触控显示屏503也可以作为输入单元506的一部分实现输入功能。
188.射频电路504可用于收发射频信号,以通过无线通信与网络设备或其他计算机设备建立无线通讯,与网络设备或其他计算机设备之间收发信号。
189.音频电路505可以用于通过扬声器、传声器提供用户与计算机设备之间的音频接口。音频电路505可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路505接收后转换为音频数据,再将音频数据输出处理器501处理后,经射频电路504以发送给比如另一计算机设备,或者将音频数据输出至存储器502以便进一步处理。音频电路505还可能包括耳塞插孔,以提供外设耳机与计算机设备的通信。
190.输入单元506可用于接收输入的数字、字符信息或用户特征信息(例如指纹、虹膜、面部信息等),以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。
191.电源507用于给计算机设备500的各个部件供电。可选的,电源507可以通过电源管理系统与处理器501逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源507还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
192.尽管图10中未示出,计算机设备500还可以包括摄像头、传感器、无线保真模块、蓝牙模块等,在此不再赘述。
193.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
194.由上可知,本实施例提供的计算机设备可以确定虚拟场景中待渲染的虚拟对象模型,以及虚拟对象模型需要渲染的雪花沉积效果;获取预设噪点图,并根据预设噪点图生成用于实现雪花沉积效果的雪花蒙版贴图,其中,雪花蒙版贴图包括雪花沉积效果对应的雪花覆盖区域,以及雪花覆盖区域的雪花沉积厚度;获取虚拟对象模型在世界空间的法线信息;根据法线信息对雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行处理,得到目标雪花蒙版贴图;基于目标雪花蒙版贴图对虚拟对象模型进行渲染。
195.本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以
通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
196.为此,本技术实施例提供一种计算机可读存储介质,其中存储有多条计算机程序,该计算机程序能够被处理器进行加载,以执行本技术实施例所提供的任一种虚拟对象的渲染方法中的步骤。例如,该计算机程序可以执行如下步骤:
197.确定虚拟场景中待渲染的虚拟对象模型,以及虚拟对象模型需要渲染的雪花沉积效果;
198.获取预设噪点图,并根据预设噪点图生成用于实现雪花沉积效果的雪花蒙版贴图,其中,雪花蒙版贴图包括雪花沉积效果对应的雪花覆盖区域,以及雪花覆盖区域的雪花沉积厚度;
199.获取虚拟对象模型在世界空间的法线信息;
200.根据法线信息对雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行处理,得到目标雪花蒙版贴图;
201.基于目标雪花蒙版贴图对虚拟对象模型进行渲染。
202.在一些实施例中,根据法线信息对雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行处理,得到目标雪花蒙版贴图,包括:
203.根据法线信息计算虚拟对象模型的模型表面的斜率;
204.基于模型表面的斜率对模型表面的雪花覆盖区域以及雪花沉积厚度进行调整,得到目标雪花蒙版贴图。
205.在一些实施例中,基于目标雪花蒙版贴图对虚拟对象模型进行渲染,包括:
206.获取虚拟场景的天气系统信息;
207.根据天气系统信息对目标雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行调整,得到调整后的目标雪花蒙版贴图;
208.基于调整后的目标雪花蒙版贴图对虚拟对象模型进行渲染。
209.在一些实施例中,天气系统信息包括云层参数;
210.根据天气系统信息对目标雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行调整,包括:
211.根据云层参数确定目标雪花蒙版贴图中的目标雪花覆盖区域,以及目标雪花覆盖区域对应的目标雪花沉积厚度;
212.基于目标雪花覆盖区域,以及目标雪花沉积厚度分别对目标雪花蒙版贴图中的花覆盖范围和雪花沉积厚度进行调整。
213.在一些实施例中,天气系统信息包括风力参数;
214.根据天气系统信息对目标雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行调整,包括:
215.根据风力参数确定目标雪花蒙版贴图中的目标雪花覆盖区域,以及目标雪花覆盖区域对应的目标雪花沉积厚度;
216.基于目标雪花覆盖区域,以及目标雪花沉积厚度分别对目标雪花蒙版贴图中的花覆盖范围和雪花沉积厚度进行调整。
217.在一些实施例中,天气系统信息包括雪花下落时间参数;
218.根据天气系统信息对目标雪花蒙版贴图中的雪花覆盖区域和雪花沉积厚度进行调整,包括:
219.根据雪花下落时间参数确定目标雪花蒙版贴图中的目标雪花覆盖区域,以及目标雪花覆盖区域对应的目标雪花沉积厚度;
220.基于目标雪花覆盖区域,以及目标雪花沉积厚度分别对目标雪花蒙版贴图中的花覆盖范围和雪花沉积厚度进行调整。
221.在一些实施例中,根据预设噪点图生成用于实现雪花沉积效果的雪花蒙版贴图,包括:
222.根据预设噪点图生成用于实现雪花沉积效果的至少一张目标噪点图;
223.对至少一张目标噪点图进行合成处理,得到雪花蒙版贴图。
224.在一些实施例中,根据预设噪点图生成用于实现雪花沉积效果的至少一张目标噪点图,包括:
225.基于不同采样参数分别对预设噪点图进行处理,得到各采样频率对应的目标噪点图。
226.在一些实施例中,对至少一张目标噪点图进行合成处理,得到雪花蒙版贴图,包括:
227.将各目标噪点图中对应位置的像素点的像素值进行叠加,得到每一像素点对应的叠加后像素值;
228.确定叠加后像素值大于预设像素值的目标像素点;
229.基于目标像素点确定雪花覆盖区域,以及基于目标像素点的像素值确定雪花覆盖区域的雪花沉积厚度。
230.本方案在对虚拟对象进行雪景渲染过程中,通过程序生成一噪点图,然后通过不同采样率对噪点图进行采样处理的,得到多个目标噪点图,将多个目标噪点图按照不同合成比重进行合成处理,以此生成用于实现雪景效果的蒙版贴图,进一步的,获取虚拟对象在世界空间的法线信息,结合法线信息对蒙版贴图进行调整,并基于调整后蒙版贴图渲染虚拟对象的雪景效果,以此,可以提高对虚拟对象的雪景渲染效果。
231.以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
232.其中,该计算机可读存储介质可以包括:只读存储器(rom,read only memory)、随机存取记忆体(ram,random access memory)、磁盘或光盘等。
233.由于该计算机可读存储介质中所存储的计算机程序,可以执行本技术实施例所提供的任一种虚拟对象的渲染方法中的步骤,因此,可以实现本技术实施例所提供的任一种虚拟对象的渲染方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
234.以上对本技术实施例所提供的一种虚拟对象的渲染方法、装置、计算机可读存储介质及计算机设备进行了详细介绍,本文中应用了具体个例对本技术的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本技术的方法及其核心思想;同时,对于本领域的技术人员,依据本技术的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本技术的限制。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1