抗锯齿系统及方法_3

文档序号:9235942阅读:来源:国知局
中。然而,在此处的各个实施例中,所需要的是具有在线性空间中的输出,W便 进行如下所述的组合或合成操作。因此,VPUB210执行额外的去伽玛运算W把输出215转 换到线性空间。在一个实施例中,VPUB210的视频流水线中的纹理单元用来执行去伽玛 运算。
[0097] 线性输出213和215在合成器214中组合。合成器214选择性地包括在连结模 块212中,如下面更完整地描述。来自VPUA208和VPUB210中每一个的帖数据在合成 器214中被合并、或组合、或合成W产生要擅染到显示器(未显示)的帖。合成操作是在 线性空间中的。合成器214完成合成操作,并且对结果执行伽玛运算W产生要显示的经过 伽玛校正的帖数据。输出217包括经过伽玛校正的像素数据,并且显示如何组合输出213 和215。每个输出213和215都被2X多重采样,而输出217被4X次多重采样。因此,如视 频处理实施例200中所示那样,利用一次通过视频流水线就可获得更为改进的多重采样结 果。如下参考图3-8所述的那样,也可W通过编程来选择其他抗银齿模式,W包括多重采样 与超采样(对像素中屯、进行采样)的各种组合。
[009引参考图3-8,举例说明了根据所描述的实施例的抗银齿的若干模式。在图3-8的每 一个中,VPUA的像素表示为星号,VPUA的像素中屯、表示为黑色网格方框,VPUB的像素表 示为条纹网格方框,W及VPUB的像素中屯、表示为同屯、圆。图3是显示先前参考图2所描 述的模式的示意图。该种模式称为具有1XSSAA的4XMSAA,或具有IX超采样AA的4X多重 采样AA(其中,"4"被称为MS系数,而"1"被称为SS系数)。VPUA和VPUB每一个都分 别对313和315中所示的像素进行采样。在把313与315组合或合成之后,要显示的输出 是317,如所示。
[0099] 图4是显示一种具有1XSSAA的細MSAA的模式或者采用IX超采样AA的細多重 采样AA的示意图。VPUA和VPUB每一个都分别对413和415中所示的像素进行采样。在 把413与415组合或合成之后,要显不的输出是417,如所不。
[0100] 图5是显示一种具有1XSSAA的12XMSAA的模式或者具有IX超采样AA的12X多 重采样AA的示意图。VPUA和VPUB每一个都分别对513和515中所示的像素进行采样。 在把513与515组合或合成之后,要显示的输出是517,如所示。
[01 图6是显示一种具有2XSSAA的4XMSAA的模式或者具有2X超采样AA的4X多重 采样AA的示意图。VPU A和VPU B每一个都分别对613和615中所示的像素进行采样。在 该种模式中,由VPU A和VPU B中的每一个对样本进行不同地偏移。在把613与615组合 或合成之后,要显示的输出是617,如所示。
[0102] 图7是显示一种具有2XSSAA的細MSAA的模式或者具有2X超采样AA的細多重 采样AA的示意图。VPU A和VPU B每一个都分别对713和715中所示的像素进行采样。在 该种模式中,由VPU A和VPU B中的每一个对像素样本进行不同地偏移。在把713与715 组合或合成之后,要显示的输出是717,如所示。
[010引 图8是显示一种具有2XSSAA的12XMSAA的模式或者具有2X超采样AA的12X多 重采样AA的示意图。VPU A和VPU B每一个都分别对813和815中所示的像素进行采样。 在该种模式中,由VPU A和VPU B中的每一个对像素样本进行不同地偏移。在把813与815 组合或合成之后,要显示的输出是817,如所示。
[0104]图3-8作为可被配置的AA模式的例子而被给出。也可设想任何其他的组合。例 如MS系数与SS系数的不同组合、或者没有MS仅有SS也都是可能的。未明确显示的AA系 数与MS系数都是可W设想的。
[01化]图9和11是AA结果的示意图。图9A和9B分别显示了6XMSAA和12XMSAA的结 果。如所看到的那样,当MS系数提高时边缘银齿效应减小。
[0106] 图10A和10B是举例说明由于SS所造成的表面银齿的降低而导致质量提高的示 意图。图10A显示了在没有SSAA的情况下所产生的屏幕。图10B显示了利用2XSSAA所产 生的与图10A相同的屏幕。在图10B中显著地降低了莫尔效应。
[0107] 图11A和11B分别是图10A和10B的屏幕的局部放大图的示意图。图11A显示了 不用SSAA所产生的屏幕。图11B显示了利用2XSSAA所产生的屏幕。
[0108] 所描述的抗银齿方法和设备还适用于未特别描述的其他类型的采样,包括二次 采样和过采样(oversampling)。所描述的方法和设备还适用于时间域抗银齿(temporal antialiasing)。例如,在一个实施例中,多个VPU中的每一个都及时处理不同的帖。然后 如此处描述的那样对帖进行合成。
[0109] 各个其他实施例还包括,多个VPU中的每一个W不同方式擅染同一帖。例如,一个 VPU执行按照一个系数的多重采样而另一个VPU执行按照另一个系数的采样。同样,一个 VPU能够对一个帖执行多重采样而另一个VPU能够对一个帖执行超采样。由每个VPU所产 生的帖如在此所述的那样被合成。在又一个实施例中,一个VPU能够执行按照一个采样系 数的采样(其中采样可W是任何类型的采样)而另一个VPU执行按照另一个系数的采样。 由每个VPU所产生的帖如在此所述的那样被合成。每个VPU的采样系数是可配置的。在一 个实施例中,每个VPU的采样行为可由用户经由UI来配置。在一个实施例中,所采用的采 样配置的效率可构成由用户经由UI所进行配置或自动配置的基础。或者,相关VPU的性能 可构成由用户经由UI所进行配置或自动配置的基础。
[0110] 现在描述能够体现在此描述的抗银齿方法的各个系统。
[0111] 图2是依照一个实施例的系统1200的框图。系统1200包括可W存在于有视频 能力的计算机系统的各个组件上的组件或元件。在一个实施例中,应用程序1202、驱动器 1204和共享存储器1205存在于主机系统上,而其余组件存在于专用于视频的组件上,所述 专用于视频的组件包括一个或多个视频卡,但是本发明并不局限于此。所示出的任何组件 可W存在于任何地方,或者作为选择,各个组件可W经由有线或无线网络来远程访问其它 组件。应用程序1202是要求视频处理能力的最终用户应用程序,诸如视频游戏应用程序。 应用程序1202与应用程序编程接口(API) 1204通信。API1204可W是可用的图形或视频 或 3DAPI(包括DirectX(来自Microsoft)和Open化(来自SiliconGraphics))中的任 何一个。
[0112]API1204与驱动器1206通信。驱动器1206是为系统1200专口编写的,驱动器 1206将从API1204所接收的标准代码转换为VPU组件所理解的本地格式,下面将更完整地 进行解释。
[0113] 在一个实施例中,系统1200还包括两个VPU;VPUA1208和VPUB1210。本发 明不局限于两个VPU。如该里所描述的本发明的各个方面可W在进行了对于本领域技术人 员显而易见的修改之后采用一个VPU来实行。然而,所述系统在一个VPU的情况下将会没 有采用一个W上VPU的情况高效。各个实施例还包括两个W上的VPU。在进行了对于本领 域技术人员显而易见的修改后,可W实现具有两个W上VPU的系统,并且在至少一些情况 下可能会比具有两个VPU的系统提供更好的效能。在各个实施例中,VPUA1208和VPUB 1210可W是视频卡上,其每一个都包括视频处理器W及其他的相关硬件。如下面将进一步 解释,本发明并不局限于此。例如,一个W上的VPU可W位于一个卡或板上。然而,如该里 所提及,VPU旨在至少包含视频处理器。
[0114] VPUA1208 和VPUB1210 通过相应的环形缓冲器(ringbuffer)A1222 和B 1224接收来自驱动器1206的命令和数据。所述命令指示VPUA1208和VPUB1210对该 数据执行各种操作,W便最终生成用于显示器1230的擅染帖。
[011引驱动器1206可W访问共享存储器1205。在一个实施例中,共享存储器1205或系 统存储器1205是计算机系统上的存储器,其可由计算机系统总线上的其它组件访问,但是 本发明并不局限于此。
[0116] 在一个实施例中,共享存储器1205、VPUA1208和VPUB1210都可W访问共享通 信总线1234,由此可W访问所述总线1234上的其它组件。在一个实施例中,共享通信总线 是外围组件接口快速(peripheralcomponentinterfaceexpress,PCIE〇 总线,但是 本发明并不局限于此。
[0117] 在W下文献中具体地描述了PCIE总线,该里通过将其全部引用加W结合W供参 考:
[011 引PCIExpress?,BaseSpecification,修订版 1. 1,2005 年 3 月 28 日;
[0119] PCIExpress?,CardElectromechanicalSpecification,修订版 1. 1,2005 年 3 月28日;
[0120] PCIExpress?,BaseSpecification,修订版 1.a, 2003 年 4 月 15 日;和
[0121] PCIExpress?,CardElectromechanicalSpecification,修订版 1.Oa,2003 年 4 月15日。
[0122] 所有上述文献的版权为PCI-SIG所有。
[0123] 在一个实施例中,VPU A1208和VPU B1210经由总线1234使用对等 (peer-to-peer)协议来直接互相通信,但是本发明并不局限于此。在其它实施例中,在VPU A1208和VPU B1210之间可W有直接的专用通信机制。
[0124]VPUA1208和VPUB1210均分别具有可用的本地视频存储器1226和1228。在各 个实施例中,其中一个VPU作为主VPU,而其它VPU作为从VPU,但是本发明并不局限于此。 在其它实施例中,所述多个VPU可W是在另一组件的中央控制下的对等体。在一个实施例 中,VPUA1208充当主VPU并且VPUB1210充当从VPU。
[01巧]在一个该种实施例中,各种协调和组合功能由连结模块(interlinkmo化le,IM) 1212来执行,所述连结模块1212与VPUA1208位于同一个卡上。该被示为用实线封 闭的IM1212。在该个实施例中,VPUA1208和VPUB1210经由总线1234相互通信,总线 1234用于传送VPU之间的通信(例如,命令和控制)和数据。例如,当VPUB1210向VPUA 1208上的IM1212传送输出帖W便进行合成时(例如图1和2所示),该帖经由总线1234 进行传送。
[0126] 在各个其它实施例中,IM1212并不位于VPU卡上,而是一个VPUA1208和VPU B1210均与其进行通信的独立组件。一个该种实施例包括"保护装置(dongle)"中的IM 1212,该''保护装置"易于被连接到VPUA1208和VPUB1210。该在图中由虚线封闭的IM 1212来表示。在该个实施例中,VPUA1208和VPUB1210经由IM连接1232来至少执行 一些通信。例如,VPUA1208和VPUB1210可W使用总线1234来传送命令和控制信息, 并且经由IM连接1232来传送诸如帖数据之类的数据。
[0127] 存在作为本发明不同实施例所设想的系统1200的许多配置。例如,如下所
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1