[发明专利]游戏渲染方法、装置、存储设备及终端有效
申请号: | 201710600237.7 | 申请日: | 2017-07-21 |
公开(公告)号: | CN107463398B | 公开(公告)日: | 2018-08-17 |
发明(设计)人: | 徐敏君 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445;G06T11/00;G06T15/00 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 郝传鑫;熊永强 |
地址: | 518057 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 游戏 渲染 方法 装置 存储 设备 终端 | ||
本发明实施例公开一种游戏渲染方法、装置、存储设备及终端,在资源打包过程中即将纹理贴图碎化处理为多块碎化纹理,按照游戏渲染需要加载所用的目标纹理贴图对应的碎化纹理,能够有效的降低内存加载开销,减小内存负担;另外,对目标纹理贴图对应的碎化纹理进行合并渲染,能够保证渲染画面效果,避免内存负担随游戏运行线性增加,从而保证游戏运行顺畅。
技术领域
本发明涉及互联网技术领域,具体涉及互联网游戏技术领域,尤其涉及一种游戏渲染方法、一种游戏渲染装置、一种存储设备及一种游戏渲染终端。
背景技术
传统的游戏渲染方法,一般是预先将游戏的当前运行场景中可能需要使用的所有纹理贴图(如景物、角色和UI(User Interface,用户界面)等)全部加载至内存中,当需要对某一纹理贴图进行渲染时,从内存中直接获取该纹理贴图,然而很多纹理贴图其实并不是一直在使用,将其加载至内存中,既增加了加载开销,也增加了内存占用,进而造成游戏卡顿。现有技术中还出现另一种游戏渲染方法,能够一定程度上减小内存负担,该方法在资源打包过程中使用纹理合并工具texture packer把多张小纹理贴图合并到一张大纹理贴图中,在需要对多个游戏元素(如景物、角色等)进行渲染时才将该大纹理贴图加载至内存中,从而节省一定加载开销;在渲染多个游戏元素时只要这些元素使用的是同一张大纹理贴图,并且渲染参数一致便可以合并渲染批次,从而提升渲染性能。这种使用纹理合并工具的方法虽然可以提高渲染性能,但需要整张大纹理贴图同时加载到内存,由于游戏运行时存在着大量的纹理复用,这样的方式同样会造成大量的不必要的内存开销,并且随着游戏版本更新和内容增加而使得内存负担显著上升,进而造成游戏卡顿。
发明内容
本发明实施例提供一种游戏渲染方法、装置、存储设备及终端,能够保证渲染画面效果,避免内存负担随游戏运行线性增加,从而保证游戏运行顺畅。
一方面,本发明实施例提供一种游戏渲染方法,可包括:
获取游戏的资源文件,所述资源文件包括游戏渲染所需的至少一张纹理贴图,其中,一张所述纹理贴图由多块碎化纹理合并而成;
确定游戏的当前运行场景中待渲染网格所用的目标纹理贴图;
从所述资源文件中查找所述目标纹理贴图对应的碎化纹理;
对所述目标纹理贴图对应的碎化纹理进行合并渲染。
优选地,所述获取游戏的资源文件之前,还包括:
获取游戏渲染所需的至少一张纹理贴图,所述纹理贴图包含原始纹理数据;
分别将各纹理贴图碎化处理为多块碎化纹理,一块碎化纹理包括一个碎化纹理数据以及包围所述碎化纹理数据的预设宽度的边缘原始纹理数据;
将各纹理贴图对应的碎化纹理封装至资源文件中。
优选地,所述分别将各纹理贴图碎化处理为多块碎化纹理,包括:
依次选取各张纹理贴图,将所选纹理贴图按照第一预设规格进行行切割得到多个矩形框;
对所选纹理贴图所包含的原始纹理数据按照第二预设规格进行碎化处理得到多个碎化纹理数据,并在各个碎化纹理数据的四周获取预设宽度的边缘原始纹理数据;
将多个碎化纹理数据及预设宽度的边缘原始纹理数据填充至对应矩形框,一个完成填充的矩形框形成一块碎化纹理;
其中,第一预设规格的值大于或等于第二预设规格的值与两倍预设宽度的值的总和。
优选地,所述将多个碎化纹理数据及预设宽度的边缘原始纹理数据填充至对应矩形框,一个完成填充的矩形框形成一块碎化纹理,包括:
在每个矩形框上下两侧各预留预设宽度的边缘,并在每个矩形框左右两侧各增加预设宽度的边缘,使每个矩形框具备中央区和包围中央区的边缘区;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710600237.7/2.html,转载请声明来源钻瓜专利网。