CN104603844B - 减小的位计数多边形光栅化 - Google Patents
减小的位计数多边形光栅化 Download PDFInfo
- Publication number
- CN104603844B CN104603844B CN201380046557.2A CN201380046557A CN104603844B CN 104603844 B CN104603844 B CN 104603844B CN 201380046557 A CN201380046557 A CN 201380046557A CN 104603844 B CN104603844 B CN 104603844B
- Authority
- CN
- China
- Prior art keywords
- triangle
- bits
- boundary
- given
- max
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/40—Filling a planar surface by adding surface attributes, e.g. colour or texture
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/12—Bounding box
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- Image Generation (AREA)
- Software Systems (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
依据实施例公开的技术用于进行给定的图形工作负荷的光栅化,其中,与相对高位计数操作相关联的工作负荷的部分经由第一处理路径处理,并且与相对较低位计数操作相关联的工作负荷的部分经由第二相对更快的处理路径处理。在更一般的意义上,与给定图元相关联的最大位计数能够识别并与阈值比较来确定能够使用多个可用处理路径中的哪一个。
Description
背景技术
通常,三维计算机图形领域涉及在二维空间(诸如显示屏)中产生并显示三维对象。这是通过将有关三维对象的信息转换为显示的位图来完成的。该所谓的渲染处理是多部分处理,通过该处理,计算机将图像的应用模型描述转换为屏幕图像。基本想法是:三维计算机图形中的信息的处理以图形流水线中的一系列阶段发生,每个阶段产生对于连续阶段的结果。
一个类型的渲染采用的是光栅化。一般而言,光栅化是将以矢量图形格式(形状)描述的图像转换为光栅图像(像素或点)的处理。作为结果的输出可能被提供给显示器或者打印机,或者例如保存为位图文件。典型的光栅化算法接收描述为多边形的三维场景,并将该场景渲染到二维显示器上。每个多边形被表现为三角形的集合,并且每个三角形由三维空间中的3个顶点表现。在这个意义上,光栅化器接收三角形顶点的流,将其转换为表面上对应的二维点,并根据需要填充转换的二维三角形。
附图说明
图1示出依据本发明的实施例的配置为进行多边形光栅化的图形处理系统。
图2示出依据本发明的实施例配置的图1所示的系统的处理路径选择设备。
图3示出依据本发明的实施例配置的多边形光栅化方法。
图4示出依据本发明的实施例的有关给定多边形的边界框以及要光栅化的有效样本。
图5示出依据本发明的实施例能够分割为能够被处理的三角形的示例多边形图元(primitive)。
图6示出依据本发明的实施例配置的媒体系统。
图7示出依据本发明的实施例配置的移动计算系统。
具体实施方式
公开的技术用于执行给定图形工作负荷的光栅化,其中,与相对高位计数(bitcount)操作相关联的工作负荷的部分经由第一处理路径处理,并且与相对较低位计数操作相关联的工作负荷的部分经由第二、相对更快的处理路径被处理。在典型并依据实施例的工作负荷中,大多数光栅化处理操作能够使用更快的处理路径来执行。例如,在一些实施例中,能够使用更快的处理路径执行的光栅化处理操作超过接收的图形工作负荷的90%,或者95%,或者在很多情况下为99%。因此,通过识别更快的处理路径(例如32位操作路径,例如相对于40位或者64位操作路径)将是充分的那些情况,进而选择适当的处理路径,能够实现处理效率和功耗的显著改善。在更一般的意义上,与给定图元相关联的最大位计数能够被识别并与阈值比较来确定能够使用多个可用处理路径中的哪一个。
总览
如上所述,光栅化器通常接收三角形顶点的流,将其转换为表面上对应的二维点,并根据需要填充转换的二维三角形。更具体而言,典型地由应用程序创建给定的对象的应用模型,并存储在应用数据库中。使用图形应用编程接口(API),应用程序将应用模型转换为一系列命令,其然后由图形流水线处理,以产生模型的视图。图形API典型地包含一系列图形输出子程序或者命令,其含有要观看的内容的详细几何描述和描述对象应该如何出现(例如尺寸、颜色、纹理、宽度等)的属性、以及其他要素,而这些都是在能够从高级语言(诸如C、C++、面向对象C、Pascal、LISP等)调用的图形封装中收集的。在光栅化期间,由三维表现中的三维参数定义的图元被转换为像素的二维光栅。三维参数包括x、y、以及z坐标,并可以可选地包括诸如颜色和纹理的参数。在转换处理期间,包括X、Y、以及Z值的三维坐标被转换为用于定位的X和Y屏幕坐标、以及被视为参数的深度值Z。在光栅化期间,对于3个三角形顶点的每个,给出一组参数值。在光栅化处理期间要解决的一个问题是计算三维参数(诸如Z参数、颜色参数、以及纹理参数),该三维参数对应于将三维图元进行最密切近似的坐标。光栅化通过在扫描像素网格的水平或者垂直扫描线时计算在每个像素处的参数值,来进行这些确定。存在与已知的光栅化技术相关联的多个重要问题。例如,在光栅化期间,检查样本是否由三角形(或者其他图元)覆盖的查询由图形流水线广泛地调用。该查询经常用3个半平面测试来计算,并需要能够导致32.16(48位)数字的乘法。然而,通常的图形API典型地将要求的光栅化精度限定为使用固定点16.8(24位)数字。此外,典型的图形系统使用具有40位操作的固定功能硬件,并且软件光栅化器使用64位操作。为此,根据工作负荷,光栅化处理可能是昂贵且低效的处理,有时需要很多乘法计算。
因此,依据本发明的实施例,提供如下光栅化技术:其中,在光栅化之前或者期间评价给定的图形工作负荷,来评估操作的必要位计数。如果位计数超过给定的阈值,那么能够使用能够容纳更高位操作的更慢的处理路径来处理工作负荷。另一方面,如果位计数为给定的阈值或在其以下,那么能够使用能够容纳更低位操作的相对更快的处理路径来处理工作负荷。例如,鉴于本公开要理解的是,对于固定功能硬件,使用32位操作而非40位操作可以减小面积和功耗。以类似的方式,对于软件光栅化器,使用32位操作而非64位操作可以增加图形流水线的性能并减小功耗。
该技术基于多个观察。例如,鉴于本公开要理解的是,三角形的边界框外的样本点能够在光栅化之前/之中被简单地拒绝,使得对于三角形的边界框内的一组样本仅需要完成半平面测试。此外,半平面测试需要的位的数能够在光栅化之前界定——该测试在当前的绘制调用期间对于给定的三角形中的所有样本点都有效。在一个示例实施例中,例如,如果该界限不超过32位,那么能够使用通常的32位变量(而在光栅化期间根据需要将值移位)。如果界限超过32位,那么能够使用软件光栅化器中的64位操作和/或硬件光栅化器中的可编程硬件。
鉴于本公开要理解的是,虽然本文提供了诸如32位操作(例如BitOpThreshold≤32)的示例位操作,但是该技术能够适用于任何数位的操作(例如24位、16位等),并且请求保护的发明不意图被限制为任何特定位操作阈值,除非明确规定。同样,虽然本文提供了诸如三角形的示例多边形图元,但该技术能够适用于通过首先将其分割或者切割为三角形的任何平面多边形,并且请求保护的发明不意图被限制为任何特定图元形状,除非明确规定。
系统架构和方法
图1是示出依据本发明的实施例的配置为进行多边形光栅化的图形处理系统。可见,系统包含渲染引擎,该渲染引擎包含光栅化器。光栅化器配置有处理路径选择设备。在操作中,给定的应用访问该系统并提供图形工作负荷,该图形工作负荷例如可以包含要由系统处理的一个或多个命令和/或图形数据,其进而来向显示器设备产生输出。
要理解的是,没有示出图形处理系统的所有典型部件和功能模块(诸如图形处理单元(GPU)、位块传送器引擎、以及媒体引擎)。此外要注意的是,不同实施例可以具有不同程度的元件部分/模块整合。例如,处理路径选择设备可以实现为在光栅化器的输入处的离散部件/模块,或者集成到光栅化器。替代地,处理路径选择设备可以部分地实现在光栅化器内,并部分地实现在与光栅化器通信的一个或多个其他部件中。鉴于本公开可以想到大量其他这样的变化和实施例,请求保护的发明不意图被限制为在图中绘出的特定示例。
给定的应用能够是产生适于由图形处理系统执行的命令的任何应用。工作负荷能够如常规完成那样或者如果期望的话用自定义或者专有协议,从应用传递至系统。在其他实施例中,应用可以与一个或多个介入模块和/或部件通信,其中的一个或多个进而与系统通信。这样的应用细节从一个实施例到另一个实施例会大幅变化,并且不意图限制请求保护的发明。
能够使用任何数量的已知和/或自定义技术和架构来实现基于光栅化器的渲染引擎,以便允许进行典型的光栅化处理。然而,除了这样的常规/自定义功能和架构外,光栅化器被进一步编程和/或配置有处理路径选择设备,其在一个实施例中被配置为评估工作负荷的哪些部分(如果有的话)与相对高位计数操作相关联,以及工作负荷的哪些部分与相对较低位计数操作相关联,然后将这些工作负荷部分提供给光栅化器的适当的处理路径。位计数阈值例如能够是用户可配置的参数集,或者能够被设定为适于给定应用的预定值。参考图2讨论处理路径选择设备。
图2示出依据本发明的实施例配置的图1所示的系统的处理路径选择设备。可见,设备接收采取一个或多个多边形图元形式的工作负荷,并通过设备模块处理每一个,该设备模块包含边界框模块、三角形变换模块、边缘方程模块、以及界限计算模块。来自界限计算模块的输出然后被提供给一个光栅化器处理路径(在该示例情况下为慢速或者快速)。光栅化处理的输出(与选择的路径无关)能够被提供给显示器设备(或者任何其他适当的输出设备,诸如存储器或者打印机)。要进一步理解的是,其他实施例可以包含不同程度的整合,并且绘出的示例实施例是为了易于描述而选择的。在该示例实施例中接收的多边形图元例如可以是三角形,但是其可以是能够被分割为两个或更多个三角形的任何其他多边形形状。在任何情况下,接收的每个三角形然后能够通过设备处理,如现将进一步参考图3讨论的那样。
边界框模块被编程或者配置为计算301三角形的边界框,并且三角形变换模块被编程或者配置为将三角形从三维领域变换303到二维领域。为了进一步解释,假定下面的符号:给定数字N,Bits(N)是表现N的需要的位数;N.i是表现N的整数部分的需要的位数;并且N.f是表现N的小数部分的需要的位数。对于给定的三角形边缘而言,能够使用的线方程式的形式是Ax+By=C,并且半平面测试由谓词Ax+By≥C定义,其中A、B、C是从三角形边缘计算的,并且x、y是从测试的样本点取出的。整数部分x.i和y.i依赖于如在301处计算的三角形的像素对齐的边界框(minX,minY→maxX,maxY),这些值能够通过在303处对于该三角形用(-minX,-minY)变换坐标系来减小,这会将边界框最小点有效移动至原点。依据实施例,x和y坐标的最小和最大值限定边界框(在301处),并且三角形和样本点的变换是由边界框的最小值进行的(在303处)。
边缘方程模块被编程或者配置为导出305三角形的边缘方程。如上所述,对于给定的三角形边缘而言,能够使用的线方程式的形式是Ax+By=C,并且半平面测试由谓词Ax+By≥C定义,其中A、B、C是从三角形边缘计算的,并且x、y是从测试的样本点取出的。依据一个示例实施例,谋求的界限在Bits(Ax+By)的值上。要注意的是在该式子中,A和B对于给定的三角形边缘是固定的。也应该注意小数部分x.f和y.f是从小固定集中取出的,从当前绘制的采样方案导出。
界限计算模块被编程或者配置为计算307用于每个三角形边缘的位上的界限。依据一个示例实施例,界限能够如下用公式表示:
1+max(Bits(A.i)+Bits(maxX-minX),Bits(B.i)+Bits(maxY-minY))
+max(Bits(A.f)+max(Bits(x.f)),Bits(B.f)+max(Bits(y.f)))
其中上面的表达式max(Bits(A.i)+Bits(maxX-minX),Bits(B.i)+Bits(maxY-minY))涉及整数部分,并且下面的表达式+max(Bits(A.f)+max(Bits(x.f)),Bits(B.f)+max(Bits(y.f)))涉及小数部分。对于接收的(或者从接收的多边形形状导出的)每个三角形而言,对于该三角形的所有3个边缘计算该界限。因此,每个三角形边缘将具有3个界限,每个都识别出与处理该边缘相关联的位数。
依据示出的示例实施例,一旦对于给定三角形的所有3个边缘计算了界限,界限计算模块(或者其他模块)还被配置为识别309最大值(BoundMax),并确定311界限是否小于或等于给定的位操作阈值(BitOpThreshold)。如果是,能够使用更快的处理路径,如315处表明的那样;否则,如果界限大于给定的位操作阈值,那么能够使用更慢的处理路径,如313处表明的那样。例如,如果3个边缘界限分别是17,21和20位(如对于307中给定的三角形计算的那样),那么最大值将是21位。在这样的示例情况下,如果位操作阈值是32位,那么21位小于或等于32,快速路径(32位操作路径)能够被用于将该三角形光栅化。如果最大值例如是33位,或者大于位操作阈值(例如32位),那么更慢的路径(40位或者64位操作路径)能够被用于将该三角形光栅化。鉴于本公开要理解的是,每个三角形典型地覆盖屏幕上的多个样本点,所以每个三角形发生一次的动作与每个样本点发生一次的动作相比,将以低频率发生。这样,那些每三角形动作相对于性能而言更高效。因此,依据实施例,在301、303、305、307、309、以及311处的动作可以被每三角形执行一次,因此,在附加的处理时间方面将具有相对小的影响。
鉴于本公开要理解的是,本文描述的各种功能模块例如能够用任何适当的编程语言(例如C、C++、objective C、自定义或者专有的指令集等)实现,并编码在一个或多个机器可读介质上,其当由一个或多个处理器执行时,进行如本文描述的减小的位计数多边形光栅化。其他实施例例如能够用以下来实现:门级逻辑或者专用集成电路(ASIC)或者芯片组或者其他这样的特制逻辑、或者具有输入/输出能力(例如,用于接收用户输入的输入和用于指引其他部件的输出)和用于进行图形工作负荷处理的多个嵌入的例程的微控制器。简言之,各种功能模块能够由硬件、软件、固件、或者其组合实现,并且任何这样的变化可以被用于与如本文描述的减小的位计数多边形光栅化方案进行结合。一个具体实施例实现为片上系统,其可以包含一个或多个嵌入的软件例程和处理硬件,例如包含用于执行减小的位计数多边形光栅化的那种。另一个实施例实现为图形卡。另一个实施例可以实现为软件光栅化器。
依据一个实施例配置的光栅化器例如能够使用2个简单的合成测试来检测。第一测试将对一大组相对小的三角形进行光栅化,以触发使用快速处理(例如32位)路径。第二测试将对由更大的三角形覆盖的相同量的样本进行光栅化,这将不能使用快速处理路径,因为其线方程式将具有大系数。例如,如果第二测试对于软件光栅化器需要更多时间来完成,或者对于硬件光栅化器需要更大功率,那么这表明使用对于如本文提供的更小三角形的路径选择处理。
图4示出依据本发明的实施例的有关给定多边形的边界框以及要光栅化的有效样本。可见,给出的多边形是三角形。每301计算的边界框以虚线示出。如先前解释的,x和y坐标的最小和最大值限定该边界框(minX,minY→maxX,maxY)。进一步可见,落在边界框外的样本点能够被简单地拒绝,而框中的样本可以被认为是有效的(受半平面测试)。图5示出依据本发明的实施例能够分割为能够被处理的三角形的示例多边形图元。可见,该特定示例图元被分割为三角形A至E。这些三角形的每个能够通过如本文描述的多路径光栅化器进行处理。
为了进一步示出,考虑下面的详细的示例。假定接收的给定三角形具有的单个边缘具有下面的值:A=16.5,B=3.125;maxX=7,minX=2;以及maxY=3,minY=1。进一步假定所有样本位于像素中心(没有多样本反走样(anti-aliasing))。为了对于单个边缘计算界限,则有:
Bits(A.i)=Bits(16)=5;
Bits(A.f)=Bits(0.5)=1;
Bits(B.i)=Bits(3)=2;
Bits(B.f)=Bits(0.125)=3;
Bits(maxX-minX)=Bits(5)=3;
Bits(maxY-minY)=Bits(2)=2;
max(Bits(x.f))=Bits(0.5)=1;以及
max(Bits(y.f))=Bits(0.5)=1。
因此,然后界限能够被计算为是:1+max(5+3,2+2)+max(1+1,3+1)=13位。如上所述,依据实施例,该界限能够对于每个三角形的每个边缘进行计算,并且取出了最大值。最大值然后能够与位阈值比较,以确定是否能够在快速路径(或者慢速路径)上处理该特定三角形。在更一般的意义上,确定能够被用来识别多个可用处理路径(例如快速/慢速路径、加密/非加密路径、处理器_1/处理器_2路径等)中的一个。
示例系统
图6示出依据一些实施例的可以执行如本文描述的减小的位计数多边形光栅化的示例系统600。在一些实施例中,系统600可以是媒体系统,尽管系统600不限于该上下文。例如,系统600可以整合到个人计算机(PC)、膝上型计算机、超膝上型计算机、平板、触摸板、便携计算机、手持型计算机、掌上计算机、个人数字助理(PDA)、蜂窝电话、蜂窝电话与PDA的组合、电视、智能设备(例如智能电话、智能平板或者智能电视)、移动互联网设备(MID)、消息收发设备、数据通信设备、机顶盒、游戏主机、或者能够执行光栅化操作的其他这样的计算环境。
在一些实施例中,系统600包括耦合至显示器620的平台602。平台602可以从内容设备(诸如内容服务设备630、或者内容输送设备640、或者其他类似的内容源)接收内容。导航控制器650包括可以被用于例如与平台602和/或显示器620交互的一个或多个导航功能。下文更详细地描述了这些示例部件中的每个。
在一些实施例中,平台602可以包括以下的任何组合:芯片组605、处理器610、存储器612、存储设备614、图形子系统615、应用616和/或无线电装置618。芯片组605可以在处理器610、存储器612、存储设备614、图形子系统615、应用616和/或无线电装置618之间提供互相通信。例如,芯片组605可以包含能够提供与存储设备614互相通信的存储适配器(未绘出)。
处理器610例如可以作为复杂指令集计算机(CISC)或者精简指令集计算机(RISC)处理器、x86指令集兼容处理器、多核、或者任何其他微处理器或者中央处理单元(CPU)实现。在一些实施例中,处理器610可以包括双核处理器、双核移动处理器等。存储器612例如可以实现为易失性存储器设备,诸如但是不限于随机存取存储器(RAM)、动态随机存取存储器(DRAM)、或者静态RAM(SRAM)。存储设备614例如可以实现为非易失性存储设备,诸如但是不限于磁盘驱动器、光盘驱动器、磁带驱动器、内部存储设备、附加存储设备、闪存、装配有电池的SDRAM(同步DRAM)、和/或网络可访问存储设备。在一些实施例中,存储设备614可以包括如下技术:例如当包含多个硬盘驱动器时,对于有价值的数字媒体增加存储性能增强的保护。
图形子系统615可以执行用于显示的图像(诸如静止图像或者视频)的处理。图形子系统615例如可以是图形处理单元(GPU)或者视觉处理单元(VPU)。模拟或者数字接口可以被用于将图形子系统615与显示器620通信地耦合。例如,接口可以是高清晰度多媒体接口、DisplayPort、无线HDMI、和/或无线HD兼容技术中的任一个。图形子系统615能够被集成到处理器610或者芯片组605中。图形子系统615可以是通信地耦合至芯片组605的独立卡。本文说明的图形和/或视频处理技术(包含光栅化等)可以在各种硬件架构中实现。例如,减小的位计数多边形光栅化功能可以被集成在图形和/或视频芯片组内。替代地,可以使用离散减小的位计数多边形光栅化处理器。在又一个实施例中,包含减小的位计数多边形光栅化的图形和/或视频功能可以由包含多核处理器的通用处理器实现。
无线电装置618可以包含能够使用各种适当的无线通信技术来传输并接收信号的一个或多个无线电装置。这样的技术可以涉及跨一个或多个无线网络的通信。示例性无线网络包含(但是不限于)无线局域网(WLAN)、无线个人区域网络(WPAN)、无线城域网(WMAN)、蜂窝网络、以及卫星网络。在跨这样的网络的通信中,无线电装置618可以依据任何版本的一个或多个适用标准来操作。
在一些实施例中,显示器620可以包括任何电视或者计算机类监控器或者显示器。显示器620例如可以包括液晶显示器(LCD)屏幕、电泳显示器(EPD)或者液体纸显示器、平板显示器、触摸屏显示器、类似电视的设备、和/或电视。显示器620可以是数字的和/或模拟的。在一些实施例中,显示器620可以是全息或者三维显示器。另外,显示器620可以是可以接收视觉投影的透明表面。这样的投影可以传输各种形式的信息、图像、和/或对象。例如,这样的投影可以是用于移动增强现实(MAR)应用的视觉叠加。在一个或多个软件应用616的控制下,平台602可以在显示器620上显示用户界面622。
在一些实施例中,内容服务设备630可以由任何国内、国际和/或独立服务主持,其因此例如对平台602可经由互联网或者其他网络访问。内容服务设备630可以耦合至平台602和/或显示器620。平台602和/或内容服务设备630可以耦合至网络660来将媒体信息通信(例如发送和/或接收)至/自网络660。内容输送设备640还可以耦合至平台602和/或显示器620。在一些实施例中,内容服务设备630可以包括有线电视盒、个人计算机、网络、电话、具有互联网功能的设备或者能够输送数字信息和/或内容的电器、以及能够经由网络660或者直接在内容提供商与平台602和/或显示器620之间单向或者双向对内容进行通信的任何其他类似的设备。应该理解的是内容可以经由网络660被单向和/或双向地通信至/自系统600中的任何一个部件和内容提供商。内容的示例可以包含任何媒体信息,例如包含视频、音乐、图形、文本、医疗和游戏内容等。
内容服务设备630接收诸如有线电视节目表的内容,包含媒体信息、数字信息和/或其他内容。内容提供商的示例可以包含任何有线或者卫星电视或者无线电或者互联网内容提供商。提供的示例不意味着限制请求保护的发明。在一些实施例中,平台602可以从具有一个或多个导航功能的导航控制器650接收控制信号。控制器650的导航功能例如可以被用于与用户界面622交互。在一些实施例中,导航控制器650可以是指点设备,该指点设备可以是允许用户向计算机输入空间(例如连续和多维)数据的计算机硬件部件(具体而言为人机界面设备)。诸如图形用户界面(GUI)、以及电视和监控器的很多系统允许用户使用物理手势控制并提供数据给计算机或者电视。
控制器650的导航功能的移动可以通过指针、光标、聚焦环、或者显示在显示器上的其他视觉指示器的移动来在显示器(例如显示器620)上呼应。例如,在软件应用程序716的控制下,导航控制器650中的导航功能例如可以映射至显示在用户界面622上的虚拟导航功能。在一些实施例中,控制器650可能不是分离部件,而是被集成到平台602和/或显示器620中。然而,要理解的是实施例不限于本文示出或者说明的要素或者背景。
在一些实施例中,驱动器(未示出)可以包括例如当启用时在初始引导后用触摸按钮能使用户(像电视一样)立即开启和关掉平台602的技术。当平台被关掉时,程序逻辑可以允许平台602将内容流式传输至媒体适配器或者其他内容服务设备630或者内容输送设备640。此外,芯片组605可以包括例如5.1环绕声音频和/或高清7.1环绕声音频的硬件和/或软件支持。驱动器可以包含用于集成图形平台的图形驱动器。在一些实施例中,图形驱动器可以包括外围部件互连(PCI)express图形卡。
在各种实施例中,可以将系统600中示出的任何一个或多个部件集成。例如,可以将平台602和内容服务设备630集成,或者可以将平台602和内容输送设备640集成,或者例如可以将平台602、内容服务设备630、以及内容输送设备640集成。在各种实施例中,平台602和显示器620可以是集成单元。例如可以将显示器620和内容服务设备630集成,或者可以将显示器620和内容输送设备640集成。这些示例不意味着限制要求保护的发明。
在各种实施例中,系统600可以实现为无线系统、有线系统、或者两者的组合。当实现为无线系统时,系统600可以包含适于在无线共享介质(诸如一个或多个天线、发射器、接收器、收发器、放大器、滤波器、控制逻辑等)上通信的部件和接口。无线共享介质的示例可以包含无线频谱的部分、诸如RF频谱等。当实现为有线系统时,系统600可以包含适于在有线通信介质(诸如输入/输出(I/O)适配器、将I/O适配器与对应的有线通信介质连接的物理连接件、网络接口卡(NIC)、盘控制器、视频控制器、音频控制器等)上通信的部件和接口。有线通信介质的示例可以包含线、电缆、金属导线、印制电路板(PCB)、背板、交换结构、半导体材料、双绞线、同轴电缆、光纤等。
平台602可以建立一个或多个逻辑或者物理信道来对信息进行通信。信息可以包含媒体信息和控制信息。媒体信息可以指表现给用户的内容的任何数据。内容的示例例如可以包含来自语音通话、视频会议、流式视频、电子邮件或者文本消息、语音信箱消息、字母数字符号、图形、图像、视频、文本等的数据。控制信息可以指表现给自动化系统的命令、指令或者控制字的任何数据。例如,控制信息可以被用于以预定的方式将媒体信息路由通过系统,或者指示节点来处理媒体信息(例如使用如本文描述的减小的位计数多边形光栅化技术)。然而,实施例不限于图6示出或者描述的要素或者上下文。
如上所述,系统600可以以变化的物理样式或者形状因子来实施。图7示出可以实施系统600的小形状因子的设备700的实施例。例如,在一些实施例中,设备700可以实现为具有无线能力的移动计算设备。移动计算设备可以指例如具有处理系统和移动电源或者供电(诸如一个或多个电池)的任何设备。
如上所述,移动计算设备的示例可以包含个人计算机(PC)、膝上型计算机、超膝上型计算机、平板、触摸板、便携计算机、手持型计算机、掌上计算机、个人数字助理(PDA)、蜂窝电话、组合蜂窝电话/PDA、电视、智能设备(例如智能手机、智能平板或者智能电视)、移动互联网设备(MID)、消息收发设备、数据通信设备等。
移动计算设备的示例也可以包含被布置为由人穿戴的计算机,诸如腕上计算机、手指计算机、戒指计算机、眼镜计算机、皮带夹计算机、臂带计算机、鞋内计算机、衣服计算机、以及其他可穿戴计算机。在一些实施例中,例如移动计算设备可以被实现为能够执行计算机应用以及声音通信和/或数据通信的智能手机。尽管一些实施例以示例的方式可以描述为具有实现为智能手机的移动计算设备,但可以理解的是也可以使用其他无线移动计算设备来实现其他实施例。实施例不限于该上下文。
如图7所示,设备700可以包括外壳702、显示器704、输入/输出(I/O)设备706、以及天线708。设备700还可以包括导航功能712。显示器704可以包括用于显示对移动计算设备合适的信息的任何适当的显示器单元。I/O设备706可以包括用于向移动计算设备输入信息的任何适当的I/O设备。用于I/O设备706的示例可以包含字母数字键盘、数字小键盘、触摸板、输入键、按钮、开关、摇臂开关、麦克风、扬声器、声音识别设备和软件等。信息还可以通过麦克风输入至设备700。这样的信息可以由声音识别设备数字化。实施例不限于该上下文。
可以使用硬件元素、软件元素、或者两者的组合来实现各种实施例。硬件元素的示例可以包含处理器、微处理器、电路、电路元件(例如晶体管、电阻器、电容器、电感器等)、集成电路、专用集成电路(ASIC)、可编程逻辑器件(PLD)、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、逻辑门、寄存器、半导体设备、芯片、微芯片、芯片组等。软件的示例可以包含软件部件、程序、应用、计算机程序、应用程序、系统程序、机器程序、操作系统软件、中间件、固件、软件模块、例程、子程序、函数、方法、过程、软件接口、应用程序接口(API)、指令集、计算代码、计算机代码、代码段、计算机代码段、字、值、符号、或者其任何组合。从一个实施例到另一个实施例,是否使用硬件元素和/或软件元素可以依据任何数量的因素而变化,诸如期望的计算速率、功率水平、耐热性、处理周期预算、输入数据速率、输出数据速率、存储器资源、数据总线速度以及其他设计或者性能约束。
一些实施例例如可以使用可以存储指令或者一组指令的机器可读介质或者物件实现,所述指令或者一组指令如果由机器执行,可以使机器依据本发明的实施例执行方法和/或操作。这样的机器例如可以包含任何适当的处理平台、计算平台、计算设备、处理设备、计算系统、处理系统、计算机、处理器等,并可以使用硬件和软件的任何适当的组合来实现。机器可读介质或者物件例如可以包含任何适当类型的存储器单元、存储器设备、存储器物件、存储器介质、存储设备、存储物件、存储介质和/或存储单元,例如,存储器、可移动或者非可移动介质、可擦除或者非可擦除介质、可写或者可重写介质、数字或者模拟介质、硬盘、软盘、只读压缩光盘(CD-ROM)、可记录的压缩光盘(CD-R)、可重写压缩光盘(CR-RW)、光盘、磁介质、磁光介质、可移动存储卡或者盘、各种类型的数字通用光盘(DVD)、带、磁带等。指令可以包含任何适当类型的可执行代码,可执行代码使用任何适当的高级、低级、面向对象的、视觉的、编译的和/或解释的编程语言来实现。
除非另有具体陈述,可以理解的是术语诸如处理、运算、计算、确定等是指计算机或者计算系统、或者类似的电子计算设备的动作和/或处理,其将计算系统的寄存器和/或存储器内表现为物理量(例如电子)的数据操纵和/或转换为计算系统的存储器、寄存器内类似地表现为物理量的其他数据,或者其他这样的信息存储、传输或者显示。实施例不限于该上下文。
可以想到大量实施例,本文描述的特征能够以任何数量的配置进行组合。本发明的一个示例实施例提供一种设备,包含边界框模块,其配置为计算描述三维场景的给定的多边形图元的边界框,多边形的所述多边形图元表现为一个或多个三角形。该设备还包含变换模块,其配置为将每个三角形从三维领域变换为二维领域,以及边缘方程模块,其配置为导出每个三角形的边缘方程。该设备还包含界限计算模块,其配置为计算用于每个三角形的每个边缘的位上的界限,并识别具有对于每个三角形的最大值的边缘界限。在一些情况下,如果对于给定的三角形的最大边缘界限值小于或等于给定阈值,那么在第一处理路径上处理所述三角形,并且如果对于给定三角形的最大边缘界限值大于给定阈值,那么在不同于所述第一处理路径的第二处理路径上处理所述三角形。在一些情况下,第一处理路径配置为处理N位光栅化操作,并且所述第二处理路径配置为处理M位光栅化操作。在一些特定情况下,例如,所述界限计算模块还配置为确定对于每个三角形的最大边缘界限值是否小于或等于给定的位操作阈值。在一个这样的情况下,如果所述界限计算模块确定对于给定的三角形的最大边缘界限值小于或等于给定的位操作阈值,那么在较低的位计数处理路径上处理所述三角形。在另一个情况下,如果所述界限计算模块确定对于给定三角形的最大边缘界限值大于给定的位操作阈值,那么在较高的位计数处理路径上处理所述三角形。在一些情况下,所述界限计算模块配置为使用下面的公式计算使用的位上的界限:1+max(Bits(A.i)+Bits(maxX-minX),Bits(B.i)+Bits(maxY-minY))+max(Bits(A.f)+max(Bits(x.f)),Bits(B.f)+max(Bits(y.f))),其中表达式max(Bits(A.i)+Bits(maxX-minX),Bits(B.i)+Bits(maxY-minY))涉及所述给定的三角形边缘的界限的整数部分,并且表达式+max(Bits(A.f)+max(Bits(x.f)),Bits(B.f)+max(Bits(y.f)))涉及所述三角形边缘的界限的小数部分。在一些情况下,所述设备是光栅化器。可以想到大量变化。例如,另一个实施例提供一种包括如该段落中各种限定的设备的媒体处理系统。本发明的另一个实施例提供包括所述媒体处理系统的移动计算系统。另一个实施例提供一种包括如该段落中各种限定的设备的片上系统(或者芯片组)。
本发明的另一个实施例提供一种光栅化器系统。该系统包含边界框模块,其配置为计算描述三维场景的给定多边形图元的边界框,多边形的所述多边形图元表现为一个或多个三角形。该系统还包含变换模块,其配置为将每个三角形从三维领域变换为二维领域,以及边缘方程模块,其配置为导出每个三角形的边缘方程。该系统还包含界限计算模块,其配置为计算用于每个三角形的每个边缘的位上的界限,并识别具有对于每个三角形的最大值的边缘界限。如果对于给定的三角形的最大边缘界限值小于或等于位操作阈值,那么在较低位计数处理路径上处理所述三角形,并且如果对于给定的三角形的最大边缘界限值大于所述位操作阈值,那么在较高位计数处理路径上处理所述三角形。在一些特定的这样的情况下,所述位操作阈值是32位。在一些情况下,所述界限计算模块配置为使用下面的公式计算使用的位上的界限:1+max(Bits(A.i)+Bits(maxX-minX),Bits(B.i)+Bits(maxY-minY))+max(Bits(A.f)+max(Bits(x.f)),Bits(B.f)+max(Bits(y.f))),其中表达式max(Bits(A.i)+Bits(maxX-minX),Bits(B.i)+Bits(maxY-minY))涉及所述给定的三角形边缘的界限的整数部分,并且表达式+max(Bits(A.f)+max(Bits(x.f)),Bits(B.f)+max(Bits(y.f)))涉及所述三角形边缘的界限的小数部分。另一个相关实施例提供一种包含光栅化器系统的移动计算系统。
本发明的另一个实施例提供一种方法。该方法包含计算描述三维场景的给定的多边形图元的边界框,多边形的所述多边形图元表现为一个或多个三角形。该方法还包含将每个三角形从三维领域变换为二维领域,并导出每个三角形的边缘方程。该方法还包含计算用于每个三角形的每个边缘的位上的界限,并识别具有对于每个三角形的最大值的边缘界限。在一些情况下,如果对于给定的三角形的所述最大边缘界限值小于或等于给定的阈值,那么在第一处理路径上处理所述三角形,并且如果对于所述给定三角形的最大边缘界限值大于所述给定的阈值,那么在不同于所述第一处理路径的第二处理路径上处理所述三角形。在一个这样的情况下,所述第一处理路径配置为处理N位光栅化操作,并且所述第二处理路径配置为处理M位光栅化操作。在一些特定情况下,例如,该方法包含确定对于每个三角形的最大边缘界限值是否小于或等于给定的位操作阈值。在一些特定示例情况下,如果对于给定的三角形的最大边缘界限值小于或等于给定的位操作阈值,那么所述方法还包括在较低位计数处理路径上处理所述三角形。在一个这样的特定示例情况下,如果对于所述给定的三角形的最大边缘界限值大于所述给定的位操作阈值,那么所述方法还包括在较高位计数处理路径上处理所述三角形。
出于示出和描述的目的,已呈现了本发明的示例实施例的上述描述。其不意图是详尽的,或者限制本发明至公开的精确形式。鉴于本公开可能有很多修改和变化。意图是本发明的范围不限于该具体实施方式,而是由所附的权利要求限制。
Claims (20)
1.一种光栅化器,包括:
包括边界框模块的硬件电路,所述边界框模块配置为计算描述三维场景的给定的多边形图元的边界框,多边形的所述多边形图元表现为一个或多个三角形;
包括变换模块的硬件电路,所述变换模块配置为将每个三角形从三维领域变换为二维领域;
包括边缘方程模块的硬件电路,所述边缘方程模块配置为导出每个三角形的边缘方程;以及
包括界限计算模块的硬件电路,所述界限计算模块配置为计算用于每个三角形的每个边缘的位上的界限,并识别具有对于每个三角形的最大值的边缘界限,其中所述界限计算模块还配置为确定对于每个三角形的最大边缘界限值是否小于或等于给定的位操作阈值。
2.如权利要求1所述的光栅化器,其中,所述光栅化器是硬件图形流水线的至少一部分。
3.如权利要求1所述的光栅化器,其中,如果所述界限计算模块确定对于给定的三角形的最大边缘界限值小于或等于给定的位操作阈值,那么在较低的位计数处理路径上处理所述三角形。
4.如权利要求3所述的光栅化器,其中,如果所述界限计算模块确定对于给定三角形的最大边缘界限值大于给定的位操作阈值,那么在较高的位计数处理路径上处理所述三角形。
5.如权利要求1所述的光栅化器,其中,如果对于给定的三角形的最大边缘界限值小于或等于给定阈值,那么在第一处理路径上处理所述三角形,并且如果对于给定三角形的最大边缘界限值大于给定阈值,那么在不同于所述第一处理路径的第二处理路径上处理所述三角形。
6.如权利要求5所述的光栅化器,其中,所述第一处理路径配置为处理N位光栅化操作,并且所述第二处理路径配置为处理M位光栅化操作。
7.如权利要求1所述的光栅化器,其中,所述界限计算模块配置为使用下面的公式计算使用的位上的界限:
1+max(Bits(A.i)+Bits(maxX-minX),Bits(B.i)+Bits(maxY-minY))
+max(Bits(A.f)+max(Bits(x.f)),Bits(B.f)+max(Bits(y.f)))
其中表达式max(Bits(A.i)+Bits(maxX-minX),Bits(B.i)+Bits(maxY-minY))涉及所述给定的三角形边缘的界限的整数部分,并且表达式max(Bits(A.f)+max(Bits(x.f)),Bits(B.f)+max(Bits(y.f)))涉及所述三角形边缘的界限的小数部分,并且其中:
所述给定的三角形边缘由线方程式Ax+By=C表现,并且半平面测试由谓词Ax+By≥C定义,其中A、B、C是从所述三角形边缘计算的,并且x、y是从当前绘制的测试的样本点取出的;
给定数字N表现A或B,Bits(N)是表现N的需要的位数;
N.i是表现N的整数部分的需要的位数;
N.f是表现N的小数部分的需要的位数;
小数部分x.f和y.f是从固定集中取出的,所述固定集从绘制当前绘制的采样方案导出;
minX和minY分别是所述边界框的x和y坐标的最小值;
maxX和maxY分别是所述边界框的x和y坐标的最大值;以及
max(result1,result2)是result1或result2中的较大的一个。
8.一种媒体处理系统,包括权利要求1所述的光栅化器。
9.一种移动计算系统,包括权利要求8的所述媒体处理系统。
10.一种片上系统,包括权利要求1所述的光栅化器。
11.一种用于光栅化的装置,所述装置包括:
用于计算描述三维场景的给定多边形图元的边界框的模块,多边形的所述多边形图元表现为一个或多个三角形;
用于将每个三角形从三维领域变换为二维领域的模块;
用于导出每个三角形的边缘方程的模块;以及
用于计算用于每个三角形的每个边缘的位上的界限并识别具有对于每个三角形的最大值的边缘界限的模块;
其中,如果对于给定的三角形的最大边缘界限值小于或等于位操作阈值,那么在较低位计数处理路径上处理所述三角形;并且
其中,如果对于给定的三角形的最大边缘界限值大于所述位操作阈值,那么在较高位计数处理路径上处理所述三角形。
12.如权利要求11所述的装置,其中,所述位操作阈值是32位。
13.如权利要求11所述的装置,其中,使用下面的公式计算使用的位上的界限:
1+max(Bits(A.i)+Bits(maxX-minX),Bits(B.i)+Bits(maxY-minY))
+max(Bits(A.f)+max(Bits(x.f)),Bits(B.f)+max(Bits(y.f)))
其中表达式max(Bits(A.i)+Bits(maxX-minX),Bits(B.i)+Bits(maxY-minY))涉及所述给定的三角形边缘的界限的整数部分,并且表达式+max(Bits(A.f)+max(Bits(x.f)),Bits(B.f)+max(Bits(y.f)))涉及所述三角形边缘的界限的小数部分,并且其中:
所述给定的三角形边缘由线方程式Ax+By=C表现,并且半平面测试由谓词Ax+By≥C定义,其中A、B、C是从所述三角形边缘计算的,并且x、y是从当前绘制的测试的样本点取出的;
给定数字N表现A或B,Bits(N)是表现N的需要的位数;
N.i是表现N的整数部分的需要的位数;
N.f是表现N的小数部分的需要的位数;
小数部分x.f和y.f是从固定集中取出的,所述固定集从绘制当前绘制的采样方案导出;
minX和minY分别是所述边界框的x和y坐标的最小值;
maxX和maxY分别是所述边界框的x和y坐标的最大值;以及
max(result1,result2)是result1或result2中的较大的一个。
14.一种移动计算设备,包括权利要求12所述的装置。
15.一种用于光栅化的方法,包括:
计算描述三维场景的给定的多边形图元的边界框,多边形的所述多边形图元表现为一个或多个三角形;
将每个三角形从三维领域变换为二维领域;
导出每个三角形的边缘方程;
计算用于每个三角形的每个边缘的位上的界限;
识别具有对于每个三角形的最大值的边缘界限;以及
确定对于每个三角形的最大边缘界限值是否小于或等于给定的位操作阈值。
16.如权利要求15所述的方法,其中所述位操作阈值是32位。
17.如权利要求15所述的方法,其中,如果对于给定的三角形的最大边缘界限值小于或等于给定的位操作阈值,那么所述方法还包括在较低位计数处理路径上处理所述三角形。
18.如权利要求17所述的方法,其中,如果对于所述给定的三角形的最大边缘界限值大于所述给定的位操作阈值,那么所述方法还包括在较高位计数处理路径上处理所述三角形。
19.如权利要求15所述的方法,其中,如果对于给定的三角形的所述最大边缘界限值小于或等于给定的阈值,那么在第一处理路径上处理所述三角形,并且如果对于所述给定三角形的最大边缘界限值大于所述给定的阈值,那么在不同于所述第一处理路径的第二处理路径上处理所述三角形。
20.如权利要求19所述的方法,其中,所述第一处理路径配置为处理N位光栅化操作,并且所述第二处理路径配置为处理M位光栅化操作。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/647,071 US9218679B2 (en) | 2012-10-08 | 2012-10-08 | Reduced bitcount polygon rasterization |
US13/647,071 | 2012-10-08 | ||
PCT/US2013/061166 WO2014058604A1 (en) | 2012-10-08 | 2013-09-23 | Reduced bitcount polygon rasterization |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104603844A CN104603844A (zh) | 2015-05-06 |
CN104603844B true CN104603844B (zh) | 2017-05-17 |
Family
ID=50432326
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201380046557.2A Expired - Fee Related CN104603844B (zh) | 2012-10-08 | 2013-09-23 | 减小的位计数多边形光栅化 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9218679B2 (zh) |
KR (1) | KR101700174B1 (zh) |
CN (1) | CN104603844B (zh) |
DE (1) | DE112013004920T5 (zh) |
WO (1) | WO2014058604A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9633458B2 (en) * | 2012-01-23 | 2017-04-25 | Nvidia Corporation | Method and system for reducing a polygon bounding box |
US20140184633A1 (en) * | 2012-12-31 | 2014-07-03 | Nvidia Corporation | Conservative bounding region rasterization |
CA2955444C (en) * | 2014-08-20 | 2019-05-28 | Landmark Graphics Corporation | Optimizing computer hardware resource utilization when processing variable precision data |
US10037620B2 (en) * | 2015-05-29 | 2018-07-31 | Nvidia Corporation | Piecewise linear irregular rasterization |
US10037621B2 (en) * | 2015-06-18 | 2018-07-31 | Intel Corporation | Hierarchical quadrant based coverage testing for rasterization |
US10062206B2 (en) * | 2016-08-30 | 2018-08-28 | Advanced Micro Devices, Inc. | Parallel micropolygon rasterizers |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101093578A (zh) * | 2006-06-23 | 2007-12-26 | 辉达公司 | 光栅化的方法和系统 |
CN101116111A (zh) * | 2004-12-21 | 2008-01-30 | 高通股份有限公司 | 使用3d光栅化算法的2d/3d线条渲染 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6498607B1 (en) | 1999-01-29 | 2002-12-24 | Mitsubishi Electric Research Laboratories, Inc. | Method for generating graphical object represented as surface elements |
US6407736B1 (en) | 1999-06-18 | 2002-06-18 | Interval Research Corporation | Deferred scanline conversion architecture |
US6636218B1 (en) | 2000-06-30 | 2003-10-21 | Intel Corporation | Title-based digital differential analyzer rasterization |
US20030122850A1 (en) | 2001-12-28 | 2003-07-03 | Satyaki Koneru | Method and apparatus for determining bins to be updated for polygons, including triangles |
US6975317B2 (en) * | 2002-03-12 | 2005-12-13 | Sun Microsystems, Inc. | Method for reduction of possible renderable graphics primitive shapes for rasterization |
US6975318B2 (en) | 2002-06-25 | 2005-12-13 | Intel Corporation | Polygon binning process for tile-based rendering |
GB0307095D0 (en) * | 2003-03-27 | 2003-04-30 | Imagination Tech Ltd | Improvements to a tiling system for 3d rendered graphics |
US9070213B2 (en) * | 2006-07-26 | 2015-06-30 | Nvidia Corporation | Tile based precision rasterization in a graphics pipeline |
US8390618B2 (en) | 2008-03-03 | 2013-03-05 | Intel Corporation | Technique for improving ray tracing performance |
US9633469B2 (en) * | 2013-03-15 | 2017-04-25 | Nvidia Corporation | Conservative rasterization of primitives using an error term |
-
2012
- 2012-10-08 US US13/647,071 patent/US9218679B2/en not_active Expired - Fee Related
-
2013
- 2013-09-23 DE DE112013004920.1T patent/DE112013004920T5/de not_active Withdrawn
- 2013-09-23 KR KR1020157006001A patent/KR101700174B1/ko active IP Right Grant
- 2013-09-23 CN CN201380046557.2A patent/CN104603844B/zh not_active Expired - Fee Related
- 2013-09-23 WO PCT/US2013/061166 patent/WO2014058604A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101116111A (zh) * | 2004-12-21 | 2008-01-30 | 高通股份有限公司 | 使用3d光栅化算法的2d/3d线条渲染 |
CN101093578A (zh) * | 2006-06-23 | 2007-12-26 | 辉达公司 | 光栅化的方法和系统 |
Non-Patent Citations (1)
Title |
---|
实时嵌入式图形系统中的三角形光栅化研究与设计;黄锐;《中国优秀硕士学位论文全文数据库信息科技辑》;20080715(第7期);第I138-665页 * |
Also Published As
Publication number | Publication date |
---|---|
KR101700174B1 (ko) | 2017-01-26 |
CN104603844A (zh) | 2015-05-06 |
DE112013004920T5 (de) | 2015-06-18 |
US9218679B2 (en) | 2015-12-22 |
WO2014058604A1 (en) | 2014-04-17 |
KR20150041101A (ko) | 2015-04-15 |
US20140098084A1 (en) | 2014-04-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104603844B (zh) | 减小的位计数多边形光栅化 | |
JP6495377B2 (ja) | 選択的ラスタライゼーション | |
CN109087384B (zh) | 光线跟踪系统和方法以及光线压缩方法和模块 | |
CN103916647B (zh) | 采用拖延期的视频流的姿势预处理来减少平台功率 | |
US9626795B2 (en) | Reducing shading by merging fragments from the adjacent primitives | |
CN104704469B (zh) | 动态地重新平衡图形处理器资源 | |
CN104756150B (zh) | 深度缓冲 | |
US9251731B2 (en) | Multi-sampling anti-aliasing compression by use of unreachable bit combinations | |
US20130181991A1 (en) | Five-Dimensional Occlusion Queries | |
TWI615807B (zh) | 用於記錄在輸入幾何物件粒度上的可視度測試之結果的方法、設備及系統 | |
CN104584544A (zh) | 使用一般化平面编码的随机深度缓冲器压缩 | |
CN104040589A (zh) | 使用随机光栅化生成随机采样分布 | |
US20170178276A1 (en) | Clustered color compression for efficient processing of graphics data at computing devices | |
CN104952100B (zh) | 延迟着色的流式压缩抗锯齿方法 | |
US9390463B2 (en) | Techniques for reducing memory bandwidth for display composition | |
CN106537460A (zh) | 针对多阶段像素着色的自动划分技术 | |
KR20170000288A (ko) | 지리 정보 데이터 분할 방법, 분할 장치 및 이를 수행하는 프로그램을 기록하는 기록매체 | |
WO2016105218A1 (en) | Facilitating culling of composite objects in graphics processing units when such objects produce no visible change in graphics images | |
US9317768B2 (en) | Techniques for improved feature detection | |
CN103959368B (zh) | 用于图形处理的方法、设备和装置 | |
CN103559679B (zh) | 一种基于流水线和状态机的三角形快速分块设计方法 | |
CN104025030A (zh) | 减少域着色器/镶嵌器调用 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170517 Termination date: 20190923 |
|
CF01 | Termination of patent right due to non-payment of annual fee |