【技术实现步骤摘要】
虚拟对象的破碎动画渲染方法和装置
[0001]本专利技术涉及计算机领域,具体而言,涉及一种虚拟对象的破碎动画渲染方法和装置。
技术介绍
[0002]相关领域中,虚拟对象的破碎在虚拟游戏场景中较为常见。虚拟对象的破碎动画使得虚拟游戏场景更加贴合实际。虚拟对象可以是虚拟游戏场景中的建筑物,物体、树木等。以射击类游戏为例,在虚拟游戏场景中,玩家操控的虚拟角色向敌方建筑物执行攻击操作,遭到攻击后敌方建筑物在虚拟游戏场景中呈现破碎的动画效果。
[0003]目前通常采用Geometry Collection预切割算法对游戏对象进行切割,然而该算法无法控制切割后生成的碎片大小和碎片数量。并且通过该算法生成的碎片数据分别记录在不同的存储空间中,在渲染碎片时需要在多个不同存储空间中分别调用相应的碎片数据,这样多次调用影响终端性能,对于较为低端的移动游戏平台,难以支持碎片的渲染。此外,目标在对每个碎片进行渲染时需要后台工作人员反复调试确定每个碎片的破碎位置,以使破碎效果更贴合实际,效率较低。
[0004]针对上述的问题,目前尚未 ...
【技术保护点】
【技术特征摘要】
1.一种虚拟对象的破碎动画渲染方法,其特征在于,包括:显示目标虚拟对象,其中,所述目标虚拟对象对应的目标网格集合被预先分成多个网格子集,每个网格子集用于在所述目标虚拟对象破碎后形成对应的虚拟对象碎片,所述每个网格子集包括一组相邻接的网格;响应于针对所述目标虚拟对象的破碎指令,对所述每个网格子集进行位置变换,得到在所述目标虚拟对象破碎后所述每个网格子集所在的破碎位置;根据所述每个网格子集所在的破碎位置,对所述目标虚拟对象的破碎动画进行渲染,其中,在所述破碎动画中,所述每个网格子集所形成的虚拟对象碎片从各自的当前位置移动到所述每个网格子集所在的破碎位置。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:按照获取的分割指令,沿着表面网格集合中的部分网格,将所述目标虚拟对象分割成多个部分,其中,每个部分在所述目标虚拟对象破碎后成为虚拟对象碎片,所述表面网格集合用于形成所述目标虚拟对象的表面;在所述每个部分相对于所述目标虚拟对象的表面增加的每个面上设置新增面网格集合,其中,每个新增面网格集合用于形成增加的面,所述目标网格集合包括所述表面网格集合和所述每个面上设置的所述新增面网格集合,所述多个部分中的不同部分上的两个网格之间的关系为不相邻关系,在所述多个部分中的同一个部分上的两个网格之间具有至少两个相同的顶点时,所述同一个部分上的两个网格之间的关系为相邻关系;根据所述目标网格集合中的网格之间的所述相邻关系,将所述目标网格集合分成所述多个网格子集。3.根据权利要求2所述的方法,其特征在于,所述根据所述目标网格集合中的网格之间的所述相邻关系,将所述目标网格集合分成所述多个网格子集,包括:对所述目标网格集合中的网格执行以下操作,直到遍历所述目标网格集合中的每个网格:在所述目标网格集合中选择当前网格,其中,所述当前网格尚未被确定成所述多个网格子集中的网格;在所述目标网格集合中确定与所述当前网格具有所述相邻关系的网格,得到当前相邻网格子集,其中,所述当前网格与所述当前相邻网格子集中的网格之间具有至少两个相同的顶点;在所述目标网格集合中确定与所述当前网格具有邻接关系的网格,得到当前邻接网格子集,其中,所述当前网格与所述当前邻接网格子集中的网格之间通过至少一个网格连接;将当前网格子集确定为包括所述当前网格、所述当前相邻网格子集和所述当前邻接网格子集,其中,所述当前网格与所述当前相邻网格子集中的网格和所述当前邻接网格子集中的网格为所述当前网格子集中一组相邻接的网格,所述多个网格子集中包括所述当前网格子集。4.根据权利要求1所述的方法,其特征在于,响应于针对所述目标虚拟对象的破碎指令,对所述每个网格子集进行位置变换,包括:响应于针对所述目标虚拟对象的破碎指令,通过目标调用指令在同一块存储空间中读取所述多个网格子集中的所述每个网格子集的标识,其中,所述多个网格子集中的所述每
个网格子集的标识被存储在所述同一块存储空间中;根据所述每个网格子集的标识,对所述每个网格子集进行位置变换。5.根据权利要求4所述的方法,其特征在于,所述根据所述每个网格子集的标识,对所述每个网格子集进行位置变换,包括:对于所述每个网格子集的标识执行以下步骤,其中,在执行以下步骤时,所述每个网格子集的标识为当前网格子集的标识:根据所述当前网格子集的标识,查找所述当前网格子集中包括的每个网格的标识,并根据所述当前网格子集中包括的每个网格的标识,获取所述当前网格子集中包括的每个网格的初始位置;根据所述当前...
【专利技术属性】
技术研发人员:连冠荣,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。