CN110743161B - 虚拟对象控制方法、装置、终端及存储介质 - Google Patents
虚拟对象控制方法、装置、终端及存储介质 Download PDFInfo
- Publication number
- CN110743161B CN110743161B CN201910984150.3A CN201910984150A CN110743161B CN 110743161 B CN110743161 B CN 110743161B CN 201910984150 A CN201910984150 A CN 201910984150A CN 110743161 B CN110743161 B CN 110743161B
- Authority
- CN
- China
- Prior art keywords
- target
- target point
- coordinate
- determining
- point
- 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.)
- Active
Links
Images
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/20—Input arrangements for video game devices
- A63F13/21—Input arrangements for video game devices characterised by their sensors, purposes or types
- A63F13/214—Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads
- A63F13/2145—Input arrangements for video game devices characterised by their sensors, purposes or types for locating contacts on a surface, e.g. floor mats or touch pads the surface being also a display device, e.g. touch screens
-
- 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/50—Controlling the output signals based on the game progress
- A63F13/52—Controlling the output signals based on the game progress involving aspects of the displayed game scene
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明实施例公开了一种虚拟对象控制方法、装置、终端及存储介质。其中方法包括:接收预设传感器返回的第一数据,所述第一数据包括:第一角度和第一移动距离;获取目标虚拟对象的坐标,依据所述坐标、所述第一角度、所述第一移动距离确定第一目标点;判断障碍区域是否包含所述第一目标点,若所述障碍区域包含所述第一目标点,依据所述障碍区域与所述第一目标点确定第二目标点,其中,所述第二目标点位于非障碍区域;依据所述第二目标点生成目标移动指令,依据所述目标移动指令移动所述目标虚拟对象至所述第二目标点;本发明实施例可以提高用户游戏体验度。
Description
技术领域
本发明涉及互联网游戏领域,具体涉及虚拟对象控制领域,尤其涉及一种虚拟对象控制方法、一种虚拟对象控制装置、一种终端及一种计算机存储介质。
背景技术
随着互联网技术和终端设备的发展,互联网游戏已然成为一种放松身心的方式。
现有的互联网游戏可以通过虚拟摇杆或者在屏幕中点击的方式控制虚拟对象的移动,但是,游戏中存在障碍区域,当控制虚拟对象移动的过程中碰到障碍区域时,虚拟对象会停止移动,从而导致用户游戏体验低下。
发明内容
本发明实施例提供一种虚拟对象控制方法、装置、终端及存储介质,有利于避免用户在控制虚拟对象移动的过程中虚拟对象停止移动的情况,提高用户体验度。
一方面,本发明实施例提供了一种虚拟对象控制方法,该虚拟对象控制方法包括:
接收预设传感器返回的第一数据,所述第一数据包括:第一角度和第一移动距离;
获取目标虚拟对象的坐标,依据所述坐标、所述第一角度、所述第一移动距离确定第一目标点;
判断障碍区域是否包含所述第一目标点,若所述障碍区域包含所述第一目标点,依据所述障碍区域与所述第一目标点确定第二目标点,其中,所述第二目标点位于非障碍区域;
依据所述第二目标点生成目标移动指令,依据所述目标移动指令移动所述目标虚拟对象至所述第二目标点。
其中,所述获取目标虚拟对象的坐标,依据所述坐标、所述第一角度、所述第一移动距离确定第一目标点,包括:
依据预设的移动距离与步长的映射关系确定所述第一移动距离对应的第一步长;
以所述坐标为坐标原点构建第一直角坐标系;
在所述第一直角坐标系中依据所述第一角度与所述坐标原点确定第一方向;
在所述第一方向上依据所述第一步长确定所述第一目标点。
其中,所述依据所述障碍区域与所述第一目标点确定第二目标点,包括:
获取所述第一坐标点与所述障碍区域的多条边线对应的多个垂点;
从所述多个垂点中选取位于所述非障碍区域的多个非障碍区垂点;
获取所述障碍区域对应的多个顶点坐标;
依据所述多个顶点坐标、所述多个非障碍区垂点生成待定坐标点集,依据所述待定坐标点集与所述第一目标点确定所述第二目标点。
其中,所述依据所述待定坐标点集与所述第一目标点确定所述第二目标点,包括:
获取所述第一目标点的第一坐标和所述待定坐标点集中多个待定坐标点的多个待定坐标;
计算所述第一坐标与所述多个待定坐标的多个坐标距离;
确定所述多个坐标距离中的最小值对应的待定坐标点为所述第二目标点。
其中,所述依据所述障碍区域与所述第一目标点确定第二目标点,包括:
连接所述坐标与所述第一坐标点,得到第一线段;
获取所述第一线段与所述障碍区域的边线的交点,以所述交点为向量起点、所述第一目标点为向量终点确定第一向量;
对所述第一向量进行向量分解得到第二向量、第三向量,确定所述第二向量和所述第三向量中与所述边线平行的向量为目标向量;
确定所述目标向量的方向为第二方向,依据所述第二方向与所述交点确定所述第二目标点。
其中,所述依据所述第二方向与所述交点确定所述第二目标点,包括:
依据预设的移动距离与步长的映射关系确定所述第一移动距离对应的第一步长;
在所述第二方向上确定与所述交点距离等于所述第一步长的点为所述第二目标点。
其中,所述依据所述第二目标点生成目标移动指令,包括:
获取所述第一移动距离对应的第一步长,依据所述坐标、所述第二目标点和所述第一步长执行最短路径规划,得到目标移动路径;
依据所述目标移动路径、所述第一步长生成所述目标移动指令。
其中,所述依据所述第二目标点生成目标移动指令,包括:
获取所述第一移动距离对应的第一步长,依据所述坐标、所述第二目标点和所述第一步长生成指令获取请求,向预设服务器发送所述指令获取请求;
接收所述预设服务器返回的指令响应,所述指令响应包括:所述目标移动指令。
其中,所述依据所述目标移动指令移动所述目标虚拟对象至所述第二目标点之后,还包括:
接收所述预设传感器返回的第二数据,其中,所述第二数据包括:第二角度和第二移动距离;
依据所述第二数据执行所述虚拟对象控制方法。
另一方面,本发明实施例提供了一种虚拟对象控制装置,该虚拟对象控制装置包括:
接收单元,用于接收预设传感器返回的第一数据,所述第一数据包括:第一角度和第一移动距离;
确定单元,用于获取目标虚拟对象的坐标,依据所述坐标、所述第一角度、所述第一移动距离确定第一目标点;
判断单元,用于判断障碍区域是否包含所述第一目标点,若所述障碍区域包含所述第一目标点,依据所述障碍区域与所述第一目标点确定第二目标点,其中,所述第二目标点位于非障碍区域;
执行单元,用于依据所述第二目标点生成目标移动指令,依据所述目标移动指令移动所述目标虚拟对象至所述第二目标点。
其中,在所述获取目标虚拟对象的坐标,依据所述坐标、所述第一角度、所述第一移动距离确定第一目标点方面,所述确定单元,具体用于:
依据预设的移动距离与步长的映射关系确定所述第一移动距离对应的第一步长;
以所述坐标为坐标原点构建第一直角坐标系;
在所述第一直角坐标系中依据所述第一角度与所述坐标原点确定第一方向;
在所述第一方向上依据所述第一步长确定所述第一目标点。
其中,在所述依据所述障碍区域与所述第一目标点确定第二目标点方面,所述判断单元,具体用于:
获取所述第一坐标点与所述障碍区域的多条边线对应的多个垂点;
从所述多个垂点中选取位于所述非障碍区域的多个非障碍区垂点;
获取所述障碍区域对应的多个顶点坐标;
依据所述多个顶点坐标、所述多个非障碍区垂点生成待定坐标点集,依据所述待定坐标点集与所述第一目标点确定所述第二目标点。
其中,在所述依据所述待定坐标点集与所述第一目标点确定所述第二目标点方面,所述判断单元,具体用于:
获取所述第一目标点的第一坐标和所述待定坐标点集中多个待定坐标点的多个待定坐标;
计算所述第一坐标与所述多个待定坐标的多个坐标距离;
确定所述多个坐标距离中的最小值对应的待定坐标点为所述第二目标点。
其中,在所述依据所述障碍区域与所述第一目标点确定第二目标点方面,所述判断单元,具体用于:
连接所述坐标与所述第一坐标点,得到第一线段;
获取所述第一线段与所述障碍区域的边线的交点,以所述交点为向量起点、所述第一目标点为向量终点确定第一向量;
对所述第一向量进行向量分解得到第二向量、第三向量,确定所述第二向量和所述第三向量中与所述边线平行的向量为目标向量;
确定所述目标向量的方向为第二方向,依据所述第二方向与所述交点确定所述第二目标点。
其中,所述在所述依据所述第二方向与所述交点确定所述第二目标点方面,所述判断单元,具体用于:
依据预设的移动距离与步长的映射关系确定所述第一移动距离对应的第一步长;
在所述第二方向上确定与所述交点距离等于所述第一步长的点为所述第二目标点。
其中,所述在依据所述第二目标点生成目标移动指令方面,所述执行单元,具体用于:
获取所述第一移动距离对应的第一步长,依据所述坐标、所述第二目标点和所述第一步长执行最短路径规划,得到目标移动路径;
依据所述目标移动路径、所述第一步长生成所述目标移动指令。
其中,在依据所述第二目标点生成目标移动指令方面,所述执行单元,具体用于:
获取所述第一移动距离对应的第一步长,依据所述坐标、所述第二目标点和所述第一步长生成指令获取请求,向预设服务器发送所述指令获取请求;
接收所述预设服务器返回的指令响应,所述指令响应包括:所述目标移动指令。
其中,在所述依据所述目标移动指令移动所述目标虚拟对象至所述第二目标点之后方面,所述执行单元,还用于:
接收所述预设传感器返回的第二数据,其中,所述第二数据包括:第二角度和第二移动距离;
依据所述第二数据执行所述虚拟对象控制方法。
再一方面,本发明实施例提供了一种终端,所述终端包括输入设备和输出设备,所述终端还包括:
处理器,适于实现一条或多条指令;以及,
计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行如下步骤:
接收预设传感器返回的第一数据,所述第一数据包括:第一角度和第一移动距离;
获取目标虚拟对象的坐标,依据所述坐标、所述第一角度、所述第一移动距离确定第一目标点;
判断障碍区域是否包含所述第一目标点,若所述障碍区域包含所述第一目标点,依据所述障碍区域与所述第一目标点确定第二目标点,其中,所述第二目标点位于非障碍区域;
依据所述第二目标点生成目标移动指令,依据所述目标移动指令移动所述目标虚拟对象至所述第二目标点。
再一方面,本发明实施例提供了一种计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由处理器加载并执行如下步骤:
接收预设传感器返回的第一数据,所述第一数据包括:第一角度和第一移动距离;
获取目标虚拟对象的坐标,依据所述坐标、所述第一角度、所述第一移动距离确定第一目标点;
判断障碍区域是否包含所述第一目标点,若所述障碍区域包含所述第一目标点,依据所述障碍区域与所述第一目标点确定第二目标点,其中,所述第二目标点位于非障碍区域;
依据所述第二目标点生成目标移动指令,依据所述目标移动指令移动所述目标虚拟对象至所述第二目标点。
本发明实施例接收预设传感器返回的第一数据,所述第一数据包括:第一角度和第一移动距离;获取目标虚拟对象的坐标,依据所述坐标、所述第一角度、所述第一移动距离确定第一目标点;判断障碍区域是否包含所述第一目标点,若所述障碍区域包含所述第一目标点,依据所述障碍区域与所述第一目标点确定第二目标点,其中,所述第二目标点位于非障碍区域;依据所述第二目标点生成目标移动指令,依据所述目标移动指令移动所述目标虚拟对象至所述第二目标点。由此可见,在虚拟对象移动过程中遇到障碍区域时,依据障碍区域与第一目标点确定第二目标点并控制虚拟对象向第二目标点移动,实现虚拟对象的持续移动,有利于提升用户体验度。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本发明实施例提供的一种网络架构示意图;
图1b是本发明实施例提供的一种虚拟对象控制方法的流程示意图;
图1c是本发明实施例提供的一种虚拟对象控制方法的示意图;
图2是本发明实施例提供的一种虚拟对象控制方法的场景示意图;
图3是本发明实施例提供的一种虚拟对象控制方法的交互示意图;
图4是本发明实施例提供的一种虚拟对象控制方法的流程示意图;
图5是本发明实施例提供的另一种虚拟对象控制方法的流程示意图;
图6是本发明实施例提供的一种第二目标点确定方法的示意图;
图7是本发明实施例提供的另一种第二目标点确定方法的示意图;
图8是本发明实施例提供的一种终端的结构示意图;
图9是本发明实施例提供的一种虚拟对象控制装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及所述附图中的术语“第一”、“第二”、“第三”和“第四”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结果或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本发明实施例提出一种虚拟对象控制方法以实现虚拟对象在移动的过程中接触障碍区域时可以保持移动状态,简化控制虚拟对象移动的操作,提高用户体验度;该场景切换方案可运用在终端中,此处的终端可以包括但不限于:智能手机、平板电脑、膝上计算机以及台式电脑等等。终端可根据实际的业务需求,调用相应的应用客户端执行虚拟对象控制方法,此处的游戏应用客户端可包括但不限于:手游客户端、端游客户端等等;其中,手游客户端是指运行于移动终端中的游戏客户端,端游是指运行于PC(Personal Computer,个人计算机)端中的游戏客户端。
请参见图1a,图1a是本发明实施例提供的一种网络架构示意图,该网络架构可以包括服务器以及终端设备(如图1a所示,具体包括服务器100、终端设备101),服务器100可以通过网络与终端设备进行数据传输,如图1a所示,当终端设备101运行游戏应用客户端时,终端设备101可以向服务器100发送指令生成请求,服务器100接收指令生成请求后依据指令生成请求生成目标移动指令,可以向终端设备101发送目标移动指令,终端设备101依据目标移动指令控制虚拟对象进行移动。
在一种实施方式中,当终端设备运行游戏应用客户端时,则判断用户是否操作虚拟摇杆,若检测到用户操作虚拟摇杆,接收虚拟摇杆对应的传感器返回的第一数据,从第一数据中获取第一角度和第一移动距离,第一角度为虚拟摇杆偏移中心点的角度,第一角度可以表示虚拟摇杆方向,基于虚拟摇杆方向可以确定虚拟对象移动的第一方向,第一移动距离为虚拟摇杆偏移中心点的距离,基于第一移动距离确定虚拟对象移动的第一步长(即步进长度),基于第一数据和虚拟对象的坐标确定第一目标点,判断虚拟摇杆方向前方步进长度距离是否有障碍,即判断预设障碍区域是否包含第一目标点,若障碍区域包含第一目标点,则基于第一目标点确定第二目标点,依据第二目标点执行修正目标点操作,基于虚拟对象的坐标与第二目标点执行寻路操作确定移动路径,依据移动路径控制虚拟对象向第二目标点移动;若否,控制虚拟对象基于第一目标点执行寻路操作确定移动路径,依据移动路径移动至第一目标点;可选的,终端设备还可以基于服务器执行寻路操作,即终端设备向服务器发送指令生成请求,指令生成请求包括:第二目标点和虚拟对象的坐标,指令生成请求用于请求服务器依据第二目标点和虚拟对象的坐标生成移动指令,其中,移动指令包括:移动路径,终端设备接收移动指令,依据移动指令确定移动路径,如图1b所示。
结合上述图1b,下面以一个例子来说明,若游戏应用客户端为火影忍者OL,终端设备接收显示屏中的预设传感器返回的第一数据,其中,该预设传感器对应的区域显示为虚拟摇杆,该第一数据为该虚拟摇杆的控制数据,第一数据包括第一角度与第一移动距离,基于该第一移动距离确定虚拟对象移动的步长,第一角度确定虚拟对象的第一方向(即方向a);基于第一移动距离、第一角度以及虚拟对象的坐标确定第一目标点,当该虚拟对象位于当前显示场景的障碍区域边缘时,确定该第一目标点在障碍区域内,基于障碍区域与第一目标点确定第二目标点,依据第二目标点确定第二方向(即方向b),控制虚拟对象在该方向b上进行移动,如图1c所示。
其中,终端设备可以包括手机、平板电脑、笔记本电脑、掌上电脑、移动互联网设备(mobile internet device,MID)、可穿戴设备(例如智能手表、智能手环等)。
由此可见,本发明实施例所提出的虚拟对象控制方法,可以通过终端设备与服务器之间的交互实现,通过服务器生成目标移动指令,终端设备依据目标移动指令对虚拟对象进行控制,有利于简化虚拟对象的控制操作,从而提高用户体验度。
具体请一并参见图2,图2是本发明实施例提供的一种虚拟对象控制方法的场景示意图,如图2所示,该场景以图1所对应实施例中的终端设备101为例,本虚拟对象控制方法包括:
在终端设备101运行游戏应用客户端时,启动预设传感器,接收该预设传感器返回的第一数据,其中,该第一数据包括:第一角度和第一移动距离,该第一角度和该第一移动距离用于确定虚拟对象第一步长和第一方向,获取虚拟对象当前的坐标,依据第一数据与该坐标确定第一目标点,即确定在该第一方向上与该坐标距离等于第一步长的点为第一目标点,获取障碍区域对应的坐标集,判断该坐标集是否包含该第一目标点,若该坐标集不包含该第一目标点,确定该障碍区域不包含该第一目标点,控制该虚拟对象依据该行进步长在该第一方向上进行移动;若该坐标集包含该第一目标点,确定该障碍区域包含该第一目标点,依据障碍区域与第一目标点确定第二目标点,依据第二目标点生成目标移动指令,依据该目标移动指令控制该虚拟对象移动至该第二目标点。
其中,依据第二目标生成目标移动指令可以包括:依据该坐标、该第一步长和该第二目标点执行最小路径规划操作,得到该坐标与该第二目标点对应的最小路径作为目标移动路径,依据该目标移动路径、该第一步长生成目标移动指令,其中,该障碍区域不包含该目标移动路径中的任意一个点,依据该目标移动指令控制该虚拟对象移动至第二目标点。
其中,依据第二目标生成目标移动指令可以包括:依据该坐标、该第一步长和该第二目标点生成指令生成请求,向预设服务器发送该指令生成请求,该指令生成请求用于指示该预设服务器生成依据该坐标、该第一步长和该第二目标点执行路径规划操作得到目标移动路径并返回,接收该预设服务器返回的指令响应,该指令响应包括:目标移动指令,依据该目标移动指令控制该虚拟对象移动值第二目标点。
可以看出,本发明实施例可以通过预设传感器接收第一数据,依据第一数据与坐标确定第一目标点,提高了第一目标点确定的准确性;判断障碍区域是否包含该第一目标点,避免虚拟对象在移动至第一目标点时由于障碍区域导致角色停止移动的情况;若障碍区域包含则依据第一目标点与障碍区域确定第二目标点,实现目标点更新,从而提高虚拟对象控制的智能性;依据坐标与第二目标点或依据预设服务器确定目标移动路径,实现虚拟对象移动路线的最优化,依据目标移动指令控制虚拟对象移动,避免虚拟对象停止移动的情况,从而有利于提高用户体验度。
请参见图3,是本发明实施例提供的一种虚拟对象控制方法的交互示意图。
该方法可以包括以下步骤:
步骤301、接收预设传感器返回的第一数据,所述第一数据包括:第一角度和第一移动距离;
可选的,终端在运行游戏应用客户端时,启动预设传感器,此处预设传感器可以设置在该终端设备的显示屏中的任意区域,该预设传感器对应的传感区域可以为圆形、方形等等,在此不作限定,该预设传感器用于接收用户在该传感区域中执行的操作数据;接收该预设传感器返回的第一数据,其中,第一数据包括:第一角度和第一移动距离。
其中,的游戏应用客户端可以包括:手游客户端、端游客户端等等,在此不作限定。
进一步的,手游客户端是指运行于移动终端中的游戏客户端,端游是指运行于PC(Personal Computer,个人计算机)端中的游戏客户端。
其中,该预设传感器用于接收用户在该传感区域上方执行的操作,此处的操作可以包括:手势操作、触碰操作等等,在此不作限定,以该传感区域的中心点为圆心建立直角坐标系,该第一移动距离用于表示该操作在该直角坐标系中与圆心的距离,该第一角度用于表示该操作在该直角坐标系中对应的角度。
步骤302、获取目标虚拟对象的坐标,依据所述坐标、所述第一角度、所述第一移动距离确定第一目标点;
可选的,依据坐标、第一角度、第一移动距离确定第一目标点,包括:获取预设的移动距离和步长的映射关系,依据该移动距离和步长的映射关系确定该第一移动距离对应的第一步长,以该坐标为坐标原点建立直角坐标系,依据该第一角度与该直角坐标系确定第一方向,即在该直角坐标系中确定一条射线使该射线与x轴的正半轴的夹角等于该第一夹角,该射线对应的方向为第一方向;确定该第一方向上与该坐标周远点距离为该第一步长的点为该第一目标点。
举例说明,若该第一角度为90度,该第一步长为2,坐标为(2,3),则确定该第一坐标点在该直角坐标系中对应的第一直角坐标点为(0,2)即该第一目标点的坐标为(4,3)。
步骤303、判断障碍区域是否包含所述第一目标点,若所述障碍区域包含所述第一目标点,依据所述障碍区域与所述第一目标点确定第二目标点,其中,所述第二目标点位于非障碍区域;
可选的,获取该障碍区域的多个顶点坐标,计算该多个顶点坐标与该坐标对应的多个坐标距离,依据该多个坐标距离在该直角坐标系中对该障碍区域进行复原,确定该障碍区域在该直角坐标系中对应的坐标区域,在该直角坐标系中对该第一目标点进行标记,得到第一直角坐标点,判断该坐标区域是否包含该第一直角坐标点,若该坐标区域包含该第一直角坐标点,则确定该障碍区域包含该第一目标点;若该坐标区域不包含该第一直角坐标点,则确定该障碍区域不包含该第一目标点。
可选的,获取该障碍区域对应的坐标集,判断该坐标集是否包含该第一目标点,若该坐标集包含该第一目标点,则确定该障碍区域包含该第一目标点,若该坐标集不包含该第一目标点,则确定该障碍区域不包含该第一目标点。
步骤304、依据所述第二目标点生成指令生成请求,向所述服务器发送所述指令生成请求;
可选的,依据该第二目标点、第一步长、坐标生成指令生成请求,向该服务器发送该指令生成请求,其中,该指令生成请求用于请求该服务器依据该第二目标点、第一步长、坐标生成执行路径规划操作得到目标移动路径。
步骤305、依据所述第二目标点生成目标移动指令;
可选的,依据该目标移动路径和该第一步长生成目标移动指令并返回。
步骤306、接收所述目标移动指令;
可选的,接收该指令响应,该指令响应包括:目标移动指令,从该指令响应中获取该目标移动指令。
步骤307、依据所述目标移动指令移动所述目标虚拟对象至所述第二目标点。
可选的,从该目标移动指令中获取目标移动路径,该目标移动路径中包含多个路径点,从该目标移动路径中确定第一路径点,控制该目标虚拟对象移动至该第一路径点。
本发明实施例可以通过接收预设传感器返回的第一数据,其中,该第一数据包括:第一角度和第一移动距离;获取目标虚拟对象的坐标,依据该坐标、该第一角度、该第一移动距离确定第一目标点;判断障碍区域是否包含该第一目标点,若该障碍区域包含该第一目标点,依据该障碍区域与该第一目标点确定第二目标点,其中,该第二目标点位于非障碍区域;依据该第二目标点生成目标移动指令,依据该目标移动指令移动所述目标虚拟对象至所述第二目标点。如此,可通过对目标点进行更新避免虚拟对象在移动过程中遇到障碍区域而停止移动的情况,在虚拟对象遇到障碍区域时,生成目标移动指令控制虚拟对象移动,从而提高了虚拟对象控制的智能性,有利于提高用户体验度。
请参见图4,是本发明实施例提供的一种虚拟对象控制方法的流程示意图。
该方法可以包括以下步骤:
步骤401、接收预设传感器返回的第一数据,所述第一数据包括:第一角度和第一移动距离;
在检测到终端设备当前运行的应用为游戏应用客户端时,接收预设传感器返回的第一数据,其中,该第一数据包括:第一角度和第一移动距离。
步骤402、获取目标虚拟对象的坐标,依据所述坐标、所述第一角度、所述第一移动距离确定第一目标点;
可选的,步骤402的具体实施方式还可以是:依据预设的移动距离与步长的映射关系确定第一移动距离对应的第一步长;以坐标为坐标原点构建第一直角坐标系;在第一直角坐标系中依据第一角度与坐标原点确定第一方向;在第一方向上依据第一步长确定第一目标点。
具体实施过程中,预设传感器用于接收用户在该传感区域上方执行的操作,以该传感区域的中心点为圆心建立第一直角坐标系,该第一移动距离用于表示该操作在该第一直角坐标系中与圆心的距离,该第一角度用于表示该操作在该第一直角坐标系中对应的角度,其中,可以依据第一移动距离确定第一步长,例如,当第一移动距离为2时,该第一步长可以为2;当第一移动距离为3时,该第一步长可以为5
步骤403、判断障碍区域是否包含所述第一目标点,若所述障碍区域包含所述第一目标点,依据所述障碍区域与所述第一目标点确定第二目标点,其中,所述第二目标点位于非障碍区域;
可选的,步骤403的具体实施方式还可以是:获取所述第一坐标点与所述障碍区域的多条边线对应的多个垂点;从所述多个垂点中选取位于所述非障碍区域的多个非障碍区垂点;获取所述障碍区域对应的多个顶点坐标;依据所述多个顶点坐标、所述多个非障碍区垂点生成待定坐标点集,依据所述待定坐标点集与所述第一目标点确定所述第二目标点。
进一步的,步骤403的具体实施方式还可以是:获取所述第一目标点的第一坐标和所述待定坐标点集中多个待定坐标点的多个待定坐标;计算所述第一坐标与所述多个待定坐标的多个坐标距离;确定所述多个坐标距离中的最小值对应的待定坐标点为所述第二目标点。
其中,该非障碍区域包含该障碍区域的边线。
其中,该多个垂点中的任意一个垂点可以位于障碍区域也可以位于非障碍区域,在此不作限定。
具体实施过程中,假设获取该障碍区域的边线分别为边线ab、边线bc、边线cd、边线da,过第一目标点o做边线ab、边线bc、边线cd、边线da的垂线分别为垂线oe、垂线of、垂线og、垂线oh,其中,垂线oe对应的垂点为点e,垂线of对应的垂点为点f,垂线og对应的垂点为点g、垂线oh对应的垂点为点h,其中,该点e和点f位于非障碍区域,点g和点h位于障碍区域,则依据障碍区域的顶点a、顶点b、顶点c、顶点d以及点e、点f生成待定坐标点集,依据待定坐标点集和第一目标点o确定线段oa、线段ob、线段oc、线段od、线段oe和线段of,计算多条线段的线段长度,若线段oe的长度为多个线段长度中的最小值,确定点e为第二目标点。
可选的,步骤403的具体实施方式还可以是:连接所述坐标与所述第一坐标点,得到第一线段;获取所述第一线段与所述障碍区域的边线的交点,以所述交点为向量起点、所述第一目标点为向量终点确定第一向量;对所述第一向量进行向量分解得到第二向量、第三向量,确定所述第二向量和所述第三向量中与所述边线平行的向量为目标向量;确定所述目标向量的方向为第二方向,依据所述第二方向与所述交点确定所述第二目标点。
进一步的,步骤403的具体实施方式还可以是:依据预设的移动距离与步长的映射关系确定所述第一移动距离对应的第一步长;在所述第二方向上确定与所述交点距离等于所述第一步长的点为所述第二目标点。
其中,该向量分解为通过平行四边形法则将该第一向量分解为第二向量和第三向量,该第一向量为该第二向量与第三向量的合量。
步骤404、依据所述第二目标点生成目标移动指令,依据所述目标移动指令移动所述目标虚拟对象至所述第二目标点。
可选的,步骤404的具体实施方式还可以是:获取所述第一移动距离对应的第一步长,依据所述坐标、所述第二目标点和所述第一步长执行最短路径规划,得到目标移动路径;依据所述目标移动路径、所述第一步长生成所述目标移动指令。
具体实施过程中,获取预设的移动距离与步长的映射关系,依据该移动距离与补偿的映射关系确定该第一移动距离对应的第一步长,获取预设的最短路径规划算法,依据该坐标、该第二目标点和该第一步长执行该最短路径规划算法,得到目标移动路径,依据目标移动路径、第一步长生成目标移动指令,其中,该目标移动路径可以包括:多个路径点,该障碍区域不包含该多个路径点中任意一个路径点。
可选的,步骤404的具体实施方式还可以是:获取所述第一移动距离对应的第一步长,依据所述坐标、所述第二目标点和所述第一步长生成指令获取请求,向预设服务器发送所述指令获取请求;接收所述预设服务器返回的指令响应,所述指令响应包括:所述目标移动指令。
具体实施过程中,获取预设的移动距离与步长的映射关系,依据该移动距离与步长的映射关系确定该第一移动距离对应的第一步长依据该坐标、该第二目标点和该第一步长生成指令获取请求,想预设服务器发送该指令获取请求,该指令获取请求用于请求该预设服务器依据该坐标、该第二目标点和第一步长生成目标移动路径,该指令获取请求还用于请求该预设服务器依据目标移动路径与第一步长生成目标移动指令并返回,接收预设服务器返回的指令响应,其中,该指令响应包括:目标移动指令。
其中,该预设服务器中可以包括:路径规划模型,该路径规划模型可以为神经网络模型也可以为预先训练好的路径规划算法模型,在此不作限定。
可选的,步骤404的具体实施方式还可以是:接收所述预设传感器返回的第二数据,其中,所述第二数据包括:第二角度和第二移动距离;依据所述第二数据执行所述虚拟对象控制方法。
本发明实施例可以通过接收预设传感器返回的第一数据,其中,该第一数据包括:第一角度和第一移动距离;获取目标虚拟对象的坐标,依据该坐标、该第一角度、该第一移动距离确定第一目标点;判断障碍区域是否包含该第一目标点,若该障碍区域包含该第一目标点,依据该障碍区域与该第一目标点确定第二目标点,其中,该第二目标点位于非障碍区域;依据该第二目标点生成目标移动指令,依据该目标移动指令移动所述目标虚拟对象至所述第二目标点。如此,可通过对目标点进行更新避免虚拟对象在移动过程中遇到障碍区域而停止移动的情况,在虚拟对象遇到障碍区域时,生成目标移动指令控制虚拟对象移动,从而提高了虚拟对象控制的智能性,有利于提高用户体验度。
请参见图5,是本发明实施例提供的另一种虚拟对象控制方法的流程示意图。
该方法可以包括以下步骤:
步骤501、接收预设传感器返回的第一数据,所述第一数据包括:第一角度和第一移动距离;
步骤502、获取目标虚拟对象的坐标,依据预设的移动距离与步长的映射关系确定所述第一移动距离对应的第一步长;
步骤503、以所述坐标为坐标原点构建第一直角坐标系,在所述第一直角坐标系中依据所述第一角度与所述坐标原点确定第一方向;
步骤504、在所述第一方向上依据所述第一步长确定所述第一目标点;
步骤505、判断障碍区域是否包含所述第一目标点,若所述障碍区域包含所述第一目标点,依据所述障碍区域与所述第一目标点确定第二目标点,其中,所述第二目标点位于非障碍区域;
步骤506、依据所述第二目标点生成目标移动指令,依据所述目标移动指令移动所述目标虚拟对象至所述第二目标点。
本发明实施例可以通过接收预设传感器返回的第一数据,其中,该第一数据包括:第一角度和第一移动距离;获取目标虚拟对象的坐标,依据该坐标、该第一角度、该第一移动距离确定第一目标点;判断障碍区域是否包含该第一目标点,若该障碍区域包含该第一目标点,依据该障碍区域与该第一目标点确定第二目标点,其中,该第二目标点位于非障碍区域;依据该第二目标点生成目标移动指令,依据该目标移动指令移动所述目标虚拟对象至所述第二目标点。如此,可通过第一数据确定第一目标点,提高第一目标点确定的准确性,从而提高对障碍区域是否包含第一目标点的准确性,有利于提高虚拟对象移动控制的智能性。
其中,步骤501-506的具体实现过程可以参加上述图4所对应实施例中对步骤401-404的描述,这里不再赘述。
请参见图6,是本发明实施例提供的一种第二目标点确定方法的示意图。该方法可以包括以下步骤:
获取该障碍区域的多条边线,过第一目标点做多条边线的多条垂线,获取该多条垂线对应的多个垂点,获取该多个垂点中处于非障碍区域的多个非障碍区垂点,获取该障碍区域的多个顶点,依据该多个非障碍区垂点与该多个顶点生成待定坐标点集,计算该第一目标点与该待定坐标点集中多个待定坐标点的多个坐标距离,确定该多个坐标距离中的最小值对应的待定坐标点为该第二坐标点。
如图6所示,该障碍区域的多条边线包括:边线ij、边线ih、边线hg、边线gf、边线fj,过第一坐标点o做该多条边线的多条垂线,获取该多条垂线对应的多个垂点,分别为垂点e、垂点d、垂点a、垂点c、垂点d,其中,位于非障碍区的非障碍区垂点包括:垂点e、垂点d、垂点a,获取该障碍区域的顶点j、顶点f、顶点h、顶点i、顶点g,依据非障碍区垂点与顶点生成待定坐标点集,计算该第一目标点与该待定坐标点中多个待定坐标点的多个坐标距离,也可也表示为第一目标点与多个待定坐标点之间多条线段的长度,即比较线段eo、线段od、线段oa、线段oj、线段oi、线段of、线段og、线段oh的长度,得到线段eo为最小值,确定e点为第二目标点。
请参见图7,是本发明实施例提供的另一种第二目标点确定方法的示意图。
该方法可以包括以下步骤:
连接该坐标与该第一坐标点,得到第一线段,获取该第一线段与障碍区域的边线的交点,以该交点为向量起点,该第一目标点为向量终点确定第一向量,对该第一向量进行向量分解操作,得到第二向量、第三向量,确定该第二向量和第三向量中与该边线平行的向量为目标向量;确定该目标向量的方向为第二方向,依据预设的移动距离与步长的映射关系确定第一移动距离对应的第一步长,在该第二方向上确定与该交点距离等于第一步长的点为第二目标点。
如图7所示,连接当前坐标a与第一目标点o,得到第一线段oa,获取该第一线段oa与障碍区域边线的交点b,以该交点b为向量起点、该第一目标点o为向量终点确定第一向量对该第一向量进行向量分解操作,得到第二向量与第三向量其中,第二向量与边线平行,确定该第二向量为目标向量,即第二向量的方向为第二方向,确定第一步长为2,在该第二方向上确定与交点距离为2的点为第二目标点。
基于上述方法实施例以及装置实施例的描述,本发明实施例还提供一种终端。请参见图8,该终端至少包括处理器801、输入设备802、输出设备803以及计算机存储介质804。其中,终端内的处理器801、输入设备802、输出设备803以及计算机存储介质804可通过总线或其他方式连接。
计算机存储介质804可以存储在终端的存储器中,所述计算机存储介质804用于存储计算机程序,所述计算机程序包括程序指令,所述处理器801用于执行所述计算机存储介质804存储的程序指令。处理器801(或称CPU(Central Processing Unit,中央处理器))是终端的计算核心以及控制核心,其适于实现一条或多条指令,具体适于加载并执行一条或多条指令从而实现相应方法流程或相应功能;在一个实施例中,本发明实施例所述的处理器801可以用于执行一系列的虚拟对象控制方法,包括:接收预设传感器返回的第一数据,所述第一数据包括:第一角度和第一移动距离;获取目标虚拟对象的坐标,依据所述坐标、所述第一角度、所述第一移动距离确定第一目标点;判断障碍区域是否包含所述第一目标点,若所述障碍区域包含所述第一目标点,依据所述障碍区域与所述第一目标点确定第二目标点,其中,所述第二目标点位于非障碍区域;依据所述第二目标点生成目标移动指令,依据所述目标移动指令移动所述目标虚拟对象至所述第二目标点,等等。
本发明实施例还提供了一种计算机存储介质(Memory),所述计算机存储介质是终端中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机存储介质既可以包括终端中的内置存储介质,当然也可以包括终端所支持的扩展存储介质。计算机存储介质提供存储空间,该存储空间存储了终端的操作系统。并且,在该存储空间中还存放了适于被处理器801加载并执行的一条或多条的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的还可以是至少一个位于远离前述处理器的计算机存储介质。
在一个实施例中,可由处理器801加载并执行计算机存储介质中存放的一条或多条指令,以实现上述有关场景切换实施例中的方法的相应步骤;具体实现中,计算机存储介质中的一条或多条指令由处理器801加载并执行如下步骤:
接收预设传感器返回的第一数据,所述第一数据包括:第一角度和第一移动距离;
获取目标虚拟对象的坐标,依据所述坐标、所述第一角度、所述第一移动距离确定第一目标点;
判断障碍区域是否包含所述第一目标点,若所述障碍区域包含所述第一目标点,依据所述障碍区域与所述第一目标点确定第二目标点,其中,所述第二目标点位于非障碍区域;
依据所述第二目标点生成目标移动指令,依据所述目标移动指令移动所述目标虚拟对象至所述第二目标点。
再一种实施方式中,在依据所述障碍区域与所述第一目标点确定第二目标点时,所述一条或多条指令还可由处理器801加载并具体执行:依据预设的移动距离与步长的映射关系确定所述第一移动距离对应的第一步长;以所述坐标为坐标原点构建第一直角坐标系;在所述第一直角坐标系中依据所述第一角度与所述坐标原点确定第一方向;在所述第一方向上依据所述第一步长确定所述第一目标点。
再一种实施方式中,在依据所述障碍区域与所述第一目标点确定第二目标点时,所述一条或多条指令还可由处理器801加载并具体执行:获取所述第一坐标点与所述障碍区域的多条边线对应的多个垂点;从所述多个垂点中选取位于所述非障碍区域的多个非障碍区垂点;获取所述障碍区域对应的多个顶点坐标;依据所述多个顶点坐标、所述多个非障碍区垂点生成待定坐标点集,依据所述待定坐标点集与所述第一目标点确定所述第二目标点。
再一种实施方式中,在依据所述待定坐标点集与所述第一目标点确定所述第二目标点时,所述一条或多条指令还可由处理器801加载并具体执行:获取所述第一目标点的第一坐标和所述待定坐标点集中多个待定坐标点的多个待定坐标;计算所述第一坐标与所述多个待定坐标的多个坐标距离;确定所述多个坐标距离中的最小值对应的待定坐标点为所述第二目标点。
再一种实施方式中,在依据所述障碍区域与所述第一目标点确定第二目标点时,所述一条或多条指令还可由处理器801加载并具体执行:连接所述坐标与所述第一坐标点,得到第一线段;获取所述第一线段与所述障碍区域的边线的交点,以所述交点为向量起点、所述第一目标点为向量终点确定第一向量;对所述第一向量进行向量分解得到第二向量、第三向量,确定所述第二向量和所述第三向量中与所述边线平行的向量为目标向量;确定所述目标向量的方向为第二方向,依据所述第二方向与所述交点确定所述第二目标点。
再一种实施方式中,在依据所述第二方向与所述交点确定所述第二目标点时,所述一条或多条指令还可由处理器801加载并具体执行:依据预设的移动距离与步长的映射关系确定所述第一移动距离对应的第一步长;在所述第二方向上确定与所述交点距离等于所述第一步长的点为所述第二目标点。
再一种实施方式中,在依据所述第二目标点生成目标移动指令时,所述一条或多条指令还可由处理器801加载并具体执行:获取所述第一移动距离对应的第一步长,依据所述坐标、所述第二目标点和所述第一步长执行最短路径规划,得到目标移动路径;依据所述目标移动路径、所述第一步长生成所述目标移动指令。
再一种实施方式中,在依据所述第二目标点生成目标移动指令时,所述一条或多条指令还可由处理器801加载并具体执行:获取所述第一移动距离对应的第一步长,依据所述坐标、所述第二目标点和所述第一步长生成指令获取请求,向预设服务器发送所述指令获取请求;接收所述预设服务器返回的指令响应,所述指令响应包括:所述目标移动指令。
再一种实施方式中,在依据所述目标移动指令移动所述目标虚拟对象至所述第二目标点之后,所述一条或多条指令还可由处理器801加载并具体执行:接收所述预设传感器返回的第二数据,其中,所述第二数据包括:第二角度和第二移动距离;依据所述第二数据执行所述虚拟对象控制方法。
基于上述场景切换方法实施例的描述,本发明实施例还公开了一种虚拟对象控制装置,所述虚拟对象控制装置可以是运行于终端中的一个计算机程序(包括程序代码)。该虚拟对象控制装置可以执行图4或图5所示的方法。请参见图9,所述虚拟对象控制装置可以运行如下单元:
接收单元901,用于接收预设传感器返回的第一数据,所述第一数据包括:第一角度和第一移动距离;
确定单元902,用于获取目标虚拟对象的坐标,依据所述坐标、所述第一角度、所述第一移动距离确定第一目标点;
判断单元903,用于判断障碍区域是否包含所述第一目标点,若所述障碍区域包含所述第一目标点,依据所述障碍区域与所述第一目标点确定第二目标点,其中,所述第二目标点位于非障碍区域;
执行单元904,用于依据所述第二目标点生成目标移动指令,依据所述目标移动指令移动所述目标虚拟对象至所述第二目标点。
在一种实施方式中,在所述获取目标虚拟对象的坐标,依据所述坐标、所述第一角度、所述第一移动距离确定第一目标点方面,所述确定单元902,具体用于:依据预设的移动距离与步长的映射关系确定所述第一移动距离对应的第一步长;以所述坐标为坐标原点构建第一直角坐标系;在所述第一直角坐标系中依据所述第一角度与所述坐标原点确定第一方向;在所述第一方向上依据所述第一步长确定所述第一目标点。
在一种实施方式中,在所述依据所述障碍区域与所述第一目标点确定第二目标点方面,所述判断单元903,具体用于:获取所述第一坐标点与所述障碍区域的多条边线对应的多个垂点;从所述多个垂点中选取位于所述非障碍区域的多个非障碍区垂点;获取所述障碍区域对应的多个顶点坐标;依据所述多个顶点坐标、所述多个非障碍区垂点生成待定坐标点集,依据所述待定坐标点集与所述第一目标点确定所述第二目标点。
在一种实施方式中,在所述依据所述待定坐标点集与所述第一目标点确定所述第二目标点方面,所述判断单元903,具体用于:获取所述第一目标点的第一坐标和所述待定坐标点集中多个待定坐标点的多个待定坐标;计算所述第一坐标与所述多个待定坐标的多个坐标距离;确定所述多个坐标距离中的最小值对应的待定坐标点为所述第二目标点。
在一种实施方式中,在所述依据所述障碍区域与所述第一目标点确定第二目标点方面,所述判断单元903,具体用于:连接所述坐标与所述第一坐标点,得到第一线段;获取所述第一线段与所述障碍区域的边线的交点,以所述交点为向量起点、所述第一目标点为向量终点确定第一向量;对所述第一向量进行向量分解得到第二向量、第三向量,确定所述第二向量和所述第三向量中与所述边线平行的向量为目标向量;确定所述目标向量的方向为第二方向,依据所述第二方向与所述交点确定所述第二目标点。
在一种实施方式中,在所述依据所述第二方向与所述交点确定所述第二目标点方面,所述判断单元903,具体用于:依据预设的移动距离与步长的映射关系确定所述第一移动距离对应的第一步长;在所述第二方向上确定与所述交点距离等于所述第一步长的点为所述第二目标点。
在一种实施方式中,在所述依据所述第二目标点生成目标移动指令方面,所述执行单元904,具体用于:获取所述第一移动距离对应的第一步长,依据所述坐标、所述第二目标点和所述第一步长执行最短路径规划,得到目标移动路径;依据所述目标移动路径、所述第一步长生成所述目标移动指令。
在一种实施方式中,在所述依据所述第二目标点生成目标移动指令方面,所述执行单元904,具体用于:获取所述第一移动距离对应的第一步长,依据所述坐标、所述第二目标点和所述第一步长生成指令获取请求,向预设服务器发送所述指令获取请求;接收所述预设服务器返回的指令响应,所述指令响应包括:所述目标移动指令。
在一种实施方式中,在所述依据所述目标移动指令移动所述目标虚拟对象至所述第二目标点之后方面,所述执行单元904,还用于:接收所述预设传感器返回的第二数据,其中,所述第二数据包括:第二角度和第二移动距离;依据所述第二数据执行所述虚拟对象控制方法。
根据本发明的另一个实施例,图9所示的虚拟角色控制装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本发明的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本发明的其它实施例中,基于虚拟对象控制装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
根据本发明的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算设备上运行能够执行如图4或图5中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图9中所示的虚拟对象控制装置设备,以及来实现本发明实施例的虚拟对象控制方法。所述计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算设备中,并在其中运行。
本申请实施例还提供一种计算机存储介质,其中,该计算机存储介质存储用于电子数据交换的计算机程序,该计算机程序使得计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤,上述计算机包括电子设备。
本申请实施例还提供一种计算机程序产品,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如上述方法实施例中记载的任一方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包,上述计算机包括电子设备。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储器中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储器中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例上述方法的全部或部分步骤。而前述的存储器包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取器(英文:Random Access Memory,简称:RAM)、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (9)
1.一种虚拟对象控制方法,其特征在于,所述方法包括:
接收预设传感器返回的第一数据,所述第一数据包括:第一角度和第一移动距离;
获取目标虚拟对象的坐标,依据所述坐标、所述第一角度、所述第一移动距离确定第一目标点;
判断障碍区域是否包含所述第一目标点,若所述障碍区域包含所述第一目标点,依据所述障碍区域与所述第一目标点确定第二目标点,其中,所述第二目标点位于非障碍区域;
依据所述第二目标点生成目标移动指令,依据所述目标移动指令移动所述目标虚拟对象至所述第二目标点,所述移动指令包括基于所述目标虚拟对象的坐标与所述第二目标点确定的目标移动路径;
所述依据所述障碍区域与所述第一目标点确定第二目标点,包括:
获取所述第一目标点与所述障碍区域的多条边线对应的多个垂点;
从所述多个垂点中选取位于所述非障碍区域的多个非障碍区垂点;
获取所述障碍区域对应的多个顶点坐标;
依据所述多个顶点坐标、所述多个非障碍区垂点生成待定坐标点集,依据所述待定坐标点集与所述第一目标点确定所述第二目标点。
2.根据权利要求1所述的方法,其特征在于,所述获取目标虚拟对象的坐标,依据所述坐标、所述第一角度、所述第一移动距离确定第一目标点,包括:
依据预设的移动距离与步长的映射关系确定所述第一移动距离对应的第一步长;
以所述坐标为坐标原点构建第一直角坐标系;
在所述第一直角坐标系中依据所述第一角度与所述坐标原点确定第一方向;
在所述第一方向上依据所述第一步长确定所述第一目标点。
3.根据权利要求1所述的方法,其特征在于,所述依据所述待定坐标点集与所述第一目标点确定所述第二目标点,包括:
获取所述第一目标点的第一坐标和所述待定坐标点集中多个待定坐标点的多个待定坐标;
计算所述第一坐标与所述多个待定坐标的多个坐标距离;
确定所述多个坐标距离中的最小值对应的待定坐标点为所述第二目标点。
4.根据权利要求1所述的方法,其特征在于,所述依据所述第二目标点生成目标移动指令,包括:
获取所述第一移动距离对应的第一步长,依据所述坐标、所述第二目标点和所述第一步长执行最短路径规划,得到目标移动路径;
依据所述目标移动路径、所述第一步长生成所述目标移动指令。
5.根据权利要求1所述的方法,其特征在于,所述依据所述第二目标点生成目标移动指令,包括:
获取所述第一移动距离对应的第一步长,依据所述坐标、所述第二目标点和所述第一步长生成指令获取请求,向预设服务器发送所述指令获取请求;
接收所述预设服务器返回的指令响应,所述指令响应包括:所述目标移动指令。
6.根据权利要求1所述的方法,其特征在于,所述依据所述目标移动指令移动所述目标虚拟对象至所述第二目标点之后,还包括:
接收所述预设传感器返回的第二数据,其中,所述第二数据包括:第二角度和第二移动距离;
依据所述第二数据执行所述虚拟对象控制方法。
7.一种虚拟对象控制装置,其特征在于,所述装置包括:
接收单元,用于接收预设传感器返回的第一数据,所述第一数据包括:第一角度和第一移动距离;
确定单元,用于获取目标虚拟对象的坐标,依据所述坐标、所述第一角度、所述第一移动距离确定第一目标点;
判断单元,用于判断障碍区域是否包含所述第一目标点,若所述障碍区域包含所述第一目标点,依据所述障碍区域与所述第一目标点确定第二目标点,其中,所述第二目标点位于非障碍区域;
在所述依据所述障碍区域与所述第一目标点确定第二目标点方面,所述判断单元具体用于:获取所述第一目标点与所述障碍区域的多条边线对应的多个垂点;从所述多个垂点中选取位于所述非障碍区域的多个非障碍区垂点;获取所述障碍区域对应的多个顶点坐标;依据所述多个顶点坐标、所述多个非障碍区垂点生成待定坐标点集,依据所述待定坐标点集与所述第一目标点确定所述第二目标点;
执行单元,用于依据所述第二目标点生成目标移动指令,依据所述目标移动指令移动所述目标虚拟对象至所述第二目标点,所述移动指令包括基于所述目标虚拟对象的坐标与所述第二目标点确定的目标移动路径。
8.一种终端,包括输入设备和输出设备,其特征在于,还包括:
处理器,适于实现一条或多条指令;以及,
计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行如权利要求1-6任一项所述的虚拟对象控制方法。
9.一种计算机存储介质,其特征在于,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由处理器加载并执行如权利要求1-6任一项所述的虚拟对象控制方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910984150.3A CN110743161B (zh) | 2019-10-16 | 2019-10-16 | 虚拟对象控制方法、装置、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910984150.3A CN110743161B (zh) | 2019-10-16 | 2019-10-16 | 虚拟对象控制方法、装置、终端及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110743161A CN110743161A (zh) | 2020-02-04 |
CN110743161B true CN110743161B (zh) | 2021-08-24 |
Family
ID=69278540
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910984150.3A Active CN110743161B (zh) | 2019-10-16 | 2019-10-16 | 虚拟对象控制方法、装置、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110743161B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111381677B (zh) * | 2020-03-17 | 2021-06-22 | 清华大学 | 一种目标选择方法、装置、设备及可读存储介质 |
CN111488280B (zh) * | 2020-04-09 | 2021-07-02 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、存储介质及电子设备 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SU1062758A1 (ru) * | 1982-10-01 | 1983-12-23 | Ленинградский Ордена Ленина И Ордена Красного Знамени Механический Институт | Устройство дл предотвращени столкновени автоматического транспортного средства с преп тстви ми |
CN106814732A (zh) * | 2015-11-27 | 2017-06-09 | 科沃斯机器人股份有限公司 | 自移动机器人及其行走模式转换方法和行走方法 |
CN106178504B (zh) * | 2016-06-27 | 2019-07-05 | 网易(杭州)网络有限公司 | 虚拟对象运动控制方法及装置 |
CN106679669B (zh) * | 2016-12-30 | 2019-08-06 | 深圳优地科技有限公司 | 一种移动机器人路径规划方法和系统 |
CN107817796B (zh) * | 2017-10-25 | 2020-02-07 | 上海思岚科技有限公司 | 移动机器人贴障碍物运动的方法和设备 |
CN109126134A (zh) * | 2018-09-29 | 2019-01-04 | 北京金山安全软件有限公司 | 游戏角色的移动方法、装置和电子设备 |
CN109999498A (zh) * | 2019-05-16 | 2019-07-12 | 网易(杭州)网络有限公司 | 一种虚拟对象的寻路方法和装置 |
CN110141862B (zh) * | 2019-06-21 | 2023-05-05 | 网易(杭州)网络有限公司 | 游戏中移动控制的方法及装置、电子设备、存储介质 |
-
2019
- 2019-10-16 CN CN201910984150.3A patent/CN110743161B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110743161A (zh) | 2020-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109598777B (zh) | 图像渲染方法、装置、设备及存储介质 | |
CN107958480B (zh) | 图像渲染方法、装置及存储介质 | |
CN108196765A (zh) | 显示控制方法、电子设备及存储介质 | |
US10888782B2 (en) | Image processing method and apparatus | |
CN107952243B (zh) | 路径确定方法及装置 | |
CN109074160A (zh) | 动态触觉重定目标 | |
CN108211350B (zh) | 信息处理方法、电子设备及存储介质 | |
CN108776544B (zh) | 增强现实中的交互方法及装置、存储介质、电子设备 | |
CN110743161B (zh) | 虚拟对象控制方法、装置、终端及存储介质 | |
US9229614B2 (en) | Storage medium storing information processing program, information processing device, information processing system, and method for calculating specified position | |
CN108245889B (zh) | 自由视角朝向切换方法及装置、存储介质、电子设备 | |
CN111481923B (zh) | 摇杆显示方法及装置、计算机存储介质、电子设备 | |
US20140111551A1 (en) | Information-processing device, storage medium, information-processing method, and information-processing system | |
CN112190930A (zh) | 一种游戏角色的控制方法及装置 | |
CN106527916A (zh) | 基于虚拟现实设备的操作方法、装置及操作设备 | |
CN113663333A (zh) | 游戏的控制方法、装置、电子设备及存储介质 | |
CN113198179A (zh) | 虚拟对象的转向控制方法及装置、存储介质、电子设备 | |
CN112987924A (zh) | 用于设备交互的方法、装置、设备和存储介质 | |
WO2023240889A1 (zh) | 虚拟对象的切换方法及装置、存储介质、电子设备 | |
CN111973984A (zh) | 虚拟场景的坐标控制方法、装置、电子设备及存储介质 | |
KR101417947B1 (ko) | 온라인 게임에서의 유저 제스처 입력 처리 방법 | |
CN112473138B (zh) | 游戏的显示控制方法及装置、可读存储介质、电子设备 | |
CN116020119A (zh) | 虚拟场景中视野的控制方法、装置以及电子终端 | |
CN115607967A (zh) | 显示位置调整方法、装置、存储介质与电子设备 | |
CN115518373A (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40022103 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |