CN112121411A - 震动控制方法、装置、电子设备和计算机可读存储介质 - Google Patents
震动控制方法、装置、电子设备和计算机可读存储介质 Download PDFInfo
- Publication number
- CN112121411A CN112121411A CN202010985361.1A CN202010985361A CN112121411A CN 112121411 A CN112121411 A CN 112121411A CN 202010985361 A CN202010985361 A CN 202010985361A CN 112121411 A CN112121411 A CN 112121411A
- Authority
- CN
- China
- Prior art keywords
- vibration
- target
- information
- parameter
- interface
- 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
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/25—Output arrangements for video game devices
- A63F13/28—Output arrangements for video game devices responding to control signals received from the game device for affecting ambient conditions, e.g. for vibrating players' seats, activating scent dispensers or affecting temperature or light
- A63F13/285—Generating tactile feedback signals via the game input device, e.g. force feedback
-
- 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/40—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
- A63F13/42—Processing 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/016—Input arrangements with force or tactile feedback as computer generated output to the user
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Human Computer Interaction (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本公开提供一种震动控制方法、装置、电子设备和计算机可读存储介质,该方法包括:获取目标设备的震动支持信息;获取目标震动描述信息,所述目标震动描述信息用于描述目标场景下的震动特效;根据所述震动支持信息对所述目标震动描述信息进行处理,获得目标震动执行信息;将所述目标震动执行信息传输至所述目标设备的目标震动接口,以便所述目标设备根据所述目标震动执行信息进行震动。本公开实施例提供的技术方案可以通过目标震动描述信息控制目标设备震动,使得目标设备实现目标震动效果。
Description
技术领域
本公开涉及计算机与互联网技术领域,尤其涉及一种震动控制方法、装置、电子设备和计算机可读存储介质。
背景技术
当前大多数智能设备均已支持震动效果,而设备震动对于游戏来说,可以带来更丰富的触觉效果,极大的拓展游戏交互体验。
由于智能终端的***、硬件种类繁多,对于一个游戏震动场景来说,要针对不同的硬件设备、不同的平台去适配开发对应的震动效果以及与设备的通信,造成了极大的重复工作量。
因此,一种可以适应不同的震动控制方法,可以极大的节约开发资源。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解。
发明内容
本公开实施例提供一种震动控制方法、装置、电子设备和计算机可读存储介质,能够将对目标场景下的震动特效进行描述的目标震动描述信息转换为目标震动接口支持的震动执行信息,控制目标设备震动以实现该震动特效。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
本公开实施例提出一种震动控制方法,该方法包括:获取目标设备的震动支持信息;获取目标震动描述信息,所述目标震动描述信息用于描述目标场景下的震动特效;根据所述震动支持信息对所述目标震动描述信息进行处理,获得目标震动执行信息;将所述目标震动执行信息传输至所述目标设备的目标震动接口,以便所述目标设备根据所述目标震动执行信息进行震动。
本公开实施例提供了一种震动控制装置,所述震动控制装置包括:震动支持信息获取模块、震动描述信息获取模块、震动执行信息获取模块以及震动控制模块。
其中,所述震动支持信息获取模块可以配置为获取目标设备的震动支持信息;所述震动描述信息获取模块可以配置为获取目标震动描述信息,所述目标震动描述信息用于描述目标场景下的震动特效;所述震动执行信息获取模块可以配置为根据所述震动支持信息对所述目标震动描述信息进行处理,获得目标震动执行信息;所述震动控制模块可以配置为将所述目标震动执行信息传输至所述目标设备的目标震动接口,以便所述目标设备根据所述目标震动执行信息进行震动。
在一些实施例中,所述目标震动描述信息包括震动描述参数,所述目标震动接口包括震动参数接口,所述目标震动执行信息包括震动参数。
在一些实施例中,所述震动执行信息获取模块可以包括:目标提供方确定单元、目标转换协议确定单元、震动参数获取单元,所述震动控制模块可以包括第一控制单元。
其中,所述目标提供方确定单元可以配置为若所述震动支持信息为所述目标设备通过震动参数接口支持震动参数,则确定提供所述震动参数接口的目标提供方。所述目标转换协议确定单元可以配置为根据所述目标提供方确定目标转换协议。所述震动参数获取单元可以根据所述目标转换协议将所述震动描述参数转换为所述震动参数。所述第一控制单元可以配置为将所述震动参数传输至所述目标设备的所述震动参数接口,以便所述目标设备根据所述震动参数进行震动。
在一些实施例中,所述震动参数包括第一震动参数和第二震动参数,所述第一震动参数与所述震动参数接口适配,所述第二震动参数与所述震动参数接口不适配。
在一些实施例中,所述震动参数获取单元可以包括:第一震动参数获取子单元,可以配置为通过所述目标转换协议对所述震动描述参数进行转换处理,以获得所述第一震动参数。所述第一控制单元可以包括:第一震动参数传输子单元,可以配置为将所述第一震动参数传输至所述目标设备的所述震动参数接口,以便所述目标设备根据所述第一震动参数模拟进行震动。
在一些实施例中,所述目标转换协议包括第一转换协议。
在一些实施例中,所述目标转换协议确定单元可以包括:设备提供商确定子单元和第一转换协议获取单元。
其中,所述设备提供商确定子单元可以配置为若所述目标提供方是所述目标设备的设备提供商,则获取所述目标设备的目标型号信息、所述目标设备的设备提供商信息以及所述目标设备中的目标服务***信息。所述第一转换协议获取子单元可以配置为根据所述目标型号信息、所述设备提供商信息和所述目标服务***信息确定所述第一转换协议,以便根据所述第一转换协议将所述震动描述参数转换为所述震动参数。
在一些实施例中,所述目标转换协议包括第二转换协议。
在一些实施例中,所述目标转换协议确定单元可以包括:马达提供商确定单元和第二转换协议确定单元。
其中,所述马达提供商确定单元可以配置为若所述目标提供方是为所述目标设备提供震动参数接口的马达提供商,则获取提供所述震动参数接口的马达提供商信息。所述第二转换协议确定单元可以配置为根据所述马达提供商信息确定所述第二转换协议,以便根据所述第二转换协议将所述震动描述参数转换为所述震动参数。
在一些实施例中,所述目标震动描述信息包括至少一个震感单元,所述目标震动接口包括震感单元接口。
在一些实施例中,所述震动执行信息获取模块可以包括:解析单元,所述震动控制模块可以包括:第三控制单元。
其中,所述解析单元可以配置为若所述震动支持信息为所述目标设备通过所述震感单元接口支持震感单元,则从所述目标震动描述信息中解析出各个震感单元。所述第三控制单元可以配置为将解析出的各个震感单元传输给所述目标设备的所述震感单元接口,以便所述目标设备根据解析出的各个震感单元进行震动。
在一些实施例中,所述目标震动接口包括震动描述信息接口,所述震动执行信息为所述目标震动描述信息。
在一些实施例中,所述震动控制模块可以包括:第四控制单元。
其中,所述第四控制单元可以配置为若所述震动支持信息为所述目标设备通过所述震动描述信息接口支持震动描述信息,则将所述目标震动描述信息传输至所述目标设备的所述震动描述信息接口,以便所述目标设备根据所述目标震动描述信息进行震动。
在一些实施例中,所述震动支持信息包括第一马达震动参数和第二马达震动参数。
在一些实施例中,所述目标设备包括至少两个马达,所述震动支持信息包括第一马达支持信息和第二马达支持信息。
在一些实施例中其中,所述震动控制模块可以包括:位置信息获取单元、马达确定单元以及马达控制单元。
其中,所述位置信息获取单元可以配置为从所述目标设备中获取所述至少两个马达的位置信息。所述马达确定单元可以配置为根据所述位置信息在所述至少两个马达中确定第一马达和第二马达。所述马达控制单元可以配置为将所述第一马达支持信息和所述第二马达支持信息传输至所述目标设备的目标震动接口,以通过第一马达支持信息控制所述第一马达震动,通过所述第二马达支持信息控制所述第二马达震动。
在一些实施例中,所述位置信息包括所述至少两个马达在目标空间坐标系下的目标坐标信息。所述马达确定单元可以包括:目标方向确定子单元和马达确定子单元。
其中,所述目标方向确定子单元可以配置为在所述目标空间坐标系确定目标方向。所述马达确定子单元可以配置为沿着所述目标方向并根据所述目标坐标信息在所述至少两个马达中确定所述第一马达和所述第二马达。
在一些实施例中,所述震动描述信息获取模块可以包括:震动服务支持请求获取单元、震动支持信息返回单元以及目标震动描述信息接收单元。
其中,所述震动服务支持请求获取单元可以配置为接收目标应用的震动服务支持请求。所述震动支持信息返回单元可以配置为响应所述震动服务支持请求,向所述目标应用返回所述目标设备的震动支持信息。所述目标震动描述信息接收单元可以配置为接收所述目标应用响应所述震动支持信息返回的所述目标震动描述信息。
在一些实施例中,所述目标震动描述信息包括文件型目标震动描述信息。
在一些时候死里中,所述目标震动描述信息接收单元可以包括:文件型目标震动描述信息获取子单元。
其中,所述文件型目标震动描述信息获取子单元可以配置为若所述震动支持信息为所述目标设备支持文件型震动描述信息,则接收所述目标应用响应所述震动支持信息返回的所述文件型目标震动描述信息。
在一些实施例中,所述目标震动描述信息包括字符串型目标震动描述信息。
在一些实施例中,所述目标震动描述信息接收单元可以包括:字符串型目标震动描述信息。
其中,所述字符串型目标震动描述信息可以配置文若所述震动支持信息为所述目标设备支持字符串型震动描述信息,则接收所述目标应用响应所述震动支持信息返回的所述字符串型目标震动描述信息。
在一些实施例中,所述震动描述参数包括:震动持续时间、震动强度、震动频率、震动加速度、震动增强时间以及震动衰减时间中的至少一个。
在一些实施例中,所述震动控制装置还包括:停止参数获取模块和震动停止控制模块。
其中,所述停止参数获取模块可以配置为获取目标停止参数。所述震动停止控制模块可以配置为根据所述目标停止参数控制所述目标设备停止震动。
本公开实施例提出一种电子设备,该电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述任一项所述的震动控制方法。
本公开实施例提出一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述任一项所述的震动控制方法。
本公开实施例提出一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述震动控制方法。
本公开某些实施例提供的震动控制方法、装置及电子设备和计算机可读存储介质,通过目标设备的震动支持信息对目标震动描述信息进行处理获得了适配目标设备的目标震动执行信息,然后根据目标震动执行信息调用目标设备的目标震动接口,使得目标设备震动以实现震动特效。根据本公开提供的技术方案,可以根据不同设备的震动支持信息对目标震动描述信息进行处理,以获得与该设备的震动接口适配的震动执行信息,使得不同的设备可以实现同一震动特效。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。下面描述的附图仅仅是本公开的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了可以应用于本公开实施例的震动控制方法或震动控制装置的示例性***架构的示意图。
图2是根据一示例性实施例示出的一种应用于震动控制装置的计算机***的结构示意图。
图3是根据一示例性实施例示出的一种震动控制方法的流程图。
图4是根据一示例性实施例示出的一种震动效果的示意图。
图5是图3中步骤S3和步骤S4在一示例性实施例中的流程图。
图6是图3中步骤S3和步骤S4在一示例性实施例中的流程图。
图7是图3中步骤S3和步骤S4在一示例性实施例中的流程图。
图8是图3中步骤S4在一示例性实施例中的流程图。
图9是根据一示例性实施例示出的一种目标方向确定的示意图。
图10是根据一示例性实施例示出的一种震动控制框架图。
图11是根据一示例性实施例示出的一种震动控制示意图。
图12是根据一示例性实施例示出的一种震动控制装置的框图。
具体实施方式
现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本公开将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
本公开所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本公开的各方面。
附图仅为本公开的示意性图解,图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和步骤,也不是必须按所描述的顺序执行。例如,有的步骤还可以分解,而有的步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
本说明书中,用语“一个”、“一”、“该”、“所述”和“至少一个”用以表示存在一个或多个要素/组成部分/等;用语“包含”、“包括”和“具有”用以表示开放式的包括在内的意思并且是指除了列出的要素/组成部分/等之外还可存在另外的要素/组成部分/等;用语“第一”、“第二”和“第三”等仅作为标记使用,不是对其对象的数量限制。
下面结合附图对本公开示例实施方式进行详细说明。
图1示出了可以应用于本公开实施例的震动控制方法或震动控制装置的示例性***架构的示意图。
如图1所示,***架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。其中,终端设备101、102、103可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机、台式计算机、可穿戴设备、虚拟现实设备、智能家居等等。
服务器105可以是提供各种服务的服务器,例如对用户利用终端设备101、102、103所进行操作的装置提供支持的后台管理服务器。后台管理服务器可以对接收到的请求等数据进行分析等处理,并将处理结果反馈给终端设备。
服务器105可例如获取目标设备的震动支持信息;服务器105可例如获取目标震动描述信息,所述目标震动描述信息用于描述目标场景下的震动特效;服务器105可例如根据所述震动支持信息对所述目标震动描述信息进行处理,获得目标震动执行信息服务器105可例如将所述目标震动执行信息传输至所述目标设备的目标震动接口,以便所述目标设备根据所述目标震动执行信息进行震动。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的,服务器105可以是一个实体的服务器,还可以为多个服务器组成,根据实际需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图2,其示出了适于用来实现本申请实施例的终端设备的计算机***200的结构示意图。图2示出的终端设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图2所示,计算机***200包括中央处理单元(CPU)201,其可以根据存储在只读存储器(ROM)202中的程序或者从储存部分208加载到随机访问存储器(RAM)203中的程序而执行各种适当的动作和处理。在RAM 203中,还存储有***200操作所需的各种程序和数据。CPU 201、ROM 202以及RAM 203通过总线204彼此相连。输入/输出(I/O)接口205也连接至总线204。
以下部件连接至I/O接口205:包括键盘、鼠标等的输入部分206;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分207;包括硬盘等的储存部分208;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分209。通信部分209经由诸如因特网的网络执行通信处理。驱动器210也根据需要连接至I/O接口205。可拆卸介质211,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器210上,以便于从其上读出的计算机程序根据需要被安装入储存部分208。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读存储介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分209从网络上被下载和安装,和/或从可拆卸介质211被安装。在该计算机程序被中央处理单元(CPU)201执行时,执行本申请的***中限定的上述功能。
需要说明的是,本申请所示的计算机可读存储介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读存储介质,该计算机可读存储介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的模块和/或单元和/或单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块和/或单元和/或单元也可以设置在处理器中,例如,可以描述为:一种处理器包括发送单元、获取单元、确定单元和第一处理单元。其中,这些模块和/或单元和/或单元的名称在某种情况下并不构成对该模块和/或单元和/或单元本身的限定。
作为另一方面,本申请还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备可实现功能包括:获取目标设备的震动支持信息;获取目标震动描述信息,所述目标震动描述信息用于描述目标场景下的震动特效;根据所述震动支持信息对所述目标震动描述信息进行处理,获得目标震动执行信息;将所述目标震动执行信息传输至所述目标设备的目标震动接口,以便所述目标设备根据所述目标震动执行信息进行震动。
随着智能终端设备的发展,越来越多的设备支持震动效果,而震动对于游戏来说可以带来更丰富的触觉效果,极大地拓展了游戏交互体验。但是对于目前的设备来说,不同设备的震动接口可能会不同(接口名称、接口参数都可能会不统一),不同设备还可能会支持不同的震动效果(有的仅支持对震动强度的调节,有的可以支持震动强度、震动频率、震动衰退时间等复杂震动效果的调节)。
目前来说,若想要使得同一游戏在不同的设备中达到同样的震动效果,需要针对不同的设备分别进行不同的开发,极大地浪费了人力、物力资源,成本高昂。
本公开提供了一种可以根据描述目标场景的下震动特效的目标震动描述信息对目标设备的震动进行控制的震动方法,以使得不同的设备均可以达到同样的目标震动效果。
图3是根据一示例性实施例示出的一种震动控制方法的流程图。本公开实施例所提供的方法可以由任意具备计算处理能力的电子设备处理,例如上述图1实施例中的服务器105和/或终端设备102、103,在下面的实施例中,以终端设备101、102为执行主体为例进行举例说明,但本公开并不限定于此。
参照图3,本公开实施例提供的震动控制方法可以包括以下步骤。
在步骤S1中,获取目标设备的震动支持信息。
在一些实施例中,目标设备可以指的是任意需要进行震动控制的设备,例如手机、游戏手柄、智能头盔等,本公开对此不做限制。
在一些实施例中,震动支持信息可以指的目标设备中的目标震动接口信息以及该目标震动接口的参数支持信息。例如,有的目标设备的目标震动接口可能由马达提供商(提供马达的商家)提供,该接口可能支持比较具体的震动参数(例如震动频率为XX赫兹,震动时间为XX秒等具体的参数值);例如,有的目标设备的目标震动接口可能由目标设备上的目标服务***(例如安卓***)提供,该接口既可能会支持具体的震动参数(如震动频率为XX赫兹等具体的参数值),也可能会支持震动描述信息等对目标应用场景下的震动特效进行抽象描述的信息;有的可能支持比较少的震动参数(例如只支持震动时间、震动强度等比较简单的震动功能参数;有的可能支持比较复杂多样的震动参数,本公开对此不做限制。
在步骤S2中,获取目标震动描述信息,所述目标震动描述信息用于描述目标场景下的震动特效。
在一些实施例中,目标震动描述信息可以指的是对目标场景下的震动特效进行描述的信息。其中,目标场景可以是任意需要震动效果的场景,本公开对此不做限制。
在一些实施例中,目标震动描述信息可以是字符串形式的,也可以是文本形式的,例如可以是JOSON(JavaScript Object Notation,一种轻量级的数据格式)、yml格式、xml格式等文本形式,本公开对此不做限制。
在一些实施例中,既可以通过具体的参数值(例如震动频率为XX赫兹,震动时间为XX秒)对目标场景下的震动特效进行描述,也可以通过抽象参数(例如震动频率为XX档、震动强度为XX档等)对目标场景下的震动特效进行描述,本公开对此不做限制。
在一些目标应用中,为了表达更丰富的震感,常常需要将多个震动效果组合起来实现。在一些实施例中,可能需要将如图4所示的震动效果401(以第一频率震动)和震动效果402(以第二频率震动)组合,以实现如403所示的震动效果。
因此,本公开实施例提供的目标震动描述信息可以由多个震感单元组成,每个震撼单元可以描述一种震动效果,以使得震动描述信息可以包括比较复杂、多样的震动效果。例如,目标震动描述信息中可以包括一种可以描述持续震动效果的震感单元、一种可以描述短暂震动效果的震感单元以及一种可以描述先急速震动后缓慢震动的震感单元等,本公开对此不做限定。
本实施例将以以下案例对目标震动描述信息进行说明,但本公开对此不做限制。
详细说明如下:
he文件包含两个部分:
1)Metadata字段部分包括震动效果的版本,创建时间,震动效果描述等基本信息;
2)具体的震动效果由Pattern字段描述,Pattern字段内容是一个或者多个Event数组。每个Event描述一个震感单元(每个震感单元可以用来描述一种震动效果)。
其中,Event震感单元可以包括以下内容:
a)EventType描述震动效果类型。
b)EventTime,相对开始时间,浮点数,单位为秒。
c)EventDuration,持续时间,浮点数,单位为秒。
d)Parameters字段包括震动强度,震动频率,达到全部震动所需时间,衰减时间等。
e)Curve用来描述动态震动效果曲线,用来实现动态变化效果的平滑过渡。
f)震动效果参数取值均为0到1的抽象,0为平台支持的最小值,1为平台支持的最大值。
本实施例提供的震动描述信息,一方面可以比较抽象的对目标应用(例如目标游戏)在目标场景下的震动特效进行描述,以保证各个设备均能实现该震动描述信息中描述的震动特效;另一方面,震动描述信息中的震感单元可以复用,极大的节约了开发资源。
在步骤S3中,根据所述震动支持信息对所述目标震动描述信息进行处理,获得目标震动执行信息。
在一些实施例中,可以根据目标设备的震动支持信息对目标震动描述信息进行处理,以获得目标震动执行信息。
例如,若目标设备通过震动参数接口接收震动参数,以控制目标设备震动,则需要通过预设的转换协议将目标震动描述信息中的震动描述参数转换为与震动参数接口适配的震动参数;若目标设备通过震动描述信息接口接收震动描述信息以控制目标设备震动,则可以将目标震动描述信息直接传输至该震动描述信息接口;若目标设备通过震感单元接口接收目标震动描述信息中的震感单元,则将目标震动描述信息解析为各个震感单元,以便将该各个震撼单元分别传输至目标设备中的震感单元接口。
在步骤S4中,将所述目标震动执行信息传输至所述目标设备的目标震动接口,以便所述目标设备根据所述目标震动执行信息进行震动。
本公开实施例提供的震动控制方法,通过目标设备的震动支持信息对目标震动描述信息进行处理获得了适配目标设备的目标震动执行信息,然后根据目标震动执行信息调用目标设备的目标震动接口,使得目标设备震动以实现目标震动效果。根据本公开提供的技术方案,可以根据不同设备的震动支持信息对目标震动描述信息进行处理,以获得与该设备的震动接口适配的震动执行信息,使得不同的设备可以实现同一震动效果。
图5是图3中步骤S3和步骤S4在一示例性实施例中的流程图。
在一些实施例中,目标震动描述信息可以通过震动描述参数对目标震动效果进行描述,震动描述参数既可以指的是对震动进行描述的具体参数(例如震动频率为XX赫兹),也可以指的是对震动进行描述的抽象参数(例如震动频率为XX档),本公开对此不做限制。
在一些实施例中,目标震动描述信息中的震动描述参数包括:震动持续时间、震动强度、震动频率、震动加速度、震动增强时间(在震动增强时间内目标设备以某一震动加速度进行加速)以及震动衰减时间(在震动衰减时间内目标设备以某一震动加速度进行减速)中的至少一个。
在一些实施例中,该震动参数接口的输入参数可以是一些具体的参数值(例如震动频率为XX赫兹、震动时间为XX秒等)。
在一些实施例中,目标震动执行信息可以指的是能够与目标设备的震动参数接口适配的震动参数。
参考图5,图3中步骤S3可以包括以下步骤。
在步骤S311中,若所述震动支持信息为所述目标设备通过所述震动参数接口支持震动参数,则确定提供所述震动参数接口的目标提供方。
在一些实施例中,目标设备中的震动参数接口可以是由目标设备的设备提供商提供(例如苹果手机IOS 13.0以上机型),也可以是由目标设备中马达的马达提供商提供(马达提供商可以为目标设备中设计并提供震动参数接口),本公开对此不做限制。
在一些实施例中,不同震动参数接口可能会支持不同类型的震动参数例如有的震动参数接口可能支持字符串型的震动参数,有的震动参数接口可能支持文件型的震动参数。例如有的震动参数接口可能会支持yml文件类型的震动参数,有的震动参数接口可能会支持JOSON文件类型的震动参数类型,但本公开对此不做限制。
另外,不同的震动参数接口可能对震动强度、震动频率的定义等可能会与目标震动描述信息中的定义不同。
因此,需要将目标震动描述信息中的震动描述参数转换至成语震动参数接口适配的震动参数。
在一些实施例中,可以预先存储一些转换协议,以将目标震动描述信息中的震动描述参数转换为震动参数接口支持的震动参数。需要时还需要将目标震动描述信息的文件格式转换为目标设备的震动参数接口所支持的文件格式。
在一些实施例中,可以预先存储目标震动描述信息的文件类型与震动参数接口所支持的文件类型之间的转换协议,存储目标震动描述信息中的震动描述参数与震动参数之间的转换协议等。例如,该转换协议可以将JOSON格式的目标震动描述信息转换为震动参数接口支持的yml文件,并将目标震动描述信息中的震动描述参数转换为震动参数接口所支持的震动参数(例如若震动参数接口中的震动频率为2档与目标震动描述信息中震动频率为12赫兹所描述的震动效果相同,那么就需要将目标震动描述信息中震动描述参数:震动频率为2档,转换为震动参数后为:震动频率为12赫兹;再例如若震动参数接口中的震动频率为12赫兹与目标震动描述信息中震动频率为13赫兹所描述的震动效果相同,那么就需要将目标震动描述信息中:震动频率13赫兹,转换为震动参数:震动频率为12赫兹)。
可以理解的是,本公开对上述转换协议的内容、格式等均不做限制,可以根据实际需要进行设定。
在一些实施例中,可以将上述转换协议与震动参数接口的目标提供方进行关联,以便在知道目标提供方的情况下确定目标转换协议。
在步骤S312中,根据所述目标提供方确定目标转换协议。
在一些实施例中,由于已经针对不同目标提供方预先存储了不同的转换协议,所以当目标提供方确定之后,便可以确定目标转换协议。
但是,在实际操作中,即使是同样由设备提供商提供的震动接口,也可能会由于设备提供商的不同、服务***的不同,设备型号的不同等,导致最终的震动参数接口不同。所以需要针对不同设备提供商、不同的设备型号以及不同的服务***等设置不同的转换协议,本公开对此不做限制。
在一些实施例中,目标转换协议可以包括第一转换协议和第二转换协议,其中第一转换协议是为由设备提供商提供的震动参数接口设置的转换协议,第二转换协议是为由马达提供商提供的震动参数接口设置的转换协议。
在一些实施例中,若目标提供方是设备提供商,则可以通过以下步骤确定目标转换协议:
获取目标设备的目标型号信息、目标设备的设备提供商信息以及目标设备中的目标服务***信息;根据目标型号信息、设备提供商信息和目标服务***信息确定第一转换协议,以便根据第一转换协议将所述震动描述参数转换为所述震动参数。
在一些实施例中,若目标提供方是马达提供商,则可以通过以下步骤确定目标转换协议:根据马达提供商信息确定第二转换协议,以便根据第二转换协议将所述震动描述参数转换为所述震动参数。
在步骤S313中,根据所述目标转换协议将所述震动描述参数转换为所述震动参数。
在一些实施例中,可以通过目标转换协议将目标震动描述信息的文件格式转换为目标设备的震动参数接口所支持的文件格式,并将目标震动描述信息中的***描述参数转换为震动参数接口所支持的震动参数。
参考图5,图3中步骤S4可以包括以下步骤。
在步骤S411中,将所述震动参数传输至所述目标设备的所述震动参数接口,以便所述目标设备根据所述震动参数进行震动。
在另外一些实施例中,目标设备的目标震动参数接口可能不能支持所有的由震动描述参数转换过来的震动参数,例如IOS 10***可能不能支持比较复杂的震动参数(该***可能只能支持震动强度,而对于震动衰减时间等参数不支持)。在这种情况下,可以通过以下步骤进行模拟震动。
假设震动参数包括第一震动参数和第二震动参数,其中第一震动参数与震动参数接口适配,第二震动参数与震动参数接口不适配,那么可以通过以下步骤进行模拟震动。
通过目标转换协议对震动描述参数进行转换处理,以获得第一震动参数;将第一震动参数传输至目标设备的震动参数接口,以便目标设备根据所述第一震动参数进行震动,以模拟实现目标震动效果。
本实施例提供的技术方案,一方面通过目标提供方信息简单便捷地确定了目标转换协议,另一方面通过目标转换协议将目标震动描述参数转换为了与震动参数接口适配的震动参数,控制目标设备震动以实现了目标震动效果。
图6是图3中步骤S3和步骤S4在一示例性实施例中的流程图。
在一些实施例中,目标震动描述信息可以包括至少一个震感单元,每个震感单元描述一种震动效果。
在一些实施例中,目标设备的目标震动接口可以是震感单元接口,该震感单元接口可以是由服务***提供的接口,也可以是由马达厂商提供的接口,本公开对此不做限制。
在一些实施例中,该震撼单元接口的输入参数可以就是震感单元。
参考图6,图3中步骤S3可以包括以下步骤。
在步骤S321中,若所述震动支持信息为所述目标设备通过所述震感单元接口支持震感单元,则从所述目标震动描述信息中解析出各个震感单元。
参考图6,图3中步骤S4可以包括以下步骤。
在步骤S421中,将解析出的各个震感单元传输给所述目标设备的所述震感单元接口,以便所述目标设备根据解析出的各个震感单元进行震动。
在一些实施例中,虽然震感单元接口的输入参数可以是震感单元,但是震感单元接口支持的文件类型可能与目标震动描述信息之间的文件类型不同,所以在将各个震感单元传输给震感单元接口时,可能需要将各个震感单元转换为震感单元接口支持的文件类型,但本公开对此不做限制。
本实施例提供的技术方案通过将目标描述信息解析为多个震撼单元,然后通过震感单元调用了目标设备的震感单元接口,使得目标设备震动以实现目标震动效果。
图7是图3中步骤S3和步骤S4在一示例性实施例中的流程图。
在一些实施例中,目标设备的目标震动接口可以是震动描述信息接口,该震动描述信息接口可以是由服务***提供的接口,也可以是由马达厂商提供的接口,本公开对此不做限制。
在一些实施例中,该震动描述信息接口的输入参数可以就是震动描述信息,该震动描述信息可以是文件型描述信息也可以是字符串型描述信息。
在一些实施例中,若震动描述信息是文件型描述信息,且震动支持信息为目标设备通过震动描述信息接口支持文件型震动描述信息,则图3中步骤S3可以包括以下步骤。
在步骤S331中,获取所述目标震动描述信息的目标路径、目标句柄。
图3中步骤S4可以包括以下步骤。
在步骤S432中,将所述目标震动描述信息、所述目标路径或者所述目标句柄传输至所述目标设备的所述震动描述信息接口,以便所述目标设备根据所述目标震动描述信息进行震动。
在一些实施例中,通过目标震动描述信息、目标震动描述信息的目标路径或者目标震动描述信息的目标句柄,均可以获得目标震动描述信息,通过目标震动描述信息调用震动描述信息接口,可以使得目标设备震动以实现目标震动效果。
在一些实施例中,虽然震动描述信息接口的输入参数可以是震动描述信息,但是震动描述信息接口支持的文件类型可能与目标震动描述信息之间的文件类型不同,所以在将目标描述文本传输给震动描述信息接口时,可能需要将目标震动描述信息转换为震动描述信息接口支持的文件类型,但本公开对此不做限制。
在一些实施例中,若震动描述信息是字符串型描述信息,且震动支持信息为目标设备通过震动描述信息接口支持字符串震动描述信息,则可以将字符串型的目标震动描述信息传输至目标设备的震动描述信息接口,以便目标设备根据字符串型目标震动描述信息实现目标震动效果。
本实施例提供的技术方案通过目标震动描述信息调用了目标设备的震感单元接口,以使得目标设备实现目标震动效果。
图8是图3中步骤S4在一示例性实施例中的流程图。
在一些实施例中,目标设备可能会包括至少两个马达,震动描述信息中也会对应的包括对至少两个马达进行描述的描述信息,所以震动支持信息也会包括至少两个马达的支持信息,例如可以包括第一马达支持信息和第二马达支持信息。
参考图8,图3中步骤S4可以包括以下步骤。
在步骤S441中,从所述目标设备中获取所述至少两个马达的位置信息。
在一些实施例中,上述位置信息可以指的是马达在目标空间坐标系中的坐标信息,其中目标空间坐标系可以是如图9所示的空间坐标系等可以将目标设备的实体全部囊括在内的坐标系,本公开对此不做限制。
在步骤S442中,根据所述位置信息在所述至少两个马达中确定第一马达和第二马达。
在一些实施例中,可以首先在目标空间坐标系中确定一个目标方向,该目标方向可例如是沿着某一坐标轴方向、以原点为起始点以逆时针方向为目标方向等,本公开对此不做限制。
如图9所示,可以以坐标原点1为起始点,以逆时针方向为目标设备中的马达进行标号,依次确定第一马达和第二马达…
通过上述方法确定的马达,可以保证无论目标设备是横屏还是竖屏,震动效果是一致的,即均在同一方位(例如设备显示画面的同一方方位)进行同样效果的震动。
在步骤S443中,将所述第一马达支持信息和所述第二马达支持信息传输至所述目标设备的目标震动接口,以通过第一马达支持信息控制所述第一马达震动,通过所述第二马达支持信息控制所述第二马达震动。
可以理解的是,本实施例仅以第一马达、第二马达为例,目标设备还可以存在第三马达、第四马达等,第三马达和第四马达的震动控制方式与本实施例类似,本公开不再赘述。
本实施例提供的技术方案,一方面,通过至少两个马达的位置信息对至少两个马达进行了编码,以使无论目标设备如何变化(横屏或者竖屏),第一马达相对于设备中画面的相对位置是不变的(例如第一马达始终靠近画面的左上角,第二马达始终远离画面的左上角);另一方面,通过第一马达支持信息对对第一马达进行控制,通过第二马达支持信息对第二马达进行控制控制,使得无论目标设备如何变化,马达的整体震动效果不会发生改变。
图10是根据一示例性实施例示出的一种震动控制框架图。参考图10,上述震动控制框架图可以包括目标应用中的震动描述信息(Haptic Effects)、中间转换层(TGPA)以及震动运行时(Haptic Runtime)单元等。其中,震动描述信息可以由多个震感单元(HapticUnit)组成。
在一些实施例中,目标应用中可以通过游戏震动特效接口(Haptic EffectsInterface,HEI)将震动描述信息与中间转换层进行信息的交互,中间转换层可以通过震动运行时服务接口(Haptic Runtime Interface,HRI)接口实现与震动运行时单元中的各个设备进行信息的交互。
在一些实施例中,震动运行时服务接口可以具体包括以下接口:
·getVendorSupportStrategy:
功能:查询目标设备的震动支持信息
返回:返回是否支持以及目标设备的马达个数。
·hrPlayUnit:
功能:播放一个震动单元
·hrPlayEffects:
功能:播放一个震动描述信息
·hrStop:
功能:停止播放震动效果
在一些实施例中,游戏震动特效接口可以具体包括以下接口:
·isHeSupport:
功能:确认是否支持游戏震动描述
接口提供方:TGPA
调用方:目标应用
·hePlay(file):
功能:播放一个震动效果描述文件,默认为不循环(支持循环播放)
接口提供方:TGPA
接口调用方:目标应用
·hePlay(string):
功能:播放一个震动描述信息字符串
接口提供方:TGPA
接口调用方:目标应用
·heStop:
功能:停止播放震动效果
接口提供方:TGPA
接口调用方:目标应用
图11是根据一示例性实施例示出的一种震动控制示意图。结合图10所示的震动控制框架图,震动控制方法可以包括以下步骤。
在目标应用1101启动时,中间转换层1102首先通过getVendorSupportStrategy接口与目标设备1103进行初始化通信,获取目标设备1103的震动支持信息;目标应用1101如果需要震动服务,会通过isHeSupport接口向中间转换层1102发起震动服务支持请求,以确定当前设备是否支持震动效果的播放,中间转换层1102会返回当前设备的震动支持结果;若目标设备1103支持震动,则目标应用1101通过hePlay(string)或hePlay(file)接口将目标震动描述信息传输给中间转换层1102;中间转换层1102根据目标设备1103的震动支持信息对目标震动描述信息进行处理,获得目标震动执行信息;中间转换层1102将目标震动执行信息通过hrPlayUnit、hrPlayEffects等传输至目标设备1103的目标震动接口,以便目标设备1103根据目标震动执行信息实现目标震动效果;当目标应用1101获取震动停止参数时(即目标停止参数),可以将该目标停止参数通过heStop传输至中间转换层1102;中间转换层1102再通过hrStop接口将该目标停止参数传输给目标设备1103,以控制目标设备1103停止震动。
在一些实施例中,中间转换层1102根据目标设备1103的震动支持信息对目标震动描述信息进行处理,获得目标震动执行信息可以包括以下情况:
1、若目标设备1103的震动支持信息为目标设备1103通过震动参数接口支持震动参数,则获取提供震动参数接口的目标提供方(该震动参数接口可以由马达厂商、手机厂商或者其他厂商提供,本公开对震动参数接口的提供方不做限制),根据目标提供方确定目标转换协议,然后根据目标转换协议将震动描述参数转换为震动参数,以将震动参数传输至目标设备1103的震动参数接口,以便目标设备1103根据震动参数实现目标震动效果。
2、若目标设备1103的震动支持信息为目标设备1103通过震感单元接口支持震感单元,则从目标震动描述信息中解析出各个震感单元;然后将解析出的各个震感单元传输给目标设备1103的所述震感单元接口,以便目标设备1103播放各个震感单元以实现所述目标震动效果。
3、若目标设备1103的震动支持信息为目标设备1103通过震动描述信息接口支持震动描述信息,则将目标震动描述信息之间传输至目标设备1103的震动描述信息接口,以便目标设备1103播放目标震动描述信息以实现目标震动效果。
在一些实施例中,目标应用1101将目标震动描述信息传输给中间转换层1102可以包括以下几种情况:
在一些实施例中,目标应用1101通过isHeSupport接口向中间转换层1102发起震动服务支持请求后,可以获取目标设备1103的震动支持信息,目标应用1101可以根据目标设备1103的震动支持信息向中间转换层1102输目标震动描述信息。
例如,若震动支持信息为目标设备1103支持文件型震动描述信息,则向中间转换层1102传输文件型目标震动描述信息;若目标设备1103的震动支持信息为目标设备1103支持字符串型震动描述信息,则向中间转换层1102传输字符串型目标震动描述信息。
其中,文件型目标震动描述信息可以指的是JOSON、yml、xml等格式的震动描述文本信息,本公开对此不坐下限制。
本实施例提供的技术方案,通过目标设备的震动支持信息对目标震动描述信息进行处理获得了适配目标设备的目标震动执行信息,然后根据目标震动执行信息调用目标设备的目标震动接口,使得目标设备实现目标震动效果。根据本公开提供的技术方案,可以根据不同设备的震动支持信息对目标震动描述信息进行处理,以获得与该设备的震动接口适配的震动执行信息,使得不同的设备可以实现同一震动效果。
图12是根据一示例性实施例示出的一种震动控制装置的框图。参照图12,本公开实施例提供的震动控制装置1200可以包括:震动支持信息获取模块1201、震动描述信息获取模块1202、震动执行信息获取模块1203以及震动控制模块1204。
其中,所述震动支持信息获取模块1201可以配置为获取目标设备的震动支持信息。所述震动描述信息获取模块1202可以配置为获取目标震动描述信息,所述目标震动描述信息用于描述目标场景下的震动特效。所述震动执行信息获取模块1203可以配置为根据所述震动支持信息对所述目标震动描述信息进行处理,获得目标震动执行信息。所述震动控制模块1204可以配置为将所述目标震动执行信息传输至所述目标设备的目标震动接口,以便所述目标设备根据所述目标震动执行信息进行震动。
在一些实施例中,所述目标震动描述信息包括震动描述参数,所述目标震动接口包括震动参数接口,所述目标震动执行信息包括震动参数。
在一些实施例中,所述震动执行信息获取模块1203可以包括:目标提供方确定单元、目标转换协议确定单元、震动参数获取单元,所述震动控制模块1204可以包括第一控制单元。
其中,所述目标提供方确定单元可以配置为若所述震动支持信息为所述目标设备通过震动参数接口支持震动参数,则确定提供所述震动参数接口的目标提供方。所述目标转换协议确定单元可以配置为根据所述目标提供方确定目标转换协议。所述震动参数获取单元可以根据所述目标转换协议将所述震动描述参数转换为所述震动参数。所述第一控制单元可以配置为将所述震动参数传输至所述目标设备的所述震动参数接口,以便所述目标设备根据所述震动参数进行震动。
在一些实施例中,所述震动参数包括第一震动参数和第二震动参数,所述第一震动参数与所述震动参数接口适配,所述第二震动参数与所述震动参数接口不适配。
在一些实施例中,所述震动参数获取单元可以包括:第一震动参数获取子单元,可以配置为通过所述目标转换协议对所述震动描述参数进行转换处理,以获得所述第一震动参数。所述第一控制单元可以包括:第一震动参数传输子单元,可以配置文将所述第一震动参数传输至所述目标设备的所述震动参数接口,以便所述目标设备根据所述第一震动参数模拟进行震动。
在一些实施例中,所述目标转换协议包括第一转换协议。
在一些实施例中,所述目标转换协议确定单元可以包括:设备提供商确定子单元和第一转换协议获取单元。
其中,所述设备提供商确定子单元可以配置为若所述目标提供方是所述目标设备的设备提供商,则获取所述目标设备的目标型号信息、所述目标设备的设备提供商信息以及所述目标设备中的目标服务***信息。所述第一转换协议获取子单元可以配置为根据所述目标型号信息、所述设备提供商信息和所述目标服务***信息确定所述第一转换协议,以便根据所述第一转换协议将所述震动描述参数转换为所述震动参数。
在一些实施例中,所述目标转换协议包括第二转换协议。
在一些实施例中,所述目标转换协议确定单元可以包括:马达提供商确定单元和第二转换协议确定单元。
其中,所述马达提供商确定单元可以配置为若所述目标提供方是为所述目标设备提供震动参数接口的马达提供商,则获取提供所述震动参数接口的马达提供商信息。所述第二转换协议确定单元可以配置为根据所述马达提供商信息确定所述第二转换协议,以便根据所述第二转换协议将所述震动描述参数转换为所述震动参数。
在一些实施例中,所述目标震动描述信息包括至少一个震感单元,所述目标震动接口包括震感单元接口。
在一些实施例中,所述震动执行信息获取模块1203可以包括:解析单元,所述震动控制模块1204可以包括:第三控制单元。
其中,所述解析单元可以配置为若所述震动支持信息为所述目标设备通过所述震感单元接口支持震感单元,则从所述目标震动描述信息中解析出各个震感单元。所述第三控制单元可以配置为将解析出的各个震感单元传输给所述目标设备的所述震感单元接口,以便所述目标设备根据解析出的各个震感单元进行震动。
在一些实施例中,所述目标震动接口包括震动描述信息接口,所述震动执行信息为所述目标震动描述信息。
在一些实施例中,所述震动控制模块可以包括:第四控制单元。
其中,所述第四控制单元可以配置为若所述震动支持信息为所述目标设备通过所述震动描述信息接口支持震动描述信息,则将所述目标震动描述信息传输至所述目标设备的所述震动描述信息接口,以便所述目标设备根据所述目标震动描述信息进行震动。
在一些实施例中,所述震动支持信息包括第一马达震动参数和第二马达震动参数。
在一些实施例中,所述目标设备包括至少两个马达,所述震动支持信息包括第一马达支持信息和第二马达支持信息。
在一些实施例中其中,所述震动控制模块1204可以包括:位置信息获取单元、马达确定单元以及马达控制单元。
其中,所述位置信息获取单元可以配置为从所述目标设备中获取所述至少两个马达的位置信息。所述马达确定单元可以配置为根据所述位置信息在所述至少两个马达中确定第一马达和第二马达。所述马达控制单元可以配置为将所述第一马达支持信息和所述第二马达支持信息传输至所述目标设备的目标震动接口,以通过第一马达支持信息控制所述第一马达震动,通过所述第二马达支持信息控制所述第二马达震动。
在一些实施例中,所述位置信息包括所述至少两个马达在目标空间坐标系下的目标坐标信息。所述马达确定单元可以包括:目标方向确定子单元和马达确定子单元。
其中,所述目标方向确定子单元可以配置为在所述目标空间坐标系确定目标方向。所述马达确定子单元可以配置为沿着所述目标方向并根据所述目标坐标信息在所述至少两个马达中确定所述第一马达和所述第二马达。
在一些实施例中,所述震动描述信息获取模块1202可以包括:震动服务支持请求获取单元、震动支持信息返回单元以及目标震动描述信息接收单元。
其中,所述震动服务支持请求获取单元可以配置为接收目标应用的震动服务支持请求。所述震动支持信息返回单元可以配置为响应所述震动服务支持请求,向所述目标应用返回所述目标设备的震动支持信息。所述目标震动描述信息接收单元可以配置为接收所述目标应用响应所述震动支持信息返回的所述目标震动描述信息。
在一些实施例中,所述目标震动描述信息包括文件型目标震动描述信息。
在一些时候死里中,所述目标震动描述信息接收单元可以包括:文件型目标震动描述信息获取子单元。
其中,所述文件型目标震动描述信息获取子单元可以配置为若所述震动支持信息为所述目标设备支持文件型震动描述信息,则接收所述目标应用响应所述震动支持信息返回的所述文件型目标震动描述信息。
在一些实施例中,所述目标震动描述信息包括字符串型目标震动描述信息。
在一些实施例中,所述目标震动描述信息接收单元可以包括:字符串型目标震动描述信息。
其中,所述字符串型目标震动描述信息可以配置文若所述震动支持信息为所述目标设备支持字符串型震动描述信息,则接收所述目标应用响应所述震动支持信息返回的所述字符串型目标震动描述信息。
在一些实施例中,所述震动描述参数包括:震动持续时间、震动强度、震动频率、震动加速度、震动增强时间以及震动衰减时间中的至少一个。
在一些实施例中,所述震动控制装置还包括:停止参数获取模块和震动停止控制模块。
其中,所述停止参数获取模块可以配置为获取目标停止参数。所述震动停止控制模块可以配置为根据所述目标停止参数控制所述目标设备停止震动。
由于本公开的示例实施例的震动控制装置1200的各个功能模块与上述震动控制方法的示例实施例的步骤对应,因此在此不再赘述。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者智能设备等)执行根据本公开实施例的方法,例如图3的一个或多个所示的步骤。
此外,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其他实施例。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未申请的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不限于这里已经示出的详细结构、附图方式或实现方法,相反,本公开意图涵盖包含在所附权利要求的精神和范围内的各种修改和等效设置。
Claims (15)
1.一种震动控制方法,其特征在于,包括:
获取目标设备的震动支持信息;
获取目标震动描述信息,所述目标震动描述信息用于描述目标场景下的震动特效;
根据所述震动支持信息对所述目标震动描述信息进行处理,获得目标震动执行信息;
将所述目标震动执行信息传输至所述目标设备的目标震动接口,以便所述目标设备根据所述目标震动执行信息进行震动。
2.根据权利要求1所述方法,其特征在于,所述目标震动描述信息包括震动描述参数,所述目标震动接口包括震动参数接口,所述目标震动执行信息包括震动参数;其中,根据所述震动支持信息对所述目标震动描述信息进行处理,获得目标震动执行信息,包括:
若所述震动支持信息为所述目标设备通过所述震动参数接口支持震动参数,则确定提供所述震动参数接口的目标提供方;
根据所述目标提供方确定目标转换协议;
根据所述目标转换协议将所述震动描述参数转换为所述震动参数;
其中,将所述目标震动执行信息传输至所述目标设备的目标震动接口,以便所述目标设备根据所述目标震动执行信息进行震动,包括:
将所述震动参数传输至所述目标设备的所述震动参数接口,以便所述目标设备根据所述震动参数进行震动。
3.根据权利要求2所述方法,其特征在于,所述震动参数包括第一震动参数和第二震动参数,所述第一震动参数与所述震动参数接口适配,所述第二震动参数与所述震动参数接口不适配;其中,根据所述目标转换协议将所述震动描述参数转换为所述震动参数,包括:
通过所述目标转换协议对所述震动描述参数进行转换处理,以获得所述第一震动参数;
其中,将所述震动参数传输至所述目标设备的所述震动参数接口,以便所述目标设备根据所述震动参数进行震动,包括:
将所述第一震动参数传输至所述目标设备的所述震动参数接口,以便所述目标设备根据所述第一震动参数模拟进行震动。
4.根据权利要求2所述方法,其特征在于,所述目标转换协议包括第一转换协议;其中,根据所述目标提供方确定目标转换协议,包括:
若所述目标提供方是所述目标设备的设备提供商,则获取所述目标设备的目标型号信息、所述目标设备的设备提供商信息以及所述目标设备中的目标服务***信息;
根据所述目标型号信息、所述设备提供商信息和所述目标服务***信息确定所述第一转换协议,以便根据所述第一转换协议将所述震动描述参数转换为所述震动参数。
5.根据权利要求2所述方法,其特征在于,所述目标转换协议包括第二转换协议;其中,根据所述目标提供方确定目标转换协议,包括:
若所述目标提供方是为所述目标设备提供震动参数接口的马达提供商,则获取提供所述震动参数接口的马达提供商信息;
根据所述马达提供商信息确定所述第二转换协议,以便根据所述第二转换协议将所述震动描述参数转换为所述震动参数。
6.根据权利要求1所述方法,其特征在于,所述目标震动描述信息包括至少一个震感单元,所述目标震动接口包括震感单元接口;其中,根据所述震动支持信息对所述目标震动描述信息进行处理,获得目标震动执行信息,包括:
若所述震动支持信息为所述目标设备通过所述震感单元接口支持震感单元,则从所述目标震动描述信息中解析出各个震感单元;
其中,将所述目标震动执行信息传输至所述目标设备的目标震动接口,以便所述目标设备根据所述目标震动执行信息进行震动,包括:
将解析出的各个震感单元传输给所述目标设备的所述震感单元接口,以便所述目标设备根据解析出的各个震感单元进行震动。
7.根据权利要求1所述方法,其特征在于,所述目标震动接口包括震动描述信息接口,所述震动执行信息为所述目标震动描述信息;其中,将所述目标震动执行信息传输至所述目标设备的目标震动接口,以便所述目标设备根据所述目标震动执行信息进行震动,包括:
若所述震动支持信息为所述目标设备通过所述震动描述信息接口支持震动描述信息,则将所述目标震动描述信息传输至所述目标设备的所述震动描述信息接口,以便所述目标设备根据所述目标震动描述信息进行震动。
8.根据权利要求1所述方法,其特征在于,所述目标设备包括至少两个马达,所述震动支持信息包括第一马达支持信息和第二马达支持信息;其中,将所述目标震动执行信息传输至所述目标设备的目标震动接口,以便所述目标设备根据所述目标震动执行信息进行震动,包括:
从所述目标设备中获取所述至少两个马达的位置信息;
根据所述位置信息在所述至少两个马达中确定第一马达和第二马达;
将所述第一马达支持信息和所述第二马达支持信息传输至所述目标设备的目标震动接口,以通过第一马达支持信息控制所述第一马达震动,通过所述第二马达支持信息控制所述第二马达震动。
9.根据权利要求8所述方法,其特征在于,所述位置信息包括所述至少两个马达在目标空间坐标系下的目标坐标信息;其中,根据所述位置信息在所述至少两个马达中确定第一马达和第二马达,包括:
在所述目标空间坐标系确定目标方向;
沿着所述目标方向并根据所述目标坐标信息在所述至少两个马达中确定所述第一马达和所述第二马达。
10.根据权利要求1所述方法,其特征在于,获取目标震动描述信息,包括:
接收目标应用的震动服务支持请求;
响应所述震动服务支持请求,向所述目标应用返回所述目标设备的震动支持信息;
接收所述目标应用响应所述震动支持信息返回的所述目标震动描述信息。
11.根据权利要求10所述方法,其特征在于,所述目标震动描述信息包括文件型目标震动描述信息;其中,接收所述目标应用响应所述震动支持信息返回的所述目标震动描述信息,包括:
若所述震动支持信息为所述目标设备支持文件型震动描述信息,则接收所述目标应用响应所述震动支持信息返回的所述文件型目标震动描述信息。
12.根据权利要求11所述方法,其特征在于,所述目标震动描述信息包括字符串型目标震动描述信息;其中,接收所述目标应用响应所述震动支持信息返回的所述目标震动描述信息,包括:
若所述震动支持信息为所述目标设备支持字符串型震动描述信息,则接收所述目标应用响应所述震动支持信息返回的所述字符串型目标震动描述信息。
13.一种震动控制装置,其特征在于,包括:
震动支持信息获取模块,配置为获取目标设备的震动支持信息;
震动描述信息获取模块,配置为获取目标震动描述信息,所述目标震动描述信息用于描述目标场景下的震动特效;
震动执行信息获取模块,配置为根据所述震动支持信息对所述目标震动描述信息进行处理,获得目标震动执行信息;
震动控制模块,配置为将所述目标震动执行信息传输至所述目标设备的目标震动接口,以便所述目标设备根据所述目标震动执行信息进行震动。
14.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-12中任一项所述的方法。
15.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-12中任一项所述的方法。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010985361.1A CN112121411A (zh) | 2020-09-18 | 2020-09-18 | 震动控制方法、装置、电子设备和计算机可读存储介质 |
CN202310559607.2A CN116603228A (zh) | 2020-09-18 | 2021-07-05 | 振动控制方法、装置、电子设备和计算机可读存储介质 |
CN202110758549.7A CN114191809B (zh) | 2020-09-18 | 2021-07-05 | 振动控制方法、装置、电子设备和计算机可读存储介质 |
EP21868502.2A EP4119207A4 (en) | 2020-09-18 | 2021-09-07 | VIBRATION CONTROL METHOD AND APPARATUS, AND ELECTRONIC DEVICE AND COMPUTER-READABLE STORAGE MEDIUM |
PCT/CN2021/116837 WO2022057677A1 (zh) | 2020-09-18 | 2021-09-07 | 振动控制方法、装置、电子设备和计算机可读存储介质 |
US18/163,950 US20230182010A1 (en) | 2020-09-18 | 2023-02-03 | Haptic control method and apparatus, electronic device, and computer-readable storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010985361.1A CN112121411A (zh) | 2020-09-18 | 2020-09-18 | 震动控制方法、装置、电子设备和计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112121411A true CN112121411A (zh) | 2020-12-25 |
Family
ID=73842951
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010985361.1A Pending CN112121411A (zh) | 2020-09-18 | 2020-09-18 | 震动控制方法、装置、电子设备和计算机可读存储介质 |
CN202310559607.2A Pending CN116603228A (zh) | 2020-09-18 | 2021-07-05 | 振动控制方法、装置、电子设备和计算机可读存储介质 |
CN202110758549.7A Active CN114191809B (zh) | 2020-09-18 | 2021-07-05 | 振动控制方法、装置、电子设备和计算机可读存储介质 |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310559607.2A Pending CN116603228A (zh) | 2020-09-18 | 2021-07-05 | 振动控制方法、装置、电子设备和计算机可读存储介质 |
CN202110758549.7A Active CN114191809B (zh) | 2020-09-18 | 2021-07-05 | 振动控制方法、装置、电子设备和计算机可读存储介质 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP4119207A4 (zh) |
CN (3) | CN112121411A (zh) |
WO (1) | WO2022057677A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022057677A1 (zh) * | 2020-09-18 | 2022-03-24 | 腾讯科技(深圳)有限公司 | 振动控制方法、装置、电子设备和计算机可读存储介质 |
CN114870395A (zh) * | 2021-02-05 | 2022-08-09 | 腾讯科技(深圳)有限公司 | 游戏场景的终端震动检测方法、装置、介质及设备 |
EP4117170A4 (en) * | 2021-05-20 | 2023-09-20 | Honor Device Co., Ltd. | METHOD AND DEVICE FOR ADJUSTING THE VIBRATION WAVEFORM OF A LINEAR MOTOR |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117762532A (zh) * | 2022-09-19 | 2024-03-26 | 腾讯科技(深圳)有限公司 | 一种振动控制方法、装置、设备及计算机可读存储介质 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20080048837A (ko) * | 2006-11-29 | 2008-06-03 | 삼성전자주식회사 | 촉각 피드백을 출력하는 장치 및 방법 |
US20140092003A1 (en) * | 2012-09-28 | 2014-04-03 | Min Liu | Direct haptic feedback |
US9558637B2 (en) * | 2013-09-10 | 2017-01-31 | Immersion Corporation | Systems and methods for performing haptic conversion |
US10254836B2 (en) * | 2014-02-21 | 2019-04-09 | Immersion Corporation | Haptic power consumption management |
US10268286B2 (en) * | 2014-12-23 | 2019-04-23 | Immersion Corporation | Controlling power distribution to haptic output devices |
CN104915125B (zh) * | 2015-06-15 | 2018-07-27 | 腾讯科技(深圳)有限公司 | 移动设备的控制方法、控制***及移动设备 |
US20180004291A1 (en) * | 2016-07-01 | 2018-01-04 | Immersion Corporation | Cloud Connected Haptic Platform |
US20190103004A1 (en) * | 2017-10-02 | 2019-04-04 | Immersion Corporation | Haptic pitch control |
CN108837504B (zh) * | 2018-06-05 | 2021-07-27 | 网易(杭州)网络有限公司 | 竞速游戏中的信息处理方法、装置、设备及存储介质 |
CN109379485B (zh) * | 2018-09-26 | 2021-03-19 | 腾讯数码(天津)有限公司 | 应用程序的反馈方法、装置、终端及存储介质 |
CN110010151A (zh) * | 2018-12-31 | 2019-07-12 | 瑞声科技(新加坡)有限公司 | 一种音频信号处理方法及设备、存储介质 |
CN109908578B (zh) * | 2019-01-28 | 2022-07-05 | 努比亚技术有限公司 | 一种游戏震感控制方法、终端及计算机可读存储介质 |
WO2020258225A1 (zh) * | 2019-06-28 | 2020-12-30 | 瑞声声学科技(深圳)有限公司 | 游戏手柄、游戏手柄的振动方法及装置 |
CN111111157B (zh) * | 2019-12-20 | 2023-12-01 | 瑞声科技(新加坡)有限公司 | 马达触感信号生成方法和马达触感信号生成接口 |
CN111352509A (zh) * | 2020-03-03 | 2020-06-30 | 瑞声科技(新加坡)有限公司 | 一种振动控制方法、存储介质及设备 |
CN112121411A (zh) * | 2020-09-18 | 2020-12-25 | 腾讯科技(深圳)有限公司 | 震动控制方法、装置、电子设备和计算机可读存储介质 |
-
2020
- 2020-09-18 CN CN202010985361.1A patent/CN112121411A/zh active Pending
-
2021
- 2021-07-05 CN CN202310559607.2A patent/CN116603228A/zh active Pending
- 2021-07-05 CN CN202110758549.7A patent/CN114191809B/zh active Active
- 2021-09-07 WO PCT/CN2021/116837 patent/WO2022057677A1/zh unknown
- 2021-09-07 EP EP21868502.2A patent/EP4119207A4/en active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022057677A1 (zh) * | 2020-09-18 | 2022-03-24 | 腾讯科技(深圳)有限公司 | 振动控制方法、装置、电子设备和计算机可读存储介质 |
CN114870395A (zh) * | 2021-02-05 | 2022-08-09 | 腾讯科技(深圳)有限公司 | 游戏场景的终端震动检测方法、装置、介质及设备 |
CN114870395B (zh) * | 2021-02-05 | 2023-09-15 | 腾讯科技(深圳)有限公司 | 游戏场景的终端振动检测方法、装置、介质及设备 |
US11934581B2 (en) | 2021-02-05 | 2024-03-19 | Tencent Technology (Shenzhen) Company Limited | Terminal vibration evaluation method and apparatus in game scenario, medium, and device |
EP4117170A4 (en) * | 2021-05-20 | 2023-09-20 | Honor Device Co., Ltd. | METHOD AND DEVICE FOR ADJUSTING THE VIBRATION WAVEFORM OF A LINEAR MOTOR |
Also Published As
Publication number | Publication date |
---|---|
CN114191809A (zh) | 2022-03-18 |
CN116603228A (zh) | 2023-08-18 |
WO2022057677A1 (zh) | 2022-03-24 |
CN114191809B (zh) | 2023-04-18 |
EP4119207A1 (en) | 2023-01-18 |
EP4119207A4 (en) | 2023-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2019233201B2 (en) | Resource configuration method and apparatus, terminal, and storage medium | |
CN114191809B (zh) | 振动控制方法、装置、电子设备和计算机可读存储介质 | |
CN108733738B (zh) | 一种页面加载方法、***、服务器及终端 | |
CN105611364B (zh) | 便携数码设备与大屏幕互动的方法、装置及*** | |
CN110795195A (zh) | 一种网页渲染方法、装置、电子设备及存储介质 | |
CN111338623B (zh) | 一种开发用户界面的方法、装置、介质和电子设备 | |
CN113079216B (zh) | 一种云应用的实现方法、装置、电子设备及可读存储介质 | |
CN108881228A (zh) | 云端注册激活方法、装置、设备和存储介质 | |
CN110764805B (zh) | 客户端无感升级的方法、装置、终端及存储介质 | |
CN108052377B (zh) | 基于云的输入处理方法、装置、服务器和存储介质 | |
CN109343970B (zh) | 基于应用程序的操作方法、装置、电子设备及计算机介质 | |
CN114489891A (zh) | 云应用程序的控制方法、***、装置、可读介质和设备 | |
CN110618811B (zh) | 信息呈现方法和装置 | |
CN109669720B (zh) | 基于Promise的链式异步请求处理方法、装置及电子设备 | |
WO2023083071A1 (zh) | 视图交互方法、装置、电子设备及计算机可读介质 | |
CN109669691B (zh) | 基于嵌入式Linux音频播放器的平台通用控制方法及*** | |
CN112947905A (zh) | 一种图片加载方法、装置 | |
CN114265714A (zh) | 一种基于云手机的驱动控制方法及装置、存储介质 | |
EP3848800A1 (en) | Method and apparatus for displaying message box, terminal and storage medium | |
US20230182010A1 (en) | Haptic control method and apparatus, electronic device, and computer-readable storage medium | |
CN111124907A (zh) | 一种***测试方法、装置和服务器 | |
KR20160000604A (ko) | PaaS 클라우드 시스템에서의 GPU 가상화 기법을 사용한 개발 툴 배포 방법 | |
CN112688863B (zh) | 网关数据处理方法、装置及电子设备 | |
CN115221028A (zh) | 程序调试方法及其装置 | |
CN115510359A (zh) | H5页面生成方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40035467 Country of ref document: HK |
|
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20201225 |