用于仿真虚拟控制器装置的方法、仿真器及计算机可读介质与流程

文档序号:17928769发布日期:2019-06-15 00:38阅读:217来源:国知局
用于仿真虚拟控制器装置的方法、仿真器及计算机可读介质与流程

各种实施例一般关于一种用于仿真虚拟控制器装置的方法、仿真器及计算机可读介质。



背景技术:

常用的游戏手把(gamepad)控制器可具有足够的输入,它们可以表示一个或多个虚拟游戏控制器。然而,虚拟现实应用程序可能不适用于现有的游戏手把控制器。



技术实现要素:

根据各种实施例,可提供一种仿真虚拟控制器装置的方法。该方法可包括:接收来自游戏控制器的输入;判定所接收的输入是否被分配给第一虚拟控制器装置或分配给第二虚拟控制器装置;如果判定所接收的输入被分配给该第一虚拟控制器装置,则输出与该第一虚拟控制器装置相关的数据;以及如果判定所接收的输入被分配给该第二虚拟控制器装置,则输出与该第二虚拟控制器装置相关的数据。

根据各种实施例,可提供一种仿真器。该仿真器可包括:接收器,经配置以接收来自游戏控制器的输入;判定电路,经配置以判定所接收的输入是否被分配给第一虚拟控制器装置或分配给第二虚拟控制器装置;以及输出电路,经配置为如果判定所接收的输入被分配给该第一虚拟控制器装置,则输出与该第一虚拟控制器装置相关的数据、以及经配置为如果判定所接收的输入被分配给该第二虚拟控制器装置,则输出与该第二虚拟控制器装置相关的数据。

根据各种实施例,可提供一种计算机可读介质。该计算机可读介质可包括指令,当由计算机执行该指令时,使得该计算机执行一种仿真虚拟控制器装置的方法。该方法可包括:接收来自游戏控制器的输入;判定所接收的输入是否被分配给第一虚拟控制器装置或分配给第二虚拟控制器装置;如果判定所接收的输入被分配给该第一虚拟控制器装置,则输出与该第一虚拟控制器装置相关的数据;以及如果判定所接收的输入被分配给该第二虚拟控制器装置,则输出与该第二虚拟控制器装置相关的数据。

附图说明

在附图中,在所有不同视图中,相同附图标记一般表示相同部件。附图未必按比例绘制,而是一般着重于例示本发明的原理。为清晰起见,可任意扩大或缩小各种特征或组件的尺寸。在以下说明中,将参照以下附图来说明本发明的各种实施例,在附图中:

图1a显示oculusrift控制器的侧视图。

图1b显示oculusrift控制器的俯视图。

图1c显示googledaydream控制器。

图1d显示teriost-1蓝牙远程控制器vr游戏手把。

图1e显示playstation4控制器。

图2a显示根据各种实施例的用于仿真虚拟控制器装置的方法的流程图。

图2b显示根据各种实施例的仿真器。

图3显示说明根据各种实施例的用于虚拟现实控制器的游戏控制器输入被分割的流程图。

图4显示说明根据各种实施例的方法的流程图。

图5显示说明根据各种实施例的方法的流程图。

具体实施方式

以下将参考随附附图进行详细说明,该附图以例示的方式显示可用以实现本发明的具体细节及实施例。将足够详细地说明这些实施例,以使本领域技术人员能够实现本发明。可使用其他实施例,且可在不背离本发明的范围下作出结构及逻辑上的改变。各种实施例未必相互排斥,由于一些实施例可与一个或多个其他实施例组合而形成新的实施例。

在本文中,如在此说明书中所述的仿真器可包括存储器,该存储器例如用于在仿真器内所执行的处理。实施例中所使用的存储器可以是易失性存储器,例如dram(动态随机存取存储器),或者是非易失性存储器,例如prom(可编程只读存储器)、eprom(可擦除prom)、eeprom(电可擦除prom)、或闪存(例如浮栅存储器)、电荷俘获存储器、mram(磁阻式随机存取存储器)或pcram(相变随机存取存储器)。

在实施例中,“电路”可理解为任一种逻辑执行实体,其可为专用电路或处理器,该处理器用于执行储存于存储器、固件、或其任意组合中的软件。因此,在实施例中,“电路”可以是硬接线逻辑电路或可编程逻辑电路,例如可编程处理器,诸如微处理器(例如复杂指令集计算机(cisc)处理器或精简指令集计算机(risc)处理器)。“电路”也可为用于执行软件的处理器,该软件例如是任一种计算机程序,诸如使用虚拟机程序代码(例如java)的计算机程序。以下将更详细描述的各个功能的任何其他种类的实现方式也可根据可替代实施例而被理解为“电路”。

说明书中的用语“包括”应理解为具有广泛的含义,类似于用语“包含”,且将理解为意味包含所述的整体或步骤、或整体或步骤的群组,但不排除任何其他整体或步骤、或整体或步骤的群组。此定义也适用于用语“包括”(诸如“包含”)的变型。

在此说明书中参照的任何现有技术不是且不应被视为承认或以任何形式建议所引用的现有技术在澳大利亚(或任何其他国家)组成公知常识的一部分。

为使本发明可易于理解并实际实行,现在将经由举例而非限制方式参考附图来说明特定实施例。

针对装置提供各种实施例,并针对方法提供各种实施例。应理解,装置的基本性质也适用于方法,反之亦然。因此,为简洁起见,可省略对此种性质的重复说明。

应理解,本文针对特定装置所述的任一性质也可适用于本文所述的任一种装置。应理解,本文针对特定方法所述的任一性质也可适用于本文所述的任一种方法。此外,应理解,对于本文所述的任一种装置或方法,在所述装置或方法中未必必须包含所有所述组件或步骤,而是也可包含仅某些(而非全部)组件或步骤。

本文的用语“耦接”(或“连接”)可理解为电气耦接或机械耦接,例如附接或固定,或仅仅接触而无任何固定,并且应了解,可以提供直接耦接或间接耦接(换言之,并未直接接触的耦接)。

可提供一种虚拟现实控制器,例如oculusrift控制器、googledaydream控制器、teriost-1蓝牙远程控制器vr游戏手把。

图1a显示oculusrift控制器102的侧视图100。

图1b显示oculusrift控制器102的俯视图108。

图1c显示googledaydream控制器110。

图1d显示teriost-1蓝牙远程控制器vr游戏手把112。

显示在图1a至图1d中的控制器各自可具有按钮106和轴输入104的组合。这些控制器中的每一个的顶部区域可以是轴输入104,或者可使用表示哈希输入函数的触摸板进行设计。例如,可在控制器上提供两个至四个按钮106。

图1e显示作为常用游戏控制器(例如游戏手把控制器)的示例的playstation4控制器114。

常用的游戏手把控制器可具有足够的输入,它们可以表示一个或多个虚拟游戏控制器。然而,(虚拟现实)应用程序可能不适用于现有的游戏手把控制器。

根据各种实施例,可提供表示一个或多个虚拟vr控制器的装置驱动器,因此应用程序利用现有的硬件。

根据各种实施例,可提供从标准游戏控制器获取输入并表示一个虚拟现实控制器或多个虚拟现实控制器(例如两个不同的虚拟现实控制器)的装置驱动器或用户空间应用程序。

根据各种实施例,可提供表示一个虚拟现实控制器或多个虚拟现实控制器的单个游戏控制器。

图2a显示根据各种实施例的用于仿真虚拟控制器装置的方法的流程图200。在步骤202中,可接收来自游戏控制器的输入。在步骤204中,其可判定所接收的输入是否被分配给第一虚拟控制器装置或分配给第二虚拟控制器装置。在步骤206中,如果判定所接收的输入被分配给该第一虚拟控制器装置,则可输出与该第一虚拟控制器装置相关的数据。在步骤208中,如果判定所接收的输入被分配给该第二虚拟控制器装置,则可输出与该第二虚拟控制器装置相关的数据。

换言之,可接收对物理装置的输入,并且基于输入,可将输入模拟为与第一虚拟设备相关的输入或模拟为与第二虚拟设备相关的输入(或与第一虚拟设备和第二虚拟设备两种相关的输入)。

根据各种实施例,第一虚拟控制器装置及/或第二虚拟控制器装置可包括或可以是或可包括在与游戏控制器的类型为不同的类型的控制器。

根据各种实施例,该第一虚拟控制器装置可包括虚拟现实控制器的硬件按钮。根据各种实施例,该第二虚拟控制器装置可包括该虚拟现实控制器的加速度计。

根据各种实施例,该方法可进一步包括接收用于将所接收的输入分配给该第一虚拟控制器装置或分配给该第二虚拟控制器装置的用户输入。

根据各种实施例,该游戏控制器可包括多个输入组件,以及该多个输入组件中的每个输入组件可被分配给该第一虚拟控制器装置或分配给该第二虚拟控制器装置。

根据各种实施例,该游戏控制器可包括多个输入组件,以及该多个输入组件的输入组件的组合被分配给该第一虚拟控制器装置或分配给该第二虚拟控制器装置。

根据各种实施例,该输入可以是使用对计算机的硬件接口从该游戏控制器接收的。

根据各种实施例,该硬件接口可包括或可以是通用串行总线和蓝牙中的至少一个。

根据各种实施例,如果判定所接收的输入被分配给该第一虚拟控制器装置,则与该第一虚拟控制器装置相关的数据可被输出到驱动器接口;以及如果判定所接收的输入被分配给该第二虚拟控制器装置,则与该第二虚拟控制器装置相关的数据可被输出到驱动器接口。

根据各种实施例,如果判定所接收的输入被分配给该第一虚拟控制器装置,则与该第一虚拟控制器装置相关的数据可被输出到操作系统的内核;以及如果判定所接收的输入被分配给该第二虚拟控制器装置,则与该第二虚拟控制器装置相关的数据可被输出到操作系统的内核。

根据各种实施例,如果判定所接收的输入被分配给该第一虚拟控制器装置,则与该第一虚拟控制器装置相关的数据可被输出到用户空间应用程序;以及如果判定所接收的输入被分配给该第二虚拟控制器装置,则与该第二虚拟控制器装置相关的数据可被输出到用户空间应用程序。

图2b显示根据各种实施例的仿真器210。该仿真器210可包括接收器212,经配置以接收来自游戏控制器的输入。该仿真器210可进一步包括判定电路214,经配置以判定所接收的输入是否被分配给第一虚拟控制器装置或分配给第二虚拟控制器装置。该仿真器210可进一步包括输出电路216,经配置为如果判定所接收的输入被分配给该第一虚拟控制器装置,则输出与该第一虚拟控制器装置相关的数据、以及经配置为如果判定所接收的输入被分配给该第二虚拟控制器装置,则输出与该第二虚拟控制器装置相关的数据。该接收器212、该判定电路214及该输出电路216可彼此耦接,如由线218指示,例如电气耦接,例如使用线或电缆及/或机械耦接。

根据各种实施例,该第一虚拟控制器装置及/或该第二虚拟控制器装置可包括或可以是或可包括在与该游戏控制器的类型为不同的类型的控制器。

根据各种实施例,该第一虚拟控制器装置可包括虚拟现实控制器的硬件按钮。根据各种实施例,该第二虚拟控制器装置可包括该虚拟现实控制器的加速度计。

根据各种实施例,该接收器212可进一步经配置以接收用于将所接收的输入分配给该第一虚拟控制器装置或分配给该第二虚拟控制器装置的用户输入。

根据各种实施例,该游戏控制器可包括多个输入组件,以及该多个输入组件中的每个输入组件被分配给该第一虚拟控制器装置或分配给该第二虚拟控制器装置。

根据各种实施例,该游戏控制器可包括多个输入组件,以及该多个输入组件的输入组件的组合被分配给该第一虚拟控制器装置或分配给该第二虚拟控制器装置。

根据各种实施例,该接收器212可经配置为使用对计算机的硬件接口以接收来自该游戏控制器的输入。

根据各种实施例,该硬件接口可包括或可以是通用串行总线和蓝牙中的至少一个。

根据各种实施例,该输出电路216可经配置为:如果判定所接收的输入被分配给该第一虚拟控制器装置,则输出与该第一虚拟控制器装置相关的数据到驱动器接口;以及如果判定所接收的输入被分配给该第二虚拟控制器装置,则输出与该第二虚拟控制器装置相关的数据到驱动器接口。

根据各种实施例,该输出电路216可经配置为:如果判定所接收的输入被分配给该第一虚拟控制器装置,则输出与该第一虚拟控制器装置相关的数据到操作系统的内核;以及如果判定所接收的输入被分配给该第二虚拟控制器装置,则输出与该第二虚拟控制器装置相关的数据到操作系统的内核。

根据各种实施例,该输出电路216可经配置为:如果判定所接收的输入被分配给该第一虚拟控制器装置,则输出与该第一虚拟控制器装置相关的数据到用户空间应用程序;以及如果判定所接收的输入被分配给该第二虚拟控制器装置,则输出与该第二虚拟控制器装置相关的数据到用户空间应用程序。

根据各种实施例,可提供一种计算机可读介质。该计算机可读介质可包括指令,当由计算机执行该指令时,使得该计算机执行一种仿真虚拟控制器装置的方法。该方法可包括:接收来自游戏控制器的输入;判定所接收的输入是否被分配给第一虚拟控制器装置或分配给第二虚拟控制器装置;如果判定所接收的输入被分配给该第一虚拟控制器装置,则输出与该第一虚拟控制器装置相关的数据;以及如果判定所接收的输入被分配给该第二虚拟控制器装置,则输出与该第二虚拟控制器装置相关的数据。

根据各种实施例,该第一虚拟控制器装置及/或该第二虚拟控制器装置可包括或可以是或可包括在与该游戏控制器的类型为不同的类型的控制器。

根据各种实施例,该第一虚拟控制器装置可包括虚拟现实控制器的硬件按钮。根据各种实施例,该第二虚拟控制器装置可包括该虚拟现实控制器的加速度计。

根据各种实施例,该计算机可读介质可包括指令,当由计算机执行该指令时,使得该计算机执行接收用于将所接收的输入分配给该第一虚拟控制器装置或分配给该第二虚拟控制器装置的用户输入。

根据各种实施例,该游戏控制器可包括多个输入组件,以及该多个输入组件中的每个输入组件可被分配给该第一虚拟控制器装置或分配给该第二虚拟控制器装置。

根据各种实施例,该游戏控制器可包括多个输入组件,以及该多个输入组件的输入组件的组合被分配给该第一虚拟控制器装置或分配给该第二虚拟控制器装置。

根据各种实施例,该输入可以是使用对计算机的硬件接口从该游戏控制器接收的。

根据各种实施例,该硬件接口可包括或可以是通用串行总线和蓝牙中的至少一个。

根据各种实施例,如果判定所接收的输入被分配给该第一虚拟控制器装置,则与该第一虚拟控制器装置相关的数据可被输出到驱动器接口;以及如果判定所接收的输入被分配给该第二虚拟控制器装置,则与该第二虚拟控制器装置相关的数据可被输出到驱动器接口。

根据各种实施例,如果判定所接收的输入被分配给该第一虚拟控制器装置,则与该第一虚拟控制器装置相关的数据可被输出到操作系统的内核;以及如果判定所接收的输入被分配给该第二虚拟控制器装置,则与该第二虚拟控制器装置相关的数据可被输出到操作系统的内核。

根据各种实施例,如果判定所接收的输入被分配给该第一虚拟控制器装置,则与该第一虚拟控制器装置相关的数据可被输出到用户空间应用程序;以及如果判定所接收的输入被分配给该第二虚拟控制器装置,则与该第二虚拟控制器装置相关的数据可被输出到用户空间应用程序。

应理解,对“虚拟”控制器的引用是指可以不是实体存在但是由根据各种实施例的游戏控制器模拟的控制器。虚拟控制器可例如是虚拟vr控制器或任何其他种类的控制器,例如任何类型的控制器、例如控制器的任何类型及/或例如其与正在模拟该虚拟控制器的控制器的类型为不同的类型的控制器。换言之,控制器的一种类型可以被转换成另一种类型的控制器。

根据各种实施例,可能不需要重写虚拟现实应用程序。

根据各种实施例,用于软件应用程序的游戏控制器可表示多个虚拟现实控制器。根据各种实施例,由操作系统装置驱动器接收的人性化接口装置(hid)描述符和(hid)报告可以决定哪个报告应该被转换成一个或多个虚拟现实控制器用的报告。现有游戏应用程序可能会看到与预期行为相对应的输入(或可能会看到事件),并可能相应地进行操作。

图3显示说明根据各种实施例的用于虚拟现实控制器的游戏控制器输入被分割的流程图300。在步骤302中,可以开始游戏控制。在步骤304中,可以提供接口(例如通用串行总线(usb)接口或蓝牙接口)。在步骤306中,可以判定是否操纵杆被移动或按钮被按压。如果在步骤306中判定操纵杆既不被移动且按钮也不被按压,则可在步骤304中进行处理。如果在步骤306中判定操纵杆被移动或按钮被按压,则可在步骤308中提供消耗hid数据的装置驱动器。在步骤310中,可以表示新的(第一)虚拟现实(vr)控制器。在步骤312中,可以表示新的(第二)虚拟现实(vr)控制器。因此,游戏可以看到如由步骤314指示的两个虚拟设备,例如第一虚拟现实控制器和第二虚拟现实控制器。

根据各种实施例,在操作系统(例如windows,linux或android)上运行的应用程序可以看到标准游戏控制器,然后可以通过分离(或转换)信息来创建新的虚拟vr控制器,然后通知操作系统该一个或多个虚拟vr控制器可供使用。如果应用程序可以选择使用哪个控制器,则该方法(也如图4中所示)可以作用,使得该应用程序可以忽略实体游戏控制器,但可以利用可用的虚拟vr控制器。windows、linux和android各自允许在应用程序空间中引入虚拟usb装置。linux和android也可允许将hid输入直接发送到内核,从而创建虚拟设备。

图4显示说明根据各种实施例的方法的流程图400。在步骤402中,可以开始游戏控制。在步骤404中,可以提供接口(例如通用串行总线(usb)接口或蓝牙接口)。在步骤406中,可以判定是否操纵杆被移动或按钮被按压。如果在步骤406中判定操纵杆既不被移动且按钮也不被按压,则可在步骤404中进行处理。如果在步骤406中判定操纵杆被移动或按钮被按压,则可在步骤408中建立游戏控制器表示。在步骤410中,应用程序可以创建一个或多个虚拟接口。在步骤412中,可以判定是否操纵杆被移动或按钮被按压。如果在步骤412中判定操纵杆既不被移动且按钮也不被按压,则可在步骤410中进行处理。如果在步骤412中判定操纵杆被移动或按钮被按压,则可在步骤414中判定哪个虚拟接口来表示移动,并且根据该判定,可以将关于该移动的信息发送到步骤416中的第一虚拟控制器或发送到步骤418中的第二虚拟控制器(或第一虚拟控制器和第二虚拟控制器两者)。

一些虚拟现实控制器可包含允许使用者的手臂移动由应用程序注册的加速度计。根据各种实施例,标准控制器(换言之,游戏控制器)可表示单个虚拟现实控制器,并且可取得标准控制器的第一子集(例如一半)来表示输入,以及标准控制器的第二子集(例如后半)允许用户使用按钮和轴控制来进入移动。此图示在图5中。

图5显示说明根据各种实施例的方法的流程图500。在步骤502中,可以开始游戏控制。在步骤504中,可以提供接口(例如通用串行总线(usb)接口或蓝牙接口)。在步骤506中,可以判定是否映射到vr控制器的按钮被按压或映射到vr控制器的轴被致动。如果在步骤506中判定映射到vr控制器的按钮既不被按压且映射到vr控制器的轴也不被致动,则可在步骤508中进行处理;否则,可在步骤510中进行处理。在步骤508中,可以判定是否映射到加速度计的按钮被按压或映射到加速度计的轴被致动。如果在步骤508中判定映射到加速度计的按钮既不被按压且映射到加速度计的轴也不被致动,则可在步骤504中进行处理;否则,可在步骤510中进行处理。在步骤510中,驱动器可将游戏控制器输入转换为vr表示(即为vr控制器输入或加速度计输入,取决于步骤510中的处理是否由步骤506中的处理或由步骤508中的处理引起的)。然后可将vr表示提供给虚拟控制器512。

各种实施例可允许在虚拟现实应用程序中使用现有的游戏控制器(其可被称为旧有控制器(legacycontrollers))。这可能是有用的,例如,因为现有游戏不必被修改以利用这些旧有控制器中的任何一个。

以下示例关于另外的实施例。

示例1是一种仿真虚拟控制器装置的方法,该方法包括:接收来自游戏控制器的输入;判定所接收的输入是否被分配给第一虚拟控制器装置或分配给第二虚拟控制器装置;如果判定所接收的输入被分配给该第一虚拟控制器装置,则输出与该第一虚拟控制器装置相关的数据;以及如果判定所接收的输入被分配给该第二虚拟控制器装置,则输出与该第二虚拟控制器装置相关的数据。

在示例2中,示例1的目标可视需要包括:该第一虚拟控制器装置或该第二虚拟控制器装置中的至少一个包括与该游戏控制器的类型为不同的类型的控制器。

在示例3中,示例1至示例2中任一者的目标可视需要包括:该第一虚拟控制器装置包括虚拟现实控制器的硬件按钮;以及其中该第二虚拟控制器装置包括该虚拟现实控制器的加速度计。

在示例4中,示例1至示例3中任一者的目标可视需要包括:接收用于将所接收的输入分配给该第一虚拟控制器装置或分配给该第二虚拟控制器装置的用户输入。

在示例5中,示例1至示例4中任一者的目标可视需要包括:该游戏控制器包括多个输入组件;其中该多个输入组件中的每个输入组件被分配给该第一虚拟控制器装置或分配给该第二虚拟控制器装置。

在示例6中,示例1至示例5中任一者的目标可视需要包括:该游戏控制器包括多个输入组件;其中该多个输入组件的输入组件的组合被分配给该第一虚拟控制器装置或分配给该第二虚拟控制器装置。

在示例7中,示例1至示例6中任一者的目标可视需要包括:该输入是使用对计算机的硬件接口从该游戏控制器接收的。

在示例8中,示例7的目标可视需要包括:该硬件接口包括通用串行总线和蓝牙中的至少一个。

在示例9中,示例1至示例8中任一者的目标可视需要包括:如果判定所接收的输入被分配给该第一虚拟控制器装置,则与该第一虚拟控制器装置相关的数据被输出到驱动器接口;其中如果判定所接收的输入被分配给该第二虚拟控制器装置,则与该第二虚拟控制器装置相关的数据被输出到驱动器接口。

在示例10中,示例1至示例9中任一者的目标可视需要包括:如果判定所接收的输入被分配给该第一虚拟控制器装置,则与该第一虚拟控制器装置相关的数据被输出到操作系统的内核;其中如果判定所接收的输入被分配给该第二虚拟控制器装置,则与该第二虚拟控制器装置相关的数据被输出到操作系统的内核。

在示例11中,示例1至示例10中任一者的目标可视需要包括:如果判定所接收的输入被分配给该第一虚拟控制器装置,则与该第一虚拟控制器装置相关的数据被输出到用户空间应用程序;其中如果判定所接收的输入被分配给该第二虚拟控制器装置,则与该第二虚拟控制器装置相关的数据被输出到用户空间应用程序。

示例12是一种仿真器,包括:接收器,经配置以接收来自游戏控制器的输入;判定电路,经配置以判定所接收的输入是否被分配给第一虚拟控制器装置或分配给第二虚拟控制器装置;以及输出电路,经配置为如果判定所接收的输入被分配给该第一虚拟控制器装置,则输出与该第一虚拟控制器装置相关的数据、以及经配置为如果判定所接收的输入被分配给该第二虚拟控制器装置,则输出与该第二虚拟控制器装置相关的数据。

在示例13中,示例12的目标可视需要包括:该第一虚拟控制器装置和该第二虚拟控制器装置中的至少一个包括与该游戏控制器的类型为不同的类型的控制器。

在示例14中,示例12至示例13中任一者的目标可视需要包括:该第一虚拟控制器装置包括虚拟现实控制器的硬件按钮;其中该第二虚拟控制器装置包括该虚拟现实控制器的加速度计。

在示例15中,示例12至示例14中任一者的目标可视需要包括:该接收器进一步经配置以接收用于将所接收的输入分配给该第一虚拟控制器装置或分配给该第二虚拟控制器装置的用户输入。

在示例16中,示例12至示例15中任一者的目标可视需要包括:该游戏控制器包括多个输入组件;其中该多个输入组件中的每个输入组件被分配给该第一虚拟控制器装置或分配给该第二虚拟控制器装置。

在示例17中,示例12至示例16中任一者的目标可视需要包括:该游戏控制器包括多个输入组件;其中该多个输入组件的输入组件的组合被分配给该第一虚拟控制器装置或分配给该第二虚拟控制器装置。

在示例18中,示例12至示例17中任一者的目标可视需要包括:该接收器经配置为使用对计算机的硬件接口以接收来自该游戏控制器的输入。

在示例19中,示例18的目标可视需要包括:该硬件接口包括通用串行总线和蓝牙中的至少一个。

在示例20中,示例12至示例19中任一者的目标可视需要包括:该输出电路经配置为:如果判定所接收的输入被分配给该第一虚拟控制器装置,则输出与该第一虚拟控制器装置相关的数据到驱动器接口;以及如果判定所接收的输入被分配给该第二虚拟控制器装置,则输出与该第二虚拟控制器装置相关的数据到驱动器接口。

在示例21中,示例12至示例20中任一者的目标可视需要包括:该输出电路经配置为:如果判定所接收的输入被分配给该第一虚拟控制器装置,则输出与该第一虚拟控制器装置相关的数据到操作系统的内核;以及如果判定所接收的输入被分配给该第二虚拟控制器装置,则输出与该第二虚拟控制器装置相关的数据到操作系统的内核。

在示例22中,示例12至示例21中任一者的目标可视需要包括:该输出电路经配置为:如果判定所接收的输入被分配给该第一虚拟控制器装置,则输出与该第一虚拟控制器装置相关的数据到用户空间应用程序;以及如果判定所接收的输入被分配给该第二虚拟控制器装置,则输出与该第二虚拟控制器装置相关的数据到用户空间应用程序。

示例23是一种计算机可读介质,包括指令,当由计算机执行该指令时,使得该计算机执行一种仿真虚拟控制器装置的方法,该方法包括:接收来自游戏控制器的输入;判定所接收的输入是否被分配给第一虚拟控制器装置或分配给第二虚拟控制器装置;如果判定所接收的输入被分配给该第一虚拟控制器装置,则输出与该第一虚拟控制器装置相关的数据;以及如果判定所接收的输入被分配给该第二虚拟控制器装置,则输出与该第二虚拟控制器装置相关的数据。

在示例24中,示例23的目标可视需要包括:该第一虚拟控制器装置和该第二虚拟控制器装置中的至少一个包括与该游戏控制器的类型为不同的类型的控制器。

在示例25中,示例23至示例24中任一者的目标可视需要包括:该第一虚拟控制器装置包括虚拟现实控制器的硬件按钮;其中该第二虚拟控制器装置包括该虚拟现实控制器的加速度计。

在示例26中,示例23至示例25中任一者的目标可视需要包括:指令,当由计算机执行该指令时,使得该计算机执行:接收用于将所接收的输入分配给该第一虚拟控制器装置或分配给该第二虚拟控制器装置的用户输入。

在示例27中,示例23至示例26中任一者的目标可视需要包括:该游戏控制器包括多个输入组件;其中该多个输入组件中的每个输入组件被分配给该第一虚拟控制器装置或分配给该第二虚拟控制器装置。

在示例28中,示例23至示例27中任一者的目标可视需要包括:该游戏控制器包括多个输入组件;其中该多个输入组件的输入组件的组合被分配给该第一虚拟控制器装置或分配给该第二虚拟控制器装置。

在示例29中,示例23至示例28中任一者的目标可视需要包括:该输入是使用对计算机的硬件接口从该游戏控制器接收的。

在示例30中,示例29的目标可视需要包括:该硬件接口包括通用串行总线和蓝牙中的至少一个。

在示例31中,示例23至示例30中任一者的目标可视需要包括:如果判定所接收的输入被分配给该第一虚拟控制器装置,则与该第一虚拟控制器装置相关的数据被输出到驱动器接口;其中如果判定所接收的输入被分配给该第二虚拟控制器装置,则与该第二虚拟控制器装置相关的数据被输出到驱动器接口。

在示例32中,示例23至示例31中任一者的目标可视需要包括:如果判定所接收的输入被分配给该第一虚拟控制器装置,则与该第一虚拟控制器装置相关的数据被输出到操作系统的内核;其中如果判定所接收的输入被分配给该第二虚拟控制器装置,则与该第二虚拟控制器装置相关的数据被输出到操作系统的内核。

在示例33中,示例23至示例32中任一者的目标可视需要包括:如果判定所接收的输入被分配给该第一虚拟控制器装置,则与该第一虚拟控制器装置相关的数据被输出到用户空间应用程序;其中如果判定所接收的输入被分配给该第二虚拟控制器装置,则与该第二虚拟控制器装置相关的数据被输出到用户空间应用程序。

尽管已参照具体实施例具体地显示并说明本发明,然而本领域技人员应理解,在不背离由随附权利要求书所界定的本发明的精神及范围的条件下,可对本发明作出形式及细节上的各种改变。本发明的范围因此由随附权利要求书表示,且因此旨在包括处于权利要求书的等效内容的意义及范围内的所有变化。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1