【技术实现步骤摘要】
虚拟对象的运动状态修正方法、装置、设备及存储介质
本申请涉及虚拟场景
,特别涉及一种虚拟对象的运动状态修正方法、装置、设备及存储介质。
技术介绍
网络同步是指将一个终端控制的虚拟对象的运动状态通过网络同步给另一个终端,使得另一终端能够对该虚拟对象展示相同的动作效果。在相关技术中,两个或者两个以上终端之间可以通过插值方法进行网络同步,以达到虚拟对象运动连贯的效果。比如,控制一个虚拟对象的终端A向终端B发送同步数据包,该同步数据包中包含终端A侧的虚拟对象的位置等状态信息,终端B根据终端A发送的同步数据包更新虚拟对象在终端B中的“影子”,并在下一次接收到终端A发送的同步数据包之前,控制虚拟对象逐帧向其“影子”接近。然而,在上述相关技术中,“影子”的状态两次更新之间,虚拟对象追赶“影子”的过程更趋近于直线运动,从而导致网络同步过程中终端B一侧展示的虚拟对象的运动平滑性较差,影响网络同步的效果。
技术实现思路
本申请实施例提供了一种虚拟对象的运动状态修正方法、装置、设备及存储介质,可以用于解决网络同步过程中虚拟对象的运动平滑性较差的问题,提高网络同步的效果,技术方案如下:一方面,提供了一种虚拟对象的运动状态修正方法,所述方法由第一终端执行,所述方法包括:接收第二终端发送的同步数据包,所述第二终端是控制虚拟场景中的虚拟对象的终端,所述同步数据包中包含所述虚拟对象在所述第二终端侧的运动状态和操作信息,所述操作信息用于指示接收到的控制操作;根据第一时延以及所述同步数据包获取所述虚拟对象在接收到所述同步数据包之后的连续N个画面帧中的目标运动状态,所述目标运动状态包括目标位 ...
【技术保护点】
1.一种虚拟对象的运动状态修正方法,其特征在于,所述方法由第一终端执行,所述方法包括:接收第二终端发送的同步数据包,所述第二终端是控制虚拟场景中的虚拟对象的终端,所述同步数据包中包含所述虚拟对象在所述第二终端侧的运动状态和操作信息,所述操作信息用于指示接收到的控制操作;根据第一时延以及所述同步数据包获取所述虚拟对象在接收到所述同步数据包之后的连续N个画面帧中的目标运动状态,所述目标运动状态包括目标位置,所述第一时延是所述同步数据包从所述第一终端到达所述第二终端的时延;N为大于或者等于2的整数;获取所述虚拟对象在所述N个画面帧中的初始运动状态,所述初始运动状态包括初始位置;根据所述虚拟对象在所述N个画面帧中的距离信息,对所述虚拟对象在所述N个画面帧中的初始运动状态进行修正,获得所述虚拟对象在所述N个画面帧中的实际运动状态,所述距离信息包括所述虚拟对象在对应的画面帧中的初始位置和目标位置之间的距离。
【技术特征摘要】
1.一种虚拟对象的运动状态修正方法,其特征在于,所述方法由第一终端执行,所述方法包括:接收第二终端发送的同步数据包,所述第二终端是控制虚拟场景中的虚拟对象的终端,所述同步数据包中包含所述虚拟对象在所述第二终端侧的运动状态和操作信息,所述操作信息用于指示接收到的控制操作;根据第一时延以及所述同步数据包获取所述虚拟对象在接收到所述同步数据包之后的连续N个画面帧中的目标运动状态,所述目标运动状态包括目标位置,所述第一时延是所述同步数据包从所述第一终端到达所述第二终端的时延;N为大于或者等于2的整数;获取所述虚拟对象在所述N个画面帧中的初始运动状态,所述初始运动状态包括初始位置;根据所述虚拟对象在所述N个画面帧中的距离信息,对所述虚拟对象在所述N个画面帧中的初始运动状态进行修正,获得所述虚拟对象在所述N个画面帧中的实际运动状态,所述距离信息包括所述虚拟对象在对应的画面帧中的初始位置和目标位置之间的距离。2.根据权利要求1所述的方法,其特征在于,所述目标运动状态还包括目标矢量速度,所述初始运动状态还包括初始矢量速度;所述根据所述虚拟对象在所述N个画面帧中的距离信息,对所述虚拟对象在所述N个画面帧中的初始运动状态进行修正,获得所述虚拟对象在所述N个画面帧中的实际运动状态,包括:根据所述虚拟对象在第二画面帧中的初始矢量速度、所述操作信息以及所述虚拟对象在所述第二画面帧中的目标矢量速度进行插值计算,获得所述虚拟对象在所述第二画面帧中的插值矢量速度;所述第二画面帧是所述N个画面帧中的任一画面帧;根据所述虚拟对象在所述第二画面帧中的距离信息对所述插值矢量速度进行修正,获得所述虚拟对象在所述第二画面帧中的实际矢量速度;根据所述虚拟对象在所述第二画面帧中的初始位置以及所述虚拟对象在所述第二画面帧中的实际矢量速度,获取所述虚拟对象在所述第二画面帧中的实际位置。3.根据权利要求2所述的方法,其特征在于,所述获取所述虚拟对象在所述N个画面帧中的初始运动状态,包括:将所述虚拟对象在所述第二画面帧的前一画面帧中的实际运动状态,获取为所述虚拟对象在所述第二画面帧中的初始运动状态。4.根据权利要求2所述的方法,其特征在于,所述根据所述虚拟对象在所述第二画面帧中的距离信息对所述插值矢量速度进行修正,获得所述虚拟对象在所述第二画面帧中的实际矢量速度,包括:根据所述虚拟对象在第二画面帧中的距离信息获取速度增益,所述速度增益的数值与所述距离信息包含的距离数值成正相关;根据所述插值矢量速度与所述速度增益,获取所述虚拟对象在所述第二画面帧中的实际矢量速度。5.根据权利要求2所述的方法,其特征在于,所述根据所述虚拟对象在所述第二画面帧中的初始位置以及所述虚拟对象在所述第二画面帧中的实际矢量速度,获取所述虚拟对象在所述第二画面帧中的实际位置,包括:将从所述虚拟对象在所述第二画面帧中的初始位置开始,按照所述虚拟对象在所述第二画面帧中的实际矢量速度移动帧间隔时长之后的位置获取为所述虚拟对象在所述第二画面帧中的实际位置;所述帧间隔时长是相邻两个画面帧之间的时长。6.根据权利要求1至5任一所述的方法,其特征在于,所述根据第一时延以及所述同步数据包获取所述虚拟对象在接收到所述同步数据包之后的连续N个画面帧中的目标运动状态,包括:根据所述第一时延获取迭代时间间隔和计算次数M,M为大于或者等于1的整数;根据所述虚拟对象在所述第二终端侧的运动状态和所述操作信息,按照所述迭代时间间隔进行M次计算迭代计算,获得所述虚拟对象在第三画面帧中的目标运动状态;所述第三画面帧是所述N个画面帧中的第一个画面帧;根据所述操作信息以及所述虚拟对象在第三画面帧中的目标运动状态,获取所述虚拟对象在所述第三画面帧之后的N-1个画面帧中的目标运动状态。7.根据权利要求6所述的方法,其特征在于,所述根据所述第一时延获取迭代时间间隔和...
【专利技术属性】
技术研发人员:管雅君,方煜宽,蔡洋,
申请(专利权)人:腾讯科技深圳有限公司,
类型:发明
国别省市:广东,44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。