【技术实现步骤摘要】
本专利技术涉及图形处理,更具体地,涉及一种通过分析通道特性压缩顶点数据的顶点数据压缩方法和装置,以及相关的顶点数据解压缩方法和装置。
技术介绍
如本领域所熟知的,图形处理通常是以管线(pipelined)的形式执行的,其中,多个管线级段对数据进行操作以产生最终渲染输出,如用于显示的画帧。现在,许多的图形处理管线包括一个或多个可编程处理级段,通常称为“着色器”,其执行程序来进行图形处理操作,以产生需要的图形数据。例如,图形处理管线可包括顶点着色器和像素(片段)着色器。这些着色器为可编程处理级段,其可对输入数据值执行着色器程序,以生成一组需要的输出数据值,用于图形管线的剩余级段进行进一步处理。图形处理管线的着色器可共享可编程处理电路,也可以是不同的可编程处理单元。举例来说,顶点着色操作可包括顶点位置着色操作和顶点属性着色操作,其用以对每一画帧中的图元(primitives)的顶点进行处理。对于延迟渲染方案(如基于仓的渲染方案)而言,一种传统的设计是在分仓过程(也即顶点级段(vertex phase)通道)中执行顶点位置着色操作和顶点属性着色操作,并将画帧中所有图元的顶点的顶点位置着色结果和顶点属性着色结果存储至仓存储器(bin memory)中,分仓过程完成之后,
再在渲染过程(也即像素级段(pixel phase)通道)中执行像素/片段着色操作。由于仓存储器需要用来存储许多顶点的顶点位置着色结果和顶点属性着色结果,因此,对于存储流量和存储空间的需求很大。此外,顶点级段所写入的数据流量和像素级段所读取的数据流量可导致延迟渲染方案的性能下降。因 ...
【技术保护点】
一种顶点数据压缩方法,其特征在于,所述顶点数据压缩方法包括:收集多个顶点组成顶点块;从所述顶点块中提取至少一个数据单元阵列,其中,该至少一个数据单元阵列中的每一个包括多个数据单元,所述多个数据单元分别从所述多个顶点的多个顶点组分中选取,所述多个数据单元对应于同一通道,且所述多个数据单元中的每一个均小于一字节;及对于该至少一个数据单元阵列中的每一个,检查数据单元阵列中的所述多个数据单元,以选取压缩算法,并根据选取的所述压缩算法对所述数据单元阵列中的所述多个数据单元进行压缩。
【技术特征摘要】
2015.05.06 US 14/705,9491.一种顶点数据压缩方法,其特征在于,所述顶点数据压缩方法包括:收集多个顶点组成顶点块;从所述顶点块中提取至少一个数据单元阵列,其中,该至少一个数据单元阵列中的每一个包括多个数据单元,所述多个数据单元分别从所述多个顶点的多个顶点组分中选取,所述多个数据单元对应于同一通道,且所述多个数据单元中的每一个均小于一字节;及对于该至少一个数据单元阵列中的每一个,检查数据单元阵列中的所述多个数据单元,以选取压缩算法,并根据选取的所述压缩算法对所述数据单元阵列中的所述多个数据单元进行压缩。2.如权利要求1所述的顶点数据压缩方法,其特征在于,压缩顶点块包括多个压缩顶点,所述多个压缩顶点通过对所述顶点块中的所述多个顶点进行压缩而生成,且所述多个压缩顶点具有相同的位宽。3.如权利要求1所述的顶点数据压缩方法,其特征在于,检查所述数据单元阵列中的所述多个数据单元,以选取所述压缩算法包括:将所述多个数据单元所具有的多个值分类为至少一簇;及参照通过所述分类步骤建立的所述至少一簇以选取所述压缩算法。4.如权利要求3所述的顶点数据压缩方法,其特征在于,所述多个数据单元具有的所述多个值被分类为仅具有单一值的单一簇。5.如权利要求4所述的顶点数据压缩方法,其特征在于,压缩顶点块包括标头部分和主体部分,且所述选取的压缩算法包括:记录所述标头部分的所述单一值,其中,所述多个数据单元所具有的所述多个值均不记录至所述主体部分。6.如权利要求3所述的顶点数据压缩方法,其特征在于,所述多个数据单元具有的所述多个值被分类为具有多个连续值的单一簇。7.如权利要求6所述的顶点数据压缩方法,其特征在于,压缩顶点块包括标头部分和主体部分,且所述选取的压缩算法包括:将从所述单一簇的所述多个连续值中选取的特定值记录至所述标头部分;及对于所述多个数据单元具有的所述多个值中的每一值,将所述特定值和所述多个数据单元中的每一个所具有的值之间的偏移值记录至所述主体部分,其中,所述多个数据单元所具有的值不记录至所述主体部分。8.如权利要求3所述的顶点数据压缩方法,其特征在于,所述多个数据单元所具有的多个值被分类为多簇,每一簇均仅具有单一值。9.如权利要求8所述的顶点数据压缩方法,其特征在于,压缩顶点块包括标头部分和主体部分,且所述选取的压缩算法包括:将所述多簇的多个单一值记录至所述标头部分;及对于所述多个数据单元所具有的所述多个值中的每一值,将所述多个数据单元中的每一个所具有的值相关的簇的指引值记录至所述主体部分,其中,所述多个数据单元具有的所述值不记录至所述主体部分。10.如权利要求3所述的顶点数据压缩方法,其特征在于,所述多个数据单元具有的所述多个值被分类为多个簇,每一簇均具多个连续值。11.如权利要求10所述的顶点数据压缩方法,其特征在于,压缩顶点块包括标头部分和主体部分,且所述选取的压缩算法包括:对于每一簇,将从簇的所述多个连续值中选取的特定值记录至所述标头部分;及对于所述多个数据单元具有的所述多个值中的每一值,将所述多个数据单元中的每一个所具有的值相关的簇的指引值以及相关的簇的所述特
\t定值和所述多个数据单元的每一个所具有的值之间的偏移值记录至所述主体部分,其中,所述多个数据单元具有的所述值不记录至所述主体部分。12.如权利要求3所述的顶点数据压缩方法,其特征在于,所述多个顶点的所述多个顶点组分中的每一个均被划分为分别对应于多个通道的多个数据单元;分别按照所述多个通道提取多个数据单元阵列;且对于每一数据单元阵列,将对应于同一通道的数据单元阵列中的多个数据单元所具有的多个值分类为仅具有单一值的单一簇。13.如权利要求12所述的顶点数据压缩方法,其特征在于,压缩顶点块包括标头部分和主体部分,且所述选取的压缩算法包括:将同每一顶点组分相等的值记...
【专利技术属性】
技术研发人员:廖群峰,张海林,
申请(专利权)人:联发科技股份有限公司,
类型:发明
国别省市:中国台湾;71
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。