[发明专利]一种区域划分的渲染优化方法及终端有效
申请号: | 202010127487.5 | 申请日: | 2020-02-28 |
公开(公告)号: | CN111340925B | 公开(公告)日: | 2023-02-28 |
发明(设计)人: | 林进浔;黄明炜;刘京京;陈日清;陈国栋 | 申请(专利权)人: | 福建数博讯信息科技有限公司 |
主分类号: | G06T15/00 | 分类号: | G06T15/00 |
代理公司: | 北京易捷胜知识产权代理有限公司 11613 | 代理人: | 蔡晓敏 |
地址: | 350001 福建省福州市鼓楼区工业*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 区域 划分 渲染 优化 方法 终端 | ||
1.一种区域划分的渲染优化方法,其特征在于,包括:
S1、根据场景大小划分为多个单元区域,将场景中不需要频繁更新的可渲染模型标记为静态模型;
S2、建立与各个单元区域对应的模型批次集合,在所述模型批次集合中建立映射表,所述映射表以静态模型的材质为键,以各个模型批次的批次数据为值,所述批次数据包括所述静态模型的顶点缓存和索引缓存;
S3、依次获取各个单元区域内的静态模型,判断所述映射表的键是否存在与所述静态模型相同的材质;
若否,则新建一个模型批次,并建立所述模型批次的顶点缓存和索引缓存,计算所述静态模型的顶点缓存数据和索引缓存数据并分别写入所述顶点缓存和索引缓存中,在所述映射表的键中新增所述静态模型的材质,并在与所述键对应的值中添加所述模型批次的批次数据;
若是,则将所述静态模型的顶点缓存数据和索引缓存数据合并写入与所述键对应的批次数据的顶点缓存和索引缓存中;
S4、获取虚拟相机的位置,根据所述虚拟相机的位置确定所在的单元区域,根据所述单元区域的模型批次集合的映射表渲染对应的模型批次。
2.根据权利要求1所述的区域划分的渲染优化方法,其特征在于,所述S3包括:
依次获取各个单元区域内的静态模型,判断所述映射表的键是否存在与所述静态模型相同的材质;
若否,则新建一个模型批次,建立所述模型批次的顶点缓存和索引缓存,在CPU中将所述静态模型所在的本地空间坐标系转换为世界空间坐标系,替换原有的与本地空间坐标系适配的顶点着色器为与所述世界空间坐标系适配的顶点着色器,计算所述静态模型在所述世界空间坐标系下的顶点缓存数据和索引缓存数据,根据所述顶点着色器获取所述静态模型的颜色信息,将所述静态模型的顶点缓存数据和材质中的颜色信息写入顶点缓存中,将所述静态模型的索引缓存数据写入索引缓存中,在所述映射表的键中新增所述静态模型的材质,并在与所述键对应的值中添加所述模型批次的批次数据;
若是,则在CPU中将所述静态模型所在的本地空间坐标系转换为世界空间坐标系,计算所述静态模型在所述世界空间坐标系下的顶点缓存数据和索引缓存数据,则将所述静态模型的顶点缓存数据和索引缓存数据合并写入与所述键对应的批次数据的顶点缓存和索引缓存中。
3.根据权利要求1所述的区域划分的渲染优化方法,其特征在于,在所述S4之前还包括:
S31、为每个模型批次集合的模型批次设置批次渲染顺序,当渲染到批次渲染顺序为n+1的模型批次之前,提交批次渲染顺序为n的批次。
4.根据权利要求2所述的区域划分的渲染优化方法,其特征在于,所述S4包括:
获取各个单元区域的世界空间位置信息,并获取所述虚拟相机的视口大小,将所述视口的左上、左下、右上、右下四个点的屏幕空间坐标转换为世界空间坐标,根据所述世界空间坐标与所述单元区域的世界空间位置信息的相交计算结果确定渲染的单元区域,根据所述单元区域的模型批次集合的映射表渲染对应的模型批次。
5.根据权利要求1所述的区域划分的渲染优化方法,其特征在于,所述S4还包括:
当发生静态模型的新增/删除和隐藏/显示时所述静态模型的状态会发生改变,在对各个模型批次进行渲染时,检查所述模型批次内的各静态模型的状态是否发生改变,若是,则标记该静态模型所在的单元区域中对应的模型批次为需要更新,在下一帧渲染时对所述单元区域中对应的模型批次进行重建。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福建数博讯信息科技有限公司,未经福建数博讯信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010127487.5/1.html,转载请声明来源钻瓜专利网。