[发明专利]场景模型渲染方法、装置、电子设备和存储介质有效
申请号: | 202110584749.5 | 申请日: | 2021-05-27 |
公开(公告)号: | CN113178014B | 公开(公告)日: | 2023-06-13 |
发明(设计)人: | 韦杨淞;吴彧文;张子豪 | 申请(专利权)人: | 网易(杭州)网络有限公司 |
主分类号: | G06T17/20 | 分类号: | G06T17/20;G06T15/50 |
代理公司: | 北京润泽恒知识产权代理有限公司 11319 | 代理人: | 吴文心 |
地址: | 310052 浙江省杭州*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 场景 模型 渲染 方法 装置 电子设备 存储 介质 | ||
1.一种场景模型渲染方法,其特征在于,所述方法包括:
获取由多个三角面片构成的场景模型;
根据所述三角面片的属性信息对所述场景模型进行划分,得到簇数组;所述簇数组包括多个簇对象,所述簇对象由多个三角面片构成;
根据所述多个簇对象对应的屏幕投影尺寸确定第一目标簇数组和第二目标簇数组;其中,在确定所述第一目标簇数组和所述第二目标簇数组时过滤掉对渲染画面无贡献的所述三角面片;
对所述第一目标簇数组进行光栅化渲染;
对所述第二目标簇数组进行体素渲染。
2.根据权利要求1所述的方法,其特征在于,所述根据所述三角面片的属性信息对所述场景模型进行划分,得到簇数组,包括:
按照指定数量的三角面片将所述场景模型划分为多个簇对象,所述簇对象构成簇数组;所述簇对象为空间位置相近且法线方向一致的三角面片构成;
获取所述簇对象中三角面片的顶点位置的最大值和最小值,依据所述最大值和最小值构成所述簇对象的包围盒;
获取所述簇对象中三角面片的法线方向,依据所述法线方向构成所述簇对象的Cone结构;所述Cone结构用于定义空间中的一个圆锥范围;
对所述簇数组进行体素化,得到所述场景模型的体素数据;
将所述体素数据采用稀疏体素八叉树SOV结构进行存储,所述SOV结构树的叶子节点中存储所述体素数据。
3.根据权利要求2所述的方法,其特征在于,在将所述体素数据采用稀疏体素八叉树SOV结构进行存储,所述SOV结构树的叶子节点中存储所述体素数据之后,还包括:
对存储所述体素数据的所述SOV结构树进行Mipmap操作,使得所述SOV结构树中的叶子节点和非叶子节点保存所述体素数据。
4.根据权利要求2所述的方法,其特征在于,所述根据所述多个簇对象对应的屏幕投影尺寸确定第一目标簇数组和第二目标簇数组,包括:
确定所述簇对象的所述包围盒在屏幕空间的屏幕投影尺寸;
依据所述屏幕投影尺寸对所述簇对象进行面片剔除,得到第一目标簇数组;其中,所述面片剔除为将屏幕投影尺寸小于预设阈值的三角面片剔除;
将进行面片剔除后剩余的所述簇对象作为第二目标簇数组。
5.根据权利要求4所述的方法,其特征在于,在所述依据所述屏幕投影尺寸对所述簇对象进行面片剔除,得到第一目标簇数组之前,所述方法还包括:
依据所述簇对象的所述Cone结构,对所述簇对象进行背面剔除,以及,依据所述簇对象的所述包围盒,对所述簇对象进行视椎体剔除。
6.根据权利要求4所述的方法,其特征在于,还包括:
将所述第二目标簇数组对应的屏幕像素坐标记录在测试模板中。
7.根据权利要求6所述的方法,其特征在于,所述对所述第二目标簇数组进行体素渲染,包括:
获取各个屏幕像素对应的屏幕像素坐标;
若所述屏幕像素坐标与所述测试模板中的屏幕像素坐标匹配时,确定所述屏幕像素坐标通过模板测试;
将通过模板测试的所述屏幕像素的屏幕像素坐标,按照视线方向发射一条射线;
当所述射线与体素空间存在相交点时,从对应的簇对象开始向下遍历所述SOV结构树,得到目标体素数据;
根据所述目标体素数据和预设光照模型,计算所述屏幕像素的颜色值;
将所述颜色值填充至所述屏幕像素。
8.根据权利要求7所述的方法,其特征在于,所述将所述颜色值填充至所述屏幕像素,包括:
获取所述相交点的体素的深度,并对所述深度进行深度测试;
当所述深度通过所述深度测试时,将所述颜色值填充至所述屏幕像素。
9.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将进行光栅化渲染或体素渲染后的所述场景模型,保存为二进制文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于网易(杭州)网络有限公司,未经网易(杭州)网络有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110584749.5/1.html,转载请声明来源钻瓜专利网。