图形处理单元和包括其的装置的制造方法_4

文档序号:9889013阅读:来源:国知局
具体地,存取电路 252可以使用所选择的地址从存储区域MEM1到MEM5之一读取模型,使用模型的几何信息计 算模型的复杂度,将参考复杂度和所计算的复杂度进行比较,并根据该比较结果确定是否 要对模型执行细分。
[0107] 已使用资源块263读出的模型可以被发送给输入集成器261-1。例如,GPU 260的存 取电路252可以使用从CPU 210接收的或者由GPU 260选择的地址读取存储在与该地址相应 的存储区域中的模型。
[0108] 几何信息可以包括一个或多个控制点的深度值或由包含在模型中的控制点所限 定的曲率。例如,外壳着色器261-3,它是图形管线260A的曲面细分级的一部分,可以使用模 型的几何信息计算模型的复杂度,将参考复杂度和所计算的复杂度进行比较,并发送对应 于比较结果的比较信息INF到曲面细分器261-4。
[0109] 曲面细分器261-4可以接收关于模型和比较信息INF的数据,并基于比较信息INF 确定是否对模型执行细分。换句话说,曲面细分器261-4可以对模型执行细分,或者可替代 地,可以原封不动地传递该模型到域着色器261-5。
[0110] 图6是根据本发明构思的一些实施例计算所选择的模型的复杂度的方法的图。GPU 260,更具体地,本文中描述的在一些实施例中的外壳着色器261-3可以使用诸如控制点的 深度值的模型的几何信息计算模型的复杂度,并且可以执行比较。
[0111] CPU 210或GPU 260可以基于计算装置100的属性,生成一个地址,使能(或读取)是 最接近于计算装置100所期望的一个的模型被读取。因此,GPU 260使用该地址从第一存储 器310-1读取最接近计算装置100所期望的模型。
[0112] 图6是为描述的方便起见提供的示例性概念图。参考第一情况CASE1,当由GPU 260 读出的模型包括包括四个控制点?11、?12、?13、和?14的四边形块并且控制点?11、?12113 和P14的深度值都小于参考深度值RDEP(例如,当块相对接近观看者)时,外壳着色器261-3 可以发送指示对模型执行细分的比较信息INF到曲面细分器261-4。因此,曲面细分器261-4 可以对从外壳着色器261-3接收的模型执行细分操作。
[0113] 然而,参照第三种情况CASE3,当由GPU 260读出的模型是包括四个控制点P31、 P32、P33和P34的四边形块并且控制点P31、P32、P33和P34的深度值大于参考深度值RDEP(例 如,当块相对远离观察者)时,外壳着色器261-3可以发送指示传递模型到曲面细分器261-4 的比较信息INF。因此,曲面细分器261-4不对从外壳着色器261-3接收到的模型执行细分。 由于曲面细分器261-4不执行细分操作,所以降低了在其他情况下在曲面细分器261-4中生 成的处理密集型的开销。其结果是,图形管线260A的开销降低。
[0114] 参照第二种情况CASE2,当由GPU 260读出的模型是包括四个控制点P21、P22、P23 和P24的四边形块并且在控制点P21、P22、P23和P24之中仅控制点P21的深度值小于参考深 度值RDEP时,外壳着色器261-3可以向本曲面细分器261-4发送指令曲面细分器261-4执行 对模型的细分操作的比较信息INF,或者发送指令根据已设置的程序传递模型的比较操作 信息INF。
[0115] 作为替代方案,GPU 260可以读取具有比计算装置100所期望的一个更高复杂度的 模型。例如,当计算装置100期望的模型是第一模型MODI并且由GPU 260读取的模型是第三、 第四或第五模型M0D3、M0D4、或M0D5时,则外壳着色器261 -3可以向曲面细分器261 -4发送即 使在CASE1、CASE2和CASE3任何情况下,也指示传递一个或多个模型M0D3、M0D4、或M0D5的比 较信息INF。
[0116] 作为另一替代方案,GPU 260可以读取具有比计算装置100所期望的一个更低复杂 度的模型。例如,当计算装置100所期望的模型是第五模型M0D5并且GPU 260读出的模型是 第一、第三或第四模型MODI、MOD3、MOD4时,外壳着色器261-3可以向本曲面细分器261-4发 送即使在上述任何情况CASE1、CASE2和CASE3下也指示对模型M0D1、M0D3或M0D4执行细分操 作的比较信息INF。
[0117] 图7是根据本发明构思的其它实施例计算所选择的模型的复杂度的方法的图。参 照图3至图5以及图7,GPU 260,更具体地,外壳着色器261-3可以使用诸如由一组控制点 P41、P42、P43和P44限定的曲率的模型的几何信息计算模型的复杂度,并可以执行比较。
[0118] 假设CPU 210或GPU 260基于计算装置100的属性生成使能(或读取)最接近由计算 装置100所期望的一个模型被读取。因此,GPU 260使用该地址从第一存储器310-1中读取最 接近计算装置100所期望的一个的模型。
[0119] 当由包含在由GPU 260读出的模型中的控制点P41、P42、P43和P44所限定的曲率 CV1大于参考曲率RCV时,外壳着色器261-3可以向本曲面细分器261-4发送指令对模型执行 细分操作的比较信息INF。然而,当由包含在由GPU 260读出的模型中的控制点P41、P42、P43 和P44所限定的曲率CV2小于参考曲率RCV时,外壳着色器261-3可以向曲面细分器261-4发 送指示传递模型的比较信息INF。
[0120]可替代地,作为替代方案,GPU 260可以读取具有比计算装置100所期望的一个更 高复杂度的模型。例如,当由计算装置100期望的模型是第一模型MODI并且由GPU 260读取 的模型是第三、第四或第五模型M0D3、M0D4、或M0D5时,则外壳着色器261-3可以向曲面细分 器261-4发送指令传递一个或多个模型M0D3、M0D4、或M0D5的比较信息INF而不论所计算的 曲率为何。
[0121] 可替代地,GPU 260可以读取具有比由计算装置100所期望的一个更低的复杂度。 例如,当由计算装置100所期望的模型是第五模型M0D5并且GPU 260读出的模型是第一、第 三或第四模型M0D1、M0D3、M0D4时,外壳着色器261-3可以向本曲面细分器261-4发送指令对 模型MODI、M0D3或M0D4执行细分操作的比较信息INF,而不论所计算的曲率为何。
[0122] 图8是具有不同复杂度的模型觀011、]\?)012、]\10013和冊014概念图。参照图4和图8, 具有不同复杂度的模型》011、]?0012、]\10013和冊014可以分别存储在存储区域1^組到圆财 中。一个模型,例如,MODI或MODI 1,存储在第一存储区域MEM1中。一个模型,例如,M0D2或 MODI2,存储在第二存储区域MEM2中。一个模型,例如,M0D3或MODI3,存储在第三存储区域 MEM3中。一个模型,例如,M0D4或MOD 14,存储在第四存储区域MEM4中。
[0123] 包括在第九模型M0D14的块(例如,三角形)的数量M4大于包括在第八模型M0D13中 的块(例如,三角形)的数量M3。包括在第Λ模型M0D13中的块(例如,三角形)的数量M3大于 包括在第七模型MOD 12中的块(例如,三角形)的数量Μ 2。包括在第七模型MOD 12中的块(例 如,三角形)的数量Μ 2大于包括在第六模型MODI 1中的块(例如,三角形)的数量Ml。
[0124] 虽然图8中不出的实施例中的块是二角形,但是在其他实施例中,块可能是为四边 形。包括在模型中的块的数量与模型的复杂度有关。详细地,包括在模型中块的数量越多, 模型的复杂度越高。模型》011、10012、10013和觀014中的每一个通过输入集成器261-1和 顶点着色器261-2发送到外壳着色器261-3APU 260,更具体地,存取电路252,可以基于由 CPU 210或GPU 260选择的地址读取存储在第一存储器310-1中的模型MODI 1、M0D12、M0D13 和M0D14中的一个。
[0125] 图9A和图9B是示出对具有不同复杂度的模型执行细分操作的结果。在图9A示出的 图像TES1可以对应于图8所示的第九模型M0D14。图9B示出的图像TES2可对应于图8中所示 的第六模型MODI 1。
[0126] 当GPU 260从第一存储器310-1读取模型M0D11、M0D12或M0D13时,曲面细分器261-4根据从外壳着色器261-3接收的比较信息INF对模型M0D11、M0D12、或M0D13执行细分操作。 此时,图9A的图像TES1可以对应于已细化的模型MOD 11、MOD 12或MOD 13。
[0127] 然而,当模型M0D14由GPU 260从第一存储器310-1读出时,曲面细分器261-4并不 根据从外壳着色器261-3接收的比较信息INF对模型M0D14执行细分。此时,图9A的图像TES1 可以对应于尚未细化的模型MOD 14。
[0128] 当模型MODI 1由GPU 260从第一存储器310-1读出时,曲面细分器261-4根据从外壳 着色器261-3接收到的比较信息INF对模型M0D11执行细分操作。此时,图9B的图像TES2可以 对应于已细化的模型MODI 1。
[0129] 图10是在图1中所示的计算装置100的操作的流程图。参照图1至图10,在渲染操作 之前,CPU 210、GPU 260和/或其他建模器的组合通过M0D14生成具有不同复杂度的多个模 型MODI到M0D5或MODI 1到M0D14,并在操作S110中在可以由GPU 260存取的存储器中存储模 型MODI到M0D5或MODI 1到M0D14。CPU 210或GPU 260在操作S120中估计计算装置100的属性 或特征中的至少一个。
[0130] GPU 260,并且更具体地,存取电路252,在操作S130中使用由CPU 210或GPU 260选 择的地址(即,估计结果)从存储器读出模型MOD 1到M0D5或MOD 11到MOD 14中的一个。已经读 取的模型提供给图形管线260A。
[0131] 图形管线260A,并且更具体地,细分级(例如,外壳着色器261-3),基于模型的几何 信息计算模型的复杂度,并在操作S140中比较参考复杂度与所计算的复杂度。所计算的复 杂度和参考复杂度可通过包括在模型中的诸如三角形、多边形、几何图元等等的块的控制 点的深度值或由控制点所限定的曲率进行定义。外壳着色器261-3可以以对象、图元、块、 边、顶点或控制点为单元计算模型的复杂度。
[0132] 当所计算的复杂度被确定为小于参考复杂度时,即,当需要模型的细分时,外壳着 色器261-3向曲面细分器261-4发送指令执行细分操作的比较信息INF。此时,外壳着色器 261-3可以发送模型和细分操作的细分因子到曲面细分器261-4。曲面细分器261-4在操作 S150中对模型执行细分操作。
[0133] 然而,当所计算的复杂度大于参考复杂度时,也即,当不需要模型的细分时,外壳 着色器261-3向曲面细分器261-4发送指令不细分传递模型的比较信息INF。曲面细分器 261-4在操作S160中不对模型执行细分操作。
[0134] 图11是根据本发明构思的一些实施例从具有不同复杂度的模型中选择模型的方 法的图。一些或所有的方法可在诸如本文描述的CPU 210和/或GPU 260的硬件装置来执行。 在图11中示出的实施例中,CPU210估计计算装置100的属性或特征。参考图1至图7和图11, 在渲染操作之前,在操作S210中,CPU 210、GPU 260或建模器生成具有不同复杂度的多个模 型MODI到M0D5,并在可以由GPU 260存取的第一存储器310-1中存储模型MODI到M0D5。
[0135] CPU 210在操作S220中估计(即,计算或测量)计算装置100的属性或特征中的至少 一个。如图2、图4和图5中所示,在操作S230
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1