CN110060325B - 屏幕空间渲染方法及装置 - Google Patents
屏幕空间渲染方法及装置 Download PDFInfo
- Publication number
- CN110060325B CN110060325B CN201910322217.7A CN201910322217A CN110060325B CN 110060325 B CN110060325 B CN 110060325B CN 201910322217 A CN201910322217 A CN 201910322217A CN 110060325 B CN110060325 B CN 110060325B
- Authority
- CN
- China
- Prior art keywords
- rendering
- scene
- information
- special effect
- screen
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
Landscapes
- Engineering & Computer Science (AREA)
- Computer Graphics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明提供了一种屏幕空间渲染方法及装置,涉及渲染技术领域。该屏幕空间渲染方法包括以下步骤:获取实际3D场景,对该实际3D场景进行渲染,提取该实际3D场景包含的主场景;基于主场景进行场景信息渲染,以记录主场景对应的场景信息;结合场景信息,以及预先存储的屏幕空间信息对屏幕空间进行视觉特效渲染,输出场景信息对应的特效信息;将主场景和特效信息进行融合,生成屏幕空间对应的多重渲染效果;将多重渲染效果输出至屏幕进行显示。本发明的屏幕空间渲染方法及装置提高了渲染效率,节省了人力物力,并且达到了实现多种视觉效果的技术效果。
Description
技术领域
本发明涉及渲染技术领域,尤其是涉及一种屏幕空间渲染方法及装置。
背景技术
在现有WebGL(Web Graphics Library,Web图形库)环境下,3D(Dimensional,维度)场景渲染和视觉特效渲染通常混合在一起,而场景信息渲染和视觉特效渲染通常是分开的,这导致很多视觉效果很难实现,并且渲染效率比较低,导致渲染浪费人力物力。
发明内容
有鉴于此,本发明的目的在于提供一种屏幕空间渲染方法及装置,以改善现有技术中存在的渲染效率比较低的技术问题。
第一方面,本发明实施例提供了一种屏幕空间渲染方法,该方法包括以下步骤:
获取实际3D场景,对实际3D场景进行渲染,提取实际3D场景包含的主场景;
基于主场景进行场景信息渲染,以记录主场景对应的场景信息,其中,场景信息至少包括Mesh渲染层级、Mesh空间信息和Mesh材质信息;
结合场景信息,以及预先存储的屏幕空间信息对屏幕空间进行视觉特效渲染,输出场景信息对应的特效信息;
将主场景和特效信息进行融合,生成屏幕空间对应的多重渲染效果;
将多重渲染效果输出至屏幕进行显示。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,基于主场景进行场景信息渲染,以记录主场景对应的场景信息的步骤包括:
基于主场景,采用预先设置的渲染器,以及渲染模式、渲染算法和渲染流程进行场景信息渲染;
通过MRT机制将渲染后输出的主场景对应的场景信息写入到framebuffer中进行缓存。
结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,结合场景信息,以及预先存储的屏幕空间信息对屏幕空间进行视觉特效渲染,输出场景信息对应的特效信息的步骤包括:
提取屏幕空间信息中包含的物理屏幕的屏幕解析度,其中,屏幕解析度包括物理屏幕的长、宽信息;
基于场景信息和屏幕解析度对屏幕空间进行视觉特效渲染;
通过MRT机制将渲染后输出的场景信息对应的特效信息写入到framebuffer中进行缓存。
结合第一方面的第二种可能的实施方式,本发明实施例提供了第一方面的第三种可能的实施方式,其中,视觉特效渲染的模式为采用二维图像造型技术和三维图像造型技术的混合模式;
基于场景信息和屏幕解析度对屏幕空间进行视觉特效渲染的步骤包括:
根据屏幕解析度判断屏幕空间包含的像素点是否隶属于场景信息中的Mesh渲染层级;
如果是,将像素点设置为有效渲染对象;
读取场景信息中与像素点隶属的Mesh渲染层级对应的Mesh空间信息和Mesh材质信息;
根据Mesh空间信息和Mesh材质信息调用对应的造型函数进行二维造型渲染,输出2D特征场景。
结合第一方面的第三种可能的实施方式,本发明实施例提供了第一方面的第四种可能的实施方式,其中,将像素点设置为有效渲染对象之后,该方法还包括:
提取有效渲染对象在屏幕空间中的空间信息;
按照空间信息和预先检测的光线交点采用随机造型进行三维随机造型渲染,输出3D特征场景;
其中,预先检测的光线交点为按照RayMarching框架进行光线投射产生的射线与主场景中的物体相交后生成的。
结合第一方面,本发明实施例提供了第一方面的第五种可能的实施方式,其中,将主场景和特效信息进行融合,生成屏幕空间对应的多重渲染效果的步骤包括:
基于Mesh空间信息对经视觉特效渲染输出的特效信息进行边缘检测,输出2D特征场景和3D特征场景的边缘过渡区间;
对边缘过渡区间进行卷积模糊处理;
将主场景与卷积模糊处理的特效信息进行融合。
第二方面,本发明实施例还提供一种屏幕空间装置,包括:
主场景提取模块,用于获取实际3D场景,对实际3D场景进行渲染,提取实际3D场景包含的主场景;
场景信息渲染模块,用于基于主场景进行场景信息渲染,以记录主场景对应的场景信息,其中,场景信息至少包括Mesh渲染层级、Mesh空间信息和Mesh材质信息;
视觉特效渲染模块,用于结合场景信息,以及预先存储的屏幕空间信息对屏幕空间进行视觉特效渲染,输出场景信息对应的特效信息;
融合模块,用于将主场景和特效信息进行融合,生成屏幕空间对应的多重渲染效果;
输出显示模块,用于将多重渲染效果输出至屏幕进行显示。
结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,场景信息渲染模块用于:
基于主场景,采用预先设置的渲染器,以及渲染模式、渲染算法和渲染流程进行场景信息渲染;
通过MRT机制将渲染后输出的主场景对应的场景信息写入到framebuffer中进行缓存.
结合第二方面,本发明实施例提供了第二方面的第二种可能的实施方式,其中,视觉特效渲染模块用于:
提取屏幕空间信息中包含的物理屏幕的屏幕解析度,其中,该屏幕解析度包括物理屏幕的长、宽信息;
基于场景信息和屏幕解析度对屏幕空间进行视觉特效渲染;
通过MRT机制将渲染后输出的场景信息对应的特效信息写入到framebuffer中进行缓存。
结合第二方面,本发明实施例提供了第二方面的第三种可能的实施方式,其中,融合模块用于:
基于Mesh空间信息对经视觉特效渲染输出的特效信息进行边缘检测,输出2D特征场景和3D特征场景的边缘过渡区间;
对边缘过渡区间进行卷积模糊处理;
将主场景与卷积模糊处理的特效信息进行融合。
本发明实施例带来了以下有益效果:本发明实施例提供的一种屏幕空间渲染方法及装置,能够对实际3D场景进行渲染以提取主场景,基于该主场景进行场景信息渲染以记录场景信息,结合该场景信息和屏幕空间信息对屏幕空间进行视觉特效渲染以输出特效信息,以及将主场景和特效信息进行融合,生成多重渲染效果并输出至屏幕进行显示。上述对实际3D场景进行渲染,基于该主场景进行场景信息渲染、对屏幕空间进行视觉特效渲染,并且然后进行融合,输出至屏幕进行显示的屏幕空间渲染方法,能够生成屏幕空间对应的多重渲染效果,有效提高了渲染效率。
本发明的其他特征和优点将在随后的说明书中阐述,并且部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点在说明书、权利要求书以及附图中所特别指出的结构中实现和获得。
为使本发明的上述目的、特征和优点能够更加明显易懂,下文特举优选实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明的具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图进行简单的介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种屏幕空间渲染方法的流程图;
图2为本发明实施例提供的另一种屏幕空间渲染方法的流程图;
图3为本发明实施例提供的一种二维图像造型渲染的流程图;
图4为本发明实施例提供的一种三维图像随机造型渲染的流程图;
图5为本发明实施例提供的一种屏幕空间渲染装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,在现有WebGL环境下,3D场景渲染和视觉特效渲染通常混合在一起,而场景信息渲染和视觉特效渲染通常是分开的,这导致很多视觉效果很难实现,并且渲染效率比较低,导致渲染浪费人力物力,渲染模式不太灵活。基于此,本发明实施例提供的一种屏幕空间渲染方法及装置,以缓解上述问题。
为了便于对本实施例进行理解,首先对本发明实施例所公开的一种屏幕空间渲染方法进行详细介绍。
在一种可能的实施方式中,本发明提供了一种屏幕空间渲染方法。如图1所示为一种屏幕空间渲染方法的流程图,该屏幕空间渲染方法包括以下步骤:
步骤S102:获取实际3D场景,对实际3D场景进行渲染,提取实际3D场景包含的主场景。
其中,实际3D场景是根据实际需要选取的3D场景,以获取其中包含的所需的主场景,或者也可以是随意选取的3D场景,以获取其中包含的主场景。
进一步地,对实际3D场景进行渲染是利用THREE.JS引擎的WebGLRenDer渲染器进行的。该渲染过程可以按照THREE.JS引擎默认的渲染模式、渲染算法以及渲染流程进行,经渲染之后输出的主场景通过MRT(Multiple Render Targets,多重渲染目标)而被写入到framebuffer(帧缓存)中进行缓存。
此外,此次渲染的渲染复杂度为O(m),其中m=3D场景中实际物个数*物体复杂度(点面数)。
步骤S104:基于主场景进行场景信息渲染,以记录主场景对应的场景信息,其中,场景信息至少包括Mesh(网格)渲染层级、Mesh空间信息和Mesh材质信息。
其中,场景信息渲染利用THREE.JS引擎并借助Three.js MRT机制来记录每帧3D场景的场景信息,通过MRT机制将渲染后输出的主场景对应的场景信息写入到framebuffer中进行缓存,并且将这些场景信息通过最小化组合来有效减少framebuffer的使用次数。
其中,该场景信息包括:
(1)Mesh渲染层级:用于记录渲染帧中哪些区域属于哪个特效区域(通过8位低精度浮点数进行记录并保存特效层级ID(Identity carD,身份证或身份卡),该ID用于标记视觉特效的唯一性)。
(2)Mesh空间信息:用于记录与渲染帧中的像素点对应的空间信息(包括点位置、点法线或面法线、z-Depth(z深度)或inverse z-Depth(反向z深度)),其中,点位置、点法线或面法线、z-Depth或inverse z-Depth、UV值按照向量右乘MT矩阵(其中MT为纹理变化矩阵)得到最终值,最终点位置(三维)和z-Depth(一维)组合成一个framebuffer对象,而UV值采用半数采样也优化成一个framebuffer对象。
(3)Mesh材质信息:用于记录与渲染帧中的像素点对应的材质信息(包括透明度、混合开关即混合模式),其中,Mesh材质信息中的透明度、混合开关即混合模式均采用八位浮点格式合成一个framebuffer对象,并预留八位空值以便于扩展。
具体地,经场景信息渲染得出的场景信息通过占位组合来动态决定framebuffer的使用个数。为了提高场景信息渲染的效率和通用性,framebuffer采用32位浮点格式,即一个framebuffer对象最多能记录四个维度信息。
步骤S106:结合场景信息,以及预先存储的屏幕空间信息对屏幕空间进行视觉特效渲染,输出场景信息对应的特效信息。
其中,视觉特效渲染采用二维图像造型技术和三维图像造型技术的混合模式来实现。其中,二维图像造型技术主要包括各种随机造型技术,并且三维图像造型技术主要基于RayMarching框架的随机造型技术。
进一步地,所有视觉特效渲染均基于场景信息和屏幕解析度并完全基于GPU(Graphics Processing Uni,图像处理单元)来实现,显著提高了渲染效率,特别适合WebGL的网页运行环境;并且解耦了视觉特效渲染和场景复杂度,使得视觉特效渲染的渲染复杂度只由屏幕解析度决定(渲染复杂度=O(w*h*n),其中w为屏幕水平像素个数,h为垂直水平像素个数,并且n为每个像素点投射的射线条数),从而使得渲染过程更容易进行。
其中,由于在视觉特效渲染过程中结合了场景信息,而该场景信息为三维信息,从而实现了带有三维信息的视觉特效渲染。
步骤S108:将主场景和特效信息进行融合,生成屏幕空间对应的多重渲染效果。
其中,在融合过程中,涉及到特效遮蔽检测、图像融合过滤等过程。
步骤S110:将多重渲染效果输出至屏幕进行显示。
其中,该过程通过显卡控制器来实现。
本发明实施例带来了以下有益效果:本发明实施例通过一种屏幕空间渲染方法及装置,能够对实际3D场景进行渲染以提取主场景,基于该主场景进行场景信息渲染以记录场景信息,结合该场景信息和屏幕空间信息对屏幕空间进行视觉特效渲染以输出特效信息,以及将主场景和特效信息进行融合,生成多重渲染效果并输出至屏幕进行显示。上述对实际3D场景进行渲染,基于该主场景进行场景信息渲染、对屏幕空间进行视觉特效渲染,并且然后进行融合,输出至屏幕进行显示的屏幕空间渲染方法,能够生成屏幕空间对应的多重渲染效果,有效提高了渲染效率。
在实际使用时,在上述对实际3D场景进行渲染,基于该主场景进行场景信息渲染,对屏幕空间进行视觉特效渲染,并且然后将主场景和特效信息进行融合的过程中,还需提取物理屏幕的屏幕解析度,将渲染得出的信息写入到对应的framebuffer中进行缓存、对特效信息进行边缘检测、卷积模糊、融合过滤。具体地,图2示出了本发明实施例提供的另一种屏幕空间渲染方法的流程图,该方法包括以下步骤:
步骤S202:获取实际3D场景,对实际3D场景进行渲染,提取实际3D场景包含的主场景。
其中,经渲染之后输出的主场景通过MRT而被写入到主场景framebuffer中进行缓存。
步骤S204:基于主场景,采用预先设置的渲染器,以及渲染模式、渲染算法和渲染流程进行场景信息渲染。
其中,经场景信息渲染之后输出的场景信息通过MRT而被写入到场景信息framebuffer中进行缓存。
步骤S206:提取屏幕空间信息中包含的物理屏幕的屏幕解析度,其中,屏幕解析度包括物理屏幕的长、宽信息。
步骤S208:基于场景信息和屏幕解析度对屏幕空间进行视觉特效渲染。
进一步地,经渲染之后输出的特效信息通过MRT而被写入到特效信息framebuffer中进行缓存。
步骤S210:基于Mesh空间信息对经视觉特效渲染输出的特效信息进行边缘检测,输出2D特征场景和3D特征场景的边缘过渡区间。
其中,本发明实施例的边缘检测算法结合了深度特征和法线特征两种特征。假设有两个点A和B,通过计算A的空间位置到B的法线所构成的平面的距离作为衡量来判断是否应该标记为边缘。
进一步地,在对特效信息进行边缘检测之后,还需借助特效遮蔽检测过程通过检测屏幕空间视觉特效与三维场景中的对象的遮蔽关系来确定屏幕像素空间中的每个像素点的显示内容,但在此过程中会出现硬过渡现象(2D特征场景和3D特征场景的边缘过渡区间之间存在明显锯齿)。
步骤S212:对边缘过渡区间进行卷积模糊处理。
其中,常用的卷积模糊方式为高斯模糊、径向模糊等。
步骤S214:将主场景和特效信息进行融合,生成屏幕空间对应的多重渲染效果。
其中,针对步骤S210中的特效遮蔽检测过程之后会出现硬过渡现象,引入了图像融合过滤过程。在图像融合过滤过程中,通过对2D特征场景和3D特征场景的边缘过渡区间进行卷积模糊来提高渲染输出的融合度(即减轻硬过渡现象)。
步骤S216:将多重渲染效果输出至屏幕进行显示。
本发明实施例中的视觉特效渲染的模式为采用二维图像造型技术和三维图像造型技术的混合模式,其分别利用这两种技术进行二维图像造型渲染和三维图像随机造型渲染。
具体地,图3示出了本发明实施例提供的一种二维图像造型渲染的流程图。其中,该二维图像造型渲染过程包括以下步骤:
步骤S302:根据屏幕解析度判断屏幕空间包含的像素点是否隶属于场景信息中的Mesh渲染层级,如果是,则执行步骤304;如果否,则此次二维图像造型渲染过程结束。
步骤S304:将像素点设置为有效渲染对象。
步骤S306:读取场景信息中与像素点隶属的Mesh渲染层级对应的Mesh空间信息和Mesh材质信息。
步骤S308:根据Mesh空间信息和Mesh材质信息调用对应的造型函数进行二维造型渲染,输出2D特征场景。
在输出2D特征场景之后,此次二维图像造型渲染过程结束。
进一步地,图4示出了本发明实施例提供的一种三维图像随机造型渲染的流程图。其中,三维图像随机造型渲染的前两个步骤和二维图像造型渲染的步骤前两个步骤相同。其中,该三维图像随机造型渲染包括以下步骤:
步骤S402:根据屏幕解析度判断屏幕空间包含的像素点是否隶属于场景信息中的Mesh渲染层级,如果是,则执行步骤404;如果否,则此次二维图像造型渲染过程结束。
步骤S404:将像素点设置为有效渲染对象。
步骤S406:提取有效渲染对象在屏幕空间中的空间信息;
步骤S408:按照空间信息和预先检测的光线交点采用随机造型进行三维随机造型渲染,输出3D特征场景。
其中,预先检测的光线交点为按照RayMarching框架进行光线投射产生的射线与主场景中的物体相交后生成的。
在输出3D特征场景之后,此次三维图像随机造型渲染过程结束。
本发明实施例将3D场景渲染和视觉特效渲染解耦,然后按照不同的模式和流程分别渲染3D场景以及屏幕空间视觉特效,结合空间信息将面向三维空间和面向二维空间的渲染结果进行融合,从而达到了视觉欺骗的效果。
综上所述,该屏幕空间渲染方法将3D场景渲染和视觉特效渲染解耦并且结合场景信息进行视觉特效渲染,最终实现了3D场景渲染效果和视觉特效渲染效果的无缝结合,可有效提高渲染效率,节省人力物力,使渲染模式更加灵活,并且达到了实现多种视觉效果的技术效果。
在另一种可能的实施方式中,对应于上述实施方式提供的屏幕空间渲染方法,本发明实施例还提供了一种屏幕空间渲染装置,图5为本发明实施例提供的一种屏幕空间渲染装置的结构示意图。如图5所示,该装置包括:
主场景提取模块30,用于获取实际3D场景,对实际3D场景进行渲染,提取实际3D场景包含的主场景。
场景信息渲染模块32,用于基于主场景进行场景信息渲染,以记录主场景对应的场景信息,其中,场景信息至少包括Mesh渲染层级、Mesh空间信息和Mesh材质信息。
视觉特效渲染模块34,用于结合场景信息,以及预先存储的屏幕空间信息对屏幕空间进行视觉特效渲染,输出场景信息对应的特效信息。
融合模块36,用于将主场景和特效信息进行融合,生成屏幕空间对应的多重渲染效果。
输出显示模块38,用于将多重渲染效果输出至屏幕进行显示。
在实际使用时,上述场景信息渲染模块32用于:
基于主场景,采用预先设置的渲染器,以及渲染模式、渲染算法和渲染流程进行场景信息渲染;
通过MRT机制将渲染后输出的主场景对应的场景信息写入到framebuffer中进行缓存。
进一步地,上述视觉特效渲染模块34用于:
提取屏幕空间信息中包含的物理屏幕的屏幕解析度,其中,屏幕解析度包括物理屏幕的长、宽信息;
基于场景信息和屏幕解析度对屏幕空间进行视觉特效渲染;
通过MRT机制将渲染后输出的场景信息对应的特效信息写入到framebuffer中进行缓存。
进一步地,上述融合模块36用于:
基于Mesh空间信息对经视觉特效渲染输出的特效信息进行边缘检测,输出2D特征场景和3D特征场景的边缘过渡区间;
对边缘过渡区间进行卷积模糊处理;
将卷积模糊处理的特效信息与主场景进行融合。
本发明实施例提供的屏幕空间渲染装置,与上述实施例提供的屏幕空间渲染方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
本发明实施例所提供的屏幕空间渲染方法及装置的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
另外,在本发明实施例的描述中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,ReaD-Only Memory)、随机存取存储器(RAM,RanDom Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (6)
1.一种屏幕空间渲染方法,其特征在于,包括以下步骤:
获取实际3D场景,对所述实际3D场景进行渲染,提取所述实际3D场景包含的主场景;
基于所述主场景进行场景信息渲染,以记录所述主场景对应的场景信息,其中,所述场景信息至少包括Mesh渲染层级、Mesh空间信息和Mesh材质信息;
结合所述场景信息,以及预先存储的屏幕空间信息对屏幕空间进行视觉特效渲染,输出所述场景信息对应的特效信息;
将所述主场景和所述特效信息进行融合,生成所述屏幕空间对应的多重渲染效果;
将所述多重渲染效果输出至屏幕进行显示;
其中,所述结合所述场景信息,以及预先存储的屏幕空间信息对屏幕空间进行视觉特效渲染,输出所述场景信息对应的特效信息的步骤包括:
提取所述屏幕空间信息中包含的物理屏幕的屏幕解析度,其中,所述屏幕解析度包括所述物理屏幕的长、宽信息;
基于所述场景信息和所述屏幕解析度对所述屏幕空间进行视觉特效渲染;
通过MRT机制将渲染后输出的所述场景信息对应的特效信息写入到framebuffer中进行缓存;
其中,所述视觉特效渲染的模式为采用二维图像造型技术和三维图像造型技术的混合模式;
所述基于所述场景信息和所述屏幕解析度对所述屏幕空间进行视觉特效渲染的步骤包括:
根据所述屏幕解析度判断所述屏幕空间包含的像素点是否隶属于所述场景信息中的Mesh渲染层级;
如果是,将所述像素点设置为有效渲染对象;
读取所述场景信息中与所述像素点隶属的所述Mesh渲染层级对应的Mesh空间信息和Mesh材质信息;
根据所述Mesh空间信息和所述Mesh材质信息调用对应的造型函数进行二维造型渲染,输出2D特征场景;
其中,所述将所述像素点设置为有效渲染对象之后,所述方法还包括:
提取所述有效渲染对象在所述屏幕空间中的空间信息;
按照所述空间信息和预先检测的光线交点采用随机造型进行三维随机造型渲染,输出3D特征场景;
其中,所述预先检测的光线交点为按照RayMarching框架进行光线投射产生的射线与所述主场景中的物体相交后生成的。
2.根据权利要求1所述的方法,其特征在于,基于所述主场景进行场景信息渲染,以记录所述主场景对应的场景信息的步骤包括:
基于所述主场景,采用预先设置的渲染器,以及渲染模式、渲染算法和渲染流程进行场景信息渲染;
通过MRT机制将渲染后输出的所述主场景对应的场景信息写入到framebuffer中进行缓存。
3.根据权利要求1所述的方法,其特征在于,将所述主场景和所述特效信息进行融合,生成所述屏幕空间对应的多重渲染效果的步骤包括:
基于所述Mesh空间信息对经所述视觉特效渲染输出的所述特效信息进行边缘检测,输出所述2D特征场景和所述3D特征场景的边缘过渡区间;
对所述边缘过渡区间进行卷积模糊处理;
将所述主场景与卷积模糊处理的所述特效信息进行融合。
4.一种屏幕空间渲染装置,其特征在于,包括:
主场景提取模块,用于获取实际3D场景,对所述实际3D场景进行渲染,提取所述实际3D场景包含的主场景;
场景信息渲染模块,用于基于所述主场景进行场景信息渲染,以记录所述主场景对应的场景信息,其中,所述场景信息至少包括Mesh渲染层级、Mesh空间信息和Mesh材质信息;
视觉特效渲染模块,用于结合所述场景信息,以及预先存储的屏幕空间信息对屏幕空间进行视觉特效渲染,输出所述场景信息对应的特效信息;
融合模块,用于将所述主场景和所述特效信息进行融合,生成所述屏幕空间对应的多重渲染效果;
输出显示模块,用于将所述多重渲染效果输出至屏幕进行显示;
其中,所述视觉特效渲染模块用于:
提取所述屏幕空间信息中包含的物理屏幕的屏幕解析度,其中,所述屏幕解析度包括所述物理屏幕的长、宽信息;
基于所述场景信息和所述屏幕解析度对所述屏幕空间进行视觉特效渲染;
通过MRT机制将渲染后输出的所述场景信息对应的特效信息写入到framebuffer中进行缓存;
其中,所述视觉特效渲染的模式为采用二维图像造型技术和三维图像造型技术的混合模式;
其中,所述视觉特效渲染模块还用于:
根据所述屏幕解析度判断所述屏幕空间包含的像素点是否隶属于所述场景信息中的Mesh渲染层级;
如果是,将所述像素点设置为有效渲染对象;
读取所述场景信息中与所述像素点隶属的所述Mesh渲染层级对应的Mesh空间信息和Mesh材质信息;
根据所述Mesh空间信息和所述Mesh材质信息调用对应的造型函数进行二维造型渲染,输出2D特征场景;
其中,所述将所述像素点设置为有效渲染对象之后,所述装置还包括:
空间信息提取模块,用于提取所述有效渲染对象在所述屏幕空间中的空间信息;
三维随机造型渲染模块,用于按照所述空间信息和预先检测的光线交点采用随机造型进行三维随机造型渲染,输出3D特征场景;
其中,所述预先检测的光线交点为按照RayMarching框架进行光线投射产生的射线与所述主场景中的物体相交后生成的。
5.根据权利要求4所述的装置,其特征在于,所述场景信息渲染模块用于:
基于所述主场景,采用预先设置的渲染器,以及渲染模式、渲染算法和渲染流程进行场景信息渲染;
通过MRT机制将渲染后输出的所述主场景对应的场景信息写入到framebuffer中进行缓存。
6.根据权利要求4所述的装置,其特征在于,所述融合模块用于:
基于所述Mesh空间信息对经所述视觉特效渲染输出的所述特效信息进行边缘检测,输出所述2D特征场景和所述3D特征场景的边缘过渡区间;
对所述边缘过渡区间进行卷积模糊处理;
将所述主场景与卷积模糊处理的所述特效信息进行融合。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910322217.7A CN110060325B (zh) | 2019-04-19 | 2019-04-19 | 屏幕空间渲染方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910322217.7A CN110060325B (zh) | 2019-04-19 | 2019-04-19 | 屏幕空间渲染方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110060325A CN110060325A (zh) | 2019-07-26 |
CN110060325B true CN110060325B (zh) | 2020-07-24 |
Family
ID=67319852
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910322217.7A Active CN110060325B (zh) | 2019-04-19 | 2019-04-19 | 屏幕空间渲染方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110060325B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111228801A (zh) * | 2020-01-07 | 2020-06-05 | 网易(杭州)网络有限公司 | 游戏场景的渲染方法和装置、存储介质、处理器 |
CN113577770A (zh) * | 2021-07-23 | 2021-11-02 | 广州元游信息技术有限公司 | 一种游戏渲染方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012083508A1 (zh) * | 2010-12-24 | 2012-06-28 | 中国科学院自动化研究所 | 互联网上复杂场景真实感快速绘制方法 |
CN105261059B (zh) * | 2015-09-18 | 2017-12-12 | 浙江大学 | 一种基于在屏幕空间计算间接反射高光的渲染方法 |
CN106056661B (zh) * | 2016-05-31 | 2018-08-28 | 钱进 | 基于Direct3D 11的三维图形渲染引擎 |
CN106204703A (zh) * | 2016-06-29 | 2016-12-07 | 乐视控股(北京)有限公司 | 三维场景模型渲染方法和装置 |
CN108196835A (zh) * | 2018-01-29 | 2018-06-22 | 东北大学 | 一种游戏引擎中图元存储和渲染的方法 |
CN108230433B (zh) * | 2018-02-07 | 2021-07-20 | 中译语通科技股份有限公司 | 3d地图散点数据展示方法及系统、信息数据处理终端 |
CN108776987A (zh) * | 2018-05-19 | 2018-11-09 | 成都明镜视觉科技有限公司 | 一种基于屏幕空间的模型轮廓绘制方法 |
-
2019
- 2019-04-19 CN CN201910322217.7A patent/CN110060325B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110060325A (zh) | 2019-07-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2340527B1 (en) | Method and device for providing a layered depth model of a scene | |
JP6626691B2 (ja) | テクスチャ処理方法及びその装置 | |
KR101760323B1 (ko) | 장면의 3차원 뷰들을 렌더링 하기 위한 시스템 및 방법 | |
CN111080780B (zh) | 虚拟角色模型的边缘处理方法和装置 | |
US10229524B2 (en) | Apparatus, method and non-transitory computer-readable medium for image processing based on transparency information of a previous frame | |
CN110060325B (zh) | 屏幕空间渲染方法及装置 | |
KR20110116671A (ko) | 메쉬 생성 장치 및 그 방법, 그리고, 영상 처리 장치 및 그 방법 | |
US9142043B1 (en) | System and method for improved sample test efficiency in image rendering | |
EP2315180A2 (en) | Tile-based rendering apparatus and method | |
KR20210088588A (ko) | 거리 필드 컬러 팔레트 | |
JP2011512717A (ja) | 穴充填のための方法及び画像処理デバイス | |
CN111228801A (zh) | 游戏场景的渲染方法和装置、存储介质、处理器 | |
CN109190437B (zh) | 一种读取二维码的方法及读取装置 | |
JP2004356789A (ja) | 立体映像表示装置及びプログラム | |
CN111435548B (zh) | 一种地图的渲染方法和装置 | |
CN112567430A (zh) | 图像生成装置、图像生成方法和程序 | |
CN113781620B (zh) | 游戏中的渲染方法、装置和电子设备 | |
Vosters et al. | Evaluation of efficient high quality depth upsampling methods for 3DTV | |
US20230164352A1 (en) | Methods and devices for coding and decoding a multi-view video sequence | |
Gao et al. | Virtual view synthesis based on DIBR and image inpainting | |
CN112419147A (zh) | 图像渲染方法及装置 | |
CN117557711B (zh) | 可视域的确定方法、装置、计算机设备、存储介质 | |
CN118196244A (zh) | 序列帧动画的制作方法、装置和电子设备 | |
US9269183B1 (en) | Combined clipless time and lens bounds for improved sample test efficiency in image rendering | |
US20240161236A1 (en) | Method and apparatus with adaptive super sampling |
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 |