1.本公开涉及计算机技术领域,具体而言,涉及一种场景渲染方法、装置、计算机设备及存储介质。
背景技术:
2.在手机游戏、元宇宙等场景下,终端设备可以响应不同渲染场景下的渲染请求,根据预设的渲染管线进行场景渲染,从而为用户提供沉浸式的游玩体验。
3.相关技术中,由于场景元素制作的越来越精细,因此在进行场景渲染时所需要消耗的计算资源也越来越多,从而给设备性能较弱的终端处理设备的场景加载造成了影响,进而影响用户的游玩体验。
技术实现要素:
4.本公开实施例至少提供一种场景渲染方法、装置、计算机设备及存储介质。
5.第一方面,本公开实施例提供了一种场景渲染方法,应用于目标操作系统平台下的延迟渲染场景,包括:
6.响应延迟渲染场景下的渲染请求,确定待渲染区域;
7.将所述待渲染区域划分为多个待渲染子区域,并对划分后的多个待渲染子区域分别进行采样,确定每个所述待渲染子区域中的目标像素点;
8.确定所述多个待渲染子区域中的目标像素点的渲染属性信息,并基于各所述待渲染子区域中的目标像素点的渲染属性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息;
9.针对任一所述待渲染子区域,基于该待渲染子区域中各像素点的渲染属性信息,对该待渲染区域进行延迟渲染。
10.一种可能的实施方式中,所述将所述待渲染区域划分为多个待渲染子区域,包括:
11.按照预设的待渲染子区域的区域尺寸对所述待渲染区域进行划分,得到多个待渲染子区域;或者,
12.按照预设的待渲染子区域的区域个数对所述待渲染区域进行划分,得到多个待渲染子区域。
13.一种可能的实施方式中,所述确定所述多个待渲染子区域中的目标像素点的渲染属性信息,包括:
14.针对任一所述目标像素点,基于预设的渲染请求类型与渲染属性信息的映射关系,从所述待渲染区域对应的几何缓冲区中获取所述渲染请求对应的渲染属性信息,并将获取的渲染属性信息作为该目标像素点的渲染属性信息;或者,
15.针对任一所述目标像素点,对所述渲染属性信息对应的属性信息贴图进行采样,并将采样得到的渲染属性信息作为该目标像素点对应的渲染属性信息。
16.一种可能的实施方式中,所述基于各所述待渲染子区域中的目标像素点的渲染属
性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息,包括:
17.针对任一所述目标像素点,确定与该目标像素点之间的位置关系满足预设条件的相似像素点;
18.将各所述目标像素点的渲染属性信息,作为各所述目标像素点分别对应的相似像素点的渲染属性信息。
19.一种可能的实施方式中,所述预设条件包括位置相邻和/或位于目标像素点的目标方位上。
20.一种可能的实施方式中,所述基于各所述待渲染子区域中的目标像素点的渲染属性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息,包括:
21.针对任一除所述目标像素点外的其他像素点,将与该像素点之间距离最近的目标像素点的渲染属性信息,作为该像素点的渲染属性信息。
22.一种可能的实施方式中,所述基于该待渲染子区域中各像素点的渲染属性信息,对该待渲染区域进行延迟渲染,包括:
23.基于该待渲染子区域中各像素点的渲染属性信息,确定该待渲染子区域对应的目标场景渲染数据;
24.基于所述目标场景渲染数据,对该待渲染区域进行延迟渲染。
25.第二方面,本公开实施例还提供一种场景渲染装置,包括:
26.第一确定模块,用于响应延迟渲染场景下的渲染请求,确定待渲染区域;
27.第二确定模块,用于将所述待渲染区域划分为多个待渲染子区域,并对划分后的多个待渲染子区域分别进行采样,确定每个所述待渲染子区域中的目标像素点;
28.第三确定模块,用于确定所述多个待渲染子区域中的目标像素点的渲染属性信息,并基于各所述待渲染子区域中的目标像素点的渲染属性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息;
29.延迟渲染模块,用于针对任一所述待渲染子区域,基于该待渲染子区域中各像素点的渲染属性信息,对该待渲染区域进行延迟渲染。
30.一种可能的实施方式中,所述第二确定模块,在将所述待渲染区域划分为多个待渲染子区域时,用于:
31.按照预设的待渲染子区域的区域尺寸对所述待渲染区域进行划分,得到多个待渲染子区域;或者,
32.按照预设的待渲染子区域的区域个数对所述待渲染区域进行划分,得到多个待渲染子区域。
33.一种可能的实施方式中,所述第三确定模块,在确定所述多个待渲染子区域中的目标像素点的渲染属性信息时,用于:
34.针对任一所述目标像素点,基于预设的渲染请求类型与渲染属性信息的映射关系,从所述待渲染区域对应的几何缓冲区中获取所述渲染请求对应的渲染属性信息,并将获取的渲染属性信息作为该目标像素点的渲染属性信息;或者,
35.针对任一所述目标像素点,对所述渲染属性信息对应的属性信息贴图进行采样,
并将采样得到的渲染属性信息作为该目标像素点对应的渲染属性信息。
36.一种可能的实施方式中,所述第三确定模块,在基于各所述待渲染子区域中的目标像素点的渲染属性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息时,用于:
37.针对任一所述目标像素点,确定与该目标像素点之间的位置关系满足预设条件的相似像素点;
38.将各所述目标像素点的渲染属性信息,作为各所述目标像素点分别对应的相似像素点的渲染属性信息。
39.一种可能的实施方式中,所述预设条件包括位置相邻和/或位于目标像素点的目标方位上。
40.一种可能的实施方式中,所述第三确定模块,在基于各所述待渲染子区域中的目标像素点的渲染属性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息时,用于:
41.针对任一除所述目标像素点外的其他像素点,将与该像素点之间距离最近的目标像素点的渲染属性信息,作为该像素点的渲染属性信息。
42.一种可能的实施方式中,所述延迟渲染模块,在基于该待渲染子区域中各像素点的渲染属性信息,对该待渲染区域进行延迟渲染时,用于:
43.基于该待渲染子区域中各像素点的渲染属性信息,确定该待渲染子区域对应的目标场景渲染数据;
44.基于所述目标场景渲染数据,对该待渲染区域进行延迟渲染。
45.第三方面,本公开实施例还提供一种计算机设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。
46.第四方面,本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。
47.本公开实施例提供的场景渲染方法、装置、计算机设备及存储介质,通过对待渲染区域划分后得到的多个待渲染子区域分别进行采样,确定每个所述待渲染子区域中的目标像素点;确定所述多个待渲染子区域中的目标像素点的渲染属性信息,并基于各所述待渲染子区域中的目标像素点的渲染属性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息,从而可以基于各目标像素点的属性信息得到所述待渲染区域的各像素点的渲染属性信息,由此,无需计算每个像素点的渲染属性信息,进而可以在保证渲染效果的情况下,节约确定各像素点的渲染属性信息的计算资源和时间成本,提高场景渲染速度,进而提升用户的游玩体验。
48.为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
49.为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
50.图1示出了本公开实施例所提供的一种场景渲染方法的流程图;
51.图2a示出了本公开实施例所提供的场景渲染方法中,间隔采样的示意图;
52.图2b示出了本公开实施例所提供的场景渲染方法中,确定相似像素点的示意图;
53.图2c示出了本公开实施例所提供的场景渲染方法中,确定像素点的渲染属性信息的示意图;
54.图3示出了本公开实施例所提供的场景渲染方法中,确定各待渲染子区域中除目标像素点外的其他像素点的渲染属性信息的具体方法的流程图;
55.图4示出了本公开实施例所提供的一种场景渲染装置的架构示意图;
56.图5示出了本公开实施例所提供的一种计算机设备的结构示意图。
具体实施方式
57.为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
58.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
59.本文中术语“和/或”,仅仅是描述一种关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括a、b、c中的至少一种,可以表示包括从a、b和c构成的集合中选择的任意一个或多个元素。
60.经研究发现,由于场景元素制作的越来越精细,因此在进行场景渲染时所需要消耗的计算资源也越来越多,从而给设备性能较弱的终端处理设备的场景加载造成了影响,进而影响用户的游玩体验。
61.基于上述研究,本公开提供了一种场景渲染方法、装置、计算机设备及存储介质,通过对待渲染区域划分后得到的多个待渲染子区域分别进行采样,确定每个所述待渲染子区域中的目标像素点;确定所述多个待渲染子区域中的目标像素点的渲染属性信息,并基于各所述待渲染子区域中的目标像素点的渲染属性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息,从而可以基于各目标像素点的属性信息得到所述待渲染区域的各像素点的渲染属性信息,由此,无需计算每个像素点的渲染属性信
息,进而可以在保证渲染效果的情况下,节约确定各像素点的渲染属性信息的计算资源和时间成本,提高场景渲染速度,进而提升用户的游玩体验。
62.为便于对本实施例进行理解,首先对本公开实施例所公开的一种场景渲染方法进行详细介绍,本公开实施例所提供的场景渲染方法的执行主体一般为具有一定计算能力的计算机设备,该计算机设备例如包括:终端设备或其它处理设备,终端设备可以为带有显示功能的智能终端设备,例如,可以为智能手机、平板电脑、智能穿戴设备等。在一些可能的实现方式中,该场景渲染方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
63.参见图1所示,为本公开实施例提供的场景渲染方法的流程图,所述方法包括s101~s104,其中:
64.s101:响应延迟渲染场景下的渲染请求,确定待渲染区域。
65.s102:将所述待渲染区域划分为多个待渲染子区域,并对划分后的多个待渲染子区域分别进行采样,确定每个所述待渲染子区域中的目标像素点。
66.s103:确定所述多个待渲染子区域中的目标像素点的渲染属性信息,并基于各所述待渲染子区域中的目标像素点的渲染属性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息。
67.s104:针对任一所述待渲染子区域,基于该待渲染子区域中各像素点的渲染属性信息,对该待渲染区域进行延迟渲染。
68.以下是对上述步骤的详细介绍。
69.针对s101,所述延迟渲染是一种将光照计算等渲染计算过程,推迟到渲染流程的第二步进行的渲染技术,所述目标操作系统平台可以是ios平台。
70.具体的,在进行所述延迟渲染时,可以包括以下两步:
71.第一步,可以对待渲染区域的场景进行渲染,通过将渲染属性信息(比如法线向量、反射系数等)存储至几何缓冲区中,以实现待渲染区域的初步渲染;第二步,可以从所述几何缓冲区中读取存储的所述渲染属性信息,并基于所述渲染属性信息进行像素颜色等渲染内容的计算,以基于计算结果进行更为精细化的场景渲染,从而可以达到更为逼真的场景渲染效果。
72.实际应用中,所述渲染请求可以是用户操控的虚拟角色进入到目标区域时生成的,当用户进入到预设的目标区域时,可以基于用户在所述目标区域中的位置信息,确定出所述目标区域中的待渲染区域,以基于确定出的所述待渲染区域进行场景渲染。
73.此外,所述渲染请求还可以是用户端基于目标渲染功能发起的,比如用户端可以基于屏幕空间环境光遮蔽(screen-space ambient occlusion,ssao)渲染功能发起渲染请求,以展示所述待渲染区域对应的ssao渲染图。
74.s102:将所述待渲染区域划分为多个待渲染子区域,并对划分后的多个待渲染子区域分别进行采样,确定每个所述待渲染子区域中的目标像素点。
75.这里,在对所述待渲染区域进行划分时,可以通过以下方式:
76.方式1、按照预设的待渲染子区域的区域尺寸对所述待渲染区域进行划分,得到多个待渲染子区域。
77.这里,预设的区域尺寸可以是16像素
×
16像素,按照预设的待渲染子区域的区域
尺寸,可以将区域尺寸为256像素
×
256像素的待渲染区域划分为256个区域尺寸为16像素
×
16像素的待渲染子区域。
78.方式2、按照预设的待渲染子区域的区域个数对所述待渲染区域进行划分,得到多个待渲染子区域。
79.这里,预设的区域个数可以是100个,按照预设的待渲染子区域的区域个数可以将区域尺寸为1920像素
×
1080像素的待渲染区域划分为100个区域尺寸为192像素
×
108像素的待渲染子区域。
80.这样,通过对待渲染区域进行划分得到多个待渲染子区域,便于针对各所述待渲染子区域设置相应的渲染策略,以在不打断所述待渲染区域整体渲染管线的情况下,进行场景渲染。
81.实际应用中,在所述目标操作系统平台ios平台中,可以基于所述ios平台的tile功能,对所述待渲染区域进行划分,并对划分后得到的各待渲染子区域分别进行采样,所述tile功能可以调用图形处理器中的tile存储空间进行数据处理,所述tile存储空间是gpu中的一个高速存储空间,以达到不打断所述待渲染区域整体渲染管线的效果。
82.一种可能的实施方式中,在确定每个所述待渲染子区域中的目标像素点时,可以对划分后的多个待渲染子区域分别进行间隔采样,以得到所述目标像素点。
83.示例性的,所述间隔采样的示意图可以如图2a所示,图2a中每个方块表示1个像素点,一个待渲染子区域中共包含16个像素点,阴影部分对应的方块表示目标像素点,其他方块表示除所述目标像素点外的其他像素点,通过对所述待渲染子区域进行间隔采样,可以在16个像素点中采样出4个目标像素点。
84.需要说明的是,本公开实施例所提供的间隔采样方式的示例仅为实施间隔采样的一种可能的实施方式,实际应用中也可以采用其他的间隔采样方式或者其他的采样方式,本公开实施例对此不做限定。
85.s103:确定所述多个待渲染子区域中的目标像素点的渲染属性信息,并基于各所述待渲染子区域中的目标像素点的渲染属性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息。
86.这里,所述渲染属性信息表示进行延迟渲染时所需要使用的属性信息,比如像素点的位置坐标,法线向量,纹理坐标,反射系数(比如漫反射因子)等。
87.具体的,针对任一所述目标像素点,可以通过以下方式确定该目标像素点的渲染属性信息:
88.方式1、基于预设的渲染请求类型与渲染属性信息的映射关系
89.这里,可以基于预设的渲染请求类型与渲染属性信息的映射关系,从所述待渲染区域对应的几何缓冲区中获取所述渲染请求的类型对应的渲染属性信息,并将获取的渲染属性信息作为该目标像素点的渲染属性信息。
90.具体的,所述几何缓冲区中可以存储多种渲染属性信息,在获取所述渲染请求后,可以根据获取的渲染请求的类型,从所述待渲染区域对应的几何缓冲区中获取所述渲染请求对应的渲染属性信息。
91.方式2、基于渲染属性信息对应的属性信息贴图
92.这里,可以对所述渲染属性信息对应的属性信息贴图进行采样,并将采样得到的
渲染属性信息作为该目标像素点对应的渲染属性信息。
93.具体的,所述属性信息贴图为存储所述渲染属性信息的图片,所述属性信息贴图与所述待渲染区域一一对应,所述待渲染区域中的每个像素点在所述属性信息贴图中均有对应的属性信息。比如深度信息可以存储在深度信息贴图中,通过对所述深度信息贴图进行采样,即可得到所述深度贴图中存储的深度信息。
94.一种可能的实施方式中,如图3所示,可以通过以下步骤确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息:
95.s301:针对任一所述目标像素点,确定与该目标像素点之间的位置关系满足预设条件的相似像素点。
96.这里,所述预设条件包括位置相邻和/或位于目标像素点的目标方位上。
97.这里,所述目标方位可以是右方、下方、右下方等,其可以根据采样时的采样策略进行设置。
98.示例性的,确定相似像素点的示意图可以如图2b所示,图2b中,像素点1~像素点4依次被1~4进行了标记,所述像素点1为目标像素点,所述像素点1对应的相似像素点可以是与所述像素点1相邻且位于像素点1右方的像素点2、与所述像素点1相邻且位于像素点1下方的像素点3、与所述像素点1相邻且位于像素点1右下方的像素点4。
99.s302:将各所述目标像素点的渲染属性信息,作为各所述目标像素点分别对应的相似像素点的渲染属性信息。
100.这样,通过直接将所述目标像素点的渲染属性信息,直接作为所述目标像素点分别对应的相似像素点的渲染属性信息,从而可以节约确定各相似像素点的渲染属性信息的计算资源和时间成本,提高场景渲染速度;另一方面,由于所述相似像素点往往位于所述目标像素点的周围,因此即使使用所述目标像素点的渲染属性信息作为所述目标像素点分别对应的相似像素点的渲染属性信息,其对于渲染效果的影响较小。
101.另一种可能的实施方式中,在确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息时,针对任一除所述目标像素点外的其他像素点,还可以将与该像素点之间距离最近的目标像素点的渲染属性信息,作为该像素点的渲染属性信息。
102.具体的,若与该像素点之间距离最近的目标像素点有多个,则可以从多个目标像素点从随机选取一个目标像素点,并将随机选取的目标像素点的渲染属性信息,作为该像素点的渲染属性信息。
103.示例性的,确定像素点的渲染属性信息的示意图可以如图2c所示,图2c中,像素点1~像素点8依次被1~8进行了标记,所述像素点1和像素点4为目标像素点,可以将与像素点2距离最近的像素点1的渲染属性信息,作为所述像素点2的渲染属性信息;可以将与像素点3距离最近的像素点4的渲染属性信息,作为所述像素点3的渲染属性信息;可以将与像素点5距离最近的像素点1的渲染属性信息,作为所述像素点5的渲染属性信息;可以将与像素点6距离最近的像素点1的渲染属性信息,作为所述像素点6的渲染属性信息;可以将与像素点7距离最近的像素点4的渲染属性信息,作为所述像素点7的渲染属性信息;可以将与像素点8距离最近的像素点4的渲染属性信息,作为所述像素点8的渲染属性信息。
104.s104:针对任一所述待渲染子区域,基于该待渲染子区域中各像素点的渲染属性信息,对该待渲染区域进行延迟渲染。
105.这里,在进行延迟渲染时,可以基于该待渲染子区域中各像素点的渲染属性信息,确定该待渲染子区域对应的目标场景渲染数据;基于所述目标场景渲染数据,对该待渲染区域进行延迟渲染。
106.示例性的,可以基于各像素点的位置坐标、法线向量以及漫反射因子,进行漫反射光照计算,确定与光照对应的目标场景渲染数据,并基于所述目标场景渲染数据进行延迟渲染。
107.本公开实施例提供的场景渲染方法,通过对待渲染区域划分后得到的多个待渲染子区域分别进行采样,确定每个所述待渲染子区域中的目标像素点;确定所述多个待渲染子区域中的目标像素点的渲染属性信息,并基于各所述待渲染子区域中的目标像素点的渲染属性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息,从而可以基于各目标像素点的属性信息得到所述待渲染区域的各像素点的渲染属性信息,由此,无需计算每个像素点的渲染属性信息,进而可以在保证渲染效果的情况下,节约确定各像素点的渲染属性信息的计算资源和时间成本,提高场景渲染速度,进而提升用户的游玩体验。
108.本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
109.基于同一发明构思,本公开实施例中还提供了与场景渲染方法对应的场景渲染装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述场景渲染方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
110.参照图4所示,为本公开实施例提供的一种场景渲染装置的架构示意图,所述装置包括:第一确定模块401、第二确定模块402、第三确定模块403、延迟渲染模块404;其中,
111.第一确定模块401,用于响应延迟渲染场景下的渲染请求,确定待渲染区域;
112.第二确定模块402,用于将所述待渲染区域划分为多个待渲染子区域,并对划分后的多个待渲染子区域分别进行采样,确定每个所述待渲染子区域中的目标像素点;
113.第三确定模块403,用于确定所述多个待渲染子区域中的目标像素点的渲染属性信息,并基于各所述待渲染子区域中的目标像素点的渲染属性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息;
114.延迟渲染模块404,用于针对任一所述待渲染子区域,基于该待渲染子区域中各像素点的渲染属性信息,对该待渲染区域进行延迟渲染。
115.一种可能的实施方式中,所述第二确定模块402,在将所述待渲染区域划分为多个待渲染子区域时,用于:
116.按照预设的待渲染子区域的区域尺寸对所述待渲染区域进行划分,得到多个待渲染子区域;或者,
117.按照预设的待渲染子区域的区域个数对所述待渲染区域进行划分,得到多个待渲染子区域。
118.一种可能的实施方式中,所述第三确定模块403,在确定所述多个待渲染子区域中的目标像素点的渲染属性信息时,用于:
119.针对任一所述目标像素点,基于预设的渲染请求类型与渲染属性信息的映射关
系,从所述待渲染区域对应的几何缓冲区中获取所述渲染请求对应的渲染属性信息,并将获取的渲染属性信息作为该目标像素点的渲染属性信息;或者,
120.针对任一所述目标像素点,对所述渲染属性信息对应的属性信息贴图进行采样,并将采样得到的渲染属性信息作为该目标像素点对应的渲染属性信息。
121.一种可能的实施方式中,所述第三确定模块403,在基于各所述待渲染子区域中的目标像素点的渲染属性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息时,用于:
122.针对任一所述目标像素点,确定与该目标像素点之间的位置关系满足预设条件的相似像素点;
123.将各所述目标像素点的渲染属性信息,作为各所述目标像素点分别对应的相似像素点的渲染属性信息。
124.一种可能的实施方式中,所述预设条件包括位置相邻和/或位于目标像素点的目标方位上。
125.一种可能的实施方式中,所述第三确定模块403,在基于各所述待渲染子区域中的目标像素点的渲染属性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息时,用于:
126.针对任一除所述目标像素点外的其他像素点,将与该像素点之间距离最近的目标像素点的渲染属性信息,作为该像素点的渲染属性信息。
127.一种可能的实施方式中,所述延迟渲染模块404,在基于该待渲染子区域中各像素点的渲染属性信息,对该待渲染区域进行延迟渲染时,用于:
128.基于该待渲染子区域中各像素点的渲染属性信息,确定该待渲染子区域对应的目标场景渲染数据;
129.基于所述目标场景渲染数据,对该待渲染区域进行延迟渲染。
130.本公开实施例提供的场景渲染装置,通过对待渲染区域划分后得到的多个待渲染子区域分别进行采样,确定每个所述待渲染子区域中的目标像素点;确定所述多个待渲染子区域中的目标像素点的渲染属性信息,并基于各所述待渲染子区域中的目标像素点的渲染属性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息,从而可以基于各目标像素点的属性信息得到所述待渲染区域的各像素点的渲染属性信息,由此,无需计算每个像素点的渲染属性信息,进而可以在保证渲染效果的情况下,节约确定各像素点的渲染属性信息的计算资源和时间成本,提高场景渲染速度,进而提升用户的游玩体验。
131.关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
132.基于同一技术构思,本公开实施例还提供了一种计算机设备。参照图5所示,为本公开实施例提供的计算机设备500的结构示意图,包括处理器501、存储器502、和总线503。其中,存储器502用于存储执行指令,包括内存5021和外部存储器5022;这里的内存5021也称内存储器,用于暂时存放处理器501中的运算数据,以及与硬盘等外部存储器5022交换的数据,处理器501通过内存5021与外部存储器5022进行数据交换,当计算机设备500运行时,处理器501与存储器502之间通过总线503通信,使得处理器501在执行以下指令:
133.响应延迟渲染场景下的渲染请求,确定待渲染区域;
134.将所述待渲染区域划分为多个待渲染子区域,并对划分后的多个待渲染子区域分别进行采样,确定每个所述待渲染子区域中的目标像素点;
135.确定所述多个待渲染子区域中的目标像素点的渲染属性信息,并基于各所述待渲染子区域中的目标像素点的渲染属性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息;
136.针对任一所述待渲染子区域,基于该待渲染子区域中各像素点的渲染属性信息,对该待渲染区域进行延迟渲染。
137.一种可能的实施方式中,所述处理器501的指令中,所述将所述待渲染区域划分为多个待渲染子区域,包括:
138.按照预设的待渲染子区域的区域尺寸对所述待渲染区域进行划分,得到多个待渲染子区域;或者,
139.按照预设的待渲染子区域的区域个数对所述待渲染区域进行划分,得到多个待渲染子区域。
140.一种可能的实施方式中,所述处理器501的指令中,所述确定所述多个待渲染子区域中的目标像素点的渲染属性信息,包括:
141.针对任一所述目标像素点,基于预设的渲染请求类型与渲染属性信息的映射关系,从所述待渲染区域对应的几何缓冲区中获取所述渲染请求对应的渲染属性信息,并将获取的渲染属性信息作为该目标像素点的渲染属性信息;或者,
142.针对任一所述目标像素点,对所述渲染属性信息对应的属性信息贴图进行采样,并将采样得到的渲染属性信息作为该目标像素点对应的渲染属性信息。
143.一种可能的实施方式中,所述处理器501的指令中,所述基于各所述待渲染子区域中的目标像素点的渲染属性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息,包括:
144.针对任一所述目标像素点,确定与该目标像素点之间的位置关系满足预设条件的相似像素点;
145.将各所述目标像素点的渲染属性信息,作为各所述目标像素点分别对应的相似像素点的渲染属性信息。
146.一种可能的实施方式中,所述处理器501的指令中,所述预设条件包括位置相邻和/或位于目标像素点的目标方位上。
147.一种可能的实施方式中,所述处理器501的指令中,所述基于各所述待渲染子区域中的目标像素点的渲染属性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息,包括:
148.针对任一除所述目标像素点外的其他像素点,将与该像素点之间距离最近的目标像素点的渲染属性信息,作为该像素点的渲染属性信息。
149.一种可能的实施方式中,所述处理器501的指令中,所述基于该待渲染子区域中各像素点的渲染属性信息,对该待渲染区域进行延迟渲染,包括:
150.基于该待渲染子区域中各像素点的渲染属性信息,确定该待渲染子区域对应的目标场景渲染数据;
151.基于所述目标场景渲染数据,对该待渲染区域进行延迟渲染。
152.本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的场景渲染方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
153.本公开实施例还提供一种计算机程序产品,该计算机程序产品承载有程序代码,所述程序代码包括的指令可用于执行上述方法实施例中所述的场景渲染方法的步骤,具体可参见上述方法实施例,在此不再赘述。
154.其中,上述计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(software development kit,sdk)等等。
155.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
156.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
157.另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
158.所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
159.最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护
范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。
技术特征:
1.一种场景渲染方法,其特征在于,应用于目标操作系统平台下的延迟渲染场景,包括:响应延迟渲染场景下的渲染请求,确定待渲染区域;将所述待渲染区域划分为多个待渲染子区域,并对划分后的多个待渲染子区域分别进行采样,确定每个所述待渲染子区域中的目标像素点;确定所述多个待渲染子区域中的目标像素点的渲染属性信息,并基于各所述待渲染子区域中的目标像素点的渲染属性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息;针对任一所述待渲染子区域,基于该待渲染子区域中各像素点的渲染属性信息,对该待渲染区域进行延迟渲染。2.根据权利要求1所述的方法,其特征在于,所述将所述待渲染区域划分为多个待渲染子区域,包括:按照预设的待渲染子区域的区域尺寸对所述待渲染区域进行划分,得到多个待渲染子区域;或者,按照预设的待渲染子区域的区域个数对所述待渲染区域进行划分,得到多个待渲染子区域。3.根据权利要求1或2所述的方法,其特征在于,所述确定所述多个待渲染子区域中的目标像素点的渲染属性信息,包括:针对任一所述目标像素点,基于预设的渲染请求类型与渲染属性信息的映射关系,从所述待渲染区域对应的几何缓冲区中获取所述渲染请求对应的渲染属性信息,并将获取的渲染属性信息作为该目标像素点的渲染属性信息;或者,针对任一所述目标像素点,对所述渲染属性信息对应的属性信息贴图进行采样,并将采样得到的渲染属性信息作为该目标像素点对应的渲染属性信息。4.根据权利要求1所述的方法,其特征在于,所述基于各所述待渲染子区域中的目标像素点的渲染属性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息,包括:针对任一所述目标像素点,确定与该目标像素点之间的位置关系满足预设条件的相似像素点;将各所述目标像素点的渲染属性信息,作为各所述目标像素点分别对应的相似像素点的渲染属性信息。5.根据权利要求4所述的方法,其特征在于,所述预设条件包括位置相邻和/或位于目标像素点的目标方位上。6.根据权利要求1所述的方法,其特征在于,所述基于各所述待渲染子区域中的目标像素点的渲染属性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息,包括:针对任一除所述目标像素点外的其他像素点,将与该像素点之间距离最近的目标像素点的渲染属性信息,作为该像素点的渲染属性信息。7.根据权利要求1所述的方法,其特征在于,所述基于该待渲染子区域中各像素点的渲染属性信息,对该待渲染区域进行延迟渲染,包括:
基于该待渲染子区域中各像素点的渲染属性信息,确定该待渲染子区域对应的目标场景渲染数据;基于所述目标场景渲染数据,对该待渲染区域进行延迟渲染。8.一种场景渲染装置,其特征在于,应用于目标操作系统平台下的延迟渲染场景,包括:第一确定模块,用于响应延迟渲染场景下的渲染请求,确定待渲染区域;第二确定模块,用于将所述待渲染区域划分为多个待渲染子区域,并对划分后的多个待渲染子区域分别进行采样,确定每个所述待渲染子区域中的目标像素点;第三确定模块,用于确定所述多个待渲染子区域中的目标像素点的渲染属性信息,并基于各所述待渲染子区域中的目标像素点的渲染属性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息;延迟渲染模块,用于针对任一所述待渲染子区域,基于该待渲染子区域中各像素点的渲染属性信息,对该待渲染区域进行延迟渲染。9.一种计算机设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至7任一所述的场景渲染方法的步骤。10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至7任一所述的场景渲染方法的步骤。
技术总结
本公开提供了一种场景渲染方法、装置、计算机设备及存储介质,其中,该方法包括:响应延迟渲染场景下的渲染请求,确定待渲染区域;将所述待渲染区域划分为多个待渲染子区域,并对划分后的多个待渲染子区域分别进行采样,确定每个所述待渲染子区域中的目标像素点;确定所述多个待渲染子区域中的目标像素点的渲染属性信息,并基于各所述待渲染子区域中的目标像素点的渲染属性信息,确定各所述待渲染子区域中除所述目标像素点外的其他像素点的渲染属性信息;针对任一所述待渲染子区域,基于该待渲染子区域中各像素点的渲染属性信息,对该待渲染区域进行延迟渲染。渲染区域进行延迟渲染。渲染区域进行延迟渲染。
技术研发人员:陈晓威
受保护的技术使用者:北京字跳网络技术有限公司
技术研发日:2021.11.30
技术公布日:2022/3/8