一种数据存储的管理方法、对象渲染的方法及设备技术

技术编号:33640474 阅读:49 留言:0更新日期:2022-06-02 20:15
本申请公开了一种数据存储的管理方法,可以应用于游戏场景或动画场景中。该方法包括获取第一LOD模型的索引数据,第一LOD模型为预配置的用于渲染目标对象的基础模型,索引数据用于标记第一LOD模型的顶点;响应于对第一简化比例的选择操作,确定第二LOD模型的索引数据,第二LOD模型为目标对象的简化模型,第二LOD模型的顶点为第一LOD模型的顶点的子集;存储第二LOD模型的索引数据,不需要存储第二LOD模型的渲染数据。本申请针对同一目标对象的多个LOD模型,可以复用基础模型中的顶点,可以共用基础模型的渲染数据,因此可以节省用于存储LOD模型的数据的存储空间。LOD模型的数据的存储空间。LOD模型的数据的存储空间。

【技术实现步骤摘要】
包括两个或两个以上,也可以表示为至少两个。
[0009]第一LOD模型是该目标对象的基础模型,该第一LOD模型是通过预先配置得到的,相比于该目标对象的多个LOD模型中的其他LODO型,该第一LOD模型的顶点数量最多。其他LOD模型都是基于该第一LOD模型得到的简化模型,第二LOD模型即是按照第一简化比例得到的简化模型。可以理解为,从第一LOD模型的顶点中选择不同数量的顶点得到不同简化程度的简化模型。通常LOD模型是通过三角面片拼接成的,其中,每个三角面片都有3个顶点,每个顶点都具有一个索引值,这三个顶点的索引值组成的集合为该三角面片的索引数据。一个LOD模型所包含的三角面片的数量即为该LOD模型的索引数据的数量。
[0010]本申请中,简化比例表示简化后的LOD模型中索引数据的数量相对于第一LOD模型的索引数据的数量的比值。因为第一LOD模型的顶点最多,三角面片的数量最多,所以第一LOD模型的索引数据最多,所以,本申请中简化比例都是小于1的。在开发人员的终端设备的操作界面上可以包括多个简化比例选择项或者简化比例调节项,开发人员可以根据需求选择相应的简化比例,终端设备可以根据该简化比例确定对应的简化模型的索引数据,本申请中确定第二LOD模型的索引数据的过程可以是根据简化算法得到的,该简化算法指的是参基础模型的拓扑结构,在保证简化模型的边缘线条和整体外表面稳定的,没有畸变的前提下减少基础模型中三角面片的数量。如:基于一个具有100个三角面片的基础模型,按照0.5的简化比例得到简化模型的过程,可以是借助基于模型,均匀隐藏一些顶点,然后针对剩余的顶点,重新组建50个三角面片,得到0.5简化比例的简化模型。
[0011]本申请中,因为第二LOD模型的索引数据是通过顶点组合得到的,虽然第二LOD模型中的顶点是第一LOD模型的顶点的子集,但用于组成三角面片的顶点的组合关系可以不同,所以,第二LOD模型的索引数据可以与第一LOD模型的索引数据不同。
[0012]第一LOD模型的渲染数据包括第一LOD模型的顶点数据、法线数据、纹理(UV)坐标、纹理贴图和光照贴图等,其中,光照贴图需要通过光照烘焙得到,一般光照烘焙的时间需要几十分钟到几十小时不等。
[0013]本申请中,简化的LOD模型的顶点是第一LOD模型的顶点的子集。如:第一LOD模型有100个顶点,第二LOD模型有50个顶点,那么该50个顶点是从第一LOD模型的100个顶点中选出的。因为用于渲染目标对象的渲染数据都是与顶点相关的,第二LOD模型的顶点是第一LOD模型的顶点的子集,也就是说第二LOD模型复用了第一LOD模型的部分顶点,那么与所复用的顶点相关的渲染数据也可以复用,这样就不需要再为简化处理后的第二LOD模型生成渲染数据,也就不需要为第二LOD模型通过光照烘焙得到光照贴图,节省了用于光照烘焙的时间,提高了生成简化模型的效率。另外,因为,简化的LOD模型可以复用第一LOD模型中的渲染数据,针对一个目标对象的多个LOD模型,只要关联存储多个LOD模型的索引数据,再存储一份第一LOD模型中的渲染数据即可,这样,不需要针对每个LOD模型都存储一份完整的渲染数据,从而节省了存储空间。
[0014]在第一方面的一种可能的实现方式中,存储所述第二LOD模型的索引数据的方式包括将所述第二LOD模型的索引数据与所述第一LOD模型的索引数据关联存储,或者说连续存储,以方便查找。
[0015]在第一方面的一种可能的实现方式中,上述步骤:将第二LOD模型的索引数据与第一LOD模型的索引数据关联存储,包括:将第一LOD模型的索引数据存储到第一存储空间,将
第二LOD模型的索引数据存储到第二存储空间,第一存储空间的最后一个地址与第二存储空间的首地址相邻。在其他实现方式中,第一存储空间的首地址与第二存储空间的最后一个地址相邻。
[0016]该种可能的实现方式中,第一存储空间与第二存储空间是连续的,两个LOD模型之间索引数据关联存储可以是将第二LOD模型的索引数据连续的存储在第一LOD模型的索引数据之后。这样针对每个LOD模型的索引数据都可以通过起始地址偏移值与长度来表示,可以简化LOD模型的索引数据的表示方式。
[0017]在第一方面的一种可能的实现方式中,该方法包括:响应于对第二简化比例的选择操作,确定第三LOD模型的索引数据,第三LOD模型为目标对象对应于第二简化比例的LOD模型,第二简化比例表示第三LOD模型的索引数据相对于第一LOD模型的索引数据的比例,第三LOD模型的顶点为第一LOD模型的顶点的子集,第二简化比例小于第一简化比例;将第三LOD模型的索引数据存储到第三存储空间,第三存储空间的首地址与第二存储空间的最后一个地址相邻。在其他实现方式中,第三存储空间的最后一个地址与第二存储空间的首地址相邻。
[0018]该种可能的实现方式中,若针对第一LOD模型,终端设备陆续收到不同简化比例的选择操作,那么该终端设备会按照对不同简化比例的响应顺序,将陆续生成的LOD模型的索引数据连续存储。这样可以简化LOD模型的索引数据的表示方式。
[0019]在第一方面的一种可能的实现方式中,该方法包括:为目标对象生成模型切换策略,模型切换策略包括切换条件和切换选择项,其中,切换条件表示触发目标对象的LOD模型切换的切换参数与切换阈值的关系,切换选择项包括至少两个LOD模型中每个LOD模型的索引数据的起始地址偏移值和长度,至少两个LOD模型中的每个LOD模型用于渲染不同精度的目标对象;将模型切换策略和每个LOD模型的索引数据关联存储。
[0020]该种可能的实现方式中,模型切换策略用于控制不同精度的LOD模型的切换。其中,切换条件可以是切换参数与切换阈值的比较关系,若切换参数大于切换阈值,则可以选择第一LOD模型,若切换参数小于切换阈值,则可以选择第二LOD模型。当然,在有三个或三个以上的LOD模型时,可以有多个切换阈值。本申请中,可以根据切换参数与对应切换阈值的关系来确定对应的LOD模型。本申请在存储每个LOD模型的索引数据时采用的是连续存储的方式,因此可以通过每个LOD模型的索引数据的起始地址偏移值和长度来指示该LOD模型的索引数据的存储空间。将模型切换策略和每个LOD模型的索引数据关联存储,可以有利于在渲染目标对象时,通过该模型切换策略快速查找到相应LOD模型的索引数据。
[0021]在第一方面的一种可能的实现方式中,该方法包括:将模型切换策略、关联存储的每个LOD模型的索引数据,以及第一LOD模型的渲染数据封装为目标对象的应用数据包,第一LOD模型的渲染数据用于渲染所述第一LOD模型所对应精度的目标对象。
[0022]该种可能的实现方式中,第一LOD模型的渲染数据通常为第一LOD模型中除第一LOD模型的索引数据之外的数据。将目标对应的模型切换策略、关联存储的每个LOD模型的索引数据,以及第一LOD模型的渲染数据封装在一个应用数据包中,这样,在运行游戏或动画时,可以通过下载应用数据包快速完成安装。
[0023]在第一方面的一种可能的实现方式中,切换参本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据存储的管理方法,其特征在于,包括:获取第一多细节层次LOD模型的索引数据,所述第一LOD模型为预配置的用于渲染目标对象的基础模型,所述索引数据用于标记所述第一LOD模型的顶点;响应于对第一简化比例的选择操作,确定第二LOD模型的索引数据,所述第二LOD模型为所述目标对象对应于所述第一简化比例的LOD模型,所述第一简化比例表示所述第二LOD模型的索引数据相对于所述第一LOD模型的索引数据的比例,所述第二LOD模型的顶点为所述第一LOD模型的顶点的子集;存储所述第二LOD模型的索引数据。2.根据权利要求1所述的方法,其特征在于,所述存储所述第二LOD模型的索引数据包括:将所述第二LOD模型的索引数据与所述第一LOD模型的索引数据关联存储。3.根据权利要求2所述的方法,其特征在于,所述将所述第二LOD模型的索引数据与所述第一LOD模型的索引数据关联存储,包括:将所述第一LOD模型的索引数据存储到第一存储空间,将所述第二LOD模型的索引数据存储到第二存储空间,所述第一存储空间的最后一个地址与所述第二存储空间的首地址相邻。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:响应于对第二简化比例的选择操作,确定第三LOD模型的索引数据,所述第三LOD模型为所述目标对象对应于所述第二简化比例的LOD模型,所述第二简化比例表示所述第三LOD模型的索引数据相对于所述第一LOD模型的索引数据的比例,所述第三LOD模型的顶点为所述第一LOD模型的顶点的子集,所述第二简化比例小于所述第一简化比例;将所述第三LOD模型的索引数据存储到第三存储空间,所述第三存储空间的首地址与所述第二存储空间的最后一个地址相邻。5.根据权利要求1

4任一项所述的方法,其特征在于,所述方法还包括:为所述目标对象生成模型切换策略,所述模型切换策略包括切换条件和切换选择项,其中,所述切换条件表示触发所述目标对象的LOD模型切换的切换参数与切换阈值的关系,所述切换选择项包括至少两个LOD模型中每个LOD模型的索引数据的起始地址偏移值和长度,所述至少两个LOD模型中的每个LOD模型用于渲染不同精度的所述目标对象;将所述模型切换策略和所述每个LOD模型的索引数据关联存储。6.根据权利要求5所述的方法,其特征在于,所述方法还包括:将所述模型切换策略、所述每个LOD模型的索引数据,以及所述第一LOD模型的渲染数据封装为所述目标对象的应用数据包,所述第一LOD模型的渲染数据用于渲染所述第一LOD模型所对应精度的目标对象。7.根据权利要求5或6所述的方法,其特征在于,所述切换参数包括屏占比或观察距离;所述屏占比表示所述目标对象在屏幕中的高度与所述屏幕的高度的比例;所述观察距离表示从应用场景中的虚拟相机到所述目标对象的距离,所述应用场景包括游戏场景或动画场景。8.一种对象渲染的方法,其特征在于,包括:获取触发目标对象的多细节层次LOD模型切换的切换参数;根据所述切换参数,确定目标LOD模型的索引数据,所述目标LOD模型为所述目标对象
对应的至少两个LOD模型中的一个,所述至少两个LOD模型中的每个LOD模型用于渲染不同精度的所述目标对象;从第一LOD模型的渲染数据中获取与所述目标LOD模型的索引数据对应的目标渲染数据,所述第一LOD模型是预配置的基础模型;根据所述目标渲染数据渲染与所述目标LOD模型对应精度的所述目标对象。9.根据权利要求8所述的方法,其特征在于,所述根据所述切换参数,确定目标LOD模型的索引数据,包括:根据所述切换参数与切换阈值的关系,...

【专利技术属性】
技术研发人员:陈兴华魏晨李振鹏张泽周臻
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1