CN109568942B - 手柄外设、虚拟对象控制方法及装置 - Google Patents

手柄外设、虚拟对象控制方法及装置 Download PDF

Info

Publication number
CN109568942B
CN109568942B CN201710895568.8A CN201710895568A CN109568942B CN 109568942 B CN109568942 B CN 109568942B CN 201710895568 A CN201710895568 A CN 201710895568A CN 109568942 B CN109568942 B CN 109568942B
Authority
CN
China
Prior art keywords
spherical function
function key
key
information
spherical
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
Application number
CN201710895568.8A
Other languages
English (en)
Other versions
CN109568942A (zh
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.)
Tencent Technology Chengdu Co Ltd
Original Assignee
Tencent Technology Chengdu 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 Tencent Technology Chengdu Co Ltd filed Critical Tencent Technology Chengdu Co Ltd
Priority to CN201710895568.8A priority Critical patent/CN109568942B/zh
Publication of CN109568942A publication Critical patent/CN109568942A/zh
Application granted granted Critical
Publication of CN109568942B publication Critical patent/CN109568942B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/20Input arrangements for video game devices
    • A63F13/24Constructional details thereof, e.g. game controllers with detachable joystick handles
    • 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/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Position Input By Displaying (AREA)

Abstract

本发明公开了一种手柄外设、虚拟对象控制方法及装置,属于人机交互技术领域。该手柄外设包括:手柄本体;设置在所述手柄本体中的容置槽;容置于所述容置槽内且突出于所述容置槽的槽口的球形功能键,所述球形功能键用于接收触发操作和滚动操作;与所述容置槽相连的感测组件,所述感测组件用于检测对应于所述球形功能键的所述触发操作和/或所述滚动操作。本发明通过将手柄外设中的功能键设置为用于接收触发操作和滚动操作的球形功能键,使得通过对一个球形功能键进行连续操作(比如:滚动后按压)即可触发虚拟对象执行对应的预设动作,大大缩短了执行预设动作所需的响应时间,适应大部分电子游戏的输入操作要求。

Description

手柄外设、虚拟对象控制方法及装置
技术领域
本发明实施例涉及人机交互技术领域,特别涉及一种手柄外设、虚拟对象控制方法及装置。
背景技术
手柄外设是一种常见的电子游戏的输入装置,用户通过操纵手柄外设上的按钮实现对电子游戏中虚拟对象的控制。
相关技术中,如图1所示,手柄外设100通常包括手柄本体110、摇杆装置120和按钮130;其中,摇杆装置120包括左摇杆122和右摇杆124,按钮130包括4个用于接收按压操作的按钮130,分别为按钮A、按钮B、按钮X和按钮Y,每个按钮130为圆柱形组件。使用手柄外设控制虚拟对象的方法包括:当手柄外设100检测到对应于左摇杆122的摇动操作时控制虚拟对象的朝向,当检测到对应于右摇杆124的摇动操作时控制该虚拟对象的位置,当检测到对应于其中一个按钮130的按压操作时控制该虚拟对象执行与该按钮130对应的动作。
但是在上述方法中,用户需要经过摇动左摇杆、摇动右摇杆和按压按钮等多步操作才能触发虚拟对象执行对应的动作,操作十分复杂,导致动作执行不及时,无法适应很多电子游戏的输入操作要求。
发明内容
为了解决相关技术中手柄外设控制虚拟对象执行预设动作时所需的操作十分复杂的问题,本发明实施例提供了一种手柄外设、虚拟对象控制方法及装置。所述技术方案如下:
第一方面,提供了一种手柄外设,所述手柄外设包括:
手柄本体;
设置在所述手柄本体中的容置槽;
容置于所述容置槽内且突出于所述容置槽的槽口的球形功能键,所述球形功能键用于接收触发操作和滚动操作;
与所述容置槽相连的感测组件,所述感测组件用于检测对应于所述球形功能键的所述触发操作和/或所述滚动操作。
第二方面,提供了一种虚拟对象控制方法,其特征在于,用于如第一方面所述的手柄外设中,所述方法包括:
当检测到对应于所述手柄外设的球形功能键的滚动操作时,向电子设备发送滚动信息,所述滚动信息用于指示所述球形功能键被滚动时的偏移量,所述电子设备用于根据所述滚动信息中的所述偏移量确定所述球形功能键对应的目标朝向和/或目标位置;
当检测到对应于所述球形功能键的第一触发操作时,向所述电子设备发送确认信息,所述确认信息用于指示所述电子设备控制虚拟对象根据所述目标朝向和/或所述目标位置执行与所述球形功能键对应的预设动作;或,
当接收到对应于所述球形功能键的第二触发操作时,向所述电子设备发送取消信息,所述取消信息用于指示所述电子设备取消对所述虚拟对象的控制,所述第二触发操作是与所述第一触发操作不同的触发操作。
第三方面,提供了一种虚拟对象控制方法,其特征在于,用于与如第二方面所述的手柄外设相连的电子设备中,所述方法包括:
当接收到所述手柄外设发送的滚动信息时,确定所述手柄外设的球形功能键对应的目标朝向和/或目标位置,所述滚动信息用于指示所述球形功能键被滚动时的偏移量;
当接收到所述手柄外设发送的确认信息时,控制虚拟对象根据所述目标朝向和/或所述目标位置执行与所述球形功能键对应的预设动作;或,
当接收到所述手柄外设发送的取消信息时,取消对所述虚拟对象的控制。
第四方面,提供了一种虚拟对象控制装置,用于与如第一方面的手柄外设相连的电子设备中,所述装置包括:
确定模块,用于当接收到所述手柄外设发送的滚动信息时,确定所述手柄外设的球形功能键对应的目标朝向和/或目标位置,所述滚动信息用于指示所述球形功能键被滚动时的偏移量;
第一控制模块,用于当接收到所述手柄外设发送的确认信息时,控制虚拟对象根据所述目标朝向和/或所述目标位置执行与所述球形功能键对应的预设动作;或,
第二控制模块,用于当接收到所述手柄外设发送的取消信息时,取消对所述虚拟对象的控制。球形功能键对应的目标朝向和/或目标位置
第五方面,提供了一种电子设备,所述电子设备中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如第二方面任一所述的虚拟对象控制方法。
第六方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现第二方面所述的虚拟对象控制方法。
第七方面,提供了一种虚拟对象控制系统,所述虚拟对象控制系统包括:所述手柄外设包括如第一方面所述的手柄外设;所述电子设备包括如第四方面或者第五方面所述的装置。
本发明实施例提供的技术方案带来的有益效果是:
通过将手柄外设的手柄本体中的功能键设置为用于接收触发操作和滚动操作的球形功能键,由于球形功能键能够模拟出触摸屏下预设动作执行的输入流程,使得通过对一个球形功能键进行连续操作(比如:滚动后按压)即可触发虚拟对象执行对应的预设动作,大大缩短了执行预设动作所需的响应时间,使得预设动作能够及时执行,适应大部分电子游戏的输入操作要求。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是相关技术中手柄外设的结构示意图;
图2是本发明实施例所提供的虚拟对象控制系统的结构示意图;
图3是本发明一个实施例提供的手柄外设200的结构示意图;
图4是本发明一个实施例提供的虚拟对象控制方法的流程图;
图5A是本发明另一个实施例提供的虚拟对象控制方法的流程图;
图5B是本发明另一个实施例提供的虚拟对象控制方法所涉及的原理示意图;
图5C是本发明另一个实施例提供的虚拟对象控制方法所涉及的原理示意图;
图6是本发明另一个实施例提供的虚拟对象控制方法所涉及的示意图;
图7是本发明另一个实施例提供的虚拟对象控制方法的流程图;
图8是本发明另一个实施例提供的虚拟对象控制方法的流程图;
图9是本发明一个实施例提供的虚拟对象控制装置的结构示意图;
图10是本发明另一个实施例提供的虚拟对象控制装置的结构示意图;
图11是本发明一个实施例提供的终端1100的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
请参考图2,其示出了本发明实施例所提供的虚拟对象控制系统的结构示意图。该虚拟对象控制系统包括:手柄外设200和电子设备300。
手柄外设200包括:手柄本体210,设置在手柄本体210中的容置槽220;容置于容置槽220内且突出于容置槽220的槽口的球形功能键230。
可选的,手柄外设200呈梯形形状。
球形功能键230设置在手柄本体210的正面右侧,球形功能键230包括至少一个球形功能键230,本实施例对球形功能键230的数量不加以限定。
可选的,球形功能键230包括呈预设形状排列的四个球形功能键230,预设形状为圆形、椭圆形、菱形和方形中的一种。
球形功能键230用于接收触发操作和滚动操作。
其中,触发操作包括按键触摸操作、按键按压操作、按键弹起操作、按键离开操作中的至少一种。
按键触摸操作是将球形功能键的按键状态从未触摸状态切换为触摸状态时的操作,按键按压操作是球形功能键被按压时的操作,按键弹起操作是球形功能键被按压后弹起时的操作,按键离开操作是将球形功能键的按键状态从触摸状态切换为未触摸状态时的操作。
示意性的,手柄本体210中设置有四个容置槽220,每个容置槽220中容置有一个球形功能键230,这四个球形功能键230分别为球形功能键A、球形功能键B、球形功能键X和球形功能键Y。
需要说明的是,图2中仅示意性地示出了一个球形功能键230(球形功能键B)与容置槽220的结构关系,其它的球形功能键230与容置槽220之间的结构关系可进行类比参考。
与容置槽220相连的感测组件(图中未示出),感测组件用于检测对应于球形功能键的触发操作和/或滚动操作。
可选的,感测组件也称为信号识别处理模块,用于当检测到用户操作时生成与该用户操作对应的控制信息,控制信息包括按键触摸信息、按键按压信息、按键离开信息、滚动信息中的至少一种。
在一种可能的实现方式中,当检测到对应于球形功能键的用户操作为按键触摸操作时,感测组件生成该按键触摸操作对应的按键触摸信息;比如,按键触摸信息为ButtonTouch信息。
在另一种可能的实现方式中,当检测到对应于球形功能键的用户操作为按键按压操作时,感测组件生成该按键按压操作对应的按键按压信息;比如,按键按压信息为ButtonDown信息。
在另一种可能的实现方式中,当检测到对应于球形功能键的用户操作为按键弹起操作时,感测组件生成该按键弹起操作对应的按键弹起信息;比如,按键弹起信息为ButtonUp信息。
在另一种可能的实现方式中,当检测到对应于球形功能键的用户操作为按键离开操作时,感测组件生成该按键离开操作对应的按键离开信息;比如,按键离开信息为ButtonLeave信息。
在另一种可能的实现方式中,当检测到对应于球形功能键的用户操作为滚动操作时,感测组件生成该滚动操作对应的滚动信息,该滚动信息用于指示球形功能键被滚动时的偏移量,球形功能键被滚动时的偏移量包括该球形功能键在预设二维空间中的第一水平偏移量和第一垂直偏移量。
比如,滚动信息为ButtonRoll(Δx,Δy)信息,Δx为该球形功能键在预设二维空间中的第一水平偏移量,用于指示球形功能键被滚动时在x轴方向上的偏移量;Δy为该球形功能键在预设二维空间中的第一垂直偏移量,用于指示球形功能键被滚动时在y轴方向上的偏移量。
该手柄外设200还包括:设置在手柄本体内部的传输组件(图中未示出)。传输组件为无线传输组件或者有线传输组件,手柄外设200通过传输组件与电子设备300进行无线或有线通信。
可选的,传输组件是蓝牙组件、WIFI(Wireless-Fidelity,无线保真)组件、USB(Universal Serial Bus,通用串行总线)组件和UART(Universal AsynchronousReceiver/Transmitter,通用异步收发传输器)组件中的任意一种。
可选的,该传输组件是设置在感测组件中的组件,或者是与感测组件相连的独立组件。
传输组件用于当感测组件检测到对应于球形功能键的触发操作和/或滚动操作时,向电子设备发送控制信息。
可选的,传输组件还用于当感测组件检测到对应于球形功能键的滚动操作时,向电子设备发送滚动信息,滚动信息用于指示球形功能键被滚动时的偏移量,电子设备用于根据滚动信息中的偏移量确定球形功能键对应的目标朝向和/或目标位置。
可选的,传输组件还用于当感测组件检测到对应于球形功能键的第一触发操作时,向电子设备发送确认信息,确认信息用于指示电子设备控制虚拟对象根据目标朝向和/或目标位置执行与球形功能键对应的预设动作;或,当感测组件接收到对应于球形功能键的第二触发操作时,向电子设备发送取消信息,取消信息用于指示电子设备取消对虚拟对象的控制,第二触发操作是与第一触发操作不同的触发操作。
其中,虚拟对象是具有执行预设工作的能力的对象。比如,虚拟对象是虚拟场景中的游戏角色。
其中,第一触发操作是预先设置的触发操作,第一触发操作是按键按压操作、按键弹起操作和按键离开操作中的一种。
第二触发操作是预先设置的与第一触发操作不同的触发操作,第二触发操作是按键弹起操作或者按键离开操作。下面仅以第一触发操作为按键按压操作、第二触发操作为按键离开操作为例进行说明。
电子设备300用于接收手柄外设200发送的控制信息,根据控制信息控制虚拟对象执行或者取消执行预设动作。
电子设备300可以是智能手机、平板电脑、个人电脑、智能电视等具有数据传输功能的终端。电子设备300中运行有能够在虚拟场景中控制与该手柄外设200对应的虚拟对象的应用程序;示意性的,该应用程序是存在虚拟对象的电子游戏应用程序。
基于图2所提供的手柄外设200,如图3所示,该手柄外设200还包括用于摇动操作的摇杆装置240、用于按压操作的中间功能键250和十字方向键260中的至少一种。
该摇杆装置240包括左摇杆242和右摇杆244,左摇杆242用于控制虚拟对象的朝向,右摇杆244用于控制虚拟对象的位置,十字方向键260也用于控制虚拟对象的朝向,左摇杆242与十字方向键260可自由切换使用。
中间功能键250可以是用于切换左摇杆242与十字方向键260的功能键,也可以是用于连续执行预设动作的连发键,还可以是用于取消连续执行预设动作的取消连发键,本实施例对中间功能键250的数量和功能不加以限定。
可选的,该手柄外设200还包括可伸缩手柄支架、电源灯、模拟键盘等中的至少一种。
请参考图4,其示出了本发明一个实施例提供的虚拟对象控制方法的流程图。本实施例以该虚拟对象控制方法应用于上述提供的虚拟对象控制系统中来举例说明。该方法包括以下步骤:
步骤401,当手柄外设检测到对应于手柄外设的球形功能键的滚动操作时,向电子设备发送滚动信息。
手柄外设实时检测对应于该手柄外设的球形功能键的用户操作,当检测到的对应于球形功能键的用户操作为滚动操作时,手柄外设生成该滚动操作对应的滚动信息,该滚动信息用于指示球形功能键被滚动时的偏移量。
比如,手柄外设生成该滚动操作对应的ButtonRoll(Δx,Δy)信息,ButtonRoll(Δx,Δy)信息中的Δx和Δy用于指示球形功能键被滚动时的偏移量。
可选的,在手柄外设生成滚动信息之前还包括,当手柄外设检测到的对应于球形功能键的用户操作为滚动操作时,确定该球形功能键的按键标识。
示意性的,手柄外设中存储有多个球形功能键各自对应的按键标识,按键标识用于在手柄外设中唯一标识该球形功能键;比如,球形功能键A的按键标识为“01”。
手柄外设在生成滚动信息之后,将滚动信息和球形功能键的按键标识发送至电子设备。
步骤402,当电子设备接收到手柄外设发送的滚动信息时,确定手柄外设的球形功能键对应的目标朝向和/或目标位置。
电子设备接收到手柄外设发送的滚动信息时,根据滚动信息所指示的球形功能键被滚动时的偏移量,确定该球形功能键对应的目标朝向和/或目标位置。
确定球形功能键对应的目标朝向的方法包括:电子设备根据ButtonRoll(Δx,Δy)信息中的Δx和Δy,确定对应的向量,将该向量的向量方向确定为球形功能键对应的目标朝向。
比如,ButtonRoll(Δx,Δy)信息中的Δx为“10”,和Δy为“10”,则确定对应的向量是向量大小为“10√2”,向量方向为与x轴正方向呈45度夹角的向量,将该向量方向确定为球形功能键对应的目标朝向。
确定球形功能键对应的目标位置的方法包括:当电子设备接收到手柄外设发送的滚动信息和球形功能键的按键标识时,确定存储的与该球形功能键的按键标识对应的当前位置,根据该球形功能键的当前位置和被滚动时的偏移量,通过预定算法确定该球形功能键对应的目标位置。相关细节可参考下面的方法实施例,在此先不介绍。可选的,电子设备中存储有球形功能键的按键标识与该球形功能键的当前位置之间的对应关系,当前位置是指在接收到此次滚动信息之前存储的该球形功能键对应的位置,球形功能键的当前位置包括球形功能键的第一横坐标和第一纵坐标。
当前位置是实时更新的,即当电子设备确定出手柄外设的球形功能键对应的目标位置时,将当前位置更新为目标位置。
步骤403,当手柄外设检测到对应于球形功能键的第一触发操作时,向电子设备发送确认信息。
当手柄外设检测到对应于球形功能键的第一触发操作时,生成确认信息,并向电子设备发送该确认信息,该确认信息用于指示电子设备控制虚拟对象根据目标朝向和/或目标位置执行与球形功能键对应的预设动作。
可选的,手柄外设在向电子设备发送确认信息的同时,向电子设备发送球形功能键的按键标识。
步骤404,当电子设备接收到手柄外设发送的确认信息时,控制虚拟对象根据目标朝向和/或目标位置执行与球形功能键对应的预设动作。
电子设备控制虚拟对象根据目标朝向执行与球形功能键对应的预设动作包括:电子设备控制该虚拟对象的朝向为目标朝向,并向目标朝向所指示的方向执行与球形功能键对应的预设动作。
电子设备控制虚拟对象根据目标位置执行与球形功能键对应的预设动作,包括但不限于以下两种可能的实现方式:
在一种可能的实现方式中,电子设备控制该虚拟对象移动至目标位置,并在目标位置执行与球形功能键对应的预设动作。在该实现方式中,球形功能键对应的目标位置是球形功能键对应的虚拟对象所需移动至的位置。
在另一种可能的实现方式中,电子设备控制虚拟对象在原地不动,并向目标位置执行与球形功能键对应的预设动作。在该实现方式中,球形功能键对应的目标位置是球形功能键对应的虚拟对象所需攻击的位置。
可选的,当电子设备接收到手柄外设发送的确认信息和球形功能键的按键标识时,确定与该按键标识对应的预设动作,控制虚拟对象根据目标位置执行该预设动作。
电子设备中存储有多个球形功能键的按键标识和多个预设动作的第一对应关系;示意性的,第一对应关系如表一所示。在表一中,球形功能键A的按键标识“01”对应的预设动作为“扔地雷”,球形功能键B的按键标识“02”对应的预设动作为“发射冲击波”,球形功能键X的按键标识“03”对应的预设动作为“扔扇子”,球形功能键Y的按键标识“04”对应的预设动作为“射箭”。
表一
按键标识 预设动作
01 扔地雷
02 发射冲击波
03 扔扇子
04 射箭
下面仅以电子设备确定球形功能键对应的目标位置,当接收到手柄外设发送的确认信息时控制虚拟对象在目标位置执行与球形功能键对应的预设动作为例进行说明。
步骤405,当手柄外设接收到对应于球形功能键的第二触发操作时,向电子设备发送取消信息。
当手柄外设检测到对应于球形功能键的第二触发操作时,生成取消信息,并向电子设备发送该取消信息,该取消信息用于指示电子设备取消对虚拟对象的控制。
可选的,手柄外设在向电子设备发送确认信息的同时,向电子设备发送球形功能键的按键标识。
步骤406,当电子设备接收到手柄外设发送的取消信息时,取消对虚拟对象的控制。
可选的,当电子设备接收到手柄外设发送的取消信息和球形功能键的按键标识时,确定与该按键标识对应的预设动作,取消对虚拟对象的控制。
综上所述,本发明实施例还通过当手柄外设检测到对应于手柄外设的球形功能键的滚动操作时,向电子设备发送滚动信息,使得电子设备根据滚动信息所指示的球形功能键被滚动时的偏移量,确定该球形功能键对应的目标朝向和/或目标位置,在电子设备确定出目标位置后,若接收到手柄外设发送的确认信息则控制虚拟对象根据目标位置执行与球形功能键对应的预设动作,若接收到手柄外设发送的取消信息则取消对虚拟对象的控制,从而实现了通过手柄外设对一个球形功能键进行检测,即可使得电子设备确定在目标位置执行或者取消执行预设动作的可能。
请参考图5A,其示出了本发明另一个实施例提供的虚拟对象控制方法的流程图。本实施例以该虚拟对象控制方法应用于上述提供的虚拟对象控制系统中来举例说明。该方法包括以下步骤:
步骤501,当手柄外设检测到对应于球形功能键的第三触发操作时,向电子设备发送重置信息。
当手柄外设检测到对应于球形功能键的第三触发操作时,生成第三触发操作对应的重置信息,向电子设备发送重置信息,重置信息用于指示电子设备将存储的球形功能键的当前位置重置为原点位置,原点位置为横坐标和纵坐标均为零的二维坐标。
第三触发操作是预先设置与第一触发操作和第二触发操作均不同的操作。下面仅以第三触发操作为按键触摸操作,重置信息为ButtonTouch信息为例进行说明。
可选的,手柄外设在向电子设备发送重置信息的同时,向电子设备发送球形功能键的按键标识。
步骤502,当电子设备接收到手柄外设发送的重置信息时,将存储的球形功能键的当前位置重置为原点位置,原点位置为横坐标和纵坐标均为零的二维坐标。
当电子设备接收到手柄外设发送的重置信息和按键标识时,确定存储的与该按键标识对应的当前位置,并将该当前位置重置为原点位置。
步骤503,当手柄外设检测到对应于球形功能键的滚动操作时,获取球形功能键在预设的二维空间中的第一水平偏移量和第一垂直偏移量。
步骤504,手柄外设生成用于指示第一水平偏移量和第一垂直偏移量的滚动信息。
步骤505,手柄外设向电子设备发送滚动信息。
步骤506,当电子设备接收到手柄外设发送的滚动信息时,根据滚动信息中的第一水平偏移量和第一垂直偏移量,确定球形功能键对应的目标位置。
电子设备在接收到手柄外设发送的滚动信息时,获取存储的球形功能键对应的当前位置,当前位置包括球形功能键的第一横坐标和第一纵坐标;将第一水平偏移量与预设灵敏度的乘积加上第一横坐标得到第二横坐标,将第一垂直偏移量与预设灵敏度的乘积加上第一纵坐标得到第二纵坐标;根据第二横坐标和第二纵坐标,确定球形功能键对应的目标位置。
示意性的,电子设备接收到手柄外设发送的滚动信息和按键标识,滚动信息为ButtonRoll(Δx,Δy)信息,按键标识为“02”,确定与按键标识“02”对应的当前位置(i,j),计算得到第二横坐标X=Δx*预设灵敏度+i,第二纵坐标Y=Δy*预设灵敏度+j,确定球形功能键对应的目标位置为(X,Y)。
其中,预设灵敏度是预先设置的数值,比如,预设灵敏度为0.5。
步骤507,当手柄外设检测到对应于球形功能键的第一触发操作时,向电子设备发送确认信息。
可选的,当手柄外设检测到对应于球形功能键的按键按压操作时,生成ButtonDown信息,并向电子设备发送ButtonDown信息。
步骤508,当电子设备接收到手柄外设发送的确认信息时,控制虚拟对象根据目标位置执行与球形功能键对应的预设动作。
可选的,当电子设备接收到手柄外设发送的ButtonDown信息时,控制虚拟对象在目标位置上执行与球形功能键对应的预设动作。
步骤509,当手柄外设接收到对应于球形功能键的第二触发操作时,向电子设备发送取消信息。
可选的,当手柄外设检测到对应于球形功能键的按键离开操作时,生成ButtonLeave信息,并向电子设备发送ButtonLeave信息。
步骤510,当电子设备接收到手柄外设发送的取消信息时,取消对虚拟对象的控制。
可选的,当电子设备接收到手柄外设发送的ButtonLeave信息时,控制虚拟对象在目标位置上取消执行与球形功能键对应的预设动作。
需要说明的是,步骤507和步骤508是控制虚拟对象执行预设动作的一类步骤,步骤509和步骤510是取消对虚拟对象的控制的另一类步骤,这两类步骤可以择一执行,也可以顺序执行,本实施例对此不加以限定。
综上所述,本发明实施例还通过电子设备在接收到手柄外设发送的滚动信息时,获取存储的球形功能键对应的当前位置,当前位置包括球形功能键的第一横坐标和第一纵坐标,将第一水平偏移量与预设灵敏度的乘积加上第一横坐标得到第二横坐标,将第一垂直偏移量与预设灵敏度的乘积加上第一纵坐标得到第二纵坐标;使得电子设备能够根据上述的计算方式有效快速的计算得到目标位置的第二横坐标和第二纵坐标,从而确定出目标位置。
在一个示意性的例子中,虚拟对象为游戏角色,如图5B或图5C所示,用户触摸了手柄外设上的一个球形功能键230,该球形功能键230为球形功能键A,对应的,手柄外设检测到对应于球形功能键A的按键触摸操作,向电子设备发送重置信息,电子设备根据重置信息将球形功能键A的当前位置(3,4)重置为原点位置(0,0),此时电子设备中显示游戏角色51的当前位置;然后用户对球形功能键A进行滚动操作,对应的,手柄外设检测到对应于球形功能键A的滚动操作,向电子设备发送用于指示第一水平偏移量“10”和第一垂直偏移量“10”的滚动信息,电子设备根据滚动信息和球形功能键A的当前位置(3,4),计算第二横坐标X=10*0.5+3=8,第二纵坐标Y=10*0.5+4=9,确定球形功能键对应的目标位置为(8,9),此时电子设备中显示该游戏角色51的目标位置52。在一种可能的实现方式中,请参考图5B,若用户对球形功能键A进行触摸按压操作,则电子设备接收到手柄外设发送的确认信息,控制游戏角色51向目标位置52执行与球形功能键A对应的预设动作“发射冲击波”;在另一种可能的实现方式中,请参考图5C,若用户对球形功能键A进行触摸按压操作,则电子设备接收到手柄外设发送的确认信息,控制游戏角色51移动至目标位置52,在目标位置52上执行与球形功能键A对应的预设动作“发射冲击波”
基于如图2所示的虚拟对象控制系统,其中电子设备300包括驱动模块320和输入处理模块340。
电子设备300中的驱动模块320接收到手柄外设200发送的控制信息,将控制信息转为对应的输入事件,向输入处理模块340发送该输入事件,对应的,输入处理模块340根据接收到的输入事件进行相应的处理。
如图6所示,当手柄外设200向驱动模块320发送ButtonTouch信息时,驱动模块320将ButtonTouch信息转化为BtTouchEvent输入事件,将BtTouchEvent输入事件发送至输入处理模块340,输入处理模块340进行与BtTouchEvent输入事件对应的处理;当手柄外设200向驱动模块320发送ButtonDown信息时,驱动模块320将ButtonDown信息转化为BtDownEvent输入事件,将BtDownEvent输入事件发送至输入处理模块340,输入处理模块340进行与BtDownEvent输入事件对应的处理;当手柄外设200向驱动模块320发送ButtonUp信息时,驱动模块320将ButtonUp信息转化为BtUpEvent输入事件,将BtUpEvent输入事件发送至输入处理模块340,输入处理模块340进行与BtUpEvent输入事件对应的处理;当手柄外设200向驱动模块320发送ButtonLeave信息时,驱动模块320将ButtonLeave信息转化为BtLeaveEvent输入事件,将BtLeaveEvent输入事件发送至输入处理模块340,输入处理模块340进行与BtLeaveEvent输入事件对应的处理;当手柄外设200向驱动模块320发送ButtonRoll(Δx,Δy)信息时,驱动模块320将ButtonRoll(Δx,Δy)信息转化为BtRollEvent输入事件,将BtRollEvent输入事件发送至输入处理模块340,输入处理模块340进行与BtRollEvent输入事件对应的处理。
下面仅以第三触发操作为按键触摸操作,重置信息为ButtonTouch信息,重置事件为BtTouchEvent输入事件;第一触发操作为按键按压操作,确认信息为ButtonDown信息,确认事件为BtDownEvent输入事件;第二触发操作为按键离开操作,取消信息为ButtonLeave信息,取消事件为BtLeaveEvent输入事件;滚动信息为ButtonRoll(Δx,Δy)信息,滚动事件为BtRollEvent输入事件为例进行说明。
可选的,输入处理模块340还包括输入模块和处理模块,输入模块中存储有多个输入事件和多个函数之间的第二对应关系,每个输入事件对应一个函数,且每个函数对应至少一个输入事件。示意性的,第二对应关系如表二所示。BtTouchEvent输入事件对应的函数为第一函数,BtRollEvent输入事件对应的函数为第一函数,BtDownEvent输入事件对应的函数为第二函数,BtLeaveEvent输入事件对应的函数为第三函数。
表二
输入事件 函数
BtTouchEvent输入事件 第一函数
BtRollEvent输入事件 第一函数
BtDownEvent输入事件 第二函数
BtLeaveEvent输入事件 第三函数
可选的,第一函数为ShowSkill(x,y),第一函数用于在位置(x,y)上显示虚拟对象的朝向和攻击范围,虚拟对象的朝向为球形功能键对应的当前朝向,虚拟对象的攻击范围用于指示虚拟对象执行预设动作时所覆盖的范围;比如,攻击范围为以球形功能键对应的当前位置为圆点,预设值为半径所确定的范围。
可选的,第二函数为UseSkill(x,y),第二函数用于控制虚拟对象在位置(x,y)上执行预设动作;第三函数为CancelSkill(x,y),第三函数用于控制虚拟对象在位置(x,y)上取消执行预设动作。
请参考图7,其示出了本发明另一个实施例提供的虚拟对象控制方法的流程图。本实施例以该虚拟对象控制方法应用于如图2或图3所示的手柄外设200,以及图2或图6所示的电子设备300中来举例说明。该方法包括以下步骤:
步骤701,当手柄外设检测到对应于手柄外设的球形功能键的按键触摸操作时,向电子设备中的驱动模块发送ButtonTouch信息。
当手柄外设检测到对应于球形功能键的按键触摸操作时,生成按键触摸操作对应的ButtonTouch信息,向电子设备中的驱动模块发送ButtonTouch信息。
步骤702,当驱动模块接收到手柄外设发送的ButtonTouch信息时,将ButtonTouch信息转化为BtTouchEvent输入事件。
步骤703,驱动模块向输入处理模块发送BtTouchEvent输入事件。
步骤704,输入处理模块根据BtTouchEvent输入事件,将存储的球形功能键的当前位置(X,Y)重置为原点位置(0,0)。
输入处理模块将存储的球形功能键的当前位置重置为原点位置(0,0)后,确定与该BtTouchEvent输入事件对应的第一函数ShowSkill(x,y),将原点位置(0,0)确定为第一函数ShowSkill(x,y)的输入参数,调用ShowSkill(0,0)显示虚拟对象的朝向和攻击范围。
步骤705,当手柄外设检测到对应于手柄外设的球形功能键的滚动操作时,向电子设备中的驱动模块发送ButtonRoll(Δx,Δy)信息。
当手柄外设检测到对应于球形功能键的滚动操作时,生成滚动操作对应的ButtonRoll(Δx,Δy)信息,向电子设备中的驱动模块发送ButtonRoll(Δx,Δy)信息。
步骤706,当驱动模块接收到手柄外设发送的ButtonRoll(Δx,Δy)信息时,根据ButtonRoll(Δx,Δy)信息和球形功能键对应的当前位置(i,j)确定球形功能键对应的目标位置为(X,Y)。
驱动模块根据ButtonRoll(Δx,Δy)信息和球形功能键对应的当前位置(i,j),计算得到第二横坐标X=Δx*r+i,第二纵坐标Y=Δy*r+j,确定球形功能键对应的目标位置为(X,Y);其中,r为预设灵敏度。
步骤707,驱动模块向输入处理模块发送携带有目标位置(X,Y)的BtRollEvent输入事件。
驱动模块生成携带有目标位置(X,Y)的BtRollEvent输入事件,并将该BtRollEvent输入事件发送至输入处理模块。
步骤708,输入处理模块确定BtRollEvent输入事件中携带的目标位置(X,Y)。
输入处理模块在根据BtRollEvent输入事件确定目标位置(X,Y)后,确定与BtRollEvent输入事件对应的第一函数ShowSkill(x,y),将目标位置(X,Y)确定为ShowSkill(x,y)的输入参数,调用ShowSkill(X,Y)在目标位置(X,Y)上显示虚拟对象的朝向和攻击范围。
步骤709,当手柄外设检测到对应于手柄外设的球形功能键的按键按压操作时,向电子设备中的驱动模块发送ButtonDown信息。
步骤710,当驱动模块接收到手柄外设发送的ButtonDown信息时,将ButtonDown信息转化为BtDownEvent输入事件。
步骤711,驱动模块向输入处理模块发送BtDownEvent输入事件。
步骤712,输入处理模块根据BtDownEvent输入事件,控制虚拟对象在目标位置(X,Y)执行与球形功能键对应的预设动作。
步骤713,当手柄外设检测到对应于手柄外设的球形功能键的按键离开操作时,向电子设备中的驱动模块发送ButtonLeave信息。
步骤714,当驱动模块接收到手柄外设发送的ButtonLeave信息时,将ButtonLeave信息转化为BtLeaveEventt输入事件。
步骤715,驱动模块向输入处理模块发送BtLeaveEvent输入事件。
步骤716,输入处理模块根据BtLeaveEvent输入事件,控制虚拟对象在目标位置(X,Y)取消执行与球形功能键对应的预设动作。
需要说明的是,步骤709至步骤712是控制虚拟对象执行预设动作的一类步骤,步骤713和步骤716是取消对虚拟对象的控制的另一类步骤,这两类步骤可以择一执行,也可以顺序执行,本实施例对此不加以限定。
由于在上述方法中,驱动模块需要存储并实时更新各个球形功能键对应的当前位置,这无疑浪费了驱动模块中大量的存储资源,因此为了节约驱动模块的存储资源,上述步骤706至708可被替代实现成为步骤806至808,如图8所示:
步骤806,当驱动模块接收到手柄外设发送的ButtonRoll(Δx,Δy)信息时,确定球形功能键的第一滚动位置(ΔX,ΔY)。
当驱动模块接收到手柄外设发送的ButtonRoll(Δx,Δy)信息时,将第一水平偏移量Δx与预设灵敏度r相乘得到第一横坐标ΔX,将第一垂直偏移量Δy与预设灵敏度r相乘得到第一纵坐标ΔY,确定球形功能键的第一滚动位置(ΔX,ΔY)。
步骤807,驱动模块向输入处理模块发送携带有第一滚动位置(ΔX,ΔY)的BtRollEvent输入事件。
驱动模块生成携带有第一滚动位置(ΔX,ΔY)的BtRollEvent输入事件,并将该BtRollEvent输入事件发送至输入处理模块。
步骤808,输入处理模块根据BtRollEvent输入事件中携带的第一滚动位置(ΔX,ΔY),确定球形功能键对应的目标位置(X,Y)。
输入处理模块根据BtRollEvent输入事件确定第一滚动位置(ΔX,ΔY)和球形功能键对应的当前位置(i,j),计算得到第二横坐标X=ΔX+i,第二纵坐标Y=ΔY+j,确定球形功能键对应的目标位置为(X,Y)。
输入处理模块在确定球形功能键对应的目标位置为(X,Y)后,确定与BtRollEvent输入事件对应的第一函数,将目标位置(X,Y)确定为ShowSkill(x,y)的输入参数,并调用第一函数ShowSkill(x,y)在目标位置(X,Y)上显示虚拟对象的朝向和攻击范围。
综上所述,本实施例还通过当驱动模块接收到手柄外设发送的ButtonRoll(Δx,Δy)信息时,确定球形功能键的第一滚动位置(ΔX,ΔY),驱动模块向输入处理模块发送携带有第一滚动位置(ΔX,ΔY)的BtRollEvent输入事件,对应的,输入处理模块根据存储的当前位置(i,j)和驱动模块发送的第一滚动位置(ΔX,ΔY)确定球形功能键对应的目标位置(X,Y),使得目标位置的确定工作不再由驱动模块完成,而是由输入处理模块完成,进而避免了驱动模块中需要存储各个球形功能键对应的当前位置的情况,节约了驱动模块的存储资源,简化了驱动模块的实现,使得驱动模块能够适用于多种应用场景。
下述为本发明装置实施例,可以用于执行本发明方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。
请参考图9,其示出了本发明另一个实施例提供的虚拟对象控制装置的结构示意图。该装置可以通过专用硬件电路,或者,软硬件的结合实现成为电子设备的全部或一部分,该装置包括:确定模块910、第一控制模块920和第二控制模块930。
确定模块910,用于实现上述步骤402;
第一控制模块920,用于实现上述步骤404;或,
第二控制模块930,用于实现上述步骤406。
在基于图9所示实施例提供的一个可选实施例中,如图10所示,滚动信息用于指示球形功能键在预设二维空间中的第一水平偏移量和第一垂直偏移量;该确定模块910,还用于当接收到手柄外设发送的滚动信息时,根据滚动信息中的第一水平偏移量和第一垂直偏移量,确定球形功能键对应的目标朝向和/或目标位置。
该确定模块910,还包括:获取单元911、计算单元912和确定单元913。
获取单元911,用于获取存储的球形功能键对应的当前位置,当前位置包括球形功能键的第一横坐标和第一纵坐标;
计算单元912,用于将第一水平偏移量与预设灵敏度的乘积加上第一横坐标得到第二横坐标,将第一垂直偏移量与预设灵敏度的乘积加上第一纵坐标得到第二纵坐标;
确定单元913,用于根据第二横坐标和第二纵坐标,确定球形功能键对应的目标位置。
该装置,还用于当接收到手柄外设发送的重置信息时,将存储的球形功能键的当前位置重置为原点位置,原点位置为横坐标和纵坐标均为零的二维坐标。
相关细节可结合参考图4至图8所示的方法实施例。其中,确定模块910还用于实现上述方法实施例中其他任意隐含或公开的与确定步骤相关的功能;第一控制模块920和第二控制模块930还用于实现上述方法实施例中其他任意隐含或公开的与控制步骤相关的功能。
需要说明的是,上述实施例提供的装置,在实现其功能时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本发明实施例提供了一种虚拟对象控制系统,该虚拟对象控制系统包括:手柄外设和电子设备,该手柄外设与电子设备相连。
该手柄外设包括如图1或图2所提供的手柄外设;
该电子设备包括如图1、图6、图9和图10任一所提供的电子设备。
本发明实施例提供了一种电子设备,该电子设备包括处理器和存储器,存储器中存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现上述各个方法实施例提供的虚拟对象控制方法。
可选的,该电子设备为终端。
本发明实施例提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述各个方法实施例提供的虚拟对象控制方法。
请参考图11,其示出了本发明一个实施例提供的终端1100的结构示意图。该终端1100与手柄外设相连。该终端1100可以包括RF(Radio Frequency,射频)电路1110、包括有一个或一个以上计算机可读存储介质的存储器1120、输入单元1130、显示单元1140、传感器1150、音频电路1160、WiFi(wireless fidelity,无线保真)模块1170、包括有一个或者一个以上处理核心的处理器1180、以及电源1190等部件。本领域技术人员可以理解,图11中示出的设备结构并不构成对设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路1110可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器1180处理;另外,将涉及上行的数据发送给基站。通常,RF电路1110包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机、耦合器、LNA(Low Noise Amplifier,低噪声放大器)、双工器等。此外,RF电路1110还可以通过无线通信与网络和其他设备通信。无线通信可以使用任一通信标准或协议,包括但不限于GSM(Global System of Mobile communication,全球移动通讯系统)、GPRS(General Packet Radio Service,通用分组无线服务)、CDMA(CodeDivision Multiple Access,码分多址)、WCDMA(Wideband Code Division MultipleAccess,宽带码分多址)、LTE(Long Term Evolution,长期演进)、电子邮件、SMS(ShortMessaging Service,短信息服务)等。存储器1120可用于存储软件程序以及模块。处理器1180通过运行存储在存储器1120的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器1120可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端1100的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器1120还可以包括存储器控制器,以提供处理器1180和输入单元1130对存储器1120的访问。
输入单元1130可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元1130可包括触敏表面1131以及其他输入设备1132。触敏表面1131,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面1131上或在触敏表面1131附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面1131可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器1180,并能接收处理器1180发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面1131。除了触敏表面1131,输入单元1130还可以包括其他输入设备1132。具体地,其他输入设备1132可以包括但不限于物理键盘、球形功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元1140可用于显示由用户输入的信息或提供给用户的信息以及设备110的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元1140可包括显示面板1141,可选的,可以采用LCD(Liquid Crystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等形式来配置显示面板1141。进一步的,触敏表面1131可覆盖在显示面板1141之上,当触敏表面1131检测到在其上或附近的触摸操作后,传送给处理器1180以确定触摸事件的类型,随后处理器1180根据触摸事件的类型在显示面板1141上提供相应的视觉输出。虽然在图11中,触敏表面1131与显示面板1141是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面1131与显示面板1141集成而实现输入和输出功能。
终端1100还可包括至少一种传感器1150,比如光传感器、运动传感器以及其它传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板1141的亮度,接近传感器可在终端1100移动到耳边时,关闭显示面板1141和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于终端1100还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其它传感器,在此不再赘述。
音频电路1160、扬声器1121,传声器1122可提供用户与终端1100之间的音频接口。音频电路1160可将接收到的音频数据转换后的电信号,传输到扬声器1121,由扬声器1121转换为声音信号输出;另一方面,传声器1122将收集的声音信号转换为电信号,由音频电路1160接收后转换为音频数据,再将音频数据输出处理器1180处理后,经RF电路1110以发送给另一设备,或者将音频数据输出至存储器1120以便进一步处理。音频电路1160还可能包括耳塞插孔,以提供外设耳机与终端1100的通信。
WiFi属于短距离无线传输技术,终端1100通过WiFi模块1170可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图11示出了WiFi模块1170,但是可以理解的是,其并不属于终端1100的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器1180是终端1100的控制中心,利用各种接口和线路连接整个设备的各个部分,通过运行或执行存储在存储器1120内的软件程序和/或模块,以及调用存储在存储器1120内的数据,执行终端1100的各种功能和处理数据,从而对设备进行整体监控。可选的,处理器1180可包括一个或多个处理核心;可选的,处理器1180可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1180中。
终端1100还包括给各个部件供电的电源1190(比如电池),优选的,电源可以通过电源管理系统与处理器1180逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源1190还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,终端1100还可以包括摄像头、蓝牙模块等,在此不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (14)

1.一种手柄外设,其特征在于,所述手柄外设包括:
手柄本体;
设置在所述手柄本体中的容置槽;
容置于所述容置槽内且突出于所述容置槽的槽口的球形功能键,所述球形功能键用于接收触发操作和滚动操作,所述球形功能键包括四个球形功能键,所述四个球形功能键对应不同的预设动作;
与所述容置槽相连的感测组件,所述感测组件用于检测对应于所述球形功能键的所述触发操作和所述滚动操作;
设置在所述手柄本体内部的传输组件,所述传输组件用于当所述感测组件检测到对应于所述球形功能键的第一触发操作时,向电子设备发送确认信息,所述确认信息用于指示所述电子设备控制虚拟对象根据目标朝向和目标位置执行与所述球形功能键对应的预设动作;
所述手柄外设中存储有多个球形功能键各自对应的按键标识,所述按键标识用于在所述手柄外设中唯一标识所述球形功能键;
所述传输组件还用于当所述感测组件检测到对应于所述球形功能键的滚动操作时,确定所述球形功能键的按键标识,向所述电子设备发送滚动信息和所述球形功能键的按键标识,所述滚动信息用于指示所述球形功能键被滚动时的偏移量,所述电子设备用于根据所述滚动信息中的所述偏移量确定所述球形功能键对应的所述目标朝向和所述目标位置;
其中,所述电子设备根据ButtonRoll(Δx,Δy)信息中的Δx和Δy确定对应的向量,将所述向量的向量方向确定为所述球形功能键对应的所述目标朝向,所述Δx和所述Δy用于指示所述球形功能键被滚动时的偏移量;
当电子设备接收到所述滚动信息和所述球形功能键的按键标识时,确定存储的与所述球形功能键的按键标识对应的当前位置,根据所述球形功能键的当前位置和被滚动时的偏移量,通过预定算法确定所述球形功能键对应的目标位置。
2.根据权利要求1所述的手柄外设,其特征在于,所述球形功能键设置在所述手柄本体的正面右侧,所述球形功能键包括呈预设形状排列的四个球形功能键,所述预设形状为圆形、椭圆形、菱形和方形中的一种。
3.根据权利要求1所述的手柄外设,其特征在于,所述四个球形功能键包括球形功能键A、球形功能键B、球形功能键X和球形功能键Y。
4.根据权利要求1所述的手柄外设,其特征在于,所述手柄外设还包括:
所述传输组件是蓝牙组件、无线保真WIFI组件、通用串行总线USB组件和通用异步收发传输器UART组件中的任意一种;
所述传输组件用于当所述感测组件检测到对应于所述球形功能键的所述触发操作和所述滚动操作时,向电子设备发送控制信息。
5.根据权利要求1所述的手柄外设,其特征在于,
所述传输组件还用于当所述感测组件接收到对应于所述球形功能键的第二触发操作时,向所述电子设备发送取消信息,所述取消信息用于指示所述电子设备取消对所述虚拟对象的控制,所述第二触发操作是与所述第一触发操作不同的触发操作。
6.一种虚拟对象控制方法,其特征在于,用于如权利要求1至5任一所述的手柄外设中,所述手柄外设中存储有多个球形功能键各自对应的按键标识,所述按键标识用于在所述手柄外设中唯一标识所述球形功能键,所述方法包括:
当检测到对应于所述手柄外设的球形功能键的滚动操作时,确定所述球形功能键的按键标识,向电子设备发送滚动信息和所述球形功能键的按键标识,所述球形功能键包括四个球形功能键,所述四个球形功能键对应不同的预设动作,所述滚动信息用于指示所述球形功能键被滚动时的偏移量,所述电子设备用于根据所述滚动信息中的所述偏移量确定所述球形功能键对应的目标朝向和目标位置,其中,所述电子设备根据ButtonRoll(Δx,Δy)信息中的Δx和Δy确定对应的向量,将所述向量的向量方向确定为所述球形功能键对应的所述目标朝向,所述Δx和所述Δy用于指示所述球形功能键被滚动时的偏移量;当电子设备接收到所述滚动信息和所述球形功能键的按键标识时,确定存储的与所述球形功能键的按键标识对应的当前位置,根据所述球形功能键的当前位置和被滚动时的偏移量,通过预定算法确定所述球形功能键对应的目标位置;
当检测到对应于所述球形功能键的第一触发操作时,向所述电子设备发送确认信息,所述确认信息用于指示所述电子设备控制虚拟对象根据所述目标朝向和所述目标位置执行与所述球形功能键对应的预设动作;或,当接收到对应于所述球形功能键的第二触发操作时,向所述电子设备发送取消信息,所述取消信息用于指示所述电子设备取消对所述虚拟对象的控制,所述第二触发操作是与所述第一触发操作不同的触发操作。
7.根据权利要求6所述的方法,其特征在于,所述当检测到对应于所述球形功能键的滚动操作时,向电子设备发送滚动信息,包括:
当检测到对应于所述球形功能键的滚动操作时,获取所述球形功能键在预设的二维空间中的第一水平偏移量和第一垂直偏移量;
生成用于指示所述第一水平偏移量和所述第一垂直偏移量的所述滚动信息;
向所述电子设备发送所述滚动信息。
8.根据权利要求6所述的方法,其特征在于,所述当检测到对应于所述球形功能键的滚动操作时,向电子设备发送滚动信息之前,还包括:
当检测到对应于所述球形功能键的第三触发操作时,向所述电子设备发送重置信息,所述重置信息用于指示所述电子设备将存储的所述球形功能键的当前位置重置为原点位置,所述原点位置为横坐标和纵坐标均为零的二维坐标。
9.一种虚拟对象控制方法,其特征在于,用于与如权利要求1至5任一所述的手柄外设相连的电子设备中,所述手柄外设中存储有多个球形功能键各自对应的按键标识,所述按键标识用于在手柄外设中唯一标识该球形功能键,所述方法包括:
当接收到所述手柄外设发送的滚动信息和所述球形功能键的按键标识时,确定所述手柄外设的球形功能键对应的目标朝向和目标位置,所述滚动信息用于指示所述球形功能键被滚动时的偏移量,其中,所述电子设备根据ButtonRoll(Δx,Δy)信息中的Δx和Δy确定对应的向量,将所述向量的向量方向确定为所述球形功能键对应的所述目标朝向,所述Δx和所述Δy用于指示所述球形功能键被滚动时的偏移量;
当接收到所述滚动信息和所述球形功能键的按键标识时,确定存储的与所述球形功能键的按键标识对应的当前位置,根据所述球形功能键的当前位置和被滚动时的偏移量,通过预定算法确定所述球形功能键对应的目标位置;
当接收到所述手柄外设发送的确认信息时,控制虚拟对象根据所述目标朝向和所述目标位置执行与所述球形功能键对应的预设动作;或,
当接收到所述手柄外设发送的取消信息时,取消对所述虚拟对象的控制。
10.根据权利要求9所述的方法,其特征在于,所述滚动信息用于指示所述球形功能键在预设二维空间中的第一水平偏移量和第一垂直偏移量;
所述当接收到所述手柄外设发送的滚动信息时,确定所述球形功能键对应的目标朝向和目标位置,包括:
当接收到所述手柄外设发送的滚动信息时,根据所述滚动信息中的所述第一水平偏移量和所述第一垂直偏移量,确定所述球形功能键对应的所述目标朝向和所述目标位置。
11.根据权利要求10所述的方法,其特征在于,所述根据所述滚动信息中的所述第一水平偏移量和所述第一垂直偏移量,确定所述球形功能键对应的所述目标位置球形功能键对应的目标朝向和目标位置,包括:
获取存储的所述球形功能键对应的当前位置,所述当前位置包括所述球形功能键的第一横坐标和第一纵坐标;
将所述第一水平偏移量与预设灵敏度的乘积加上所述第一横坐标得到第二横坐标,将所述第一垂直偏移量与所述预设灵敏度的乘积加上所述第一纵坐标得到第二纵坐标;
根据所述第二横坐标和所述第二纵坐标,确定所述球形功能键对应的所述目标位置。
12.根据权利要求9所述的方法,其特征在于,所述方法,还包括:
当接收到所述手柄外设发送的重置信息时,将存储的所述球形功能键的当前位置重置为原点位置,所述原点位置为横坐标和纵坐标均为零的二维坐标。
13.一种电子设备,其特征在于,所述电子设备中存储有至少一条指令、至少一段程序,所述至少一条指令、所述至少一段程序由处理器加载并执行以实现如权利要求9至12任一所述的虚拟对象控制方法。
14.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序,所述至少一条指令、所述至少一段程序由处理器加载并执行以实现如权利要求9至12任一所述的虚拟对象控制方法。
CN201710895568.8A 2017-09-28 2017-09-28 手柄外设、虚拟对象控制方法及装置 Active CN109568942B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710895568.8A CN109568942B (zh) 2017-09-28 2017-09-28 手柄外设、虚拟对象控制方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710895568.8A CN109568942B (zh) 2017-09-28 2017-09-28 手柄外设、虚拟对象控制方法及装置

Publications (2)

Publication Number Publication Date
CN109568942A CN109568942A (zh) 2019-04-05
CN109568942B true CN109568942B (zh) 2022-04-15

Family

ID=65912763

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710895568.8A Active CN109568942B (zh) 2017-09-28 2017-09-28 手柄外设、虚拟对象控制方法及装置

Country Status (1)

Country Link
CN (1) CN109568942B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110152288B (zh) * 2019-06-27 2020-08-18 青岛歌尔智能传感器有限公司 游戏控制器、游戏系统和识别游戏操作方向的方法
CN112656352B (zh) * 2019-10-16 2022-12-13 武汉迈瑞医疗技术研究院有限公司 内窥镜摄像主机及其控制方法、内窥镜成像系统及存储介质
CN111840990B (zh) * 2020-07-21 2022-08-19 联想(北京)有限公司 输入控制方法、装置及电子设备
CN113144583A (zh) * 2021-05-26 2021-07-23 腾讯科技(深圳)有限公司 电子设备及按键、虚拟场景的交互控制方法、装置、介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1676186A (zh) * 2004-03-29 2005-10-05 英泰克公司 带有集成的轨迹球控制装置的电子游戏操纵器
CN101455903A (zh) * 2008-12-29 2009-06-17 何江 用于fps游戏的游戏手柄及其定位方法
CN201741293U (zh) * 2010-03-05 2011-02-09 张磊 一种可通过辅助操作手柄遥控的教学机
CN203675484U (zh) * 2013-12-24 2014-06-25 Tcl集团股份有限公司 一种部分按键可收藏和展开的遥控器
CN106155732A (zh) * 2015-04-23 2016-11-23 腾讯科技(深圳)有限公司 电视游戏控制器的加载方法和装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SG177791A1 (en) * 2010-07-20 2012-02-28 Isela Pte Ltd A controller

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1676186A (zh) * 2004-03-29 2005-10-05 英泰克公司 带有集成的轨迹球控制装置的电子游戏操纵器
CN101455903A (zh) * 2008-12-29 2009-06-17 何江 用于fps游戏的游戏手柄及其定位方法
CN201741293U (zh) * 2010-03-05 2011-02-09 张磊 一种可通过辅助操作手柄遥控的教学机
CN203675484U (zh) * 2013-12-24 2014-06-25 Tcl集团股份有限公司 一种部分按键可收藏和展开的遥控器
CN106155732A (zh) * 2015-04-23 2016-11-23 腾讯科技(深圳)有限公司 电视游戏控制器的加载方法和装置

Also Published As

Publication number Publication date
CN109568942A (zh) 2019-04-05

Similar Documents

Publication Publication Date Title
CN109568942B (zh) 手柄外设、虚拟对象控制方法及装置
CN106993227B (zh) 一种进行信息展示的方法和装置
CN109871164B (zh) 一种消息发送方法及终端设备
CN110830363B (zh) 一种信息分享方法及电子设备
CN110673770B (zh) 消息展示方法及终端设备
CN108958593B (zh) 一种确定通讯对象的方法及移动终端
CN110531915B (zh) 屏幕操作方法及终端设备
CN109739394B (zh) 一种sar值的处理方法、移动终端
JP2018504798A (ja) ジェスチャ制御方法、デバイス、およびシステム
CN108881719B (zh) 一种切换拍摄方式的方法及终端设备
CN105094501B (zh) 一种移动终端中消息的显示方法、装置和系统
CN107390922B (zh) 虚拟触控方法、装置、存储介质及终端
CN109739300B (zh) 一种天线控制方法及终端
CN111240545A (zh) 应用程序的切换方法和电子设备
CN107562303B (zh) 显示界面中元素运动控制方法及装置
CN110058686B (zh) 一种控制方法及终端设备
CN107797723B (zh) 一种显示样式的切换方法及终端
CN109698711B (zh) 一种射频模组及终端设备
CN109358913B (zh) 一种应用程序的启动方法及终端设备
CN109002245B (zh) 一种应用界面的操作方法及移动终端
CN111176529B (zh) 一种按键显示方法及电子设备
CN111163227B (zh) 一种分享方法及电子设备
CN110109788B (zh) 多按键检测方法、装置、电子设备及存储介质
CN108563376B (zh) 一种应用程序启动方法及移动终端
CN110955377A (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