【技术实现步骤摘要】
【国外来华专利技术】缓冲器索引格式和压缩
技术介绍
本公开涉及计算机图形系统,并且更具体地涉及在计算机设备上绘制图形时的缓冲器格式和缓冲器压缩。可以将2D对象或来自3D世界(真实或虚构)的对象绘制到二维(2D)显示屏幕上的计算机图形系统当前用于各种各样的应用中。例如,3D计算机图形可以用于实时交互式应用(诸如视频游戏、虚拟现实、科学研究等)以及离线应用(诸如创建高分辨率电影、图形艺术等)。通常,图形系统包括图形处理单元(GPU)。GPU可以被实现为计算机的中央处理单元(CPU)的协处理器组件,并且可以以附加卡(例如,视频卡)、协处理器的形式提供,或者被提供作为直接集成到计算机的主板或诸如游戏设备等其他设备中的功能。通常,GPU具有“逻辑图形管线”,逻辑图形管线可以接受2D或3D场景的一些表示作为输入,并且输出限定2D图像的位图以用于显示。例如,微软公司的DIRECTX应用程序编程接口集合(包括DIRECT3DAPI)是一种具有图形管线模型的API的示例。图形管线通常包括用于将一组顶点、纹理、缓冲器和状态信息转换为屏幕上的图像帧的多个级。GPU或图形管线与图形存储器一起操作,图形存储器可以包括缓冲器,诸如包含用于标识顶点缓冲器中的顶点的索引的一个或多个索引缓冲器,其中索引和顶点信息用于绘制图元。因此,计算机设备操作图形管线以将关于3D对象的信息转换为可以显示的位图,并且该过程需要相当大的存储器和处理能力。很多视频游戏选择16位索引。然而,顶点的数目可以相对较小,并且不需要很多这些位模式。此外,很多视频游戏在很大程度上依赖硬件实例来进行剔除,提高内存效率并且节省建模成本。这种趋势很可能 ...
【技术保护点】
1.一种计算机设备中的索引压缩方法,包括:在所述计算机设备中的处理单元处读取多个索引组,每个索引组对应于要绘制的对象的网格的多个图元之一的至少一部分;标识所述多个组中的每个组中的最小索引;旋转所述多个组中的每个组中的索引,使得所述最小索引是第一值,或者计算针对所述多个组中的每个组的多个控制位;对于所述多个组中的每个组中的剩余索引,计算相对于所述多个组中的每个组中的所述最小索引的无符号增量编码值;将所述多个索引组转换为多个压缩索引组,其中所述多个压缩索引组中的每个压缩索引组包括与所述多个组之一的所述最小索引的绝对值相对应的所述第一值,后跟所述多个组之一的所述剩余索引的所述无符号增量编码值;以及存储所述多个压缩索引组。
【技术特征摘要】
【国外来华专利技术】2017.02.10 US 62/457,711;2017.06.19 US 15/626,6791.一种计算机设备中的索引压缩方法,包括:在所述计算机设备中的处理单元处读取多个索引组,每个索引组对应于要绘制的对象的网格的多个图元之一的至少一部分;标识所述多个组中的每个组中的最小索引;旋转所述多个组中的每个组中的索引,使得所述最小索引是第一值,或者计算针对所述多个组中的每个组的多个控制位;对于所述多个组中的每个组中的剩余索引,计算相对于所述多个组中的每个组中的所述最小索引的无符号增量编码值;将所述多个索引组转换为多个压缩索引组,其中所述多个压缩索引组中的每个压缩索引组包括与所述多个组之一的所述最小索引的绝对值相对应的所述第一值,后跟所述多个组之一的所述剩余索引的所述无符号增量编码值;以及存储所述多个压缩索引组。2.根据权利要求1所述的方法,其中所述第一值和所述剩余索引的所述无符号增量编码值相对于每个图元以相同的缠绕顺序被布置。3.根据权利要求1所述的方法,其中存储所述压缩索引组还包括使用总共32位进行存储,包括:对于所述绝对值,使用12位,并且对于所述无符号增量编码值中的每个无符号增量编码值,使用10位;或者对于所述绝对值,使用14位,并且对于所述无符号增量编码值中的每个无符号增量编码值,使用9位。4.根据权利要求1所述的方法,其中所述多个索引组中的每个索引组对应于所述多个图元中的多于一个图元,并且所述方法还包括:计算针对所述多个组中的每个组的所述多个控制位,其中所述多个控制位中的每个控制位指示所述多个组之一中的所述最小索引的位置;其中所述转换还包括将所述多个控制位中的每个控制位添加到所述多个压缩索引组中的对应压缩索引组;以及其中所述存储还包括将所述多个控制位中的每个控制位与所述多个压缩索引组中的对应压缩索引组一起存储。5.根据权利要求4所述的方法,还包括存储所述压缩索引组。6.根据权利要求5所述的方法,其中存储所述压缩索引组还包括:使用总共32位进行存储,其中9位用于所述绝对值,7位用于3个无符号增量编码值中的每个无符号增量编码值,并且2位用于所述多个控制位中的每个控制位;或者使用总共48位进行存储,其中16位用于所述绝对值,10位用于3个无符号增量编码值中的每个无符号增量编码值,并且2位用于所述多个控制位中的每个控制位;或者使用总共64位进行存储,其中32位用于所述绝对值,10位用于3个无符号增量编码值中的每个无符号增量编码值,并且2位用于所述多个控制位中的每个控制位。7.一种计算机设备中的索引解压缩方法,包括:在所述计算机设备中的处理单元处读取多个压缩索引组,每个压缩索引组对应于要被绘制的对象的网格的多个图元之一的至少一部分;将第一索引标识为所述多个组中的每个组中的绝对值;通过将所述绝对值和所述多个组中的每个组的剩余索引的无符号增量编码值中的每个无符号增量编码值相加来计算所述剩余索引;将所述多个压缩索引组转换为多个解压缩索引组,其中所述多个解压缩索引组中的每个解压缩索引组包括与所述多个组之一的所述绝对值相对应的第一值,后跟所述多个组之一的所述剩余索引;以及存储所述多个解压缩索引组。8.根据权利要求7所述的方法,其中所述第...
【专利技术属性】
技术研发人员:M·J·I·福勒,I·内弗雷弗,
申请(专利权)人:微软技术许可有限责任公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。