用于操纵虚拟环境的系统和方法与流程

文档序号:14650519发布日期:2018-06-08 21:42阅读:212来源:国知局
用于操纵虚拟环境的系统和方法与流程

本申请要求享有于2015年7月29日提交的美国临时申请第62/198,222号的权益,其通过引用以其整体并入。

本申请涉及于2014年9月26日提交的美国专利申请第14/499,001号,其通过引用以其整体并入。

技术领域

本申请总体上涉及触摸传感器领域,并且更具体地涉及用于操纵虚拟环境的新的和有用的系统和方法。

附图简述

图1是第一方法的流程图表示;

图2是第一方法的一个变型的流程图表示;

图3是第一方法的一个变型和第二方法的流程图表示;

图4是第一方法的一个变型和第二方法的一个变型的流程图表示;

图5是第二方法的一个变型的流程图表示;

图6是系统的流程图表示;

图7是系统的一个变型的流程图表示;

图8是系统的一个变型的流程图表示;

图9是系统的一个变型的流程图表示;以及

图10是系统的一个变型的示意表示。

具体实施方式

本发明的实施例的以下描述不旨在将本发明限制于这些实施例,而是旨在使本领域中的任何技术人员能够做出并且使用本发明。

1.第一方法

如图1所示,用于操纵虚拟环境的第一方法S100包括:在块S110中,在真实空间中检测触摸传感器表面;在块120中,基于触摸传感器表面在真实空间中的位置,将触摸传感器表面映射到虚拟环境中的虚拟表面;在块S130中,接收限定力在触摸传感器表面上的大小和位置的触摸图像;在块S140中,基于触摸传感器表面在真实空间中的取向,向力分配三维方向以构建矢量;以及在块S150中,根据虚拟环境内的矢量修改虚拟表面。

如图3所示,第一方法S100的一种变型包括:在块S110中,在第一时间处确定触摸传感器在真实空间内的第一位置,触摸传感器包括触摸传感器表面;在块S120中,基于在第一时间处触摸传感器在真实空间内的第一位置,将虚拟对象的虚拟表面界定在通过在触摸传感器表面的区域上的输入可操控的虚拟环境内;在块S140中,在第一时间处生成第一力矢量,该第一力矢量包括与在触摸传感器表面上的第一输入的力大小有关的大小和与触摸传感器在真实空间内的取向有关的方向;在块S142中,基于在触摸传感器表面上的第一输入的第一定位和触摸传感器在真实空间内的第一位置,在虚拟环境内定位第一力矢量的原点;以及在块S150中,根据第一力矢量操纵虚拟环境内的虚拟对象的虚拟表面。

1.1.应用

通常,第一方法S100可以由托管虚拟环境的计算机系统执行,以将物理空间内的用户输入链接到虚拟环境内的虚拟对象。特别地,计算机系统可以与包括触摸传感器表面的输入设备(例如手持设备)对接以接收触摸传感器上的用户输入的力大小和位置数据、跟踪输入设备在真实空间内的位置和取向、基于输入设备在真实空间中的位置和取向将真实触摸传感器映射到虚拟环境内的虚拟表面或虚拟对象、然后基于触摸传感器表面上的输入的力大小和定位以及输入设备在真实空间中的位置和取向来操纵虚拟表面或虚拟对象。

执行第一方法S100的计算机系统可以将触摸传感器表面上的输入的力大小、触摸传感器表面在真实空间中的取向以及触摸传感器表面上的输入的定位融合为:力矢量(即,力大小和方向);以及力矢量在虚拟环境内的原点。计算机系统然后可以将力矢量投影到虚拟环境中以限定虚拟环境内的虚拟对象和/或虚拟表面的位置、尺寸或几何形状等的变化的大小和方向,从而链接在物理(即真实)空间中的触摸传感器表面上的用户输入,以控制或操纵虚拟环境内的虚拟对象或虚拟表面。

在第一方法S100的一个示例中,响应于在触摸传感器表面上的特定静态定位上施加输入对象(例如,尖笔、手指),其中触摸传感器表面上的特定定位被映射到虚拟三维对象的虚拟表面上的区域,计算机系统可以以一定速率和/或对应于输入的力大小的角度且在对应于真实空间中的触摸传感器表面的取向的方向上将虚拟三维对象的这个区域向内移位,如图2所示。在该示例中,当输入对象从特定定位移动到触摸传感器表面上的第二定位时,计算机系统可以以与所施加的力的初始大小相对应(或相反)的方向转移在虚拟对象的表面上的这个区域,并且沿着与输入对象从初始接触定位到触摸传感器表面上的第二定位的轨迹相对应的轨迹在虚拟对象的表面上形成虚拟谷,由此使用户能够通过将触摸传感器移动到对应于虚拟表面的真实空间中的位置且然后调制(诸如利用手指或尖笔)施加到触摸传感器的力的大小和位置来移动、操纵并修改虚拟环境内的虚拟对象的虚拟表面。

计算机系统可以实施第一方法S100(以及下面描述的第二方法S200)的块,以根据各种输入模式在虚拟环境内将施加到触摸传感器表面的力映射到虚拟对象或虚拟对象的表面,诸如推动或拉动(即,平移)虚拟对象、旋转虚拟对象、弯曲或扭曲虚拟对象、使虚拟表面变形、使虚拟表面平滑化或纹理化等等。本文描述的第一方法S100(以及下面描述的第二方法S200)通常根据施加到输入设备的触摸传感器表面的力向内变形或“推动”虚拟对象或虚拟表面;然而,计算机系统也可以根据施加到触摸传感器表面的力来拉动、扭曲、旋转、平滑化、粗糙化(例如,“纹理化”)、或以其他方式操纵或修改虚拟对象或虚拟表面。此外,计算机系统可以在操作期间选择性地应用这些模式,诸如:根据在输入设备上的按钮或开关的选择模式化地、或者根据施加到触摸传感器表面的手势手势化地、由用户施加到触摸传感器表面的手指的数量、或者由用户施加到触摸传感器表面的手或手指的一部分,如下面所述。

本文将第一方法S100描述为用于操纵诸如虚拟现实环境的虚拟环境的方法。然而,第一方法S100可以类似地被实施以诸如在手术环境内操纵增强现实环境。

1.2.输入设备

第一方法S100的块S130记述了接收限定触摸传感器表面上的力的大小和位置的触摸图像。通常,在块S130中,如下所述,计算机系统与包括触摸传感器和触摸传感器表面的输入设备对接(或包含、与其结合),以接收触摸传感器表面上的诸如以触摸图像形式的输入的位置和力大小。

输入设备在本文中被描述为包括至少一个压敏触摸传感器并且输出(真实)触摸传感器表面上一个或更多个接触区域(“输入”)的定位((X,Y)位置)和力大小的输入设备。在一个示例中,输入设备包括含有不透明直线主体和在不透明主体的一侧上的平面触摸传感器表面的平板。在类似的示例中,输入设备可以包括限定两个相对侧面的不透明直线主体和跨越两个侧面中的每一个侧面的平面触摸传感器表面。可选地,输入设备可以包括具有集成在主体的一个或更多个平面或非平面表面上的触摸传感器表面的球形、立方体、砖形或皂条形(例如,具有成角度的直线)的主体。

通常,输入设备可结合一个或更多个压敏触摸传感器,其诸如在美国专利申请第14/499,001号中所描述的包括感测电极(例如,感测像素或感测元件)的阵列,且可以每个扫描周期按触摸传感器表面上的每个接触区域(即,由诸如手指、尖笔或画笔的真实对象接触的触摸传感器表面的面积)输出单个力大小值。例如,输入设备可以以100Hz的速率扫描压敏触摸传感器,并且对于每个扫描周期对于在触摸传感器表面上的每个离散接触区域记录在触摸传感器表面上检测到的接触区域内的峰值力、跨越接触区域的平均力、和/或在接触区域的有效中心或质心处的力。然后,在块S130中,在将另外一个容器上传到计算机系统之前,触摸传感器可以在每个扫描周期将这些输入定位、输入区域和输入力大小封装到一个矩阵或另外一个容器中。

可选地,输入设备可以记录压敏触摸传感器内的每个感测元件定位处的力值,并在每个扫描周期将这些力值封装成一个触摸图像。例如,输入设备可以包括:布置在电阻层下方的离散感测元件(例如,感测和驱动电极对)的栅格阵列,该电阻层响应于施加到电阻层上方的触摸传感器表面的力的局部变化而呈现与感测元件的接触电阻的局部变化;以及控制器,其被配置为在扫描周期期间从每个传感器读取电阻值,将每个电阻值转换成力大小值,并且将触摸图像填充在这些力值内。控制器还可以在相邻的感测元件定位之间对力大小进行插值,以实现包含在触摸传感器表面上以一毫米的分辨率表示感测元件定位的力大小值的触摸图像。因此,输入设备可以检测并记录触摸传感器上的输入的大小(通过感测元件的阵列可感测的力大小范围),当输入在触摸传感器表面上方移动时检测输入的定位,并且同时检测在触摸传感器表面上的多个输入。

因此,除了触摸传感器表面上的输入的力大小之外,输入设备还可以输出在触摸传感器表面上与真实对象接触的一个或更多个定位(例如,X和Y坐标)。例如,输入设备可以输出在基线力值以上的在触摸传感器表面上的单个力值的(X,Y)位置或触摸传感器表面上的每个力值的(X,Y)位置。在该示例中,输入设备可以诸如基于在触摸传感器表面上的力值的模式随时间重新设定对于压敏触摸传感器的基线力值,以补偿表面上方的物理覆盖物的替换、补偿气压的变化和/或补偿压敏触摸传感器上的传感器漂移。输入设备因此可以生成并输出包含足够信息来重建与触摸传感器表面接触的对象的位置、形状、接触轮廓、定位和所施加的力的触摸图像。

在块S130中,对于每个扫描周期,输入设备可以生成表示在压敏触摸传感器内的每个离散(和内插的)传感器定位处测量的力值(相对基线力值的差值力值)的触摸图像(例如,以矩阵的形式),如图1所示,并且输入设备可以通过有线或无线通信协议实质上实时地将对于每个扫描周期的触摸图像推送(即,发送)到执行第一方法S100的计算机系统。可选地,计算机系统可以定期地向输入设备广播对于触摸传感器表面上的每个离散输入区域的横向位置、纵向位置和力大小的查询,诸如以一个或更多个当前触摸图像的形式以60Hz(或60Hz、或在90Hz与120Hz之间)的速率进行。计算机系统然后可以距输入设备远程地处理每个触摸图像,包括识别离散输入区域、计算每个离散输入区域的峰值力、计算每个离散输入区域的总力、标记或表征与触摸传感器表面接触的并对应于每个离散输入区域的物理对象的类型等,如下所述。可选地,输入设备可以在将触摸图像和/或从触摸图像提取的数据(例如,离散输入区域的类型、力大小和定位)上传到计算机系统之前,在本地处理触摸图像。

1.3真实位置和取向

第一方法S100的块S110在第一时间处记述了确定触摸传感器在真实空间内的第一位置,触摸传感器包括触摸传感器表面。通常,在块S110中,计算机系统用来记录输入设备的真实位置和取向。

在一个实施方式中,计算机系统以六个自由度跟踪和记录输入设备的位置和取向,诸如包括:横向(例如,X轴)位置;垂直(例如,Z轴)位置;深度(例如,Y轴)位置;俯仰取向(例如,围绕Y轴的角度位置);偏航取向(例如,围绕Z轴的角度位置);以及输入设备的参考点相对于真实空间内的静态坐标系(或静态参考点)的横滚取向(例如,围绕Z轴的角度位置)。例如,计算机系统可以跟踪输入设备的中心的位置和取向、输入设备的参考角、或输入设备上相对于位置跟踪基站、虚拟现实(VR)头戴式设备、增强现实(AR)头戴式设备或其他计算机外壳或传感器的其他参考点。

在一个实施方式中,计算机系统与三维位置传感器(诸如,LIDAR传感器或占据与输入设备的公共空间的结构光三维传感器)对接以扫描输入设备的真实空间;通过在操作期间规律地采样三维位置传感器,计算机系统可以随着时间跟踪输入设备的位置和取向。例如,输入设备可以包含两个或更多个快速响应代码、红外或光电发射器,和/或布置在输入设备的表面上的其它有源或无源基准点。布置在真实空间内的相机或光学传感器利用在视场内的输入设备捕捉并输出图像帧给计算机系统。在该示例中,计算机系统实施计算机视觉技术以识别每个图像帧中的基准点,将基准点的相对位置与输入设备的取向以及输入设备距相机的距离相关联,并且基于图像帧内的基准点的位置确定在真实空间内输入设备相对于相机的横向和垂直位置。在另一示例中,输入设备结合并选择性地驱动三个垂直磁性线圈,并且(布置在真实空间内的)基站包括三个垂直磁场传感器,该基站采样以跟踪从输入设备输出的磁场的强度和取向;基站然后根据这些磁场的强度和取向来计算输入设备在采样周期期间相对于基站的位置和取向。然而,计算机系统可以与输入设备和/或另一个外围设备协作以在每个采样(或扫描)周期中计算输入设备的位置和取向。

可选地,输入设备可以跟踪在真实空间内的其自己的位置(诸如以60Hz的刷新率),并且对于每个采样周期基本上实时地向计算机系统上传表示其位置和取向的值。可选地,输入设备对集成的惯性传感器(例如,三轴加速度计、三轴陀螺仪、罗盘)进行采样,实施航位推测技术以基于惯性传感器的输出在每个采样周期处估计输入设备的位置,并将位置和取向值无线广播到计算机系统。在另一个示例中,输入设备包括一组光学检测器,其检测从布置在真实空间内的一个或更多个基站发射的入射光,并且在输入设备内的处理器在采样周期期间将入射在传感器上的光的位置和强度与输入设备在真实空间内相对于基站的位置和取向相关联;在该示例中,输入设备然后将对于采样周期计算出的输入设备的位置和取向广播到计算机系统。对于在输入设备处的采样(或扫描)周期,输入设备还可对集成到输入设备中的惯性传感器的输出进行记录和打时间戳,并且输入设备(或计算机系统)可以对于采样周期将这些输出转换为输入设备(诸如,相对于如根据惯性传感器的输出确定的重力和罗盘北)的真实取向(例如,俯仰、偏航、横滚)。

然而,在输入设备和计算机系统的操作期间,计算机系统可以与输入设备和/或任何其他集成的或外部的设备或传感器对接,以在连续的采样周期内跟踪输入设备在真实空间中的位置和取向。

在图1所示的一个实施方式中,输入设备在块S130中将触摸图像推送到计算机系统之前用对应于特定扫描周期的时间戳来增强包含对于在该特定扫描周期期间(如上所述)收集的触摸传感器表面的输入定位和力大小数据的触摸图像,如下所示。在操作期间,计算机系统:将在特定(例如当前)采样周期处跟踪输入设备上的参考点的数据的真实位置和取向转换为触摸传感器表面的真实位置和取向;对于采样周期根据触摸传感器表面的真实位置和取向,在步骤S120中,将触摸传感器表面实时地映射到虚拟环境中的虚拟表面;基于相似的时间戳,将从输入设备接收的触摸图像与当前采样周期进行匹配;在块S140和S142中,对于特定采样周期将触摸传感器表面的真实取向和在相似时刻处记录的触摸图像结合成力矢量和力矢量的锚点;然后在块S150中,根据力矢量和力矢量的锚点来基本上实时地(例如,基本上紧接在第一和第二时间戳中记录的时刻之后)操纵与真实表面的位置和取向相对应的虚拟表面的一部分。

1.4真实表面到虚拟表面

第一方法S100的块S120记述了,基于第一时间处在真实空间内的触摸传感器的第一位置,将虚拟对象的虚拟表面界定在通过跨越触摸传感器表面的区域的输入可操控(例如,可控制、可操纵)的虚拟环境内。(块S120可以类似地记述了,基于真实空间中的触摸传感器表面的位置,将触摸传感器表面映射到虚拟环境中的虚拟表面。)通常,在块S120中,计算机系统用于将真实表面(即,真实空间中的触摸传感器表面)投影到虚拟环境内的虚拟对象的虚拟表面上,以限定用户可通过移动真实空间中的输入设备、通过移动手指、尖笔或在触摸传感器表面上的其他对象和/或通过调节施加到触摸传感器表面的力而虚拟抓握、虚拟移位、虚拟旋转、虚拟缩放或以其他方式虚拟操纵的虚拟对象的区域。

在一个实施方式中,计算机系统基于触摸传感器表面在真实空间内的横向位置、垂直位置和深度位置将输入设备上(例如,在触摸传感器表面上)的参考点映射到虚拟环境内的虚拟表面上(或者在虚拟对象内)的虚拟点。基于真实空间内的触摸传感器表面的取向,计算机系统然后界定由虚拟点锚定的并且对应于触摸传感器表面的大小和几何形状的虚拟表面的区域(或虚拟对象的虚拟切片)。计算机系统因此可以在虚拟模型内限定一般有界的虚拟表面,其可以由用户通过触摸传感器表面上的触摸输入来操纵。在块S142中,计算机系统还可以基于施加到触摸传感器表面的输入的位置将力矢量的原点定位到虚拟表面的有界区域内的特定位置。具体而言,在块S142中,计算机系统可以基于真实空间中的触摸传感器表面的位置来限定通过输入设备的触摸传感器表面上的输入可控制的虚拟对象的全局(或“宏”)区域,以及然后基于触摸传感器表面上的输入的位置(诸如,输入的区域的质心或在输入的区域内测量的峰值力的定位)限定在虚拟环境内的力矢量的原点的特定定位。例如,计算机系统可以将力矢量的原点映射到表示虚拟环境的3D网格中的顶点、三角形或点。在另一个示例中,计算机系统可以将力矢量的原点映射到被映射到表示虚拟环境的3D网格的纹理内的特定像素。

在一个实施方式中,计算机系统在虚拟环境内定位表示触摸传感器表面的虚拟参考边界,并且将来自虚拟参考边界的射线投影到虚拟表面上,如图1所示,以便将触摸传感器表面映射到虚拟表面。例如,触摸传感器表面可以限定大致平面的直线区域(例如,120毫米乘以200毫米的平面区域),并且计算机系统可以基于触摸传感器表面在真实空间中的位置和取向在虚拟环境内定位矩形的、3:5纵横比的虚拟参考边界(表示触摸传感器表面),将来自虚拟参考边界的角的(并且垂直于虚拟参考边界的平面)的射线投影到虚拟环境内的最近的虚拟表面上,以限定虚拟表面上的选择点,并连接虚拟表面上的相邻点以限定虚拟表面的可操纵区域。因此,在块S120中,计算机系统可以:根据触摸传感器在真实空间内的位置和取向将与触摸传感器表面的矩形平面区域对应的矩形参考边界投影到三维虚拟对象的虚拟表面上;并且可以通过对输入设备的操纵并根据触摸传感器上的输入来实现对由矩形参考边界在虚拟对象上的投影所界定的虚拟表面的区域的控制,由此将触摸传感器表面映射到虚拟表面。

在类似的实施方式中,计算机系统:基于真实空间中的触摸传感器表面的位置和取向来在虚拟环境内定位表示触摸传感器表面的虚拟参考平面;在虚拟环境内从虚拟表面垂直向外且朝向虚拟参考平面投影射线;并根据从虚拟表面发出并与虚拟参考平面上的对应点相交的射线的原点,将触摸传感器表面上的真实点映射到虚拟表面上的虚拟点。因此,计算机系统可以将虚拟表面的区域投影到虚拟环境内的虚拟参考边界上(表示触摸传感器表面),以将虚拟表面映射到触摸传感器表面。

在前述实施方式中,计算机系统可以为虚拟参考边界设置静态虚拟维度。可选地,计算机系统可基于输入设备在真实空间中的位置(诸如基于输入设备上的参考点和被分配给真实空间的参考原点或参考平面之间的距离)来缩放虚拟参考边界的虚拟尺寸(例如,具有长宽比静态)。例如,当用户(相对于分配给真实空间的参考平面)向前移动输入设备以放大虚拟模型时,计算机系统可以缩小在虚拟环境中表示触摸传感器表面的虚拟参考边界的虚拟尺寸,从而减小映射到触摸传感器表面的虚拟表面的有界区域的大小,并且能够通过触摸传感器表面实现对虚拟环境内的虚拟表面的(或接触或作用于虚拟表面的虚拟工具的)更精细的位置控制。类似地,在该示例中,当用户向后移动输入设备以对虚拟模型缩小时,计算机系统可以增加虚拟环境中表示触摸传感器表面的虚拟参考边界的比例,从而增加映射到触摸传感器表面的虚拟表面的有界区域的大小,并且能够通过触摸传感器表面实现对虚拟表面的或虚拟对象的更全局的操纵。因此,在块S120中,计算机系统可以:响应于触摸传感器在相对于真实空间内的用户的第一方向上的移动,增加(矩形)参考边界的比例;并且响应于触摸传感器在真实空间内与第一方向相反的第二方向上的移动来减小矩形参考边界的比例。

当在块S140中生成对于采样周期的力矢量时,计算机系统可以附加地或可选地根据触摸传感器表面在真实空间内的位置来缩放记录在触摸图像中的力的大小。例如,考虑到在一系列的采样周期内在触摸传感器表面上的输入区域上施加基本恒定的力,计算机系统可以在用户在同一时间周期内向前推动输入设备时增加在该一系列的采样周期内生成的力矢量的力大小;并且计算机系统可以在用户在同一时间周期内拉回输入设备时减小在该一系列的采样周期内生存的连续的力矢量的力大小。

计算机系统可以在整个操作期间(诸如在输入设备的每一次采样周期)定期地执行上述方法和技术,以重新计算虚拟环境中的虚拟对象上的虚拟表面,该虚拟表面被映射到触摸传感器表面且响应于输入设备在真实空间内的移动(且因此相对于虚拟环境)经由触摸传感器表面上的输入进行操纵。可选地,计算机系统可以将(物理)输入对象静态锁定到虚拟对象,根据输入设备在真实空间中的移动在虚拟环境内移动虚拟对象,并且保持随着时间被影射到触摸传感器表面的虚拟对象的虚拟表面。例如,对于表示虚拟工具的虚拟对象,诸如一对虚拟钳子,计算机系统可以根据输入设备在真实空间中的移动来在虚拟环境内移动虚拟钳子,将触摸传感器表面(或触摸传感器表面的一部分)映射到虚拟钳子的手柄,根据触摸传感器表面上的两个输入的接近度来打开和闭合虚拟钳子,并且根据触摸传感器表面上的两个输入的力大小来闭合钳子。

在如下所述的包括曲线(例如,半圆柱形或半球形)触摸传感器表面的输入设备的变型中,计算机系统可以实现类似的方法和技术来将对应于曲线触摸传感器表面的几何形状的曲线参考边界映射(且缩放)到虚拟环境内的虚拟对象的平面或曲线虚拟表面。例如,对于限定圆柱形触摸传感器表面的输入设备,计算机系统可以将圆柱形触摸传感器表面虚拟地“展开”为平面参考边界,并将该平面参考边界映射到虚拟环境中的虚拟对象的虚拟表面,如上所述。在另一个示例中,对于限定圆柱形触摸传感器表面的输入设备,系统可以将圆柱形参考边界与虚拟环境中的三维虚拟对象的(接近圆柱体的几何形状)的轴线对齐,以及然后将圆柱型虚拟参考边界投影到虚拟对象的相邻区域上以限定虚拟环境中的经由真实空间中的触摸传感器表面可操纵的虚拟对象的区域。

1.5视觉反馈

在一个实施方式中,计算机系统渲染表示触摸传感器表面在虚拟环境内的大小、形状、位置和/或取向的虚拟标记。例如,计算机系统可以渲染对应于虚拟环境内的触摸传感器表面的周界的虚拟实线或虚线的白色框,诸如在虚拟环境内浮动或投影到映射到触摸传感器表面的虚拟对象的虚拟表面的区域上。在这个示例中,计算机系统可以基于真实空间中的触摸传感器表面的真实位置和取向,针对每个连续的采样周期在虚拟环境内更新虚拟框的位置。计算机系统还可以当用户在真实空间内向前和向后(或以任何其他方向)移动输入设备时在虚拟环境内缩放虚拟框。

类似地,计算机系统可以在虚拟环境中渲染表示真实空间中的输入设备的虚拟工具(例如,虚拟钳子、虚拟枪)或虚拟手。计算机系统还可以根据输入设备在真实空间中的移动来在虚拟环境中移动(例如,平移、旋转)虚拟工具或虚拟手。此外,计算机系统可以基于触摸传感器表面上的输入的位置和力大小来修改或操纵虚拟工具或虚拟手的表面或体积。例如,计算机系统可以:将虚拟枪的虚拟触发器移动与在触摸传感器表面上对应于虚拟触发器的定位处的输入的力大小对应的距离;将一对虚拟钳子闭合虚拟距离并利用分别对应于触摸传感器表面上的两个输入的位置和力大小的虚拟夹紧力,如上所述;或根据触摸传感器表面上的输入的位置来以移动内收或外展的虚拟手的虚拟手指,并且根据在触摸传感器表面上的这些输入的力大小来移动这些弯曲和伸展的虚拟手指,如下所述。

1.6力矢量

第一方法S100的块S140记述了在第一时间处生成第一力矢量,该第一力矢量包括与第一输入在触摸传感器表面上的力大小有关的大小和与触摸传感器在真实空间内的取向有关的方向。(块S140可以类似地记述了基于触摸传感器表面在真实空间中的取向而为力大小分配三维方向以构建力矢量。)第一方法S100还可以包括块S142,其记述了基于触摸传感器表面上的第一输入的第一定位和触摸传感器在真实空间内的第一位置在虚拟环境内定位第一力矢量的原点。通常,在块S140和S142中,计算机系统将施加到触摸传感器表面的力的大小与实际空间内(在采样或扫描周期内)的触摸传感器表面的取向和所施加的力在触摸传感器表面上的定位结合,以生成表示在虚拟环境内将施加到虚拟表面(或通常到虚拟对象)的虚拟力的大小、方向和原点的虚拟力矢量,以在块S150中操纵虚拟对象。

如上所述,输入设备可以在对应的扫描周期期间输出表示由触摸传感器中的每个感测元件检测到的施加的力的大小(以及在触摸传感器中的感测元件之间的内插力大小)的触摸图像,如图所示1;并且计算机系统可以在输入设备和计算机系统的操作期间的相同或相似的时间处确定输入设备的真实位置和取向(诸如,相对于原点或相对于分配给由输入设备占据的真实空间的坐标系)。为了针对扫描周期生成力矢量,计算机系统可以:识别触摸图像中表示的离散输入区域(例如,由触摸图像中的基线力值界定的提高的施加力值的毗连区域);存储离散输入区域的质心的(X,Y)定位或离散输入区域中的峰值力大小的点的(X,Y)定位作为触摸传感器表面上的对应输入的定位;诸如相对于分配给真实空间的坐标系的原点,计算与触摸传感器表面垂直并面向触摸传感器表面的真实力矢量的方向;记录离散输入区域的真实力大小,诸如离散输入区域内的峰值力大小、总力大小或平均力大小。计算机系统然后可以:将真实方向与在触摸图像中表示的施加的力的真实大小配对以生成“真实力矢量”;并且在块S140中通过应用对真实力矢量的变换(其将分配给真实空间的坐标系映射到虚拟环境中的坐标系),将真实力矢量转换为“虚拟”力矢量。

在块S142中,计算机系统还可以通过将触摸传感器表面上的离散输入区域的(X,Y)位置映射到虚拟表面上的点而在虚拟环境内锚定虚拟力矢量的原点。例如,计算机系统可以将在虚拟环境内的来自虚拟参考边界(其表示触摸传感器表面的周界,如上所述,并且对应于触摸传感器表面上的力的位置)上的点的法向射线投影到虚拟表面上,并将虚拟力矢量锚定在与法向阵列相交的虚拟表面上的点处。可选地,计算机系统可以通过以下操作将虚拟力矢量的原点锚定在虚拟环境内:基于触摸传感器表面上的输入的(X,Y)定位和真实空间中的输入设备的位置和取向来确定离散输入区域在真实空间中的真实位置;然后将上述变换应用于离散输入区域的真实位置以定位虚拟力矢量在虚拟环境中的原点。

计算机系统可以针对触摸传感器表面上(对应于在基线力之上的总的或峰值力大小)的、通过触摸传感器检测到的并且在输入设备和计算机系统的操作期间对于每个连续扫描周期被记录在触摸图像中的每个输入实施前述方法和技术。如图1所示,计算机系统由此可以对于在由输入设备输出的每个触摸图像中表示的触摸传感器表面上的每个离散输入生成一个力矢量。

1.7运动矢量

计算机系统还可以生成表示输入设备在两个(或更多个)连续采样周期之间的位置和/或取向的变化的运动矢量。然后,计算机系统可以根据这个运动矢量来全局地移动虚拟对象,并且基于一个或更多个输入在触摸传感器表面上的位置和力大小来(例如,在映射到触摸传感器表面的虚拟表面处)局部地移动、修改、变形或以其他方式操纵虚拟对象移动。

在其中虚拟对象包括虚拟棒球的一个示例中,计算机系统可以基于施加到触摸传感器表面的一个或更多个输入的力大小的大小来在链接到输入设备的虚拟手中虚拟地握住棒球,并且计算机系统可以根据输入设备在真实空间中的位置的变化来在虚拟环境内平移和旋转虚拟棒球。当用户在真实空间中快速向前(例如,在他的右肩上且向前)移动输入设备并且释放触摸传感器表面上的一个或更多个输入(例如,集成到具有腕带的圆柱形或球形输入设备中,其保持输入设备靠近用户的手掌,如下所述)时,计算机系统可以生成对于对应于在真实空间中的输入设备的真实轨迹的虚拟棒球的运动矢量,并且在释放触摸传感器表面上的输入时根据运动矢量虚拟地“释放”虚拟环境中的虚拟棒球。此外,在该示例中,计算机系统可以:将触摸传感器表面映射到虚拟棒球的虚拟表面;跟踪触摸传感器表面上的输入的定位和力大小以计算和定位对于触摸传感器表面上的每个输入的力矢量;并且基于与触摸传感器表面上的最后输入相对应的特定力矢量的大小、特定力矢量相对于虚拟棒球的虚拟质心的定位、以及当所有其他输入从触摸传感器表面撤回以释放到虚拟环境中的虚拟棒球时特定力矢量与虚拟棒球的虚拟表面的角度,释放具有虚拟自旋的虚拟棒球。

1.8校准

第一种方法S100的一种变型还包括:在第一时间之前的初始时间处,向用户提供提示以向触摸传感器表面施加主观定性值的力;响应于该提示而记录施加到触摸传感器表面的初始力的大小;以及基于初始力的大小来缩放第一力矢量的大小。通常,在该变型中,计算机系统可以与输入设备对接以校准比例因子,用于将触摸传感器表面上的输入的力大小转换成给用户的虚拟力矢量的大小(例如,针对用户的尺寸或强度)。

在一个示例中,计算机系统可以在启动时向用户发出提示(例如,当通过虚拟现实头戴设备进入或即将进入虚拟环境时),以“轻轻地”连续按压、以“适度的力”按压,和/或用手指(或用尖笔或其它对象)“稳定地”按压到触摸传感器表面上,并且然后当用户在触摸传感器表面上输入一个或更多个这样的输入时从输入设备收集触摸图像。基于每个输入的峰值或总的力大小,计算机系统可以:调整力大小阈值,触摸传感器上的输入必须超过(或超过)该力大小阈值以触发虚拟环境内的动作;和/或重新计算用于将触摸传感器表面上的输入的力大小变换成虚拟力矢量的大小的比例因子。在类似的示例中,计算机系统可以提示用户(诸如,通过由用户佩戴的虚拟现实或增强现实头戴式设备中的平视显示器)以“1”到“10”的比例输入大小为“5”的力,并且然后根据从输入设备接收的在后续触摸图像中表示的触摸传感器表面上的输入区域处的峰值或总的力,调整用于将触摸传感器表面上的输入变换成力矢量的比例因子。

因此,计算机系统可以在操作期间执行校准例程,以便使不同尺寸和强度的用户能够(随着时间与相同的输入设备和计算机系统对接)在触摸传感器表面上施加个性化范围的力以将类似的控制命令输入虚拟环境。然而,计算机系统可以实现任何其他方法或技术来校准用于与输入设备对接的用户的力大小比例因子。

此外,输入设备上的触摸传感器表面可以在没有离散输入位置的情况下限定连续表面,并且计算机系统可以将输入控件映射到从输入设备接收到的触摸图像中表示的离散输入区域,从而使得具有不同手尺寸的用户(例如,五岁的儿童和成年男性),以通过一种尺寸和配置的输入设备和触摸传感器表面以类似的方式在类似的虚拟环境中操纵类似的虚拟对象。例如,当选择输入设备时,用户可以将她的手指放置在触摸传感器表面上她感觉舒适的位置上,输入设备可以输出表示用户的手指在触摸传感器表面上的位置的触摸图像,并且计算机系统可以诸如通过将控制功能映射到在触摸图像中表示的用户的手指的位置(而不是要求用户将她的手指放置在输入设备的预定义输入区域上)将用于虚拟环境的控制功能校准到在触摸图像中表示的这些离散输入区域。

1.9修改虚拟表面

第一种方法S100的块S150记述了根据虚拟环境内的矢量修改虚拟表面。通常,在块S150中,计算机系统根据在块S140中生成的虚拟力矢量的力大小和方向来操纵虚拟环境内的虚拟表面(或虚拟对象)。

在一个实施方式中且如图1所示,计算机系统根据虚拟力矢量和限定虚拟表面和/或虚拟对象的机械蠕变、弹性形变、塑性变形和/或惯性动力学等的物理模型在虚拟模型内移动和/或变形虚拟表面(或虚拟对象)。特别地,计算机系统可以实现物理模型以:计算映射到触摸传感器表面的虚拟表面的变形;计算虚拟对象的位置和取向的变化;并且计算由在一个扫描周期内施加到虚拟表面的虚拟力(在虚拟力矢量中限定的大小、方向和位置(例如,原点))导致的对虚拟对象的惯性效应。计算机系统可以在下面描述的块S160中相应地更新在虚拟环境内渲染的虚拟表面(或虚拟对象),诸如通过生成表示给定用户的当前观看位置的虚拟环境的新的二维或三维数字帧然后将新帧上传到数字显示器、VR头戴设备或AR头戴设备以基本上实时呈现给用户。

对于其中输入设备生成并向计算机系统上传表示一个或更多个输入力的触摸图像的连续扫描周期,计算机系统还可平滑在连续扫描周期之间的虚拟对象操纵和/或通过在一系列的连续扫描周期内将触摸传感器表面上的力的位置和大小进行平均而去除输入设备和计算机系统上的信号噪声。例如,计算机系统可以在与触摸图像处于最后五个扫描周期相对应的五个触摸图像中跟踪触摸传感器表面上的一个输入,并且利用给出最大权重的当前扫描周期对最后五个触摸图像上的这一个输入的位置和力大小进行平均,以计算对于当前扫描周期的力矢量。计算机系统还可以在相似的一系列的采样周期上对输入设备的位置和取向进行平均,诸如直到当前采样周期的最后五个采样周期,其中当前采样周期给出最大权重以对于当前采样周期计算运动向量,如上所述。

在其中输入设备包括如图1和图6所示的单个、基本平坦的(例如,平面的)压敏触摸传感器和一个触摸传感器表面的一个示例实施方式中,在块150中,计算机系统根据依据触摸传感器表面上的输入的位置和力大小生成的力矢量以及触摸传感器在真实空间中的位置和取向,将施加到触摸传感器表面上的力转换成虚拟环境中的虚拟对象的虚拟表面(对应于真实空间中的触摸传感器表面)的局部向内变形。在该示例实施方式中,计算机系统可以使与虚拟力矢量相交的虚拟表面的局部区域变形;变形的局部区域的周边可以限定与触摸传感器表面上的输入的接触区域的尺寸和几何形状有关的尺寸和几何形状;局部区域内的变形可以对应于触摸传感器表面上的对应输入上的力分布;以及虚拟表面的局部区域的最大变形的定位和大小也对应于对应的输入区域内的峰值力的定位和大小。计算机系统还可以当用户继续在一系列的连续扫描周期上向触摸传感器表面施加力时而“拉伸”变形区域周围的表面的外围区域,诸如基于在分配给虚拟对象的物理模型中限定的弹性模量。在该示例性实施方式中,为了将虚拟表面的变形区域拉回到其先前的轮廓,用户可以将输入设备围绕其X轴或Y轴翻转180°(即,将输入设备转向以面向输入设备的后侧)并且在触摸传感器表面上在类似的定位处并以类似力大小施加输入;计算机系统因此可以检测到输入设备的这个新位置,在对应于虚拟表面的变形区域的定位处识别触摸传感器表面上的输入,并且根据触摸传感器表面上的输入的力大小和位置以及真实空间中的触摸传感器表面的位置和取向而使虚拟表面的局部区域向外变形。

在其中输入设备包括在输入设备的一侧上的第一触摸传感器表面和在输入设备的相对侧上的第二触摸传感器表面的类似的示例实施方式中,计算机系统可以当向第一触摸传感器表面施加力时使虚拟表面的区域向内变形(或“推动”),并且可以当向第二触摸传感器表面上的相对定位施加力时使虚拟表面的区域向外变形(或“拉动”)。

在一个示例应用中,计算机系统与输入设备(包括在输入设备的一侧上的第一触摸传感器以及在输入设备的与第一触摸传感器相对的第二侧上的第二触摸传感器)对接,以控制虚拟粘土转轮制坯(clay wheel-throwing)环境。在这个示例应用中,计算机系统:生成包括陶轮、虚拟粘土块和虚拟手的虚拟环境的数字(二维或三维)帧;并且将在触摸传感器表面上的输入对象的接触区域上的力分布转换成操作在虚拟陶轮上旋转的虚拟粘土块的虚拟手指(或手指、手掌、手)。例如,当用户在第一触摸传感器上按下拇指时,计算机系统可以根据拇指输入的位置和力大小以及第一触摸传感器在真实空间中的位置和取向,更新虚拟环境的帧以示出将虚拟粘土块向内推向虚拟陶轮的中心的虚拟拇指(或第一虚拟形成工具)。类似地,当用户在输入设备的相对侧上的第二触摸传感器上按下食指时,计算机系统可以更新虚拟环境的帧以示出虚拟食指(或第二虚拟形成工具),其接触虚拟粘土块、在虚拟陶轮上旋转的虚拟粘土块上形成虚拟内壁、并将虚拟粘土壁从虚拟陶轮的中心向外拉。在该示例中,当用户在第一触摸传感器上按下拇指且在第二触摸传感器上按下食指时(即,当用户在第一触摸传感器和第二触摸传感器之间捏合输入设备时),计算机系统可以根据由用户在第一触摸传感器表面和第二触摸传感器表面上施加的测得的压缩力来生成虚拟环境的随后的数字帧,其描绘了将虚拟壁压紧到陶轮上的虚拟手指。此外,当用户继续压紧捏合输入设备并且通过真实空间中垂直平面中的弧形移动输入设备时,计算机系统可以生成虚拟环境的描绘了压紧虚拟粘土壁的且以向上的方向(对应于真实空间中的输入设备的弧形)绘制虚拟粘土壁的虚拟手指的图像,以形成在虚拟陶轮上旋转的虚拟粘土器皿。具体地,当用户在真实空间中向上使输入设备关节式运动并且以增大的压缩力捏合在第一触摸传感器和第二触摸传感器之间的输入设备时,计算机系统可以将输入设备上的该真实压缩力和输入设备的运动转换成虚拟粘土块到虚拟粘土壁的转换,其向上朝其顶部边缘逐渐变细以形成与输入设备所经过的弧形的距离和轨迹相关的高度和形状的虚拟粘土器皿。在这个示例应用中,一旦虚拟粘土器皿完成,计算机系统就可以将虚拟粘土器皿转换成制造文件,并将制造文件上传到增材或减材制造系统或用于物理材料的再创造。

1.10移动虚拟表面

第一方法S100的块S150可以类似地记述根据第一力矢量来操纵虚拟环境内的虚拟对象的虚拟表面。通常,在块S150中,计算机系统可以基于在块S140中生成的力矢量的位置、方向和力大小来在虚拟环境内平移(或旋转)虚拟对象。

在一个实施方式中,计算机系统将力矢量投影到虚拟对象的虚拟表面上的点上,然后根据作用在虚拟表面上的该点上的第一力矢量的大小在虚拟环境内以第一力矢量的方向移动三维的虚拟对象,诸如在以上描述的其中虚拟对象包括虚拟棒球的示例中。计算机系统因此可基于与虚拟对象相关联的物理或运动模型在虚拟环境内以多个自由度移动虚拟对象。在这个实施方式中,计算机系统还可以实施上述方法和技术,以根据力矢量的大小和方向使虚拟对象的虚拟表面(临近虚拟表面上与力矢量相交的点)变形。

在另一实施方式中,块S150包括:跟踪真实空间内的触摸传感器的位置;基于触摸传感器在真实空间中的位置在虚拟环境内在三维中全局地定位虚拟对象;根据跨越触摸传感器表面移动的输入的轨迹在虚拟环境内沿着第一轴和第二轴在局部平移虚拟对象,其中第一轴相关于(例如,映射到)触摸传感器表面的宽度(如,X轴),并且其中第二轴垂直于第一轴且相关于触摸传感器表面的高度(例如,Y轴);以及根据触摸传感器表面上的输入的力大小在虚拟环境内沿第三轴局部地平移虚拟对象,该第三轴垂直于第一轴和第二轴并且相关于触摸传感器表面的深度。

在上述实施方式中,计算机系统因此可以基于触摸传感器表面上的输入的力大小来调制虚拟环境内的虚拟对象相对于与真实空间中的触摸传感器表面对应的虚拟参考平面的Z位置(或“深度”)。例如,计算机系统可以响应于触摸传感器表面上的输入的力大小超过阈值力大小而在虚拟环境中在相对于虚拟参考平面的第一方向上(例如,向前远离用户)将虚拟对象移动第一距离;在该示例中,计算机系统可以根据输入的力大小(或力矢量的大小)和阈值力大小之间的差来计算第一距离。类似地,计算机系统可以响应于输入的力大小(或力矢量的大小)低于阈值力大小而在虚拟环境中在相对于虚拟参考平面与第一方向相反的第二方向上(例如,向后朝向用户)将虚拟对象移动第二距离;在该示例中,计算机系统可以根据力大小和阈值力大小之间的差来计算第二距离。因此,在该实施方式中,计算机系统可以基于在真实空间中的输入设备的位置和取向在虚拟环境内全局地放置虚拟对象。然而,计算机系统可基于施加到触摸传感器表面的力的大小在较小的距离范围内沿Z轴(例如,垂直于与触摸传感器表面对应的虚拟参考平面)移动虚拟对象,从而使得用户能够通过在真实空间中移动输入设备来在虚拟环境内全局地移动虚拟对象,而且还使得用户能够通过调节施加于触摸传感器表面的输入的力大小而沿着输入设备的Z轴将虚拟环境中的虚拟对象偏移真实空间中的输入设备。类似地,当输入在触摸传感器表面上在X方向和Y方向上移动时,计算机系统可以在与虚拟参考平面的X轴和Y轴平行的方向上在相对小的距离范围内局部地移动虚拟对象,从而使得用户还能够通过在触摸传感器表面上移动手指或尖笔沿输入设备的X轴和Y轴将虚拟环境中的虚拟对象与真实空间中的输入设备偏移。具体而言,计算机系统可以基于输入设备在真实空间中的真实位置在虚拟环境内全局放置和定向虚拟对象,并且基于触摸传感器表面上的输入的位置的变化以及触摸传感器表面上的这种输入的力大小的变化来在虚拟环境中相对于输入设备的X轴、Y轴和Z轴局部地移位虚拟对象的定位。

在类似的实施方式中,计算机系统可以:根据真实空间内触摸传感器的位置和取向的变化,在虚拟环境内平移和旋转虚拟对象;并且在与触摸传感器表面上的输入的位置对应的定位处、且在与触摸传感器表面上的输入的力大小有关的程度上使虚拟对象的表面局部地变形。在其中虚拟对象包括虚拟水球的一个示例中,计算机系统可以:基于真实空间内的输入设备的定位和取向的变化,在虚拟环境内的六个自由度上移动虚拟水球;以及根据触摸传感器表面上的两个离散输入的定位以及与在触摸传感器表面上的两个离散输入的力大小有关的程度上,在定位于虚拟环境内的两个虚拟手指之间局部地变形(例如“挤压”)虚拟水球。

1.11抓握虚拟对象

在其中输入设备包括限定单个基本平坦(例如,平面)触摸传感器表面的单个触摸传感器的另一实施方式中,计算机系统可以:将触摸传感器表面上的一个或更多个输入转换为与输入的力大小对应的大小的“抓握”或“捏合“手势;基于抓握或捏合手势将虚拟环境内的虚拟对象的位置链接到真实空间中的输入设备;以及基于触摸传感器表面上的输入的力大小来操纵虚拟环境内的虚拟对象。

例如,在该实施方式中,触摸传感器可以:在第一时间处检测触摸传感器表面上的第一定位处的第一输入;在第一时间处在触摸传感器表面上的与第一输入偏移的第二定位处检测第二输入;并将这些输入数据关于一个扫描周期以触摸图像的形式上传到计算机系统。计算机系统然后可以:响应于第二输入相对地朝向第一输入移动,将第一输入和第二输入标记为“捏合”输入;基于触摸传感器在第一时间处的位置在虚拟对象附近的虚拟环境内定位虚拟工具;基于触摸传感器表面上的第一输入的第一定位、第二输入的第二定位和块S150中的第一力矢量的方向将与虚拟工具邻接(例如,从其延伸)的两个虚拟元件(例如,两个虚拟手指、虚拟钳子的尖端)放置到虚拟对象的相对侧上。具体而言,系统可以基于输入设备在真实空间中的位置在虚拟对象附近全局定位虚拟工具,并且基于对应的输入在触摸传感器表面上的定位来操纵虚拟工具上的两个(或更多个)虚拟元件的局部位置,包括在触摸传感器上的对应的输入在彼此附近移动时使虚拟元件在一起移动,如通过从触摸传感器表面接收到的触摸图像在一系列的扫描周期内通过跟踪在触摸传感器表面上的离散输入所确定的。此外,一旦虚拟元件接触虚拟对象,计算机系统就可以将虚拟元件和虚拟工具以与触摸传感器表面上的一个或两个输入的力大小相关的坚固性耦合到虚拟对象(例如,根据关于在块S140中为触摸传感器表面上的第一输入和第二输入生成的第一和/或第二力矢量的大小)。

在上述实施方式中,计算机系统随后可在第一输入的力大小和/或第二输入的力大小保持在阈值力大小之上的同时,根据真实空间内的触摸传感器的位置变化在虚拟环境内用虚拟工具移动虚拟对象。当第一输入的力大小和/或第二输入的力大小相对于输入设备在整个真实空间中移动的速度减小时,计算机系统还可以相对于虚拟工具“滑动”虚拟对象。最后,计算机系统可以响应于第一输入和/或第二输入的力大小下降到阈值力大小以下将虚拟工具与虚拟环境内的虚拟对象分离。例如,计算机系统可以实现用于抓握与虚拟对象的虚拟重量相关的虚拟对象的阈值力大小,使得较重的虚拟对象需要在触摸传感器表面上的较大力大小的输入来抓握比轻的虚拟对象更重的虚拟对象。因此,计算机系统能够通过在真实空间内移动输入设备、在触摸传感器表面上移动输入以及调节在触摸传感器表面上的输入的力大小使用户抓握、捏合或以其他方式选择、操纵并且然后释放虚拟环境内的虚拟对象,并且计算机系统可以基于施加到触摸传感器表面(并且在触摸图像中表示)的力的大小来控制虚拟工具耦合到虚拟对象的程度。

在前述实施方式中,虚拟工具可以限定虚拟手,并且虚拟元件可以限定离散的虚拟手指。计算机系统可以:基于真实空间内输入设备的位置和取向的变化,在虚拟环境内移动虚拟手;基于与手指对应的触摸传感器表面上的输入的(X,Y)位置的变化,在虚拟手上以内收和外展的方式移动虚拟手指;当输入的力大小增加时,将手指移动到更大程度的屈曲;并在输入的力大小减小时,将手指移动到更大程度的伸展。因此,计算机系统可以使虚拟手指在虚拟对象周围卷曲,以随着对应于手上的虚拟手指的输入的力大小增加而在虚拟手中虚拟地抓握虚拟对象;并且当对应于这些虚拟手指的触摸传感器表面上的输入从触摸传感器表面撤回时,计算机系统可以从虚拟手中释放虚拟对象。特别地,计算机系统可以:根据真实空间内触摸传感器的位置和取向的变化,在虚拟环境内平移和旋转虚拟手;沿着虚拟手上的虚拟手指的Z轴(例如,屈曲和伸展)将该手指局部地移动与触摸传感器表面上的对应输入的力大小对应的距离;并且根据触摸传感器表面上的对应的输入的位置在虚拟手上的虚拟手指的X-Y平面中(例如,内收、外展)平移该手指。

计算机系统可以实施类似的方法和技术来标记在一个三维(例如,半圆柱形或半球形)触摸传感器表面上同时发生的或者在跨越输入设备上的两个或更多个独有平面作为抓握输入的两个离散触摸传感器上同时发生的两个(更多个)输入。例如,如下所述,计算机系统可以根据在圆柱形输入设备上的一个或更多个触摸传感器上的输入的位置和力大小,在虚拟手上使虚拟手指关节式运动。

例如,计算机系统可以实现上述方法和技术,以基于保持在用户左手中的圆柱形左输入设备上的对应的输入的力大小(基于“抓握”手势)来抓握虚拟左手的虚拟手指中的虚拟弹弓,并且然后基于左输入设备在真实空间中的后续位置在虚拟环境中移动虚拟弹弓。在该示例中,计算机系统可基于在真实空间中的圆柱形右输入设备的位置,在与虚拟左手中保持的虚拟弹弓耦合的虚拟带上的虚拟吊索附近移动虚拟右手。基于右输入设备的一个或更多个触摸传感器上的输入的定位和力大小(例如,基于“捏合”手势),计算机系统可以在虚拟右手上使虚拟手指关节式运动以抓握虚拟弹弓的虚拟吊索,如图3所示。当使用者将右输入设备拉离左输入设备时,计算机系统可以拉伸虚拟弹弓的虚拟带,但是也增加在右输入设备处保持虚拟右手和左手中的虚拟弹弓与真实空间中的左输入设备和右输入设备之间的距离成比例所需的在右输入设备处的抓握手势的阈值力大小以及捏合手势处的阈值力大小。具体地,如果用户在物理空间中分离左输入设备和右输入设备以拉开虚拟弹弓的同时不将越来越大的力大小的输入施加到左输入设备和右输入设备,若左输入设备和右输入设备上的输入的对应的力大小没有保持在由计算机系统分配给弹弓和分配给吊索的增加的力大小阈值之上,则计算机系统可以从虚拟左手“滑脱”弹弓或从虚拟右手滑脱吊索。具体地,如果用户在将右输入设备拉离左输入设备的同时没有以保持在捏合手势的增大的阈值力大小之上的增加的力来抓握右输入设备,则计算机系统能够从虚拟右手滑脱虚拟吊索并且在滑脱时间处以右输入设备与左输入设备的相对位置对应的速度和轨迹从虚拟弹弓发射虚拟抛射。例如,计算机系统可以实现摩擦模型(例如,静态或动力学摩擦模型)以限定虚拟右手和虚拟吊索之间的耦合的持久性或刚度,并且根据右输入设备处的捏合手势的力大小来限定虚拟右手和虚拟吊索之间的滑脱。

然而,如果用户在分离左输入设备和右输入设备以拉伸虚拟弹弓的虚拟带的同时保持在左输入设备和右输入设备上的适合的力(或压力),则计算机系统可保持虚拟左手和弹弓握把之间的、以及在虚拟右手和虚拟吊索之间的连接,直到用户有意地从右输入设备释放捏合手势,此时计算机系统可以类似地以与在右输入设备被用户释放的时刻处在真实空间内右输入设备与左输入设备的相对位置相对应的速度和轨迹来从虚拟弹弓发射虚拟抛射,如图3所示。计算机系统可以实现类似的方法和技术,以基于对由用户持有的左输入设备和右输入设备的输入以及这些输入设备的相对位置来操纵虚拟环境内的虚拟弓和箭。

在另一个示例中,系统可以在虚拟攀岩环境内实现类似的方法和技术,以在用户操纵输入设备进入对应于虚拟把手的真实空间中的位置和取向且然后将一个或更多个手指挤压在输入设备的触摸传感器表面(例如,如下所述的圆柱形触摸传感器表面)上以在虚拟手上围绕虚拟把手闭合虚拟手指时用虚拟手抓握虚拟把手。因此,计算机系统可以:根据用户压下或挤压输入设备的力大小,将虚拟手耦合到虚拟把手;当用户在现实空间中向下移动输入设备时,将虚拟身体向上提升到虚拟攀岩墙;并且当用户释放或撤回触摸传感器表面上的一个或更多个输入时,从虚拟把手释放虚拟手。然而,如果输入设备上的输入的力大小下降到与虚拟身体的虚拟重量相对应的阈值力大小以下,或者如果输入设备上的输入的力大小在虚拟环境中的第二虚拟手从另一个虚拟把手释放之前下降或没有增加到阈值力大小,则计算机系统可以从虚拟手中“滑脱”虚拟把手并将虚拟身体沿着虚拟攀岩墙落下。

在另一个示例中,系统可以在虚拟打水仗环境内实现类似的方法和技术,以在用户操纵输入设备进入对应于虚拟水球篮内的虚拟水球的真实空间中的位置和取向且然后将一个或更多个手指挤压在输入设备的触摸传感器表面(例如,如下所述的圆柱形触摸传感器表面)上以在虚拟手上围绕虚拟水球闭合虚拟手指时用虚拟手抓握虚拟水球。然而,如果用户以大于阈值爆发力大小的力大小来挤压输入设备的触摸传感器表面,则计算机系统可以虚拟地使虚拟水球爆裂。类似地,如果用户以小于阈值保持力大小的力大小挤压输入设备的触摸传感器表面,则计算机系统可以虚拟地将虚拟水球从虚拟手“滑脱”且到地面上(并且实际上使虚拟水球爆裂)。

在另一示例应用中,计算机系统与输入设备对接以控制虚拟积木搭建环境。在该示例应用中,计算机系统生成虚拟环境的数字帧,包括虚拟砖块模型和虚拟砖块堆中的虚拟砖块。例如,在将具有触摸传感器表面的输入设备面保持朝上时,用户可以:在对应于虚拟环境中的虚拟砖块堆真实空间中的第一位置上移动输入设备;捏合输入设备的触摸传感器表面以从虚拟砖块堆中选择虚拟砖块;将输入设备(其中手指仍然与触摸传感器表面接触)移动到真实空间中的对应于虚拟砖块模型的第二位置;将手指移动到触摸传感器表面上与对于虚拟砖块到虚拟砖块模型上的期望安装位置对应的特定定位;旋转手指以设置在真实空间中与触摸传感器表面的取向对应的在虚拟平面中的所选虚拟砖块的取向;并向下推动触摸传感器表面(或向下移动输入设备)以将虚拟砖块安装在虚拟砖块模型上的所选位置处。因此,计算机系统可以跟踪接触区域在触摸传感器表面上的力值和位置、跟踪输入设备在真实空间内的位置和取向并且相应地基本上实时地更新虚拟积木搭建环境。

1.12操纵虚拟工具

在另一示例应用中,计算机系统与输入设备对接以控制虚拟雕刻环境,如图2所示。在该示例应用中,计算机系统生成包括虚拟粘土块和虚拟粘土工作工具(例如,手、手指、刮刀、其他建模工具等)的虚拟环境的数字帧。具体地,在该示例应用中,计算机系统将在触摸传感器表面上的输入对象的接触区域上的力分布转换成虚拟粘土建模工具分布,其在虚拟环境内变形、切割和/或拖曳虚拟粘土。例如,计算机系统可以通过将圆弧映射到虚拟粘土块上的虚拟表面并且然后根据在触摸传感器表面上的输入力分布沿着(虚拟)圆弧在虚拟模型内移除(或压缩)虚拟粘土材料,将沿着圆弧横穿触摸传感器表面(且从圆弧的第一端处的低峰值压力到圆弧中心附近的较高峰值压力并且在圆弧的第二端处返回到低峰值压力)的输入转换为虚拟粘土块的表面上的凹形浮雕。在这个示例中,如果用户用手指接触触摸传感器表面,则输入设备可以在手指接触区域上记录力分布,包括接触区域的中心附近的最大力以及从接触区域的中心朝向接触区域的周边的减小力;计算机系统因此能够通过一系列连续的采样周期基于接触区域的力分布沿着圆弧且垂直于圆弧移除(或压缩)虚拟粘土材料。在另一个示例中,计算机系统将输入设备的后部(例如,第二)触摸传感器表面上的输入转变成虚拟粘土块的对应区域上的拉伸或拉动动作,诸如通过将触摸传感器表面上的力大小在相同或相似的时间(例如,针对重叠的采样周期)处沿着与输入设备的取向对应的方向在虚拟粘土块的对应的点或区域上变成张力。在该示例应用中,计算机系统还可以根据输入设备上的输入力大小和输入设备在真实空间中的取向来推动、拉动、拖动、扭转或以其他方式操纵虚拟环境内的虚拟粘土块。

在另一示例应用中,计算机系统与输入设备对接以控制虚拟绘画环境。在该示例应用中,计算机系统生成包括虚拟画布、虚拟涂料、虚拟画笔和虚拟调色板的虚拟环境的数字帧,并且将横跨触摸传感器表面上的真实画笔的接触区域的力分布转换为将涂料涂到虚拟画笔的受控集合并将涂料沉积到虚拟画布上和虚拟调色板上的受控沉积。例如,用户可以将输入设备移动到与虚拟环境内的虚拟调色板相对应的真实位置,将真实的画笔轻涂到与虚拟调色板上的虚拟涂料涂抹对应的输入设备上的位置,以虚拟地收集在虚拟画笔的尖端上的少量虚拟涂料;计算机系统因此可以将真实空间中的触摸传感器表面的真实位置映射到虚拟调色板,将真实画笔在触摸传感器表面上的接触区域映射到虚拟调色板上的涂料涂抹,并根据真实画笔在触摸传感器表面上的力分布、接触区域和轨迹来操纵虚拟环境内的虚拟画笔。在该示例中,用户还可以:在输入设备的对应于虚拟调色板上的第一涂料颜色的虚拟涂抹的第一区域上扭转真实画笔,以虚拟地在虚拟画笔的刷毛上收集大量的虚拟涂料;在输入设备的第二区域上轻涂、旋动或扭转画笔,以将来自虚拟画笔的第一颜色的涂料虚拟地沉积到虚拟调色板的另一区域上;通过在触摸传感器表面的第三区域上移动真实画笔来在虚拟画笔上收集第二颜色的虚拟涂料;将真实画笔移回到第二区域以虚拟地混合第一涂料颜色和第二涂料颜色。在这个示例中,计算机系统因此可以根据随着时间输入设备在真实空间中的位置以及输入在触摸传感器表面上的位置来生成表示虚拟环境的和对虚拟画笔和虚拟涂料的操纵的一系列数字帧。此外,一旦用户在虚拟画笔上采集了虚拟涂料,用户可以将输入设备移动到与虚拟画布相对应的真实空间中的位置,并且然后将真实画笔接触到输入设备;计算机系统因此可以基本上实时地生成表示虚拟环境的数字帧,该虚拟环境描绘了虚拟涂料从虚拟画笔到虚拟画布的与真实画笔在触摸传感器表面上的位置对应的区域上的沉积。

在前述示例应用中,计算机系统还可以渲染包括调色刀的虚拟环境,并且可以基于输入设备和工具(例如真实调色刀)在触摸传感器表面上的位置和取向来操纵虚拟环境内的调色刀。例如,当输入设备被保持在对应于虚拟调色板的真实空间中的位置中时,用户可以当在触摸传感器表面的区域上拖动真实调色板刀时操纵输入设备的取向。计算机系统然后可以:将输入设备的取向上的变化以及一段时间内调色刀在触摸传感器表面上的运动和力的变化转换成相应的三维矢量序列;并且基于该矢量序列来更新虚拟环境以描绘涂料从虚拟调色板到虚拟调色刀上的收集,包括当虚拟调色刀扫过涂料的虚拟涂抹且然后远离虚拟调色刀而提升的虚拟调色刀的扭转运动。为了将涂料虚拟地从虚拟调色刀沉积到虚拟画布上,用户然后可以将输入设备移动到真实空间中对应于虚拟画布的位置,并使虚拟调色刀放置成与输入设备表面接触;如上所述,计算机系统可以跟踪这些运动,并且基本上实时地相应地生成表示虚拟环境的新帧。在这个示例应用中,一旦画布完成,计算机系统就将画布转换为二维打印文件或三维制造文件,并且将文件上传到打印机或增材制造系统以用于物理材料的再创造。

计算机系统可以实施相似的方法和技术来在虚拟手术环境内(诸如在虚拟手术训练模块内)相对于虚拟人体控制手术刀的位置和取向。例如,计算机系统可以将虚拟手术刀在虚拟手术环境中进入虚拟人体的虚拟肉体的虚拟切割深度调节成与施加到触摸传感器表面的力的大小成比例,并且根据通过输入设备在真实空间中穿过的路径将虚拟手术刀移动通过虚拟肉体。计算机系统可以实现类似的方法和技术以在虚拟手术环境内放置和操纵虚拟骨锯、虚拟骨钻和/或任何其他虚拟手术工具。

因此,如在前述示例应用中,计算机系统可以:虚拟地将表示输入设备的虚拟工具耦合到虚拟环境内的虚拟对象的虚拟表面的区域;根据触摸传感器表面上的输入,将虚拟环境内的虚拟工具的轴定向到在块S140中生成的力矢量的方向;并且根据在块S150中的力矢量的大小将虚拟工具与虚拟对象对接。例如,计算机系统可以将虚拟工具(例如,如上所述的虚拟粘土雕刻工具)压入虚拟表面至与力矢量的大小相关的深度。计算机系统还可以:在块S110中,确定在第二时间处输入设备在真实空间内的第二位置;在块S140中,生成第二力矢量,该第二力矢量包括与在第二时间处移动到触摸传感器表面上的第二定位的第一输入的力大小相关的大小以及与触摸传感器在真实空间内的取向有关的方向;在块S142中,基于在第二时间处的第一输入的第二定位和触摸传感器在真实空间内的第二位置,在虚拟环境内定位第二力矢量的原点;将触摸传感器表面上的第一输入的第二定位投影到虚拟表面的第二子区域上;将虚拟工具的轴定向为第二力矢量的方向;在与第一定位和第二定位之间的距离有关的虚拟表面的长度上拖动虚拟工具;并且在块S150中,根据第二力矢量的大小在虚拟表面的长度上使虚拟对象变形。在前述示例中,计算机系统可以根据输入设备的轨迹以及贯穿该轨迹的在触摸传感器表面上的输入的力大小来拖动虚拟工具(例如,如上所述的虚拟粘土雕塑工具)通过对象;计算机系统然后可以根据该轨迹和力大小移除虚拟对象的对应的虚拟体积或者局部地变形虚拟表面。

然而,计算机系统可以以任何其他方式实现第一方法S100,以用于任何真实空间和虚拟环境之间的任何其他合适的应用,并且可以与输入设备相对接以支持任何其他合适的输入类型或手势,并且计算机系统可以以在块S150中的任何其他适合的方式相应地操纵虚拟表面和/或虚拟对象。此外,计算机系统可以以任何其他合适的方式执行第一方法S100的块,以将物理空间内(例如,在触摸传感器表面上)的用户输入链接到虚拟环境。

1.13视频输出

第一方法S100的一个变型还包括块S160,其记述了将表示虚拟环境内的虚拟对象的虚拟表面的操纵的一系列的数字帧提供给虚拟现实头戴设备。通常,在块S160中,计算机系统可以生成表示虚拟环境的状态的数字帧;计算机系统然后可以诸如通过虚拟现实头戴设备或通过增强现实平视显示器向用户提供这个数字帧。例如并且如上所述,计算机系统可以以60帧每秒的帧率来生成表示用户的当前的虚拟环境的视野和虚拟环境的当前状态的数字帧(包括由用户通过一个或更多个输入设备操纵的虚拟对象和/或虚拟工具的位置、取向和变形),并且基本上实时地将这些数字帧提供给二维或三维显示器。然而,计算机系统可以实现任何其他方法或技术来表示一个数字图像中的虚拟环境的状态并且基本实时地向用户提供该数字图像。

1.14离合

计算机系统还可以实施离合技术以在以下模式之间切换:第一模式,其中虚拟对象根据输入设备的运动和/或施加到触摸传感器表面的力而被移动或操纵;第二模式,其中当输入设备被移动时和/或当力被施加到触摸传感器表面时,虚拟对象根据不同的图式被移动或操纵;以及第三模式,其中当输入设备移动时和/或当力施加到触摸传感器表面时虚拟对象不被移动或操纵。例如,计算机系统可以基于施加到触摸传感器表面的力的总大小在其中根据两个唯一图式(例如,推式图式和拉式图式、压缩图式和弯曲图式)操纵虚拟对象的第一模式和第二模式之间切换。在该示例中,计算机系统可以在0.1N和0.5N之间的总合力被施加到触摸传感器表面时执行第一模式,当大于0.5N的总合力被施加到触摸传感器表面时执行第二模式,并且当通过横跨触摸传感器表面上的所有输入将小于0.1N的总合力施加到触摸传感器表面时执行第三模式。

在另一个示例中,计算设备可以基于触摸图像中表示的多个离散输入区域(例如,与触摸传感器表面接触的多个指尖)在模式之间切换。例如,计算设备可以执行:第一模式,其中当在触摸传感器表面上检测到包含真实力的单个输入区域时,在触摸传感器表面上的真实力被转化为虚拟物体上的虚拟力;第二模式,其中触摸传感器表面上的两个输入区域的位置限定虚拟对象在虚拟环境内的旋转的虚拟轴线,并且其中当在触摸传感器表面上检测到恰好两个离散输入区域时,输入设备在真实空间中的运动被转换成虚拟对象关于虚拟对象在虚拟环境内的旋转的固定虚拟轴线的运动;以及第三模式,其中当在触摸传感器表面上恰好检测到三个离散输入区域时,触摸传感器表面上的三个输入区域的位置将虚拟对象的虚拟位置约束或“锁定”到输入设备的真实位置,使得虚拟对象根据输入设备在真实空间中的位置和取向的变化在虚拟环境内移动。

在前述示例中,计算机系统还可实现静态或动态摩擦模型(例如,用于虚拟对象的虚拟表面的静态或动态摩擦系数)以基于在触摸传感器表面上的输入区域内施加的力的大小来限定在这个输入区域和在虚拟环境中的虚拟对象上的虚拟点或虚拟表面之间的连接的强度。例如,计算机系统可以根据摩擦模型使在虚拟对象和触摸传感器表面上的输入区域之间的连接与在该输入区域内施加到触摸传感器表面的力的大小相反地“滑动”。在该示例中,当对输入设备的相对侧上的每个触摸传感器表面施加力以操纵虚拟环境内的虚拟工具时,计算机系统可以响应于第一触摸传感器表面上的第一输入的第一力大小与在相对的触摸传感器表面上的第二输入的第二力大小的和落入上限阈值力大小(其中虚拟对象被锁定到虚拟工具)和下限阈值力大小(其中虚拟对象从虚拟工具被释放)之间的力大小范围内,根据摩擦模型来使虚拟对象相对于虚拟工具滑动。

在其中输入设备包括第一侧上的第一触摸传感器表面和相对侧上的第二触摸传感器表面的又一示例中,如下所述,计算机系统可以执行:第一模式,其中当在第一触摸传感器表面或第二触摸传感器表面上没有检测到其它输入区域时,根据在输入区域内施加到第一触摸传感器表面的真实力在虚拟环境内平移虚拟对象或虚拟表面;第二模式,其中当在第一触摸传感器表面和第二触摸传感器表面上仅检测到第一输入区域和第二输入区域时,虚拟对象围绕由第一输入区域在第一触摸传感器表面上和第二输入区域在第二触摸传感器表面上的位置限定的虚拟轴线、且通过对应于施加到第一输入区域和第二输入区域的力大小的速度或大小而在虚拟环境内旋转。可选地,在第二模式中,计算机系统可以:基于摩擦模型和第一输入区域的力大小将第一触摸传感器表面上的第一输入区域耦合到虚拟对象的一侧上的对应点;基于摩擦模型和第二输入区域的力大小将第二触摸传感器表面上的第二输入区域耦合到虚拟对象的相对侧上的对应点;并且基于在第一输入区域和第二输入区域及它们在虚拟对象上的对应点之间的耦合强度,当第一输入区域和第二输入区域分别在第一触摸传感器表面和第二触摸传感器表面上移动时将剪切(shear)力施加到虚拟对象,由此旋转虚拟环境中的虚拟对象。

然而,计算机系统可以实现任何其他方法和技术以在模式之间切换,以基于到输入设备中的一个或更多个输入来控制和释放虚拟对象或虚拟表面。

2.第二种方法

如图5所示,第二种方法包括:在块S230中,接收来自手持设备的触摸图像,该触摸图像包括集成到手持设备中的触摸传感器中的离散输入的表示;在块S232中,从触摸图像提取在手持设备的第一侧上的第一定位处的第一输入的第一力大小;在块S234中,从触摸图像提取在手持设备的第二侧上的第二定位处的第二输入的第二力大小,该手持设备的第二侧与手持设备的第一侧相对;在块S240中,将第一输入和第二输入转换成手势;在块S242中,基于第一力大小向手势分配大小;以及在块S250中,基于手势的类型和大小操纵虚拟环境内的虚拟对象。

2.1.应用

通常,第二方法可以由上述计算机系统执行,诸如结合第一方法S100,将输入设备的一个或更多个触摸传感器表面上的多个离散输入表征为手势并且基于该手势操纵虚拟环境内的虚拟对象。特别地,计算机系统可以与输入设备(例如,包括具有圆柱形触摸传感器表面的圆柱形触摸传感器的圆柱形手持设备,如下所述)对接,以接收跨越多个平面或输入设备的不同表面的多个输入的力大小和位置数据,将这些输入解释为手势,基于这些输入在触摸传感器上的力大小限定手势的大小,跟踪输入设备在真实空间内的位置和取向,以及根据手势、手势的大小以及输入设备在真实空间中的位置操作虚拟表面或虚拟对象。

例如,计算机系统可以与输入设备101对接,输入设备101包括在输入设备的前面的一个基本上平面的触摸传感器(例如,当被保持时面向用户的拇指)和在输入设备的背面上的第二基本上平面的触摸传感器(例如,在被保持时面向用户的手指),如图7所示。可选地,计算机系统可以与包括单个触摸传感器的输入设备对接,该输入设备包裹、弯曲或以其他方式形成为三维结构,诸如跨越多个不同平面的圆柱体或近似球体。计算机系统然后可以实现第二方法的块:在一个时间上的实例处识别在输入设备上检测到的多个离散输入中的主要输入;检测输入设备处的多指抓握手势;在虚拟环境内操纵虚拟手上的虚拟手指;在输入设备处检测弯曲手势;或者检测输入设备处的扭转手势;等等。

2.2触摸图像

通常,在块S230、S232和S234中,计算机系统可以实现上述方法和技术以便:接收来自输入设备的触摸图像(或者对于集成到输入设备中的每个离散触摸传感器的一个触摸图像);从触摸图像中识别输入设备上的多个离散输入;并且在对应于触摸图像的时间处计算对于在输入设备上的每个输入的峰值力、总合力和/或输入面积。例如,计算机系统可以识别超出静态或动态基线值的触摸图像内的值,并标记在触摸图像中的超出(或超过)基线值的每个值群作为离散输入,其周界由基本等于基线值的值和/或触摸图像的边缘界定。对于每个离散输入,计算机系统然后可以:基于输入设备中的感测元件之间的已知间距或通过触摸传感器的已知面积和触摸图像中输入的边界来计算离散输入的面积;识别触摸图像中的输入的边界内的峰(或最小)值;并对触摸图像中的输入的边界内的所有值进行求和,以计算离散图像的总合力。

此外,对于包括每个扫描周期各自输出一个触摸图像的多个触摸传感器的输入设备,计算机系统可以针对与一个扫描周期相对应的每个触摸图像重复该过程,以识别在该扫描周期期间输入设备的多个触摸传感器表面上的多个输入。然而,计算机系统可以在块S230、S232和S234中实现任何其他方法或技术,以基于从输入设备接收到的且对应于瞬时时间的触摸图像来识别在该同一瞬时时间处输入设备的触摸传感器表面上的离散输入。

2.3优先输入

在一个实施方式中,计算机系统识别输入设备上的不同的输入的集合,并且基于这些输入的力大小的差异来识别输入的集合中的主要或“预期”输入。在一个示例中,计算机系统:在块S232中,从触摸图像中提取输入设备的第一侧上的第一定位处的第一输入(例如,拇指)的第一力大小;在块S234中,从触摸图像中提取输入设备的第二侧上的第二定位处的第二输入(例如,食指)的第二力大小;并且在块S234中,从触摸图像中提取输入设备的第二侧上的第三定位处的第三输入(例如,中指)的第三力大小,从而在一个时间实例上识别和表征输入设备上的多个离散输入。在该示例中,计算机系统然后:如果第一力大小近似于第二力大小和第三力大小的总和,并且如果第二力大小和第三力大小大致上大小类似,则将第一输入标记为预期输入;将第二输入和第三输入标记为表示由用户握持输入设备引起的在输入设备上的输入的次要或“保持”输入;并相应地丢弃第二输入和第三输入。一旦第一输入被标记为预期输入,则在块S240中,计算机系统可以生成对应于分配给手持设备的包括第一定位的区域的命令的手势,诸如对于命令的选择手势,并且在块S242中,基于第一力大小将大小(例如,从1-10的程度、从0-100%的比例或标量值)写入手势。最后,计算机系统可根据手势根据分配到手势的大小来变换、修改、移动或以其他方式操纵虚拟环境内的虚拟对象(例如,通过执行与第一力大小相关的程度的命令)。

在类似的示例中,计算机系统可以将由食指施加到输入设备的第一输入解释为对应于拉动虚拟触发物的主要输入:如果第一输入的峰值力大小超过对应于用户的手掌接触输入设备的相对侧的第二输入的第二峰值力大小;并且如果第一输入的总合力大小近似于第二输入的总合力大小。然后,计算机系统可以将虚拟枪上的虚拟触发物移动对应于第一输入的峰值力大小的距离,并且仅当第一输入的峰值力大小超过阈值力大小时才使虚拟枪射击。

然而,计算机系统可以实现任何其他方法、技术或计划,以将输入设备上的一个或更多个输入标记为主要输入,通过修改或操纵虚拟环境内的虚拟对象来响应该主要输入,并且丢弃输入设备上的其他次要输入。

2.4抓握虚拟对象

在另一个实施方式中,计算机系统实现与上述类似的方法和技术,以将输入设备上的多个输入解释为抓握或夹紧手势。例如,计算机系统可以:基于第一输入的第一定位和第二输入的第二定位的通过手持设备的同轴接近度,将输入设备的第一侧上的第一输入和输入设备的相对侧上的第二输入(在触摸图像中表示的)转换成抓握姿势。具体而言,如果第一输入和第二输入的第一定位和第二定位在穿过输入设备的轴线的水平和垂直平面中对齐,则计算机系统可以将输入设备的相对侧上检测到的类似力的两个(或更多个)输入(诸如对应于用户的食指和拇指)标记为抓握手势,如图3所示。

然后计算机系统可以:将与第一输入的第一力大小和第二输入的第二力大小之和相关的抓握大小写入抓握手势;如上所述,根据抓握手势的抓握大小,将虚拟环境中的虚拟工具耦合到虚拟对象;在抓握大小超过阈值大小时,根据输入设备在真实空间内的运动而在整个虚拟环境中移动由虚拟工具抓握的虚拟对象;然后一旦抓握大小下降到阈值大小以下,就从虚拟工具中释放虚拟对象。特别地,计算机系统可以:跟踪输入设备在真实空间内的位置,如上述的块S220;当输入设备的第一侧上的第一输入的第一力大小和设备的第二侧上的第二输入的第二力大小的和超过阈值力大小时,根据输入设备在真实空间内的位置的变化来在虚拟环境内移动虚拟对象(以及根据抓握或捏合手势耦合到虚拟对象的虚拟工具);然后响应于第一输入的第一力大小和第二输入的第二力大小的和下降到阈值力大小以下,使虚拟工具与虚拟环境内的虚拟对象分离。

在其中输入设备包括在输入设备的一侧上的第一触摸传感器表面和在输入设备的相对侧上的第二触摸传感器表面的一个示例实施方式中,计算机系统可以将第一触摸传感器表面映射到在虚拟环境中表示的虚拟对象的虚拟表面的第一区域,并且计算机系统可以将第二触摸传感器表面映射到与虚拟表面的第一区域相对的虚拟对象的虚拟表面的第二区域。在该示例实施方式中,输入设备可以输出关于第一触摸传感器表面的第一触摸图像和关于第二触摸传感器表面的第二触摸图像。因此,当对于扫描周期的一对第一触摸图像和第二触摸图像指示用户正在捏合输入设备的第一触摸传感器表面和第二触摸传感器表面(例如,拇指与食指之间)时,计算机系统可以基于第一触摸传感器表面和第二触摸传感器表面上的对应力的大小将虚拟环境中的虚拟对象的第一区域和第二区域朝向彼此压紧。在该示例实施方式中,如果后续的触摸图像对指示用户正沿着输入设备的第一触摸传感器表面和第二触摸传感器表面捏合且拖拽他的拇指和食指,则计算机系统可以更新虚拟环境中的虚拟对象的第一区域和第二区域,以沿着表示用户的拇指和食指在输入设备上的真实轨迹的虚拟圆弧反映第一区域和第二区域朝向彼此的压紧。此外,当第一力大小和第二力大小的总和超过与虚拟对象的虚拟重量对应的阈值力大小时,计算机系统可以根据输入设备在真实空间中的位置和取向来更新虚拟对象环境内的虚拟对象的位置和取向,如上所述。

2.5虚拟手控制

在另一个实施方式中,计算机系统实现与上述类似的方法和技术,以将输入设备上的多个输入解释为虚拟环境中的虚拟手上的虚拟手指的位置。在其中计算机系统与圆柱形输入设备相对接的一个示例实施方式中,如下所述,计算机系统可以:识别从圆柱形输入设备接收到的触摸图像中的离散输入区域的集合;然后基于在块S230、S232和S234中的计算机系统上本地存储的触摸图像和数字人手模型中表示的每个离散输入区域的相对位置,将离散输入区域的集合中的每个离散输入区域标记为用户的手的手掌、第一指、第二指、第三指、第四指和第五指中的一个,如图5所示。然后,在块S240中,计算机系统可以基于离散输入区域的集合中的每个离散输入区域的定位和标记来生成限定虚拟手模型的每个虚拟手指的内收和外展位置的手势;具体而言,计算机系统可以更新虚拟手模型上的虚拟手指的横向位置,以与在输入设备的触摸传感器表面上检测到的手指的真实位置对齐。计算机系统还可以基于在输入设备上检测到的离散输入区域的集合中的每个离散输入区域的力大小,以虚拟手模型的每个虚拟手指的屈曲的大小来增强手势;具体而言,在块S240和S242中,计算机系统可以将标记为表示手指的触摸传感器表面上的每个离散输入区域的力大小转换为弯曲程度。例如,计算机系统可以在虚拟手模型中限定虚拟手指的位置:当基线力在触摸图像中表示在用户的对应的手指的预期位置处时(或者,当触摸图像中包含表示用户的对应的手指刚刚掠过触摸传感器表面的最小力时),来自自然伸展的位置(例如,伸直手指);当在触摸图像中用户的手指对应于虚拟手指的位置处表示预设的最大力时,虚拟手指完全屈曲;计算机系统可以为虚拟手模型的每个虚拟手指重复这一过程。一旦计算机系统基于输入设备上的每个手指的位置和力大小,用对于虚拟手模型的每个虚拟手指的位置填入手势,则计算机系统可以根据在手势中限定的内收和外展位置和屈曲大小来转换虚拟环境内的虚拟手模型;具体而言,计算机系统可更新虚拟环境内的虚拟手的每个虚拟手指的内收、外展、屈曲和伸展位置以表示用户的在输入设备上的手指中的每一个手指的内收、外展位置和压缩力。

2.6弯曲虚拟对象

在又一个实施方式中,计算机系统实现与上述类似的方法和技术,来将输入设备上的多个输入解释为虚拟地弯曲在虚拟环境中的虚拟对象的弯曲手势。在其中计算机系统和包括输入设备的一侧上的第一平面触摸传感器和输入设备的相对侧上的第二平面触摸传感器的平面输入设备相对接的一个实施方式中,计算机系统:在块S232中,从触摸图像中提取输入设备的第一侧上的第一定位处的第一输入(例如,拇指)的第一力大小;在块S234中,从触摸图像中提取输入设备的第二侧上的第二定位处的第二输入(例如,食指)的第二力大小;并且在块S234中,从触摸图像中提取输入设备的第二侧上的第三定位处的第三输入(例如,中指)的第三力大小,从而在一个时间实例上识别和表征输入设备上的多个离散输入,如上所述。在块S240中,计算机系统然后可以根据跨越输入设备的第一侧上的第一输入的第一定位、在输入设备的第二侧上的第二输入的第二定位和第三输入的第三定位之间的横向分离将这三个输入变换成弯曲手势输入。在块S242中,计算机系统还可以基于第一力大小、第二力大小和第三力大小诸如通过限定与第一力大小相对应的虚拟弯矩(其可以近似于第二力大小和第三力大小的总和),向手势分配弯矩的大小。最后,计算机系统可以在弯矩的方向上虚拟地弯曲虚拟对象并且至如在弯曲手势中限定的弯矩的大小相对应的程度。

在其中输入设备包括第一触摸传感器表面和第二触摸传感器表面的一个示例应用中,如上所述,计算机系统可以基于用于第一触摸传感器表面和第二触摸传感器表面的触摸图像对来检测到输入设备中的弯曲和转矩输入并相应地修改虚拟对象。例如,计算机系统可以:将在第一触摸传感器表面的中心附近施加的第一力、在第二触摸传感器表面的右边缘附近施加的第二力以及在第二触摸传感器表面的左边缘附近施加的第三力与凹形弯曲输入相关联;基于输入设备的位置和取向,将平行于第一触摸传感器表面和第二触摸传感器表面的在真实空间中的平面映射到与虚拟环境内的虚拟对象相交的虚拟参考平面上;并且根据凹形弯曲输入的大小使虚拟对象变形离开虚拟参考平面。在另一个示例中,计算机系统可以:将在第一触摸传感器表面处的输入设备的右上角附近施加的第一力、在第二触摸传感器表面处的输入设备的右下角附近施加的第二力、在第一触摸传感器表面处的输入设备的左下角附近施加的第三力、在第二触摸传感器表面处的输入设备的左上角附近施加的第二力与关于输入设备的横轴的转矩输入(或“扭转手势”)相关联;基于输入设备的位置和取向将横轴映射到与虚拟环境内的虚拟对象相交的虚拟轴上;并且根据转矩输入的大小,围绕虚轴扭转虚拟对象(例如,虚拟湿抹布),如图4所示。

在类似的示例应用中,计算机系统与输入设备对接以控制虚拟魔方。具体地,在该示例应用中,计算机系统生成虚拟砖块模型和虚拟砖块堆中的虚拟砖块的数据帧。例如,用户可以围绕三个轴旋转输入设备,并且计算机系统可以将输入设备的取向与虚拟魔方的三个维度中的一个相关联以用于随后的操纵。用户然后可以沿着输入设备当前以其定向的轴线在三个离散位置范围之间平移输入设备,并且计算机系统可以将沿着所选轴线的输入设备的位置与虚拟魔方的三个虚拟行之一相关联以用于随后操纵。用户然后可以将两个(或更多个)手指放置在触摸传感器表面上,并且然后将这些手指在触摸传感器表面上旋转;计算机系统可以在将虚拟魔方的其余两行在虚拟环境内保持静止的时候将该输入运动映射到虚拟魔方的所选虚拟行的旋转中。计算机系统可以基本上实时地相应地更新虚拟环境。

2.7检测输入设备的未感测区域上的输入

在另一个实施方式中,计算机系统实现与上述类似的方法和技术,来将触摸图像中表示的触摸传感器表面上的输入转变成输入(例如,手指按压)接触输入设备的未感测表面(即,不包含触摸传感器、力矩开关或其他接触或接近传感器的表面)的确定。例如,当在用户的手掌和四根手指之间握住圆柱形输入设备的用户用拇指按压圆柱形输入设备的顶部(不包括触摸传感器或其他传感器)时,用户也可以在防止输入设备从他的抓握中滑落而更大程度上抓握或“挤压”在他的拇指和手指之间的圆柱形输入设备。然而,对输入设备的顶部表面的下压仍然可能导致输入设备在用户的手中稍微向下移位,这可能导致用户的手指在触摸传感器表面上的接触区域相对于触摸传感器表面向上移动(或“滚动”)。一旦用户从输入设备的顶部释放他的拇指,用户所施加的抓握力则可以减小,并且用户的手指在触摸传感器表面上的位置可以返回到之前的较低的相对位置。计算机系统因此可以将这个序列解释为输入设备的顶部的输入,该序列包括由每个手指施加到触摸传感器表面的峰值力大小或总合力大小的增加和输入区域位置的向上移位,随后是由用户的手指施加的峰值力大小或总合力大小的减小和在触摸传感器表面上的输入区域位置中的向下移位。

因此,如在其中输入设备限定圆柱形(或其他三维)触摸传感器表面的前述示例实施方式中,计算机系统可以:在块S230和S232中,在一系列的触摸图像上跟踪输入设备的第一侧上的第一输入以及输入设备的第二侧上的第二输入;然后在一系列的触摸图像上将第一输入和第二输入的力大小的增加、第一输入的第一定位的向上移位以及第二输入的第二定位的向上移位解释为在手持设备的第一侧和第二侧之上且基本上垂直于它们的输入设备的未感测表面上的第三输入。例如,计算机系统可以实现团迹检测技术以识别一个触摸图像中的一个离散输入区域且在随后的触摸图像中匹配该离散输入区域,计算每个触摸图像中的输入区域的质心,计算在两个触摸图像上的该离散输入区域的质心之间的距离,并且在随后的触摸图像上重复该过程以随着时间跟踪输入设备上的对应的输入的移动。计算机系统还可以实施上述方法和技术来计算在一系列的触摸图像上的离散输入区域上的峰值力大小或总合力大小,以及然后实施未感测区域输入模型或模板以将力大小变化和输入区域定位变化事件的这个序列表征为输入设备的未感测顶部上的单个输入。

在上述实施方式中,计算机系统还可以:在块S240中,将输入设备的未感测顶部上的第三输入标记为输入设备上的预期输入,丢弃一系列触摸图像中表示的第一输入和第二输入,并且生成与分配给输入设备的顶部未感测区域的命令相对应的手势;并且在块S242中,基于第一输入和第二输入的力大小、在第一输入的第一定位中的向上移位的大小,和/或第二输入的第二定位中的向上移位的大小,向输入设备的未感测顶部上的第三输入分配第三力大小。例如,计算机系统可以将用户的拇指施加在输入设备的顶部上期间的触摸传感器表面上的第一输入和第二输入的总合力大小与第一输入或第二输入的最大位移距离与用户的拇指在输入设备的顶部上的总合力大小相关。最后,计算机系统可以根据输入设备上的该输入的定位和力大小来操纵虚拟环境内的虚拟对象。例如,如果该输入的估计的力大小超过阈值力大小,则计算机系统可以根据分配给输入设备的顶部的命令来选择虚拟环境内的虚拟对象。

3.输入设备

如图7、图8和图9所示,用于操纵虚拟环境内的虚拟对象的系统100包括:外壳102;第一触摸传感器110;第二触摸传感器120;和控制器130。第一触摸传感器包括:第一触摸传感器表面118,其延伸跨越外壳102的外部的第一区域;第一感测电极阵列114,其跨越基板112被图案化;以及第一电阻层116,其介于第一触摸传感器表面118和第一感测电极阵列114之间,与第一感测电极阵列114接触,并且包括响应于施加到第一触摸传感器表面118的力的变化而呈现局部电阻变化的材料。第二触摸传感器120包括:第二触摸传感器表面128,其延伸跨越外壳102的外部与第一区域相对的第二区域;第二感测电极阵列122;以及第二电阻层126,其介于第二触摸传感器表面128与第二感测电极阵列122之间,与第二感测电极阵列122接触并且包括所述材料。控制器130耦合到外壳并且被配置为:在扫描周期期间扫描第一感测电极阵列114和第二感测电极阵列122;基于第一感测电极阵列114中的感测电极的子集的电阻值的变化来检测第一触摸传感器表面118上的第一定位处的第一力大小的第一输入;基于第二感测电极阵列122中的感测电极的子集的电阻值的变化来检测第二触摸传感器表面128上的第二定位处的第二力大小的第二输入;并生成限定对于该扫描周期的第一输入的第一定位和第一大小以及第二输入的第二定位和第二大小的触摸图像。

3.1.应用

通常,系统100包括如上所述的输入设备,其包括一个或更多个触摸传感器,该一个或更多个触摸传感器检测一个或更多个触摸传感器表面上的输入的位置和力大小,每个扫描周期将触摸传感器表面上的输入的位置和力大小封装成触摸图像;以及将这些触摸图像上传到计算机系统,如上所述,用于处理以操纵虚拟环境内的虚拟对象。例如,系统100(以下称为“输入设备”)可以限定用户可以用一只或两只手在真实空间中按压、挤压、扭转、弯曲、摇动、移动或以其他方式操纵的手持设备,并且输入设备101可以将触摸传感器表面上的输入封装成触摸图像,并且基本上实时地将这些触摸图像上载到本地虚拟现实系统(包括计算机系统)。在该示例中,计算机系统然后可以实现上述的第一方法S100和/或第二方法S200以在真实空间中跟踪输入设备101,基于输入设备101在真实空间中的位置和在一个或一系列的触摸图像中表示的输入来限定手势,并且根据这些手势操纵虚拟环境内的虚拟对象。

3.2触摸传感器

如图7、图8和图9所示,输入设备101包括一个或更多个触摸传感器,其中每个触摸传感器包括:在基板(例如,玻璃纤维PCB、柔性PCB)上被图案化的感测电极和驱动电极对的阵列(即,感测电极或“感测元件”);以及电阻层,其布置在基板上与感测电极和驱动电极对接触,限定响应于所施加的力的变化而呈现局部体电阻和/或局部接触电阻的变化的材料,并且限定与基板相对的触摸传感器表面。如美国专利申请第14/499,001号中所述,电阻式触摸传感器可以包括在基板上图案化的驱动电极和感测电极的网格。电阻层可跨越基板上的每个驱动和感测电极对之间的间隙,使得当局部化的力被施加到触摸传感器表面时,相邻的驱动和感测电极对上的电阻与所施加的力的大小成比例地变化(例如,线性地、相反地,二次或其他方式)。如下所述,控制器可以读取触摸传感器内的每个驱动和感测电极对上的电阻值,并且可以将这些电阻值转换为施加到触摸传感器表面的一个或更多个离散力输入的位置和大小。

3.3控制器

输入设备101还包括控制器130,其基于在感测电极和驱动电极对的子集中的感测电极和驱动电极上的测量电阻的变化来检测第一触摸传感器表面上的第一输入,并且基于感测电极和驱动电极对的子集中的感测电极和驱动电极上的测量电阻的变化的大小来确定第一输入的力大小。通常,控制器用于驱动触摸传感器,在扫描周期期间读取驱动电极与感测电极之间的电阻值,将来自触摸传感器的电阻数据转换为触摸传感器表面上的力输入的定位和大小,并且每个扫描周期将这些数据封装在一个触摸图像中,如图1和图3-7所示。控制器还可以在本地执行上述第一方法S100和第二方法S200的块,以将在一个或更多个扫描周期内检测到的在触摸传感器上的输入的定位和/或力大小转换为手势或其他命令,并且将该手势或命令的值输出到本地计算机系统;计算机系统然后可以执行上述第一方法S100和第二方法S200的其他块,以根据该手势或命令操纵虚拟环境内的虚拟对象。

在一个实施方式中,控制器包括:阵列列驱动器(ACD);列切换寄存器(CSR);列驱动源(CDS);阵列行传感器(ARS);行切换寄存器(RSR);和模数转换器(ADC);如美国专利申请第14/499,001号中所述。在该实施方式中,触摸传感器可以包括可变阻抗阵列(VIA),其定义:耦合到ACD的互连阻抗列(IIC)和耦合到ARS的互连阻抗行(IIR)。在电阻扫描期间:ACD可以通过CSR选择IIC,并用CDS电驱动IIC;VIA可以将电流从被驱动的IIC传送到由ARS感测到的IIC;ARS可以选择触摸传感器内的IIR,并通过RSR电感测IIR状态;并且控制器可以对来自ARS的感测的电流/电压信号进行插值,以在单个采样周期内对于电阻扫描周期实现对触摸传感器上的离散力输入的接近度、接触、压力和/或空间定位的基本精确的检测。

3.4光学基准和无线发射机

在图8所示的一个变型中,输入设备101还包括光学发射机140,该光学发射机140耦合到外壳并且被配置为广播可由外部跟踪系统可检测的光信号以确定外壳在真实空间内的位置和取向。特别地,输入设备101可以包括无源或有源光学基准140,诸如红外反射器或光学发射机140,其与外部跟踪系统对接以使得计算机系统能够跟踪输入设备101在真实空间中的位置,如上所述。(可选地,该输入设备101可以包括光学检测器并且可以基于从放置在真实空间中的静态光学发射机接收到的红外或其他光信号来跟踪其在真实空间中的位置和取向,以及然后诸如经由以下所述的无线发射机150将其位置和取向上传到计算机系统。)

在其中输入设备101是与远程计算机系统对接以控制虚拟环境的无线独立手持设备的实施方式中,输入设备101还可以包括无线发射机150(或无线收发机),其被布置在外壳内并且被配置为诸如通过短距离无线通信协议将触摸图像传输到计算机系统,如图8所示。可选地,输入设备101可以连线到计算机系统,并且可以通过有线通信协议基本上实时地将触摸图像上传到计算机系统。如上所述,输入设备101还可以包括一个或更多个运动传感器,诸如加速度计、陀螺仪和/或磁力计,并且可以利用每个触摸图像将运动数据上传到计算机系统;计算机系统然后可以操纵这些传感器数据以随着时间跟踪在真实空间中的输入设备101。

3.5单面式输入设备

在一个变型中,外壳限定矩形主体,并且输入设备101包括在外壳102的一侧上限定平面触摸传感器表面118的单个触摸传感器110。例如,外壳102可以包括直线的注塑成型的主体或机器加工的铝外壳。类似地,输入设备101可以包括集成到人体工程学外壳102中的单个触摸传感器110,如图6所示。

3.6多面式输入设备

在图7所示的另一个变型中,外壳102限定直线主体,并且输入设备101包括两个触摸传感器,其包括第一触摸传感器和第二触摸传感器,该第一触摸传感器限定跨过外壳102的前部(或顶部)的第一平面触摸传感器表面,第二触摸传感器限定跨过外壳102的底部正面(或背面)的与第一触摸传感器表面相对的第二平面触摸传感器表面。在该变型中,第一触摸传感器和第二触摸传感器可以是离散的,其中每个触摸传感器包括其自己的离散基板并且与其自己的专用控制器配对。

在类似的变型中,输入设备101包括一个触摸传感器,其限定了各自横越外壳102的唯一平面的两个触摸传感器表面。例如,输入设备可以包括制造在柔性PCB上的触摸传感器,并且触摸传感器可以被弯曲、折叠或以其它方式形成为三维结构,当被安装在外壳102中时,该三维结构跨越外壳102的两个相对侧(以及一个或更多个中间侧),诸如外壳102的正面和背面(以及一个侧面或两个侧面)。例如,触摸传感器的基板可以包括十字形柔性PCB和电阻层,所述十字形柔性PCB可以被折叠成三维直线结构,并且安装在外壳102的六个平面侧面中的五个上并诸如用粘合剂或机械紧固件固定到外壳102的这些侧面;所述电阻层,诸如以套筒的形式,其然后可以被安装在柔性PCB和外壳102上以完成触摸传感器。覆盖层可以在电阻层上方集成到套筒中,以在外壳102的五个可感测侧面上限定连续的触摸传感器表面。

然后,控制器130、发射机150和电池160可以经由外壳102的第六侧(例如,底部)安装在外壳102中以完成输入设备101。因此,输入设备可以包括一个控制器,该控制器在每个扫描周期输出一个触摸图像,该一个触摸图像表示外壳102的五个可感测侧面上的输入的定位和力大小。因此,计算机系统可以实现跨过外壳102的侧面的感测元件定位的模型,以将二维触摸图像(例如,二维矩阵)划分成三维外壳的每一侧的一个离散触摸图像。此外,在从输入设备101接收到一系列触摸图像时,计算机系统可以执行上述第二方法S200的块,以基于在一系列触摸图像中表示的外壳102的五个可感测侧面上的输入的定位和力大小来识别且表征输入设备101的第六侧面上的输入。然而,触摸传感器可被制造并形成为三维结构,其跨越外壳102的任何其他两个或更多个侧面,以限定跨越外壳102的多个唯一平面的多个触摸传感器表面。

3.6圆柱形输入设备

在图8所示的另一个变型中,外壳132限定圆柱形节段,并且第一触摸传感器表面和第二触摸传感器表面限定跨越外壳102的圆柱形表面的连续的触摸传感器表面。通常,在该变型中,外壳102限定圆柱形节段,并且触摸传感器限定在外壳102的圆柱形节段的全部或一部分上延伸的圆柱形触摸传感器表面。例如,外壳102可以包括在一端或两端开口的刚性圆柱形节段,诸如注塑成型的铝压铸件或挤压铝管。如前述变型中,触摸传感器的基板可以包括柔性PCB;一旦在柔性PCB上图案化驱动和感测电极的阵列,电阻层就可以施加在驱动和感测电极的阵列上,并且可以在电阻层上施加覆盖层以形成封闭的自包含的触摸传感器。触摸传感器然后可以诸如利用粘合剂或机械紧固件缠绕并固定到外壳102。可选地,可以将基板、驱动和感测电极的阵列以及电阻层安装在外壳102上,并且可以将外壳102和触摸传感器组件塞入诸如柔性硅树脂套筒或热收缩管的覆盖套筒中以封闭触摸传感器并将触摸传感器固定到外壳102。类似地,如上所述,电阻层可以集成到覆盖(clover)套筒中。控制器130、发射机150和电池160然后可以安装在外壳102的一个开口端中并且用覆盖物进行封闭以完成输入设备101。

因此,输入设备101可以包括在一个公共基板上制造的多个触摸传感器部分(例如,跨越外壳102的高度的感测元件的列),其可以围绕外壳的多个侧面形成或者跨过外壳的非平面(例如圆柱形)表面形成,并且这些多个触摸传感器部分可以共享一个共同的控制器。

3.7球形输入设备

在图9所示的又一变型中,输入设备101限定球形形式。例如,触摸传感器的基板可以包括柔性PCB和感测元件的阵列,该柔性PCB限定近似三维球体的表面的二维投影的周界;并且感测元件的阵列可以在三维球体的表面的这种二维投影的周界内的柔性基板上被图案化。在该示例中,外壳102可以限定大致球形的刚性结构,并且基板可以折叠并固定到外壳102。在这个示例中,外壳102和基板的背面之间的间隙可以诸如用环氧树脂或氨基甲酸乙酯进行封装,以将基板刚性地安装到外壳102。然后可以将挠性电阻层和覆盖层包覆在基板上以完成触摸传感器。类似地,柔性电阻层可以被包覆并固定到基板,并且覆盖层可以被包覆成形(例如,在硅树脂中)或被粘附在柔性电阻层和基板上以形成基本上连续的球形表面。可选地,如上所述,可以在将触摸传感器安装在外壳102上之前组装电阻层和基板。

在该实施方式中,外壳102还可以包括两个中空的半球形部分,并且输入设备101可以包括两个离散的触摸传感器,诸如:一个触摸传感器,被安装在半球形部分之一上并且限定第一触摸传感器表面;以及第二触摸传感器,被安装在另一个半球形部分上方并且限定第二触摸传感器表面。控制器130、发射机150、电池160和/或其他通信、控制、处理或功率元件然后可以安装在一个或两个半球部分中,并且半球部分可以被组装以形成一个球形输入设备。

然而,输入设备101可以限定任何其他形式,并且可以包括在输入设备101上限定一个或更多个离散的触摸传感器表面的任何其他数量的触摸传感器。

3.8覆盖物

系统100的一个变型还包括套筒170或“覆盖物”,该套筒170或“覆盖物”限定被配置为暂时地接收输入设备101的容器,其限定了超过容器的外表面,并被配置为当输入设备101安装在容器中时将其外表面上的力传递到输入的触摸传感器表面中,如图8和图10所示。通常,在该变型中,系统100可以限定包括输入设备101和可以安装在输入设备101上的一个或更多个覆盖物的套件,以修改输入设备101的有效形状因子。然而,每个覆盖物可以是或包括柔性材料,其将施加到覆盖物的外表面的力传递到输入设备101的触摸传感器表面中,由此使输入设备101中的触摸传感器能够检测施加到覆盖物的外表面的输入,并且尽管在输入设备101的触摸传感器表面与覆盖物的外表面之间存在物理偏移,但是也可以在触摸图像中表示这些输入。例如,覆盖物可以包括限定其中可插入直线型、圆柱形或球形的输入设备的容器的柔性硅树脂、氨基甲酸乙酯、泡沫(例如,硅树脂泡沫、乳胶泡沫)或纺织品(例如皮革)主体。系统100因此可以限定包括输入设备和一组套筒或覆盖物的套件,其中输入设备101可以独立于套筒由用户操作,或者可以插入套件中的各种套筒中的任一个中以改变输入设备101的形式,诸如当用户玩虚拟现实游戏时将输入设备101的形式与虚拟环境内所示的虚拟工具相匹配。

在一个示例中,系统100包括套筒和曲线外部抓握表面,该套筒限定了包括形成用于输入设备101的内部容器的模塑泡沫体的手持人体工程学覆盖物,该曲线外部抓握表面被配置为与人的右手(或左手)配合,如在图8中所示。在另一个示例中,系统100包括限定手枪覆盖物的套筒,该手枪覆盖物包括在低硬度硅树脂中模制为具有握把、枪匣、击铁和扳机、扳机护圈和枪管的手枪形式的主体并且形成用于输入设备101的从枪管近端穿过枪匣、靠近扳机并延伸到握把的内部容器,如图10所示。在该示例中,手枪覆盖物可以将施加到靠近击铁的表面的力传递到输入设备101的一个侧面中;输入设备101可以将该力表示在触摸图像中并将该触摸图像发送给计算机系统;并且计算机系统可以将在触摸图像中表示的该输入的定位映射到虚拟手枪上的虚拟击铁,并且如果这个输入的力大小超过阈值击铁扳机力大小则使虚拟击铁扳开(或者根据在一系列触摸图像上的输入的方向来释放虚拟击铁)。在该示例中,手枪覆盖物还可以将施加到靠近扳机的表面的力传递到输入设备101的相对侧面中;输入设备101可以将该力表示在第二触摸图像中并将该第二触摸图像发送给计算机系统;并且计算机系统可以将在第二触摸图像中表示的该输入的定位映射到虚拟手枪上的虚拟扳机,并且如果这个输入的力大小超过阈值扳机扣动力大小则扣动虚拟环境中的虚拟枪的虚拟扳机。在该示例中,套筒因此可以限定表示虚拟环境内示出的虚拟工具的物理工具的形式。

在又一个示例中,系统100包括套筒,其限定包括具有刚性(例如聚氨酯)插入物172的柔性泡沫体的手持游戏控制器覆盖物,如下所述,其限定了在手持游戏控制器覆盖物的顶部和上部表面上的伪按钮区域(如下所述)、方向键和操纵杆。当输入设备101安装在手持游戏控制器覆盖物中时,当伪按钮区域中的每一个被按压、方向键被枢转或操纵杆被用户操纵时,对应的刚性插入物172可在柔性泡沫体内移动,并且将施加到其上的力传送到输入设备101的触摸传感器表面的对应的区域上。输入设备101可以在触摸图像中表示施加到刚性元件的这种力;并且计算机系统可以将在这些触摸图像中表示的这些输入的定位映射到与这些伪按钮区域、方向键方向和操纵杆位置中的每一个相关联的命令,并且基本上实时地在虚拟环境内相应地执行这些命令。

然而,系统100可以包括限定任何其他形式和任何其他材料的一个或更多个套筒。

如上所述,套筒170的外表面也可以限定伪按钮区域190,诸如图8所示的触觉上表示物理按钮的圆柱形凸出或凹陷。因此,当输入设备101安装在套筒170中并且套筒170上的伪按钮区域被用户的手指按压时,套筒170的主体可以将该输入的力在基本上垂直于触摸传感器表面的方向上传递到输入设备101的触摸传感器,并且输入设备101可以生成表示该输入的力大小和定位的触摸图像。在从输入设备101接收到该触摸图像时,计算机系统可以将触摸图像中表示的输入的定位映射到与伪按钮区域相关联的命令,并且如果在触摸图像中表示的输入的力大小超过物理按钮(例如,物理卡扣按钮)的阈值力大小特性则执行这个命令。例如,输入设备101可以包括对齐特征(例如,突片或磁体),并且套筒170可以限定被配置为与输入设备101的对齐特征配对的对齐接收器(例如,凹槽或铁元件),从而当将输入设备101安装在套筒170的容器中时将输入设备101限制为套筒170内的特定取向。在这个示例中,计算机系统可以实现套筒170上的伪按钮区域的虚拟映射,以将触摸图像中表示的输入和与这样的伪按钮区域相关联的命令相匹配。

在另一个示例中,套筒170可以包括当输入设备101被安装在容器中时延伸到容器中以接触和压下输入设备101的触摸传感器表面的一个或更多个脊部、旋钮或其他基本上刚性的特征。控制器可以通过触摸图像中的这些特征表示施加到触摸传感器表面的力;并且计算机系统可以识别表示这些特征的触摸图像中的值;确定套筒170内的输入设备101的取向,并且将套筒170上的伪按钮区域的虚拟图定位到相应地从输入设备101接收的触摸图像(和随后的触摸图像)。在该示例中,套筒170可以包括基本上唯一的这样的特征的阵列,并且计算机系统还可以基于由从输入设备101接收到的触摸图像中表示的这些特征施加的力的阵列来识别包含输入设备101的套筒的类型。类似地,如在上述示例中,套筒170可以包括用作对齐特征的一个或更多个磁体;输入设备101可以包括分别与这些磁性元件磁性耦合并检测与这些磁性元件的接近度的铁元件和磁场(例如,霍尔效应)传感器对;并且输入设备101或计算机系统可以基于由输入设备101中的每个磁场传感器检测到的磁场的存在来识别安装有输入设备101的套筒170。可选地,套筒170可以包括无线广播标识符(例如,UUID)的RFID标签、通过有线通信协议输出标识符的ID芯片,或者任何其他无线或有线ID机构;输入设备101可以从套筒170收集标识符并将其传递给计算机系统;并且计算机系统可以识别套筒170,且然后基于从套筒170接收到的标识符来实现套筒170上的伪按钮区域的对应的虚拟图以及对应的命令和阈值力大小。此外,计算机系统可以提示用户手动识别输入设备101是否已经安装在套筒170中,和/或各种可用套筒中的哪一个当前正在使用。

如上所述,套筒还可以包括:第一硬度的刚性插入物172;以及小于第一硬度的第二硬度的柔性基板,其插入在容器与刚性插入物172之间、被配置为响应于朝向容器在刚性插入物172上施加力而变形,并且被配置为将施加到刚性插入物172的力传递到第一触摸传感器表面中,如图10所示。通常,套筒170可以包括具有不同刚度(例如硬度)的元件,这些元件协作以使套筒170的表面变形并且将其上的力传递到输入设备101的触摸传感器表面中。例如,套筒可以在套筒170的体积中、在套筒170的外表面和输入设备101上的触摸传感器表面之间仅包括适度柔性的材料(例如,中等硬度的硅树脂),其小于五毫米厚。在这个示例中,套筒170可以在套筒170的体积中、在套筒170的外表面和输入设备101上的触摸传感器表面之间包括在更加柔性的材料(例如,低硬度树脂硅泡沫)之上的适度柔性的材料(例如,中等硬度的硅树脂),其厚度在五毫米和十毫米之间。然而,对于套筒170的体积(在套筒170的表面上的感兴趣的区域(例如,伪按钮区域、用于手枪覆盖物的伪扳机、伪方向键、伪操纵杆等)和输入设备101的触摸传感器表面上的最近区域之间)超过十毫米,套筒170可以包括从套筒170的表面上的感兴趣区域延伸到用于输入设备101的容器的内表面刚性插入物172(例如,高硬度硅树脂束或柱)。可选地,在该实施方式中,套筒170可以包括从套筒170的表面上的感兴趣区域延伸到与容器偏移的深度(例如,两毫米的距离)的刚性插入物172和在刚性插入物172的端部和用于输入设备101的容器之间的柔性体积件(例如,膨胀硅树脂泡沫插入物)。

例如,如图10所示,手持式枪覆盖物可以包括从柔性构件或活动铰链悬挂的刚性扳机。在另一个示例中,手持游戏控制器覆盖物可以包括刚性的伪按钮、刚性的方向键插入物和刚性的操纵杆插入物,其用柔软的硅树脂构件悬挂在覆盖物的主体上。当由握住套筒170和输入设备组件的用户按压或操纵时,刚性插入物172可以将施加的力传递到输入设备101的相邻的触摸传感器中,并且输入设备101可以将该施加的力表示在触摸图像中。然而,套筒可以包括协作以将套筒170的表面上的力传递到输入设备101的一个或更多个触摸传感器中的任何其他刚性或柔性部分、体积或元件。

套筒还可包括无源光学基准或窗口,其与布置在输入设备101上的有源光学基准对齐,以使得外部系统能够在使用时跟踪输入设备101和套筒组件在真实空间中的位置。

3.9带

输入设备101的一个变型还包括从外壳102延伸并且被配置成将外壳102耦合到用户的手的带180。例如,如图8所示,输入设备101可以包括被配置成缠绕用户的手腕的软带。在另一个示例中,带180包括刚性构件,该刚性构件接合用户的前臂和/或手掌,并且用于将输入设备101(和安装的套筒)限制在用户的手掌附近,如图9所示。当佩带时,带180因此能够使用户用他的手释放输入设备101而不会掉落输入设备101;计算机系统因此将触摸传感器上的所有输入的撤回解释为输入设备101的释放,并相应地更新虚拟环境内的虚拟对象或虚拟工具。利用带180将输入设备101保持在用户的指尖处,用户然后可以随后围绕输入设备101闭合他的手,诸如抓握虚拟环境内的虚拟对象或虚拟工具。

4.集成设备

在一个变型中,第一方法S100和/或第二S200由包括计算机系统、数字显示器、布置在数字显示器上的透明(或半透明)触摸传感器表面的单个(例如,单一)设备执行。例如,设备可以包括启用压敏式触摸传感器的平板电脑。在这个变型中,设备可以执行方法的块:跟踪其自己的位置和取向(并且因此跟踪触摸传感器表面的位置和取向);记录触摸传感器表面上力的大小和定位;生成虚拟环境的数字帧,其包括根据计算设备的位置和取向以及触摸传感器表面上的力的定位和大小操纵的虚拟对象的虚拟表面;且基本上实时地在集成数字显示器上渲染这些数字帧。在类似的变型中,该方法由包括计算机系统、触摸传感器表面以及布置在触摸传感器表面上方的数字显示器的单一设备执行。然而,该方法的块可以由任何其他设备或设备的组合来执行。

实施例的系统和方法可以至少部分地被体现和/或被实现为被配置成接收存储了计算机可读指令的计算机可读介质的机器。指令可以通过与应用、小应用程序、主机、服务器、网络、网站、通信服务、通信接口、用户计算机或移动设备的硬件/固件/软件元件、腕表、智能电话或其任何适当的组合而集成的计算机可执行部件来执行。实施例的其它系统和方法可以至少部分地被体现和/或被实现为被配置成接收存储了计算机可读指令的计算机可读介质的机器。指令可以由通过与上述类型的装置和网络集成的计算机可执行部件所集成的计算机可执行部件来执行。计算机可读介质可以存储在任何适当的计算机可读介质上,诸如RAM、ROM、闪速存储器、EEPROM、光学设备(CD或DVD)、硬盘驱动器、软盘驱动器或任何适当的设备。计算机可执行部件可以是处理器,但任何适当的专用硬件设备可以(可选地或附加地)执行指令。

如本领域的技术人员将从先前的详细描述中以及从附图和权利要求中认识到的,在不脱离如在随附的权利要求中所限定的本发明的范围的情况下,可以对本发明做出修改和变化。

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