一种加速光栅化遍历的方法、装置及计算机存储介质制造方法及图纸

技术编号:24095511 阅读:19 留言:0更新日期:2020-05-09 10:08
本发明专利技术实施例公开了一种加速光栅化遍历的方法、装置及计算机存储介质;该方法可以包括:从图元的一级包围盒所覆盖的候选图像块tile中选取出所述图元覆盖的目标tile;其中,所述一级包围盒为所述图元的最小包围盒;针对所述图元覆盖的每个目标tile,获取各目标tile内能够包围所述图元与各所述目标tile相交部分的二级包围盒区域,其中,所述各目标tile内的二级包围盒区域为各目标tile与所述图元相交的最小矩形区域;将所有所述目标tile的二级包围盒区域传输至光栅化模块以进行光栅化操作。

A method, device and computer storage medium for accelerating grating traversal

【技术实现步骤摘要】
一种加速光栅化遍历的方法、装置及计算机存储介质
本专利技术实施例涉及图形处理器(GPU,GraphicsProcessingUnit)
,尤其涉及一种加速光栅化遍历的方法、装置及计算机存储介质。
技术介绍
在分块渲染(TBR,TileBasedRendering)的统一渲染架构中,光栅化操作是GPU中不可缺少的一个重要步骤,其是将基本的图元,例如点、线、三角形转化为像素的过程。作为图形渲染管线中的重要步骤,光栅化的效率直接影响GPU的图形渲染性能。当前,在TBR架构中,常规的光栅化操作对图元的最小包围盒所覆盖的tile逐一进行遍历,从而在图像块(tile,也可称为分块、瓦片)内找到图元内部的像素。但是最小包围盒所覆盖的tile中,通常会出现没有被图元覆盖的tile。如图1所示,以三角形图元为例,该图元的最小包围盒覆盖的tile数目为12个,序号为tile0至tile11,但是对于这12个tile来说,其中tile0以及tile3并没有被图元覆盖,更进一步的是,tile4以及tile7等处于图元的边界且这些tile内只有小部分像素被图元覆盖。综上,如果采用常规的光栅化操作来对图1所示的图元的最小包围盒所覆盖的tile逐一进行遍历,那么在图形渲染管线中进行光栅化操作的光栅化模块就会针对没有被图元覆盖的tile以及tile内没有被图元覆盖的像素进行遍历,从而增加了无效遍历,降低了光栅化效率,影响GPU的渲染性能。
技术实现思路
有鉴于此,本专利技术实施例期望提供一种加速光栅化遍历的方法、装置及计算机存储介质;能够提高光栅化操作的遍历效率及速度,从而提高GPU的渲染性能。本专利技术实施例的技术方案是这样实现的:第一方面,本专利技术实施例提供了一种加速光栅化遍历的方法,所述方法包括:从图元的一级包围盒所覆盖的候选图像块tile中选取出所述图元覆盖的目标tile;其中,所述一级包围盒为所述图元的最小包围盒;针对所述图元覆盖的每个目标tile,获取各目标tile内能够包围所述图元与各所述目标tile相交部分的二级包围盒区域,其中,所述各目标tile内的二级包围盒区域为各目标tile与所述图元相交的最小矩形区域;将所有所述目标tile的二级包围盒区域传输至光栅化模块以进行光栅化操作。在一些示例中,所述从图元的一级包围盒所覆盖的候选图像块tile中选取出所述图元覆盖的目标tile,包括:若所述候选tile的所有顶点均在所述图元的至少一条边的外侧,则所述候选tile不是所述目标tile;否则,所述候选tile是所述图元覆盖的一个目标tile。在一些示例中,相应于所述图元覆盖的目标tile数量大于1,所述针对所述图元覆盖的每个目标tile,获取各目标tile内能够包围所述图元与各所述目标tile相交部分的二级包围盒区域,包括:针对每个目标tile,执行以下步骤:获取所述目标tile与所述图元的一级包围盒的交集区域;在所述交集区域内,获取能够覆盖所述图元与所述目标tile相交部分的最小矩形区域;所述最小矩形区域为所述目标tile的二级包围盒。在一些示例中,所述在所述交集区域内,获取能够覆盖所述图元与所述目标tile相交部分的最小矩形区域,包括:针对所述图元的每条图元边,获取每条图元边在所述交集区域内对应的部分最小矩形区域;将所述图元的所有图元边对应的部分最小矩形区域进行交集运算,获取所述最小矩形区域。在一些示例中,所述针对所述图元的每条图元边,获取每条图元边在所述交集区域内对应的部分最小矩形区域,包括:针对所述图元的每条图元边,执行以下步骤:获取所述图元边与所述交集区域的交点以及所述交集区域中位于所述图元边内部的顶点;根据所述交点与所述顶点在所处坐标系中各坐标系的最大值与最小值确定所述图元边在所述交集区域内对应的部分最小矩形区域。在一些示例中,所述相应于所述图元覆盖的目标tile数量为1,则所述二级包围盒区域与所述图元的一级包围盒相等。第二方面,本专利技术实施例提供了一种加速光栅化遍历的装置,所述装置应用于GPU中,所述装置包括:选取部分、获取部分和传输部分,其中,所述选取部分,经配置为从图元的一级包围盒所覆盖的候选图像块tile中选取出所述图元覆盖的目标tile;其中,所述一级包围盒为所述图元的最小包围盒;所述获取部分,经配置为针对所述图元覆盖的每个目标tile,获取各目标tile内能够包围所述图元与各所述目标tile相交部分的二级包围盒区域,其中,所述各目标tile内的二级包围盒区域为各目标tile与所述图元相交的最小矩形区域;所述传输部分,经配置为将所有所述目标tile的二级包围盒区域传输至光栅化模块以进行光栅化操作。在一些示例中,相应于所述图元覆盖的目标tile数量大于1,所述获取部分,经配置为:针对每个目标tile,执行以下操作:获取所述目标tile与所述图元的一级包围盒的交集区域;在所述交集区域内,获取能够覆盖所述图元与所述目标tile相交部分的最小矩形区域;所述最小矩形区域为所述目标tile的二级包围盒。在一些示例中,所述获取部分,经配置为:针对所述图元的每条图元边,获取每条图元边在所述交集区域内对应的部分最小矩形区域;将所述图元的所有图元边对应的部分最小矩形区域进行交集运算,获取所述最小矩形区域。在一些示例中,所述获取部分,经配置为:针对所述图元的每条图元边,执行以下操作:获取所述图元边与所述交集区域的交点以及所述交集区域中位于所述图元边内部的顶点;根据所述交点与所述顶点在所处坐标系中各坐标系的最大值与最小值确定所述图元边在所述交集区域内对应的部分最小矩形区域。第三方面,本专利技术实施例提供了一种计算机存储介质,所述计算机存储介质存储有加速光栅化遍历的程序,所述加速光栅化遍历的程序被至少一个处理器执行时实现第一方面任一项所述的加速光栅化遍历的方法的步骤。本专利技术实施例提供了一种加速光栅化遍历的方法、装置及计算机存储介质;在光栅化模块进行光栅化操作之前,通过将二级包围盒区域传输至光栅化模块以进行光栅化操作,无需针对图元的一级包围盒所覆盖的所有候选tile进行遍历,能够缩小光栅化操作进行遍历的范围,降低了针对图元未覆盖区域的无效遍历,提高了光栅化操作的速度和效率,从而提升了GPU的处理性能。附图说明图1为本专利技术实施例提供的一种图元覆盖tile的示意图;图2为本专利技术实施例提供的一种计算装置的组成框图;图3为本专利技术实施例提供的一种GPU的结构框图;图4为本专利技术实施例提供的基于GPU结构所形成的图形处理管线的框图;图5为本专利技术实施例提供的一种加速光栅化遍历的方法流程示意图;图6为本专利技术实施例提供的一种二维图像的图元示意图;图7(a)为本专利技术实施例提供的一种二级包围盒范围示意图;图7(b)为本专利技术实本文档来自技高网...

【技术保护点】
1.一种加速光栅化遍历的方法,其特征在于,所述方法包括:/n从图元的一级包围盒所覆盖的候选图像块tile中选取出所述图元覆盖的目标tile;其中,所述一级包围盒为所述图元的最小包围盒;/n针对所述图元覆盖的每个目标tile,获取各目标tile内能够包围所述图元与各所述目标tile相交部分的二级包围盒区域,其中,所述各目标tile内的二级包围盒区域为各目标tile与所述图元相交的最小矩形区域;/n将所有所述目标tile的二级包围盒区域传输至光栅化模块以进行光栅化操作。/n

【技术特征摘要】
1.一种加速光栅化遍历的方法,其特征在于,所述方法包括:
从图元的一级包围盒所覆盖的候选图像块tile中选取出所述图元覆盖的目标tile;其中,所述一级包围盒为所述图元的最小包围盒;
针对所述图元覆盖的每个目标tile,获取各目标tile内能够包围所述图元与各所述目标tile相交部分的二级包围盒区域,其中,所述各目标tile内的二级包围盒区域为各目标tile与所述图元相交的最小矩形区域;
将所有所述目标tile的二级包围盒区域传输至光栅化模块以进行光栅化操作。


2.根据权利要求1所述的方法,其特征在于,所述从图元的一级包围盒所覆盖的候选图像块tile中选取出所述图元覆盖的目标tile,包括:
若所述候选tile的所有顶点均在所述图元的至少一条边的外侧,则所述候选tile不是所述目标tile;否则,所述候选tile是所述图元覆盖的一个目标tile。


3.根据权利要求1所述的方法,其特征在于,相应于所述图元覆盖的目标tile数量大于1,所述针对所述图元覆盖的每个目标tile,获取各目标tile内能够包围所述图元与各所述目标tile相交部分的二级包围盒区域,包括:
针对每个目标tile,执行以下步骤:
获取所述目标tile与所述图元的一级包围盒的交集区域;
在所述交集区域内,获取能够覆盖所述图元与所述目标tile相交部分的最小矩形区域;所述最小矩形区域为所述目标tile的二级包围盒。


4.根据权利要求3所述的方法,其特征在于,所述在所述交集区域内,获取能够覆盖所述图元与所述目标tile相交部分的最小矩形区域,包括:
针对所述图元的每条图元边,获取每条图元边在所述交集区域内对应的部分最小矩形区域;
将所述图元的所有图元边对应的部分最小矩形区域进行交集运算,获取所述最小矩形区域。


5.根据权利要求4所述的方法,其特征在于,所述针对所述图元的每条图元边,获取每条图元边在所述交集区域内对应的部分最小矩形区域,包括:
针对所述图元的每条图元边,执行以下步骤:
获取所述图元边与所述交集区域的交点以及所述交集区域中位于所述图元边内部的顶点;
根据所述交点与所述顶点在所处坐标系中各坐标系的最大值与最小值确定所述图元边在所述交集区域内对...

【专利技术属性】
技术研发人员:张竞丹樊良辉
申请(专利权)人:南京芯瞳半导体技术有限公司
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1