三维模型渲染方法、装置、设备及存储介质制造方法及图纸

技术编号:28807923 阅读:20 留言:0更新日期:2021-06-11 22:57
本申请公开了一种三维模型渲染方法、装置、设备及存储介质,属于计算机图形学领域。该方法包括:在离线计算阶段,获取用户输入数据;根据所述用户输入数据,在三维空间中进行针对目标三维模型的视角范围划分,得到至少两个视角区域;获取不同视角区域下所述目标三维模型的三角形可见集;根据不同视角区域的三角形可见集,构造索引缓冲区;其中,所述索引缓冲区用于存储所述三角形可见集中各个三角形的顶点索引;在实时渲染阶段,根据当前视角在所述索引缓冲区中确定目标子区间;根据所述目标子区间对应的三角可见集,渲染所述目标三维模型。本申请能够优化图形产品的渲染性能。

【技术实现步骤摘要】
三维模型渲染方法、装置、设备及存储介质
本申请涉及计算机图形学领域,特别涉及一种三维模型渲染方法、装置、设备及存储介质。
技术介绍
在图形渲染场景中,遮挡剔除(OcclusionCulling)是指一个三维模型因被场景中的其他部分(比如其他三维模型)遮挡,进而导致该三维模型在虚拟摄像机的视野范围内无法看见时,取消对该三维模型进行渲染。举例来说,游戏场景中的三维模型之间通常存在遮挡关系,利用三维模型之间的遮挡关系可以选择将不可见的三维模型剔除,取消对其进行渲染,而仅渲染可见的三维模型,从而减少每帧游戏画面的渲染量,达到降低中央处理器(CentralProcessingUnit,CPU)和图形处理单元(GraphicsProcessingUnit,GPU)的开销,进而优化图形产品的渲染性能的目的。目前在图形渲染领域和行业应用中,遮挡剔除方案主要分为两大类。一类是发生在CPU端以模型为粒度的遮挡剔除;另一类是通过改变GPU渲染管线实现的以像素为粒度的遮挡剔除。然而,在现今的图形应用场景中,场景的同屏顶点和三角形数量高达几百万甚至上千万,在这种本文档来自技高网...

【技术保护点】
1.一种三维模型渲染方法,其特征在于,所述方法包括:/n在离线计算阶段,获取用户输入数据;根据所述用户输入数据,在三维空间中进行针对目标三维模型的视角范围划分,得到至少两个视角区域;/n在离线计算阶段,获取不同视角区域下所述目标三维模型的三角形可见集;以及,根据不同视角区域的三角形可见集,构造索引缓冲区;其中,所述索引缓冲区用于存储所述三角形可见集中各个三角形的顶点索引;/n在实时渲染阶段,根据当前视角在所述索引缓冲区中确定目标子区间;根据所述目标子区间对应的三角可见集,渲染所述目标三维模型。/n

【技术特征摘要】
1.一种三维模型渲染方法,其特征在于,所述方法包括:
在离线计算阶段,获取用户输入数据;根据所述用户输入数据,在三维空间中进行针对目标三维模型的视角范围划分,得到至少两个视角区域;
在离线计算阶段,获取不同视角区域下所述目标三维模型的三角形可见集;以及,根据不同视角区域的三角形可见集,构造索引缓冲区;其中,所述索引缓冲区用于存储所述三角形可见集中各个三角形的顶点索引;
在实时渲染阶段,根据当前视角在所述索引缓冲区中确定目标子区间;根据所述目标子区间对应的三角可见集,渲染所述目标三维模型。


2.根据权利要求1所述的方法,其特征在于,所述视角范围为球面;
所述根据所述用户输入数据,在三维空间中进行针对目标三维模型的视角范围划分,得到至少两个视角区域,包括:
根据所述目标三维模型的顶点数据,确定所述目标三维模型的轴对齐包围盒;以所述轴对齐包围盒的中心点作为所述目标三维模型的中心点,确定单位球面;
按照经纬度对所述单位球面进行区域划分,得到所述至少两个视角区域。


3.根据权利要求1所述的方法,其特征在于,所述获取不同视角区域下所述目标三维模型的三角形可见集,包括:
对于任意一个视角区域,在所述视角区域中均匀采样出至少两个视角;
获取所述至少两个视角下所述目标三维模型的三角形可见集;
将所述至少两个视角的三角形可见集的并集,确定为所述视角区域的三角形可见集。


4.根据权利要求3所述的方法,其特征在于,所述获取所述至少两个视角下所述目标三维模型的三角形可见集,包括:
对于任意一个视角,将构成所述目标三维模型的各个三角形按顺序编号;
按照编号顺序为构成所述目标三维模型的各个三角形指定唯一颜色;
在所述视角下将所述目标三维模型渲染到帧缓冲区;
回读并解析帧缓冲结果;响应于解析到的颜色对应三角形编号,将所述三角形编号指示的三角形确定为所述视角下的可见三角形;
其中,所述视角下的全部可见三角形构成了所述视角的三角形可见集。


5.根据权利要求3所述的方法,其特征在于,所述获取各个视角下所述目标三维模型的三角形可见集,包括:
将构成所述目标三维模型的各个三角形设置为不可见;
将深度测试设置为就近原则,开启深度写入;在任意一个视角下,通过绘制所述目标三维模型,得到所述目标三维模型各个像素的深度信息;将所述深度信息写入深度缓冲区;
将所述深度测试设置为值相等原则,关闭深度写入;对于构成所述目标三维模型的任意一个三角形,响应于所述三角形通过要求为值相等的深度测试,且所述三角形的绘制像素量大于零,将所述三角形由不可见设置为可见;
其中,所述视角下的全部可见三角形构成了所述视角的三角形可见集。


6.根据权利要求5所述的方法,其特征在于,所述就近原则是指:响应于同一像素位置出现像素重合,在所述深度缓冲区中存储所述像素位置的取值最小的深度值;其中,深度值越小,与三维空间中虚拟摄像机的距离越近;
所述值相等是指当前深度值与所述深度缓冲区中存储的对应深度值一致。


7.根据权利要求1所述的方法,其特征在于,所述根据不同视角区域下的三角形可见集,构造索引缓冲区,包括:
将所述至少两个视角区域按顺序编号;
按照编号顺序,顺次排列各个视角区域的三...

【专利技术属性】
技术研发人员:陈玉钢王钦佳
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

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

1