混合渲染装置和方法

文档序号:6604215阅读:154来源:国知局
专利名称:混合渲染装置和方法
技术领域
示例实施例涉及一种可以根据目标对象的材料性质、目标对象和用于渲染的给 定相机位置之间的距离、硬件的性能等而选择性地利用渲染方案的混合可扩展渲染装置 (hybrid and scalable rendering device)及其方法。
背景技术
渲染是计算机图形(computer graphic)领域中的基础技术,已经提出了各种渲染 方案。作为渲染方案中的最普遍的技术的栅格化方案(rasterizationscheme)使得计算机 图形硬件的性能得到最大化的利用。然而,栅格化方案仅可以表现直接光(direct light)。 此外,辐射度方案(radiosity scheme)可以适当地表现光的漫射和柔和的阴影(soft shadow)等,但是在表现反射、折射等方面会受到限制。此外,光线跟踪(ray-tracing)可以 适当地表现反射、折射等,但是在表现漫射和柔和的阴影方面会受到限制。因此,需要可以克服传统的渲染方案的限制、根据材料性质使效率最大化、可以在 各种硬件的条件下进行操作的渲染装置和方法。

发明内容
根据示例实施例,可以提供一种混合渲染装置,包括确定单元,选择用于执行三 维(3D)渲染的渲染方案;第一渲染单元,根据第一渲染方案通过表现直接光执行3D渲染; 第二渲染单元,根据第二渲染方案通过表现间接光和阴影中的至少一种来执行3D渲染;第 三渲染单元,根据第三渲染方案通过表现反射光、折射光、衍射光中的至少一种来执行3D渲染。确定单元可以基于用于渲染的目标对象的材料性质以及目标对象和给定的相机 位置之间的距离来选择渲染方案。此外,确定单元可以基于硬件的性能来选择渲染方案。此外,第一渲染方案可以是通过将矢量数据转换为像素图案图像以执行渲染的栅 格化渲染。此外,第二渲染方案可以是基于光源、对象之间的光、漫射的光中的至少一种以执 行渲染的辐射度渲染。此外,第三渲染方案可以是通过跟踪从对象的表面反射的光线的路径以执行渲染 的光线跟踪渲染。确定单元可以包括渲染方案选择单元,从第一渲染方案、第二渲染方案、第三渲 染方案中选择至少一种渲染方案;第一参数调节单元,调节用于辐射度渲染的面片或采样 点的尺寸、面片或采样点的数量;第二参数调节单元,调节用于光线跟踪的掩模的产生、反射反弹的次数、折射反弹的次数。第二参数调节单元可以包括掩模产生调节单元,确定用于光线跟踪的掩模的像 素值;反射次数调节单元,调节反射反弹的次数和折射反弹的次数中的至少一种。掩模产生调节单元可以将用于产生光线的区域的像素值设置为第一设置值,并将 不产生光线的区域的像素值设置为第二设置值。根据示例实施例,可以提供一种混合可扩展渲染方法,包括如下步骤选择用于执 行3D渲染的渲染方案;根据第一渲染方案来表现直接光;根据第二渲染方案来表现间接光 和柔和的阴影中的至少一种;根据第三渲染方案来表现反射光、折射光中的至少一种。选择步骤可以基于用于渲染的目标对象的材料性质来选择渲染方案。选择步骤可以基于硬件的性能来选择渲染方案。第一渲染方案可以是通过将矢量数据转换为像素图案图像以执行渲染的栅格化 渲染。第二渲染方案可以是基于光源、对象之间的光、漫射的光中的至少一种以执行渲 染的辐射度渲染。第三渲染方案可以是通过跟踪从对象的表面反射的光线的路径以执行渲染的光 线跟踪渲染。选择步骤可以包括如下步骤从第一渲染方案、第二渲染方案、第三渲染方案中选 择至少一种渲染方案;调节用于辐射度渲染方案的面片或采样点的尺寸、面片或采样点的 数量;调节用于光线跟踪的掩模的产生、反射反弹的次数、折射反弹的次数。调节掩模的产生、反射反弹的次数、折射反弹的次数的步骤可以包括如下步骤通 过确定用于光线跟踪的掩模的像素值来产生掩模;调节反射反弹的次数和折射反弹的次数 中的至少一种。产生掩模的步骤可以包括将用于产生光线的区域的像素值设置为第一设置值; 将不产生光线的区域的像素值设置为第二设置值。另外的方面和/或优点将在下面的描述中进行一定程度地阐述,并且通过描述在 一定程度上是明显的,或可以通过实施实施例而获知。


通过下面结合附图对实施例的描述,这些和/或其他方面和优点将变得明显并更 易于理解,在附图中图1示出根据示例实施例的混合渲染装置;图2示出图1的混合渲染装置的确定单元的详细构造;图3示出根据另一示例实施例的执行混合渲染的过程;图4示出根据示例实施例的辐射度渲染方案;图5示出根据示例实施例的栅格化渲染方案;图6示出根据示例实施例的光线跟踪渲染方案;图7示出根据示例实施例的产生用于光线跟踪的掩模(mask)的过程;图8示出根据示例实施例的混合渲染方法的可操作流程图;图9示出图8的选择渲染方案的过程的可操作流程5
图10示出图9的调节掩模的产生、反射反弹(bounce)的次数、折射反弹的次数的 过程的可操作流程图;图11示出图10的产生掩模的过程的可操作流程图。
具体实施例方式现在,将对示例实施例进行详细地说明,在附图中示出了示例实施例的示例,其 中,相同的标号始终表示相同的元件。在下面通过参照附图来描述示例实施例以说明本公 开。图1示出根据示例实施例的混合可扩展渲染装置。参照图1,混合可扩展渲染装置100可以包括确定单元110、第一渲染单元120、第 二渲染单元130、第三渲染单元140。确定单元110可以选择用于执行三维(3D)渲染的渲染方案。在本示例中,确定单 元110可以基于用于渲染的目标对象材料性质来选择渲染方案。例如,用于渲染的目标对 象的材料是否需要反射、折射等。可以通过提取用于渲染的目标对象的材料性质来确定材 料是否需要光的漫射等。在本示例中,当目标对象需要反射、折射等时,确定单元110可以 确定执行光线跟踪渲染。此外,当目标对象需要漫射时,确定单元110可以确定执行辐射度 渲染。此外,确定单元110可以基于硬件的性能来选择渲染方案。例如,因为光线跟踪使 用大量的硬件资源,所以在性能低的硬件中,确定单元110可以不执行光线跟踪渲染,而是 可以执行栅格化渲染和辐射度渲染中的至少一种。这里,将参照图2来详细描述确定单元 110。图2示出图1的混合渲染装置的确定单元110的详细构造。参照图2,确定单元110可以包括渲染方案选择单元210、第一参数调节单元220、 第二参数调节单元230。渲染方案选择单元210可以选择第一渲染方案、第二渲染方案、第三渲染方案中 的至少一种渲染方案。即,渲染方案选择单元210可以根据用于渲染的目标对象的材料、硬 件的性能等从各种渲染方案中选择至少一种渲染方案。第一参数调节单元220可以调节用于辐射度渲染的面片(patch)和采样点 (sample point)的尺寸以及面片和采样点的数量。即,第一参数调节单元220可以基于硬 件的性能和输入来调节面片和采样点的尺寸以及面片和采样点的数量,从而调节采样速度 和效果。在本示例中,面片和采样点可以用于确定用于渲染的目标对象的颜色。此外,为了 确定面片或采样点的颜色,详细地计算了相对接近于相机的视点(visual point)的面片或 采样点,并减少了与相对远离相机的视点的面片或采样点的相关的计算量。因此,在图像品 质方面不存在差异的情况下执行渲染。第二参数调节单元230可以调节掩模的产生、反射反弹的次数、折射反弹的次数。 这里,第二参数调节单元230可以包括掩模产生调节单元231和反射次数调节单元232。掩模产生调节单元231可以确定用于光线跟踪的掩模的像素值。这里,掩模用于 指示可以进行光线跟踪的区域。即,掩模产生调节单元231可以产生指示需要反射、折射等 的区域或没有利用反射、折射等的区域的掩模,这是因为不是每个区域都会利用反射、折射等。此外,可以基于相机的视点和对象之间的距离、反射/折射的系数、对象在屏幕中 占据的区域等来产生掩模,因此,可以调节渲染速度。反射次数调节单元232可以调节反射反弹的次数和折射反弹的次数中的至少一 种。反射次数调节单元232可以基于硬件的性能等通过调节反射反弹的次数和折射反弹的 次数来调节渲染速度。再次参照图1,第一渲染单元120可以根据第一渲染方案通过表现直接光来执行 3D渲染。这里,第一渲染方案可以为通过将矢量数据转换为像素图案图像以执行渲染的栅 格化渲染。在本示例中,栅格化渲染可以使计算机图形硬件得到最大化的利用。第二渲染单元130可以根据第二渲染方案通过表现间接光和柔和的阴影中的至 少一种来执行3D渲染。这里,第二渲染方案可以是可以基于光源、对象之间的光、漫射的光 中的至少一种和阴影来执行渲染的辐射度渲染。在本示例中,辐射度渲染可以适当地表现 光的漫射、柔和的阴影等。第三渲染单元140可以根据第三渲染方案通过表现反射光、折射光、衍射光中的 至少一种来执行3D渲染。这里,第三渲染方案可以为可以通过跟踪从对象的表面反射的光 线的路径以执行渲染的光线跟踪渲染。在本示例中,光线跟踪渲染可以适当地表现光的反 射、光的折射等。如上所述,可以基于用于渲染的目标对象的材料和硬件的性能中的至少一种来选 择渲染方案,因此,可以最大化渲染的效率,并可以在各种硬件环境中有效地执行渲染。图3示出根据另一示例实施例的执行混合渲染的过程。参照图3,在操作310中,可以输入作为构成场景(scene)的成组的对象的场景图 形(scene graph)和光信息以作为输入数据。在操作320中,可以执行计算诸如光的漫射、柔和的阴影等的全局照明(global illumination)的效果的辐射度渲染。这里,可以从构成场景的对象的表面提取面片或采样 点,以执行辐射度渲染,可以模拟面片和采样点的相互影响,因此,可以计算面片和采样点 的颜色。在操作330中,通过利用提取的面片或采样点的颜色信息、相机、对象的材料信息 以执行栅格化渲染,可以在帧缓冲器中存储将被输出在屏幕上的每个像素值。在操作340中,在执行光线跟踪渲染的过程中,可以计算诸如光的反射、折射等的 全局照明的效果,可以通过利用该计算得到的颜色值来更新在操作320中帧缓冲器的存储 的颜色值。在操作S350中,可以基于更新的值来最终产生反映了光的折射和反射的3D输出 图像。图4示出根据示例实施例的辐射度渲染方案。参照图4,辐射度渲染可以基于光量的分布将整个表面分为小片(pieCe)410、 420、430,或者可以从表面提取采样点,以计算在对象之间交换(exchange)的光的效果、漫 射的光等、以及来自光源的光。即,将构成场景的整个表面分为被称作面片的片410、420、 430,可以计算从光源传输到第一面片、然后从第一面片传输到第二面片、然后从第二面片 传输到第三面片的光能的量。
在本示例中,例如,当将辐射度渲染应用于由宽的白色的墙壁和红色和蓝色的地 面构成的场景时,白色的墙壁可以因从红色的地面反射的漫射光的影响而呈现红色。图5示出根据示例实施例的栅格化渲染方案。参照图5,可以通过具有3D位置和颜色的定点(definite point) 510来形成一组 三角形520,该组三角形520可以转换为图形硬件帧缓冲器的像素530和540。然而,栅格化 渲染可以使用图形硬件加速(graphic hardwareacceleration),并可以在表现诸如反射、 折射、间接光等的全局照明方面存在困难。图6示出根据示例实施例的光线跟踪渲染方案。参照图6,光线跟踪渲染可以为这样的方案,S卩,通过从视点沿屏幕中的每个像素 的方向传播光线来计算可视对象(visible object)和视点的亮度。在本示例中,从视点 传播的主光线(primary ray)610可以执行用于计算在光线到达对象时的时刻是否包括 阴影的阴影光线(shadow ray)640、用于在对象具有反射表面时得到反射图像的反射光线 630,用于在对象具有折射表面时得到折射图像的折射光线620等的递归产生(recursive generation) 0光线跟踪渲染可以适当地表现诸如反射、折射等的全局照明。然而,因为光 线跟踪需要大量的计算,所以在实时渲染中利用光线跟踪存在困难。此外,当表现光的漫射 和柔和的阴影时,需要的光线的量迅速增加,从而增加了计算的量。图7示出根据示例实施例的产生用于光线跟踪的掩模的过程。参照图7,掩模的分辨率可以与屏幕的分辨率相同,并可以指示使用光线跟踪渲染 的区域720和不使用光线跟踪渲染的区域710。例如,当像素具有掩模中的预定区域的值且 该值不为零时,可以针对该像素产生光线,并可以针对该像素执行光线跟踪。这里,可以以 构成场景的对象为单位来产生掩模,也可以基于对象的反射系数和折射系数来产生掩模。例如,当对象的材料的反射系数和折射系数小于预定值时,可以将绘制该对象的 区域的像素值设置为零。此外,当对象距视点超过预定值时,可以将绘制该对象的区域的像 素值设置为零。此外,绘制对象的区域小于预定值,将该绘制对象的区域的像素值设置为 零。图8示出根据示例实施例的混合可扩展渲染方法的可操作流程图。参照图8,在操作810中,可以选择用于执行3D渲染的渲染方案。例如,可以基于 用于渲染的目标对象的材料性质和距给定相机的距离、硬件的性能等来确定渲染方案。这 里,用于渲染的目标对象的材料性质可以包括用于渲染的目标对象是否使用反射、折射等, 并可以包括用于渲染的目标对象是否使用间接光的表现。这里,将参照图9详细地描述操 作 810。图9示出图8的选择渲染方案的过程的可操作流程图。参照图9,在操作910中,可以选择第一渲染方案、第二渲染方案、第三渲染方案中 的至少一种渲染方案。这里,第一渲染方案可以为栅格化渲染,第二渲染方案可以为辐射度 渲染,第三渲染方案可以为光线跟踪渲染。在操作920中,可以调节面片或采样点的尺寸、面片或采样点的数量。在本示例 中,面片或采样点可以用于执行辐射度渲染。因此,可以详细计算接近于相机的视点的面片 或采样点,并可以减少与远离视点的面片或采样点相关的计算量。在操作930中,可以调节光线跟踪的掩模的产生、反射反弹的次数、折射反弹的次数。这里,将参照图10详细描述操作930。图10示出图9的调节掩模的产生、反射反弹的次数、折射反弹的次数的过程的可 操作流程图。参照图10,在操作1010中,可以通过确定用于光线跟踪的掩模的像素值来产生掩 模。在本示例中,可以将执行光线跟踪的区域的像素值设置为与不执行光线跟踪的区域的 像素值不同。将参照图11来详细描述掩模的产生。图11示出图10的产生掩模的过程的可操作流程图。参照图11,在操作1110中,将用于产生光线的区域的像素值设置为第一设置值。 在本示例中,第一设置值可以为大于零的随机值。在操作1120中,将不产生光线的区域的像素值设置为第二设置值。在本示例中, 第二设置值可以为零。因此,第一设置值和第二设置值彼此不同,可以基于第一设置值和第二设置值来 确定在渲染期间是否使用光线跟踪渲染。再次参照图10,在操作1020中,可以调节反射反弹的次数和折射反弹的次数中的 至少一种。可以基于硬件的性能来调节反射反弹的次数和折射反弹的次数。此外,在硬件 的性能高的情况下,可以将反射反弹的次数和折射反弹的次数设置为高,因此,可以表现优 良的3D效果。再次参照图8,在操作820中,可以根据第一渲染方案通过表现直接光来执行3D渲 染。在本示例中,第一渲染方案可以为栅格化渲染。在操作830中,可以根据第二渲染方案通过表现间接光和柔和的阴影中的至少一 种来执行3D渲染。在本示例中,第二渲染方案可以为辐射度渲染。在操作840中,可以根据第三渲染方案通过表现反射光、折射光、衍射光中的至少 一种来执行3D渲染。在本示例中,第三渲染方案可以为光线跟踪渲染。在本示例中,可以选择性地应用第一渲染方案、第二渲染方案、第三渲染方案以执 行3D渲染。如上所述,基于用于渲染的目标对象的材料性质来选择性地应用至少一种渲染方 案,从而最大化每种渲染方案的优点的利用,并最大化渲染的效率。此外,基于硬件的性能来应用渲染方案,从而调节渲染速度和效果,并使渲染的执 行针对硬件的性能而优化。还可以通过介质(例如,计算机可读介质)中/上的计算机可读代码/指令来实 施根据示例性实施例的混合可扩展渲染方法,以控制至少一个处理元件来实现上面描述的 任意实施例。介质可以与任何允许计算机可读指令的存储和/或传输的介质/媒介对应。例如,计算机可读代码可以以各种方式在介质上记录/传输,介质的示例包括记 录介质,诸如磁存储介质(例如,ROM、软盘驱动器、硬盘驱动器等)、光记录介质(例如, CD-ROM或DVD)、传输介质(诸如携带或包括例如互联网的元件的介质)。因此,根据本发明 的实施例,例如,介质可以为这样的包括或携带信号或信息的经限定并可测量的结构,诸如 携带比特流(bitstream)的装置。介质也可以为分布式网络,从而计算机可读代码以分布 式的方式进行存储/传输并执行。此外,仅作为示例,处理元件可以包括处理器或计算机处 理器,处理元件可以为分布式和/或包括在单个装置中。
虽然已经示出并描述了一些示例实施例,但是本领域技术人员应该理解的是,在 不脱离本发明的原理和精神的情况下,可以在这些示例实施例中进行改变,本发明的范围 由权利要求及其等同物限定。
权利要求
一种混合渲染装置,包括确定单元,选择用于执行3D渲染的渲染方案;第一渲染单元,根据第一渲染方案通过表现直接光来执行3D渲染;第二渲染单元,根据第二渲染方案通过表现间接光和阴影中的至少一种来执行3D渲染;第三渲染单元,根据第三渲染方案通过表现反射光、折射光、衍射光中的至少一种来执行3D渲染。
2.如权利要求1所述的装置,其中,确定单元基于用于渲染的目标对象的材料性质来 选择渲染方案。
3.如权利要求1所述的装置,其中,确定单元基于硬件的性能来选择渲染方案。
4.如权利要求1所述的装置,其中,第一渲染方案是通过将矢量数据转换为像素图案 图像以执行渲染的栅格化渲染。
5.如权利要求1所述的装置,其中,第二渲染方案是基于光源、对象之间的光、漫射的 光中的至少一种以执行渲染的辐射度渲染。
6.如权利要求1所述的装置,其中,第三渲染方案是通过跟踪从对象的表面反射的光 线的路径以执行渲染的光线跟踪渲染。
7.如权利要求1所述的装置,其中,确定单元包括渲染方案选择单元,从第一渲染方案、第二渲染方案、第三渲染方案中选择至少一种渲 染方案;第一参数调节单元,调节用于辐射度渲染的面片或采样点的尺寸、面片或采样点的数量;第二参数调节单元,调节用于光线跟踪的掩模的产生、反射反弹的次数、折射反弹的次数。
8.如权利要求7所述的装置,其中,第二参数调节单元包括 掩模产生调节单元,确定用于光线跟踪的掩模的像素值;反射次数调节单元,调节反射反弹的次数和折射反弹的次数中的至少一种。
9.如权利要求8所述的装置,其中,掩模产生调节单元将用于产生光线的区域的像素 值设置为第一设置值,并将不产生光线的区域的像素值设置为第二设置值。
10.一种混合渲染方法,包括如下步骤 选择用于执行3D渲染的渲染方案; 根据第一渲染方案来表现直接光;根据第二渲染方案来表现间接光和柔和的阴影中的至少一种; 根据第三渲染方案来表现反射光、折射光、衍射光中的至少一种。
11.如权利要求10所述的方法,其中,选择步骤基于用于渲染的目标对象的材料性质 来选择渲染方案。
12.如权利要求10所述的方法,其中,选择步骤基于硬件的性能来选择渲染方案。
13.如权利要求10所述的方法,其中,第一渲染方案是通过将矢量数据转换为像素图 案图像以执行渲染的栅格化渲染。
14.如权利要求10所述的方法,其中,第二渲染方案是基于光源、对象之间的光、漫射的光中的至少一种以执行渲染的辐射度渲染。
15.如权利要求10所述的方法,其中,第三渲染方案是通过跟踪从对象的表面反射的 光线的路径以执行渲染的光线跟踪渲染。
16.如权利要求10所述的方法,其中,选择步骤包括如下步骤从第一渲染方案、第二渲染方案、第三渲染方案中选择至少一种渲染方案; 调节用于辐射度渲染的面片或采样点的尺寸、面片或采样点的数量; 调节用于光线跟踪的掩模的产生、反射反弹的次数、折射反弹的次数。
17.如权利要求16所述的方法,其中,调节掩模的产生、反射反弹的次数、折射反弹的 次数的步骤包括如下步骤通过确定用于光线跟踪的掩模的像素值来产生掩模; 调节反射反弹的次数和折射反弹的次数中的至少一种。
18.如权利要求17所述的方法,其中,产生掩模的步骤包括 将用于产生光线的区域的像素值设置为第一设置值;将不产生光线的区域的像素值设置为第二设置值。
全文摘要
本发明提供一种混合渲染装置和方法。公开了一种混合可扩展渲染装置及其方法。混合可扩展渲染装置可以根据用于渲染的目标对象的材料性质、目标对象和给定的相机位置之间的距离、硬件的性能等选择性地应用栅格化渲染、辐射度渲染、光线跟踪渲染中的至少一种。混合渲染装置包括确定单元,选择用于执行3D渲染的渲染方案;第一渲染单元,根据第一渲染方案通过表现直接光来执行3D渲染;第二渲染单元,根据第二渲染方案通过表现间接光和阴影中的至少一种来执行3D渲染;第三渲染单元,根据第三渲染方案通过表现反射光、折射光、衍射光中的至少一种来执行3D渲染。
文档编号G06T15/00GK101923727SQ20101020061
公开日2010年12月22日 申请日期2010年6月8日 优先权日2009年6月10日
发明者安廷桓, 安民修, 河仁友, 高永仁 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1