CN111726479A - 图像渲染的方法及装置、终端、可读存储介质 - Google Patents

图像渲染的方法及装置、终端、可读存储介质 Download PDF

Info

Publication number
CN111726479A
CN111726479A CN202010487040.9A CN202010487040A CN111726479A CN 111726479 A CN111726479 A CN 111726479A CN 202010487040 A CN202010487040 A CN 202010487040A CN 111726479 A CN111726479 A CN 111726479A
Authority
CN
China
Prior art keywords
rendered
rendering
depth information
depth
determining
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.)
Granted
Application number
CN202010487040.9A
Other languages
English (en)
Other versions
CN111726479B (zh
Inventor
陶作柠
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Pixel Software Technology Co Ltd
Original Assignee
Beijing Pixel Software Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Pixel Software Technology Co Ltd filed Critical Beijing Pixel Software Technology Co Ltd
Priority to CN202010487040.9A priority Critical patent/CN111726479B/zh
Publication of CN111726479A publication Critical patent/CN111726479A/zh
Application granted granted Critical
Publication of CN111726479B publication Critical patent/CN111726479B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/2224Studio circuitry; Studio devices; Studio equipment related to virtual studio applications
    • H04N5/2226Determination of depth image, e.g. for foreground/background separation
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Abstract

本申请提供一种图像渲染的方法及装置、终端、可读存储介质。图像渲染的方法,包括:获取当前场景中的待渲染对象;根据所述待渲染对象在所述当前场景中的渲染位置确定所述待渲染对象对应的预先构建的虚拟对象;根据所述待渲染对象的深度信息和所述对应的预先构建的虚拟对象的深度信息确定是否渲染所述待渲染对象;在确定不渲染所述待渲染对象时,不进行所述待渲染对象的渲染。该方法用以优化图像渲染过程,进而提高渲染效率。

Description

图像渲染的方法及装置、终端、可读存储介质
技术领域
本申请涉及图像处理技术领域,具体而言,涉及一种图像渲染的方法及装置、终端、可读存储介质。
背景技术
随着游戏行业的迅速发展,对游戏画面的要求也增高,因此游戏中的各个场景的复杂度也在增加,为了渲染出复杂的游戏场景,对于(渲染游戏场景/画面的)终端来说,渲染的压力也增大。
现有技术中,一般是根据场景物体的渲染顺序和物体的深度与预设的物体深度剔除条件来选择是否对物体进行遮挡处理。但是,物体深度剔除条件需要将实际的物体进行渲染后,才能得到。因此,现有技术的遮挡剔除方式仍然存在较大的渲染压力,导致渲染的效率较低。
发明内容
本申请实施例的目的在于提供一种图像渲染的方法及装置、终端、可读存储介质,用以优化图像渲染过程,进而提高渲染效率。
第一方面,本申请实施例提供一种图像渲染的方法,包括:获取当前场景中的待渲染对象;根据所述待渲染对象在所述当前场景中的渲染位置确定所述待渲染对象对应的预先构建的虚拟对象;根据所述待渲染对象的深度信息和所述对应的预先构建的虚拟对象的深度信息确定是否渲染所述待渲染对象;在确定不渲染所述待渲染对象时,不进行所述待渲染对象的渲染。
在本申请实施例中,预先构建有虚拟对象,并且该虚拟对象还有对应的深度信息;通过待渲染对象的深度信息和虚拟对象的深度信息能够判断是否渲染待渲染对象,即判断该待渲染对象在当前场景是否是可见的,若是可见的,说明没有被遮挡,需要进行渲染;若是不可见的,说明是被遮挡的,不进行渲染,以实现遮挡剔除。与现有技术相比,在预设剔除条件(深度信息)时,通过构建虚拟对象,来替代实际对象的渲染,虚拟对象(如一个简单的矩形)的渲染难度较小,更容易得到预设的深度信息,进而能够优化整个渲染,提高图像渲染的效率。
作为一种可能的实现方式,在所述获取当前场景中的待渲染对象之前,所述方法还包括:在所述当前场景中的不同位置处构建多个虚拟对象;确定构建的所述多个虚拟对象的深度信息,并记录所述多个虚拟对象的深度信息。
在本申请实施例中,在构建多个虚拟对象时,在当前场景中的不同位置处进行构建,并且记录对应的深度信息,能够快速地完成虚拟对象的构建,提高渲染的效率。
作为一种可能的实现方式,所述确定构建的所述多个虚拟对象的深度信息,并记录所述多个虚拟对象的深度信息,包括:通过Zbuffer确定并记录构建的所述多个虚拟对象的深度信息。
在本申请实施例中,可以通过Zbuffer来确定并记录虚拟对象的深度信息,提高深度信息的确定以及记录效率,进而提高渲染的效率。
作为一种可能的实现方式,在所述根据所述待渲染对象在所述当前场景中的渲染位置确定所述待渲染对象对应的预先构建的虚拟对象之前,所述方法还包括:获取所述待渲染对象的预设标识;所述预设标识用于表征所述待渲染对象是否需要进行渲染判断;对应的,所述根据所述待渲染对象在所述当前场景中的渲染位置确定所述待渲染对象对应的预先构建的虚拟对象,包括:当所述预设标识表征所述待渲染对象需要进行渲染判断时,根据所述待渲染对象在所述当前场景中的渲染位置确定所述待渲染对象对应的预先构建的虚拟对象。
在本申请实施例中,每个待渲染对象还可以预设标识,该预设标识可以表征待渲染对象是否需要进行渲染判断,进而可以减少不必要的渲染判断过程,提高渲染的效率。例如:很明显的不需要进行遮挡剔除的待渲染对象,就不需要进行渲染判断,可直接渲染。
作为一种可能的实现方式,所述根据所述待渲染对象的深度信息和所述对应的预先构建的虚拟对象的深度信息确定是否渲染所述待渲染对象,包括:将所述待渲染对象的深度信息与所述对应的预先构建的虚拟对象的深度信息进行比较;若所述待渲染对象的深度小于或者等于所述对应的预先构建的虚拟对象的深度,确定渲染所述待渲染对象;若所述待渲染对象的深度大于所述对应的预先构建的虚拟对象的深度,确定不渲染所述待渲染对象。
在本申请实施例中,在进行渲染判断时,可以将待渲染对象的深度与虚拟对象的深度进行比较,若待渲染对象的深度小于或者等于虚拟对象的深度,说明待渲染对象相对于虚拟对象所在的位置处是可以被看到的,因此,不需要剔除,可进行渲染;若待渲染对象的深度大于虚拟对象的深度,说明待渲染对象相对于虚拟对象所在的位置处是不可以被看到的,因此,需要剔除,不进行渲染。通过比较深度,实现快速准确地渲染判断,提高渲染的效率。
作为一种可能的实现方式,所述方法还包括:在确定渲染所述待渲染对象时,按照预设的渲染策略渲染所述待渲染对象。
在本申请实施例中,在渲染时,可以通过预设的渲染策略进行渲染,进而实现快速地渲染,提高渲染效率。
第二方面,本申请实施例提供一种图像渲染的装置,包括用于实现第一方面以及第一方面的任意一种可能的实现方式中所述的方法的功能模块。
第三方面,本申请实施例提供一种终端,包括:存储器、处理器以及显示器,所述存储器中存储有计算机程序指令,所述计算机程序指令被所述处理器读取并运行时,执行如第一方面以及第一方面的任意一种可能的实现方式中所述的方法。
第四方面,本申请实施例提供一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被计算机运行时执行如第一方面以及第一方面的任意一种可能的实现方式中所述的方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的摄像机视角的示意图;
图2为本申请实施例提供的图像渲染的方法的流程图;
图3为本申请实施例提供的虚拟对象的示意图;
图4为本申请实施例提供的虚拟对象与待渲染对象的对比举例图;
图5为本申请实施例提供的图像渲染的装置的功能模块结构框图;
图6为本申请实施例提供的终端的结构示意图。
图标:201-第一矩形;202-第二矩形;203-第一星形;204-第二星形;205-第三星形;300-图像渲染的装置;301-获取模块;302-第一确定模块;303-第二确定模块;304-渲染模块;400-终端;401-存储器;402-处理器;403-显示器。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
本申请实施例提供的图像渲染的方法可以应用于游戏场景中的物体的渲染,比如游戏场景中的花草树木等。也可以应用于其他需要进行图像渲染的场景,比如摄像机拍照等。并且,该图像渲染的方法可以应用于安装游戏的终端;或者安装各种拍照应用程序(如美图秀秀、美颜相机等)的终端;例如手机、电脑和平板等。
其中,对于摄像机来说,在摄像机的视角内并不是所有的物体都是可见的,因此,在渲染时,仅需要渲染摄像机可见的物体,而对摄像机的视角内不可见的物体不予渲染,即遮挡剔除。对于游戏场景内的摄像机,可以理解为游戏场景内的观察视角,即用户操控游戏时能够看到的一个观察视角。
为了便于理解遮挡剔除,可以参照图1,为本申请实施例提供的摄像机视角的示意图,可以看到,在摄像机的视角内可见的物体只有较小的矩形,以及较大的矩形的一部分,以及两个圆形中的其中一个圆形。
基于该应用场景,接下来请参照图2,为本申请实施例提供的图像渲染的方法的流程图,该方法包括:
步骤101:获取当前场景中的待渲染对象。
步骤102:根据待渲染对象在当前场景中的渲染位置确定待渲染对象对应的预先构建的虚拟对象。
步骤103:根据待渲染对象的深度信息和对应的预先构建的虚拟对象的深度信息确定是否渲染待渲染对象。
步骤104:在确定不渲染待渲染对象时,不进行待渲染对象的渲染。
在本申请实施例中,预先构建有虚拟对象,并且该虚拟对象还有对应的深度信息;通过待渲染对象的深度信息和虚拟对象的深度信息能够判断是否渲染待渲染对象,即判断该待渲染对象在当前场景是否可见,若可见,说明待渲染对象没有被遮挡,需要进行渲染;若不可见,说明待渲染对象被遮挡,不进行渲染,以实现遮挡剔除。与现有技术相比,在预设剔除条件(深度信息)时,通过构建虚拟对象,来替代实际对象的渲染,虚拟对象(如一个简单的矩形)的渲染难度较小,更容易得到预设的深度信息,进而能够优化整个渲染,提高图像渲染的效率。
接下来基于步骤101-步骤104对该图像渲染方法的实施方式进行介绍。
在步骤101中,当前场景中的待渲染对象可以理解为需要进行渲染的对象,以游戏场景为例,待渲染对象可以是在当前的游戏场景中的当前观察视角中所包含的一个或者物体,比如一座山、一棵树等。
其中,假设待渲染对象为多个,那么此时这多个待渲染对象还对应有渲染顺序,以便后续进行渲染时按照对应的渲染顺序进行渲染。对于如何获取到待渲染对象,以游戏场景为例,可以是在用户发起了场景中的某些画面的加载请求或者切换到某个固定的场景画面时,根据预设的该画面中的对象来获取待渲染对象。比如:当用户将当前游戏视角切换到房间中时,那么该房间中的物体就可以视为待渲染对象;并且,假如用户当前将游戏视角切换到房间中的床的位置时,那么该床以及床上(或者床周围)的物体就可以视为待渲染对象。
进一步地,在步骤101中获取到待渲染对象后,在步骤102中,根据待渲染对象在当前场景中的渲染位置确定待渲染对象对应的预先构建的虚拟对象。其中,对于预先构建的虚拟对象,可以理解为实际渲染的对象的模拟对象,但是该虚拟对象并没有实际渲染的对象那么复杂,比如实际渲染的对象是花、草和树木等,虚拟对象则可以是矩形、圆形、三角形等简单的物体。为了便于对虚拟对象的理解,接下来先对该虚拟对象的构建进行介绍。
作为一种可选的实施方式,在步骤101之前,该方法包括:在当前场景中的不同位置处构建多个虚拟对象;确定构建的多个虚拟对象的深度信息,并记录多个虚拟对象的深度信息。
在这种实施方式中,在构建多个虚拟对象时,可以结合当前场景中的实际情况进行相应的构建。请参照图3,为本申请实施例提供的虚拟对象的举例图,假设当前场景的范围为最大的矩形框所圈定的范围,那么可以在该最大的矩形框中,分别构建三个虚拟物体,包括大矩形、小矩形以及星形,其中,大矩形和小矩形有部分重叠,星形与大矩形和小矩形均没有重叠。
进一步地,在完成虚拟对象的构建后,可以确定构建完成的虚拟对象的深度信息,然后将其深度信息进行存储。其中,深度信息即为虚拟对象的深度,需要注意的是,对于每个虚拟对象来说,以矩形为例,矩形的深度包括了该矩形所覆盖的每个像素点的深度,因此,虚拟对象的深度信息中包含了多个深度值。
在本申请实施例中,在构建多个虚拟对象时,在当前场景中的不同位置处进行构建,并且记录对应的深度信息,能够快速地完成虚拟对象的构建,提高渲染的效率。
作为一种可选的实施方式,确定构建的多个虚拟对象的深度信息,并记录多个虚拟对象的深度信息,包括:通过Zbuffer确定并记录构建的多个虚拟对象的深度信息。在这种实施方式中,利用Zbuffer来确定并记录虚拟对象的深度信息。Zbuffer是图像渲染中的一种算法,通过创建Zbuffer,将其初始值设为深度最大值,然后基于创建的虚拟对象利用Zbuffer进行渲染,可以得到创建的虚拟对象的深度信息,然后再基于深度信息更新Zbuffer中存储的深度初始值,使渲染的虚拟对象的深度信息保存在Zbuffer中。需要注意的是,在确定虚拟对象的深度信息时,利用Zbuffer进行渲染时,只是在后台进行渲染,并不会将渲染得到的虚拟对象显示或者呈现给用户。
在本申请实施例中,可以通过Zbuffer来确定并记录虚拟对象的深度信息,提高深度信息的确定以及记录效率,进而提高渲染的效率。
除了利用Zbuffer来确定并记录虚拟对象的深度信息,当然也可以采用Gbuffer来确定并记录虚拟对象的深度信息。
从虚拟对象的构建可以看出,在构建虚拟对象时,也将虚拟对象的深度信息进行了存储,进而在步骤102中,根据待渲染对象在当前场景中的渲染位置确定待渲染对象对应的虚拟对象。其中,可以理解,虚拟对象在构建时,在当前场景中也是有一个固定的位置的,比如待渲染对象在当前场景中的渲染位置位于某个虚拟对象所处的位置的范围内,那么此时待渲染对象对应的虚拟对象就是该某个虚拟对象。又比如某个虚拟对象所处的位置位于待渲染对象在当前场景中的渲染位置的范围内,那么此时待渲染对象对应的虚拟对象就是该某个虚拟对象。又比如有两个虚拟对象所处的位置位于待渲染对象在当前场景中的渲染位置的范围内,那么此时待渲染对象对应的虚拟对象就是这两个虚拟对象。
进一步地,在步骤103中,可以根据待渲染对象的深度信息和待渲染对象对应的虚拟对象的深度信息来确定是否渲染待渲染对象。可以理解,在该步骤中,相当于是将待渲染对象的深度与其对应的虚拟对象的深度进行比较,从而确定是不是需要进行遮挡去除。
作为一种可选的实施方式,步骤103包括:将待渲染对象的深度信息与对应的预先构建的虚拟对象的深度信息进行比较;若待渲染对象的深度小于或者等于对应的预先构建的虚拟对象的深度,确定渲染待渲染对象;若待渲染对象的深度大于对应的预先构建的虚拟对象的深度,确定不渲染待渲染对象。
在这种实施方式中,在比较深度信息时,假设待渲染对象以及虚拟对象都是具有顶点的物体,在前述实施例中提到过,深度信息中包括了多个像素点的深度值,此时可以只将待渲染对象以及虚拟对象的顶点深度值进行比较,即待渲染对象以及虚拟对象的顶点深度代表各自的深度。
此外,基于前述对待渲染对象对应的虚拟对象的不同的可能,在比较时,也有不同的可能,接下来进行示例性的举例,情况一:待渲染对象在当前场景中的渲染位置位于对应的一个虚拟对象所处的位置的范围内,那么此时直接将待渲染对象与该一个虚拟对象的深度进行比较即可。情况二:待渲染对象对应的一个虚拟对象所处的位置位于待渲染对象在当前场景中的渲染位置的范围内,那么此时也可以直接将待渲染对象与该一个虚拟对象的深度进行比较即可。情况三:待渲染对象对应有两个虚拟对象,这两个虚拟对象所处的位置均位于待渲染对象在当前场景中的渲染位置的范围内,且这两个虚拟对象所处的位置范围并没有共同区域,那么此时需要将待渲染对象分别与该两个虚拟对象的深度进行比较,以区分不同待渲染对象的不同部分是否需要进行剔除遮挡。情况四:待渲染对象对应有两个虚拟对象,这两个虚拟对象所处的位置范围具有重叠,待渲染对象的位置处于重叠区域内,那么此时只需将待渲染对象与这两个虚拟对象中深度较小的虚拟对象的深度进行比较即可。
进一步地,对于比较结果中,若待渲染对象的深度小于或者等于对应的虚拟对象的深度,此时不需要进行遮挡剔除,可继续待渲染对象的渲染过程;若待渲染对象的深度大于对应的虚拟对象的深度,此时需要进行遮挡剔除,不进行待渲染对象的渲染。可以理解,对于渲染对象来说,若渲染对象的深度越大,代表渲染对象距离摄像机越远。因此,针对两个渲染对象来说,假设渲染对象A和渲染对象B在摄像机视角方向所处的位置有重叠,并且渲染对象A的深度小于或者等于渲染对象B的深度,那么说明渲染对象A距离摄像机更近,那么距离摄像机更远的渲染对象B就会被渲染对象A遮挡,此时就需要对渲染对象B进行遮挡剔除,假设当前待渲染对象是渲染对象B,那么就可以不进行渲染对象B的渲染,以实现遮挡剔除。
在本申请实施例中,在进行渲染判断时,可以将待渲染对象的深度与虚拟对象的深度进行比较,若待渲染对象的深度小于或者等于虚拟对象的深度,说明待渲染对象相对于虚拟对象所在的位置处是可以被看到的,因此,不需要剔除,可进行渲染;若待渲染对象的深度大于虚拟对象的深度,说明待渲染对象相对于虚拟对象所在的位置处是不可以被看到的,因此,需要剔除,不进行渲染。通过比较深度,实现快速准确地渲染判断,提高渲染的效率。
进一步地,在步骤103中判断出是否需要渲染待渲染对象后,在步骤104中,在确定不渲染待渲染对象时,就不进行待渲染对象的渲染。
此外,在本申请实施例中,对于待渲染对象,还可以进行标记,是否需要进行深度比较,只有在需要深度比较的情况下,才进行深度比较,若不需要深度比较,可直接执行正常的渲染流程。因此,作为一种可选的实施方式,在步骤102之前,该方法还包括:获取待渲染对象的预设标识;预设标识用于表征待渲染对象是否需要进行渲染判断。对应的,步骤102包括:当预设标识表征待渲染对象需要进行渲染判断时,根据待渲染对象在当前场景中的渲染位置确定待渲染对象对应的预先构建的虚拟对象。
在这种实施方式中,该预设标识可以是深度比较标识;或者渲染判断等标识。比如:若表征需要进行深度比较,那么该预设标识可以是01;若表征不需要进行深度比较,那么该预设标识可以是00。此外,对于是否需要进行深度比较,可以根据待渲染对象在当前场景中所处的位置和待渲染对象的大小等进行一个初步的预判。比如:待渲染对象在当前场景中属于角落等这种比较偏僻的位置,那么被遮挡的可能性也很小,属于很明显不需要进行遮挡剔除的对象,此时就可以设置一个不需要进行深度比较的标识。再比如:待渲染对象在当前场景中处于一个较中间的位置,周围会有很多其他待渲染的对象,那么出现被遮挡的可能性也相对较大,此时就可以设置一个需要进行深度比较的标识。
进一步地,若需要进行深度比较,就执行步骤102,若不需要进行深度比较,直接进行渲染即可。
在本申请实施例中,每个待渲染对象还可以预设标识,该预设标识可以表征待渲染对象是否需要进行渲染判断,进而可以减少不必要的渲染判断过程,提高渲染的效率。
进一步地,在本申请实施例中,在需要进行渲染的时候,比如确定渲染待渲染对象时,或者在不需要进行深度比较,直接进行渲染时,可以按照预设的渲染策略渲染待渲染对象。其中,对于渲染策略,可以包括渲染速度、渲染条件、渲染质量等与渲染相关的参数信息。该渲染策略可以结合具体的游戏、游戏场景以及用户配置来进行确定。
在本申请实施例中,在渲染时,可以通过预设的渲染策略进行渲染,进而实现快速地渲染,提高渲染效率。
在本申请实施例中,通过虚拟对象来优化渲染,提高渲染效率。为了更便于理解该渲染方法,基于前述实施例中的实施方式,接下来结合具体的实例进行进一步地介绍。请参照图4,为本申请实施例提供的举例图,在图4中,包括5个对象,第一矩形201、第二矩形202、第一星形203、第二星形204和第三星形205,其中,第一矩形201和第二矩形202为虚拟物体(虚拟对象),第一星形203、第二星形204和第三星形205为待渲染对象(实际渲染的对象);并且,第一矩形201的深度最小,第二矩形202的深度大于第一矩形201的深度,第一星形203、第二星形204和第三星形205均大于第二矩形202的深度。首先,在构建两个虚拟对象时,第一矩形201和第二矩形202的深度信息均存储在Zbuffer中。进一步地,当获取到待渲染对象:第一星形203、第二星形204和第三星形205时,第一星形203不需要进行深度比较,可直接进行渲染;第二星形204全部包含在第二矩形202内,由于其深度大小关系为第二星形204的深度大于第二矩形202的深度,那么第二星形204全部被剔除,不进行渲染;第三星形205一部分包含在第二矩形202内,则包含在第二矩形202内的部分被剔除,不进行渲染。此外,对于第一矩形201和第二矩形202,有一部分是重叠的,由于第一矩形201的深度小于第二矩形202的深度,那么在后台渲染这两个虚拟对象时,第二矩形202的一部分实质上也被第一矩形201给剔除掉了一个角。
通过上述举例可以看出,在预设剔除条件(深度信息)时,通过构建虚拟对象,来替代实际对象的渲染,虚拟对象的渲染难度较小,更容易得到预设的深度信息,进而能够优化整个渲染,提高图像渲染的效率。
基于同一发明构思,请参照图5,本申请实施例中还提供一种图像渲染的装置300,包括:获取模块301、第一确定模块302、第二确定模块303以及渲染模块304。
获取模块301,用于获取当前场景中的待渲染对象;第一确定模块302,用于根据所述待渲染对象在所述当前场景中的渲染位置确定所述待渲染对象对应的预先构建的虚拟对象;第二确定模块303,用于根据所述待渲染对象的深度信息和所述对应的预先构建的虚拟对象的深度信息确定是否渲染所述待渲染对象;渲染模块304,用于在确定不渲染所述待渲染对象时,不进行所述待渲染对象的渲染。
可选的,图像渲染的装置300还包括:虚拟对象构建模块,用于:在所述当前场景中的不同位置处构建多个虚拟对象;确定构建的所述多个虚拟对象的深度信息,并记录所述多个虚拟对象的深度信息。
可选的,虚拟对象构建模块具体用于:通过Zbuffer确定并记录构建的所述多个虚拟对象的深度信息。
可选的,获取模块301还用于:获取所述待渲染对象的预设标识;所述预设标识用于表征所述待渲染对象是否需要进行渲染判断;第一确定模块302具体用于:当所述预设标识表征所述待渲染对象需要进行渲染判断时,根据所述待渲染对象在所述当前场景中的渲染位置确定所述待渲染对象对应的预先构建的虚拟对象。
可选的,第二确定模块303具体用于:将所述待渲染对象的深度信息与所述对应的预先构建的虚拟对象的深度信息进行比较;若所述待渲染对象的深度小于或者等于所述对应的预先构建的虚拟对象的深度,确定渲染所述待渲染对象;若所述待渲染对象的深度大于所述对应的预先构建的虚拟对象的深度,确定不渲染所述待渲染对象。
可选的,渲染模块304还用于:在确定渲染所述待渲染对象时,按照预设的渲染策略渲染所述待渲染对象。
前述实施例中的闪电模拟方法中的各实施方式和具体实例同样适用于图5的图像渲染的装置300,通过前述对图像渲染的方法的详细描述,本领域技术人员可以清楚的知道图5的图像渲染的装置300的实施方式,所以为了说明书的简洁,在此不再详述。
基于同一发明构思,请参照图6,本申请实施例中还提供一种终端400,包括:存储器401、处理器402以及显示器403,存储器401中存储有计算机程序指令,所述计算机程序指令被处理器402读取并运行时,执行前述的闪电模拟方法。
存储器401可以包括但不限于RAM(Random Access Memory,随机存取存储器),ROM(Read Only Memory,只读存储器),PROM(Programmable Read-Only Memory,可编程只读存储器),EPROM(Erasable Programmable Read-Only Memory,可擦除只读存储器),EEPROM(Electric Erasable Programmable Read-Only Memory,电可擦除只读存储器)等。
存储器401可以存储各种软件程序以及模块,以及存储处理器402在处理过程中需要调用的数据。处理器402通过运行存储在存储器中的软件程序以及模块和调用存储器中存储的相关数据,从而执行各种功能应用以及数据处理,即实现本申请实施例中提供的图像渲染的方法。
其中,处理器402可以是一种集成电路芯片,具有信号处理能力。可以是通用处理器,包括CPU(Central Processing Unit,中央处理器)、NP(Network Processor,网络处理器)等;还可以是数字信号处理器、专用集成电路、现成可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
显示器403用于显示待渲染对象的最终渲染结果、以及显示当前场景,以及提供用户界面等。
前述实施例中的图像渲染的方法中的各实施方式和具体实例同样适用于图6的终端400,通过前述对图像渲染的方法的详细描述,本领域技术人员可以清楚的知道图6的终端400的实施方式,所以为了说明书的简洁,在此不再详述。
基于同一发明构思,本申请实施例还提供了一种可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被计算机运行时执行上述任一实施方式的图像渲染的方法。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.一种图像渲染的方法,其特征在于,包括:
获取当前场景中的待渲染对象;
根据所述待渲染对象在所述当前场景中的渲染位置确定所述待渲染对象对应的预先构建的虚拟对象;
根据所述待渲染对象的深度信息和所述对应的预先构建的虚拟对象的深度信息确定是否渲染所述待渲染对象;
在确定不渲染所述待渲染对象时,不进行所述待渲染对象的渲染。
2.根据权利要求1所述的方法,其特征在于,在所述获取当前场景中的待渲染对象之前,所述方法还包括:
在所述当前场景中的不同位置处构建多个虚拟对象;
确定构建的所述多个虚拟对象的深度信息,并记录所述多个虚拟对象的深度信息。
3.根据权利要求2所述的方法,其特征在于,所述确定构建的所述多个虚拟对象的深度信息,并记录所述多个虚拟对象的深度信息,包括:
通过Zbuffer确定并记录构建的所述多个虚拟对象的深度信息。
4.根据权利要求1所述的方法,其特征在于,在所述根据所述待渲染对象在所述当前场景中的渲染位置确定所述待渲染对象对应的预先构建的虚拟对象之前,所述方法还包括:
获取所述待渲染对象的预设标识;所述预设标识用于表征所述待渲染对象是否需要进行渲染判断;
对应的,所述根据所述待渲染对象在所述当前场景中的渲染位置确定所述待渲染对象对应的预先构建的虚拟对象,包括:
当所述预设标识表征所述待渲染对象需要进行渲染判断时,根据所述待渲染对象在所述当前场景中的渲染位置确定所述待渲染对象对应的预先构建的虚拟对象。
5.根据权利要求1所述的方法,其特征在于,所述根据所述待渲染对象的深度信息和所述对应的预先构建的虚拟对象的深度信息确定是否渲染所述待渲染对象,包括:
将所述待渲染对象的深度信息与所述对应的预先构建的虚拟对象的深度信息进行比较;
若所述待渲染对象的深度小于或者等于所述对应的预先构建的虚拟对象的深度,确定渲染所述待渲染对象;
若所述待渲染对象的深度大于所述对应的预先构建的虚拟对象的深度,确定不渲染所述待渲染对象。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在确定渲染所述待渲染对象时,按照预设的渲染策略渲染所述待渲染对象。
7.一种图像渲染的装置,其特征在于,包括:
获取模块,用于获取当前场景中的待渲染对象;
第一确定模块,用于根据所述待渲染对象在所述当前场景中的渲染位置确定所述待渲染对象对应的预先构建的虚拟对象;
第二确定模块,用于根据所述待渲染对象的深度信息和所述对应的预先构建的虚拟对象的深度信息确定是否渲染所述待渲染对象;
渲染模块,用于在确定不渲染所述待渲染对象时,不进行所述待渲染对象的渲染。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:虚拟对象构建模块,用于:
在所述当前场景中的不同位置处构建多个虚拟对象;确定构建的所述多个虚拟对象的深度信息,并记录所述多个虚拟对象的深度信息。
9.一种终端,其特征在于,包括:
存储器、处理器以及显示器,所述存储器中存储有计算机程序指令,所述计算机程序指令被所述处理器读取并运行时,执行如权利要求1-6中任一项所述的方法。
10.一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被计算机运行时执行如权利要求1-6中任一项所述的方法。
CN202010487040.9A 2020-06-01 2020-06-01 图像渲染的方法及装置、终端、可读存储介质 Active CN111726479B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010487040.9A CN111726479B (zh) 2020-06-01 2020-06-01 图像渲染的方法及装置、终端、可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010487040.9A CN111726479B (zh) 2020-06-01 2020-06-01 图像渲染的方法及装置、终端、可读存储介质

Publications (2)

Publication Number Publication Date
CN111726479A true CN111726479A (zh) 2020-09-29
CN111726479B CN111726479B (zh) 2023-05-23

Family

ID=72565694

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010487040.9A Active CN111726479B (zh) 2020-06-01 2020-06-01 图像渲染的方法及装置、终端、可读存储介质

Country Status (1)

Country Link
CN (1) CN111726479B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022095757A1 (zh) * 2020-11-09 2022-05-12 华为技术有限公司 图像渲染方法和装置
CN114887325A (zh) * 2022-04-19 2022-08-12 一点灵犀信息技术(广州)有限公司 数据处理方法、显示方法、设备及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102254340A (zh) * 2011-07-29 2011-11-23 北京麒麟网信息科技有限公司 一种基于gpu加速的环境光遮挡图像绘制方法及系统
US20120020548A1 (en) * 2010-07-20 2012-01-26 Meng-Chao Kao Method for Generating Images of Multi-Views
US20150294511A1 (en) * 2014-04-09 2015-10-15 Imagination Technologies Limited Virtual Camera for 3-D Modeling Applications
CN107886564A (zh) * 2017-10-13 2018-04-06 上海秉匠信息科技有限公司 用于实现三维场景显示的方法
CN109461199A (zh) * 2018-11-15 2019-03-12 腾讯科技(深圳)有限公司 画面渲染方法和装置、存储介质及电子装置
CN109754454A (zh) * 2019-01-30 2019-05-14 腾讯科技(深圳)有限公司 物体模型的渲染方法、装置、存储介质及设备
CN109993823A (zh) * 2019-04-11 2019-07-09 腾讯科技(深圳)有限公司 阴影渲染方法、装置、终端及存储介质
CN110136082A (zh) * 2019-05-10 2019-08-16 腾讯科技(深圳)有限公司 遮挡剔除方法、装置及计算机设备

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120020548A1 (en) * 2010-07-20 2012-01-26 Meng-Chao Kao Method for Generating Images of Multi-Views
CN102254340A (zh) * 2011-07-29 2011-11-23 北京麒麟网信息科技有限公司 一种基于gpu加速的环境光遮挡图像绘制方法及系统
US20150294511A1 (en) * 2014-04-09 2015-10-15 Imagination Technologies Limited Virtual Camera for 3-D Modeling Applications
CN107886564A (zh) * 2017-10-13 2018-04-06 上海秉匠信息科技有限公司 用于实现三维场景显示的方法
CN109461199A (zh) * 2018-11-15 2019-03-12 腾讯科技(深圳)有限公司 画面渲染方法和装置、存储介质及电子装置
CN109754454A (zh) * 2019-01-30 2019-05-14 腾讯科技(深圳)有限公司 物体模型的渲染方法、装置、存储介质及设备
CN109993823A (zh) * 2019-04-11 2019-07-09 腾讯科技(深圳)有限公司 阴影渲染方法、装置、终端及存储介质
CN110136082A (zh) * 2019-05-10 2019-08-16 腾讯科技(深圳)有限公司 遮挡剔除方法、装置及计算机设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
刘多利等: "屏幕空间微结构表面对象环境光遮挡算法", 《北京航空航天大学学报》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022095757A1 (zh) * 2020-11-09 2022-05-12 华为技术有限公司 图像渲染方法和装置
CN114887325A (zh) * 2022-04-19 2022-08-12 一点灵犀信息技术(广州)有限公司 数据处理方法、显示方法、设备及存储介质

Also Published As

Publication number Publication date
CN111726479B (zh) 2023-05-23

Similar Documents

Publication Publication Date Title
US9451173B2 (en) Electronic device and control method of the same
CN109064390B (zh) 一种图像处理方法、图像处理装置及移动终端
KR102010712B1 (ko) 왜곡 보정 방법 및 단말기
CN110796600B (zh) 一种图像超分重建方法、图像超分重建装置及电子设备
CN108769634B (zh) 一种图像处理方法、图像处理装置及终端设备
CN113126937B (zh) 一种显示终端调整方法及显示终端
CN109040596B (zh) 一种调整摄像头的方法、移动终端及存储介质
CN111726479B (zh) 图像渲染的方法及装置、终端、可读存储介质
CN113570626B (zh) 图像裁剪方法、装置、计算机设备及存储介质
CN108600644B (zh) 一种拍照方法、装置及可穿戴设备
US11127141B2 (en) Image processing apparatus, image processing method, and a non-transitory computer readable storage medium
CN110266926B (zh) 图像处理方法、装置、移动终端以及存储介质
CN112714302A (zh) 裸眼3d图像的制作方法及装置
CN108932703B (zh) 图片处理方法、图片处理装置及终端设备
CN111562869B (zh) 截图方法及装置、存储介质、电子装置
CN116760937A (zh) 一种基于多机位的视频拼接方法、装置、设备及存储介质
CN111784811A (zh) 一种图像处理方法、装置,电子设备及存储介质
CN112149745B (zh) 确定难例样本的方法、装置、设备及存储介质
CN111429384B (zh) 图像处理方法及装置
CN117495694B (zh) 一种视频和地图三维场景融合的方法、电子设备及存储介质
CN115526809B (zh) 一种图像处理方法、装置及电子设备和存储介质
CN111405345B (zh) 图像处理方法、装置、显示设备及可读存储介质
CN116563674B (zh) 样本图像增强方法、系统、电子设备及可读存储介质
CN113112610B (zh) 一种信息处理方法、装置和电子设备
CN116188341A (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