1.本申请涉及计算机技术领域,具体涉及一种信息处理方法、装置及计算机可读存储介质。
背景技术:2.在计算机动画制作中,基于环境的光照渲染是实现真实感的重要环节,光照渲染主要从环境中获取物体周围的灯光信息,通过灯光信息对物体进行渲染照明。
3.现有技术中,可以获取环境中全部的灯光信息,根据灯光信息的光照体积(lightvolume)对环境中的物体通过drawcall方式进行绘制,循环环境中的每一灯光信息进行绘制,直至全部灯光信息绘制完成,以实现对环境的光照渲染。
4.在对现有技术的研究和实践过程中,本申请的发明人发现,现有技术中,对每一灯光信息依次进行绘制,会产生大量的状态切换,导致设备的中央处理器(central processing unit,cpu)和图形处理器(graphics processing unit,gpu)繁忙,信息处理的效率较低。
技术实现要素:5.本申请实施例提供一种信息处理方法、装置及计算机可读存储介质,可以提升信息处理的效率。
6.为解决上述技术问题,本申请实施例提供以下技术方案:
7.一种信息处理方法,包括:
8.获取虚拟场景中的灯光信息,所述灯光信息携带光照体积信息;
9.将所述灯光信息分配在预设数量的灯光组中;
10.对每一灯光组中的灯光信息进行模板绘制处理,以对每一灯光信息的所述光照体积信息覆盖的物体像素进行模板标记;
11.对模板绘制处理后的每一灯光组中的灯光信息进行颜色绘制处理,将模板标记为第一预设值的物体像素进行光照绘制。
12.一种信息处理装置,包括:
13.获取单元,用于获取虚拟场景中的灯光信息,所述灯光信息携带光照体积信息;
14.分配单元,用于将所述灯光信息分配在预设数量的灯光组中;
15.第一处理单元,用于对每一灯光组中的灯光信息进行模板绘制处理,以对每一灯光信息的所述光照体积信息覆盖的物体像素进行模板标记;
16.第二处理单元,用于对模板绘制处理后的每一灯光组中的灯光信息进行颜色绘制处理,将模板标记为第一预设值的物体像素进行光照绘制。
17.在一些实施例中,所述第一处理单元,用于:
18.依次对每一灯光组中的灯光信息进行模板标记处理,以对每一灯光信息的所述光照体积信息覆盖的光照像素标记为第一预设值;
19.获取虚拟场景中的多维物体信息对应的物体像素;
20.将不与所述物体像素有交集的光照像素标记为第二预设值,以实现依次对每一灯光组中的灯光信息统一进行模板绘制处理。
21.在一些实施例中,所述第二处理单元,用于:
22.依次对模板绘制处理后每一灯光组中的灯光信息的标记进行遍历,确定每一灯光组中标记为第一预设值的物体像素;
23.将每一灯光组中标记为第一预设值的物体像素进行光照绘制。
24.一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行上述信息处理方法中的步骤。
25.本申请实施例通过获取虚拟场景中的灯光信息,灯光信息携带光照体积信息;将灯光信息分配在预设数量的灯光组中;对每一灯光组中的灯光信息进行模板绘制处理,以对每一灯光信息的光照体积信息覆盖的物体像素进行模板标记;对模板绘制处理后的每一灯光组中的灯光信息进行颜色绘制处理,将模板标记为第一预设值的物体像素进行光照绘制。以此,实现将灯光信息分配在预设数量的灯光组中,以灯光组为单位,对每一灯光组中的灯光信息分别统一进行模板绘制处理和颜色绘制处理,将模板标记为第一预设值的物体像素进行光照绘制,减少了状态切换,极大的提升了信息处理的效率。
附图说明
26.为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
27.图1是本申请实施例提供的信息处理系统的场景示意图;
28.图2是本申请实施例提供的信息处理方法的流程示意图;
29.图3是本申请实施例提供的信息处理方法的另一流程示意图;
30.图4为本申请实施例提供的信息处理方法的场景示意图;
31.图5是本申请实施例提供的信息处理装置的结构示意图;
32.图6是本申请实施例提供的终端的结构示意图。
具体实施方式
33.下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
34.本申请实施例提供一种信息处理方法、装置、及计算机可读存储介质。
35.请参阅图1,图1为本申请实施例所提供的信息处理系统的场景示意图,包括:终端a、和服务器(该信息处理系统还可以包括除终端a之外的其他终端,终端具体个数在此处不作限定),终端a与服务器之间可以通过通信网络连接,该通信网络,可以包括无线网络以及有线网络,其中无线网络包括无线广域网、无线局域网、无线城域网、以及无线个人网中的
一种或多种的组合。网络中包括路由器、网关等等网络实体,图中并未示意出。终端a可以通过通信网络与服务器进行信息交互,比如终端a通过游戏应用在线将当前图像帧发送至服务器。
36.该信息处理系统可以包括信息处理装置,该信息处理装置具体可以集成在服务器中,该服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。如图1所示,该服务器可以将需要进行渲染视频流信息推送到终端a中。
37.该信息处理系统中终端a可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。该终端a可以安装各种用户需要的应用,比如游戏应用等,终端a可以接收服务器推送的视频流信息进行渲染,获取虚拟场景中的灯光信息,该灯光信息携带光照体积信息;将该灯光信息分配在预设数量的灯光组中;对每一灯光组中的灯光信息进行模板绘制处理,以对每一灯光信息的该光照体积信息覆盖的物体像素进行模板标记;对模板绘制处理后的每一灯光组中的灯光信息进行颜色绘制处理,将模板标记为第一预设值的物体像素进行光照绘制。
38.需要说明的是,图1所示的信息处理系统的场景示意图仅仅是一个示例,本申请实施例描述的信息处理系统以及场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域普通技术人员可知,随着信息处理系统的演变和新业务场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
39.以下分别进行详细说明。
40.在本实施例中,将从信息处理装置的角度进行描述,该信息处理装置具体可以集成在具备储存单元并安装有微处理器而具有运算能力的终端中。
41.请参阅图2,图2是本申请实施例提供的信息处理方法的流程示意图。该信息处理方法包括:
42.在步骤101中,获取虚拟场景中的灯光信息。
43.计算机视觉技术(computer vision,cv)计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、ocr、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3d技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
44.本申请实施例提供的方案涉及人工智能的计算机视觉技术等技术,具体通过如下实施例进行说明:
45.其中,环境的光照渲染是实现动画真实感的重要环节,在相关技术中,虽然可以获取环境中全部的灯光信息,根据每一灯光信息的光照体积对环境中的物体通过drawcall方式进行绘制,将全部灯光信息绘制完成,以实现对环境的光照渲染,在渲染的过程中,有多
少个灯光信息,就有两倍于灯光信息数量的drawcall,该drawcall可以理解为一次绘制过程,即每次cpu准备数据并通知gpu的过程就称之为一个drawcall,具体过程可以为设置颜色
‑‑
>绘图方式
‑‑
>顶点坐标
‑‑
>绘制
‑‑
>结束。
46.本申请实施例可以避免drawcall数量过多,首先获取虚拟场景中的灯光信息,该虚拟场景可以为3维(d)虚拟场景,例如游戏视频对应的3d游戏场景等等,该灯光信息为虚拟场景中光源发出的光线在虚拟场景中形成的光对应的渲染数据,该光线信息携带光照体积信息,该光照体积信息可以为代表灯光形成范围的几何体。
47.在步骤102中,将灯光信息分配在预设数量的灯光组中。
48.在实际的虚拟场景中的光照绘制过程中,虚拟场景中一个显示像素中会有多种缓存信息,该缓存信息可以包括是否需要进行光照渲染处理的多个相关信息,模板(stencil)缓存信息为其中之一,用于标记需要进行光照渲染的显示像素,该模板缓存信息可以为1bit(比特)单位的信息,比特是表示信息的最小单位,是二进制数的一位包含的信息或2个选项中特别指定1个的需要信息量。即0和1。在光照渲染的过程中,可以先对需要渲染的物体像素通过模板绘制(stencilpass)处理,该流程不进行颜色渲染,只标记模板缓存信息,标记为1表示需要进行光照渲染的像素,标记为0表示为需要剔除的像素,不需要进行光照渲染,进而通过颜色绘制流程(colorpass)进行颜色渲染,将标记为1的物体像素进行颜色渲染,标记为0的像素进行剔除,实现光照渲染,即在相关技术中,每一灯光信息均需要通过模板绘制流程和颜色绘制流程进行处理,进而每一灯光信息都需要2个drawcall进行渲染,该drawcall即为,cpu调用图形编程接口,用于命令gpu进行渲染的操作。所以有多少灯光信息,就需要2倍于灯光信息数量的drawcall,会产生大量的drawcall。
49.而drawcall数量过多会导致cpu和gpu进行大量计算,进而导致过载,影响画面渲染效率,所以本申请实施例可以将灯光信息分配在预设数量的灯光组中,该预设数量可以为8组、10组、16组等等,使得后续在进行绘制时,可以基于灯光组为基本单位,对每一组灯光组中的灯光信息进行统一绘制处理,即一组灯光组只需要2个drawcall数量就可以实现对多个灯光信息进行渲染,极大的减少drawcall的数量,进而降低了状态切换的次数,提升了信息处理效率。
50.在一实施方式中,当深度缓冲(depthbuffer)的格式选择d24s8时,深度缓冲与帧缓冲相对应,用于记录上面每个像素的深度值,可以用于记录模板缓存信息,d24s8为8bit的记录格式。以此,使得记录模板可以有8bit,即可以代表8组的灯光组,每一组可以用x进行模板标记,该x可以为0或者1,以此可以将该每一灯光信息分配在八组的灯光组中;设置每一组的灯光组以一个比特单位来对组内的灯光信息进行模板标记。
51.在一些实施方式中,该将灯光信息分配在预设数量的灯光组中的步骤,可以包括:
52.(1)获取每一灯光信息的光照体积信息对应的覆盖范围数据;
53.(2)设置每一灯光组的预设覆盖范围数据;
54.(3)基于每一灯光组中分配的灯光信息的覆盖范围数据之和不超过预设覆盖范围数据的规则,将每一灯光信息分配至多个灯光组中。
55.其中,该光照体积信息可以为灯光信息代表的灯光在虚拟场景上形成光照范围的几何体,获取每一灯光信息的光照体积信息在虚拟空间维度上覆盖的全部像素,由该覆盖的全部像素形成覆盖范围数据,当同一灯光组的灯光信息之间的光照体积信息对应的覆盖
范围数据之间存在重叠区域,在进行渲染时,该重叠区域中的像素的模板缓存信息可能会发生反复变化,例如,在一个灯光信息中可以进行剔除,模板缓存信息标记为0,而在另一个灯光信息中模板缓存信息又标记为1,那么该缓存信息会反复发生变化,造成不必要的计算,给cpu带来负载,所以同一灯光组的灯光信息之间的光照体积信息对应的覆盖范围数据之间存在的重叠区域越小越好。
56.在虚拟场景中,灯光信息由于光源距离或者场景障碍物等因素的影响,会导致不同的灯光信息的光照体积信息对应的覆盖范围数据均不同,而覆盖范围数据越大的灯光信息与其他灯光信息的覆盖范围数据产生重叠的概率越大,覆盖范围数据越小的灯光信息与其他灯光信息的覆盖范围数据产生重叠的概率越小,以此,在将灯光信息分配至灯光组中时,可以在一个灯光组中多分配一些覆盖范围数据小的灯光信息或者少分配一些覆盖范围数据大的灯光信息,尽量减少同一组中的灯光信息之间存在的重叠区域。
57.以此,可以设置每一灯光组的预设覆盖范围数据,该预设覆盖范围数据即为一个灯光组中分配的全部灯光信息的覆盖范围数据之和能达到的最大覆盖范围数据,该预设覆盖范围数据可以根据灯光组的数量和全部灯光信息的覆盖范围数据之和进行设置,基于每一灯光组中分配的灯光信息的覆盖范围数据之和不超过预设覆盖范围数据的规则,将每一灯光信息分配至多个灯光组中,该多个的数量为至少2个,例如8个,即可实现在一个灯光组中多分配一些覆盖范围数据小的灯光信息或者少分配一些覆盖范围数据大的灯光信息,减少同一组中的灯光信息之间存在的重叠区域。
58.在一些实施方式中,该将灯光信息分配在预设数量的灯光组中的步骤,可以包括:
59.(1.1)获取每一灯光信息的光照体积信息对应的覆盖范围数据;
60.(1.2)将覆盖范围数据之间具有重叠区域的灯光信息分配在不同的灯光组中,得到多个灯光组。
61.其中,可以获取每一灯光信息的光照体积信息对应的覆盖范围数据,为了避免同一组中的灯光信息之间存在重叠区域,可以限定将覆盖范围数据之间具有重叠区域的灯光信息分配在不同的灯光组中,得到多个灯光组,该多个的数量为至少2个,例如8个,该多个灯光组中的每一灯光信息之间的覆盖范围数据均为独立的,可以避免不必要的计算,进一步的提升信息处理的效率。
62.在一些实施方式中,该将覆盖范围数据之间具有重叠区域的灯光信息分配在不同的灯光组中,得到多个灯光组的步骤,可以包括:基于每一灯光组中分配的灯光信息的覆盖范围数据之间不具有重叠区域的规则,将每一灯光信息分配至多个灯光组中。
63.其中,基于每一灯光组中分配的灯光信息的覆盖范围数据之间不具有重叠区域的规则,将每一灯光信息分配至多个灯光组,可以保证每一灯光组中的灯光信息之间的覆盖范围数据之间为独立的,避免不必要的计算。
64.在步骤103中,对每一灯光组中的灯光信息进行模板绘制处理。
65.其中,可以依次先对每一灯光组中的灯光信息统一进行模板绘制处理,以灯光组为单位,统一对每一灯光组中的全部灯光信息进行模板绘制处理,避免单独对每一灯光信息进行模板绘制流程,造成大量的状态切换,使得cpu和gpu的反复调用,造成cpu和gpu卡顿,降低信息处理的效率。
66.在一些实施方式中,依次对每一灯光组中的灯光信息统一进行模板绘制处理,以
对每一灯光信息的光照体积信息覆盖的物体像素进行模板标记的步骤,包括:
67.(1)依次对每一灯光组中的灯光信息进行模板标记处理,以对每一灯光信息的该光照体积信息覆盖的光照像素标记为第一预设值;
68.(2)获取虚拟场景中的多维物体信息对应的物体像素;
69.(3)将不与该物体像素有交集的光照像素标记为第二预设值,以实现依次对每一灯光组中的灯光信息统一进行模板绘制处理。
70.其中,将每一灯光信息的光照体积信息在虚拟场景中覆盖的光照像素标记为第一预设值,该第一预设值可以为1。可以依次对每一灯光组中的灯光信息运用实例(instancing)技术统一进行模板标记处理,该instancing技术是一种用来提高渲染物体大量物体效率的技术,可以一次渲染相同网格的多个副本,减少drawcall的调用,提升模板标记处理的效率,。
71.进一步的,可以获取虚拟场景中的多维物体信息在虚拟场景对应的物体像素,该多维物体信息为虚拟场景中的物体对象,例如虚拟人物、虚拟墙面等可以显示灯光的虚拟实体对象,由于灯光需要实际的物体作为载体进行显示,以此,可以将与物体像素有交集的光照像素标记为第一预设值,将不与物体像素有交集的光照像素标记为第二预设值,为了避免光照显示不符合显示规律,后续需要对标记为第二预设值的像素进行剔除,以实现依次对每一灯光组中的灯光信息统一进行模板绘制处理。
72.在步骤104中,对模板绘制处理后的每一灯光组中的灯光信息进行颜色绘制处理,将模板标记为第一预设值的物体像素进行光照绘制。
73.其中,在完成模板绘制之后,进而依次对模板绘制处理后的每一灯光组中的灯光信息统一进行颜色绘制处理,将模板标记为第一预设值的物体像素,即处于光照体积覆盖下的物体像素,进行颜色渲染,实现虚拟场景的光照绘制。
74.在一些实施方式中,依次对模板绘制处理后的每一灯光组中的灯光信息统一进行颜色绘制处理,将模板标记为第一预设值的物体像素进行光照绘制的步骤,包括:
75.(1)依次对模板绘制处理后每一灯光组中的灯光信息的标记进行遍历,确定每一灯光组中标记为第一预设值的物体像素;
76.(2)将每一灯光组中标记为第一预设值的物体像素进行光照绘制。
77.其中,依次对模板绘制处理后的每一灯光组中灯光信息的光照体积信息中的像素的标记进行遍历,确定每一灯光组中标记为第一预设值,即标记为1的物体像素。
78.进一步的,结合instancing技术统一将每一灯光组中标记为第一预设值的物体像素进行光照颜色渲染,即将灯光照射产生的色彩渲染至对应的物体像素上,实现虚拟场景的光照绘制,相对于相关技术,本申请实施例通过以组为单位,在模板绘制处理和颜色绘制处理均可以调用instancing技术进行快速处理,进一步加快渲染速度和drawcall的调用次数,更好的提升了信息处理的效率。
79.由上述可知,本申请实施例通过获取虚拟场景中的灯光信息,灯光信息携带光照体积信息;将灯光信息分配在预设数量的灯光组中;对每一灯光组中的灯光信息进行模板绘制处理,以对每一灯光信息的光照体积信息覆盖的物体像素进行模板标记;对模板绘制处理后的每一灯光组中的灯光信息进行颜色绘制处理,将模板标记为第一预设值的物体像素进行光照绘制。以此,实现将灯光信息分配在预设数量的灯光组中,以灯光组为单位,对
每一灯光组中的灯光信息分别统一进行模板绘制处理和颜色绘制处理,将模板标记为第一预设值的物体像素进行光照绘制,减少了状态切换,极大的提升了信息处理的效率。
80.结合上述实施例所描述的方法,以下将举例作进一步详细说明。
81.在本实施例中,将以该信息处理装置具体集成在终端中为例进行说明,具体参照以下说明。
82.请参阅图3,图3为本申请实施例提供的信息处理方法的另一流程示意图。该方法流程可以包括:
83.在步骤201中,终端获取虚拟场景中的灯光信息。
84.其中,请一并参阅图4所示,图4为本申请实施例提供的信息处理方法的场景示意图,终端可以获取虚拟场景10中的灯光信息,该虚拟场景可以为三维虚拟场景,该灯光信息为虚拟场景中光源发出的光线在虚拟场景中形成的光对应的渲染数据,该光线信息携带光照体积信息,该光照体积信息可以为代表灯光形成范围的几何体,该灯光信息携带光照体积信息11,该光照体积信息11为代表灯光形成范围的多维几何体。
85.在步骤202中,终端获取每一灯光信息的光照体积信息对应的覆盖范围数据,计算每一灯光信息的覆盖范围数据的总和,并将总和与扩充覆盖范围数据进行相加,得到目标覆盖范围数据。
86.需要说明的的是,本申请实施例采用深度缓冲格式选择d24s8,即记录模板可以有8bit,代表本申请实施例包括8组的灯光组。
87.其中,请继续参阅图4,终端可以获取每一灯光信息光照体积信息11在虚拟场景10的空间维度上覆盖的全部像素,形成覆盖范围数据,该覆盖范围数据为灯光信息在虚拟场景所覆盖的全部像素形成的面积信息,由于覆盖范围数据越大的灯光信息与其他灯光信息的覆盖范围数据产生重叠的概率越大,覆盖范围数据越小的灯光信息与其他灯光信息的覆盖范围数据产生重叠的概率越小,为了使得同一灯光组中重叠区域越小越好,可以在每一个灯光组中多分配一些覆盖范围数据小的灯光信息或者少分配一些覆盖范围数据大的灯光信息,可以统计每一灯光信息的覆盖范围数据的总和。
88.假设以该覆盖范围数据的总和划分每一灯光组的预设覆盖范围数据,该预设覆盖范围数据即为一个灯光组中分配的全部灯光信息的覆盖范围数据之和能达到的最大覆盖范围数据,会导致部分灯光信息无法存放。以此,可以引入扩充覆盖范围数据,该扩充覆盖范围数据可以为每一灯光信息的覆盖范围数据的总和的五分之一,将该每一灯光信息的覆盖范围数据的总和与扩充覆盖范围数据进行相加,得到目标覆盖范围数据。
89.在步骤203中,终端根据目标覆盖范围数据和八组数量进行计算,得到预设覆盖范围数据,基于每一灯光组中分配的灯光信息的覆盖范围数据之和不超过预设覆盖范围数据的规则,将每一灯光信息分配至八组的灯光组中。
90.其中,终端可以计算目标覆盖范围数据与八组数量对应的比值,该八组数量可以用数字8进行表示,得到预设覆盖范围数据,基于每一灯光组中分配的灯光信息的覆盖范围数据之和不超过预设覆盖范围数据的规则,将每一灯光信息分配至八组的灯光组中,实现在每一个灯光组中多分配一些覆盖范围数据小的灯光信息或者少分配一些覆盖范围数据大的灯光信息,合理的将灯光信息按照覆盖范围数据进行隔开,尽可能的减少同一组中的灯光信息之间存在的重叠区域,将每一灯光信息分配至八组的灯光组中。
91.在一实施方式中,终端可以设置每一组的灯光组均以二进制标记方式的规则来对组内的灯光信息进行模板标记,用于标记每一组的灯光组的模板标记,该二进制标记方式即为0和1的标记方式。
92.在步骤204中,终端依次对每一灯光组中的灯光信息进行模板标记处理,以对每一灯光信息的光照体积信息覆盖的光照像素标记为第一预设值。
93.其中,请继续参阅图4所示,依次对每一灯光组中的灯光信息结合instancing技术统一进行模板标记处理,将灯光信息的光照体积信息11在虚拟场景10中覆盖的光照像素标记为第一预设值,该光照像素即为光照体积信息在虚拟场景中覆盖的像素,该第一预设值可以为1,即将光照体积信息11在虚拟场景中覆盖的光照像素的模板缓存信息通过instancing技术快速标记为1。
94.在步骤205中,终端获取虚拟场景中的多维物体信息对应的物体像素,将不与物体像素有交集的光照像素标记为第二预设阈值,以实现依次对每一灯光组中的灯光信息统一进行模板绘制流程处理。
95.其中,请继续参阅图4所示,可以获取虚拟场景中的多维物体信息在虚拟场景10对应的物体像素,例如获取虚拟场景10对应的房子的物体像素,由于灯光需要实际的物体作为载体进行显示,以此,可以将与房子的物体像素有交集的光照像素保持标记为第一预设值,将不与房子的物体像素有交集的光照像素标记为第二预设值,该第二预设值可以为0,需要进行剔除,即将虚拟场景中没有实体进行显示的光照像素剔除,避免多余的渲染,以实现依次对每一灯光组中的灯光信息统一进行模板绘制处理。
96.在步骤206中,终端依次对模板绘制处理后每一灯光组中的灯光信息的标记进行遍历,确定每一灯光组中标记为第一预设值的物体像素,将每一灯光组中标记为第一预设值的物体像素进行光照绘制。
97.其中,请一并参阅图4所示,依次对模板绘制处理后的每一灯光组中灯光信息的光照体积信息中的像素的标记进行遍历,确定每一灯光组中标记为第一预设值,即标记为1的物体像素。
98.进一步的,结合instancing技术统一将每一灯光组中标记为第一预设值的物体像素进行颜色渲染,实现虚拟场景的光照绘制。
99.由上述可知,本申请实施例通过获取虚拟场景中的灯光信息,灯光信息携带光照体积信息;将灯光信息分配在预设数量的灯光组中;对每一灯光组中的灯光信息进行模板绘制处理,以对每一灯光信息的光照体积信息覆盖的物体像素进行模板标记;对模板绘制处理后的每一灯光组中的灯光信息进行颜色绘制处理,将模板标记为第一预设值的物体像素进行光照绘制。以此,实现将灯光信息分配在预设数量的灯光组中,以灯光组为单位,对每一灯光组中的灯光信息分别统一进行模板绘制处理和颜色绘制处理,将模板标记为第一预设值的物体像素进行光照绘制,减少了状态切换,极大的提升了信息处理的效率。
100.进一步的,本申请实施例通过以组为单位,在模板绘制处理和颜色绘制处理均调用instancing技术进行快速处理,进一步加快渲染速度和drawcall的调用次数,更好的提升了信息处理的效率。
101.为便于更好的实施本申请实施例提供的信息处理方法,本申请实施例还提供一种基于上述信息处理方法的装置。其中名词的含义与上述信息处理方法中相同,具体实现细
节可以参考方法实施例中的说明。
102.请参阅图5,图5为本申请实施例提供的信息处理装置的结构示意图,其中该信息处理装置可以包括获取单元301、分配单元302、第一处理单元303以及第二处理单元304等。
103.获取单元301,用于获取虚拟场景中的灯光信息,该灯光信息携带光照体积信息。
104.分配单元302,用于将该灯光信息分配在预设数量的灯光组中。
105.在一些实施方式中,该分配单元302,用于:
106.获取每一灯光信息的光照体积信息对应的覆盖范围数据;
107.计算每一灯光信息的覆盖范围数据的总和,并将该总和与扩充覆盖范围数据进行相加,得到目标覆盖范围数据;
108.根据该目标覆盖范围数据和八组数量进行计算,得到预设覆盖范围数据;
109.基于每一灯光组中分配的灯光信息的覆盖范围数据之和不超过预设覆盖范围数据的规则,将每一灯光信息分配至八组的灯光组中。
110.在一些实施方式中,该分配单元302,用于:
111.获取每一灯光信息的光照体积信息对应的覆盖范围数据;
112.设置每一灯光组的预设覆盖范围数据;
113.基于每一灯光组中分配的灯光信息的覆盖范围数据之和不超过预设覆盖范围数据的规则,将每一灯光信息分配至多个灯光组中。
114.在一些实施方式中,该分配单元302,用于:
115.获取每一灯光信息的光照体积信息对应的覆盖范围数据;
116.将覆盖范围数据之间具有重叠区域的灯光信息分配在不同的灯光组中,得到多个灯光组。
117.在一些实施方式中,该分配单元302,还用于:
118.获取每一灯光信息的光照体积信息对应的覆盖范围数据;
119.基于每一灯光组中分配的灯光信息的覆盖范围数据之间不具有重叠区域的规则,将每一灯光信息分配至多个灯光组中。
120.第一处理单元303,用于对每一灯光组中的灯光信息进行模板绘制处理,以对每一灯光信息的该光照体积信息覆盖的物体像素进行模板标记。
121.在一些实施例中,该第一处理单元303,用于:
122.依次对每一灯光组中的灯光信息进行模板标记处理,以对每一灯光信息的该光照体积信息覆盖的光照像素标记为第一预设值;
123.获取虚拟场景中的多维物体信息对应的物体像素;
124.将不与该物体像素有交集的光照像素标记为第二预设值,以实现依次对每一灯光组中的灯光信息统一进行模板绘制处理。
125.第二处理单元304,用于对模板绘制处理后的每一灯光组中的灯光信息进行颜色绘制处理,将模板标记为第一预设值的物体像素进行光照绘制。。
126.在一些实施例中,该第二处理单元304,用于:
127.依次对模板绘制处理后每一灯光组中的灯光信息的标记进行遍历,确定每一灯光组中标记为第一预设值的物体像素;
128.将每一灯光组中标记为第一预设值的物体像素进行光照绘制。
129.以上各个单元的具体实施可参见前面的实施例,在此不再赘述。
130.由上述可知,本申请实施例通过获取单元301获取虚拟场景中的灯光信息,灯光信息携带光照体积信息;分配单元302将灯光信息分配在预设数量的灯光组中;第一处理单元303对每一灯光组中的灯光信息进行模板绘制处理,以对每一灯光信息的光照体积信息覆盖的物体像素进行模板标记;第二处理单元304对模板绘制处理后的每一灯光组中的灯光信息进行颜色绘制处理,将模板标记为第一预设值的物体像素进行光照绘制。以此,实现将灯光信息分配在预设数量的灯光组中,以灯光组为单位,对每一灯光组中的灯光信息分别统一进行模板绘制处理和颜色绘制处理,将模板标记为第一预设值的物体像素进行光照绘制,减少了状态切换,极大的提升了信息处理的效率。
131.本申请实施例还提供一种计算机设备,该计算机设备可以为终端,如图6所示,其示出了本申请实施例所涉及的终端的结构示意图,具体来讲:
132.该终端可以包括射频(rf,radio frequency)电路601、包括有一个或一个以上计算机可读存储介质的存储器602、输入单元603、显示单元604、传感器605、音频电路606、无线保真(wifi,wireless fidelity)模块607、包括有一个或者一个以上处理核心的处理器608、以及电源609等部件。本领域技术人员可以理解,图6中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
133.rf电路601可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器608处理;另外,将涉及上行的数据发送给基站。通常,rf电路601包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(sim,subscriber identity module)卡、收发信机、耦合器、低噪声放大器(lna,low noise amplifier)、双工器等。此外,rf电路601还可以通过无线通信与网络和其他设备通信。无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(gsm,global system of mobile communication)、通用分组无线服务(gprs,general packet radio service)、码分多址(cdma,code division multiple access)、宽带码分多址(wcdma,wideband code division multiple access)、长期演进(lte,long term evolution)、电子邮件、短消息服务(sms,short messaging service)等。
134.存储器602可用于存储软件程序以及模块,处理器608通过运行存储在存储器602的软件程序以及模块,从而执行各种功能应用以及信息处理。存储器602可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器602可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器602还可以包括存储器控制器,以提供处理器608和输入单元603对存储器602的访问。
135.输入单元603可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,在一个具体的实施例中,输入单元603可包括触敏表面以及其他输入设备。触敏表面,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或
附件在触敏表面上或在触敏表面附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器608,并能接收处理器608发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面。除了触敏表面,输入单元603还可以包括其他输入设备。具体地,其他输入设备可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
136.显示单元604可用于显示由用户输入的信息或提供给用户的信息以及终端的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元604可包括显示面板,可选的,可以采用液晶显示器(lcd,liquid crystal display)、有机发光二极管(oled,organic light
‑
emitting diode)等形式来配置显示面板。进一步的,触敏表面可覆盖显示面板,当触敏表面检测到在其上或附近的触摸操作后,传送给处理器608以确定触摸事件的类型,随后处理器608根据触摸事件的类型在显示面板上提供相应的视觉输出。虽然在图6中,触敏表面与显示面板是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面与显示面板集成而实现输入和输出功能。
137.终端还可包括至少一种传感器605,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板的亮度,接近传感器可在终端移动到耳边时,关闭显示面板和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
138.音频电路606、扬声器,传声器可提供用户与终端之间的音频接口。音频电路606可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路606接收后转换为音频数据,再将音频数据输出处理器608处理后,经rf电路601以发送给比如另一终端,或者将音频数据输出至存储器602以便进一步处理。音频电路606还可能包括耳塞插孔,以提供外设耳机与终端的通信。
139.wifi属于短距离无线传输技术,终端通过wifi模块607可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图6示出了wifi模块607,但是可以理解的是,其并不属于终端的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
140.处理器608是终端的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器602内的软件程序和/或模块,以及调用存储在存储器602内的数据,执行终端的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器608可包括一个或多个处理核心;优选的,处理器608可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器608中。
141.终端还包括给各个部件供电的电源609(比如电池),优选的,电源可以通过电源管理系统与处理器608逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源609还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
142.尽管未示出,终端还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,终端中的处理器608会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器602中,并由处理器608来运行存储在存储器602中的应用程序,从而实现各种功能:
143.获取虚拟场景中的灯光信息,该灯光信息携带光照体积信息;将该灯光信息分配在预设数量的灯光组中;对每一灯光组中的灯光信息进行模板绘制处理,以对每一灯光信息的该光照体积信息覆盖的物体像素进行模板标记;对模板绘制处理后的每一灯光组中的灯光信息进行颜色绘制处理,将模板标记为第一预设值的物体像素进行光照绘制。
144.应当说明的是,本申请实施例提供的终端与上文实施例中的适用于终端的信息处理方法属于同一构思,其具体实现过程详见以上方法实施例,此处不再赘述。
145.由上述可知,本申请实施例的计算机设备可以通过获取虚拟场景中的灯光信息,灯光信息携带光照体积信息;将灯光信息分配在预设数量的灯光组中;对每一灯光组中的灯光信息进行模板绘制处理,以对每一灯光信息的光照体积信息覆盖的物体像素进行模板标记;对模板绘制处理后的每一灯光组中的灯光信息进行颜色绘制处理,将模板标记为第一预设值的物体像素进行光照绘制。以此,实现将灯光信息分配在预设数量的灯光组中,以灯光组为单位,对每一灯光组中的灯光信息分别统一进行模板绘制处理和颜色绘制处理,将模板标记为第一预设值的物体像素进行光照绘制,减少了状态切换,极大的提升了信息处理的效率。
146.本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
147.为此,本申请实施例提供一种计算机可读存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本申请实施例所提供的任一种信息处理方法中的步骤。例如,该指令可以执行如下步骤:
148.获取虚拟场景中的灯光信息,该灯光信息携带光照体积信息;将该灯光信息分配在预设数量的灯光组中;对每一灯光组中的灯光信息进行模板绘制处理,以对每一灯光信息的该光照体积信息覆盖的物体像素进行模板标记;对模板绘制处理后的每一灯光组中的灯光信息进行颜色绘制处理,将模板标记为第一预设值的物体像素进行光照绘制。
149.根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例提供的各种可选实现方式中提供的方法。
150.以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
151.其中,该计算机可读存储介质可以包括:只读存储器(rom,read only memory)、随机存取记忆体(ram,random access memory)、磁盘或光盘等。
152.由于该计算机可读存储介质中所存储的指令,可以执行本申请实施例所提供的任一种信息处理方法中的步骤,因此,可以实现本申请实施例所提供的任一种信息处理方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
153.以上对本申请实施例所提供的一种信息处理方法、装置及计算机可读存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。