触觉空间化系统的制作方法_2

文档序号:8306805阅读:来源:国知局
。传感器可以 是任何设备,例如但不限于加速度计、心电图仪、脑电图仪、肌电图仪、眼电图仪、电颚仪、皮 肤电反应传感器、电容传感器、霍尔效应传感器、红外传感器、超声传感器、压カ传感器、光 纤传感器、屈曲传感器(或弯曲传感器)、力敏感电阻器、测压元件、LuSenseCPS2 155、微型 压カ换能器、压电传感器、应变计、湿度计、线性位置触摸传感器、线性电位计(或滑臂)、线 性可变差动变压器、罗盘、测斜仪、磁性标签(或者射频识别标签)、旋转编码器、旋转电位 计、陀螺仪、通断开关、温度传感器(例如温度计、热电偶、电阻温度检测器、热敏电阻或者 温度换能集成电路)、麦克风、光度计、测高仪、生物监视器、相机或者光敏电阻器。
[0063] 图2根据本发明的实施例示出了控制器100。在一个实施例中,控制器100与图 1的控制器30相同。另外,图3示出了控制器100的另ー视图。控制器100-般可用于可 连接到计算机、移动电话、电视机或其他类似设备的游戏系统。下文中结合图4来更详细地 进ー步描述图2和图3所示的控制器100的组件(即,壳体102、模拟或数字摇杆110、按钮 114、触发器118和轰鸣致动器122和124)。
[0064] 图4示出了用于游戏系统101中的控制器100的框图,游戏系统101还包括主机 计算机104和显示器106。如图4的框图中所示,控制器100包括本地处理器108,本地处 理器108经由连接105与主机计算机104通信。连接105可以是有线连接、无线连接或者 本领域技术人员已知的其他类型的连接。控制器100或者可以被配置为不包括本地处理器 108,这样来自控制器100的所有输入/输出信号都直接由主机计算机104来应对和处理。 主机计算机104可操作地耦合到显示屏幕106。在一实施例中,如本领域中已知的,主机计 算机104是游戏设备控制台,并且显示屏幕106是可操作地耦合到该游戏设备控制台的监 视器。在另ー实施例中,如本领域技术人员已知的,主机计算机104和显示屏幕106可被组 合成单个设备。
[0065] 控制器100的壳体102的形状被设置为容易适应由惯用左手的用户或惯用右手 的用户两只手握着设备。本领域技术人员将会认识到,控制器100只是与当前可用于视频 游戏控制台系统的许多"游戏手柄"具有类似的形状和大小的控制器的ー个示例实施例,例 如Microsoft?XboxOne?控制器或者PlayStation?DualShock?控制器,并且将会 认识到,可以使用具有用户输入元件的其他配置、形状和大小的控制器,包括但不限于诸如 Wii?遥控或WiitmU控制器、Sony?SixAxis?控制器或Sony?Wand控制器之类的控 制器,以及形状设置为真实世界物体(例如网球拍、高尔夫球杆、棒球棒等等)和其他形状 的控制器,或者具有显示器或头戴式显示器的控制器。
[0066] 控制器100包括若干个用户输入元件,其中包括模拟或数字摇杆110、按钮114和 触发器118。当在本文中使用时,用户输入元件指的是被用户操纵来与主机计算机104交互 的接ロ设备,例如触发器、按钮、模拟或数字摇杆等等。如从图2和图3中可见,以及如本领 域技术人员已知的,在控制器100上可包括多于ー个的每种用户输入元件,并且可包括额 外的用户输入元件。因此,例如,本文对于触发器118的描述不将控制器100限于单个触发 器。另外,图4的框图只示出了模拟或数字摇杆110、按钮114和触发器118的每ー者中的 一(1)个。然而,本领域技术人员将会理解,可以使用多个模拟或数字摇杆、按钮和触发器 以及其他用户输入元件,如上所迷。
[0067] 从图4的框图中可见,控制器100包括针对性致动器或马达以直接驱动其用户输 入元件中的每ー个,并且在用户的手部一般所在的位置包括可操作地耦合到壳体102的一 个或多个一般或轰鸣(rumble)致动器122、124。更具体而言,模拟或数字摇杆110包括与 其可操作地耦合的针对性致动器或马达112,按钮114包括与其可操作地耦合的针对性致 动器或马达116,并且触发器118包括与其可操作地耦合的针对性致动器或马达120。除了 多个针对性致动器以外,控制器100包括与其每个用户输入元件可操作地耦合的位置传感 器。更具体而言,模拟或数字摇杆110包括与其可操作地耦合的位置传感器111,按钮114包 括与其可操作地耦合的位置传感器115,并且触发器118包括与其可操作地耦合的位置传 感器119。本地处理器108可操作地耦合到模拟或数字摇杆110、按钮114和触发器118的 针对性致动器112、116、120以及位置传感器111、115、119。响应于从位置传感器111、115、 119接收的信号,本地处理器108指示针对性致动器112、116、120分别直接向模拟或数字摇 杆110、按钮114和触发器118提供定向(directed)的或针对性(targeted)的动觉效果。 这种针对性动觉效果与沿着控制器的整个主体的由一般致动器122、124产生的一般或轰 鸣触觉效果是可辨别或者可区分的。总体触觉效果向用户提供了在游戏中的更大沉浸感, 因为同时采用了多种形态,例如视频、音频和触觉。被配置为产生触觉的控制器的更多细节 在 2014年4月22日递交的标题为"GAMINGDEVICEHAVINGAHAPTIC-ENABLEDTRIGGER"、 序列号为14/258,644的申请中更详细描述,这里通过引用将该申请全部并入。
[0068] 图5根据本发明的实施例示出了系统的空间化触觉效果软件栈的框图。该触发触 觉效果软件栈实现在系统上,例如图1的系统10。在图示的实施例中,系统包括以下组件: 设备500、外围固件510和控制器520。设备500可以是任何类型的计算机设备,例如个人 计算机、平板电脑、智能电话或者控制台(例如,视频游戏控制台)。外围固件510是用于能 够可操作地连接到设备500的ー个或多个外围设备(例如控制器)的固件。控制器520是 可操作地连接到设备500的外设的ー个示例。控制器520可以是视频游戏控制器。在ー个 实施例中,控制器520可与图1的控制器30以及图2、图3和图4的控制器100相同。
[0069] 设备500包括游戏输入管理代码501。游戏输入管理代码501包括管理在设备 500内执行的游戏应用或其他类型的应用的情境中由控制器520提供的输入的一组计算机 可读指令。设备500还包括外围输入应用编程接ロ("API")502。外围输入API502包括 一组计算机可读函数或例程,这些函数或例程允许游戏输入管理代码501与外围固件510 交互以便接收和管理由控制器520提供的输入。设备500还包括轰鸣API503。轰鸣API 包括一组计算机可读函数或例程,这些函数或例程允许游戏输入管理代码501与外围固件 510交互以便发送轰鸣指令到控制器520的ー个或多个轰鸣马达或轰鸣致动器(例如,如图 5中所示的轰鸣马达L和R)。轰鸣指令可使得控制器520的轰鸣马达或者轰鸣致动器产生 一般或轰鸣触觉效果。
[0070] 设备500还包括触觉效果API504 (在图5中标识为"API")。触觉效果API504 包括一组计算机可读函数或例程,这些函数或例程被暴露于游戏输入管理代码501,并且允 许了游戏输入管理代码501与外围固件510交互以便向控制器520发送触觉指令,例如向 控制器520的一个或多个触发器(例如,如图5中所示的触发器L和R)发送触发指令。触 觉指令可使得控制器520的一个或多个针对性马达或针对性致动器在控制器520的ー个或 多个用户输入元件处产生触觉效果。触发指令是特定类型的触觉指令,其可使得控制器520 的一个或多个针对性马达或针对性致动器(例如,如图5中所示的马达L和R)在控制器 520的一个或多个触发器(例如,如图5中所示的触发器L和R)处产生触发触觉效果。触 发触觉效果是在控制器(例如控制器520)的触发器处体验到的特定类型的触觉效果。触 觉效果API504可存储ー个或多个触发触觉效果定义。触觉效果定义是ー种数据结构,该 数据结构包括预定义的并且可被存储在诸如触觉文件或触觉流之类的存储内的触觉数据, 例如触觉信号,并且可被发送到ー个或多个轰鸣马达、轰鸣致动器、针对性马达或针对性致 动器,以在控制器520的组件或用户输入元件处产生触觉效果。触觉数据可包括相应触觉 效果的ー个或多个属性,其中这些属性可被存储为參数。触觉效果定义的示例參数包括振 幅參数、频率參数、波形參数、包络參数、幅度(或强度)參数和持续时间參数。触发触觉效 果定义是特定类型的触觉效果定义,其可被发送到控制器520的一个或多个马达或致动器 (例如,如图5中所示的马达L和R)以在控制器520的一个或多个触发器(例如,如图5中 所示的触发器L和R)处产生触发触觉效果。
[0071] 根据该实施例,触觉效果API504可允许游戏输入管理代码501与直接重放/交 迭(crossover) 505、触发引擎506和空间化引擎507交互,并且还可根据由游戏输入管理代 码501调用的请求来管理直接重放/交迭505、触发引擎506和空间化引擎507。另外,触 觉效果API504可存储与外围固件510的通信所需要的以及ー个或多个触发触觉效果的生 成所需要的数据。在替换实施例中,触觉效果API504可駐留在外围固件510内而不是设 备500内。在下文中结合图15来更详细地进ー步描述触觉效果API504。
[0072] 设备500还包括直接重放/交迭505。直接重放/交迭505接收触觉数据作为输 入,产生触觉数据作为输出并且将触觉数据发送到控制器520的一个或多个针对性马达或 针对性致动器(例如,如图5中所示的马达L和R)。在某些实施例中,直接重放/交迭505 可将输入的触觉数据直接输出,而不修改输入的触觉数据的格式。这可导致对输入的触觉 数据的"按原样"重放。在其他实施例中,直接重放/交迭505可以把输入的触觉数据从第 一格式转换到第二格式,并且还可输出经转换的触觉数据。取决于重放的类型,直接重放/ 交迭505可以可选地使用可编程的交迭来转换触觉数据。通过转换触觉数据,设备500可 以"解构"触觉效果并且在多个致动器处忠实地重放触觉效果。在一个实施例中,触觉数据 的格式可以是触觉基本流(HapticElementaryStream,"HES")格式。HES格式是用于表 示可被流传输到设备的触觉数据的文件或数据格式。可以按与表示未压缩声音的方式相同 或相似的方式来表示触觉数据,虽然触觉数据可以在JES格式内被加密。从而,触觉数据可 被存储在触觉文件或触觉流中,其中触觉文件或触觉流的格式是!ES格式。換言之,HES格 式可被触觉文件或触觉流用来以触觉格式表示触觉数据。在替换实施例中,直接重放/交 迭505可驻留在外围固件510内而不是设备500内。下文中结合图7、图8、图9、图10、图 11、图12和图13来更详细地进ー步描述直接重放/交迭505。
[0073]设备500还包括触发引擎506。触发引擎506可接收触觉数据,例如触发触觉效果 定义,并且可基于从控制器520接收的数据,例如触发数据(例如,如图5中所示的触发数 据513),来修改触觉数据。触发数据是包括指示控制器520的一个或多个触发器(例如,如 图5中所示的触发器L和R)的位置和/或范围的一个或多个參数的数据。触发引擎506还 可向控制器520发送触觉指令。例如,触发引擎506可向控制器520的一个或多个触发器 (例如,如图5中所示的触发器L和R)发送触发指令。如前所述,触发指令可使得控制器 520的一个或多个针对性马达或针对性致动器(例如,如图5中所示的马达L和R)在控制 器520的一个或多个触发器(例如,如图5中所示的触发器L和R)处产生触发触觉效果。 从而,在一个实施例中,通过修改触发触觉效果定义的触觉数据,触发引擎506可基于触发 器的位置和/或范围使得特定的触发触觉效果在触发器处被体验到。在另ー实施例中,通 过修改触发触觉效果定义的触觉数据,触发引擎506可基于触发器的位置和/或范围来为 控制器520的一个或多个针对性马达或针对性致动器(例如,如图5中所示的马达L和R) 缩放触发触觉效果。触发引擎506还可存储ー个或多个触觉效果定义,例如触发触觉效果 定义。在替换实施例中,触发引擎506可駐留在外围固件510内而不是设备500内。
[0074]设备500还包括空间化引擎507(在图5中标识为"空间化引擎")。空间化引擎 507可接收触觉数据,例如触发触觉效果定义,并且可基于空间化数据来修改触觉数据。空 间化数据可包括指示触觉效果一一例如触发触觉效果一一的期望方向和/或流动的数据。 在某些实施例中,空间化引擎507可从游戏输入管理代码501接收包括方向和/或流动的 空间化数据。另外,空间化数据还可包括位于控制器520上的用户的ー只手或多只手的一 个或多个位置。在某些实施例中,空间化引擎507可从控制器520接收包括ー个或多个手 部位置的空间化数据。另外,在某些实施例中,空间化引擎507可接收由游戏输入管理代码 501传达的包括用户的角色在游戏应用内的位置的空间化数据。
[0075] 根据该实施例,空间化引擎507可修改触觉数据,以便对于控制器520的一个或多 个轰鸣马达或轰鸣致动器(例如,如图5中所示的轰鸣马达L和R)缩放触觉效果,例如触发 触觉效果,并且也对于控制器520的一个或多个针对性马达或针对性致动器(例如,如图5 中所示的马达L和R)缩放触觉效果。換言之,空间化引擎507可修改被发送到每个马达或 致动器的触觉数据,从而修改在每个马达或致动器处体验到的触觉效果,以便表达整体触 觉效果的方向和流动的感觉。例如,为了强调在马达或致动器处体验到的触觉效果,空间化 引擎507可缩放触觉效果的ー个或多个部分。例如,空间化引擎507可缩放被发送到马达 或致动器的使得触觉效果被体验到的触觉数据,从而使得触觉效果更为明显(例如,増大 的幅度、持续时间,等等)。此外,空间化引擎507可缩放被发送到其他马达或致动器的触觉 数据,使得在这些马达或致动器处体验到的其他触觉效果不那么明显(例如,减小的幅度、 持续时间,等等)。在某些实施例中,空间化引擎507可实时地修改触觉数据。另外,在某些 实施例中,空间化引擎507在输入与马达或致动器输出之间可具有非线性关系,以便夸大 整体触发触觉效果。在替换实施例中,空间化引擎507可駐留在外围固件510内而不是设 备500内。在下文中结合图14、图29和图30来更详细地进ー步描述空间化引擎507。
[0076]设备500还包括编码器508。编码器508把从直接重放/交迭505、触发引擎506 和/或空间化引擎507接收的触觉数据编码成某种格式。在一个实施例中,该格式可以是 !ES格式。编码器508还将经编码的触觉数据发送到外围固件510。
[0077]外围固件510包括解码器和交迭511。解码器和交迭511从编码器508接收经编 码的触觉数据并且对经编码的触觉数据解码。在某些实施例中,解码器和交迭511计算ー 种可编程的交迭以便对经编码的触觉数据解码。在这些实施例的ー些中,解码器和交迭511 实时地计算可编程的交迭。外围固件510还包括触发控件512。触发控件512是用于控制 器520的一个或多个针对性马达或针对性致动器(例如,如图5中所示的马达L和R)的低 级别控制API。触发控件512可从设备500接收触发指令,可将触发指令转换成用于控制 器520的指定的针对性马达或针对性致动器的低级别触发指令,并且可将低级别触发指令 发送到控制器520的指定的针对性马达或针对性致动器。低级别触发指令可使得指定的针 对性马达或针对性致动器在控制器520的特定触发器处产生触发触觉效果。
[0078] 外围固件510还包括触发数据513。触发数据513如前所述是包括ー个或多个參 数一一例如指示控制器520的一个或多个触发器(例如,如图5中所示的触发器L和R)的 位置和/或范围的一个或多个參数一一的数据。触发数据513可由外围固件510从控制器 520接收。外围固件510还可存储触发数据513,并且还可将触发数据513发送到设备500。 外围固件510还包括其他游戏手柄功能514,这些功能是控制器520的可
当前第2页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1