【技术实现步骤摘要】
数据处理方法及装置
本申请实施例涉及计算机应用
,尤其涉及一种数据处理方法及装置。
技术介绍
随着图像处理技术的不断提升,很多场景中的物体可以在显示设备中进行渲染显示。对于场景中重复数量较多、密度较大的物体,如草、石块等,以草为例,进行草地渲染时是将草地均匀划分为多个草地块,CPU根据每个草地块中包含的草实例的渲染数据生成一次绘制命令,以调用GPU基于该渲染数据进行一次草实例的渲染。由于草地块的数量较多,每一个草地块对应一次绘制命令,导致绘制命令的数量较多。而大量的绘制命令会造成CPU过载,进而影响渲染效率。
技术实现思路
本申请实施例提供一种数据处理方法及装置、渲染方法及装置,用以解决现有技术中渲染数量较多、密度较大的物体时,CPU发起绘制命令的数量较多,导致CPU过载,影响渲染效率的问题。本专利技术的第一方面提供了一种数据处理方法,该方法包括:将待渲染区域按照四叉树的树形结构进行网格划分,获得多个子区域;按照所述多个子区域的嵌套关系,构建所述四叉树;在所述四叉树的每个节点中存储其对应子区域的实例缓存数据,其中,所述实例缓存数据包括所述子区域中的各个对象实例的渲染数据;其中,所述四叉树用于进行对象实例渲染时,遍历每个节点对应的子区域,确定位于视野范围内的目标子区域,并基于所述目标子区域对应节点存储的实例缓存数据,发起一次绘制命令,以调用GPU结合所述实例缓存数据进行对象实例渲染。本专利技术的第二方面提供了一种数据处理方法,该方法包括: ...
【技术保护点】
1.一种数据处理方法,其特征在于,包括:/n将待渲染区域按照四叉树的树形结构进行网格划分,获得多个子区域;按照所述多个子区域的嵌套关系,构建所述四叉树;/n在所述四叉树的每个节点中存储其对应子区域的实例缓存数据,其中,所述实例缓存数据包括所述子区域中的各个对象实例的渲染数据;/n其中,所述四叉树用于进行对象实例渲染时,遍历每个节点对应的子区域,确定位于视野范围内的目标子区域,并基于所述目标子区域对应节点存储的实例缓存数据,发起一次绘制命令,以调用GPU结合所述实例缓存数据进行对象实例渲染。/n
【技术特征摘要】
1.一种数据处理方法,其特征在于,包括:
将待渲染区域按照四叉树的树形结构进行网格划分,获得多个子区域;按照所述多个子区域的嵌套关系,构建所述四叉树;
在所述四叉树的每个节点中存储其对应子区域的实例缓存数据,其中,所述实例缓存数据包括所述子区域中的各个对象实例的渲染数据;
其中,所述四叉树用于进行对象实例渲染时,遍历每个节点对应的子区域,确定位于视野范围内的目标子区域,并基于所述目标子区域对应节点存储的实例缓存数据,发起一次绘制命令,以调用GPU结合所述实例缓存数据进行对象实例渲染。
2.根据权利要求1所述的方法,其特征在于,所述在所述四叉树的每个节点中存储其对应子区域的实例缓存数据之后,所述方法还包括:
遍历所述四叉树中每个节点对应的子区域,确定位于视野范围内的目标子区域;
基于每个目标子区域对应节点存储的实例缓存数据,发起一次绘制命令,以调用GPU结合所述实例缓存数据进行对象实例渲染。
3.根据权利要求2所述的方法,其特征在于,所述实例缓存数据具体包括所述子区域中的各个对象实例的静态渲染数据;
所述基于每个目标子区域对应节点存储的实例缓存数据,发起一次绘制命令,以调用GPU结合所述实例缓存数据进行对象实例渲染包括:
基于每个目标子区域对应节点存储的实例缓存数据,发起一次绘制命令,调用GPU生成所述目标子区域中每个对象实例的动态渲染数据,并结合每个对象实例的静态渲染数据及动态渲染数据,渲染获得每个对象实例。
4.一种数据处理方法,其特征在于,包括:
将待渲染区域按照四叉树的树形结构进行网格划分,获得多个子区域;
按照所述多个子区域的嵌套关系,构建所述四叉树;
在所述四叉树的每个节点中存储其对应子区域的实例缓存数据的缓存地址,其中,所述实例缓存数据包括所述子区域中的各个对象实例的渲染数据;
其中,所述四叉树用于进行对象实例渲染时,遍历每个节点对应的子区域以确定位于视野范围内的目标子区域,并基于所述目标子区域对应节点存储的缓存地址索引的实例缓存数据,发起一次绘制命令,以调用GPU结合所述实例缓存数据进行对象实例渲染。
5.根据权利要求4所述的方法,其特征在于,所述在所述四叉树的每个节点中存储其对应子区域的实例缓存数据的缓存地址之后,所述方法还包括:
遍历所述四叉树中每个节点对应的子区域,确定位于视野范围内的目标子区域;
基于每个目标子区域对应节点存储的缓存地址索引的实例缓存数据,发起一次绘制命令,以调用GPU结合所述实例缓存数据进行对象实例渲染。
6.根据权利要求5所述的方法,其特征在于,所述实例缓存数据具体包括所述子区域中的各个对象实例的静态渲染数据;
所述基于每个目标子区域对应节点存储的缓存地址索引的实例缓存数据,发起一次绘制命令,以调用GPU结合所述实例缓存数据进行对象实例渲染包括:
基于每个目标子...
【专利技术属性】
技术研发人员:姜明余,
申请(专利权)人:完美世界北京软件科技发展有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。