CN115337646A - 虚拟对象的掉落处理方法、装置、电子设备及存储介质 - Google Patents

虚拟对象的掉落处理方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN115337646A
CN115337646A CN202210994336.9A CN202210994336A CN115337646A CN 115337646 A CN115337646 A CN 115337646A CN 202210994336 A CN202210994336 A CN 202210994336A CN 115337646 A CN115337646 A CN 115337646A
Authority
CN
China
Prior art keywords
virtual object
vertex
coordinate system
motion
article
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210994336.9A
Other languages
English (en)
Inventor
招骏浩
余林路
邓共
贺文骅
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Neteasy Brilliant Network Technology Co ltd
Original Assignee
Netease Hangzhou Network Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Netease Hangzhou Network Co Ltd filed Critical Netease Hangzhou Network Co Ltd
Priority to CN202210994336.9A priority Critical patent/CN115337646A/zh
Publication of CN115337646A publication Critical patent/CN115337646A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • A63F13/573Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game using trajectories of game objects, e.g. of a golf ball according to the point of impact
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/58Controlling game characters or game objects based on the game progress by computing conditions of game characters, e.g. stamina, strength, motivation or energy level

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明实施例提供了一种虚拟对象的掉落处理方法、装置、电子设备及存储介质,所述方法包括:响应于物品掉落指令,确定与所述物品掉落指令对应的虚拟对象,并获取所述虚拟对象对应的物品参数,所述虚拟对象对应一对象坐标系,所述物品参数为基于所述对象坐标系确定的参数;根据所述物品参数,确定所述虚拟对象中各个顶点在所述对象坐标系下的顶点坐标,并构建与所述顶点坐标对应的虚拟对象模型;获取服务端发送的所述虚拟对象在游戏场景中的掉落点,并确定与所述掉落点对应的运动参数;根据所述运动参数控制所述虚拟对象模型以所述掉落点为起点执行对应的掉落运动。

Description

虚拟对象的掉落处理方法、装置、电子设备及存储介质
技术领域
本发明涉及游戏技术领域,特别是涉及一种虚拟对象的掉落处理方法、一种虚拟对象的掉落处理装置、一种电子设备以及一种计算机可读存储介质。
背景技术
随着游戏技术的发展以及智能终端的普及,游戏已经成为人们日常生活的重要娱乐方式之一。其中,在一些游戏中,当玩家击杀对应的游戏boss或敌方玩家角色,或是对游戏场景中的某个资源对象进行采集时,会出现虚拟对象从游戏boss、敌方玩家角色、资源对象上掉落的情况,通过对虚拟对象的掉落轨迹进行处理,使其更符合现实世界物品掉落的情况,能够有效地提高玩家的游戏体验。对于这类物品掉落的场景,或是通过将虚拟对象以固定的运动轨迹进行掉落,或是由服务器计算虚拟对象的运动轨迹,然后下发至客户端。可见,对于固定轨迹,其虚拟对象的掉落轨迹特效固定,不具有动态的表现,表现效果较差;对于服务端动态计算运动轨迹,其依赖于服务端的计算,大大增加了服务端的运算压力,增加了服务端的运算成本、性能开销。
发明内容
本发明实施例是提供一种虚拟对象的掉落处理方法、装置、电子设备以及计算机可读存储介质,以解决或部分解决游戏中虚拟对象的掉落处理过程中存在运动轨迹单一、表现效果差以及服务端运算压力大的问题。
本发明实施例公开了一种虚拟对象的掉落处理方法,包括:
响应于物品掉落指令,确定与所述物品掉落指令对应的虚拟对象,并获取所述虚拟对象对应的物品参数,所述虚拟对象对应一对象坐标系,所述物品参数为基于所述对象坐标系确定的参数;
根据所述物品参数,确定所述虚拟对象中各个顶点在所述对象坐标系下的顶点坐标,并构建与所述顶点坐标对应的虚拟对象模型;
获取服务端发送的所述虚拟对象在游戏场景中的掉落点,并确定与所述掉落点对应的运动参数;
根据所述运动参数控制所述虚拟对象模型以所述掉落点为起点执行对应的掉落运动。
可选地,所述物品参数至少包括基于所述虚拟对象的原点构建的对象坐标系下的原点坐标、各个所述顶点在所述对象坐标系下与所述原点之间的顶点距离、以及各个所述顶点与所述对象坐标系中坐标轴之间的坐标轴夹角,所述根据所述物品参数,确定所述虚拟对象中各个顶点在所述对象坐标系下的顶点坐标,包括:
采用所述顶点距离以及所述坐标轴夹角,计算所述虚拟对象中各个顶点在所述对象坐标系下的顶点坐标。
可选地,所述坐标轴夹角包括所述顶点和所述原点之间的连线与y轴之间的y轴夹角、以及所述顶点投影至x轴和z轴所构成平面的投影点和所述原点之间的连线与所述z轴之间的z轴夹角,所述采用所述顶点距离以及所述坐标轴夹角,计算所述虚拟对象中各个顶点在所述对象坐标系下的顶点坐标,包括:
获取所述y轴夹角对应的第一正弦值和第一余弦值,以及所述z轴夹角对应的第二正弦值和第二余弦值;
采用所述顶点距离、所述第一正弦值与所述第二正弦值,计算所述顶点在所述对象坐标系下的x轴坐标;
采用所述顶点距离与所述第一余弦值,计算所述顶点在所述对象坐标系下的y轴坐标;
采用所述顶点距离、所述第一正弦值与所述第二余弦值,计算所述顶点在所述对象坐标系下的z轴坐标。
可选地,所述游戏场景对应于场景坐标系,所述掉落点对应于所述场景坐标系中的目标坐标,所述确定与所述掉落点对应的运动参数,包括:
采用所述目标坐标,计算针对所述虚拟对象的随机种子值;
获取与所述虚拟对象对应的运动参数范围;
采用所述随机种子值计算位于所述运动参数范围的运动参数。
可选地,所述运动参数范围至少包括力值范围、水平角度范围以及转速范围,所述采用所述随机种子值计算位于所述运动参数范围的运动参数,包括:
采用所述随机种子值计算位于所述抛出力值、位于所述水平角度范围的抛出角度以及位于所述转速范围的转动速度。
可选地,所述根据所述运动参数控制所述虚拟对象模型以所述掉落点为起点执行对应的掉落运动,包括:
沿所述抛出角度按照所述转动速度和所述抛出力值控制所述虚拟对象模型以所述掉落点为起点执行对应的掉落运动。
可选地,所述获取与所述虚拟对象对应的运动参数范围,包括:
获取所述虚拟对象的体积信息以及与所述体积信息对应的目标运动参数范围,不同的体积信息对应不同的运动参数范围。
本发明实施例还公开了一种虚拟对象的掉落处理装置,包括:
物品参数获取模块,用于响应于物品掉落指令,确定与所述物品掉落指令对应的虚拟对象,并获取所述虚拟对象对应的物品参数,所述虚拟对象对应一对象坐标系,所述物品参数为基于所述对象坐标系确定的参数;
模型构建模块,用于根据所述物品参数,确定所述虚拟对象中各个顶点在所述对象坐标系下的顶点坐标,并构建与所述顶点坐标对应的虚拟对象模型;
运动参数确定模块,用于获取服务端发送的所述虚拟对象在游戏场景中的掉落点,并确定与所述掉落点对应的运动参数;
掉落运动执行模块,用于根据所述运动参数控制所述虚拟对象模型以所述掉落点为起点执行对应的掉落运动。
可选地,所述物品参数至少包括基于所述虚拟对象的原点构建的对象坐标系下的原点坐标、各个所述顶点在所述对象坐标系下与所述原点之间的顶点距离、以及各个所述顶点与所述对象坐标系中坐标轴之间的坐标轴夹角,所述模型构建模块具体用于:
采用所述顶点距离以及所述坐标轴夹角,计算所述虚拟对象中各个顶点在所述对象坐标系下的顶点坐标。
可选地,所述坐标轴夹角包括所述顶点和所述原点之间的连线与y轴之间的y轴夹角、以及所述顶点投影至x轴和z轴所构成平面的投影点和所述原点之间的连线与所述z轴之间的z轴夹角,所述模型构建模块具体用于:
获取所述y轴夹角对应的第一正弦值和第一余弦值,以及所述z轴夹角对应的第二正弦值和第二余弦值;
采用所述顶点距离、所述第一正弦值与所述第二正弦值,计算所述顶点在所述对象坐标系下的x轴坐标;
采用所述顶点距离与所述第一余弦值,计算所述顶点在所述对象坐标系下的y轴坐标;
采用所述顶点距离、所述第一正弦值与所述第二余弦值,计算所述顶点在所述对象坐标系下的z轴坐标。
可选地,所述游戏场景对应于场景坐标系,所述运动参数确定模块具体用于:
采用所述目标坐标,计算针对所述虚拟对象的随机种子值;
获取与所述虚拟对象对应的运动参数范围;
采用所述随机种子值计算位于所述运动参数范围的运动参数。
可选地,所述运动参数范围至少包括力值范围、水平角度范围以及转速范围,所述运动参数确定模块具体用于:
采用所述随机种子值计算位于所述抛出力值、位于所述水平角度范围的抛出角度以及位于所述转速范围的转动速度。
可选地,所述掉落运动执行模块具体用于:
沿所述抛出角度按照所述转动速度和所述抛出力值控制所述虚拟对象模型以所述掉落点为起点执行对应的掉落运动。
可选地,所述运动参数确定模块具体用于:
获取所述虚拟对象的体积信息以及与所述体积信息对应的目标运动参数范围,不同的体积信息对应不同的运动参数范围。
本发明实施例还公开了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口以及所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行存储器上所存放的程序时,实现如本发明实施例所述的方法。
本发明实施例还公开了一种计算机可读存储介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如本发明实施例所述的方法。
本发明实施例包括以下优点:
在本发明实施例中,在游戏中,在物品掉落场景中,游戏客户端可以响应于物品掉落指令,确定与物品掉落指令对应的虚拟对象,并获取虚拟对象对应的物品参数,虚拟对象对应一对象坐标系,物品参数为基于对象坐标系确定的参数,接着根据物品参数,确定虚拟对象中各个顶点在对象坐标系下的顶点坐标,并构建与顶点坐标对应的虚拟对象模型,通过创建与虚拟对象贴合的模型,可以避免游戏中物品掉落过程中发生碰撞时,模型陷入、穿模、浮空等情况,提高了物品掉落的真实度,优化了表现效果,同时游戏客户端可以获取服务端发送的虚拟对象在游戏场景中的掉落点,并确定与掉落点对应的运动参数,然后再根据运动参数控制虚拟对象模型以掉落点为起点执行对应的掉落运动,一方面由客户端执行运动轨迹的运算,可以有效地降低服务端的运算压力,另一方面基于相同掉落点所确定的运动参数,使得每个客户端计算的运动轨迹均是相同的,从而保证了同一个物品在不同客户端中的掉落过程均是相同的,保证了游戏中物品掉落运动轨迹的同步性。
附图说明
图1是本发明实施例中提供的一种虚拟对象的掉落处理方法的步骤流程图;
图2是本发明实施例中提供的对象坐标系的示意图;
图3是本发明实施例中提供的虚拟对象的示意图;
图4是本发明实施例中提供的一种虚拟对象的掉落处理装置的结构框图;
图5是本发明实施例中提供的一种电子设备的框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
作为一种示例,对于游戏中的物品掉落,通常可以通过如下方式实现游戏场景中的物品掉落:1、掉落物直接在地面生成,在游戏中boss死亡到物品生成之间播放固定的轨迹特效来做过渡;2、由服务端统一进行运动轨迹模拟,在游戏中boss死亡时,由服务端计算出物品的运动轨迹,然后把物品的当前位置以运动轨迹实时同步给各个客户端,确保各个客户端看到物品掉落的轨迹及位置是一致的。然而,对于第一种方案,其优点是实现简单,掉落物的位置都是静止的,直接生成出来各个客户端位置一定是同步的。但是它的缺点也很明显,就是缺少物品在空中和落地后的物理运动轨迹。即使通过轨迹特效来做弥补,轨迹特效也是固定的,没法有动态的表现,表现效果欠佳;对于第二种方案,其虽然能够模拟出掉落物物品的运动轨迹,但也仅仅只能模拟出简单的运动轨迹,例如垂直下落、上抛、平抛等运动,而对于一些精细复杂的运动轨迹:例如落地后,碰到斜面掉落物物品需要反弹,动能衰减,翻滚直至停止的精细表现就比较无力了,并且其也依赖于服务端的运算,容易增加服务端的运算压力。
对此,本发明的核心发明点之一在于应用于游戏客户端,在游戏过程中,当发生物品掉落时,游戏客户端可以响应于物品掉落指令,确定与物品掉落指令对应的虚拟对象,接着根据虚拟对象对应的物品参数创建与其匹配的虚拟对象模型,该虚拟对象模型可以为游戏场景中玩家可见、可操作的模型,通过创建与虚拟对象贴合的模型,可以避免游戏中物品掉落过程中发生碰撞时,模型陷入、穿模、浮空等情况,提高了物品掉落的真实度,优化了表现效果,同时在创建虚拟对象模型的同时,游戏客户端可以获取服务端发送的与虚拟对象对应的掉落点,然后基于该掉落点确定模型在游戏场景中的运动参数,并根据运动参数控制虚拟对象模型以掉落点为起点执行对应的掉落运动,从而一方面由客户端执行运动轨迹的运算,可以有效地降低服务端的运算压力,另一方面基于相同掉落点所确定的运动参数,使得每个客户端计算的运动轨迹均是相同的,从而保证了同一个物品在不同客户端中的掉落过程均是相同的,保证了游戏中物品掉落运动轨迹的同步性。
为了使本领域技术人员更好地理解本发明实施例的技术方案,下面对本发明实施例中涉及的部分技术特征进行解释、说明:
虚拟对象,其可以为游戏中的虚拟物品,例如,美术人员设计的与游戏场景、游戏玩法等关联的美术模型,对于这种美术模型,其在游戏中玩家是看不见且不可操作的。对此,在物品掉落的过程中,可以先确定需要掉落什么物品,接着创建与该物品对应的物理刚体,即虚拟对象模型,该模型在游戏场景中,玩家可见、可操作。
对象坐标系,对于每个虚拟对象,其均对应一个原点,则可以以该原点建立与该虚拟对象对应的对象坐标系,不同的虚拟对象可以对应不同的对象坐标系。相应的,场景坐标系则可以为游戏场景所对应的空间坐标系,一个游戏场景仅对应一个空间坐标系。
具体的,参照图1,示出了本发明实施例中提供的一种虚拟对象的掉落处理方法的步骤流程图,具体可以包括如下步骤:
步骤101,响应于物品掉落指令,确定与所述物品掉落指令对应的虚拟对象,并获取所述虚拟对象对应的物品参数,所述虚拟对象对应一对象坐标系,所述物品参数为基于所述对象坐标系确定的参数;
在本发明实施例中,可以应用于游戏客户端(下述客户端),其可以为运行在电子设备上的应用程序,在游戏过程中,客户端可以通过与服务端进行相应的数据交互以实现相应的游戏内容。
在游戏中,对于物品掉落,其可以包括玩家在游戏中击杀对应的游戏boss或敌方玩家角色、对游戏场景中的某个资源对象(如矿石、树木等)进行采集、开启宝箱等在游戏场景中掉落的物品,则物品掉落指令可以包括资源对象掉落指令以及战利品掉落指令等,分别对应游戏中不同的物品掉落场景。
在具体实现中,当游戏中出现物品掉落时,服务端可以向客户端发送物品掉落指令,接着客户端可以确定与该物品掉落指令对应的虚拟对象,并获取该虚拟对象对应的物品参数。对于该虚拟对象,其当前还不是在游戏场景中向玩家展示的模型,而是确定需要在游戏场景掉落什么物品,因此,为了能够在游戏场景展示对应的模型以便玩家对模型进行拾取等操作,则需要根据虚拟对象对应的物品参数构建合适的虚拟对象模型。
步骤102,根据所述物品参数,确定所述虚拟对象中各个顶点在所述对象坐标系下的顶点坐标,并构建与所述顶点坐标对应的虚拟对象模型;
对于虚拟对象,其为玩家在游戏中不可见且不可操作的对象,则为了让虚拟对象能够可见以及可操作性(即在游戏场景中有物理碰撞),需要给虚拟对象加上对应的物理刚体,使其能够被游戏场景中的地面承托住。其中,物理刚体的形状可以包括基础的几何形状,如立方体,球体,胶囊体,也可以是自定义的多边形。例如,假设虚拟对象为一个四面体水晶,则可以给该四面体水晶添加一个基础的几何形状体,例如球体等,则四面体水晶在游戏场景中便能有碰撞,掉落至游戏场景的地面时能够静止下来。
需要说明的是,对于虚拟对象,其可以为美术人员设计的美术模型,则在该美术模型中添加了对应的物理刚体后,可以得到能够在游戏场景中以该美术模型所对应的外观以及具备碰撞效果的虚拟对象模型,玩家可以在游戏对该虚拟对象模型进行操作,如拾取等。
其中,在添加物理刚体的过程中,若物理刚体与虚拟对象之间不够贴合,当物理刚体的体积小于虚拟对象的体积时,则当构建的虚拟对象模型掉落至游戏场景的地面上时,物理刚体虽然被游戏地面承托住了,当虚拟对象模型会出现一部分陷入至地面下,并且,考虑到虚拟对象模型在掉落至地方上会碰撞并不断反弹直至静止在地面上,而碰撞是基于物理刚体,则每次碰撞均会发生虚拟对象模型陷入墙体或地面的情况,严重影响了游戏中虚拟对象的表现效果;当物理刚体的体积大于虚拟对象的体积时,则当构建的虚拟对象模型掉落至游戏场景的地面上时,会出现虚拟对象模型浮空的情况,同样影响了游戏中虚拟对象的表现效果。对此,需要保证物理刚体与虚拟对象之间正好贴合,以保证游戏中虚拟对象的表现效果。
对于虚拟对象,美术人员在构建虚拟对象(该美术模型)时,均可以以一个原点为基准点进行构建,则不同的虚拟对象可以对应不同的原点,不同的虚拟对象可以对应不同的对象坐标系,本发明对此不作限制。
在具体实现中,物品参数至少包括基于虚拟对象的原点构建的对象坐标系下的原点坐标、各个顶点在对象坐标系下与原点之间的顶点距离、以及各个顶点与对象坐标系中坐标轴之间的坐标轴夹角,则客户端可以采用顶点距离以及坐标轴夹角,计算虚拟对象中各个顶点在对象坐标系下的顶点坐标,然后基于顶点坐标创建与虚拟对象贴合的物理刚体,并将该物理刚体与虚拟对象进行结合得到对应的虚拟对象模型,以便玩家能够在游戏中对虚拟对象模型进行操作。
需要说明的是,对于每个虚拟对象,其均对应一个原点且包括若干个顶点,则在该虚拟对象所对应的对象坐标系下,可以依次获取各个顶点与原点之间的顶点距离,同时将顶点与原点之间进行连线,得到连线与坐标轴之间的坐标轴夹角,以便根据顶点距离和坐标轴夹角计算各个顶点在对象坐标系下的顶点坐标。
在具体实现中,坐标轴夹角可以包括顶点和原点之间的连线与y轴之间的y轴夹角、以及顶点投影至x轴和z轴所构成平面的投影点和原点之间的连线与z轴之间的z轴夹角,则针对每个顶点,客户端可以先获取该顶点对应的y轴夹角对应的第一正弦值和第一余弦值,以及z轴夹角对应的第二正弦值和第二余弦值,接着采用顶点距离、第一正弦值与第二正弦值,计算顶点在对象坐标系下的x轴坐标,采用顶点距离与第一余弦值,计算顶点在对象坐标系下的y轴坐标,采用顶点距离、第一正弦值与第二余弦值,计算顶点在对象坐标系下的z轴坐标,从而得到顶点在对象坐标系下的顶点坐标。
在一种示例中,参照图2,示出了本发明实施例中提供的对象坐标系的示意图,其中,可以将顶点与坐标系原点o之间的距离定义为r,顶点与y轴之间的夹角定义为θ,顶点投影至xoz平面的投影点与z轴之间的夹角定义为ψ,则根据三维坐标的计算公式,可以得到虚拟对象上任意顶点P的坐标可以为:x=r sinθsinψ,y=r cosθ,z=r sinθcosψ。
在得到虚拟对象上每个顶点对应的顶点坐标后,可以将每个顶点对应的顶点坐标传入游戏客户端所对应的物理引擎中用于创建物理刚体的接口,则物理引擎可以基于各个顶点对应的顶点坐标创建与虚拟对象贴合的不规则多面体物理刚体,然后可以将该物理刚体与虚拟对象进行组合(以虚拟对象为外观,以物理刚体为“填充内容”组合得到能够展示于游戏场景中且支持玩家进行操作的虚拟对象模型),从而通过创建与虚拟对象贴合的模型,可以避免游戏中物品掉落过程中发生碰撞时,模型陷入、穿模、浮空等情况,提高了物品掉落的真实度,优化了表现效果。
步骤103,获取服务端发送的所述虚拟对象在游戏场景中的掉落点,并确定与所述掉落点对应的运动参数;
在构建虚拟对象对应的虚拟对象模型的同时,客户端还可以获取服务端发送的虚拟对象在游戏场景中的掉落点,并确定与掉落点对应的运动参数,以便根据运动参数控制虚拟对象模型在游戏场景中执行对应的运动。可选地,对于掉落点,不同的掉落场景,其对应的掉落点不同,例如,当为资源掉落时,则掉落点可以为资源对象在游戏场景中的坐标;当为击杀游戏boss或敌方玩家角色时,则掉落点可以为游戏boss或敌方玩家角色在游戏中死亡时的坐标等,上述坐标为基于游戏场景对应的场景坐标系中的坐标。
在具体实现中,对于不同的客户端,其接收到的均是相同的掉落点,该掉落点可以为场景坐标系中的目标坐标,则客户端可以采用目标坐标,计算针对虚拟对象的随机种子值,并获取与虚拟对象对应的运动参数范围,然后采用随机种子值计算位于运动参数范围的运动参数。其中,对于随机种子值,不同的坐标可以生成不同的数值,则由于每个客户端接收到的掉落点均是相同的,则所生成的随机种子值也是相同的,具体的,考虑到虚拟对象模型在游戏场景的运动涉及抛出力值、抛出方向以及转速等,则在基于随机种子值确定抛出力值、抛出方向以及转速等运动参数的过程中,可以通过约束抛出力值的范围、抛出方向的角度以及转速的上下限值等,使得客户端可以采用随机种子值计算位于抛出力值、位于水平角度范围的抛出角度以及位于转速范围的转动速度。
其中,抛出力值可以为虚拟对象模型从掉落点抛出时的力(单位为:N),抛出方向可以为水平方向区间[0,360°],转速可以为虚拟对象模型抛出时的转动速度等。对于这些运动参数范围,一方面可以基于不同的虚拟对象进行设置,另一方面也可以根据游戏中的实际需要进行设置。可选地,为了提高虚拟对象模型掉落运动的真实性,客户端可以根据虚拟对象的体积信息获取相应的运动参数范围,例如,体积越大则抛出力值越大、抛出方向越低、转速越低;体积越小则抛出力值越小、抛出方向越高、转速越高等,本发明对此不作限制。
在一种示例中,为了使得各个客户端虚拟对象模型的运动规则一致,则需要保证虚拟对象模型抛体运动的输入参数:抛出力、抛出的方向、转速等一致,且每次输入参数尽可能随机,对此,在得到掉落点所对应的目标坐标后,可以基于该目标坐标计算对应的随机种子值,随机种子计算公式如下:随机种子seed=出射点pos.x*100+出射点pos.y*10+出射点pos.z,从而由于每个客户端得到的掉落点均是一致的,所以计算出来的随机种子的值也就是一致的,进而根据这个计算出来一致的随机种子,随机出来的力、抛出的方向、转速都是一致的。
需要说明的是,对于上述计算运动参数的过程,除了抛出力值外,还可以获取对应的重力值,通过重力值可以保证虚拟对象模型在游戏场景中掉落运动始终是向下,并最终静止在游戏场景的地面上。具体的,重力值可以为一个固定值,且大于抛出力值,其对应的方向向下,即场景坐标系中y轴的负方向,而抛出力值对应的是y轴的正方向,当触发抛体运动后,两个力相叠加时,确保最后加速度在垂直方向是一个负值,让掉落物在垂直方向上是往下坠的。如果没有重力的保证,倘若加速度垂直方向是一个正值,则掉落物就不是掉落的表现了,而是会向上飞,且越飞越快飞出场景,并不符合游戏中虚拟物品的掉落。
步骤104,根据所述运动参数控制所述虚拟对象模型以所述掉落点为起点执行对应的掉落运动。
在具体实现中,客户端在计算出虚拟对象对应的抛出力值、抛出方向以及转速后,客户端可以沿抛出角度按照转动速度和抛出力值控制虚拟对象模型以掉落点为起点执行对应的掉落运动,从而一方面由客户端执行运动轨迹的运算,可以有效地降低服务端的运算压力,另一方面基于相同掉落点所确定的运动参数,使得每个客户端计算的运动轨迹均是相同的,从而保证了同一个物品在不同客户端中的掉落过程均是相同的,保证了游戏中物品掉落运动轨迹的同步性。
对于每个客户端,基于相同的抛体运动输入参数,可以得到了相同的运动轨迹。在虚拟对象模型触碰到地面或者斜面后,由于各个客户端物理引擎模拟的输出结果都是一致的,又能保证反弹运动的输入也是一致的,在下一轮的斜抛运动又能保证轨迹一致。如此往复直至物品停止运动,整个运动轨迹都能保持一致。这样就实现了不规则多面体在各个客户端掉落轨迹相同且位置一致的效果。
在本发明实施例中,在游戏中,在物品掉落场景中,游戏客户端可以响应于物品掉落指令,确定与物品掉落指令对应的虚拟对象,并获取虚拟对象对应的物品参数,虚拟对象对应一对象坐标系,物品参数为基于对象坐标系确定的参数,接着根据物品参数,确定虚拟对象中各个顶点在对象坐标系下的顶点坐标,并构建与顶点坐标对应的虚拟对象模型,通过创建与虚拟对象贴合的模型,可以避免游戏中物品掉落过程中发生碰撞时,模型陷入、穿模、浮空等情况,提高了物品掉落的真实度,优化了表现效果,同时游戏客户端可以获取服务端发送的虚拟对象在游戏场景中的掉落点,并确定与掉落点对应的运动参数,然后再根据运动参数控制虚拟对象模型以掉落点为起点执行对应的掉落运动,一方面由客户端执行运动轨迹的运算,可以有效地降低服务端的运算压力,另一方面基于相同掉落点所确定的运动参数,使得每个客户端计算的运动轨迹均是相同的,从而保证了同一个物品在不同客户端中的掉落过程均是相同的,保证了游戏中物品掉落运动轨迹的同步性。
为了使本领域技术人员更好地理解本发明实施例的技术方案,下面通过一个例子进行示例性说明:
假设虚拟对象是一个四面体水晶,则为了让四面体水晶能够游戏中可见以及可操作,以及具备对应的物理碰撞,则需要给四面体水晶添加对应的物理刚体,使其能够被游戏场景的地面承托住。
在具体实现中,当触发物品掉落时,服务端可以通知每个参与玩法的客户端创建1个掉落物物品。与此同时,服务端还可以生成这个掉落物的出射点pos,它是一个三维向量(x,y,z),该出射点也会跟随创建掉落物的信号同步到各个客户端。
对于客户端,其可以先构建与掉落物对应的物体刚体,参照图3,示出了本发明实施例中提供的虚拟对象的示意图,当掉落物为四面体水晶时,且该四面体水晶的原点位于底面且正好有一个顶点位于y轴,假设棱长为a,则可以得到其中一个顶点的坐标为(0,
Figure BDA0003802150990000131
0),则针对位于xoz平面上的三个顶点,由于底面是等边三角形,也就是角度是60度,那么剩下三个点也就得到了:
Figure BDA0003802150990000132
Figure BDA0003802150990000133
Figure BDA0003802150990000134
那么对应的顶点数据就是:
Figure BDA0003802150990000135
再将棱长换为实际三角块的数据,即可得到完美贴合的四面体水晶物理刚体:
Figure BDA0003802150990000141
通过上述过程得到虚拟对象各个顶点对应的顶点坐标之后,可以将顶点坐标输入游戏所对应的物理引擎进行物理刚体的生成,并将物理刚体与掉落物进行结合得到对应的掉落物模型(即四面体水晶模型)。
当四面体模型构建完毕后,四面体水晶模型就会在出射点准备,准备根据填入的力、抛出的方向、转速等运动参数执行对应的抛体运动。其中,对于运动参数,为了使得各个客户端掉落物的运动规则一致,也就要保证掉落物抛体运动的输入参数:力、抛出的方向、转速一致;且每次输入参数尽可能随机,随机种子计算公式为:随机种子seed=出射点pos.x*100+出射点pos.y*10+出射点pos.z。由于每个客户端拿到的出射点都是一致的,所以计算出来的随机种子的值也就是一致的。根据这个计算出来一致的随机种子,随机出来的力、抛出的方向、转速都是一致的。
具体的,可以先定义力、方向、转速值的范围。例如力的大小,区间定义在[0,10]牛,方向定义为水平方向区间[0,360]度,转速区间定义[0,5]m/s等。接着得到的随机力大小、抛出的方向度数、转速大小都一定在对应的区间内,根据随机种子的数值不同,取的值就不一样,例如:随机种子得到的数值是13674,则根据算法的映射关系,得到的力的大小为5.73牛,角度为132度,转速为2.81m/s。
客户端在计算出虚拟对象对应的抛出力值、抛出方向以及转速后,客户端可以沿抛出角度按照转动速度和抛出力值控制虚拟对象模型以掉落点为起点执行对应的掉落运动,从而一方面由客户端执行运动轨迹的运算,可以有效地降低服务端的运算压力,另一方面基于相同掉落点所确定的运动参数,使得每个客户端计算的运动轨迹均是相同的,从而保证了同一个物品在不同客户端中的掉落过程均是相同的,保证了游戏中物品掉落运动轨迹的同步性。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图4,示出了本发明实施例中提供的一种虚拟对象的掉落处理装置的结构框图,具体可以包括如下模块:
物品参数获取模块401,用于响应于物品掉落指令,确定与所述物品掉落指令对应的虚拟对象,并获取所述虚拟对象对应的物品参数,所述虚拟对象对应一对象坐标系,所述物品参数为基于所述对象坐标系确定的参数;
模型构建模块402,用于根据所述物品参数,确定所述虚拟对象中各个顶点在所述对象坐标系下的顶点坐标,并构建与所述顶点坐标对应的虚拟对象模型;
运动参数确定模块403,用于获取服务端发送的所述虚拟对象在游戏场景中的掉落点,并确定与所述掉落点对应的运动参数;
掉落运动执行模块404,用于根据所述运动参数控制所述虚拟对象模型以所述掉落点为起点执行对应的掉落运动。
在一种可选实施例中,所述物品参数至少包括基于所述虚拟对象的原点构建的对象坐标系下的原点坐标、各个所述顶点在所述对象坐标系下与所述原点之间的顶点距离、以及各个所述顶点与所述对象坐标系中坐标轴之间的坐标轴夹角,所述模型构建模块402具体用于:
采用所述顶点距离以及所述坐标轴夹角,计算所述虚拟对象中各个顶点在所述对象坐标系下的顶点坐标。
在一种可选实施例中,所述坐标轴夹角包括所述顶点和所述原点之间的连线与y轴之间的y轴夹角、以及所述顶点投影至x轴和z轴所构成平面的投影点和所述原点之间的连线与所述z轴之间的z轴夹角,所述模型构建模块402具体用于:
获取所述y轴夹角对应的第一正弦值和第一余弦值,以及所述z轴夹角对应的第二正弦值和第二余弦值;
采用所述顶点距离、所述第一正弦值与所述第二正弦值,计算所述顶点在所述对象坐标系下的x轴坐标;
采用所述顶点距离与所述第一余弦值,计算所述顶点在所述对象坐标系下的y轴坐标;
采用所述顶点距离、所述第一正弦值与所述第二余弦值,计算所述顶点在所述对象坐标系下的z轴坐标。
在一种可选实施例中,所述游戏场景对应于场景坐标系,所述运动参数确定模块403具体用于:
采用所述目标坐标,计算针对所述虚拟对象的随机种子值;
获取与所述虚拟对象对应的运动参数范围;
采用所述随机种子值计算位于所述运动参数范围的运动参数。
在一种可选实施例中,所述运动参数范围至少包括力值范围、水平角度范围以及转速范围,所述运动参数确定模块403具体用于:
采用所述随机种子值计算位于所述抛出力值、位于所述水平角度范围的抛出角度以及位于所述转速范围的转动速度。
在一种可选实施例中,所述掉落运动执行模块404具体用于:
沿所述抛出角度按照所述转动速度和所述抛出力值控制所述虚拟对象模型以所述掉落点为起点执行对应的掉落运动。
在一种可选实施例中,所述运动参数确定模块403具体用于:
获取所述虚拟对象的体积信息以及与所述体积信息对应的目标运动参数范围,不同的体积信息对应不同的运动参数范围。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
另外,本发明实施例还提供了一种电子设备,包括:处理器,存储器,存储在存储器上并可在处理器上运行的计算机程序,该计算机程序被处理器执行时实现上述虚拟对象的掉落处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述虚拟对象的掉落处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(Read-Only Memory,简称ROM)、随机存取存储器(Random AccessMemory,简称RAM)、磁碟或者光盘等。
图5为实现本发明各个实施例的一种电子设备的硬件结构示意图。
该电子设备500包括但不限于:射频单元501、网络模块502、音频输出单元503、输入单元504、传感器505、显示单元506、用户输入单元507、接口单元508、存储器509、处理器510、以及电源511等部件。本领域技术人员可以理解,本发明实施例中所涉及的电子设备结构并不构成对电子设备的限定,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。在本发明实施例中,电子设备包括但不限于手机、平板电脑、笔记本电脑、掌上电脑、车载终端、可穿戴设备、以及计步器等。
应理解的是,本发明实施例中,射频单元501可用于收发信息或通话过程中,信号的接收和发送,具体的,将来自基站的下行数据接收后,给处理器510处理;另外,将上行的数据发送给基站。通常,射频单元501包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元501还可以通过无线通信***与网络和其他设备通信。
电子设备通过网络模块502为用户提供了无线的宽带互联网访问,如帮助用户收发电子邮件、浏览网页和访问流式媒体等。
音频输出单元503可以将射频单元501或网络模块502接收的或者在存储器509中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元503还可以提供与电子设备500执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等等)。音频输出单元503包括扬声器、蜂鸣器以及受话器等。
输入单元504用于接收音频或视频信号。输入单元504可以包括图形处理器(Graphics Processing Unit,GPU)5041和麦克风5042,图形处理器5041对在视频捕获模式或图像捕获模式中由图像捕获装置(如摄像头)获得的静态图片或视频的图像数据进行处理。处理后的图像帧可以显示在显示单元506上。经图形处理器5041处理后的图像帧可以存储在存储器509(或其它存储介质)中或者经由射频单元501或网络模块502进行发送。麦克风5042可以接收声音,并且能够将这样的声音处理为音频数据。处理后的音频数据可以在电话通话模式的情况下转换为可经由射频单元501发送到移动通信基站的格式输出。
电子设备500还包括至少一种传感器505,比如光传感器、运动传感器以及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板5061的亮度,接近传感器可在电子设备500移动到耳边时,关闭显示面板5061和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别电子设备姿态(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;传感器505还可以包括指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿度计、温度计、红外线传感器等,在此不再赘述。
显示单元506用于显示由用户输入的信息或提供给用户的信息。显示单元506可包括显示面板5061,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板5061。
用户输入单元507可用于接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元507包括触控面板5071以及其他输入设备5072。触控面板5071,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板5071上或在触控面板5071附近的操作)。触控面板5071可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器510,接收处理器510发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板5071。除了触控面板5071,用户输入单元507还可以包括其他输入设备5072。具体地,其他输入设备5072可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
进一步的,触控面板5071可覆盖在显示面板5061上,当触控面板5071检测到在其上或附近的触摸操作后,传送给处理器510以确定触摸事件的类型,随后处理器510根据触摸事件的类型在显示面板5061上提供相应的视觉输出。可以理解的是,在一种实施例中,触控面板5071与显示面板5061是作为两个独立的部件来实现电子设备的输入和输出功能,但是在某些实施例中,可以将触控面板5071与显示面板5061集成而实现电子设备的输入和输出功能,具体此处不做限定。
接口单元508为外部装置与电子设备500连接的接口。例如,外部装置可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、存储卡端口、用于连接具有识别模块的装置的端口、音频输入/输出(I/O)端口、视频I/O端口、耳机端口等等。接口单元508可以用于接收来自外部装置的输入(例如,数据信息、电力等等)并且将接收到的输入传输到电子设备500内的一个或多个元件或者可以用于在电子设备500和外部装置之间传输数据。
存储器509可用于存储软件程序以及各种数据。存储器509可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器509可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器510是电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器509内的软件程序和/或模块,以及调用存储在存储器509内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。处理器510可包括一个或多个处理单元;优选的,处理器510可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器510中。
电子设备500还可以包括给各个部件供电的电源511(比如电池),优选的,电源511可以通过电源管理***与处理器510逻辑相连,从而通过电源管理***实现管理充电、放电、以及功耗管理等功能。
另外,电子设备500包括一些未示出的功能模块,在此不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本发明的保护之内。
本领域普通技术人员可以意识到,结合本发明实施例中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (10)

1.一种虚拟对象的掉落处理方法,其特征在于,包括:
响应于物品掉落指令,确定与所述物品掉落指令对应的虚拟对象,并获取所述虚拟对象对应的物品参数,所述虚拟对象对应一对象坐标系,所述物品参数为基于所述对象坐标系确定的参数;
根据所述物品参数,确定所述虚拟对象中各个顶点在所述对象坐标系下的顶点坐标,并构建与所述顶点坐标对应的虚拟对象模型;
获取服务端发送的所述虚拟对象在游戏场景中的掉落点,并确定与所述掉落点对应的运动参数;
根据所述运动参数控制所述虚拟对象模型以所述掉落点为起点执行对应的掉落运动。
2.根据权利要求1所述的方法,其特征在于,所述物品参数至少包括基于所述虚拟对象的原点构建的对象坐标系下的原点坐标、各个所述顶点在所述对象坐标系下与所述原点之间的顶点距离、以及各个所述顶点与所述对象坐标系中坐标轴之间的坐标轴夹角,所述根据所述物品参数,确定所述虚拟对象中各个顶点在所述对象坐标系下的顶点坐标,包括:
采用所述顶点距离以及所述坐标轴夹角,计算所述虚拟对象中各个顶点在所述对象坐标系下的顶点坐标。
3.根据权利要求2所述的方法,其特征在于,所述坐标轴夹角包括所述顶点和所述原点之间的连线与y轴之间的y轴夹角、以及所述顶点投影至x轴和z轴所构成平面的投影点和所述原点之间的连线与所述z轴之间的z轴夹角,所述采用所述顶点距离以及所述坐标轴夹角,计算所述虚拟对象中各个顶点在所述对象坐标系下的顶点坐标,包括:
获取所述y轴夹角对应的第一正弦值和第一余弦值,以及所述z轴夹角对应的第二正弦值和第二余弦值;
采用所述顶点距离、所述第一正弦值与所述第二正弦值,计算所述顶点在所述对象坐标系下的x轴坐标;
采用所述顶点距离与所述第一余弦值,计算所述顶点在所述对象坐标系下的y轴坐标;
采用所述顶点距离、所述第一正弦值与所述第二余弦值,计算所述顶点在所述对象坐标系下的z轴坐标。
4.根据权利要求1所述的方法,其特征在于,所述游戏场景对应于场景坐标系,所述掉落点对应于所述场景坐标系中的目标坐标,所述确定与所述掉落点对应的运动参数,包括:
采用所述目标坐标,计算针对所述虚拟对象的随机种子值;
获取与所述虚拟对象对应的运动参数范围;
采用所述随机种子值计算位于所述运动参数范围的运动参数。
5.根据权利要求4所述的方法,其特征在于,所述运动参数范围至少包括力值范围、水平角度范围以及转速范围,所述采用所述随机种子值计算位于所述运动参数范围的运动参数,包括:
采用所述随机种子值计算位于所述抛出力值、位于所述水平角度范围的抛出角度以及位于所述转速范围的转动速度。
6.根据权利要求5所述的方法,其特征在于,所述根据所述运动参数控制所述虚拟对象模型以所述掉落点为起点执行对应的掉落运动,包括:
沿所述抛出角度按照所述转动速度和所述抛出力值控制所述虚拟对象模型以所述掉落点为起点执行对应的掉落运动。
7.根据权利要求4所述的方法,其特征在于,所述获取与所述虚拟对象对应的运动参数范围,包括:
获取所述虚拟对象的体积信息以及与所述体积信息对应的目标运动参数范围,不同的体积信息对应不同的运动参数范围。
8.一种虚拟对象的掉落处理装置,其特征在于,包括:
物品参数获取模块,用于响应于物品掉落指令,确定与所述物品掉落指令对应的虚拟对象,并获取所述虚拟对象对应的物品参数,所述虚拟对象对应一对象坐标系,所述物品参数为基于所述对象坐标系确定的参数;
模型构建模块,用于根据所述物品参数,确定所述虚拟对象中各个顶点在所述对象坐标系下的顶点坐标,并构建与所述顶点坐标对应的虚拟对象模型;
运动参数确定模块,用于获取服务端发送的所述虚拟对象在游戏场景中的掉落点,并确定与所述掉落点对应的运动参数;
掉落运动执行模块,用于根据所述运动参数控制所述虚拟对象模型以所述掉落点为起点执行对应的掉落运动。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,所述处理器、所述通信接口以及所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行存储器上所存放的程序时,实现如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如权利要求1-7任一项所述的方法。
CN202210994336.9A 2022-08-17 2022-08-17 虚拟对象的掉落处理方法、装置、电子设备及存储介质 Pending CN115337646A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210994336.9A CN115337646A (zh) 2022-08-17 2022-08-17 虚拟对象的掉落处理方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210994336.9A CN115337646A (zh) 2022-08-17 2022-08-17 虚拟对象的掉落处理方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN115337646A true CN115337646A (zh) 2022-11-15

Family

ID=83954950

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210994336.9A Pending CN115337646A (zh) 2022-08-17 2022-08-17 虚拟对象的掉落处理方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN115337646A (zh)

Similar Documents

Publication Publication Date Title
US11471768B2 (en) User interface display method and apparatus, device and computer-readable storage medium
JP7076880B2 (ja) 仮想環境における仮想オブジェクトの姿勢決定方法、装置及び媒体
US9933851B2 (en) Systems and methods for interacting with virtual objects using sensory feedback
CN113559518B (zh) 虚拟模型的交互检测方法、装置、电子设备及存储介质
WO2019205881A1 (zh) 虚拟环境中的信息显示方法、装置、设备及存储介质
CN108153422B (zh) 一种显示对象控制方法和移动终端
US20230360343A1 (en) Method for observing virtual environment, device, and storage medium
US20240226745A9 (en) Method and apparatus for controlling put of virtual resource, computer device, and storage medium
WO2022257690A1 (zh) 在虚拟环境中标记物品的方法、装置、设备及存储介质
JP2024509064A (ja) 位置マークの表示方法及び装置、機器並びにコンピュータプログラム
WO2023103615A1 (zh) 虚拟对象的切换方法、装置、设备、介质及程序产品
CN109407832A (zh) 一种终端设备的控制方法及终端设备
WO2023240925A1 (zh) 虚拟道具的拾取方法、装置、计算机设备和存储介质
CN113426124A (zh) 游戏中的显示控制方法、装置、存储介质及计算机设备
CN109918006A (zh) 一种屏幕控制方法及移动终端
JP2022532044A (ja) ホットスポットマップの表示方法、装置、コンピュータ機器および読み取り可能な記憶媒体
TWI817208B (zh) 確定選中目標的方法及裝置、電腦設備、非臨時性電腦可讀存儲介質及電腦程式產品
CN110420457A (zh) 一种悬浮操作方法、装置、终端和存储介质
CN113082707A (zh) 虚拟对象的提示方法、装置、存储介质及计算机设备
CN115337646A (zh) 虚拟对象的掉落处理方法、装置、电子设备及存储介质
CN110471562B (zh) 一种控制方法、移动终端及计算机可读存储介质
US20230285859A1 (en) Virtual world sound-prompting method, apparatus, device and storage medium
CN112843682B (zh) 数据同步方法、装置、设备及存储介质
CN111208903B (zh) 信息传输方法、穿戴式设备及介质
CN116943215A (zh) 可见虚拟对象的确定方法、装置、设备及可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right

Effective date of registration: 20230902

Address after: Room 2047, Floor 2, No. 24, Lane 315, Fenggu Road, Xuhui District, Shanghai, 200000

Applicant after: Shanghai NetEasy Brilliant Network Technology Co.,Ltd.

Address before: 310052 Building No. 599, Changhe Street Network Business Road, Binjiang District, Hangzhou City, Zhejiang Province, 4, 7 stories

Applicant before: NETEASE (HANGZHOU) NETWORK Co.,Ltd.

TA01 Transfer of patent application right