CN110141862A - 游戏中移动控制的方法及装置、电子设备、存储介质 - Google Patents
游戏中移动控制的方法及装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN110141862A CN110141862A CN201910544543.2A CN201910544543A CN110141862A CN 110141862 A CN110141862 A CN 110141862A CN 201910544543 A CN201910544543 A CN 201910544543A CN 110141862 A CN110141862 A CN 110141862A
- Authority
- CN
- China
- Prior art keywords
- game
- game object
- mobile
- target point
- path
- 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.)
- Granted
Links
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/55—Controlling game characters or game objects based on the game progress
- A63F13/56—Computing the motion of game characters with respect to other game characters, game objects or elements of the game scene, e.g. for simulating the behaviour of a group of virtual soldiers or for path finding
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/55—Controlling game characters or game objects based on the game progress
- A63F13/57—Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
- A63F13/577—Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game using determination of contact between game characters or objects, e.g. to avoid collision between virtual racing cars
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F2300/00—Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
- A63F2300/60—Methods for processing data by generating or executing the game program
- A63F2300/64—Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请实施例提供了游戏中移动控制的方法及装置、电子设备、存储介质,所述方法包括:确定第一游戏对象对应的移动目标点;确定所述移动目标点对应的第一路径,按照所述第一路径控制所述第一游戏对象向所述移动目标点进行移动;在移动的过程中,响应于所述第一游戏对象与第二游戏对象发生碰撞,确定碰撞后的所述第一游戏对象的偏移位置;控制所述第一游戏对象自所述偏移位置向所述移动目标点移动。通过本申请实施例,实现了对游戏对象的移动控制,提升了游戏效果的真实性。
Description
技术领域
本申请涉及游戏领域,特别是涉及游戏中移动控制的方法及装置、电子设备、存储介质。
背景技术
在网络游戏中,当游戏对象进行移动时,不可避免的会出现阻挡,如出现游戏对象与游戏对象之间的阻挡。
在现有技术中,可以直接规避互相阻挡,或者,可以采取动态避让的方式,即游戏对象寻路时将其他游戏对象当作障碍物进行避让,但这两种方式能带来的游戏效果均不够真实。
发明内容
鉴于上述问题,提出了以便提供克服上述问题或者至少部分地解决上述问题的游戏中移动控制的方法及装置、电子设备、存储介质,包括:
一种游戏中移动控制的方法,通过在终端的处理器上执行软件应用渲染得到图形用户界面,所述图形用户界面所显示的内容至少部分地包含一局部或全部所述游戏场景,所述游戏场景中包括至少一第一游戏对象和第二游戏对象,所述方法包括:
确定第一游戏对象对应的移动目标点;
确定所述移动目标点对应的第一路径,按照所述第一路径控制所述第一游戏对象向所述移动目标点进行移动;
在移动的过程中,响应于所述第一游戏对象与第二游戏对象发生碰撞,确定碰撞后的所述第一游戏对象的偏移位置;
控制所述第一游戏对象自所述偏移位置向所述移动目标点移动。
可选地,所述第一路径至少包括两个路点,所述路点用于确定所述第一游戏角色的移动方向;所述控制所述第一游戏对象自所述偏移位置向所述的移动目标点移动的步骤为:
控制所述第一游戏对象自所述偏移位置移动至所述第一路径中的一所述路点,并沿着所述第一路径向所述移动目标点移动。
可选地,所述第一路径包括经过的路点和未经过的路点;所述第一路径中的一所述路点为所述以最近的所述经过的路点确定的下一个所述未经过的路点。
可选地,所述控制所述第一游戏对象自所述偏移位置向所述的移动目标点移动的步骤为:
根据所述偏移位置重新确定所述移动目标点对应的第二路径,按照所述第二路径控制所述第一游戏对象移动至所述移动目标点。
可选地,所述确定第一游戏对象对应的移动目标点包括:
确定接收的标记位置;
判断所述标记位置是否对应一障碍物对象;
若所述标记位置对应一障碍物对象,则确定距离所述标记位置最近的第一位置作为移动目标点。
可选地,所述第一游戏对象具有一移动起始点,所述确定所述移动目标点对应的第一路径的步骤包括:
判断所述移动起始点与所述移动目标点之间是否存在直线路径;
若是,则确定所述直线路径对应的第一路径;
若否,采用预置的寻路算法进行寻路,确定第一路径。
可选地,所述方法还包括:
确定所述第一游戏对象与不可推动对象发生碰撞时,确定所述第一游戏对象和所述不可推动对象对应的圆心向量;
当所述移动目标点在所述圆心向量的左侧时,控制所述第一游戏对象向所述圆心向量的左侧移动;
当所述移动目标点在所述圆心向量的右侧时,控制所述第一游戏对象向所述圆心向量的右侧移动。
可选地,所述方法还包括:
预置一物理引擎;
在所述物理引擎中,建立所述第一游戏对象对应的第一物理实体,以及所述第二游戏对象对应的第二物理实体。
可选地,所述第一游戏对象包括游戏角色对象,所述第二游戏对象包括障碍物对象和/或游戏角色对象;
所述确定碰撞后的所述第一游戏对象的偏移位置的步骤包括::
确定所述第一物理实体对应的第一物理属性;
以及,确定所述第二物理实体对应的第二物理属性;
在所述物理引擎中,采用所述第一物理属性和所述第二物理属性,计算碰撞后的所述第一游戏对象的偏移位置。
可选地,所述第一路径和/或所述第二路径包括由多个寻路网格组成的移动路径,所述方法还包括:
对游戏场景进行网格化,得到多个寻路网格。
可选地,每个寻路网格具有网格信息,所述网格信息至少包括顶点高度、寻路标记。
一种游戏中移动控制的装置,通过在终端的处理器上执行软件应用渲染得到图形用户界面,所述图形用户界面所显示的内容至少部分地包含一局部或全部所述游戏场景,所述游戏场景中包括至少一第一游戏对象和第二游戏对象,所述装置包括:
移动目标点确定模块,用于确定第一游戏对象对应的移动目标点;
第一移动控制模块,用于确定所述移动目标点对应的第一路径,按照所述第一路径,控制所述第一游戏对象向所述移动目标点进行移动;
偏移位置确定模块,用于在移动的过程中,响应于所述第一游戏对象与第二游戏对象发生碰撞,确定碰撞后的所述第一游戏对象的偏移位置;
第二移动控制模块,用于控制所述第一游戏对象自所述偏移位置向所述移动目标点移动。
一种电子设备,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的游戏中移动控制的方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的游戏中移动控制的方法的步骤。
本申请实施例具有以下优点:
在本申请实施例中,通过在游戏的过程中,确定第一游戏对象对应的移动目标点,并确定移动目标点对应的第一路径,按照第一路径,控制所述第一游戏对象进行移动,在移动的过程中,当第一游戏对象与第二游戏对象发生碰撞时,根据物理引擎计算的碰撞结果,确定移动目标点对应的第二路径,然后按照第二路径,控制第一游戏对象移动至移动目标点,实现了对游戏对象的移动控制,提升了游戏效果的真实性。
附图说明
为了更清楚地说明本申请的技术方案,下面将对本申请的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的一种游戏中移动控制的方法的步骤流程图;
图2a是本申请一实施例提供的一种游戏对象移动的示意图;
图2b是本申请一实施例提供的另一种游戏对象移动的示意图;
图2c是本申请一实施例提供的另一种游戏对象移动的示意图;
图3是本申请一实施例提供的一种网格化的示意图;
图4是本申请一实施例提供的另一种游戏对象移动的示意图;
图5是本申请一实施例提供的一种游戏中移动控制的装置的结构示意图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
参照图1,示出了本申请一实施例提供的一种游戏中移动控制的方法的步骤流程图,通过在终端的处理器上执行软件应用渲染得到图形用户界面,该图形用户界面所显示的内容至少部分地包含一局部或全部游戏场景,游戏场景中可以包括至少一第一游戏对象和第二游戏对象。
其中,第一游戏对象可以是玩家通过移动终端进行操控的游戏虚拟角色,可以通过图形用户界面所呈现,所呈现的内容可以包含虚拟角色的全部,也可以是虚拟角色的局部。例如,在第三人称视角游戏中,图形用户界面所呈现的内容可以包含虚拟角色的全部,或者,在第一人称视角游戏中,图形用户界面所呈现的内容可以包含虚拟角色的部分或局部。
第二游戏对象可以是游戏中敌方玩家所控制的游戏虚拟角色,也可以是游戏开发者在某个具体游戏场景中预先设置的非玩家角色(Non-Practicing Character,NPC)。
具体的,可以包括如下步骤:
步骤101,确定第一游戏对象对应的移动目标点;
在具体实现中,响应于游戏玩家的输入,如鼠标点击游戏场景中一位置,则可以确定第一游戏对象对应的移动目标点。
在本申请一实施例中,步骤101可以包括如下子步骤:
确定接收的标记位置;判断所述标记位置是否对应一障碍物对象;若所述标记位置对应一障碍物对象,则确定距离所述标记位置最近的第一位置,作为移动目标点。
由于障碍物对象所在的位置是不可达的,则可以先确定游戏玩家输入的标记位置,如鼠标点击的位置,然后判断该标记位置是否存在障碍物对象。
若不存在障碍物对象,则可以直接将该标记位置作为移动目标点,若存在障碍物对象,则可以在标记位置与第一游戏对象的移动起始点之间,选择距离该标记位置最近的第一位置,作为移动目标点。
步骤102,确定所述移动目标点对应的第一路径,并按照所述第一路径,控制所述第一游戏对象向所述移动目标点进行移动;
在确定移动目标点后,可以获取移动目标点对应的第一路径,然后可以按照第一路径,控制第一游戏对象进行移动。
在本申请一实施例中,第一游戏对象可以具有一移动起始点,所述确定所述移动目标点对应的第一路径的步骤包括:
判断所述移动起始点与所述移动目标点之间是否存在直线路径;若是,则确定所述直线路径对应的第一路径;若否,采用预置的寻路算法进行寻路,确定第一路径。
作为一示例,寻路算法可以为A*寻路算法。
由于采用寻路算法进行寻路需要耗费大量的资源,则在进行寻路之前,可以判断移动起始点与移动目标点之间是否存在直线路径,如采用光栅化直线算法,若存在直线线路,则可以确定直线路径对应的第一路径;若不存在直线线路,则可以采用寻路算法进行寻路,确定第一路径。
步骤103,在移动的过程中,响应于所述第一游戏对象与第二游戏对象发生碰撞,确定碰撞后的所述第一游戏对象的偏移位置;
在移动的过程中,当第一游戏对象与第二游戏对象发生碰撞时,可以采用物理引擎计算碰撞结果,然后可以根据碰撞结果,确定第一游戏对象移动至移动目标点对应的第二路径。
在本申请一实施例中,该方法还可以包括如下步骤:
预置一物理引擎;在所述物理引擎中,建立所述第一游戏对象对应的第一物理实体,以及所述第二游戏对象对应的第二物理实体。
在实际应用中,可以预置一物理引擎,然后可以在物理引擎中,建立第一游戏对象对应的第一物理实体,以及第二游戏对象对应的第二物理实体。
在本申请一实施例中,步骤104可以包括如下子步骤:
确定所述第一物理实体对应的第一物理属性;以及,确定所述第二物理实体对应的第二物理属性;在所述物理引擎中,采用所述第一物理属性和所述第二物理属性,计算碰撞后的所述第一游戏对象的偏移位置。
作为一示例,物理属性可以与游戏对象对应的游戏属性相关,如游戏属性中力量值较小的角色,其物理属性中力量值也较小。
在具体实现中,物理引擎通过为刚性物体赋予真实的物理属性的方式来计算运动、旋转和碰撞反映,则可以确定第一物理实体对应的第一物理属性,并可以确定第二物理实体对应的第二物理属性,然后可以采用第一物理属性和第二物理属性,计算碰撞后的第一游戏对象的偏移位置。
由于物理引擎是基于物理的运算,例如,若出现四个人围住一辆汽车,汽车的速度和质量较大,当往其中一个方向移动时,可以将挡路的人轻松推开,但是当一个人被四俩汽车围住,则很难推开汽车,这种更真实的物理反馈可以使游戏的表现更加生动,同时可以给游戏增加新的策略性玩法。
具体的,在C++语言编写中,MapCell类为核心类,作为整个***的管理枢纽,管理着整个***里面的可移动单位MapUnit的创建、销毁、发送移动命令等,并实现所有的寻路功能。
当一个MapUnit发出移动的命令,MapCell完成寻路之后,MapUnit会记录下当前的路径,并按照路点依次移动,每到达一个路点,就继续往下一个路点移动。
在运动的过程中,如果MapUnit发生了碰撞,有可能改变位置,所以游戏的每一帧都纠正移动方向,并将运动方向同步给Body(每一个MapUnit关联一个Body,Body和MapUnit一一对应)。
Body将移动方向同步给b2Body(物理引擎中实体),同时每一帧MapCell执行update,调用到PhysicsWorld执行update,再由physicsWorld调用b2World的Step(所有的物理碰撞和运算都在此进行),最后将b2body的位置同步给Body和MapUnit,至此完成了一帧的所有运动变化。
在本申请一实施例中,第一游戏对象可以包括游戏角色对象,如玩家控制角色、非玩家控制角色,第二游戏对象包括障碍物对象和游戏角色对象。
如图2a,第一游戏对象为游戏对象1,第二游戏对象为游戏对象2和游戏对象3,游戏对象2为游戏角色对象,游戏对象3为障碍物对象。
如图2b、图2c,由于在物理引擎里为障碍物对象设置了真实存在刚体,如定义了Block类,随着游戏对象1的移动,游戏对象2被游戏对象1和游戏对象3共同挤压,进而被挤开,避免了由于未对障碍物对象设置钢体,导致游戏对象2被挤进障碍物对象中。
步骤104,控制所述第一游戏对象自所述偏移位置向所述移动目标点移动。
在确定偏移位置后,可以按照偏移位置,控制第一游戏对象从该偏移位置移动至移动目标点。
在本申请一实施例中,第一路径至少可以包括两个路点,路点可以用于确定第一游戏角色的移动方向,则步骤104可以包括如下子步骤:
控制所述第一游戏对象自所述偏移位置移动至所述第一路径中的一所述路点,并沿着所述第一路径向所述移动目标点移动。
其中,第一路径可以包括经过的路点和未经过的路点,第一路径中的一路点为以最近的经过的路点确定的下一个未经过的路点。
例如,第一路径有3个路点组成为A-B-C,第一游戏对象从A移动至B,在碰撞后被推倒偏移位置F,则可以从第一路径中的一路点B,控制第一游戏对象从F回到B,进而按照B-C的路径进行移动。
在本申请另一实施例中,步骤104可以包括如下子步骤:
根据所述偏移位置重新确定所述移动目标点对应的第二路径,按照所述第二路径控制所述第一游戏对象移动至所述移动目标点。
例如,第一路径有3个路点组成为A-B-C,第一游戏对象从A移动至B,在碰撞后被推倒偏移位置F,则可以重新确定第二路径F-C,然后可以控制第一游戏对象直接从F移动至C,无需回到B。
在本申请一实施例中,第一路径和/或第二路径可以包括由多个寻路网格组成的移动路径,该方法还可以包括如下步骤:
对游戏场景进行网格化,得到多个寻路网格。
在实际应用中,如图3,可以采用编辑器对游戏场景进行网格化,得到多个寻路网格,且每个寻路网格可以具有网格信息。
其中,网格信息可以包括顶点高度(网格四个顶点的高度),通过编辑地形的高度,形成凹凸不平的地表,当游戏对象站在凹凸不平的地面时,可以表现出不同的高度,且还可以包括寻路标记(标记可达或不可达)。
当然,还可以包括其他信息,如寻路网格对应的障碍物信息,标识当前寻路网格所在的位置对应一障碍物。
在本申请一实施例中,该方法还可以包括如下步骤:
确定所述第一游戏对象与不可推动对象发生碰撞时,确定所述第一游戏对象和所述不可推动对象对应的圆心向量;当所述移动目标点在所述圆心向量的左侧时,控制所述第一游戏对象向所述圆心向量的左侧移动;当所述移动目标点在所述圆心向量的右侧时,控制所述第一游戏对象向所述圆心向量的右侧移动。
在网络游戏中,不是所有对象都能够被推动,如静态物体,可以开放了一个接口来设置是否可被推动,则在移动的过程中,可以正前方是否阻挡了不可推动对象,即判断当前路点是否对应一不可推动对象。
若当前路点对应不可推动对象,则可以确定第一游戏对象和不可推动对象对应的圆心向量,然后可以采用向量叉乘来判断移动目标点在圆心向量的左侧还是右侧,当在左侧时,则可以控制第一游戏对象向圆心向量的左侧移动,当在右侧时,控制第一游戏对象向圆心向量的右侧移动,进而使得第一游戏对象可以绕开不可推动对象。
如图4,第一游戏对象A的圆心为o1,不可推动对象B的圆心为o2,圆心向量o1o2的方向为原始移动方向,当目标点T在圆心向量o1o2的右侧时(图中所示的情况),直接将A的运动方向纠正为切线B的方向,当目标点T在圆心向量o1o2左侧,则将A的移动方向纠正为切线A的方向。
在本申请实施例中,通过在游戏的过程中,确定第一游戏对象对应的移动目标点,并确定移动目标点对应的第一路径,按照第一路径,控制所述第一游戏对象进行移动,在移动的过程中,当第一游戏对象与第二游戏对象发生碰撞时,根据物理引擎计算的碰撞结果,确定移动目标点对应的第二路径,然后按照第二路径,控制第一游戏对象移动至移动目标点,实现了对游戏对象的移动控制,提升了游戏效果的真实性。
参照图5,示出了本申请一实施例提供的一种游戏中移动控制的装置的结构示意图,通过在终端的处理器上执行软件应用渲染得到图形用户界面,所述图形用户界面所显示的内容至少部分地包含一局部或全部所述游戏场景,所述游戏场景中包括至少一第一游戏对象和第二游戏对象。
具体的,可以包括如下模块:
移动目标点确定模块501,用于确定第一游戏对象对应的移动目标点;
第一移动控制模块502,用于确定所述移动目标点对应的第一路径,按照所述第一路径,控制所述第一游戏对象向所述移动目标点进行移动;
偏移位置确定模块503,用于在移动的过程中,响应于所述第一游戏对象与第二游戏对象发生碰撞,确定碰撞后的所述第一游戏对象的偏移位置;
第二移动控制模块504,用于控制所述第一游戏对象自所述偏移位置向所述移动目标点移动。
在本申请一实施例中,所述第一路径至少包括两个路点,所述路点用于确定所述第一游戏角色的移动方向;所述第二移动控制模块504包括:
偏移移动子模块,用于控制所述第一游戏对象自所述偏移位置移动至所述第一路径中的一所述路点,并沿着所述第一路径向所述移动目标点移动。
在本申请一实施例中,所述第一路径包括经过的路点和未经过的路点;所述第一路径中的一所述路点为所述以最近的所述经过的路点确定的下一个所述未经过的路点。
在本申请一实施例中,所述第二移动控制模块504包括:
第二路径移动子模块,用于根据所述偏移位置重新确定所述移动目标点对应的第二路径,按照所述第二路径控制所述第一游戏对象移动至所述移动目标点。
在本申请一实施例中,所述移动目标点确定模块501包括:
标记位置确定子模块,用于确定接收的标记位置;
障碍物对象判断子模块,用于判断所述标记位置是否对应一障碍物对象;
第一位置确定子模块,用于若所述标记位置对应一障碍物对象,则确定距离所述标记位置最近的第一位置作为移动目标点。
在本申请一实施例中,所述第一游戏对象具有一移动起始点,所述第一移动控制模块502包括:
直线路径判断子模块,用于判断所述移动起始点与所述移动目标点之间是否存在直线路径;若是,则调用直线路径确定子模块,若否,则调用寻路子模块;
直线路径确定子模块,用于确定所述直线路径对应的第一路径;
寻路子模块,用于采用预置的寻路算法进行寻路,确定第一路径。
在本申请一实施例中,所述装置还包括:
圆心向量确定模块,用于确定所述第一游戏对象与不可推动对象发生碰撞时,确定所述第一游戏对象和所述不可推动对象对应的圆心向量;
左侧移动模块,用于当所述移动目标点在所述圆心向量的左侧时,控制所述第一游戏对象向所述圆心向量的左侧移动;
右侧移动模块,用于当所述移动目标点在所述圆心向量的右侧时,控制所述第一游戏对象向所述圆心向量的右侧移动。
在本申请一实施例中,所述装置还包括:
物理引擎预置模块,用于预置一物理引擎;
物理实体建立模块,用于在所述物理引擎中,建立所述第一游戏对象对应的第一物理实体,以及所述第二游戏对象对应的第二物理实体。
在本申请一实施例中,所述第一游戏对象包括游戏角色对象,所述第二游戏对象包括障碍物对象和/或游戏角色对象;
所述偏移位置确定模块503包括::
第一物理属性确定子模块,用于确定所述第一物理实体对应的第一物理属性;
第二物理属性确定子模块,用于确定所述第二物理实体对应的第二物理属性;
偏移位置计算子模块,用于在所述物理引擎中,采用所述第一物理属性和所述第二物理属性,计算碰撞后的所述第一游戏对象的偏移位置。
在本申请一实施例中,所述第一路径和/或所述第二路径包括由多个寻路网格组成的移动路径,所述装置还包括:
网格化模块,用于对游戏场景进行网格化,得到多个寻路网格。
在本申请一实施例中,每个寻路网格具有网格信息,所述网格信息至少包括顶点高度、寻路标记。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请一实施例还提供了一种电子设备,可以包括处理器、存储器及存储在存储器上并能够在处理器上运行的计算机程序,计算机程序被处理器执行时实现如上游戏中移动控制的方法的步骤。
本申请一实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储计算机程序,计算机程序被处理器执行时实现如上游戏中移动控制的方法的步骤。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本申请实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请实施例是参照根据本申请实施例的方法、终端设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对所提供的游戏中移动控制的方法及装置、电子设备、存储介质,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (14)
1.一种游戏中移动控制的方法,其特征在于,通过在终端的处理器上执行软件应用渲染得到图形用户界面,所述图形用户界面所显示的内容至少部分地包含一局部或全部所述游戏场景,所述游戏场景中包括至少一第一游戏对象和第二游戏对象,所述方法包括:
确定第一游戏对象对应的移动目标点;
确定所述移动目标点对应的第一路径,按照所述第一路径控制所述第一游戏对象向所述移动目标点进行移动;
在移动的过程中,响应于所述第一游戏对象与第二游戏对象发生碰撞,确定碰撞后的所述第一游戏对象的偏移位置;
控制所述第一游戏对象自所述偏移位置向所述移动目标点移动。
2.根据权利要求1所述的方法,其特征在于,所述第一路径至少包括两个路点,所述路点用于确定所述第一游戏角色的移动方向;所述控制所述第一游戏对象自所述偏移位置向所述的移动目标点移动的步骤为:
控制所述第一游戏对象自所述偏移位置移动至所述第一路径中的一所述路点,并沿着所述第一路径向所述移动目标点移动。
3.根据所述权利要求2所述的方法,其特征在于,所述第一路径包括经过的路点和未经过的路点;所述第一路径中的一所述路点为所述以最近的所述经过的路点确定的下一个所述未经过的路点。
4.根据权利要求1所述的方法,其特征在于,所述控制所述第一游戏对象自所述偏移位置向所述的移动目标点移动的步骤为:
根据所述偏移位置重新确定所述移动目标点对应的第二路径,按照所述第二路径控制所述第一游戏对象移动至所述移动目标点。
5.根据权利要求1所述的方法,其特征在于,所述确定第一游戏对象对应的移动目标点包括:
确定接收的标记位置;
判断所述标记位置是否对应一障碍物对象;
若所述标记位置对应一障碍物对象,则确定距离所述标记位置最近的第一位置作为移动目标点。
6.根据权利要求1所述的方法,其特征在于,所述第一游戏对象具有一移动起始点,所述确定所述移动目标点对应的第一路径的步骤包括:
判断所述移动起始点与所述移动目标点之间是否存在直线路径;
若是,则确定所述直线路径对应的第一路径;
若否,采用预置的寻路算法进行寻路,确定第一路径。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
确定所述第一游戏对象与不可推动对象发生碰撞时,确定所述第一游戏对象和所述不可推动对象对应的圆心向量;
当所述移动目标点在所述圆心向量的左侧时,控制所述第一游戏对象向所述圆心向量的左侧移动;
当所述移动目标点在所述圆心向量的右侧时,控制所述第一游戏对象向所述圆心向量的右侧移动。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
预置一物理引擎;
在所述物理引擎中,建立所述第一游戏对象对应的第一物理实体,以及所述第二游戏对象对应的第二物理实体。
9.根据权利要求8所述的方法,其特征在于,所述第一游戏对象包括游戏角色对象,所述第二游戏对象包括障碍物对象和/或游戏角色对象;
所述确定碰撞后的所述第一游戏对象的偏移位置的步骤包括::
确定所述第一物理实体对应的第一物理属性;
以及,确定所述第二物理实体对应的第二物理属性;
在所述物理引擎中,采用所述第一物理属性和所述第二物理属性,计算碰撞后的所述第一游戏对象的偏移位置。
10.根据权利要求1所述的方法,其特征在于,所述第一路径和/或所述第二路径包括由多个寻路网格组成的移动路径,所述方法还包括:
对游戏场景进行网格化,得到多个寻路网格。
11.根据权利要求10所述的方法,其特征在于,每个寻路网格具有网格信息,所述网格信息至少包括顶点高度、寻路标记。
12.一种游戏中移动控制的装置,其特征在于,通过在终端的处理器上执行软件应用渲染得到图形用户界面,所述图形用户界面所显示的内容至少部分地包含一局部或全部所述游戏场景,所述游戏场景中包括至少一第一游戏对象和第二游戏对象,所述装置包括:
移动目标点确定模块,用于确定第一游戏对象对应的移动目标点;
第一移动控制模块,用于确定所述移动目标点对应的第一路径,按照所述第一路径,控制所述第一游戏对象向所述移动目标点进行移动;
偏移位置确定模块,用于在移动的过程中,响应于所述第一游戏对象与第二游戏对象发生碰撞,确定碰撞后的所述第一游戏对象的偏移位置;
第二移动控制模块,用于控制所述第一游戏对象自所述偏移位置向所述移动目标点移动。
13.一种电子设备,其特征在于,包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至11中任一项所述的游戏中移动控制的方法的步骤。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至11中任一项所述的游戏中移动控制的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910544543.2A CN110141862B (zh) | 2019-06-21 | 2019-06-21 | 游戏中移动控制的方法及装置、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910544543.2A CN110141862B (zh) | 2019-06-21 | 2019-06-21 | 游戏中移动控制的方法及装置、电子设备、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110141862A true CN110141862A (zh) | 2019-08-20 |
CN110141862B CN110141862B (zh) | 2023-05-05 |
Family
ID=67596144
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910544543.2A Active CN110141862B (zh) | 2019-06-21 | 2019-06-21 | 游戏中移动控制的方法及装置、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110141862B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110706318A (zh) * | 2019-09-30 | 2020-01-17 | 北京金山安全软件有限公司 | 物体移动速度控制方法和装置 |
CN110743161A (zh) * | 2019-10-16 | 2020-02-04 | 腾讯科技(深圳)有限公司 | 虚拟对象控制方法、装置、终端及存储介质 |
CN111068322A (zh) * | 2019-12-28 | 2020-04-28 | 上海米哈游天命科技有限公司 | 一种对象移动方法、装置、终端及存储介质 |
CN111265877A (zh) * | 2020-01-20 | 2020-06-12 | 网易(杭州)网络有限公司 | 游戏虚拟对象的控制方法及装置、电子设备、存储介质 |
CN111389002A (zh) * | 2020-03-13 | 2020-07-10 | 网易(杭州)网络有限公司 | 游戏角色的移动控制方法、装置、设备及存储介质 |
CN111760268A (zh) * | 2020-07-06 | 2020-10-13 | 网易(杭州)网络有限公司 | 一种游戏中的寻路控制方法及装置 |
CN113164817A (zh) * | 2020-08-05 | 2021-07-23 | 上海莉莉丝科技股份有限公司 | 游戏对象的交互控制***、方法、服务器及计算机可读存储介质 |
WO2023142834A1 (zh) * | 2022-01-27 | 2023-08-03 | 北京字跳网络技术有限公司 | 帧同步数据处理方法、装置、可读介质和电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104077797A (zh) * | 2014-05-19 | 2014-10-01 | 无锡梵天信息技术股份有限公司 | 三维游戏动画*** |
CN104759097A (zh) * | 2015-04-13 | 2015-07-08 | 四川天上友嘉网络科技有限公司 | 游戏中的自动寻路方法 |
CN107952243A (zh) * | 2017-11-29 | 2018-04-24 | 杭州电魂网络科技股份有限公司 | 路径确定方法及装置 |
CN108635855A (zh) * | 2018-05-03 | 2018-10-12 | 网易(杭州)网络有限公司 | 游戏中载具的移动控制方法、装置和终端 |
CN109925713A (zh) * | 2019-02-28 | 2019-06-25 | 腾讯科技(深圳)有限公司 | 对象控制方法和装置、存储介质及电子装置 |
-
2019
- 2019-06-21 CN CN201910544543.2A patent/CN110141862B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104077797A (zh) * | 2014-05-19 | 2014-10-01 | 无锡梵天信息技术股份有限公司 | 三维游戏动画*** |
CN104759097A (zh) * | 2015-04-13 | 2015-07-08 | 四川天上友嘉网络科技有限公司 | 游戏中的自动寻路方法 |
CN107952243A (zh) * | 2017-11-29 | 2018-04-24 | 杭州电魂网络科技股份有限公司 | 路径确定方法及装置 |
CN108635855A (zh) * | 2018-05-03 | 2018-10-12 | 网易(杭州)网络有限公司 | 游戏中载具的移动控制方法、装置和终端 |
CN109925713A (zh) * | 2019-02-28 | 2019-06-25 | 腾讯科技(深圳)有限公司 | 对象控制方法和装置、存储介质及电子装置 |
Non-Patent Citations (2)
Title |
---|
神武纪: ""A*寻路算法——多人寻路、实时碰撞寻路、最近目的地"", 《HTTPS://BLOG.CSDN.NET/UNSKYTOO/ARTICLE/DETAILS/49643679》 * |
路朝龙: "《Quest 3D从入门到精通》", 31 May 2012 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110706318A (zh) * | 2019-09-30 | 2020-01-17 | 北京金山安全软件有限公司 | 物体移动速度控制方法和装置 |
CN110706318B (zh) * | 2019-09-30 | 2023-07-14 | 北京金山安全软件有限公司 | 物体移动速度控制方法和装置 |
CN110743161A (zh) * | 2019-10-16 | 2020-02-04 | 腾讯科技(深圳)有限公司 | 虚拟对象控制方法、装置、终端及存储介质 |
CN111068322A (zh) * | 2019-12-28 | 2020-04-28 | 上海米哈游天命科技有限公司 | 一种对象移动方法、装置、终端及存储介质 |
CN111265877A (zh) * | 2020-01-20 | 2020-06-12 | 网易(杭州)网络有限公司 | 游戏虚拟对象的控制方法及装置、电子设备、存储介质 |
CN111265877B (zh) * | 2020-01-20 | 2023-06-13 | 网易(杭州)网络有限公司 | 游戏虚拟对象的控制方法及装置、电子设备、存储介质 |
CN111389002A (zh) * | 2020-03-13 | 2020-07-10 | 网易(杭州)网络有限公司 | 游戏角色的移动控制方法、装置、设备及存储介质 |
CN111760268A (zh) * | 2020-07-06 | 2020-10-13 | 网易(杭州)网络有限公司 | 一种游戏中的寻路控制方法及装置 |
CN113164817A (zh) * | 2020-08-05 | 2021-07-23 | 上海莉莉丝科技股份有限公司 | 游戏对象的交互控制***、方法、服务器及计算机可读存储介质 |
WO2023142834A1 (zh) * | 2022-01-27 | 2023-08-03 | 北京字跳网络技术有限公司 | 帧同步数据处理方法、装置、可读介质和电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN110141862B (zh) | 2023-05-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110141862A (zh) | 游戏中移动控制的方法及装置、电子设备、存储介质 | |
CN110755848B (zh) | 一种游戏中的寻路方法、终端及可读存储介质 | |
WO2018192394A1 (zh) | 虚拟现实场景的交互方法和装置、存储介质及电子装置 | |
US8257173B2 (en) | System and method for driving artificial intelligence (AI) characters having continuous reevaluation of current goals and navigation path | |
CN111249735B (zh) | 控制对象的路径规划方法、装置、处理器及电子装置 | |
JP7232341B2 (ja) | 情報の表示方法、装置、電子機器及びコンピュータプログラム | |
CN105056528A (zh) | 一种虚拟角色的移动方法及装置 | |
CN110853150B (zh) | 适用于虚拟漫游***的实际与虚拟空间的映射方法及*** | |
CN106582023A (zh) | 一种游戏寻路方法和装置 | |
JP2007244536A (ja) | ビデオゲーム処理装置、ビデオゲーム処理方法、およびビデオゲーム処理プログラム | |
CN113682318B (zh) | 车辆行驶控制方法及装置 | |
US10406437B1 (en) | Route navigation system within a game application environment | |
CN110420462A (zh) | 游戏中虚拟对象锁定的方法及装置、电子设备、存储介质 | |
CN106790224B (zh) | 一种控制模拟对象寻路的方法及服务器 | |
CN110721470B (zh) | 虚拟对象移动行为的控制方法、装置及电子设备 | |
CN108434741A (zh) | 虚拟现实中的移动控制方法及装置 | |
CN113101663B (zh) | 游戏的寻路控制方法、装置、处理设备及存储介质 | |
CN110064205A (zh) | 用于游戏的数据处理方法、设备和介质 | |
CN106422330B (zh) | 单位的寻路方法及装置 | |
Emerson | Crowd pathfinding and steering using flow field tiles | |
CN108344422A (zh) | 一种导航方法及*** | |
CN103631261A (zh) | 信息处理方法和装置 | |
CN113827974A (zh) | 一种游戏中的ai角色控制方法和装置 | |
CN114526738B (zh) | 一种基于深度强化学习的移动机器人视觉导航方法及装置 | |
CN112774204B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |