一种基于alpha融合的贴图处理方法及装置的制造方法_4

文档序号:9922508阅读:来源:国知局
换后的两个数据进行alpha融合,再将融合后的颜色数据压缩回DXT5格式的数据,输出到目标贴图中的对应位置。
[0133]本实施例更详细工作流程和原理可以但不限于参见实施例1的相关记载。
[0134]由上可见,相比于现有技术将源贴图文件和目标贴图中的所有像素块由DXT5格式转换为ARGB8888格式后,再进行alpha融合,融合时以每一个像素点作为单位,本发明实施例提供的贴图处理装置以整个像素块为处理单位,节省了数据转换的次数,提高了 alpha融合的效率。
[0135]实施例4
[0136]参见图14,图14是本发明提供的贴图处理装置的另一种实施例的结构示意图。如图14所示,该装置包括:
[0137]第二获取单元501,用于获取用于与目标贴图进行alpha融合的中间贴图文件;其中,中间贴图文件记载了源贴图中的每一个像素块的位置信息、属性和颜色数据。
[0138]第二贴图处理单元502,用于根据中间贴图文件中的每一个像素块的位置信息,依次读取每一个像素块的属性和颜色数据,对目标贴图中的对应位置进行贴图处理。
[0139]和,第二输出单元503,用于当中间贴图文件中的每一个像素块均被读取且处理完毕后,输出alpha融合后的目标贴图。
[0140]其中,第二贴图处理单元502包括:第四处理子单元5021、第五处理子单元5022和第六处理子单元5023。
[0141]第四处理子单元5021,用于当所读取的像素块的属性为镂空像素块时,使目标贴图中的对应位置的颜色数据保持不变;其中,镂空像素块的颜色数据为空。
[0142]第五处理子单元5022,用于当所读取的像素块的属性为实心像素块时,将像素块的颜色数据拷贝至目标贴图中的对应位置;其中,实心像素块的颜色数据为DXT5格式的数据。
[0143]第六处理子单元,用于当所读取的像素块的属性为待融合像素块时,将目标贴图中的对应位置的颜色数据转换为ARGB8888格式的数据,并与待融合像素块的颜色数据进行alpha融合,将融合后的颜色数据压缩回DXT5格式的数据,再输出到目标贴图中的对应位置;其中,待融合像素块的颜色数据为ARGB8888格式的数据。
[0144]作为本实例的一种举例,参见图15,图15是本发明提供的贴图处理装置的又一种实施例的结构示意图。图15与图14的区别在于,该装置还包括:
[0145]第三获取单元601,用于在第二获取单元501获取用于与目标贴图进行alpha融合的中间贴图文件之前,获取用于与目标贴图进行alpha融合的源贴图文件;其中,源贴图文件包含源贴图中的每一个像素块的DXT5格式数据和位置信息;DXT5格式数据包含像素块的每一个像素点的颜色数据和alpha值。
[0146]第三转换单元602,用于创建一个中间贴图文件,根据源贴图文件中每一个像素块的位置信息,依次读取每一个像素块的DXT5格式数据进行转换,并写入到中间贴图文件中。
[0147]和,第三输出单元603,用于第三转换单元602对源贴图文件的每一个像素块进行转换后,输出记载了源贴图中的每一个像素块的位置信息、属性和颜色数据的中间贴图文件。
[0148]其中,第三转换单元602包括:第一转换子单元6021、第二转换子单元6022和第三转换子单元6023。
[0149]第一转换子单元6021,用于当所读取的DXT5格式数据中的每一个像素点的alpha值均为O时,将DXT5格式数据所对应的像素块的属性确定为镂空像素块,并将镂空像素块的颜色数据配置为空,再将镂空像素块的位置信息、属性和颜色数据写入到中间贴图文件。
[0150]第二转换子单元6022,用于当所读取的DXT5格式数据中的每一个像素点的alpha值均为I时,将DXT5格式数据所对应的像素块的属性确定为实心像素块,并将DXT5格式数据中的颜色数据提取出来,直接作为实心像素块的颜色数据,再将实心像素块的位置信息、属性和颜色数据写入到中间贴图文件;
[0151]第三转换子单元6023,用于当所读取的DXT5格式数据中的每一个像素点的alpha值不全为O或不全为I时,将DXT5格式数据所对应的像素块的属性确定为待融合像素块,并将DXT5格式数据中的颜色数据提取出来,转换为ARGB8888格式的数据后,再作为待融合像素块的颜色数据,最后将待融合像素块的位置信息、属性和颜色数据写入到中间贴图文件。
[0152]作为本实施例的一种举例,参见图16,图16是本发明实施例提供的贴图装置的另又一种实施例的结构示意图。图16与图14的区别在于,贴图处理装置还包括:
[0153]第四获取单元701,用于在第二获取单元501获取用于与目标贴图进行alpha融合的中间贴图文件之前,获取用于与目标贴图进行alpha融合的源贴图文件;其中,源贴图文件包含源贴图中的每一个像素块的DXT5格式数据和位置信息;DXT5格式数据包含像素块的每一个像素点的颜色数据和alpha值。
[0154]第四转换单元702,用于创建一个中间贴图文件,根据源贴图文件中每一个像素块的位置信息,依次读取每一个像素块的DXT5格式数据进行转换,并写入到中间贴图文件中。
[0155]和,第四输出单元703,用于第四转换单元702对源贴图文件的每一个像素块进行转换后,输出记载了所述源贴图中的每一个像素块的位置信息、属性和颜色数据的中间贴图文件。
[0156]其中,第四转换单元702包括:第四转换子单元7021、第五转换子单元7022和第六转换子单元7023。
[0157]第四转换子单元7021,用于当所读取的DXT5格式数据中的每一个像素点的alpha值均为O时,将DXT5格式数据所对应的第i个像素块的属性确定为镂空像素块,并记录第i个像素块的位置信息;若下一个读取的DXT5格式数据所对应的像素块不为镂空像素块,则将第i个像素块的颜色数据配置为空,再将第i个像素块的位置信息、属性和颜色数据写入到中间贴图文件;若后续读取的N个连续的DXT5格式数据所对应的像素块均被确定为镂空像素块,则将第i个像素块及后续的N个连续像素块的颜色数据配置为空,再将第i个像素块的位置信息、后续连续镂空像素块的个数N、属性及颜色数据写入到中间贴图文件。
[0158]第五转换子单元7023,用于当所读取的DXT5格式数据中的每一个像素点的alpha值均为I时,将DXT5格式数据所对应的像素块的属性确定为实心像素块,并将DXT5格式数据中的颜色数据提取出来,直接作为实心像素块的颜色数据,再将实心像素块的位置信息、属性和颜色数据写入到中间贴图文件。
[0159]第六转换子单元7024,用于当所读取的DXT5格式数据中的每一个像素点的alpha值不全为O或不全为I时,将DXT5格式数据所对应的像素块的属性确定为待融合像素块,并将DXT5格式数据中的颜色数据提取出来,转换为ARGB8888格式数据后,再作为待融合像素块的颜色数据,最后将待融合像素块的位置信息、属性和颜色数据写入到中间贴图文件。
[0160]在本实例中,中间贴图文件中记载的像素块的位置信息,为像素块相对于源贴图中的第一个像素块的索引偏移。
[0161]本实施例更详细的工作原理与流程可以但不限于参见实施例2的相关记载。
[0162]由上可见,本发明实施例提供了一种基于alpha融合的贴图处理装置将源贴图文件预先转换为中间贴图文件,该转换过程可以在离线预处理完成,将数据转换的开销转移至离线的预处理阶段,降低了本地设备的硬件需求,提高了 alpha融合的效率。
[0163]进一步的,本发明中的中间贴图文件对源贴图文件进行压缩,减少了所占用的磁盘空间,相比于加载源贴图文件,本发明的中间贴图文件具有更快的加载速度,进一步提高alpha融合的效率。
[0164]本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(Read-OnIy Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
[0165]以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
【主权项】
1.一种基于alpha融合的贴图处理方法,其特征在于,包括: 获取用于与目标贴图进行alpha融合的源贴图文件;其中,所述源贴图文件包含源贴图中的每一个像素块的DXT5格式数据和位置信息;所述DXT5格式数据包含所述像素块的每一个像素点的颜色数据和alpha值; 根据每一个像素块的位置信息,依次读取每一个像素块的DXT5格式数据,对所述目标贴图中的对应位置进行贴图处理,包括: 当所读取的DXT5格式数据中的每一个像素点的alpha值均为O时,使所述目标贴图中的对应位置的颜色数据保持不变; 当所读取的DXT5格式数据中的每一个像素点的alpha值均为I时,将所述DXT5格式数据中的每一个像素点的颜色数据拷贝至所述目标贴图中的对应位置; 当所读取的DXT5格式数据中的每一个像素点的alpha值不全为O或不全为I时,将所述DXT5格式数据和所述目标贴图中的对应位置的颜色数据,分别转换为ARGB8888格式的数据,并将转换后的两个数据进行alpha融合,再将融合后的颜色数据压缩回DXT5格式的数据,输出到所述目标贴图中的对应位置; 当所述源贴图文件中的每一个像素块均被读取且处理完毕后,获得alpha融合后的目标贴图。2.一种基于alpha融合的贴图处理方法,其特征在于,包括: 获取用于与目标贴图进行alpha融合的中间贴图文件;其中,所述中间贴图文件记载了源贴图中的每一个像素块的位置信息、属性和颜色数据; 根据所述中间贴图文件中的每一个像素块的位置信息,依次读取所述每一个像素块的属性和颜色数据,对所述目标贴图中的对应位置进行贴图处理,包括: 当所读取的像素块的属性为镂空像素块时,使所述目标贴图中的对应位置的颜色数据保持不变;其中,所述镂空像素块的颜色数据为空; 当所读取的像素块的属性为实心像素块时,将所述像素块的颜色数据拷贝至所述目标贴图中的对应位置;其中,所述实心像素块的颜色数据为DXT5格式的数据; 当所读取的像素块的属性为待融合像素块时,将所述目标贴图中的对应位置的颜色数据转换为ARGB8888格式的数据,并与所述待融合像素块的颜色数据进行alpha融合,将融合后的颜色数据压缩回DXT5格式的数据,再输出到所述目标贴图中的对应位置;其中,所述待融合像素块的颜色数据为ARGB8888格式的数据; 当所述中间贴图文件中的每一个像素块均被读取且处理完毕后,获得alpha融合后的目标贴图。3.根据权利要求2所述的基于alpha融合的贴图处理方法,其特征在于,在所述获取用于与目标贴图进行alpha融合的中间贴图文件之前,还包括: 获取用于与所述目标贴图进行alpha融合的源贴图文件;其中,所述源贴图文件包含所述源贴图中的每一个像素块的DXT5格式数据和位置信息;所述DXT5格式数据包含所述像素块的每一个像素点的颜色数据和a Ipha值; 创建一个中间贴图文件,根据所述源贴图文件中每一个像素块的位置信息,依次读取每一个像素块的DXT5格式数据进行转换,并写入到所述中间贴图文件中,包括: 当所读取的DXT5格式数据中的每一个像素点的alpha值均为O时,将所述DXT5格式数据所对应的像素块的
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1