一种纹理加载方法及相关装置制造方法及图纸

技术编号:25188220 阅读:25 留言:0更新日期:2020-08-07 21:15
本申请公开了一种纹理加载方法,包括:计算摄像机与待渲染物体之间的距离,根据所述距离计算出对应的Mipmap等级;判断剩余显存空间是否大于预设存储空间;若是,则加载所述Mipmap等级对应的所有纹理数据;若否,则对所述Mipmap等级增加预设等级值得到目标Mipmap等级,加载该目标Mipmap等级对应的所有纹理数据,并卸载小于该目标Mipmap等级的纹理数据。通过在加载纹理时计算出对应的Mipmap等级,然后通过判断卸载部分纹理,以便将物体的纹理顺利加载,减少显存中的无用信息,提高显存空间的利用率。本申请还公开了一种纹理加载装置、计算机装置以及计算机可读存储介质,具有以上有益效果。

【技术实现步骤摘要】
一种纹理加载方法及相关装置
本申请涉及计算机
,特别涉及一种纹理加载方法、纹理加载装置、计算机装置以及计算机可读存储介质。
技术介绍
随着信息技术的不断发展,电子游戏的硬件要求随着质量不断攀升。其中,在计算机中进行建模处理的过程使用的纹理贴图会占据较多的显存空间。目前,常用纹理映射技术处理大批量的纹理贴图,纹理映射Mipmap技术,它是把一张纹理贴图按照2的倍数进行缩小,直到1X1,然后再把缩小的图都存储起来,形成一个纹理贴图系列,每张贴图对应一个MipmapLevel,当摄像机离物体比较近的时候,需要较大的纹理贴图(MipmapLevel比较低)应用在物体上,这样才能显示物体表面细节,而相反,当摄像机离物体比较远的时候,物体细节呈现比较弱,只需要比较小的纹理贴图(MipmapLevel比较高)。一般为了方便贴图过滤,在Mipmap使用过程中,如果加载了较低等级的MipmapLevel,那么高于该等级的MipmapLevel也会被加载,比如如果加载了MipmapLevel2,那么MipmapLevel3~MipmapLevel6也需要被加载。所以,在实际程序运行过程中,对于较远处的物体完全可以不加载较低等级的MipmapLevel,只有当摄像机靠近这个物体时才去加载低等级的MipmapLevel,而当摄像机远离一个物体时,可以把较低等级的MipmapLevel从显存中卸载掉,这种纹理贴图加载策略就叫做纹理流式加载,可以减少一部分显存的占用。但是,当游戏的纹理贴图数量进一步上升时,并且GPU显存有限的情况下,纹理流式加载无法保持更好的显存占用率,同时会增加计算性能的消耗。因此,如何在GPU显存有限的情况下进一步充分利用显存空间,减少显存中无用的存储信息,提高显存空间利用率是本领域技术人员关注的重点问题。
技术实现思路
本申请的目的是提供一种纹理加载方法、纹理加载装置、计算机装置以及计算机可读存储介质,通过在加载纹理时计算出对应的Mipmap等级,然后通过判断卸载部分纹理,以便将物体的纹理顺利加载,减少显存中的无用信息,提高显存空间的利用率。为解决上述技术问题,本申请提供一种纹理加载方法,包括:计算摄像机与待渲染物体之间的距离,根据所述距离计算出对应的Mipmap等级;判断剩余显存空间是否大于预设存储空间;若是,则加载所述Mipmap等级对应的所有纹理数据;若否,则对所述Mipmap等级增加预设等级值得到目标Mipmap等级,加载该目标Mipmap等级对应的所有纹理数据,并卸载小于该目标Mipmap等级的纹理数据。可选的,还包括:当计算摄像机与待渲染物体之间的距离之前,将所有物体分为多个批次集合;选择所述多个批次集合中任意一个批次集合的物体作为所述待渲染物体。可选的,还包括:使用加载的纹理数据对所述待渲染物体执行渲染操作。可选的,对所述Mipmap等级增加预设等级值得到目标Mipmap等级,加载该目标Mipmap等级对应的所有纹理数据,并卸载小于该目标Mipmap等级的纹理数据,包括:按照摄像机与物体的距离从远到近依次将每个物体的Mipmap等级增加预设等级值得到每个物体的目标Mipmap等级;加载每个物体的目标Mipmap等级对应的所有纹理数据,并卸载小于每个物体的目标Mipmap等级的纹理数据。本申请还提供一种纹理加载装置,包括:Mipmap等级计算模块,用于计算摄像机与待渲染物体之间的距离,根据所述距离计算出对应的Mipmap等级;显存空间比较模块,用于判断剩余显存空间是否大于预设存储空间;全加载模块,用于当所述剩余显存空间大于预设存储空间时,加载所述Mipmap等级对应的所有纹理数据;半加载模块,用于当所述剩余显存空间不大于预设存储空间时,对所述Mipmap等级增加预设等级值得到目标Mipmap等级,加载该目标Mipmap等级对应的所有纹理数据,并卸载小于该目标Mipmap等级的纹理数据。可选的,还包括:物体分批模块,用于当计算摄像机与待渲染物体之间的距离之前,将所有物体分为多个批次集合;物体选择模块,用于选择所述多个批次集合中任意一个批次集合的物体作为所述待渲染物体。可选的,还包括:渲染模块,用于使用加载的纹理数据对所述待渲染物体执行渲染操作。可选的,所述半加载模块,包括:Mipmap等级提高单元,用于按照摄像机与物体的距离从远到近依次将每个物体的Mipmap等级增加预设等级值得到每个物体的目标Mipmap等级;纹理数据调整单元,用于加载每个物体的目标Mipmap等级对应的所有纹理数据,并卸载小于每个物体的目标Mipmap等级的纹理数据。本申请还提供一种计算机装置,包括:存储器,用于存储计算机程序;处理器,用于执行所述计算机程序时实现如上所述的纹理加载方法的步骤。本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的纹理加载方法的步骤。本申请所提供的一种纹理加载方法,包括:计算摄像机与待渲染物体之间的距离,根据所述距离计算出对应的Mipmap等级;判断剩余显存空间是否大于预设存储空间;若是,则加载所述Mipmap等级对应的所有纹理数据;若否,则对所述Mipmap等级增加预设等级值得到目标Mipmap等级,加载该目标Mipmap等级对应的所有纹理数据,并卸载小于该目标Mipmap等级的纹理数据。首先计算出摄像机与待渲染物体之间的距离,然后根据该距离计算出对应的Mipmap等级,最后判断此时的剩余显存空间是否大于预设存储空间,当剩余显存空间大于预设显存空间时,则根据该Mipmap等级加载该Mipmap等级对应的所有的纹理数据,以便保证物体纹理的顺利加载,当剩余显存空间小于等于预设显存空间时,则增加Mipmap等级至目标Mipmap等级,然后加载该目标Mipmap等级对应的所有纹理数据以便降低加载纹理数据的总数,并卸载该小于该目标Mipmap等级的纹理数据,进一步降低纹理数据对存储空间的占用,提高显存空间的利用率,以保持显存空间可以加载纹理数据的空间。本申请还提供一种纹理加载装置、计算机装置以及计算机可读存储介质,具有以上有益效果,在此不做赘述。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。图1为本申请实施例所提供的一种纹理加载方法的流程示意图;图2为本申请实施例所提供的一种纹理加载装置的结构示意图。具体实施方式本申请的核心是提供一种纹理加载方法、纹理加载装置、计算机装置以及计算机可读存储介质,通过在加载纹理时计算出对应的Mipma本文档来自技高网
...

【技术保护点】
1.一种纹理加载方法,其特征在于,包括:/n计算摄像机与待渲染物体之间的距离,根据所述距离计算出对应的Mipmap等级;/n判断剩余显存空间是否大于预设存储空间;/n若是,则加载所述Mipmap等级对应的所有纹理数据;/n若否,则对所述Mipmap等级增加预设等级值得到目标Mipmap等级,加载该目标Mipmap等级对应的所有纹理数据,并卸载小于该目标Mipmap等级的纹理数据。/n

【技术特征摘要】
1.一种纹理加载方法,其特征在于,包括:
计算摄像机与待渲染物体之间的距离,根据所述距离计算出对应的Mipmap等级;
判断剩余显存空间是否大于预设存储空间;
若是,则加载所述Mipmap等级对应的所有纹理数据;
若否,则对所述Mipmap等级增加预设等级值得到目标Mipmap等级,加载该目标Mipmap等级对应的所有纹理数据,并卸载小于该目标Mipmap等级的纹理数据。


2.根据权利要求1所述的纹理加载方法,其特征在于,还包括:
当计算摄像机与待渲染物体之间的距离之前,将所有物体分为多个批次集合;
选择所述多个批次集合中任意一个批次集合的物体作为所述待渲染物体。


3.根据权利要求1所述的纹理加载方法,其特征在于,还包括:
使用加载的纹理数据对所述待渲染物体执行渲染操作。


4.根据权利要求1所述的纹理加载方法,其特征在于,对所述Mipmap等级增加预设等级值得到目标Mipmap等级,加载该目标Mipmap等级对应的所有纹理数据,并卸载小于该目标Mipmap等级的纹理数据,包括:
按照摄像机与物体的距离从远到近依次将每个物体的Mipmap等级增加预设等级值得到每个物体的目标Mipmap等级;
加载每个物体的目标Mipmap等级对应的所有纹理数据,并卸载小于每个物体的目标Mipmap等级的纹理数据。


5.一种纹理加载装置,其特征在于,包括:
Mipmap等级计算模块,用于计算摄像机与待渲染物体之间的距离,根据所述距离计算出对应的Mipmap等级;
显存空间比较模块,用于判断剩余显存空间是否大于预设存储空间;
全...

【专利技术属性】
技术研发人员:李鑫
申请(专利权)人:浙江无端科技股份有限公司
类型:发明
国别省市:浙江;33

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

1