[发明专利]一种纹理图集调度的方法有效
申请号: | 201811316278.4 | 申请日: | 2018-11-07 |
公开(公告)号: | CN109710227B | 公开(公告)日: | 2022-05-24 |
发明(设计)人: | 郭嵩;吕文伟 | 申请(专利权)人: | 苏州蜗牛数字科技股份有限公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30;G06T15/20 |
代理公司: | 北京德崇智捷知识产权代理有限公司 11467 | 代理人: | 王金双 |
地址: | 215000 江苏省*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 纹理 调度 方法 | ||
1.一种纹理图集调度的方法,其特征在于,包括以下步骤:
1)对需要加载的纹理进行预处理;
2)加载纹理保留的MipMap等级;
3)对需要进行调度的MipMap进行管理;
4)对UV进行重新定位、纹理采样;
其中,所述步骤2)进一步包括,更新间接索引Buffer以及实际的物理纹理,创建索引Buffer,用于记录实际物理纹理上的小方格的信息;
其中,所述步骤3)进一步包括,
71)通过纹理期望的LOD,确定需要流入的纹理;
72)确定需要流入的MipMap;
73)计算需要的Tile个数;
当所需的Tile个数小于或等于空闲的Tile数时,直接分配相应个数的Tile以供纹理的流入,纹理流入后,修改索引Buffer,更新索引Buffer上对应的Slot;
当所需的Tile个数大于空闲的Tile数时,根据需要流出的MipMap,从间接索引Buffer上找到对应的TileIndex,把Tile标记为空闲的小方格,并且修改对应的间接Buffer,保证间接Buffer中存储跟当前LOD最接近的,且已经加载到PhysicalTexture上的MipMap对应的Tile索引,当流出某一个等级的MipMap时,要修改索引Buffer上当前等级对应的Slot,修改为相邻的上一等级Slot所对应的值。
2.根据权利要求1所述的纹理图集调度的方法,其特征在于,所述步骤1)进一步包括,根据基本流式加载的单位对需要加载的纹理进行预处理,并保存到自定义格式的文件中。
3.根据权利要求2所述的纹理图集调度的方法,其特征在于,对纹理进行预处理的过程包括对纹理进行小方格化处理,对于不同的采样寻址模式和贴图数据存储格式以及不同的采样过滤器,小方格化处理过程中小方格向外延伸的像素个数不同。
4.根据权利要求1所述的纹理图集调度的方法,其特征在于,在所述索引Buffer中,每张贴图对应一个TextureInfo,每个贴图有8个等级的MipMap,使用8个MipMapInfo来存储对应的信息,每个用来存储MipMap信息的位置为一个Slot。
5.根据权利要求1所述的纹理图集调度的方法,其特征在于,对于高等级的MipMap,所对应的Slot上的TileIndex都是相同的,对于存储多个TileIndex的Slot,按照z-order的顺序来对TileIndex进行存储。
6.根据权利要求1所述的纹理图集调度的方法,其特征在于,所述步骤4)中包括,根据当前的纹理坐标和尺寸大小,计算期望的LOD,计算公式为:
λbase(x,y)=log2[ρ(x,y)],
其中,λbase为期望的LOD,x,y为当前纹理的尺寸大小;
ρ的计算公式为:其中u,v,w为当前的纹理坐标。
7.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,所述计算机指令运行时执行权利要求1至6任一项所述的纹理图集调度的方法的步骤。
8.一种终端设备,其特征在于,包括存储器和处理器,所述存储器上储存有在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行权利要求1至6任一项所述的纹理图集调度的方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州蜗牛数字科技股份有限公司,未经苏州蜗牛数字科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811316278.4/1.html,转载请声明来源钻瓜专利网。