具有增强的深度效果的计算机图形的制作方法

文档序号:11142397
具有增强的深度效果的计算机图形的制造方法与工艺

本公开的各方面涉及三维图形处理和图像序列,其为观看者提供三维深度的增强幻觉。



背景技术:

大多数显示装置依赖于二维像素阵列或另外依赖于二维图像,以便向观看者呈现图形,即使图形的下面的内容可能是三维的(例如,渲染的3D计算机图形、现实记录内容和类似者)也如此。虽然足够,但当以此方式在二维显示器上显示3D图形时对于观看者来说会丢失深度的特定维度,且已经作出许多尝试来开发可提供3D深度的丰富幻觉以便为观看者增强视觉体验的技术。

用于模拟3D深度的幻觉的传统技术常常依赖于体视学的原理以向观看者呈现模拟深度的幻觉的3D图像。体视学依赖于两个偏移图像,其一起组成为3D图像,其中分别向观看者的左眼和右眼中的每一者单独地呈现所述两个偏移图像。每个偏移图像自身是相同内容的二维图像,但这些左眼和右眼图像被每只眼睛单独地感知,且在大脑中进行组合以便提供深度的幻觉。图像中的偏移实质上模拟在现实世界中人类一般使用他们的偏移的左眼和右眼感知深度的方式,因此产生深度的幻觉。

遗憾的是,虽然立体显示器已经存在了数十年,但它们从未完全实现用于取代常规二维显示器的主流流行类型。立体显示装置常常需要特殊眼镜组,这对于观看者来说是麻烦的。另外,需要某一形式的专用硬件以便呈现立体图像,这增加了成本且渲染不适合于在许多现有的显示装置上观看的立体图像。

近来,已经针对被称为“3D GIF”的小帧序列尝试了用于模拟深度的幻觉的技术,所述小帧序列依赖于存储在单个动画GIF(图形交换格式)文件中的小组图像。二维GIF一般循环通过小图像序列,来自预先记录或预先渲染的视频,通常为少量帧,以便产生具有运动幻觉的短动画。通常以与这些普通二维GIF类似的方式将3D GIF动画化,但并入了某些特征来增强帧序列的3D效果,使得好像图像的某些预先选择的对象在观看者处弹出以便在深度方向上模拟运动幻觉,而不需要任何特殊立体或三维显示装置。

传统上,3D GIF主要通过使用以下技术中的至少一者来完成此技艺。

第一种技术利用固定到帧的一组垂直定向的实心白条,借此描绘下面的场景内容。当动画前进通过帧序列且场景中的内容要素在动画期间改变位置时,这些条的相对于场景的位置在整个动画中保持固定在静止位置,从而实质上在屏幕的位置处为观看者界定参考平面。此外,这些垂直条起初完全遮挡了它们所在的场景的内容的一部分,从而完全阻碍对帧的下面的对象的观看。这给出被阻碍的部分位于所述条后方的表象。当动画前进到序列中的稍后帧时,所述条的部分被选择性地移除,从而给出以下表象:由3D GIF创造者手动确定成被感知为在深度方向上移动的一个或多个预先选择的对象已经在这些条的前方移动(更靠近观看者)且已经跨过由这些条界定的平面。这产生以下幻觉:当动画前进时,预先选择的对象在深度方向上移动更靠近观看者,进而为观看者模拟出3D效果。

一些传统3D GIF尝试增强深度的幻觉的另一种方式是通过场景的焦点特性。举例来说,在一些例子中,当动画前进到序列中的稍后帧时,会更改场深度。场深度起初可能较大,使得广泛范围的场景处于焦点对准,不仅包括预先选择的对象,而且还包括大部分背景和场景中的其他对象。在动画前进时,场深度以一种方式收缩,使得预先选择的对象保持焦点对准,但大部分背景和其他远距离对象脱离焦点。当动画前进到稍后阶段时,稍后帧中的远距离对象的所得的模糊效果于是增强了预先选择的对象已经在深度方向上移动的感知程度。在一些例子中,场深度的大小可保持静态,但可使用深度方向上的焦点的位置来增强幻觉。举例来说,焦点的位置可在深度方向上更靠近观看者,例如更靠近屏幕,且预先选择的对象起初可位于远距离背景中且脱离焦点。当对象移动更靠近观看者时,其得到更好的聚焦,因为其在深度方向上的运动使得其更靠近焦点。基于焦点特性的这两种技术实质上依赖于由脱离焦点的背景对象产生的深度的增强幻觉。

遗憾的是,这些传统技术仅适合于预定帧的短序列,且需要人类创造者对图像的谨慎手动操纵。需要手动观察以便确定哪些要素可能在深度方向上移动,且相应地调整帧的视觉特性。另外,在人类创造者未谨慎选择的情况下,可能遮挡了场景的重要要素,且添加的效果可能更分散观看者的注意力。

在此背景下出现了本公开的各方面。

附图说明

可容易通过结合附图考虑以下详细描述来理解本公开的教示,附图中:

图1A到图1D是描绘根据本公开的各方面的具有增强3D效果的运动序列的示意图。

图2A到图2D是描绘根据本公开的额外方面的具有增强3D效果的另一运动序列的示意图。

图3A到图3D是描绘根据本公开的额外方面的具有增强3D效果的另一运动序列的示意图。

图4A到图4H是描绘根据本公开的各种实施的参考图像的不同实例的示意图。

图5A到图5B是描绘根据本公开的各方面的以增强3D效果渲染图形的方法的流程图。图5A描绘渲染3D内容与参考图像的方法,且图5B描绘用于渲染图5A中所描绘的参考图像的更详细流程图。

图6是描绘根据本公开的各方面的使用基于多边形的图形渲染流水线根据图5A到图5B中所描绘的方法来渲染图形的方法的流程图。

图7是根据本公开的各方面的被配置成渲染图形的系统的示意图。

具体实施方式

虽然以下详细描述出于说明的目的而含有许多具体细节,但本领域普通技术人员将了解,对以下细节的许多变化和更改在本发明的范围内。因此,在没有本发明的一般性的任何损失的情况下且在不向本发明强加限制的情况下陈述下文所描述的本发明的示范性实施例。

本公开的各方面包括用于增强视频和图形帧序列的三维效果的技术。本公开的某些实施可适合于实时应用,例如响应于用户输入而渲染的视频游戏和其他计算机图形,其中可由图形处理系统在先前不了解场景的下面的内容的情况下自动添加三维效果。

根据某些方面,可通过渲染通过观看窗口的场景与固定到场景的观看窗口的参考图像而提供三维效果。在某些实施中,可基于用于3D图形渲染流水线的深度缓冲器(例如,图形存储器中的Z缓冲器)中含有的信息相对于场景中的对象来渲染参考图像。由于深度缓冲器常常已经被维持用于场景内的内容的隐藏表面移除和z挑选,所以深度缓冲器为系统提供一种用于以一种方式将额外参考图像自动地覆盖到场景的内容上以使得基于场景内的内容要素的深度来增强深度的幻觉的方式。

根据某些额外方面,通过使用像素着色器来产生参考图像,参考图像还可固定到观看窗口,所述像素着色器可提供让应用渲染固定到观看窗口的参考图像的直观方式。当在深度缓冲器中与信息组合时,可容易基于每个像素来确定对象相对于参考图像的深度,从而以增强三维效果的方式在运行中渲染参考图像。

根据某些额外方面,参考图像可包括某些特征,其防止参考图像完全遮挡场景中的下面的对象的观看。举例来说,所述参考图像可为半透明的,且允许被遮挡的对象以某一方式可穿过参考图像部分看到。由于场景的内容可能未预先知道,所以此可避免参考图像对场景的重要对象的干扰和遮挡。

为了说明本公开的某些方面,图1A到图1D描绘随覆盖的参考图像渲染以提供3D深度的增强幻觉的运动序列的实例。图1A到图1D的不同所说明的图像中的每一者可对应于运动序列中的不同时间点。在所说明的实例中,运动序列的不同时间点分别在图1A到图1D中被描绘为含有3D图形的运动序列中的不同帧102a-d。

所说明的图形描绘由一个或多个对象构成的三维场景内容104,且三维场景内容104映射到位于场景的二维图像平面处的二维观看窗口106。在概念上,可将图像平面理解为位于场景中的对应于观看者的显示屏幕的位置处,且可将观看窗口106(有时在计算机图形中被称为“视口”)理解为界定所述图像平面的界限,场景的下面的内容104通过所述界限在帧102a-d中表示。

在此实例中,当向观看者呈现图形时,图像平面可对应于显示装置的平面,且观看窗口106可为图像平面的区,例如,对应于常规矩形显示屏幕或矩形显示像素阵列的矩形区,其对所显示的三维内容的部分进行界定。三维内容104可映射到二维窗口106,以便例如经由将三维内容投影到观看窗口106的二维平面上的光栅化过程将内容104呈现为二维图像102a-d。在某些实施中,观看窗口106可为用于捕获计算机产生的图形的虚拟相机。如果三维内容将为使用物理相机捕获的现实内容,那么观看窗口将对应于聚焦到检测器平面上的相机透镜,例如用于捕获现实三维内容的像素传感器的薄膜或阵列。

在图1A到图1D中所描绘的实施中,可参考坐标系108来界定三维内容104。在所说明的示意图中,使用笛卡尔X-Y-Z坐标系。X和Y坐标对应于观看窗口106的水平轴和垂直轴,而Z方向对应于场景的深度轴。在此实例中,水平轴、垂直轴和深度轴分别被标记为X、Y和Z,但应理解,在不脱离其中界定的方向的范围和精神的情况下可容易使用不同的标记来界定等效的轴。此外,在某些实施中,除了笛卡尔坐标之外的替代性坐标系可用于以与所说明的笛卡尔坐标系等效的方式界定视口上的水平位置和垂直位置,以及内容的深度。另外,应理解,虽然所说明的实例描绘“左手”笛卡尔坐标,其中Z轴延伸进入页面且远离观看者,使得较高的Z值对应于较深的要素,但应理解,右手笛卡尔坐标系将是等效的且简单地具有Z轴的相反方向,其中较低的Z值对应于较深的要素。

在图1A到图1D中所描绘的实施中,通过帧102a-d描绘的一个或多个对象包括在场景中的3D世界中在深度方向(Z方向)上移动的第一对象110。在此实例中,第一对象110被说明为在序列随时间前进到稍后帧时滑行成在深度方向上更靠近观看者的蛇。为了增强蛇移动的深度的三维幻觉,所述帧还与覆盖到场景的内容上的参考图像112一起形成。参考图像112固定到场景的观看窗口106,使得为观看者界定参考平面。所述参考图像可在概念上显得处于观看者的屏幕的平面处,且因此处于场景的图像平面处。然而,在各种实施中,可将参考图像112界定为处于相对于观看窗口的任何特定深度(例如,任何特定Z深度值)处。

如图1A到图1D中所示,蛇起初被参考图像遮挡且起初在场景中远距离地定位,例如,其具有超出所界定的深度阈值参考图像的深度值且显得远离观看者。因此,如可在早先的帧102a-c中看到,其至少部分被参考图像112遮挡,且此对象上绘制了参考图像。随着蛇移动更靠近观看窗口106的图像平面且更靠近观看者,其深度值减小。在图1D中所描绘的帧102d中,其已经越过参考图像112的深度阈值,且现在显得是从观看者处的屏幕弹出,这是因为对象的深度的至少一部分不再超出参考112的所界定的深度阈值。为了实现此效果,现在在参考图像上绘制或渲染蛇的部分,以便遮挡其部分,这与其中整条蛇在场景中的远方且在观看窗口(其中在观看窗口106上界定参考图像)的所有位置处被参考图像遮挡的先前帧形成对比。

由于参考图像112固定到观看窗口106,而不是虚拟世界的下面的内容104的一部分,所以参考图像对观看者来说可具有位于观看者的空间中的感觉,例如,其可被观看者的头脑感知为附接到显示装置或位于显示屏幕的平面处。随着场景的内容由于对象四处走动、相机平移、相机缩放和类似者而改变,参考图像112可以某一方式固定到观看窗口,而不是不能观看或随着场景的内容而改变在观看窗口上的位置。当对象突然遮挡了参考图像时,其可因此让观看者觉得好像对象是从屏幕弹出或者以其它方式更靠近观看者。应注意,对象110(例如,所说明的实例中的蛇)可实际上在图像的不同部分处具有不同的深度。具体来说,普通对象110可在帧中的不同像素或观看窗口的不同水平和垂直(X-Y)位置处具有不同的深度(Z)。如图1D中所示,蛇的尾巴部分比其头部部分在场景中更深。因此,对象110的一部分可能被参考图像112的部分遮挡且被绘制在其后方,这是因为此部分超出参考图像的深度阈值,而此同一对象的另一部分可替代地遮挡参考图像且在其上方绘制,这是因为蛇110的此另一部分在参考图像的深度阈值以下,如图1D的说明性实例中所示。

在图1A到图1D中所描绘的实施中,将参考图像112描绘为完全不透明的参考图像。因此,对位于参考图像112后方的场景内容104的部分的观看被参考图像完全遮挡。在此实例中,参考图像的像素,例如在绘制这些像素的观看窗口的水平和垂直坐标处,是全白的,且观看者在这些位置处看不到映射到观看窗口106的这些部分的下面的场景内容104。

在本公开的某些实施中,可能以此方式完全遮挡场景的任何部分是不合意的。举例来说,在实况交互游戏中,对重要游戏要素的观看可能被隐藏起来而使用户看不到,且可能降低游戏的可玩性。在系统在运行中自动产生参考图像的其他计算机应用中,这也可为不合意的,这是因为场景中的重要对象可能以分心的方式被隐藏起来而使观看者看不到,且系统可能不另外在重要和不重要的要素之间进行区别。因此,本公开的某些实施可使参考图像并入有允许穿过参考图像部分看到场景内容的特性。

图2A到图2D描绘具有部分看穿参考图像212的帧202a-d的实例性序列,其使得被参考图像212遮挡的下面的场景内容104仍可穿过参考图像212部分看见。图2A到图2D中所描绘的实例性帧序列类似于图1A到图1D中所描绘的实例;然而,在所说明的实施中,在被界定为包括参考图像的观看窗口的子集处,例如界定参考图像212的观看窗口106的那些水平坐标和垂直坐标处,被遮挡的场景内容渲染为部分可见,使得它们的可见性被降低,但未完全消除。

更具体来说,在图2A到图2D中所描绘的实例性帧序列中,参考图像212是半透明的,而不是完全不透明的。应注意,图2A到图2D中所描绘的实例的实施可包括多种不同的透明程度和类型,只要被参考图像遮挡的3D内容104的部分不完全不可见(即,如它将与不透明的参考图像一起出现)或完全可见(即,在它将不与参考图像一起出现时不变)。

举例来说,且不以限制的方式,半透明参考图像可类似于有色眼镜出现,使得将被遮蔽的场景内容104的色彩更改一定程度。作为另一实例,半透明参考图像还可包括模糊效果,且参考图像可看似类似于雾化眼镜或将下面的内容模糊到一定程度的某一其他类型的元件。在某些实施中,可将参考图像并入到实时应用中,且参考图像的透明度可为可由用户以滑条或其他用户设定的形式配置,其允许根据用户偏好来设定透明程度。

应注意,通过使用透明程度,如图2A到图2B的说明性实例中所示,系统可能够将参考图像212自动产生到场景内容104上,而不需要关心遮蔽重要的要素。这在游戏和其他交互式实施中可特别有用,因为如果遮蔽了重要的交互性要素,那么可能会降低游戏的可玩性。

在图2A到图2D的所说明的实例中,参考图像显得半透明,因为其以一种方式渲染,使得减小来自被遮挡内容的透射穿过参考图像的所感知光的量。然而,还可以有可能通过以下操作将被遮挡的内容渲染为部分可见:将参考图像渲染为折射元件,其模拟光的弯曲,使得被参考图像212遮蔽的场景的内容104显得失真,但仍可见。举例来说,这可通过将参考图像212渲染为具有凸表面或凹表面的一个或多个玻璃条来实现。

应注意,参考图像应固定到观看窗口,使得当图形的下面的内容改变且观看窗口平移且改变位置时,参考图像在其中通过参考图像增强3D效果的运动序列期间保持附接到观看者的参考点。然而,尽管此参考固定到观看窗口,但其在运动序列前进时不必固定在静态位置或固定在静态形式。而是,在本公开的某些实施中,参考图像可为动态的,且在运动序列前进时在一个或多个特性方面改变。举例来说,在某些实施中,所述参考可在大小、形状、位置、色彩、透明度或其任何组合方面改变。

是实施静态还是动态参考图像的选择可取决于所描绘的特定运动序列的性质。在某些实施中,可能需要在应用3D效果的整个特定运动序列(例如,帧序列)中使用静态参考图像,以便更稳固地使参考图像离开场景内容且进入观看者的世界。举例来说,观看窗口上的参考图像的水平位置和垂直位置可在运动序列期间跨不同时间增量(例如,跨帧)保持静态和恒定,且被界定为含有参考图像的观看窗口的部分可随时间恒定。

然而,在其它实施中,可能需要利用动态参考图像,以便适应场景的内容、观看视角改变,或出于某一其他原因。举例来说,当场景切到不同的相机视角时,参考图像可切到观看窗口的不同部分,或以更好地适合于所更改的内容或新视角的方式改变形式。通过另一实例,可将参考图像界定为关于下面的内容以逐渐的方式改变。举例来说,可将参考图像界定为一对条,其在相机放大时逐渐分隔地越来越远,且在相机缩小时一起更靠近,进而增强视口的深度运动的幻觉。通过另一实例,还可将参考图像界定为一个或多个条,其各自在相机放大时逐渐变更厚,且在相机缩小时变更薄,从而为观看者视角产生深度运动的类似幻觉。

图3A到图3D描绘具有增强3D效果的帧序列的实例,其类似于图1A到图1D和图2A到图2D所描绘的序列,不同之处在于,在此实例中,参考图像312是动态的,且参考图像的一个或多个特性在由图形描绘的运动序列前进时改变。在图3A到图3D中所描绘的实例中,参考图像312的透明度在运动序列前进到运动序列中的稍后阶段时改变。

具体来说,在所说明的实施中,参考图像312起初是不透明的,如图3A中所描绘的帧302a中所示。因此,包括对象110的被参考图像遮挡的场景内容104的部分起初不可见。然而,如图3B中所示,参考图像转变为经更改的参考图像,其允许被遮挡的场景内容104部分可见。具体来说,在所说明的实例中,参考图像312转变为半透明参考图像。

在所说明的实例中,透明程度在场景前进到运动序列的稍后阶段(例如,稍后图形帧)时逐渐改变。如在说明中可看到,参考图像的透明程度在图3C中比其在较早的时间点图3B中更大。因此,参考图像可从不透明逐渐淡化到不同半透明程度,或一个或多个其他特性可在运动序列前进时逐渐改变。然而,本公开的实施不限于参考图像的特性中的逐渐或连续改变,而是还可包括特性中的突然改变,且可包括参考图像的形式或类型中的突然改变。

图3A到图3D中所描绘的实例的一个益处是,其可将不透明参考图像与半透明参考图像(例如,分别在图1A到图1D和图2A到图2D中所示)两者的有益特征进行组合。举例来说,不透明的参考图像可提供更生动的3D效果,但也可能更大地遮蔽场景的下面的内容104,而半透明参考图像或其他看透的参考图像可提供不大生动的效果,但提供对场景内容104的更清楚观看。通过起初使参考图像闪现为不透明,如图3A到图3D的所说明的实例中所示,参考图像可更稳固地植入观看者的头脑中,从而在观看者的头脑中赋予更大的3D幻觉,即使其稍后转变为半透明或看透性质也如此。

此外,在某些实施中,参考图像的一个或多个特性可周期性地改变。举例来说,可周期性地重复图3A到图3D的实例性过程,使得参考图像周期性地转变为不透明且转变回到看透,以便在观看者的头脑中维持固定的参考,而不会连续地遮蔽场景中的要素。在涉及视频游戏和某些其他计算机应用的实施中,系统可进一步被配置成对一个或多个转变定时,从而与游戏或应用的当前状态或场景的内容一致。举例来说,视频游戏的内容可含有某些时间点,例如剪切场景、菜单选择和类似者,其中遮蔽要素可较少受关注。在某些实施中,可对参考图像的一个或多个特性进行定时,从而与应用的状态的某些点一致。举例来说,参考图像可被配置成当场景的内容与某些预定特性匹配时(例如当内容是视频游戏中的剪切场景时、在体育游戏中的“比赛”之间等)从半透明转变为不透明。

在图1到图3的所说明的实例中,已经将参考图像描绘为一对两个垂直柱。更具体来说,已经将图1到图3的参考图像描绘为一对垂直矩形条,且另外,已经将矩形条描绘为连续且延伸观看窗口的整个垂直高度。在这些实例中,参考图像的垂直条可具有将图形划分为多个面板以在每个帧中的图像上产生联画效果的效果。具体来说,在图1到图3的实例中使用延伸图形的整个高度的两个垂直条会在图形上产生三联画效果(即,三个面板),但其他数目的条可产生其他联画样式的图形(其他数目的面板)。

在某些实施中,可能需要利用三联画或联画样式帧,因为这产生中心面板和两个或更多侧面板,且中心面板可渲染为视口的主或主要面板。举例来说,根据本公开的各方面,图形处理系统可被配置成主要在中心面板中渲染场景的内容,且使用侧面板来用于增强3D幻觉的补充效果。

强调的是,根据本公开的各方面,上文所描述的参考图像的许多变化是可能的。虽然已经将前面实例中的参考图像描绘为渲染到场景的观看窗口上的一对两个垂直矩形条,但本公开的实施可包括参考图像上的其他变化。图4A到图4H描绘根据本公开的各方面的参考图像的各种实施。

如图4A和图4B中所示,参考图像412可包括任何数目的垂直条。举例来说,参考图像可包括任何数目的条,例如图4A中所示的单个条,图4B中所示的三个条,或某一其他数目的条。另外,在参考图像包括多个离散要素的情况下(例如,图4B中所示的多个离散条),有可能在参考图像412的不同要素上使用差异尺寸。举例来说,如图4B中所示,可使用具有不同宽度的条的参考图像。

此外,在某些实施中,可将参考图像界定为在不同深度处包括不同要素。举例来说,将图4B用作实例,可以在比最右边的条更深的深度阈值处界定最左边的条,认为可通过条的不同宽度进一步增强。当3D内容104的对象110在运动序列期间在深度方向上移动时,在对象越来越靠近观看者时,可将对象连续地渲染为遮挡参考图像的要素中的额外一者,从而进一步增强深度方向上的运动幻觉。

应注意,垂直柱可具有以下益处:它们实质上与典型场景的重力参考和观看者的重力参考对准,进而为观看者提供更自然的体验,但在本公开的某些实施中可以另一方式将条定向。图4C描绘将参考图像412渲染为一个或多个水平条的实例。

另外,虽然已经将前文实例的参考图像描绘为跨越图像的全部长度延伸的连续条,但根据本公开的各方面,其他类型的参考图像可固定到观看窗口以增强3D效果。举例来说,可同时将参考图像412渲染为一个或多个水平条和一个或多个垂直条两者,如图4D中所示,其描绘具有十字形定向的参考图像,其具有彼此相交的两个或更多条。通过另一非限制性实例,参考图像可包括例如图4E中所描绘的实例中的不连续和/或不延伸观看窗口的整个长度的垂直柱,所述图将参考图像412描绘为固定到视口106的多个点。在图4E中所描绘的实例中,所述点被布置为一组两个垂直点柱。

在本公开的某些实施中,可依据所要的效果来操纵参考图像的色彩参数或纹理参数。举例来说,如图4F的实例中所示,可将参考图像412的色彩参数和/或纹理参数渲染为对应于下面的场景104的一个或多个内容要素。在图4F中所描绘的实例中,将参考图像渲染为与下面的内容104的一个或多个要素匹配。然而,在某些实施中,以尽可能多地与下面的内容要素明确地形成对比的方式渲染参考图像可为优选的,使得参考图像对观看者来说显得好像其在由下面的内容描绘的世界之外。因此,举例来说,如果下面的场景是夜晚场景,那么可将参考图像渲染为白色或另一亮色,以确保其与场景的黑暗形成对比,且相反地,如果其为白天场景,那么可将参考图像渲染为黑色或另一暗色,以确保其与场景的亮度形成对比。

图4G描绘本公开的另一实施,其中将参考图像412的色彩选择为与显示装置468匹配,例如屏幕周围的显示装置的壳体的色彩。这可为有益的,因为这可将参考图像更好地拉出下面的虚拟世界104之外,且拉入观看者的世界和显示屏幕的平面中。这可以多种方式实现。举例来说,可将参考图像的色彩选择为与假定为显示装置的色彩的预定色彩匹配。由于可假定大多数常规显示装置是黑色或暗灰色,所以可使用与这些色彩中的一者匹配的色彩来渲染参考图像。在其他实施中,这可通过向用户提供一组离散的用户可选择的选项来实现,所述选项可包括预定的显示装置色彩,使得用户可选择与用户的显示器最佳匹配的色彩。

图4H描绘本公开的另一实施,其中参考图像412的色彩是呈含有下面的内容104的观看窗口106的周边处的框架的形式。在此实例中,观看窗口的周边处的框架是白色和矩形,但可使用其他色彩和形状。所述帧被配置成使得对象110的在图像中的框架前方的部分看似朝向观看者从观看窗口106出现。应注意,呈所述框架形式的参考图像412可不透明,如其在图4H中所说明的实例中所描绘,或者其可为半透明或可以其它方式使下面的内容104模糊,如上文所论述。虽然图4H中所示的实例描绘白色参考图像,但所述框架形式的参考图像412可替代地上色以与显示装置的边缘的色彩匹配,如上文所论述。

还应更一般地注意,本公开的实施可包括具有一个或多个用户可选择的特性的参考图像。由于可能在交互性图形处理应用中渲染参考图像,所以其可自动产生以对应于不同的用户偏好。举例来说,用户可能够选择参考图像的所要布局(例如,水平条或垂直条)、参考图像的离散要素的数目(例如,条的数目)、参考图像中的要素的大小(例如,条的厚度)、参考图像的透明程度、参考图像的色彩、参考图像的纹理、参考图像的深度、一些其他特性和其任何组合。

现在转向图5A到图5B,描绘根据本公开的某些实施的渲染图形的方法500。所说明的方法500可涉及针对显示装置的二维屏幕而渲染的3D图形,且根据本公开的各方面,3D图形可与固定到二维观看窗口的参考图像一起渲染,以便为观看者增强深度的幻觉。三维内容可描绘随时间的运动序列,且可根据本文所描述的技术(例如,参考图1到图4所描述的那些实例)中的任一者渲染描绘运动序列的图形和参考图像。

如图5A中所示,方法500可包括渲染映射到二维观看窗口的三维内容,如524处所指示。在524处渲染的3D内容可描绘包括随时间的运动序列的场景。在某些实施中,所述运动序列可对应于交互应用,例如视频游戏,且可实时地响应于用户输入而渲染3D内容以便在视觉上描绘游戏的状态。所述3D内容可包括虚拟世界中的3D虚拟对象。

方法500还可包括渲染以与观看窗口的固定关系界定的参考图像,如526处所指示。所述参考图像可与运动序列的3D内容分开,且可渲染为在观看窗口的多个部分处遮挡内容或被3D内容遮挡,这取决于观看窗口的界定参考图像的那些部分处的下面的内容的深度。

三维内容以及将它们映射到观看窗口的方式可在运动序列期间随时间改变。因此,可在运动序列期间针对多个时间增量迭代地重复图5A中所描绘的过程,如527处所指示。在某些实施中,可通过例如GPU等处理单元将图形渲染为帧序列,且在527处迭代地重复过程可通过针对每个新的帧重复所述过程来实现。每个新的时间增量或每个新的帧的渲染可响应于图形输入522,其可涉及由应用或游戏发出的绘制命令,例如通过图形应用编程接口(API)的绘制调用。图形输出528可包括一起形成描绘运动序列的移动视频的所渲染帧的序列,其中参考图像在运动序列期间增强深度方向上的运动的幻觉。

在某些实施中,图5A到图5B中所描绘的方法500可为实时渲染方法技术,其中在产生图形输出528时在显示装置上实时地向观看者呈现所述图形输出。在其他实施中,可“离线地”渲染图形以供稍后向观看者呈现。

应注意,用于视频游戏的许多图形处理技术是基于紧缩的预算而操作,且3D效果中的添加在其在实况玩游戏期间整合到图形中的情况下可导致帧速率下降。因此,在一些实施中,可由系统针对核心玩游戏之外的显示自动地产生参考图像。举例来说,可渲染运动序列以用于显示为将在玩游戏中的停止期间(例如,在回合、比赛、会话和类似者之间)显示的突出部分或剧情画面。

举例来说,且非通过限制,射击游戏可产生突出部分,使得用户可以观看特别值得关注的“杀戮”,或者体育游戏可以针对特别壮观的比赛产生突出部分,其中基于深度缓冲器中所含有的信息而将参考图像添加到内容。这可以提供用于以增强的3D效果自动地产生突出部分的方式,使得用户稍后可以观看运动序列,而不需要在玩游戏期间利用计算资源并且触发断续动作和可能打扰游戏的可玩性的其他不合意的效果。

随着内容的深度随时间改变,3D内容的一个或多个对象可根据上文关于图1到图4所描述的原理而在遮挡参考图像与被参考图像遮挡之间转变,从而产生一个或多个对象在深度方向上的3D深度和运动的增强幻觉。在某些实施中,这可通过以下操作来实现:检查深度缓冲器中的内容要素的深度,且将其与观看窗口的对应于那个内容要素的部分处的参考图像的所界定的阈值进行比较。

现在转向图5B,描绘渲染参考图像的更详细说明,如526处所指示。图5B中所描绘的方法是在图5A中所描绘的图形渲染方法中在特定场景中可如何渲染参考图像的更详细描绘。

如图5B中所示,渲染参考图像可包括在界定参考图像的观看窗口的部分处确定3D内容的深度,如532处所指示。具体来说,参考图像可对应于一个或多个深度阈值,其界定内容是在参考图像前方还是后方渲染,且在532处确定所述深度可涉及确定3D内容的深度是否超出观看窗口的所述部分处的参考图像的深度阈值。在532处确定深度可涉及检查图形存储器中含有的深度缓冲器以确定映射到观看窗口的所述部分的内容的深度值。

如果内容的深度在观看窗口的所述部分处超出阈值,那么可将参考图像渲染为在观看窗口的所述部分处遮挡3D内容,如536处所指示。如果内容的深度在观看窗口的所述部分处替代地不超出阈值,那么可将内容渲染为在观看窗口的所述部分处遮挡参考图像,如538处所指示。

应注意,观看窗口的不同部分(例如,不同的X-Y坐标)可对应于内容的不同深度。举例来说,如图1D中所示,3D内容104包括蛇110,且蛇的一部分(例如,其尾部)超出深度阈值,而蛇的一部分(例如,其头部)不超出所述阈值。因此,为了跨越观看窗口的区域(例如,跨越含有参考图像的观看窗口的所有X-Y坐标位置)更好地模拟深度的幻觉,可针对界定参考图像的观看窗口的多个不同部分类似地执行图5B中所描绘的过程,如531处所指示。

具体来说,可在共同构成观看窗口的总区域的子集的观看窗口的一个或多个部分处预先界定所述参考图像。所述部分可依据特定实施而共同地构成不同的形状,例如,所述部分可共同地界定如图1到图3中所示的一个或多个垂直条、如图4H中所示的观看窗口的周边处的框架或另一形状。可针对参考图像的那些子分部中的每一者(例如,界定参考图像的观看窗口的每个部分)而执行图5B中所描绘的过程,以便考虑到映射到观看窗口的不同2D位置的3D内容的不同深度。

应注意,可例如使用GPU的并行处理来并行地执行给定时间增量内的一个或多个不同重复。在某些实施中,这些子分部可对应于界定参考图像的观看窗口的每个像素,且可基于深度缓冲器(Z缓冲器)中含有的下面的内容的对应像素深度值而对每个像素执行所述过程。此外,在某些实施中,这可通过使用像素着色器来渲染参考图像像素来实现,其中每个像素处的深度缓冲器中的对应像素深度值确定是否在那个像素处渲染参考图像像素,即,是否将参考图像渲染为遮挡内容,如536处所指示,或其中省略参考图像像素且将内容渲染为遮挡参考图像,如538处所指示。

在某些实施中,参考图像可具有统一地界定的深度阈值,例如,深度阈值在给定时间增量内或给定帧内跨越531处的每次迭代都是相同的。换句话说,深度阈值可在空间上统一,使得观看窗口上的参考图像的不同空间位置具有在同一深度处界定的深度阈值。

然而,在某些实施中,深度阈值可不统一地界定,且具有在观看窗口的不同各自空间部分处不同地界定的深度阈值,从而导致深度阈值在给定时间增量内或运动序列的给定帧内跨越531处的不同迭代进行改变。举例来说,在某些实施中,参考图像可包括多个垂直条,且每个条可含有不同深度阈值。

另外,参考图像的其他特性可不统一地界定,使得它们在不同空间位置处进行改变,且531处的不同迭代利用不同的参考图像参数。举例来说,可以在给定时间增量内在参考图像的不同空间位置处不同的色彩或透明度来渲染参考图像,使得参考图像的一个或多个参数在531的不同重复处进行改变。举例来说,可将参考图像的色彩渲染为使得更靠近观看窗口的边缘的观看窗口的那些部分与显示装置壳体更好地匹配,例如,通过利用具有在观看窗口的边缘处混合到显示装置的色彩(例如,黑色)中的空间梯度的参考图像。

应注意,可使用任何计算机图形处理技术(例如,基于光栅的多边形渲染、光线追踪、光线投射和类似者)来执行图5A到图5B中所描绘的方法。然而,归因于与例如光线追踪等技术相关联的计算成本,其中速度和等待时间是主要关注点的大多数渲染任务(例如,视频游戏应用)利用基于多边形的光栅图形渲染,其中通过在3D空间中定向的多个三角形或其他基元来表示3D内容,且将这些内容光栅化以将它们投射到2D观看窗口中。

在本公开的某些实施中,可使用光栅图形处理流水线通过独特地充分利用渲染流水线的某些方面使图形与附接到观看窗口的参考图像一起渲染。

对于一个方面,由于像素(或片段)深度信息通常包括在深度缓冲器中以用于z挑选目的和隐藏表面移除,所以可容易从深度缓冲器确定观看窗口的任何给定像素的内容的深度,以用于基于场景中的内容的深度来渲染参考图像的目的。对于另一方面,由于可编程像素着色器常常用于基于每个像素来操纵图像的参数,所以利用像素着色器来渲染参考图像会提供用于将参考图像固定到所渲染图形的观看窗口的直观方式,而不管映射到观看窗口的下面的内容如何。举例来说,对于任何给定帧,可将帧中的像素的子集界定为参考图像,例如对应于矩形像素阵列中的一个或多个垂直柱的像素的子集,且可将这些像素界定为参考图像,从而为观看者渲染固定到运动序列的观看窗口的参考图像。因此,像素着色器可能够容易地基于深度缓冲器中所含有的各自像素深度值逐像素地渲染所述子集中的每个所界定的参考图像像素。这可允许图形处理系统在运行中自动地产生增强的3D GIF样式图形,而不需要事先了解场景的内容。

图6描绘根据本公开的各方面的使用光栅图形流水线使图形与参考图像一起渲染的说明性方法600。方法600是图5A到图5B中所描绘的方法500的实施。在实施600中,可使用对经处理的顶点参数值的光栅化和内插来将3D内容投射到由像素值阵列或片段界定的二维观看窗口上,而将图形映射到二维观看窗口。在图6的说明性实例中,可基于深度缓冲器中所含有的像素深度值在流水线的像素处理阶段处渲染参考图像。应注意,图6的所说明的图是用于突出本公开的某些方面的简化示意图,且可任选地在图形渲染流水线中包括许多其他常规阶段,例如几何和镶嵌着色器/处理、剪切测试、z挑选和类似者。

方法600可由例如GPU等处理单元实施,所述处理单元可被配置成实施可编程着色器以与应用协调地渲染图形。可基于向渲染流水线提供某些输入数据640的绘制命令或绘制调用而将图形渲染为一连串帧。每个所渲染的帧可描绘可表示为在三维空间中定向的多个三角形或其他基元的三维内容。在整个图形处理方法600中,处理单元可被配置成操纵图形存储器650中所含有的值,且图形存储器650可包括多种缓冲器,例如顶点缓冲器、索引缓冲器、深度缓冲器、前和后帧缓冲器和用于在整个渲染流水线中临时地存储图形数据的类似者。

一般来说,方法600可包括顶点处理642、光栅化/内插646和像素处理652的通用阶段,如图6的说明中所示。

如642处所指示的顶点处理阶段可包括操纵构成场景的3D内容的基元(例如,三角形)的顶点的参数值。可由可被配置成由GPU或其他处理单元执行的一个或多个顶点着色器程序来执行顶点处理的某一部分。顶点处理642还可任选地涉及其他着色器,例如用于对一个或多个基元进行再分的镶嵌着色器,和/或用于产生新基元的几何着色器。当完成所有顶点处理时,每个顶点可由存储器650中的一个或多个顶点输出参数值644界定,如图6中所示。这些参数值可包括位置、色彩、纹理坐标、照明和用于帧中的每个顶点的类似者。

随后可通过对顶点和它们对应的参数值进行光栅化和内插(如646处所指示)以将它们映射到例如矩形阵列中的一组离散像素,而将构成帧的3D内容的这些基元和它们的对应顶点映射到二维观看窗口。光栅化和内插的过程可通过实质上将3D内容投射到场景的图像平面上的过程而将这些内容映射到二维观看窗口平面上。

每个像素的经内插的顶点参数值可对应于存储在图形存储器650中的用于每个像素的一组输入像素参数值648。在所说明的实例中,输入像素参数值648可仅对应于下面的内容的那些像素值,因为在此实例中尚未渲染参考图像。可将这些像素和像素参数值输入到一般被标示为图6中的像素处理阶段652的事物中。

像素处理可接收输入像素参数值648且执行各种操作来修改与像素中的一者或多者相关联的像素参数值。这可包括基于每个像素而进一步渲染场景的3D内容。这还可包括根据本公开的各方面而渲染参考图像(如656处所指示)以增强深度的幻觉。

在所说明的实施中,像素处理652的至少一部分包括由一个或多个可编程像素着色器执行的像素着色器操作654。另外,在所说明的实例中,可在像素着色器操作654期间基于图形存储器650中所含有的场景内容的像素深度值658来绘制参考图像。

可通过将参考图像界定为少于观看窗口中的像素的总数的每个帧中的像素的特定子集而以与观看窗口的固定关系来界定参考图像。举例来说,可将对应于像素阵列中的一个或多个垂直柱的像素子集界定为参考图像。对于被界定为含有参考图像的每个像素,像素着色器654可被配置成检查映射到所述像素的内容的深度值658。如果深度超出所述像素的某一所界定的阈值,那么像素着色器可被配置成在所述像素处绘制参考图像像素来遮挡所述像素处的场景内容。如果深度不超出所述像素处的阈值,那么像素着色器可省略对用于所述像素的参考图像的任何绘制,使得下面的场景内容遮挡参考图像。

应注意,可以多种方式界定参考图像的深度阈值。在某些实施中,可由渲染图形的程序的开发者预先界定特定深度。在其他实施中,系统可被配置成例如通过监视深度缓冲器中所含有的深度值中的改变来随时间监视深度值,从而确定场景中的内容要素在深度方向上位于何处。所述系统随后可被配置成基于一些预定准则来界定深度阈值,这将确保一个或多个对象在运动序列前进时可能跨越针对参考图像而界定的所界定的深度阈值。举例来说,参考图像的深度阈值可被界定为在某一时间周期内观测到的深度缓冲器中的内容的平均深度值,或可在某一时间周期期间观察到的深度值范围内的任何深度值处界定。

在656处绘制参考图像的方式可取决于用于那种实施的参考图像的性质。如果参考图像对于给定帧中的给定像素是不透明的,那么在参考图像遮挡下面的场景内容(即,内容的深度值超出所述像素处的阈值)的情况下,可简单地抛弃下面的内容的像素值且使用参考图像像素参数值来取代。举例来说,可通过纯黑像素来取代其中界定参考图像且场景内容超出阈值的观看窗口中的每个像素,以渲染黑色不透明参考图像。

替代地,如果参考图像对于给定帧中的给定像素是半透明的,那么在参考图像遮挡下面的场景内容(即,内容的深度值超出所述像素处的阈值)的情况下,可通过将参考图像像素参数值存储到图形存储器来渲染参考图像像素,而不抛弃下面的内容像素值。因此,如660处所示,参考图像像素可与下面的内容像素阿尔法混合,使得将遮挡的参考图像渲染为半透明,且准许可穿过参考图像部分看到被遮挡的场景内容。举例来说,在某些实施中,0与1之间(但不是0或1)的阿尔法混合值可对应于半透明参考图像,而0或1的阿尔法混合值将对应于参考图像对内容像素的完全遮挡,而不让被遮挡的要素部分可见。

像素处理652可对帧中的每个像素执行操作,且像素着色器可针对界定参考图像的观看窗口的像素基于深度缓冲器658中的像素深度值来绘制参考图像656。当已经确定每个像素的全部参数值时,像素输出参数值662可对应于用于显示的最终帧的像素,其可包括在图形存储器650的帧缓冲器中。每个最终帧可对应于渲染流水线的输出664,且可针对运动序列中的每个帧来重复所述过程。

应注意,可通过可在硬件、软件或其组合中实施的模块来执行图6中所描绘的图形渲染流水线中所含有的各个步骤。在图6的说明中,参考图像模块经由可编程像素着色器而至少部分在软件中实施,这可为程序员或开发者根据特定应用来定制参考图像特性提供额外的灵活性。反而,在某些实施中,参考图像模块或其部分可例如通过例如FPGA或ASIC等一个或多个专用电路而体现在硬件中。

另外,虽然图6的所说明的实例在渲染流水线的像素处理阶段处实施参考图像模块,但本公开的某些实施可在渲染流水线中的另一阶段处实施参考图像。举例来说,在某些实施中,可较早地产生参考图像,例如与观看窗口以固定关系界定的一个或多个基元。然而,应注意,在参考模块在像素处理阶段处操作的实施中,参考图像更容易固定到观看窗口,这是因为观看窗口自身实质上是由像素阵列界定。

现在转向图7,描绘根据本公开的各方面的被配置成渲染图形的计算系统700的说明性实例。系统700可被配置成通过渲染由应用界定的下面的内容并且基于深度缓冲器中含有的深度值渲染参考图像两者而以增强的3D幻觉渲染用于应用765的图形。根据本公开的各方面,系统700可为嵌入式系统、移动电话、个人计算机、平板计算机、便携式游戏装置、工作站、游戏控制台和类似者。

所述系统可一般包括处理器和存储器,其被配置成例如通过执行具有与图5A到图5B或图6的方法共同的特征的方法来实施本公开的各方面。在图7的所说明的实施中,系统700包括中央处理器单元(CPU)770、图形处理器单元(GPU)771和存储器772,且存储器可任选地可由CPU和GPU两者访问。CPU 770和GPU 771可各自包括一个或多个处理器核心,例如单个核心、两个核心、四个核心、八个核心或更多。存储器772可包括呈集成电路的形式的一个或多个存储器单元,其提供可寻址的存储器,例如RAM、DRAM和类似者。

举例来说,且非通过限制,CPU 770和GPU 771可使用数据总线776来访问存储器772。在一些情况下,系统700包括两个或更多不同总线可为有用的。存储器772可包括图形存储器750,其可存储图形资源且临时存储用于图形渲染流水线的数据的缓冲器,所述缓冲器可包括(例如)用于存储顶点参数值的一个或多个顶点缓冲器793、用于存储图形内容的深度值的一个或多个深度缓冲器758和用于存储将发送到显示器的完整帧的一个或多个帧缓冲器794。

CPU可被配置成执行CPU代码,所述CPU代码可包括利用所渲染图形的应用765(例如,视频游戏),和用于基于应用765的状态而将绘制命令或绘制调用发出到由GPU 771实施的程序的图形API 767。所述CPU代码还可实施物理模拟和其他功能。

GPU可被配置成如上文关于本公开的说明性实施所论述而操作。GPU 771可被配置成渲染应用的被映射到观看窗口的三维内容。GPU 771还可被配置成实施参考图像模块798,从而与观看窗口以固定关系渲染参考图像,这在应用765的下面的内容的运动序列期间提供深度的增强幻觉。为了支持图形的渲染,GPU可执行GPU代码,所述GPU代码可包括一个或多个顶点着色器773和/或一个或多个像素着色器775,如上文所论述。GPU还可执行其他程序,例如,几何着色器、镶嵌着色器、计算着色器和类似者。在某些实施中,参考图像模块798可至少部分体现在非暂时性计算机可读介质中,其在像素着色器775中编程以基于深度缓冲器758中含有的信息基于每个像素而渲染参考图像。所述着色器可与存储器750中的数据介接,且像素着色器可在帧缓冲器794中输出所渲染像素以用于在输出到显示器之前进行临时存储。

系统700还可包括众所周知的支持功能777,其可例如经由总线776与系统的其他组件通信。所述支持功能可包括(但不限于)输入/输出(I/O)元件779、电源(P/S)780、时钟(CLK)781和高速缓冲存储器782。设备700可任选地包括大容量存储装置784,例如磁盘驱动器、CD-ROM驱动器、快闪存储器、磁带驱动器、蓝光驱动器或用于存储程序和/或数据的类似者。装置700还可包括用于向用户呈现所渲染的图形787的显示单元786,和用于促进设备700与用户之间的交互的用户接口单元788。显示单元786可呈以下形式:平板显示器、阴极射线管(CRT)屏幕、触摸屏或可显示文本、数字、图形符号或图像的其他装置。显示器786可显示根据本文所描述的各种技术而处理的所渲染图像787。用户接口788可包括一个或多个外围设备,例如键盘、鼠标、操纵杆、光笔、游戏控制器、触摸屏和/或可与图形用户接口(GUI)联合使用的其他装置。在某些实施中,可通过用户接口788至少部分由用户输入来确定应用765的状态以及映射到观看窗口的图形的下面的内容。

系统700还可包括网络接口790以使得所述装置能够在网络上与其他装置通信。所述网络可为(例如)局域网(LAN)、广域网(例如,因特网)、个人区域网(例如,蓝牙网络)或其他类型的网络。所展示和描述的组件中的各者可实施于硬件、软件或固件或这些中的两者或更多者的某一组合中。

本公开的额外方面

将从前文了解,本公开的各方面包括渲染图形的第一方法,所述图形包括描绘运动序列的三维内容,所述方法包括:a)渲染映射到二维观看窗口的三维内容;以及b)除所述三维内容以外,将参考图像渲染到观看窗口上,其中在所述观看窗口的一个或多个部分处界定所述参考图像,其中所述一个或多个部分少于所述观看窗口的全部,且其中所述在b)中渲染所述参考图像包括,对于所述一个或多个部分的每个给定部分:i)通过检查深度缓冲器中含有的映射到给定部分的三维内容的深度值而确定所述内容的深度是否超出深度阈值,ii)当在i)中确定映射到给定部分的内容的深度超出深度阈值时,使用所述参考图像遮挡映射到给定部分的内容,以及iii)当在i)中确定映射到给定部分的内容的深度不超出深度阈值时,使用映射到给定部分的内容遮挡所述参考图像。

根据第一方法的额外方面,所述运动序列包括多个时间增量,针对每个所述时间增量来重复a)和b),所述一个或多个部分是多个部分,且在每个所述时间增量内,针对每个所述部分来重复i)、ii)和iii)。

根据第一方法的额外方面,所述运动序列包括多个帧,针对每个所述帧来重复a)和b),所述一个或多个部分是多个像素,且在每个所述帧内,针对每个所述像素来重复i)、ii)和iii)。

根据第一方法的额外方面,所述一个或多个部分共同地界定观看窗口的一个或多个垂直柱。在一些实施中,所述垂直柱是矩形条。在一些实施中,所述矩形条延伸所述观看窗口的整个高度。

根据第一方法的额外方面,所述一个或多个部分共同地界定观看窗口的周边处的框架。

根据第一方法的额外方面,像素着色器执行所述在b)中渲染所述参考图像。

根据第一方法的额外方面,所述在ii)中遮挡内容包括将所述参考图像渲染为部分看透,使得由参考图像遮挡的内容部分可见。在一些实施中,所述将所述参考图像渲染为部分看透包括将内容的参数值与参考图像的参数值阿尔法混合。

根据第一方法的额外方面,所述运动序列包括多个帧,由GPU针对每个所述帧来重复a)和b),所述一个或多个部分是多个像素,且在每个所述帧内,由GPU所执行的像素着色器针对每个所述像素来重复i)、ii)和iii)。在一些实施中,所述在ii)中使用所述参考图像遮挡内容包括通过抛弃内容的像素参数值且使用参考图像像素参数值取代它们来渲染不透明的参考图像像素。在一些实施中,所述在ii)中使用所述参考图像遮挡内容包括通过将内容的像素参数值与参考图像像素参数值阿尔法混合来渲染半透明的参考图像像素。

根据第一方法的额外方面,所述在b)中渲染所述参考图像包括以与显示装置壳体匹配的色彩来渲染所述参考图像。

根据第一方法的额外方面,所述三维内容是交互视频游戏的玩游戏连续镜头。在一些实施中,所述在b)中渲染所述参考图像包括在玩游戏期间实时地渲染所述参考图像。

根据第一方法的额外方面,所述运动序列包括多个时间增量,针对每个所述时间增量来重复a)和b),所述一个或多个部分是多个部分,且在每个所述时间增量内,针对每个所述部分来重复i)、ii)和iii),其中所述在b)中渲染所述参考图像包括在b)的一个或多个不同各自重复处使用一个或多个不同组参数来渲染所述参考图像,使得所述参考图像的参数跨运动序列随时间是动态的。在一些实施中,所述在b)中渲染所述参考图像包括在b)的每个不同各自重复处使用相等组参数来渲染所述参考图像,使得所述参考图像的参数跨运动序列随时间是静态的。在一些实施中,在每个所述时间增量内,所述在ii)中使用参考图像遮挡内容包括:在ii)的一个或多个不同各自重复处使用一个或多个不同参数来渲染参考图像的给定部分,使得参考图像的参数跨观看窗口在空间上不统一。在一些实施中,在每个所述时间增量内,所述在ii)中使用参考图像遮挡内容包括:在ii)的每个不同各自重复处使用相等参数来渲染参考图像的给定部分,使得参考图像的参数跨观看窗口在空间上统一。

根据第一方法的额外方面,三维内容是交互视频游戏的玩游戏连续镜头,所述运动序列包括多个帧,针对每个所述帧来重复a)和b),所述一个或多个部分是多个像素,其共同地界定观看窗口的一个或多个垂直柱,且在每个所述帧内,由像素着色器针对每个所述像素来重复i)、ii)和iii)。

本公开的额外方面包括第一系统,其包括:至少一个处理器和至少一个存储器,其中所述至少一个处理器被配置成执行具有描绘运动序列的三维图形内容的应用,其中处理器被配置成执行渲染图形的方法,所述图形包括描绘运动序列的三维内容,所述方法包括:a)渲染映射到二维观看窗口的三维内容;以及b)除所述三维内容以外,将参考图像渲染到观看窗口上,其中在所述观看窗口的一个或多个部分处界定所述参考图像,其中所述一个或多个部分少于所述观看窗口的全部,且其中所述在b)中渲染所述参考图像包括,对于所述一个或多个部分的每个给定部分:i)通过检查存储器中深度缓冲器中含有的映射到给定部分的三维内容的深度值而确定所述内容的深度是否超出深度阈值,ii)当在i)中确定映射到给定部分的内容的深度超出深度阈值时,使用所述参考图像遮挡映射到给定部分的内容,以及iii)当在i)中确定映射到给定部分的内容的深度不超出深度阈值时,使用映射到给定部分的内容遮挡所述参考图像。

根据第一系统的额外方面,所述至少一个处理器包括中央处理单元(CPU)和图形处理单元(GPU),其中所述CPU被配置成执行应用,且其中所述GPU被配置成执行渲染图形的方法。

根据第一系统的额外方面,所述系统进一步包括显示装置,其中所述方法进一步包括在所述显示装置上呈现图形。

根据第一系统的额外方面,所述系统进一步包括存储器中含有的像素着色器,其中所述像素着色器执行所述在b)中渲染参考图像。在一些实施中,所述运动序列包括多个帧,针对每个所述帧来重复a)和b),所述一个或多个部分是多个像素,且在每个所述帧内,由所述处理器所执行的像素着色器针对每个所述像素来重复i)、ii)和iii)。

根据第一系统的额外方面,所述应用是交互视频游戏,且所述三维内容是交互视频游戏的玩游戏连续镜头。在一些实施中,所述在b)中渲染所述参考图像包括在玩游戏期间实时地渲染所述参考图像。

根据第一系统的额外方面,所述系统进一步包括存储器中含有的像素着色器,所述至少一个处理器包括中央处理单元(CPU)和图形处理单元(GPU),所述CPU被配置成执行应用,所述GPU被配置成执行渲染图形的方法,所述应用是交互视频游戏,所述三维内容是交互视频游戏的玩游戏连续镜头,所述运动序列包括多个帧,针对每个所述帧来重复a)和b),所述一个或多个部分是界定观看窗口的一个或多个垂直柱的多个像素,且在每个所述帧内,由GPU所执行的像素着色器针对每个所述像素来重复i)、ii)和iii)。

本公开的额外方面包括第一非暂时性计算机可读介质,其具有在其中体现的处理器可执行指令,其中处理器对所述指令的执行致使所述处理器实施渲染图形的方法,所述图形包括描绘运动序列的三维内容,所述方法包括:a)渲染映射到二维观看窗口的三维内容;以及b)除所述三维内容以外,将参考图像渲染到观看窗口上,其中在所述观看窗口的一个或多个部分处界定所述参考图像,其中所述一个或多个部分少于所述观看窗口的全部,且其中所述在b)中渲染所述参考图像包括,对于所述一个或多个部分的每个给定部分:i)通过检查深度缓冲器中含有的映射到给定部分的三维内容的深度值而确定所述内容的深度是否超出深度阈值,ii)当在i)中确定映射到给定部分的内容的深度超出深度阈值时,使用所述参考图像遮挡映射到给定部分的内容,以及iii)当在i)中确定映射到给定部分的内容的深度不超出深度阈值时,使用映射到给定部分的内容遮挡所述参考图像。

本公开的各方面包括渲染图形的第二方法,所述图形包括描绘运动序列的三维内容,所述方法包括:a)渲染映射到二维观看窗口的三维内容;以及b)除所述三维内容以外,将参考图像渲染到观看窗口上,其中在所述观看窗口的一个或多个部分处界定所述参考图像,其中所述一个或多个部分少于所述观看窗口的全部,且其中所述在b)中渲染所述参考图像包括,对于所述一个或多个部分的每个给定部分:i)确定映射到给定部分的三维内容的深度是否超出深度阈值,ii)当在i)中确定映射到给定部分的内容的深度超出深度阈值时,通过将参考图像渲染为部分看透以使得由参考图像遮挡的内容部分可见,而使用所述参考图像遮挡映射到给定部分的内容,以及iii)当在i)中确定映射到给定部分的内容的深度不超出深度阈值时,使用映射到给定部分的内容遮挡所述参考图像。

本公开的额外方面包括第二系统,其包括:至少一个处理器和至少一个存储器,其中所述至少一个处理器被配置成执行具有描绘运动序列的三维图形内容的应用,其中处理器被配置成执行渲染图形的方法,所述图形包括描绘运动序列的三维内容,所述方法包括:a)渲染映射到二维观看窗口的三维内容;以及b)除所述三维内容以外,将参考图像渲染到观看窗口上,其中在所述观看窗口的一个或多个部分处界定所述参考图像,其中所述一个或多个部分少于所述观看窗口的全部,且其中所述在b)中渲染所述参考图像包括,对于所述一个或多个部分的每个给定部分:i)确定映射到给定部分的三维内容的深度是否超出深度阈值,ii)当在i)中确定映射到给定部分的内容的深度超出深度阈值时,通过将参考图像渲染为部分看透以使得由参考图像遮挡的内容部分可见,而使用所述参考图像遮挡映射到给定部分的内容,以及iii)当在i)中确定映射到给定部分的内容的深度不超出深度阈值时,使用映射到给定部分的内容遮挡所述参考图像。

本公开的额外方面包括第二非暂时性计算机可读介质,其具有在其中体现的处理器可执行指令,其中处理器对所述指令的执行致使所述处理器实施渲染图形的方法,所述图形包括描绘运动序列的三维内容,所述方法包括:a)渲染映射到二维观看窗口的三维内容;以及b)除所述三维内容以外,将参考图像渲染到观看窗口上,其中在所述观看窗口的一个或多个部分处界定所述参考图像,其中所述一个或多个部分少于所述观看窗口的全部,且其中所述在b)中渲染所述参考图像包括,对于所述一个或多个部分的每个给定部分:i)确定映射到给定部分的三维内容的深度是否超出深度阈值,ii)当在i)中确定映射到给定部分的内容的深度超出深度阈值时,通过将参考图像渲染为部分看透以使得由参考图像遮挡的内容部分可见,而使用所述参考图像遮挡映射到给定部分的内容,以及iii)当在i)中确定映射到给定部分的内容的深度不超出深度阈值时,使用映射到给定部分的内容遮挡所述参考图像。

本公开的各方面包括渲染图形的第三方法,所述图形包括描绘运动序列的三维内容,所述方法包括:a)渲染映射到二维观看窗口的三维内容;以及b)除所述三维内容以外,将参考图像渲染到观看窗口上,其中在所述观看窗口的一个或多个部分处界定所述参考图像,其中所述一个或多个部分少于所述观看窗口的全部,且其中所述在b)中渲染所述参考图像包括,对于所述一个或多个部分的每个给定部分:i)确定映射到给定部分的三维内容的深度是否超出深度阈值,ii)当在i)中确定映射到给定部分的内容的深度超出深度阈值时,使用所述参考图像遮挡映射到给定部分的内容,以及iii)当在i)中确定映射到给定部分的内容的深度不超出深度阈值时,使用映射到给定部分的内容遮挡所述参考图像,其中所述运动序列包括多个时间增量,其中针对每个所述时间增量来重复a)和b),其中所述一个或多个部分是多个部分,且在每个所述时间增量内,针对每个所述部分来重复i)、ii)和iii),且其中所述在b)中渲染所述参考图像包括在b)的一个或多个不同各自重复处使用一个或多个不同组参数来渲染所述参考图像,使得所述参考图像的参数跨运动序列随时间是动态的。

本公开的额外方面包括第三系统,其包括:至少一个处理器和至少一个存储器,其中所述至少一个处理器被配置成执行具有描绘运动序列的三维图形内容的应用,其中处理器被配置成执行渲染图形的方法,所述图形包括描绘运动序列的三维内容,所述方法包括:a)渲染映射到二维观看窗口的三维内容;以及b)除所述三维内容以外,将参考图像渲染到观看窗口上,其中在所述观看窗口的一个或多个部分处界定所述参考图像,其中所述一个或多个部分少于所述观看窗口的全部,且其中所述在b)中渲染所述参考图像包括,对于所述一个或多个部分的每个给定部分:i)确定映射到给定部分的三维内容的深度是否超出深度阈值,ii)当在i)中确定映射到给定部分的内容的深度超出深度阈值时,使用所述参考图像遮挡映射到给定部分的内容,以及iii)当在i)中确定映射到给定部分的内容的深度不超出深度阈值时,使用映射到给定部分的内容遮挡所述参考图像,其中所述运动序列包括多个时间增量,其中针对每个所述时间增量来重复a)和b),其中所述一个或多个部分是多个部分,且在每个所述时间增量内,针对每个所述部分来重复i)、ii)和iii),且其中所述在b)中渲染所述参考图像包括在b)的一个或多个不同各自重复处使用一个或多个不同组参数来渲染所述参考图像,使得所述参考图像的参数跨运动序列随时间是动态的。

本公开的额外方面包括第三非暂时性计算机可读介质,其具有在其中体现的处理器可执行指令,其中处理器对所述指令的执行致使所述处理器实施渲染图形的方法,所述图形包括描绘运动序列的三维内容,所述方法包括:a)渲染映射到二维观看窗口的三维内容;以及b)除所述三维内容以外,将参考图像渲染到观看窗口上,其中在所述观看窗口的一个或多个部分处界定所述参考图像,其中所述一个或多个部分少于所述观看窗口的全部,且其中所述在b)中渲染所述参考图像包括,对于所述一个或多个部分的每个给定部分:i)确定映射到给定部分的三维内容的深度是否超出深度阈值,ii)当在i)中确定映射到给定部分的内容的深度超出深度阈值时,使用所述参考图像遮挡映射到给定部分的内容,以及iii)当在i)中确定映射到给定部分的内容的深度不超出深度阈值时,使用映射到给定部分的内容遮挡所述参考图像,其中所述运动序列包括多个时间增量,其中针对每个所述时间增量来重复a)和b),其中所述一个或多个部分是多个部分,且在每个所述时间增量内,针对每个所述部分来重复i)、ii)和iii),且其中所述在b)中渲染所述参考图像包括在b)的一个或多个不同各自重复处使用一个或多个不同组参数来渲染所述参考图像,使得所述参考图像的参数跨运动序列随时间是动态的。

本公开的各方面包括渲染图形的第四方法,所述图形包括描绘运动序列的三维内容,所述方法包括:a)渲染映射到二维观看窗口的三维内容;以及b)除所述三维内容以外,将参考图像渲染到观看窗口上,其中在所述观看窗口的一个或多个部分处界定所述参考图像,其中所述一个或多个部分少于所述观看窗口的全部,且其中所述在b)中渲染所述参考图像包括,对于所述一个或多个部分的每个给定部分:i)确定映射到给定部分的三维内容的深度是否超出深度阈值,ii)当在i)中确定映射到给定部分的内容的深度超出深度阈值时,使用所述参考图像遮挡映射到给定部分的内容,以及iii)当在i)中确定映射到给定部分的内容的深度不超出深度阈值时,使用映射到给定部分的内容遮挡所述参考图像,其中所述运动序列包括多个时间增量,其中针对每个所述时间增量来重复a)和b),其中所述一个或多个部分是多个部分,且在每个所述时间增量内,针对每个所述部分来重复i)、ii)和iii),且在每个所述时间增量内,所述在ii)中使用参考图像遮挡内容包括:在ii)的一个或多个不同重复处使用一个或多个不同参数来渲染参考图像的部分,使得参考图像的参数跨观看窗口在空间上不统一。

本公开的额外方面包括第四系统,其包括:至少一个处理器和至少一个存储器,其中所述至少一个处理器被配置成执行具有描绘运动序列的三维图形内容的应用,其中处理器被配置成执行渲染图形的方法,所述图形包括描绘运动序列的三维内容,所述方法包括:a)渲染映射到二维观看窗口的三维内容;以及b)除所述三维内容以外,将参考图像渲染到观看窗口上,其中在所述观看窗口的一个或多个部分处界定所述参考图像,其中所述一个或多个部分少于所述观看窗口的全部,且其中所述在b)中渲染所述参考图像包括,对于所述一个或多个部分的每个给定部分:i)确定映射到给定部分的三维内容的深度是否超出深度阈值,ii)当在i)中确定映射到给定部分的内容的深度超出深度阈值时,使用所述参考图像遮挡映射到给定部分的内容,以及iii)当在i)中确定映射到给定部分的内容的深度不超出深度阈值时,使用映射到给定部分的内容遮挡所述参考图像,其中所述运动序列包括多个时间增量,其中针对每个所述时间增量来重复a)和b),其中所述一个或多个部分是多个部分,且在每个所述时间增量内,针对每个所述部分来重复i)、ii)和iii),且在每个所述时间增量内,所述在ii)中使用参考图像遮挡内容包括:在ii)的一个或多个不同重复处使用一个或多个不同参数来渲染参考图像的部分,使得参考图像的参数跨观看窗口在空间上不统一。

本公开的额外方面包括第四非暂时性计算机可读介质,其具有在其中体现的处理器可执行指令,其中处理器对所述指令的执行致使所述处理器实施渲染图形的方法,所述图形包括描绘运动序列的三维内容,所述方法包括:a)渲染映射到二维观看窗口的三维内容;以及b)除所述三维内容以外,将参考图像渲染到观看窗口上,其中在所述观看窗口的一个或多个部分处界定所述参考图像,其中所述一个或多个部分少于所述观看窗口的全部,且其中所述在b)中渲染所述参考图像包括,对于所述一个或多个部分的每个给定部分:i)确定映射到给定部分的三维内容的深度是否超出深度阈值,ii)当在i)中确定映射到给定部分的内容的深度超出深度阈值时,使用所述参考图像遮挡映射到给定部分的内容,以及iii)当在i)中确定映射到给定部分的内容的深度不超出深度阈值时,使用映射到给定部分的内容遮挡所述参考图像,其中所述运动序列包括多个时间增量,其中针对每个所述时间增量来重复a)和b),其中所述一个或多个部分是多个部分,且在每个所述时间增量内,针对每个所述部分来重复i)、ii)和iii),且在每个所述时间增量内,所述在ii)中使用参考图像遮挡内容包括:在ii)的一个或多个不同重复处使用一个或多个不同参数来渲染参考图像的部分,使得参考图像的参数跨观看窗口在空间上不统一。

本公开的额外方面包括携载用于执行前面的第一方法、前面的第二方法、前面的第三方法或前面的第四方法的计算机可读指令的电磁或其他信号。

本公开的额外方面包括可从通信网络下载和/或存储在计算机可读介质和/或微处理器可执行介质上的计算机程序产品,其特征在于其包括用于实施前面的第一方法、前面的第二方法、前面的第三方法或前面的第四方法的程序代码指令。

应理解,上文提及的方面的各种修改和组合在本公开的范围内。举例来说,上文提及的第一方法的各方面中的任一者可并入到其他提及的方法(包括上文提及的第二方法、第三方法和第四方法)中的任一者中。通过另一实例,上文提及的方法的任何方面可并入到上文提及的系统和计算机可读介质中。

虽然上文是对本发明的优选实施例的完整描述,但有可能使用各种替代方案、修改和等效物。因此,不应参考以上描述来确定本发明的范围,而是应参考所附权利要求书以及其等效物的全部范围来确定。本文所描述的任何特征(无论是否优选)可与本文所描述的任何其他特征(无论是否优选)组合。在所附权利要求书中,不定冠词“一(a或an)”是指冠词后面的项中的一者或多者的数量,除非另有明确规定。所附权利要求书将不被解释为包括手段或步骤加功能限制,除非在给定权利要求中使用短语“用于……手段”明确叙述此类限制。

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1