CN117611723A - 显示信息的处理方法及设备 - Google Patents
显示信息的处理方法及设备 Download PDFInfo
- Publication number
- CN117611723A CN117611723A CN202311688362.XA CN202311688362A CN117611723A CN 117611723 A CN117611723 A CN 117611723A CN 202311688362 A CN202311688362 A CN 202311688362A CN 117611723 A CN117611723 A CN 117611723A
- Authority
- CN
- China
- Prior art keywords
- rendering
- layer
- display information
- synthesizer
- augmented reality
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 18
- 230000010365 information processing Effects 0.000 title description 4
- 238000009877 rendering Methods 0.000 claims abstract description 368
- 238000000034 method Methods 0.000 claims abstract description 71
- 230000003190 augmentative effect Effects 0.000 claims abstract description 59
- 230000002452 interceptive effect Effects 0.000 claims abstract description 57
- 230000002194 synthesizing effect Effects 0.000 claims abstract description 13
- 238000012545 processing Methods 0.000 claims description 54
- 230000008569 process Effects 0.000 claims description 39
- 230000015572 biosynthetic process Effects 0.000 claims description 19
- 238000003786 synthesis reaction Methods 0.000 claims description 19
- 238000013507 mapping Methods 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 13
- 238000010586 diagram Methods 0.000 description 11
- 239000002131 composite material Substances 0.000 description 10
- 230000006870 function Effects 0.000 description 8
- 238000006243 chemical reaction Methods 0.000 description 5
- 238000004040 coloring Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 238000012805 post-processing Methods 0.000 description 5
- 239000000284 extract Substances 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 239000000463 material Substances 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 239000003086 colorant Substances 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 210000000887 face Anatomy 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 238000000844 transformation Methods 0.000 description 1
- 230000000007 visual effect Effects 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/10—Geometric effects
- G06T15/20—Perspective computation
- G06T15/205—Image-based rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Geometry (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Processing Or Creating Images (AREA)
Abstract
本公开实施例提供一种显示信息的处理方法及设备,该方法包括:获取扩展现实对应的当前显示信息,所述当前显示信息包括扩展现实内容对应的第一图层和交互界面对应的第二图层;对第一图层中的第一渲染对象使用第一渲染流程进行渲染,得到第一渲染结果;对第二图层中的第二渲染对象使用第二渲染流程进行渲染,得到第二渲染结果;对所述第一渲染结果和第二渲染结果进行合成,得到当前显示图像。改善了相关技术中由于将三维交互界面作为三维场景与扩展现实内容同时进行渲染导致的三维交互界面清晰度下降的现象。
Description
技术领域
本公开实施例涉及图像处理技术领域,尤其涉及一种显示信息的处理方法及设备。
背景技术
在扩展现实应用场景中,可以在扩展现实的场景中添加三维交互界面。通过上述三维交互界面,用户可以与扩展现实内容进行交互。
相关技术中,将上述三维交互界面作为场景的一部分,与扩展现实内容对应的场景一同进行对象渲染。发明人发现,上述对象渲染过程包括多次采样以及后处理,上述多次采样及后处理将会导致显示场景时所显示的三维交互界面清晰度较低的现象,致使用户的阅读体验不佳。
发明内容
本公开实施例提供一种显示信息的处理方法及设备,以克服相关技术中由于将交互界面作为场景的一部分与扩展现实内容一同进行对象渲染,导致的三维场景中的交互界面显示清晰度降低,用户阅读体验不佳的问题。
第一方面,本公开实施例提供一种显示信息的处理方法,包括:获取扩展现实对应的当前显示信息,所述当前显示信息包括扩展现实内容对应的第一图层和交互界面对应的第二图层;对第一图层中的第一渲染对象使用第一渲染流程进行渲染,得到第一渲染结果;对第二图层中的第二渲染对象使用第二渲染流程进行渲染,得到第二渲染结果;对所述第一渲染结果和第二渲染结果进行合成,得到当前显示图像。
第二方面,本公开实施例提供一种显示信息的处理设备,包括:获取单元,用于获取扩展现实对应的当前显示信息,所述当前显示信息包括扩展现实内容对应的第一图层和交互界面对应的第二图层;第一渲染单元,用于对第一图层中的第一渲染对象使用第一渲染流程进行渲染,得到第一渲染结果;第二渲染单元,用于对第二图层中的第二渲染对象使用第二渲染流程进行渲染,得到第二渲染结果;合成单元,用于对所述第一渲染结果和第二渲染结果进行合成,得到当前显示图像。
第三方面,本公开实施例提供一种电子设备,包括:处理器和存储器;所述存储器存储计算机执行指令;所述处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如上第一方面以及第一方面各种可能的设计所述显示信息的处理方法。
第四方面,本公开实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上第一方面以及第一方面各种可能的设计上述显示信息的处理方法。
第五方面,本公开实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上第一方面以及第一方面各种可能的设计所述显示信息的处理方法。
本实施例提供的显示信息的处理方法及设备,首先获取扩展现实对应的当前显示信息,所述当前显示信息包括扩展现实内容对应的第一图层和交互界面对应的第二图层;然后对第一图层中的第一渲染对象使用第一渲染流程进行渲染,得到第一渲染结果;对第二图层中的第二渲染对象使用第二渲染流程进行渲染,得到第二渲染结果;最后对所述第一渲染结果和第二渲染结果进行合成,得到当前显示图。上述方案通过利用第一渲染流程对扩展现实内容对应的第一渲染对象进行渲染,利用第二渲染流程对交互界面对应的渲染对象进行渲染,实现了使用不同的渲染流程对扩展现实的渲染对象与交互界面对应的渲染对象分别进行渲染,避免了由于扩展现实内容的光影效果以及后处理对三维交互界面清晰度的影响。改善了由于将交互界面作为场景的一部分与扩展现实内容一同进行对象渲染,导致的三维场景中的交互界面显示清晰度降低的问题,可以提高用户阅读体验。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为相关技术中三维交互界面的显示信息处理过程的示意图;
图2为本公开实施例提供的显示信息的处理方法的流程示意图一;
图3为本公开实施例提供的显示信息的处理方法的流程示意图二;
图4为本公开实施例提供的显示信息的处理方法的一种原理性流程图;
图5为本公开实施例提供的显示信息的处理设备的结构框图;
图6为本公开实施例提供的显示信息的处理设备的硬件结构示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
请参考图1,其示出了相关技术中三维交互界面的显示信息处理过程的示意图。
相关技术中,使用虚幻引擎来生成高质量的扩展现实三维场景图像。三维场景图像中可以包括三维交互界面和扩展现实内容。三维交互界面可以用于用户与扩展现实内容进行交互。
如图1所示,预设虚幻引擎11可以调用Widget组件创建三维交互界面的图层(如图1的UI图层)。将上述UI图层作为场景3D面片输出到扩展现实三维场景中,作为三维场景的一部分。使用虚幻引擎提供的渲染管线对上述三维场景中的面片进行渲染处理,处理成可以在显示屏上显示的各个像素单元。
具体地,上述渲染处理包括:首先进行冗余数据剔除,如以包围盒为单位的视椎体(粗粒度)剔除、遮挡剔除和层级剔除等。然后,对冗余数据剔除后的3D面片设置渲染状态。渲染状态包括着色器、纹理、材质和灯光等;接着调用DrawCall输出渲染图元到显存。然后由显存主要进行顶点着色、投影、裁剪和屏幕映射等。最后进行像素着色、后期处理和光影明暗处理等。
经过上述渲染处理过程得到双目渲染对象。预设虚幻引擎11将双目渲染对象的多个图层发送给合成器12。上述多个图层可以承载多个渲染结果。上述渲染结果可以为扩展现实内容的渲染对象和交互界面的渲染对象的混合渲染结果。合成器对多个图层(如图1中的图层1、图层2和图层3)进行图层排序,然后对排序后的图层进行合成,得到可显示图像数据。
在上述处理过程中,三维交互界面中的渲染对象与扩展现实内容中的渲染对象一同经过上述渲染过程。上述渲染处理存在的多次采样会使得三维交互界面的清晰度降低。另外经过上述渲染过程的后期处理以及光影明暗变化的影响,也将会使得三维交互界面的清晰度丢失,模糊感增强,导致用户的阅读体验降低。
为了改善上述问题,本公开提供将扩展现实内容对应的渲染对象与交互界面对应的渲染对象使用不同的渲染流程分别进行渲染的方案,从而改善相关技术中将交互界面作为场景的一部分与扩展现实内容一同进行对象渲染,导致的三维场景中的交互界面显示清晰度降低,用户阅读体验不佳的问题。
请参考图2,图2是本公开实施例提供的显示信息的处理方法的流程示意图一。该方法可以应用于扩展现实终端或者服务器。如图2所示,该方法包括如下步骤:
S201:获取扩展现实场景对应的当前显示信息,当前现实信息包括扩展现实内容对应的第一图层和交互界面对应的第二图层。
这里的扩展现实场景可以包括虚拟现实(Virtual Reality,VR)场景、增强现实(Augmented Reality,AR)场景或混合现实(Mixed Reality,MR)场景。
在一些应用场景中,上述扩展现实场景可以是VR游戏场景。在上述VR游戏场景中,可以包括多帧VR内容以及多帧三维交互界面。上述当前显示信息可以包括待显示的当前帧VR内容以及当前三维交互界面。
上述三维交互界面可以包括用于用户与扩展现实内容进行交互的可操作按钮、对话框、下拉列表等。
这里的扩展现实内容对应的第一图层可以包括扩展现实内容对应的多个图层。交互界面对应的第二图层可以包括交互界面对应的多个图层。
上述交互界面可以是三维交互界面。
S202:对第一图层中的第一渲染对象使用第一渲染流程进行渲染,得到第一渲染结果。
渲染的任务是从一个三维场景出发,将三维场景进行渲染生成二维图像供人眼观察。渲染任务由中央处理器(Central Processing Unit,CPU)和图形处理器(GraphicsPocessing Unit,GPU)配合,将三维场景中各个渲染对象的坐标,纹理,材质等信息经一系列转换,生成人眼可以看见的图像数据。
这里的第一渲染对象可以包括第一图层中的多个渲染对象。具体的第一渲染对象可以根据扩展现实的场景进行设置,此处不进行限制。
上述第一渲染流程可以包括相关渲染管道(rendering pipeline)对应的多个渲染步骤。上述第一渲染流程可以包括应用阶段、几何阶段、光栅化阶段和像素处理阶段。
应用阶段可以由CPU执行。应用阶段可以包括:准备第一渲染对象的场景数据(包括视椎体、模型、光源等)、冗余数据剔除,如以包围盒为单位的视椎体(粗粒度)剔除、遮挡剔除和层级剔除等。将冗余数据剔除后的3D面片设置渲染状态。渲染状态包括着色器、纹理、材质、灯光等。应用阶段可以输出渲染第一渲染对象所需的几何信息,也即渲染图元,渲染图元包括点、线、三角面等。
然后调用DrawCall输出渲染图元到显存。几何阶段和光栅化阶段可以由GPU执行。在几何阶段,主要进行顶点着色、投影、裁剪、屏幕映射等。
顶点着色是通过已有的信息,可以给这些顶点添加一些属性(颜色、材质、发现),或者做修改(例如调整位置等),确定顶点在画布上的位置。
上述投影包括利用预设投影矩阵实现透视投影或者正交投影。
裁剪是将第一渲染对象那些不在摄像机视野(人眼)内的顶点裁剪掉,并剔除某些三角图元的面片。例如,可以使用自定义裁剪平面来配置裁剪区域,也可以通过指令控制裁剪三角图元的正面还是背面。
屏幕映射:将第一渲染对象的每个图元的坐标转换到屏幕坐标系中。
在光栅化阶段,将第一渲染对象图元转换为像素,生成片元。根据图元是否跨过像素的中心点遍历出图元所需要覆盖的像素区域。
片元是渲染一个像素所需要的所有数据。计算每个图元覆盖了屏幕哪些像素,为这些像素计算颜色,将图元所需的像素信息(包括覆盖哪些像素区域以及各像素颜色)生成片元。
像素处理阶段:处理像素点,给像素点上色和处理片元位置。这些处理后的像素点就是位图。在给像素点上色时,使用片元着色器给每一个像素点赋予正确的颜色。颜色的信息是通过顶点,纹理,光照信息得到的。上述第一渲染结果可以为第一渲染对象的可在显示屏上显示的二维图像数据。
在一些应用场景中,上述步骤S202可以包括利用预设虚幻引擎对第一渲染对象使用第一渲染流程对第一渲染对象进行渲染。
在这些应用场景中,显示信息的处理方法的执行主体可以运行预设虚幻引擎。上述第一渲染流程可以为由预设虚幻引擎提供的渲染流程。
通过由预设虚幻引擎对第一渲染对象使用第一渲染流程进行渲染,可以简化对第一渲染对象进行渲染的操作复杂度。
S203:对第二图层中的第二渲染对象使用第二渲染流程进行渲染,得到第二渲染结果。
这里的第二图层可以包括交互界面对应的多个图层。上述第二渲染对象可以包括第二图层中的多个渲染对象。作为示意性说明,上述第二渲染对象包括但不限于:可操作按钮、对话框、下拉列表、文字或图形等。
上述第二渲染流程可以独立于第一渲染流程。
在一些应用场景中,上述步骤S203包括:利用预设虚幻引擎对第二渲染对象使用第二渲染流程进行渲染。
在这些应用场景中,第二渲染流程可以包括由预设虚幻引擎提供的渲染管道所包括的多个渲染步骤。
在这些应用场景中,上述第二渲染流程可以包括应用阶段、几何阶段和光栅化阶段。详细的第二渲染流程可以参考第一渲染流程相关部分的描述。
上述第二渲染结果可以包括第二渲染对象对应的可在显示屏上显示的二维图像数据。
需要说明的是,上述步骤S202和S203之间没有先后之分。二者可以同步执行,也可以分步执行。
S204:对第一渲染结果和第二渲染结果进行合成,得到当前显示图像。
上述第一渲染结果可以包括第一图层中的多个渲染对象分别对应的渲染结果。上述第一渲染结果可以位于第一渲染层。在一些应用场景中,第一图层中的不同渲染对象可以对应不同的渲染层。在这些应用场景中,上述第一渲染层可以包括多个第一子渲染层。多个第一子渲染层可以分别承载第一图层中的不同渲染对象的渲染结果。
同理,第二渲染结果可以包括第二图层中的多个渲染对象对应的渲染结果。上述第二渲染结果可以位于第二渲染层。上述第二渲染层可以包括多个第二子渲染层。多个第二子渲染层可以分别承载第二图层中的不同渲染对象的渲染结果。
这里将第一渲染结果与第二渲染结果进行合成,具体可以将第一渲染结果和第二渲染结果分别对应的第一渲染层和第二渲染层执行合成操作,从而得到当前显示图像。
上述合成操作包括将第一渲染层包括的多个第一子渲染层合成为至少一个第二合成层。将多个第二子渲染层按照预设顺序进行排序,根据排序结果将多个第二子渲染层合成为至少一个第一合成层。然后再将第一合成层和第二合成层合成为一张图片。
上述合成操作可以包括图层的几何变化、透明度变换和阴影设置等。
经过上述合成之后,可以得到在显示屏上显示为一张图片的图像数据。上述图像数据中可以包括交互界面的图像数据和扩展现实内容的图像数据。
本实施例提供的显示信息的处理方法,通过利用第一渲染流程对扩展现实内容对应的第一渲染对象进行渲染,利用第二渲染流程对交互界面对应的渲染对象进行渲染,实现了使用互相独立的渲染流程分别对扩展现实的渲染对象与交互界面对应的渲染对象进行渲染,避免了由于将交互界面作为场景的一部分与扩展现实内容一同进行对象渲染,导致的三维场景中的交互界面显示清晰度降低的问题,便于用户快速浏览交互界面中的内容。
请参考图3,图3是本公开实施例提供的显示信息的处理方法的流程示意图二。该方法可以应用于扩展现实终端或者服务器。如图3所示,该方法包括如下步骤:
S301:获取扩展现实对应的当前显示信息,当前显示信息包括扩展现实内容对应的第一图层和交互界面对应的第二图层。
步骤S301的具体实施可以与图2所示实施例的步骤S201的具体实施相同或相似,此处不赘述。
S302:利用预设虚幻引擎提供的第一渲染流程对第一渲染对象进渲染。
在本实施例中,可以由预设虚幻引擎执行第一渲染流程。
这里的预设虚幻引擎可以是各种可以对三维图像进行渲染的引擎。上述第一渲染流程可以是预设虚幻引擎提供的渲染流程。
第一渲染流程可以包括:应用阶段、几何阶段、光栅化阶段和像素处理阶段。
第一渲染流程的各个阶段的描述可以参考图2所示实施例的相关描述,此处不赘述。
S303:对第二图层中的第二渲染对象使用第二渲染流程进行渲染,得到第二渲染结果。
S304:对第一渲染结果和第二渲染结果进行合成,得到当前显示图像。
在本实施例中,第二渲染流程与第一渲染流程互相独立。
第二渲染流程包括屏幕映射、光栅化和像素处理。
屏幕映射可以将交换界面中的第二渲染对象的图元的坐标转换到屏幕坐标系中。
光栅化将第二渲染对象的图元转换为像素,生成片元。
像素处理,给像素点上色和处理片元位置,得到可以显示的位图。
在本实施例中,上述步骤S303包括:
利用虚幻引擎提供的屏幕映射流程,将第二渲染对象的世界空间坐标转换至屏幕空间坐标;用合成器对转换值屏幕空间坐标的第二渲染对象进行光栅化和像素处理。
上述虚幻引擎中包括控件(Widget)组件。使用控件组件可以在扩展现实场景中创建三维交互界面中的交互元素(第二渲染对象),通过控件组件可以设置3D界面交互元素的图层以及交互元素的属性。上述属性包括空间(位置)属性、绘制大小等。
可以利用虚幻引擎提供的屏幕映射流程进行坐标转换,将第二渲染对象的三维坐标(世界坐标)转换为屏幕坐标系。实践中,可以使用预先建立的三维坐标系与屏幕坐标系之间的坐标转换矩阵进行坐标转换。
合成器可以是运行在底层的Runtime合成器。通常合成器可以对不同图层进行合成,得到可以在屏幕上显示的图像数据。Runtime合成器可以运行在GPU中。
在本实施例中,可以在合成器中设置第二渲染流程中的光栅化和像素处理流程,得到对第二渲染对象的第二渲染结果。在一些实施例中,上述合成器可以运行在可穿戴式扩展现实显示设备中。
本实施例中,利用虚幻引擎提供的第一渲染流程渲染第一渲染对象;利用虚幻引擎提供的屏幕映射流程,将第二渲染对象的世界空间坐标转换至屏幕空间坐标,用合成器对转换值屏幕空间坐标的第二渲染对象进行光栅化和像素处理,一方面由虚幻引擎提供的第一渲染流程对第一渲染对象进行渲染,结合虚幻引擎和合成器对第二渲染对象进行渲染,从而可以避免将交互界面作为扩展现实内容的一部分进行渲染时由于多次采样造成的界面内容模糊现象,另一方面提高了对虚拟场景整体的渲染效率。
在一些可选的实现方式中,上述步骤S303包括:由合成器从第一存储地址中提取由预设虚幻引擎存入的第二渲染对象,对第二渲染对象进行光栅化和像素处理。
由于上述合成器通常是运行在底层的Runtime合成器,而第二渲染对象通常由上层应用获取,例如由预设虚幻引擎获取。上层应用需要将所获取的第二渲染对象通过透传方式传入合成器中。
具体地,预设虚幻引擎可以通过合成器对应的第一预设接口,例如Runtime库函数提供的第一预设接口,获取合成器对应的用于存储第二渲染对象的第一存储地址。预设虚幻引擎将第二渲染对象存储至上述第一存储地址。
在一些可选的实现方式中,上述第二渲染对象由预设引擎基于如下步骤存入第一存储地址:
首先,通过用于访问合成器的第一预设接口调用合成器为第二渲染对象创建第一合成层,对创建的第一合成层配置对应的第一存储地址。
其次,由虚幻引擎将第二渲染对象存入第一存储地址。
在这些可选的实现方式中,上述第一预设接口可以是由Runtime合成器库函数提供的接口。预设虚幻引擎可以通过上述第一预设接口访问合成器,并向合成器发送创建第一合成层的创建指令。合成器根据创建指令创建第一合成层,并对所创建的第一合成层配置对应第一存储地址。合成器可以通过上述第一预设接口将第一存储地址的信息传输给虚幻引擎。虚幻引擎在接收到上述第一存储地址后,可以将第二渲染对象存储到第一存储地址中。
合成器所创建的第一合成层可以是空白的合成层。在本实施例中,该第一合成层可以是用于承载第二渲染对象对应的图层。
合成器可以将所创建的第一合成层对应的第一存储地址通过上述第一预设接口返回给预设虚幻引擎。
在一些应用场景中,上述合成器可以将第一存储地址进行格式转换,将第一存储地址的格式转换为可以由上层应用(如预设虚幻引擎)访问的格式。
预设虚幻引擎可以将第二渲染对象存入上述第一存储地址。
在一些应用场景中,上述将第二渲染对象存入第一存储地址,包括:将第二渲染对象的格式转换为合成器可读格式,将合成器可读格式的第二渲染对象存入第一存储地址。
在这些应用场景中,上述第二渲染对象的原本格式可以为预设虚幻引擎可读的格式。为了便于合成器对第二渲染对象进行处理,上述预设虚幻引擎可以将第二渲染对象的格式进行转换,将第二渲染对象的格式转换为合成器可读的格式。这样一来,在合成器对第二渲染对象进行渲染处理时,无需对第二渲染对象进行格式转换,提高了合成器对第二渲染对象进行渲染的效率。
请参考图4,图4示出了本公开实施例提供的显示信息处理方法的一种原理性流程图。
如图4所示,该方法由预设虚幻引擎41和合成器42共同完成。预设虚幻引擎41可以基于引擎Widget组件创建扩展现实内容的第一图层和交互界面(User Interface,UI)对应的第二图层(如图中的UI图层)。对第一图层进行渲染的第一渲染流程可以参考图1所示实施例的部分,对第一图层进行第一渲染流程的渲染可以得到第一渲染图层。
上述预设虚幻引擎41可以获取UI图层的第二渲染对象。具体地,例如将第二图层进行解析,从第二图层中解析出第二渲染对象。可以将第二渲染对象存储至预设虚幻引擎41对应的UI地址。作为示意性说明,UI地址可以是用于存储交互界面的第二渲染对象的缓存地址。
预设虚幻引擎41在创建UI图层后,可以通过第一预设接口调用合成器创建第一合成层。合成器42可以创建第一合成层,并确定第一合成层对应的第一存储地址。合成器42通过第一预设接口将第一存储地址返回给预设虚幻引擎41。预设虚幻引擎41可以创建引擎中合成层封装。这里的创建引擎中合成层封装可以是将合成器42对应格式的第一存储地址转换为预设虚幻引擎41可识别格式的第一存储地址。
对于待显示的当前帧显示信息,预设虚幻引擎41可以从UI地址中提取当前帧显示信息对应的第二渲染对象。并将当前帧显示信息对应的第二渲染对象存入第一存储地址。合成器42可以在第一存储地址中获取上述第二渲染对象。第二渲染对象可以对应第二图层中不同渲染对象分别对应的图层。第一合成层可以包括图层1、图层2、图层3和图层4中可以承载不同的第二渲染对象。合成器42可以对包括图层1、图层2、图层3和图层4和第一渲染图层在内的多个图层进行图层排序。例如可以按照图层之间的遮挡关系将多个图层进行排序。将完全不被遮挡的图层放置在前,将部分被遮挡的图层放置在后。
将图层排序后,可以对每一图层的第二渲染对象进行渲染。具体地,对于一图层的第二渲染对象,利用虚幻引擎的屏幕映射流程将第二渲染对象的世界空间坐标转换至屏幕空间坐标,合成器再从第一存储地址从提取该图层的第二渲染对象,对第二渲染对象进行光栅化和像素处理,得到第二渲染结果。
最后合成器42将对各图层的渲染结果根据各自的屏幕空间坐标进行合成,得到当前帧显示信息对应的可显示图像数据。
对应于上文实施例的显示信息的处理方法,图5为本公开实施例提供的显示信息的处理设备的结构框图。为了便于说明,仅示出了与本公开实施例相关的部分。参照图5,设备50包括:获取单元501、第一渲染单元502、第二渲染单元503和合成单元504。其中,
获取单元501,用于获取扩展现实对应的当前显示信息,当前显示信息包括扩展现实内容对应的第一图层和交互界面对应的第二图层;
第一渲染单元502,用于对第一图层中的第一渲染对象使用第一渲染流程进行渲染,得到第一渲染结果;
第二渲染单元503,用于对第二图层中的第二渲染对象使用第二渲染流程进行渲染,得到第二渲染结果;
合成单元504,用于对第一渲染结果和第二渲染结果进行合成,得到当前显示图像。
在本公开的一个实施例中,第一渲染单元502,具体用于:
利用预设虚幻引擎提供的第一渲染流程对第一渲染对象进渲染,其中,
第一渲染流程包括:应用阶段、几何阶段、光栅化阶段和像素处理阶段。
在本公开的一个实施例中,第二渲染流程至少包括一下中的一项或多项:
屏幕映射、光栅化和像素处理。
在本公开的一个实施例中,第二渲染单元503,具体用于:
利用虚幻引擎提供的屏幕映射流程,将第二渲染对象的世界空间坐标转换至屏幕空间坐标;
利用合成器对转换值屏幕空间坐标的第二渲染对象进行光栅化和像素处理。
在本公开的一个实施例中,第二渲染单元503,具体用于:
由合成器从第一存储地址中提取由预设虚幻引擎存入的第二渲染对象,以由合成器对第二渲染对象执行相应渲染操作。
在本公开的一个实施例中,第二渲染单元503,具体用于:
通过用于访问合成器的第一预设接口调用合成器为第二渲染对象创建第一合成层,对创建的第一合成层配置对应的第一存储地址;
由虚幻引擎将第二渲染对象存入第一存储地址。
在本公开的一个实施例中,第二渲染单元503,具体用于:将第二渲染对象的格式转换为合成器可读格式,将合成器可读格式的第二渲染对象存入第一存储地址。
为了实现上述实施例,本公开实施例还提供了一种电子设备。
参考图6,其示出了适于用来实现本公开实施例的电子设备600的结构示意图,该电子设备600可以为扩展现实设备、终端设备。其中,终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、个人数字助理(Personal Digital Assistant,简称PDA)、平板电脑(Portable Android Device,简称PAD)、便携式多媒体播放器(PortableMedia Player,简称PMP)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图6示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图6所示,电子设备600可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(Read Only Memory,简称ROM)602中的程序或者从存储装置608加载到随机访问存储器(Random Access Memory,简称RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有电子设备600操作所需的各种程序和数据。处理装置601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
通常,以下装置可以连接至I/O接口605:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(Liquid CrystalDisplay,简称LCD)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备600与其他设备进行无线或有线通信以交换数据。虽然图6示出了具有各种装置的电子设备600,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从ROM 602被安装。在该计算机程序被处理装置601执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备执行上述实施例所示的方法。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LocalArea Network,简称LAN)或广域网(Wide Area Network,简称WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,获取单元还可以被描述为“获取扩展现实对应的当前显示信息的单元”。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
第一方面,根据本公开的一个或多个实施例,提供了一种显示信息的处理方法,包括:
获取扩展现实对应的当前显示信息,当前显示信息包括扩展现实内容对应的第一图层和交互界面对应的第二图层;
对第一图层中的第一渲染对象使用第一渲染流程进行渲染,得到第一渲染结果;
对第二图层中的第二渲染对象使用第二渲染流程进行渲染,得到第二渲染结果;
对第一渲染结果和第二渲染结果进行合成,得到当前显示图像。
根据本公开的一个或多个实施例,利用预设虚幻引擎提供的第一渲染流程对第一渲染对象进渲染,其中,
第一渲染流程包括:应用阶段、几何阶段、光栅化阶段和像素处理阶段。
根据本公开的一个或多个实施例,第二渲染流程至少包括一下中的一项或多项:
屏幕映射、光栅化和像素处理。
根据本公开的一个或多个实施例,该方法还包括:
利用虚幻引擎提供的屏幕映射流程,将第二渲染对象的世界空间坐标转换至屏幕空间坐标;
利用合成器对转换值屏幕空间坐标的第二渲染对象进行光栅化和像素处理。
根据本公开的一个或多个实施例,该方法还包括:
由合成器从第一存储地址中提取由预设虚幻引擎存入的第二渲染对象,以由合成器对第二渲染对象执行相应渲染操作。
根据本公开的一个或多个实施例,该方法还包括:
通过用于访问合成器的第一预设接口调用合成器为第二渲染对象创建第一合成层,对创建的第一合成层配置对应的第一存储地址;
由虚幻引擎将第二渲染对象存入第一存储地址。
根据本公开的一个或多个实施例,由虚幻引擎将第二渲染对象存入第一存储地址,包括:
将第二渲染对象的格式转换为合成器可读格式,将合成器可读格式的第二渲染对象存入第一存储地址。
第二方面,根据本公开的一个或多个实施例,提供了一种显示信息的处理设备,包括:
获取单元,用于获取扩展现实对应的当前显示信息,当前显示信息包括扩展现实内容对应的第一图层和交互界面对应的第二图层;
第一渲染单元,用于对第一图层中的第一渲染对象使用第一渲染流程进行渲染,得到第一渲染结果;
第二渲染单元,用于对第二图层中的第二渲染对象使用第二渲染流程进行渲染,得到第二渲染结果;
合成单元,用于对第一渲染结果和第二渲染结果进行合成,得到当前显示图像。
根据本公开的一个或多个实施例,第一渲染单元,具体用于:
利用预设虚幻引擎提供的第一渲染流程对第一渲染对象进渲染,其中,
第一渲染流程包括:应用阶段、几何阶段、光栅化阶段和像素处理阶段。
在本公开的一个实施例中,第二渲染流程至少包括一下中的一项或多项:
屏幕映射、光栅化和像素处理。
根据本公开的一个或多个实施例,第二渲染单元,具体用于:
利用虚幻引擎提供的屏幕映射流程,将第二渲染对象的世界空间坐标转换至屏幕空间坐标;
利用合成器对转换值屏幕空间坐标的第二渲染对象进行光栅化和像素处理。
根据本公开的一个或多个实施例,第二渲染单元,具体用于:
由合成器从第一存储地址中提取由预设虚幻引擎存入的第二渲染对象,以由合成器对第二渲染对象执行相应渲染操作。
根据本公开的一个或多个实施例,第二渲染单元,具体用于:
通过用于访问合成器的第一预设接口调用合成器为第二渲染对象创建第一合成层,对创建的第一合成层配置对应的第一存储地址;
由虚幻引擎将第二渲染对象存入第一存储地址。
根据本公开的一个或多个实施例,第二渲染单元,具体用:
将第二渲染对象的格式转换为合成器可读格式,将合成器可读格式的第二渲染对象存入第一存储地址。
第三方面,根据本公开的一个或多个实施例,提供了一种电子设备,包括:至少一个处理器和存储器;
存储器存储计算机执行指令;
至少一个处理器执行存储器存储的计算机执行指令,使得至少一个处理器执行如上第一方面以及第一方面各种可能涉及的显示信息的处理方法。
第四方面,根据本公开的一个或多个实施例,提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机执行指令,当处理器执行计算机执行指令时,实现如上第一方面以及第一方面各种可能涉及的的显示信息的处理方法。
第五方面,根据本公开的一个或多个实施例,提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时实现如上第一方面以及第一方面各种可能涉及的显示信息的处理方法
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
Claims (11)
1.一种显示信息的处理方法,包括:
获取扩展现实对应的当前显示信息,所述当前显示信息包括扩展现实内容对应的第一图层和交互界面对应的第二图层;
对第一图层中的第一渲染对象使用第一渲染流程进行渲染,得到第一渲染结果;
对第二图层中的第二渲染对象使用第二渲染流程进行渲染,得到第二渲染结果;
对所述第一渲染结果和第二渲染结果进行合成,得到当前显示图像。
2.根据权利要求1所述的方法,其特征在于,所述对第一图层中的第一渲染对象使用第一渲染流程进行渲染,得到第一渲染结果,包括:
利用预设虚幻引擎提供的第一渲染流程对所述第一渲染对象进渲染,其中,
所述第一渲染流程包括:应用阶段、几何阶段、光栅化阶段和像素处理阶段。
3.根据权利要求1所述的方法,其特征在于,所述第二渲染流程至少包括一下中的一项或多项:
屏幕映射、光栅化和像素处理。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
利用虚幻引擎提供的屏幕映射流程,将第二渲染对象的世界空间坐标转换至屏幕空间坐标;
利用合成器对转换值屏幕空间坐标的第二渲染对象进行光栅化和像素处理。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
由合成器从第一存储地址中提取由预设虚幻引擎存入的第二渲染对象,以由所述合成器对所述第二渲染对象执行相应渲染操作。
6.根据权利要求4所述的方法,其特征在于,所述方法还包括:
通过用于访问合成器的第一预设接口调用所述合成器为第二渲染对象创建第一合成层,对所述创建的第一合成层配置对应的第一存储地址;
由虚幻引擎将第二渲染对象存入所述第一存储地址。
7.根据权利要求6所述的方法,其特征在于,所述由虚幻引擎将第二渲染对象存入所述第一存储地址,包括:
将所述第二渲染对象的格式转换为合成器可读格式,将合成器可读格式的第二渲染对象存入所述第一存储地址。
8.一种显示信息的处理设备,包括:
获取单元,用于获取扩展现实对应的当前显示信息,所述当前显示信息包括扩展现实内容对应的第一图层和交互界面对应的第二图层;
第一渲染单元,用于对第一图层中的第一渲染对象使用第一渲染流程进行渲染,得到第一渲染结果;
第二渲染单元,用于对第二图层中的第二渲染对象使用第二渲染流程进行渲染,得到第二渲染结果;
合成单元,用于对所述第一渲染结果和第二渲染结果进行合成,得到当前显示图像。
9.一种电子设备,其特征在于,包括:处理器和存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,使得所述处理器执行如权利要求1至7任一项所述的显示信息的处理方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1至7任一项所述的显示信息的处理方法。
11.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的显示信息的处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311688362.XA CN117611723A (zh) | 2023-12-11 | 2023-12-11 | 显示信息的处理方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311688362.XA CN117611723A (zh) | 2023-12-11 | 2023-12-11 | 显示信息的处理方法及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117611723A true CN117611723A (zh) | 2024-02-27 |
Family
ID=89956147
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311688362.XA Pending CN117611723A (zh) | 2023-12-11 | 2023-12-11 | 显示信息的处理方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117611723A (zh) |
-
2023
- 2023-12-11 CN CN202311688362.XA patent/CN117611723A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10614549B2 (en) | Varying effective resolution by screen location by changing active color sample count within multiple render targets | |
CN111033570B (zh) | 使用两个渲染计算装置从计算机图形渲染图像 | |
TWI618030B (zh) | 藉由追蹤物件及/或基元識別符的圖形處理增強之方法及系統,圖形處理單元及非暫時性電腦可讀媒體 | |
EP3121786B1 (en) | Graphics pipeline method and apparatus | |
US10776997B2 (en) | Rendering an image from computer graphics using two rendering computing devices | |
EP2245598B1 (en) | Multi-buffer support for off-screen surfaces in a graphics processing system | |
RU2427918C2 (ru) | Метафора двумерного редактирования для трехмерной графики | |
CN110989878B (zh) | 小程序中的动画展示方法、装置、电子设备及存储介质 | |
KR20100004119A (ko) | 포스트-렌더링 그래픽스 오버레이 | |
EP4290464A1 (en) | Image rendering method and apparatus, and electronic device and storage medium | |
CN113313802B (zh) | 图像渲染方法、装置、设备及存储介质 | |
JP2023553507A (ja) | 特注仕様製品の合成データ表示の高品質レンダリング表示を得るためのシステムおよびその方法 | |
CN112884874A (zh) | 在虚拟模型上贴花的方法、装置、设备及介质 | |
EP1922700B1 (en) | 2d/3d combined rendering | |
CN114758051A (zh) | 一种图像渲染方法及其相关设备 | |
JP7160495B2 (ja) | 画像前処理方法、装置、電子機器及び記憶媒体 | |
US11302054B2 (en) | Varying effective resolution by screen location by changing active color sample count within multiple render targets | |
CN117611723A (zh) | 显示信息的处理方法及设备 | |
KR20240093463A (ko) | 메시릿 셰이딩 아틀라스 | |
CN115391692A (zh) | 视频处理方法和装置 | |
CN114565686A (zh) | 视频处理方法、装置、电子设备及可读存储介质 | |
KR20220164484A (ko) | 섀도우 정보를 이용한 렌더링 | |
JPH09190547A (ja) | 画像合成表示装置および方法 | |
Burnett | 29‐1: Common Triangle Optimizations and Coarse Pixel Shading for Foveated Rendering Acceleration | |
WO2024091613A1 (en) | Method and system for ray tracing |
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 |