一种渲染方法和装置制造方法及图纸

技术编号:14869541 阅读:92 留言:0更新日期:2017-03-21 01:32
本发明专利技术公开了一种渲染方法和装置,通过查找使用材质相同的第一批次渲染内容和第二批次渲染内容,并获取渲染顺序位于所述所第一批次渲染内容和所述第二批次渲染内容之间的中间批次渲染内容;判断所述第二批次渲染内容与中间批次渲染内容是否相互覆盖,当所述第二批次渲染内容与所述中间批次渲染内容互不覆盖时,将所述第二批次渲染内容合并到所述第一批次渲染内容的渲染批次中,在不对原渲染效果造成影响的情况下,较佳地减少了渲染的批次,有助于提高系统的渲染性能,减少画面卡顿。

【技术实现步骤摘要】

本专利技术涉及计算机图形领域,尤其涉及一种渲染方法和装置
技术介绍
渲染(Render)也称为绘制,是指根据数据生成图像的过程。计算机程序通过反复地渲染图像,然后将图像展现在屏幕上,从而制造生动的视觉体验,为了让使用者感觉流畅,一般需要每秒渲染30帧甚至更多的图像。在高速图形编程接口中(例如Direct3D、OpenGL),需要成批的把数据提交到图形硬件并进行渲染。提交一次,就是一个渲染批次(drawbatch)。渲染批次的多少,是影响程序渲染性能的一个重要因素,在渲染内容不变的情况下,渲染批次越多,意味着数据越分散,渲染性能也越低,反之,则渲染性能越高。较多的渲染批次会导致渲染性能降低,让使用者感觉到画面卡顿,影响用户体验。因此,减少渲染批次是软件和游戏进行性能优化的一项重要内容。对于智能手机来说,减少渲染批次,不仅意味着程序运行更流畅,人机交互体验更佳,同时也意味着耗电量减少,发热量降低。由此可见,减少渲染批次对提高电子设备的渲染性能有着积极的意义。由于受硬件限制,一个渲染批次通常只能对使用同一种材质的渲染内容进行渲染。因此,当需要渲染的内容使用两种或两种以上不同材质时,需要拆分为至少两个渲染批次,才能完成渲染。在不合并材质的情况下,唯有把使用材质相同的渲染内容合并到同一个渲染批次中,才能减少总的渲染批次。现有的减少渲染批次的方法主要如下:第一种方法:针对对渲染顺序不敏感的场合,即无论什么内容先绘制,什么内容后绘制,最终总能得到相同的渲染结果。此时只需要简单的把所有材质相同的渲染内容合并到同一个批次,即可把渲染批次最小化。第二种方法:针对对渲染顺序敏感的场合,即必须先绘制某内容,再绘制另外的内容,如果调换绘制的顺序,会导致渲染得到的最终结果发生变化。此时由于不能调换顺序,只能对顺序上相邻且使用材质相同的部分渲染内容进行合并。例如:需要渲染10项内容,所使用的材质依次是A、B、A、A、C、A、B、B、C、A。如果不进行优化,直接渲染,将需要10个渲染批次。如果使用第一种方法,因为总共用到了A,B,C三种材质,所以把使用材质A的绘制内容全部合并为一个渲染批次,使用材质B的全部合并为一个批次,使用材质C的全部合并为一个批次。总共只需要3个渲染批次,即可完成渲染。如果使用第二种方法,第3、4项渲染内容因为相邻且都使用同样的材质,可以合并。第7、8项渲染内容因为相邻且都使用同样的材质,可以合并。合并后总共需要8个渲染批次,即可完成渲染。
技术实现思路

技术介绍
可知,采用第一种方法虽然可以实现最优的渲染批次,但是对于使用场合有严格要求,若各渲染内容对渲染顺序敏感,强行采用第一种方法将对最终的渲染结果造成影响。第二种方法虽然对于使用场合几乎没有限制,但是优化之后,渲染批次的数量仍然较多,优化效果不如人意。本专利技术实施例的目的在于提供了一种渲染方法和装置,在不对原渲染结果造成影响的情况下,减少渲染批次,优化渲染过程。为了实现上述目的,本专利技术实施例提供了一种渲染方法,包括:获取待渲染画面中所有批次的渲染内容的渲染顺序;在所述所有批次的渲染内容中查找使用材质相同的第一批次渲染内容和第二批次渲染内容,并依据所述渲染顺序,获取中间批次渲染内容;所述中间批次渲染内容为渲染顺序位于所述第一批次渲染内容和所述第二批次渲染内容之间的全部批次的渲染内容;判断所述第二批次渲染内容与所述中间批次渲染内容是否相互覆盖;当所述第二批次渲染内容与所述中间批次渲染内容互不覆盖时,将所述第二批次渲染内容合并到所述第一批次渲染内容的渲染批次中,形成新的渲染顺序;根据所述新的渲染顺序,依次对所述待渲染画面中各批次的渲染内容进行批次渲染。优选地,所述获取待渲染画面中所有批次的渲染内容的渲染顺序,具体为:对所述待渲染画面的渲染树进行深度优先遍历,获取所述渲染顺序。优选地,所述判断所述第二批次渲染内容与所述中间批次渲染内容是否相互覆盖,具体为:为所述第二批次渲染内容和所述中间批次渲染内容分别添加包围体;判断所述第二批次渲染内容的包围体与所述中间批次渲染内容的包围体是否存在重叠的地方;若存在,则判定所述第二批次渲染内容与所述中间批次渲染内容相互覆盖;若不存在,则判定所述第二批次渲染内容与所述中间批次渲染内容互不覆盖。优选地,所述包围体为轴向包围盒、定向包围盒、包围球或者多边形网格。优选地,所述在所述所有批次的渲染内容中查找使用材质相同的第一批次渲染内容和第二批次渲染内容,包括:根据渲染顺序在前的所述第一批次渲染内容,查找使用材质相同但渲染顺序在后的所述第二批次渲染内容;或者,根据渲染顺序在后的所述第一批次渲染内容,查找使用材质相同但渲染顺序在前的所述第二批次渲染内容。相应地,本专利技术实施例还提供了一种渲染装置,包括:渲染顺序获取模块,用于获取待渲染画面中所有批次的渲染内容的渲染顺序;查找模块,用于在所述所有批次的渲染内容中查找使用材质相同的第一批次渲染内容和第二批次渲染内容,并依据所述渲染顺序,获取中间批次渲染内容;所述中间批次渲染内容为渲染顺序位于所述第一批次渲染内容和所述第二批次渲染内容之间的全部批次的渲染内容;覆盖关系判断模块,用于判断所述第二批次渲染内容与所述中间批次渲染内容是否相互覆盖;渲染批次合并模块,用于当所述第二批次渲染内容与所述中间批次渲染内容互不覆盖时,将所述第二批次渲染内容合并到所述第一批次渲染内容的渲染批次中,形成新的渲染顺序;和,批次渲染模块,用于根据所述新的渲染顺序,依次对所述待渲染画面中各批次的渲染内容进行批次渲染。优选地,所述渲染顺序获取模块包括:遍历单元,用于对所述待渲染画面的渲染树进行深度优先遍历,获取所述渲染顺序。优选地,所述覆盖关系计算模块包括:包围单元,用于为所述第二批次渲染内容和所述中间批次渲染内容分别添加包围体;和,判断单元,用于判断所述第二批次渲染内容的包围体与所述中间批次渲染内容的包围体是否存在重叠的地方;若存在,则判定所述第二批次渲染内容与所述中间批次渲染内容相互覆盖;若不存在,则判定所述第二批次渲染内容与所述中间批次渲染内容互不覆盖。优选地,所述包围体为轴向包围盒、定向包围盒、包围球或者多边形网格。优选地,所述查找模块包括第一查找单元或者第二查找单元;所述第一查找单元,用于根据渲染顺序在前的所述第一批次渲染内容,查找使本文档来自技高网
...

【技术保护点】
一种渲染方法,其特征在于,包括:获取待渲染画面中所有批次的渲染内容的渲染顺序;在所述所有批次的渲染内容中查找使用材质相同的第一批次渲染内容和第二批次渲染内容,并依据所述渲染顺序,获取中间批次渲染内容;所述中间批次渲染内容为渲染顺序位于所述第一批次渲染内容和所述第二批次渲染内容之间的全部批次的渲染内容;判断所述第二批次渲染内容与所述中间批次渲染内容是否相互覆盖;当所述第二批次渲染内容与所述中间批次渲染内容互不覆盖时,将所述第二批次渲染内容合并到所述第一批次渲染内容的渲染批次中,形成新的渲染顺序;根据所述新的渲染顺序,依次对所述待渲染画面中各批次的渲染内容的进行批次渲染。

【技术特征摘要】
1.一种渲染方法,其特征在于,包括:
获取待渲染画面中所有批次的渲染内容的渲染顺序;
在所述所有批次的渲染内容中查找使用材质相同的第一批次渲染内容和第
二批次渲染内容,并依据所述渲染顺序,获取中间批次渲染内容;所述中间批
次渲染内容为渲染顺序位于所述第一批次渲染内容和所述第二批次渲染内容之
间的全部批次的渲染内容;
判断所述第二批次渲染内容与所述中间批次渲染内容是否相互覆盖;
当所述第二批次渲染内容与所述中间批次渲染内容互不覆盖时,将所述第
二批次渲染内容合并到所述第一批次渲染内容的渲染批次中,形成新的渲染顺
序;
根据所述新的渲染顺序,依次对所述待渲染画面中各批次的渲染内容的进
行批次渲染。
2.如权利要求1所述的渲染方法,其特征在于,所述获取待渲染画面中所
有批次的渲染内容的渲染顺序,具体为:
对所述待渲染画面的渲染树进行深度优先遍历,获取所述渲染顺序。
3.如权利要求1所述的渲染方法,其特征在于,所述判断所述第二批次渲
染内容与所述中间批次渲染内容是否相互覆盖,具体为:
为所述第二批次渲染内容和所述中间批次渲染内容分别添加包围体;
判断所述第二批次渲染内容的包围体与所述中间批次渲染内容的包围体是
否存在重叠的地方;若存在,则判定所述第二批次渲染内容与所述中间批次渲
染内容相互覆盖;若不存在,则判定所述第二批次渲染内容与所述中间批次渲
染内容互不覆盖。
4.如权利要求3所述的渲染方法,其特征在于,所述包围体为轴向包围盒、

\t定向包围盒、包围球或者多边形网格。
5.如权利要求1至4任一项所述的渲染方法,其特征在于,所述在所述所
有批次的渲染内容中查找使用材质相同的第一批次渲染内容和第二批次渲染内
容,包括:
根据渲染顺序在前的所述第一批次渲染内容,查找使用材质相同但渲染顺
序在后的所述第二批次渲染内容;或者,
根据渲染顺序在后的所述第一批次渲染内容,查找使用材质相同但渲染顺
序在前的所述第二批次渲染内容。
6.一种渲染装置,其特征在于,包括:<...

【专利技术属性】
技术研发人员:张立志
申请(专利权)人:网易杭州网络有限公司
类型:发明
国别省市:浙江;33

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

1