与环境中的对象进行交互的方法与流程
未命名
08-15
阅读:76
评论:0

1.本发明整体涉及用于与计算机生成的环境中的对象进行交互的方法。
背景技术:
2.计算机生成的环境是其中至少一些显示给用户查看的对象是由计算机生成的环境。用户可以诸如通过移动对象、旋转对象等方式与显示在计算机生成的环境中的对象进行交互。
技术实现要素:
3.本公开中描述的一些实施方案涉及与在计算机生成的环境中的虚拟对象进行交互的方法。本公开中描述的一些实施方案涉及执行对虚拟对象的直接操纵和间接操纵的方法。这些交互提供更高效且直观的用户体验。附图和具体实施方式中提供了对实施方案的全面描述,应当理解,本发明内容不以任何方式限制本公开的范围。
附图说明
4.为了更好地理解各种所述实施方案,应该结合以下附图参考下面的具体实施方式,在附图中,类似的附图标号在所有附图中指示对应的部分。
5.图1示出了根据本公开的一些实施方案的显示计算机生成的环境的电子设备。
6.图2a至图2b示出了根据本公开的一些实施方案的一个或多个设备的示例性架构的框图。
7.图3示出了根据本公开的一些实施方案的显示具有一个或多个虚拟对象的三维环境的方法。
8.图4a至图4d示出了根据本发明的一些实施方案的间接操纵虚拟对象的方法。
9.图5a至图5d示出了根据本发明的一些实施方案的直接操纵虚拟对象的方法。
10.图6a至图6b示出了根据本发明的一些实施方案的移动虚拟对象的方法。
11.图7是示出根据本公开的一些实施方案的操纵虚拟对象的方法的流程图。
12.图8是示出根据本发明的一些实施方案的将虚拟对象移动基于虚拟对象到用户的距离的量的方法的流程图。
具体实施方式
13.在以下对实施方案的描述中将引用附图,附图形成以下描述的一部分并且在附图中以举例方式示出了任选实施的具体实施方案。应当理解,在不脱离所公开的实施方案的范围的情况下,任选地使用其他实施方案并任选地进行结构性变更。
14.人可以在不借助于电子设备的情况下与物理环境或物理世界交互以及/或者感知物理环境或物理世界。物理环境可包括物理特征,诸如物理对象或表面。物理环境的示例是包括物理植物和动物的物理森林。人可以通过各种手段(诸如听觉、视觉、味觉、触觉和嗅
觉)直接感知物理环境以及/或者与物理环境交互。相比之下,人可以使用电子设备与完全或部分模拟的扩展现实(xr)环境交互以及/或者感知该扩展现实环境。该xr环境可以包括混合现实(mr)内容、增强现实(ar)内容、虚拟现实(vr)内容等等。xr环境在本文中通常被称为计算机生成的环境。利用xr系统,人的物理运动或其表示的一些可被跟踪,并且作为响应,能够以符合至少一个物理定律的方式调节在xr环境中模拟的虚拟对象的特征。例如,该xr系统可以检测用户头部的移动,并调节呈现给用户的图形内容和听觉内容(类似于此类视图和声音在物理环境中是如何改变的)。又如,该xr系统可以检测呈现xr环境的电子设备(例如,移动电话、平板电脑、膝上型电脑等)的移动,并调节呈现给用户的图形内容和听觉内容(类似于此类视图和声音在物理环境中是如何改变的)。在一些情形中,该xr系统可以响应于诸如物理运动的表示的其他输入(例如,语音命令)而调节图形内容的特征。
15.许多不同类型的电子设备可以使用户能够与xr环境进行交互以及/或者感测xr环境。示例的非排他性列表包括抬头显示器(hud)、头戴式设备、基于投影的设备、具有集成显示器能力的窗户或车辆挡风玻璃、被形成为透镜以放置在用户眼睛上的显示器(例如,接触镜片)、头戴式耳机/听筒、具有或不具有触觉反馈的输入设备(例如,可穿戴或手持式控制器)、扬声器阵列、智能电话、平板计算机和台式/膝上型计算机。头戴式设备可具有不透明显示器和一个或多个扬声器。其他头戴式设备可被配置为接受不透明外部显示器(例如,智能电话)。头戴式设备可包括用于捕获物理环境的图像或视频的一个或多个图像传感器和/或用于捕获物理环境的音频的一个或多个麦克风。头戴式设备可具有透明或半透明显示器,而不是不透明显示器。透明或半透明显示器可具有媒介,光通过该媒介被引导到用户的眼睛。显示器可利用各种显示技术,例如uled、oled、led、硅基液晶、激光扫描光源、数字光投影或其组合。光波导、光学反射器、全息图媒介、光学组合器及其组合或其他类似技术可用于媒介。在一些具体实施中,透明或半透明显示器可被选择性地控制而变得不透明。基于投影的设备可利用将图形图像投影到用户的视网膜上的视网膜投影技术。投影设备也可以将虚拟对象投影到物理环境中(例如,作为全息图或投影到物理表面上)。
16.图1示出了根据本公开的一些实施方案的可配置为显示计算机生成的环境的电子设备100。在一些实施方案中,电子设备100是便携式设备,诸如平板计算机、膝上型计算机或智能电话。参考图2a至图2b更详细地描述了电子设备100的示例性架构。图1示出了位于物理环境102中的电子设备100和桌子104a。在一些实施方案中,电子设备100被配置为捕获和/或显示物理环境102的包括桌子104a(在电子设备100的视野中示出)的区域。在一些实施方案中,电子设备100被配置为在计算机生成的环境中显示一个或多个虚拟对象,该一个或多个虚拟对象不存在于物理环境102中,而是显示在计算机生成的环境中(例如,定位在或以其他方式锚定到真实世界桌子104a的计算机生成的表示104b的顶表面上)。在图1中,不存在于物理环境中的对象106(例如,虚拟对象)例如任选地响应于检测到物理环境102中的桌子104a的平坦表面而显示在经由设备100显示的计算机生成的环境中的桌子104b的表面上。应当理解,对象106是代表性对象,并且可以在二维或三维计算机生成的环境中包括并且渲染一个或多个不同的对象(例如,具有各种维度的对象,诸如二维或三维对象)。例如,虚拟对象可包括在计算机生成的环境中显示的应用程序或用户界面。另外,应当理解,本文所述的三维(3d)环境(或3d对象)可以是在二维(2d)上下文中显示(例如,在2d显示屏幕上显示)的3d环境(或3d对象)的表示。
17.图2a至图2b示出了根据本公开的一些实施方案的一个或多个设备的架构的示例性框图。图2a中的框可以表示在设备中使用的信息处理装置。在一些实施方案中,设备200为便携式设备,诸如移动电话、智能电话、平板计算机、膝上型计算机、与另一设备通信的辅助设备等。如图2a所示,设备200任选地包括各种传感器(例如,一个或多个手部跟踪传感器202、一个或多个位置传感器204、一个或多个图像传感器206、一个或多个触敏表面209、一个或多个运动和/或取向传感器210、一个或多个眼睛跟踪传感器212、一个或多个麦克风213或其他音频传感器等)、一个或多个显示生成部件214、一个或多个扬声器216、一个或多个处理器218、一个或多个存储器220和/或通信电路222。一个或多个通信总线208任选地用于设备200的上述部件之间的通信。
18.通信电路222任选地包括用于与电子设备、网络(诸如互联网、内联网、有线网络和/或无线网络、蜂窝网络和无线局域网(lan))通信的电路。通信电路222任选地包括用于使用近场通信(nfc)和/或短程通信诸如进行通信的电路。
19.处理器218任选地包括一个或多个通用处理器、一个或多个图形处理器和/或一个或多个数字信号处理器(dsp)。在一些实施方案中,存储器220是存储计算机可读指令的非暂态计算机可读存储介质(例如,闪存存储器、随机存取存储器,或其他易失性或非易失性存储器或存储装置),这些计算机可读指令被配置为由处理器218执行以执行下文所述的技术、过程和/或方法。在一些实施方案中,存储器220包括多于一个非暂态计算机可读存储介质。非暂态计算机可读存储介质可以是可有形地包含或存储计算机可执行指令以供指令执行系统、装置和设备使用或与其结合的任何介质(例如,不包括信号)。在一些实施方案中,存储介质是暂态计算机可读存储介质。在一些实施方案中,存储介质是非暂态计算机可读存储介质。非暂态计算机可读存储介质可包括但不限于磁存储装置、光学存储装置、和/或半导体存储装置。此类存储装置的示例包括磁盘、基于cd、dvd或蓝光技术的光盘,以及持久性固态存储器诸如闪存、固态驱动器等。
20.显示器生成部件214任选地包括单个显示器(例如,液晶显示器(lcd)、有机发光二极管(oled)或其他类型的显示器)。在一些实施方案中,显示生成部件214包括多个显示器。在一些实施方案中,显示生成部件214包括具有触敏表面(例如,触摸屏)、投影仪、全息投影仪、视网膜投影仪等的显示器。
21.在一些实施方案中,设备200包括被配置为接收用户输入(触摸和/或接近输入)(诸如,轻击输入和轻扫输入或其他手势)的触敏表面209。在一些实施方案中,显示生成部件214和触敏表面209一起形成触敏显示器(例如,与设备200集成的触摸屏或在设备200外部与设备200通信的触摸屏)。应当理解,设备200任选地包括或接收来自除触敏表面之外的一个或多个其他物理用户界面设备的输入,诸如物理键盘、鼠标、触控笔和/或操纵杆(或任何其他合适的输入设备)。
22.图像传感器206任选地包括一个或多个可见光图像传感器,诸如电荷耦合器件(ccd)传感器,以及/或者可操作以从真实世界环境获得物理对象的图像的互补金属氧化物半导体(cmos)传感器。图像传感器206任选地包括一个或多个红外(ir)或近红外(nir)传感器,诸如无源或有源ir或nir传感器,以用于检测来自真实世界环境的红外或近红外光。例如,有源ir传感器包括用于将红外光发射到真实世界环境中的ir发射器。图像传感器206任选地包括被配置为捕获真实世界环境中的物理对象的移动的一个或多个相机。图像传感器
206任选地包括被配置为检测物理对象与设备200的距离的一个或多个深度传感器。在一些实施方案中,来自一个或多个深度传感器的信息可以允许设备标识真实世界环境中的对象并且将其与真实世界环境中的其他对象区分开。在一些实施方案中,一个或多个深度传感器可以允许设备确定真实世界环境中的对象的纹理和/或形貌。
23.在一些实施方案中,设备200组合使用ccd传感器、事件相机和深度传感器来检测设备200周围的物理环境。在一些实施方案中,图像传感器206包括第一图像传感器和第二图像传感器。第一图像传感器和第二图像传感器一起工作,并且任选地被配置为捕获真实世界环境中的物理对象的不同信息。在一些实施方案中,第一图像传感器是可见光图像传感器,并且第二图像传感器是深度传感器。在一些实施方案中,设备200使用图像传感器206来检测设备200和/或显示生成部件214在真实世界环境中的位置和取向。例如,设备200使用图像传感器206来跟踪显示生成部件214相对于真实世界环境中的一个或多个固定对象的位置和取向。
24.在一些实施方案中,设备200任选地包括手部跟踪传感器202和/或眼睛跟踪传感器212。手部跟踪传感器202被配置为跟踪相对于计算机生成的环境、相对于显示器生成部件214以及/或者相对于另一坐标系的用户的手部和/或手指的位置/定位,以及/或者用户的手部和/或手指的运动。眼睛跟踪传感器212被配置为跟踪用户的注视(更一般地,眼睛、面部和/或头部)相对于真实世界或计算机生成的环境和/或相对于显示器生成部件214的位置和移动。用户的目光可包括眼睛被引导的方向、任选地与特定点或空间区域的相交点和/或与特定对象的相交点。在一些实施方案中,手部跟踪传感器202和/或眼睛跟踪传感器212与显示生成部件214一起实施(例如,在相同的设备中)。在一些实施方案中,手部跟踪传感器202和/或眼睛跟踪传感器212与显示生成部件214分开实施(例如,在不同的设备中)。
25.在一些实施方案中,手部跟踪传感器202使用从包括一只或多只手的真实世界捕获三维信息的图像传感器206(例如,一个或多个ir相机、3d相机、深度相机等)。在一些示例中,可以用足够的分辨率来分辨手部,以区分手指及其相应的位置。在一些实施方案中,一个或多个图像传感器206相对于用户定位以限定图像传感器的视场和交互空间,在该交互空间中由图像传感器捕获的手指/手部位置、取向和/或移动被用作输入(例如,以与用户的闲置手部或真实世界环境中的其他人的其他手部进行区分)。跟踪用于输入的手指/手部(例如,手势)的有利之处可能在于,手指/手部用于输入提供了不需要用户触摸或握持输入设备的输入方式,并且使用图像传感器允许跟踪而不需要用户在手部/手指上佩戴信标或传感器等。
26.在一些实施方案中,眼睛跟踪传感器212包括一个或多个眼睛跟踪相机(例如,ir相机)和/或向用户的眼睛发射光的照明源(例如,ir光源/led)。眼睛跟踪相机可指向用户的眼睛,以直接或间接地从眼睛接收来自光源的反射光。在一些实施方案中,通过相应的眼睛跟踪相机和照明源单独地跟踪两只眼睛,并且可通过跟踪两只眼睛来确定目光。在一些实施方案中,通过相应的眼睛跟踪相机/照明源来跟踪一只眼睛(例如,主眼)。
27.设备200任选地包括麦克风213或其他音频传感器。设备200使用麦克风213来检测来自用户和/或用户的真实世界环境的声音。在一些实施方案中,麦克风213包括任选地一起操作的麦克风阵列(例如,以标识环境噪声或定位真实世界环境的空间中的声源)。在一些实施方案中,在电子设备的用户允许时,使用一个或多个音频传感器(例如,麦克风)捕获
的音频和/或语音输入可用于与用户界面或计算机生成环境交互。
28.设备200任选地包括被配置为检测设备200和/或显示生成部件214的位置的位置传感器204。例如,位置传感器204任选地包括从一个或多个卫星接收数据并且允许设备200确定该设备在物理世界中的绝对位置的gps接收器。
29.设备200任选地包括被配置为检测设备200和/或显示生成部件214的取向和/或移动的运动和/或取向传感器210。例如,设备200使用取向传感器210来跟踪设备200和/或显示生成部件214的位置和/或取向(例如,相对于真实世界环境中的物理对象)的变化。取向传感器210任选地包括一个或多个陀螺仪、一个或多个加速度计和/或一个或多个惯性测量单元(imu)。
30.应当理解,图2a的架构是示例性架构,但设备200不限于图2a的部件和配置。例如,设备可包括处于相同或不同配置的更少的、附加的或其他的部件。在一些实施方案中,如图2b所示,系统250可以在多个设备之间划分。例如,第一设备260任选地包括处理器218a、一个或多个存储器220a,以及任选地通过通信总线208a进行通信的通信电路222a。第二设备270(例如,对应于设备200)任选地包括各种传感器(例如,一个或多个手部跟踪传感器202、一个或多个位置传感器204、一个或多个图像传感器206、一个或多个触敏表面209、一个或多个运动和/或取向传感器210、一个或多个眼睛跟踪传感器212、一个或多个麦克风213或其他音频传感器等)、一个或多个显示生成部件214、一个或多个扬声器216、一个或多个处理器218b、一个或多个存储器220b和/或通信电路222b。一个或多个通信总线208b任选地用于设备270的上述部件之间的通信。设备260和设备270的部件的细节类似于上文关于设备200所讨论的对应的部件,并且为简洁起见在此不再重复。第一设备260和第二设备270任选地经由两个设备之间的有线或无线连接(例如,经由通信电路222a至222b)进行通信。
31.设备200或系统250通常可以支持可以在计算机生成环境中显示的多种应用程序,诸如以下应用程序中的一者或多者:绘图应用程序、呈现应用程序、文字处理应用程序、网站创建应用程序、盘编辑应用程序、电子表格应用程序、游戏应用程序、电话应用程序、视频会议应用程序、电子邮件应用程序、即时消息应用程序、健身支持应用程序、照片管理应用程序、数字相机应用程序、数字视频相机应用程序、web浏览应用程序、数字音乐播放器应用程序、电视频道浏览应用程序和/或数字视频播放器应用程序。
32.可以使用电子设备(例如,电子设备100、设备200、设备270)来显示计算机生成的环境,包括使用一个或多个显示生成部件。计算机生成环境可任选地包括各种图形用户界面(“gui”)和/或用户界面对象。
33.在一些实施方案中,电子设备可以检测或估计真实世界的照明特性。对照明特性的估计可以提供对环境中的照明的某种理解。例如,对照明特性的估计可以提供真实世界环境的哪些区域是明亮或灰暗的指示。对照明特性的估计可以提供光源(例如,参数光源、定向光源、点光源、区域光源等)的位置和/或光源的取向的指示。在一些实施方案中,照明特性被估计为指示亮度、颜色和/或方向的每个体素的入射光场。例如,照明特性可以被参数化为基于图像的照明(ibl)环境地图。应当理解,照明特性的其他参数化是可能的。在一些示例中,使用具有为每个顶点或每个面定义照明的照明特性的三角形网格在每个像素的基础上估计照明特性。另外,应当理解,对照明特性的估计任选地从中间表示(例如,环境地图)导出。
34.在一些实施方案中,传感器诸如相机(例如,图像传感器206)用于捕获真实世界环境的图像。图像可以由处理电路(一个或多个处理器218)处理以定位和测量光源。在一些实施方案中,可根据环境中的光源的反射和/或由环境中的光源投射的阴影来确定光。在一些实施方案中,深度学习(例如,监督)或其他人工智能或机器学习用于基于输入图像来估计光照特性。
35.如本文所述,可以使用包括一个或多个显示生成部件的电子设备诸如电子设备100或设备200来显示包括各种图形用户界面(“gui”)的计算机生成的环境。计算机生成的环境可包括一个或多个虚拟对象。在一些实施方案中,一个或多个虚拟对象可以与三维环境进行交互或在三维环境中被操纵。例如,用户能够移动或旋转虚拟对象。如下文将进一步详细描述的,与虚拟对象的交互可以是直接的或间接的,并且设备可基于上下文(诸如用户的手部的位置和/或待操纵的虚拟对象的位置)将用户输入自动解译为直接操纵或间接操纵。
36.图3示出了根据本公开的一些实施方案的显示具有一个或多个虚拟对象的三维环境300的方法。在图3a中,电子设备(例如,诸如上述设备100或设备200)正在显示三维环境300。在一些实施方案中,三维环境300包括一个或多个真实世界对象(例如,设备周围的物理环境中的对象的表示)和/或一个或多个虚拟对象(例如,不一定基于设备周围的物理环境中的真实世界对象的由设备生成和显示的对象的表示)。例如,在图3a中,桌子302和图片框304可以是设备周围的物理环境中的真实世界对象的表示。在一些实施方案中,显示生成部件通过捕获桌子302和图片框304的一个或多个图像(例如,在设备周围的物理环境中)并且在三维环境300中分别显示桌子和图片框的表示(例如,照片真实感表示、简化表示、漫画等)来显示桌子302和图片框304。在一些实施方案中,通过不遮挡用户对桌子302和图片框304的观看,桌子302和图片框304由设备经由透明或半透明显示器被动地提供。在图3a中,立方体306是虚拟对象并且被显示在桌子302上的三维环境300中,并且不存在于设备周围的物理环境中。在一些实施方案中,在真实世界对象的表示由设备主动显示和由设备被动显示的两种情况下,虚拟设备可以与真实世界对象的表示进行交互,诸如立方体306被显示为放置在图3中的桌子302的顶部上。
37.在一些实施方案中,桌子302和图片框304是设备周围的环境中的真实世界对象的表示,并且因此可以不由用户经由设备来操纵。例如,因为桌子302存在于设备周围的物理环境中,所以为了移动或以其他方式操纵桌子302,用户可以在设备周围的物理环境中物理地移动或操纵桌子302,以使得桌子302在三维环境300中被移动或操纵。相反,因为立方体306是虚拟对象,所以立方体306可以由设备的用户经由该设备来操纵(例如,无需用户操纵该设备周围的物理世界中的对象),如以下将进一步详细描述的。
38.图4a至图4d示出了根据本发明的一些实施方案的间接操纵虚拟对象的方法。在图4a中,设备(例如,设备100或设备200)经由显示生成部件(包括桌子402上的立方体406)显示三维环境400(例如,类似于三维环境300)。在一些实施方案中,立方体406是类似于以上关于图3描述的立方体306的虚拟对象。图4a两次示出了立方体406,但应当理解,在图的底部附近显示的第二立方体406(例如,靠近手部410)未显示在三维环境400中,并且在图4a中示出是为了示出在执行手势a时手部410与(例如,在桌子402上的)立方体406的距离,如下文将进一步详细描述的。换句话讲,三维环境400不包括立方体406的两个副本(例如,手部
410附近的第二立方体406是桌子402上的立方体406的副本,并且为了说明的目的而显示,并且在图4b至图4d中未示出该副本)。
39.在图4a中,手部410是设备的用户的手部,并且该设备能够跟踪位置并且/或者(例如,经由一个或多个手部跟踪传感器)检测由手部410执行的手势。在一些实施方案中,手部410的表示被显示在三维环境400中,例如,如果手部410被保持在设备前方,则设备可以捕获手部410的图像并且在三维环境中的对应的位置处显示手部410的表示(或者被动地提供手部410的可见性)。在其他实施方案中,手部410可以是物理环境中的真实世界对象,该手部由设备经由透明或半透明显示器通过不遮挡用户对手部的观看而被动地提供。如本文所用,对物理对象诸如手部的引用可以指呈现在显示器上的物理对象的表示,或者如由透明或半透明显示器被动提供的物理对象本身。因此,当用户移动手部410时,手部410的表示相应地在三维环境400中移动。
40.在一些实施方案中,用户能够使用手部410来与三维环境400中的虚拟对象进行交互,就好像用户正在与设备周围的物理环境中的真实世界对象进行交互一样。在一些实施方案中,用户与虚拟对象的交互可被称为直接操纵交互或间接操纵交互。在一些实施方案中,直接操纵交互包括其中用户使用一只或多只手来与虚拟对象进行相交(或进入虚拟对象的阈值距离内)以直接操纵虚拟对象的交互。在一些实施方案中,间接操纵交互包括其中用户使用一只或多只手来操纵虚拟对象而该一只或多只手不与虚拟对象进行相交(或进入距虚拟对象的阈值距离内)的交互。
41.返回到图4a,当注视408指向虚拟对象406时,设备检测到手部410正在执行对应于选择输入(例如,经由一个或多个手部跟踪传感器)的第一手势(例如,“手势a”)。在一些实施方案中,注视408经由一个或多个眼睛跟踪传感器来检测并且能够确定用户的眼睛正在看向或朝向的位置或对象。在图4a中,当手部410执行第一手势时,手部410与立方体406的距离大于阈值距离412。
42.在一些实施方案中,基于手部410在物理世界中的位置与立方体406在物理世界中的桌子402上的对应的位置之间的距离来确定手部410与立方体406之间的距离。例如,立方体406在三维环境400中显示的位置在物理世界中具有对应的位置,并且物理世界中的立方体406的对应的位置与物理世界中的用户的手部410的位置之间的距离用于确定手部410与立方体406之间的距离是否大于阈值距离412。在一些实施方案中,距离可基于手部410在三维环境中的位置与立方体406在三维环境400中的位置之间的距离来确定。例如,手部410的表示被显示在三维环境400中的相应的位置处,并且手部410在三维环境400中的相应的位置与立方体406在三维环境400中的位置之间的距离用于确定手部410与立方体406的距离是否大于阈值距离412。例如,如果手部410被保持在用户前方一英尺处(例如,尚未到达立方体406),并且立方体406距用户6英尺远,则手部410被确定为距手部410五英尺远。在一些实施方案中,阈值距离412可以为1英寸、3英寸、6英寸、1英尺、3英尺等。
43.在一些实施方案中,对应于选择输入的第一手势可以为用户的两根或更多根手指或一只或多只手的捏合手势(例如,手部410的拇指与食指之间的捏合)。在一些实施方案中,对应于选择输入的第一手势可以是通过手部410的手指(例如,手部410的食指)的指向手势或轻击手势。在一些实施方案中,被预先确定为对应于选择输入的任何其他手势是可能的。
44.在一些实施方案中,根据确定在手部410与立方体406的距离大于阈值距离412(例如,任选地与任何虚拟对象的距离大于阈值距离412)时手部410执行选择手势(例如,捏合手势,“手势a”),该设备被配置为处于间接操作模式,在该间接操作模式下,用户输入被引导到虚拟对象,当接收到输入时,用户的注视将指向该虚拟对象。例如,在图4a中,当手部410执行选择输入时,注视408指向立方体406(例如,看向立方体406、聚焦于立方体406等)。因此,在立方体406上执行选择输入(例如,选择立方体406用于操纵)。在一些实施方案中,立方体406保持被选择,同时手部410保持选择手势。当立方体406保持被选择时,手部410的操纵手势使得对立方体406执行操纵操作(例如,任选地执行,即使注视408移动远离立方体406也是如此)。
45.图4b示出了在三维环境400中移动虚拟对象的方法。在图4b中,在保持选择手势时,设备检测到手部410(例如,在“x”轴上)向右移动相应的量414。在一些实施方案中,将手部410向右移动相应的量414对应于手部410以相应角度416的角运动。例如,为了将手部410移动相应的量414,用户将用户的相应的臂枢转相应的角度416。在一些实施方案中,相应的角度416是在从设备的位置向外延伸到手部的先前位置的第一射线与从设备的位置向外延伸到手部的新位置的第二射线之间形成的角度。
46.在图4b中,响应于在保持选择手势时检测到手部410向右移动相应的量414,立方体406类似地在三维环境400中(例如,在“x”轴上)向右移动第二相应的量418。在一些实施方案中,第二相应的量418不同于相应的量414。在一些实施方案中,第二相应的量418是通过缩放因子缩放的相应的量414。在一些实施方案中,缩放因子基于立方体406与用户的距离(例如,立方体406与三维环境400的“相机”的距离、立方体406与三维环境400中与用户相关联的位置的距离和/或用户正在观看三维环境400的位置)。在一些实施方案中,计算第二相应的量418,使得立方体406的角度变化与手部410的角度变化相同。例如,第二相应的角度420(例如,在从设备的位置向外延伸到立方体406的先前位置的第一射线与从设备的位置向外延伸到立方体406的新位置的第二射线之间形成的角度)等于相应的角度416。因此,在一些实施方案中,基于立方体406与用户的距离和手部410与用户的距离(例如,两个距离的比率)来计算第二相应的量414的缩放因子。
47.在一些实施方案中,如下文将进一步详细描述的,立方体406的移动可基于手部410的移动而在任何方向上移动(例如,立方体406展现出六个自由度)。在一些实施方案中,立方体406的移动可基于手部410的移动锁定到一个维度中。例如,如果手部410的初始移动在x方向上(例如,手部410的移动的水平分量大于手部410的移动的其他移动分量,长达第一0.1秒、0.3秒、0.5秒、1秒或第一1cm、3cm、10cm或移动等),则立方体406的移动锁定到仅水平移动(例如,立方体406仅基于立方体406的移动的水平分量水平移动,并且将不竖直地移动或改变深度,即使手部410包括竖直和/或深度移动分量,以及/或者竖直地移动和/或改变深度也是如此),直到选择输入终止。
48.图4c示出了在三维环境400中旋转虚拟对象的方法。在图4c中,在保持选择手势时,设备检测到手部410旋转相应的量422。在一些实施方案中,手部410的旋转在偏航取向上(例如,顺时针,使得手指相对于手腕向右旋转并且手腕相对于手指向左旋转)。在一些实施方案中,手部410的旋转在横滚取向上(例如,手指和手腕保持它们相对于彼此的相应位置,但手部410被旋转以露出手部410的先前面向另一方向的部分(例如,先前被遮挡和/或
背离设备的部分)。在一些实施方案中,不包括侧向移动(例如,水平移动、竖直移动或深度变化)或包括小于阈值量(例如,小于1英寸、小于3英寸、小于6英寸、小于1英尺等)的侧向移动的手部410的旋转(例如,在任何取向上)被解译为旋转立方体406的请求。
49.在图4c中,响应于在保持选择手势时检测到手部410旋转相应的量422,立方体406根据手部410的旋转而旋转第二相应的量424。在一些实施方案中,立方体406以与手部410的旋转相同的取向旋转。例如,如果手部410在偏航取向上旋转,则立方体406在偏航取向上旋转,并且如果手部410在横滚取向上旋转,则立方体406在横滚取向上旋转,等等。在一些实施方案中,立方体406旋转的第二相应的量424与手部410旋转的相应的量422相同。例如,如果手部410执行90度的旋转,则立方体406在相同的方向上旋转90度。
50.在一些实施方案中,立方体406被旋转的第二相应的量424不同于手部410旋转的相应的量422(例如,旋转被抑制或放大)。例如,如果立方体406仅可以被旋转180度(例如,立方体406的属性是立方体406无法被倒置),则立方体406的旋转可被缩放一半(例如,手部410的90度旋转导致立方体406的45度旋转)。在另一示例中,如果立方体406仅可以被旋转180度,则立方体406响应于手部410的180度旋转而旋转180度,但随后立方体406不响应于手部410的进一步旋转而旋转(例如,超过180度)或展现出对手部410的进一步旋转的橡皮筋效应或阻力(例如,当手部410继续旋转时立方体406暂时旋转超过其最大量,但是当旋转和/或输入终止时返回到其最大旋转值)。
51.图4d示出了在三维环境400中朝向用户或远离用户移动虚拟对象的方法。在图4d中,在保持选择手势时,设备检测手部410朝向用户的相应量426的移动(例如,将手部410从延伸位置朝向用户的身体以及/或者朝向设备拉回)。因此,手部410与设备之间的距离减小(例如,z方向移动)。
52.在图4d中,响应于检测到手部410在保持选择手势时向用户和/或设备移动相应量426的移动,立方体406向用户移动(例如,更靠近三维环境400的“相机”)相应的第二量428。在一些实施方案中,立方体406移动的量(例如,第二相应的量428)与手部410的移动量(例如,相应的量426)相同,任选地在与手部410的方向相同的方向上。在一些实施方案中,立方体406移动的量(例如,第二相应的量428)与手部410的移动量(例如,相应的量426)不同,任选地在与手部410的方向相同的方向上。在一些实施方案中,立方体406移动的量基于立方体406与用户的距离和/或手部410与用户的距离。例如,如果立方体406距用户更远,则响应于手部410的相同量的移动,相比于立方体406更靠近用户的情况,立方体406移动更多的量。例如,如果手部410朝向用户(例如,朝向设备、朝向设备的相机)移动6英寸,则如果立方体406远离用户,立方体406可以移动靠近2英尺,但如果立方体406靠近用户,则立方体406可以移动靠近6英寸。
53.在一些实施方案中,当最初接收到选择输入(例如,捏合手势)时,基于立方体406与用户和/或设备的距离与手部410与用户和/或设备的距离之间的比率来缩放立方体406的移动量。例如,如果在接收到选择输入时手部410距用户两英尺远(例如,距用户的眼睛两英尺远、距设备两英尺远、距设备的相机两英尺远),并且立方体406距用户十英尺远(例如,距用户的眼睛十英尺远、距设备十二英尺远、距设备相机十英尺远),则缩放因子为五(例如,立方体406的距离除以手部410的距离)。因此,手部410在z轴上的1英寸的移动(例如,朝向用户或远离用户)导致立方体406在相同方向上的5英寸的移动(例如,朝向用户或远离用
户)。因此,当用户使手部410更靠近用户时,立方体406移动得更靠近用户,使得当手部410到达用户时,立方体406也到达用户。以这种方式,用户能够使用手部410将立方体406从其初始位置带到用户处,而不需要用户多次执行输入。在一些实施方案中,立方体406被带到用户的位置。在一些实施方案中,立方体406被带到手部410的位置,使得立方体406与手部410接触或在距手部410的阈值距离(例如,1英寸、3英寸、6英寸等)内。在一些实施方案中,当立方体406被带到手部410的位置时,用户能够使用手部410执行立方体406的直接操纵,如将在下面参考图5a至图5d和图6a至图6b进一步详细描述的。
54.在一些实施方案中,代替基于(例如,立方体406和/或手部410的)距用户的距离缩放移动,移动基于(例如,立方体406和/或手部410的)距用户前方预先确定的距离的位置(例如,任选地为用户的位置或用户前方的位置的预先确定的参考位置)的距离。例如,参考位置可以为用户的位置、用户的面部的位置、设备的位置(例如,如上文所描述的),或在用户前方3英寸(或用户的面部、或设备)、在用户前方6英寸(或用户的面部,或设备)、1英尺、3英尺等。因此,使用并非恰好是用户位置的参考位置允许用户通过将手部410带到在用户前方与之略微靠近的参考位置而将立方体406从远离用户的位置带到用户和/或手部410处(例如,不需要用户将手部410一直带到用户的位置,这可能是笨拙的手势)。
55.在一些实施方案中,将立方体406的移动的上述缩放应用于朝向用户和远离用户的移动。在一些实施方案中,上述缩放仅应用于朝向用户的移动,并且(例如,在z轴上)远离用户的移动被不同地缩放(例如,随着手部410的移动以1比1缩放)。在一些实施方案中,基于正在被操纵的元素的上下文和/或类型,将上述缩放应用于特定方向上的移动。例如,如果用户正在沿三维环境的设计者不预期的方向移动虚拟对象,则虚拟对象的移动可被抑制(例如,按比例缩小),但如果用户正在沿设计者所预期的方向移动虚拟对象,则虚拟对象的移动可被放大(例如,按比例放大)。因此,缩放因子可以基于移动方向而不同,以向用户提供关于某些移动方向是兼容还是预期的反馈。
56.应当理解,上述虚拟对象的移动不限于一次仅一种类型的操纵或一次在一个轴线上的移动。例如,用户能够在x、y两个方向(例如,如图4b中)和z方向(例如,改变深度,如图4d中)上移动虚拟对象(例如,诸如立方体406),同时旋转虚拟对象(例如,如在图4c中)。因此,设备能够确定手部410的不同移动和/或旋转分量,并且对虚拟对象执行适当的操纵。例如,如果手部410向左移动的同时移动靠近用户(例如,同时保持对立方体406的选择),则设备可以按上文关于图4b所描述的方式向左移动立方体406,同时以关于图4d所描述的方式使立方体406移动靠近用户。类似地,如果手部410在向左移动的同时旋转,则设备可以按上文关于图4b所描述的方式向左移动立方体406,同时按上文关于图4c所描述的方式旋转立方体406。
57.因此,如上所述,当执行间接操纵时,操纵的方向、量值和/或速度可取决于用户的手部的移动的方向、量值和/或速度。例如,在执行移动操纵时,如果用户的手部向右移动,则正在被操纵的虚拟对象向右移动,如果用户的手部向左移动,则虚拟对象向左移动,如果用户的手部向前移动(例如,远离用户),则虚拟对象向前移动(例如,远离用户),等等。类似地,如果手部快速移动,则虚拟对象任选地快速移动,并且如果手部移动缓慢,则虚拟对象任选地缓慢移动。并且如上所述,移动量取决于手部的移动量(例如,如上所述,任选地基于与用户的距离来缩放)。在一些实施方案中,当执行旋转操纵时,旋转方向、量值和/或速度
以类似于上文针对移动操纵所描述的方式取决于用户的手部的旋转方向、旋转量值和/或旋转速度。
58.图5a至图5d示出了根据本发明的一些实施方案的直接操纵虚拟对象的方法。在图5a中,设备正在经由显示生成部件显示包括桌子502上的立方体506的三维环境500(例如,类似于三维环境300和三维环境400)。在一些实施方案中,立方体506是类似于上文关于图3和图4a至图4d描述的立方体306和立方体406的虚拟对象。类似于上文关于图4a所描述的,图5a两次示出了立方体506,但应当理解,在图的底部附近显示的第二立方体506(例如,靠近手部510)未显示在三维环境500中,并且在图5a中示出是为了示出在执行手势a时手部510与(例如,在桌子502上的)立方体506的距离,如下文将进一步详细描述的。换句话讲,三维环境500不包括立方体506的两个副本(例如,手部510附近的第二立方体506是桌子502上的立方体506的副本,并且为了说明的目的而显示,并且在图5b至图5d中未示出该副本)。
59.如上文所讨论的,直接操纵是与虚拟对象的交互,其中用户在操纵虚拟对象时使用一只或多只手来与虚拟对象进行交互。例如,以与抓取物理对象类似的方式抓取虚拟对象并且移动抓取虚拟对象的手部是经由直接操纵来移动虚拟对象的示例。在一些实施方案中,用户是在虚拟对象上执行直接操纵还是间接操纵操作取决于用户的手部是否在距正在被操纵的虚拟对象的阈值距离内。例如,如果用户的手部与虚拟对象接触(例如,用户的手部的至少一部分在物理空间中的某个位置处,使得看起来好像手部的部分与三维环境中的虚拟对象接触或相交),则用户直接与虚拟对象进行交互。在一些实施方案中,如果用户的手部在距待操纵的虚拟对象的阈值距离512内(例如,在1英寸内、在6英寸内、在1英尺内、在3英尺内等),则设备可以将用户的交互解译为直接操纵。在一些实施方案中,当手部510在虚拟对象的阈值距离512内时,用户输入指向虚拟对象。例如,如果手部510在一个虚拟对象的阈值距离512内,则用户的输入被引导到虚拟对象(任选地,不考虑用户的注视是否指向该虚拟对象)。如果手部510在两个虚拟对象的阈值距离512内,则用户的输入可以被引导到更靠近的或更靠近手部510的正在执行输入的部分(例如,如果选择输入是捏合手势则更靠近捏合位置)的虚拟对象或用户的注视所指向的虚拟对象。如果手部510不在任何虚拟对象的阈值距离512内,则设备可以确定用户是否正在执行虚拟对象的间接操纵,如上文关于图4a至图4d所描述的(例如,如果用户的注视指向特定的虚拟对象)。
60.在图5a中,当手部510在立方体506的阈值距离512内时,设备检测到手部510正在执行对应于选择输入的手势(例如,“手势a”、捏合手势、轻击手势、戳手势等)。在一些实施方案中,响应于当在立方体506的阈值距离512内时手部510执行选择输入(并且任选地手部510不在任何其他虚拟对象的阈值距离512内),立方体506被选择用于输入,使得在立方体506上执行另外的用户输入(例如,对象操纵输入等)。在图5a中,立方体506被选择用于输入,但是当选择输入被执行时用户的注视514指向桌子502。因此,在一些实施方案中,用户能够与虚拟对象进行交互,而不需要用户经由对虚拟对象的直接操纵来查看虚拟对象。
61.在图5b中,响应于立方体506被选择用于输入,在一些实施方案中,立方体506被自动地旋转相应的量516,使得立方体506与对象的一个或多个轴线和/或一个或多个表面对准。例如,立方体506的取向被快速移动到最近的轴线,使得立方体506的至少一个边界与x轴(例如,完全水平)、y轴(例如,完全竖直)或z轴(例如,完全平坦)对准。在一些实施方案中,立方体506被自动地快速移动到向上取向(例如,与重力和/或环境中的其他对象对准)。
在一些实施方案中,响应于立方体506被选择用于输入,立方体506被快速移动到与手部510相同的取向。例如,如果手部510以30度角成对角定向(例如,诸如图5b中所示),则立方体506可被快速移动到30度旋转取向。在一些实施方案中,立方体506不响应于被选择用于输入而改变取向,并且保持其在接收到选择输入时所具有的取向(例如,诸如在图5a中)。在一些实施方案中,立方体506被自动地快速移动到桌子502的表面的取向(例如,使得立方体506的底表面与桌子502的顶表面齐平)。
62.图5c示出了在三维环境500中移动虚拟对象的方法。在图5c中,在保持选择手势(例如,保持捏合手势、指向手势、轻击手势等)时,设备检测到手部510(例如,在“x”轴上)向右移动相应的量518。响应于检测到手部510向右移动,设备任选地将立方体506向右移动第二相应的量520。在一些实施方案中,立方体506移动的量与手部510移动的量相同,使得保持立方体506与手部510之间的相对距离和/或相对位置。例如,如果在接收到选择输入时立方体506在手部510前方3英寸,则响应于用户输入(并且任选地在接收到用户输入时),立方体506随着手部510的移动而移动并且保持在手部510前方3英寸。在一些实施方案中,立方体506在x方向和y方向上的移动随着手部510的移动以1比1缩放。因此,在一些实施方案中,立方体506的移动模拟手部510物理地握持并且移动立方体506,其中立方体506以与手部510相同的方向、相同的量并且以相同的速度移动(例如,而在间接操纵期间,相比于手部510的移动立方体506任选地移动地更多或更少,如上文参考图4b所描述的)。在一些实施方案中,立方体506在直接操纵期间的移动不锁定到相应的移动取向并且能够基于手部的移动在任何方向上(例如,6个自由度)移动(例如,而在间接操纵的一些实施方案期间,虚拟对象的移动锁定到一个移动取向(诸如x、y或z轴),并且手部在其他方向上的移动被过滤、忽略,或以其他方式不使虚拟对象在那些其他方向上移动)。
63.图5d示出了在三维环境500中朝向用户或远离用户移动虚拟对象的方法。在图5d中,在保持选择手势(例如,保持捏合手势、指向手势、轻击手势等)时,设备检测到手部510向前移动(例如,在z方向上远离用户和/或设备)相应的量522。响应于检测到手部510移动得更远,设备任选地将立方体506以第二相应的量524移动得更远。在一些实施方案中,立方体506移动的量与手部510移动的量相同,使得保持立方体506与手部510之间的距离和/或相对位置。因此,立方体506与用户和/或设备(例如,远离和朝向用户)的距离的变化任选地随着手部510的移动以1比1缩放(例如,而在间接操纵期间,朝向和/或远离用户的移动任选地不随着手部510的移动以1比1缩放)。
64.在一些实施方案中,在执行立方体506的直接操纵时,手部510在保持选择手势时的旋转使得立方体506也以相同的方式旋转(任选地展现出如上文关于图4c所描述的相同或类似的行为)。
65.因此,如上所述,当用户正在执行虚拟对象的直接操纵时,虚拟对象的移动任选地随着正在执行选择输入的手部的移动以1比1缩放,但是当执行虚拟对象的间接操纵时,虚拟对象的移动不总是随着正在执行选择输入的手部的移动以1比1缩放。在一些实施方案中,旋转输入以相同的量缩放,而不管操纵是直接操纵还是间接操纵。在一些实施方案中,用户是正在执行直接操纵输入还是间接操纵输入是基于当接收到选择输入(例如,选择手势)时用户的手部是否在距虚拟对象的阈值距离内。
66.因此,如上所述,当执行直接操纵时,操纵的方向、量值和/或速度可取决于用户的
手部的移动的方向、量值和/或速度。例如,在执行移动操纵时,如果用户的手部向右移动,则正在被操纵的虚拟对象向右移动,如果用户的手部向左移动,则虚拟对象向左移动,如果用户的手部向前移动(例如,远离用户),则虚拟对象向前移动(例如,远离用户),等等。类似地,如果手部快速移动,则虚拟对象任选地快速移动,并且如果手部移动缓慢,则虚拟对象任选地缓慢移动。并且如上所述,移动量随着手部的移动量以1比1缩放(例如,与按距离成比例缩放相反,如上文在图4a至图4d中所描述的)。在一些实施方案中,当执行旋转操纵时,旋转方向、量值和/或速度以类似于上文针对移动操纵所描述的方式取决于用户的手部的旋转方向、旋转量值和/或旋转速度。
67.图6a至图6b示出了根据本发明的一些实施方案的移动虚拟对象的方法。在图6a中,设备正在经由显示生成部件显示包括桌子602上的立方体606的三维环境600(例如,类似于三维环境300、400和500)。在一些实施方案中,立方体606是类似于以上关于图3、图4a至图4d和图5a至图5d描述的立方体306、406和506的虚拟对象。类似于上文关于图4a和图5a所描述的,图6a两次示出了立方体606,但应当理解,在图的底部附近显示的第二立方体606(例如,靠近手部610)未显示在三维环境600中,并且在图6a中示出是为了示出在执行手势b时手部610与立方体606(例如,在桌子602上)的距离,如下文将进一步详细描述的。换句话讲,三维环境600不包括立方体606的两个副本(例如,手部610附近的第二立方体606是桌子602上的立方体606的副本,并且为了说明的目的而显示,并且在图6b中未示出该副本)。
68.在图6a中,当手部610与立方体606的距离大于阈值距离612时,设备检测到手部610执行相应的手势(例如,“手势b”)。在一些实施方案中,相应的手势包括捏合手势(例如,在手部的拇指与食指之间,或一只或多只手的任何两根或更多根手指之间,诸如上文关于“手势a”所描述的)。在一些实施方案中,相应的手势包括捏合手势,随后是手部610的预先确定的移动和/或旋转,同时保持捏合手势(例如,手势b包括手势a,随后是手部610的相应的移动)。例如,手部610的拖拉手势(例如,手部610的向上旋转,使得手指和/或捏合位置更靠近用户移动以及/或者朝向用户旋转,同时手腕任选地保持其位置)。在一些实施方案中,相应的手势包括捏合手势,随后手部610的移动将手部610带到用户的位置或带到用户前方的预先确定的参考位置,因此将立方体606从远侧位置带到手部610的位置(例如,诸如上文参考图4d所描述的)。在一些实施方案中,相应的手势对应于将立方体606移动到用于直接操纵的位置(例如,移动到与手部610相关联的位置)的请求。在一些实施方案中,因为相应的手势是间接操纵输入(例如,手部610与立方体606的距离大于阈值距离612),所以设备使用注视614来确定用户的输入被引导到立方体606。应当理解,相应的手势可以是被预先确定为与将立方体606移动到用于直接操纵的位置的请求相对应的任何手势(例如,包括但不限于选择可选择选项以将立方体606快速移动到手部610的位置)。
69.在一些实施方案中,响应于在注视615指向立方体606时检测到手部610的相应的手势(例如,手势b),设备将立方体606移动到与手部610相关联的位置,如图6b所示。在一些实施方案中,相应的手势包括捏合手势,并且立方体606被移动到捏合的位置(例如,立方体606的一部分位于捏合的位置处,使得看起来好像手部610正在捏合立方体606的该部分)或移动到距捏合预先确定的距离(例如,1英寸、3英寸、6英寸等)内的位置。因此,在将立方体606移动到捏合的位置之后,用户能够通过保持捏合手势(例如,保持选择输入)并且执行直接操纵手势来执行对立方体606的直接操纵,类似于上文关于图5a至图5d所描述的那些(例
如,侧向移动、向前移动和向后移动、旋转等)。在一些实施方案中,将立方体606移动到捏合的位置允许用户使用直接操纵输入来操纵处于三维环境600中的某个位置的对象,否则该位置将太远而无法使用用户的手部来到达。
70.应当理解,虽然以上附图和描述说明了在特定方向上的移动或在特定方向上的旋转,但这仅仅是示例性的,并且虚拟对象可以针对在任何方向上的移动或旋转表现出相同或类似的行为。例如,虚拟对象可以向左移动并且对用户输入展现出的响应与上文针对向右移动虚拟对象所示出的示例相同。类似地,虚拟对象可按逆时针方式旋转并且对用户输入展现出的响应与上文针对顺时针方式旋转虚拟对象所示出的示例相同。
71.还应当理解,虽然以上附图和描述说明了虚拟对象的操纵,但上述方法可应用于任何类型的用户界面元素或控制元素。例如,可以根据上述直接或间接操纵方法来移动或旋转按钮、滑块、拨号盘、旋钮等。
72.图7是示出根据本公开的一些实施方案的操纵虚拟对象的方法700的流程图。当在上面参考图3a至图3c、图4a至图4b、图5a至图5b和图6a至图6b描述的表面上显示可选择选项时,方法700任选地在电子设备诸如设备100和设备200处执行。方法700中的一些操作任选地被组合(例如,彼此组合或与方法800中的操作组合),以及/或者一些操作的顺序任选地被改变。如下所述,方法700提供根据本公开的实施方案的操纵虚拟世界对象的方法(例如,如上文关于图3至图6b所讨论的)。
73.在一些实施方案中,与显示生成部件(例如,与电子设备集成的显示器(任选地,触摸屏显示器)和/或外部显示器,诸如监视器、投影仪、电视等)和一个或多个输入设备(例如,触摸屏、鼠标(例如,外部)、触控板(任选地,集成或外部)、触摸板(任选地,集成或外部)、远程控制设备(例如,外部)、另一移动设备(例如,与电子设备分开)、手持式设备(例如,外部)、控制器(例如,外部)、相机(例如,可见光相机)、深度传感器和/或运动传感器(例如,手部跟踪传感器、手部运动传感器)等)通信的电子设备(例如,移动设备(例如,平板电脑、智能电话、媒体播放器或可穿戴设备)、计算机等,诸如设备100和/或设备200)经由显示生成部件呈现(702)包括第一用户界面元素的计算机生成的环境,诸如图3中包括立方体306的计算机生成的环境300。
74.在一些实施方案中,在呈现计算机生成的环境时,电子设备接收(704)包括选择输入和操纵输入的多个(例如,一系列)用户输入,诸如手部410执行与图4a中的选择输入相对应的手势(例如,手势a)并且在保持图4b至图4d中的手势时移动手部410。
75.在一些实施方案中,根据确定当接收到选择输入时电子设备的用户的手部的表示在距第一用户界面元素的阈值距离内(诸如手部510在距图5a中的立方体506的阈值距离512内),电子设备根据操纵输入来操纵(706)第一用户界面元素,诸如立方体506根据图5c至图5d中的手部510的移动的移动。在一些实施方案中,操纵第一用户界面包括移动操作、旋转操作、调整大小操作或任何其他合适的操纵操作。在一些实施方案中,阈值距离为1英寸、3英寸、6英寸、1英尺、3英尺等。
76.在一些实施方案中,根据确定当接收到(708)选择输入时电子设备的用户的手部的表示不在距第一用户界面元素的阈值距离内,诸如在图4a中手部410与立方体406的距离大于阈值距离412:根据确定电子设备的用户的注视指向第一用户界面元素,电子设备根据操纵输入来操纵(710)第一用户界面元素,诸如当在图4a中手部410执行选择输入(例如,“手势a”)时注视408指向立方体406,并且在图4b至图4d中根据手部410的移动操纵立方体406,并且根据确定电子设备的用户的注视不指向第一用户界面元素,电子设备放弃(712)根据操纵输入来操纵第一用户界面元素,诸如如果当手部410执行选择输入时注视408不指向立方体406,则立方体406任选地不根据手部410的移动来操纵。在一些实施方案中,如果在接收到选择输入时注视指向另一对象,则根据手部410的移动来操纵另一对象。在一些实施方案中,非虚拟对象是不可操纵的,使得如果注视指向不是虚拟对象的对象(例如,真实世界对象的表示或描绘),则非虚拟对象不根据手部410的移动而被操纵(例如,用户输入被任选地丢弃或忽略,并且/或者向用户指示对象不可操纵的通知被显示)。
77.在一些实施方案中,根据确定当接收到选择输入时电子设备的用户的手部的表示在距第二用户界面元素的阈值距离内,电子设备根据操纵输入来操纵第二用户界面元素。例如,如果用户的手部在任何虚拟对象的阈值距离内,则最靠近手部和/或最靠近手部的捏合点的相应的虚拟对象被选择用于输入(例如,使得手部的后续移动引起相应的虚拟对象的操纵)。
78.在一些实施方案中,根据确定当接收到选择输入时电子设备的用户的手部的表示不在距第二用户界面元素的阈值距离内,根据确定电子设备的用户的注视指向第二用户界面元素,电子设备根据操纵输入来操纵第二用户界面元素,并且根据确定电子设备的用户的注视不指向第二用户界面元素,电子设备放弃根据操纵输入来操纵第二用户界面元素。例如,如果用户的手部不在任何虚拟对象的阈值距离内,则用户的注视所指向的对象是响应于检测到选择输入而被选择用于输入的对象。在一些实施方案中,如果注视指向第一虚拟对象,则第一虚拟对象被选择用于操纵,但如果注视指向第二虚拟对象,则第二虚拟对象被选择用于操纵。如本文所述,确定用户的注视是否指向特定对象或位置是基于一个或多个注视跟踪传感器。在一些实施方案中,如果用户的注视指向映射到(例如,对应于)三维环境中的特定位置的物理世界中的特定位置,则用户的注视被认为指向三维环境中的对应的位置(例如,如果虚拟对象在三维环境中的该对应的位置处,则用户的注视被解译为指向该虚拟对象)。
79.在一些实施方案中,操纵输入包括用户的手部的移动,诸如图4b中手部410的水平移动,以及图4d中朝向用户的移动。在一些实施方案中,根据确定当接收到选择输入时电子设备的用户的手部的表示在距第一用户界面元素的阈值距离内,根据操纵输入来操纵第一用户界面元素包括将第一用户界面元素移动等于用户的手部的移动量的量,诸如立方体506向右移动的量与图5c中的手部510向右移动的量相同。在一些实施方案中,根据确定当接收到选择输入时电子设备的用户的手部的表示不在距第一用户界面元素的阈值距离内,根据操纵输入来操纵第一用户界面元素包括将第一用户界面元素移动不等于用户的手部的移动量的量,诸如立方体406向右移动的量大于图4b中的手部410向右移动的量。
80.在一些实施方案中,响应于接收到选择输入并且在根据操纵输入操纵第一用户界面元素之前,电子设备基于用户的手部的取向改变第一用户界面元素的取向,诸如立方体516快速移动到任选地基于图5b中的手部510的取向的特定取向。在一些实施方案中,立方体516被快速移动到其“向上”取向。在一些实施方案中,立方体516被快速移动到最近的轴线。在一些实施方案中,立方体516被快速移动到与手部510的取向相同的取向(例如,如果手部510成对角保持,则立方体516被快速移动到相同的对角)。
81.在一些实施方案中,操纵输入包括用户的手部的旋转,并且根据操纵输入操纵第一用户界面元素包括旋转第一用户界面元素,诸如根据图4c中的手部410的旋转来旋转立方体406。在一些实施方案中,虚拟对象与手部在相同的方向上旋转并且以相同的量旋转。例如,如果手部在偏航取向上旋转,则虚拟对象在偏航取向上旋转,并且如果手部在俯仰取向上旋转,则虚拟对象在俯仰取向上旋转,等等。类似地,如果手部旋转30度,则虚拟对象任选地旋转30度。在一些实施方案中,用户能够通过在保持选择输入时旋转和移动用户的手部来同时执行旋转和移动操纵。
82.在一些实施方案中,第一用户界面元素包括控制元素,诸如按钮、滑块、拨号盘或任何其他合适的控制元素。在一些实施方案中,响应于根据操纵输入来操纵第一用户界面元素,电子设备执行与控制元素相关联的操作。例如,用户能够以类似于上文关于虚拟对象所描述的方式的方式操纵控制元素,并且操纵控制元素任选地致使执行与控制元素相关联的一个或多个功能。例如,滑动音量滑块可以使音量相应地改变,等等。
83.在一些实施方案中,根据确定当接收到选择输入时用户的手部的表示不在距第一用户界面元素的阈值距离内,并且根据确定多个用户输入包括用户的手部的预先确定的手势,将第一用户界面元素移动到计算机生成的环境中与用户的手部的表示相关联的位置,诸如在图6a中检测对应于将立方体606移动到用于直接操纵的位置的请求(例如,直接操纵的远程请求)的预先确定的手势(例如,“手势b”),将立方体606朝向用户移动,任选地移动到或移动靠近图6b中的手部610的捏合的位置。因此,通过执行特定手势,用户能够使对象移动到(例如,飞向)手部的位置(或者在手部的位置的阈值距离内),使得用户能够对对象执行直接操纵操作。以这种方式,用户可以直接操纵对象,而不借助于间接操纵操作并且不需要用户走向对象。在一些实施方案中,在完成操纵操作之后,诸如在检测到选择输入的终止(例如,捏合手势的终止、手势b的终止以及/或者检测到对应于将虚拟对象返回到其原始位置的请求的另一手势)之后,立方体606在用户输入之前被移动回到其原始位置(任选地保持在由用户握持时执行的操纵,诸如旋转等)。在一些实施方案中,在完成操纵操作之后,诸如在检测到选择输入的终止之后,立方体606保持在它在选择输入被终止时所处的位置处(例如,立方体606不移回到其原始位置,而是位于用户放置它的位置处)。
84.图8是示出根据本发明的一些实施方案的将虚拟对象移动基于虚拟对象到用户的距离的量的方法800的流程图。当在上文参考图3a至图3c、图4a至图4b、图5a至图5b和图6a至图6b描述的表面上显示可选择选项时,方法800任选地在电子设备诸如设备100和设备200处执行。方法800中的一些操作任选地被组合(例如,彼此组合或与方法700中的操作组合),以及/或者一些操作的顺序任选地被改变。如下所述,方法800提供了根据本公开的实施方案的基于虚拟对象与用户的距离(例如,如上文关于图3至图6b所讨论的)将虚拟对象移动一定量的方法。
85.在一些实施方案中,与显示生成部件(例如,与电子设备集成的显示器(任选地,触摸屏显示器)和/或外部显示器,诸如监视器、投影仪、电视等)和一个或多个输入设备(例如,触摸屏、鼠标(例如,外部)、触控板(任选地,集成或外部)、触摸板(任选地,集成或外部)、远程控制设备(例如,外部)、另一移动设备(例如,与电子设备分开)、手持式设备(例如,外部)、控制器(例如,外部)、相机(例如,可见光相机)、深度传感器和/或运动传感器(例如,手部跟踪传感器、手部运动传感器)等)通信的电子设备(例如,移动设备(例如,平板电
脑、智能电话、媒体播放器或可穿戴设备)、计算机等,诸如设备100和/或设备200)经由显示生成部件呈现(802)包括第一用户界面元素的计算机生成的环境,诸如图3中包括立方体306的计算机生成的环境300。
86.在一些实施方案中,在呈现计算机生成的环境时,电子设备接收(804)包括指向第一用户界面元素的移动分量的用户输入,诸如图4b中手部410的向右移动。在一些实施方案中,根据确定电子设备处于第一操纵模式,电子设备根据移动分量将第一用户界面元素移动(806)第一量,诸如在图5c中处于直接操纵模式时将立方体506移动量520。在一些实施方案中,根据确定电子设备处于不同于第一操纵模式的第二操纵模式,电子设备根据移动分量将第一用户界面元素移动(808)大于第一量的第二量,诸如在处于图4b中的间接操纵模式时将立方体406移动量418。
87.在一些实施方案中,第一操纵模式是直接操纵模式,其中当接收到用户输入时,电子设备的用户的手部的表示在第一用户界面元素的阈值距离内,诸如手部510在图5a中的立方体506的阈值距离512内,并且第二操纵模式是间接操纵模式,其中当接收到用户输入时,用户的手部的表示不在第一用户界面元素的阈值距离内,诸如手部410与图4a中的立方体406的距离大于阈值距离412。
88.在一些实施方案中,第一量是与用户输入的移动分量的移动相同的量,诸如在图5c中,并且第二量是与用户输入的移动分量的移动不同的量,诸如在图4b中。
89.在一些实施方案中,第二量是通过缩放因子缩放的用户输入的移动分量的移动量,诸如通过基于图4b中立方体406与用户的距离和/或手部410与用户的距离的缩放因子缩放立方体406的移动。
90.在一些实施方案中,根据确定移动分量的移动是在相对于电子设备的用户的第一方向上,该缩放因子是第一缩放因子,并且根据确定移动分量的移动是在相对于用户的不同于第一方向的第二方向上,该缩放因子是不同于第一缩放因子的第二缩放因子。例如,如果对象正在移动远离用户,则缩放因子任选地不基于对象与用户的距离和/或手部与用户的距离(例如,任选地缩放因子为1),但是如果对象正在朝向用户移动,则缩放因子任选地基于对象与用户的距离和/或手部与用户的距离(例如,任选地缩放因子大于1),诸如在图4d中。
91.在一些实施方案中,第二缩放因子至少基于第一用户界面元素距计算机生成的环境中的预先确定的参考位置(例如,三维环境中对应于电子设备的用户的头部的位置的位置、电子设备的用户的位置、电子设备的位置、在前述任何一项前方1英寸、3英寸、6英寸、1英尺、3英尺)的距离,以及用户的手部的表示与预先确定的参考位置的距离(例如,从三维环境中对应于用户的手部的位置到电子设备的用户的头部的位置的对应位置、电子设备的用户的位置、电子设备的位置、在前述任何一项前方1英寸、3英寸、6英寸、1英尺、3英尺处的距离),如图4b中所描述的。
92.在一些实施方案中,用户输入的移动分量包括平行于电子设备的用户的侧向移动分量(例如,在与用户保持相同距离时的水平移动和/或竖直移动),诸如在图4b中。在一些实施方案中,相对于电子设备的用户的第二量的移动的角度与用户输入的侧向移动分量相对于电子设备的用户的移动角度相同,诸如立方体406向右移动某一量,使得改变角度420与由于手部410的向右移动414而导致的手部410的移动中的改变角度416相同。因此,在一
些实施方案中,用于侧向移动的缩放因子与以下项成比例:对象距用户的距离与手部距用户的距离的比率。
93.出于解释的目的,前面的描述是通过参考具体实施方案来描述的。然而,上面的例示性论述并非旨在是穷尽的或将本发明限制为所公开的精确形式。根据以上教导内容,很多修改形式和变型形式都是可能的。选择和描述实施方案是为了最佳地阐明本发明的原理及其实际应用,以便由此使得本领域的其他技术人员能够最佳地使用具有适合于所构想的特定用途的各种修改的本发明以及各种所描述的实施方案。
技术特征:
1.一种方法,所述方法包括:在与显示器通信的电子设备处:经由所述显示器呈现包括第一用户界面元素的计算机生成的环境;在呈现所述计算机生成的环境时,接收包括选择输入和操纵输入的多个用户输入;根据确定当接收到所述选择输入时所述电子设备的用户的手部在距所述第一用户界面元素的阈值距离内,根据所述操纵输入来操纵所述第一用户界面元素;以及根据确定当接收到所述选择输入时所述电子设备的所述用户的所述手部不在距所述第一用户界面元素的所述阈值距离内:根据确定所述电子设备的所述用户的注视指向所述第一用户界面元素,根据所述操纵输入来操纵所述第一用户界面元素;以及根据确定所述电子设备的所述用户的所述注视不指向所述第一用户界面元素,放弃根据所述操纵输入来操纵所述第一用户界面元素。2.根据权利要求1所述的方法,还包括:根据确定当接收到所述选择输入时所述电子设备的所述用户的所述手部在距第二用户界面元素的所述阈值距离内,根据所述操纵输入来操纵所述第二用户界面元素;以及根据确定当接收到所述选择输入时所述电子设备的所述用户的所述手部不在距所述第二用户界面元素的所述阈值距离内:根据确定所述电子设备的所述用户的所述注视指向所述第二用户界面元素,根据所述操纵输入来操纵所述第二用户界面元素;以及根据确定所述电子设备的所述用户的所述注视不指向所述第二用户界面元素,放弃根据所述操纵输入来操纵所述第二用户界面元素。3.根据权利要求1至2中任一项所述的方法,其中:所述操纵输入包括所述用户的所述手部的移动;根据所述确定当接收到所述选择输入时所述电子设备的所述用户的所述手部在距所述第一用户界面元素的所述阈值距离内,根据所述操纵输入来操纵所述第一用户界面元素包括在所述计算机生成的环境内将所述第一用户界面元素移动近似等于所述用户的所述手部的移动量的量;以及根据所述确定当接收到所述选择输入时所述电子设备的所述用户的所述手部不在距所述第一用户界面元素的所述阈值距离内,根据所述操纵输入来操纵所述第一用户界面元素包括将所述第一用户界面元素移动不等于所述用户的所述手部的所述移动量的量。4.根据权利要求1至3中任一项所述的方法,还包括:响应于接收到所述选择输入并且在根据所述操纵输入来操纵所述第一用户界面元素之前,基于所述用户的所述手部的取向来改变所述第一用户界面元素的取向。5.根据权利要求1至4中任一项所述的方法,其中所述操纵输入包括所述用户的所述手部的旋转,并且根据所述操纵输入来操纵所述第一用户界面元素包括旋转所述第一用户界面元素。6.根据权利要求1至5中任一项所述的方法,其中所述第一用户界面元素包括控制元素,所述方法还包括:响应于根据所述操纵输入来操纵所述第一用户界面元素,执行与所述控制元素相关联
的操作。7.根据权利要求1至6中任一项所述的方法,还包括:根据所述确定当接收到所述选择输入时所述用户的所述手部不在距所述第一用户界面元素的所述阈值距离内,并且根据确定所述多个用户输入包括所述用户的所述手部的预先确定的手势,将所述第一用户界面元素移动到所述计算机生成的环境中与所述用户的所述手部相关联的位置。8.一种电子设备,所述电子设备包括:一个或多个处理器;存储器;和一个或多个程序,其中所述一个或多个程序存储在所述存储器中并且被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行以下操作的指令:经由显示器呈现包括第一用户界面元素的计算机生成的环境;在呈现所述计算机生成的环境时,接收包括选择输入和操纵输入的多个用户输入;根据确定当接收到所述选择输入时所述电子设备的用户的手部在距所述第一用户界面元素的阈值距离内,根据所述操纵输入来操纵所述第一用户界面元素;以及根据确定当接收到所述选择输入时所述电子设备的所述用户的所述手部不在距所述第一用户界面元素的所述阈值距离内:根据确定所述电子设备的所述用户的注视指向所述第一用户界面元素,根据所述操纵输入来操纵所述第一用户界面元素;以及根据确定所述电子设备的所述用户的所述注视不指向所述第一用户界面元素,放弃根据所述操纵输入来操纵所述第一用户界面元素。9.一种存储一个或多个程序的非暂态计算机可读存储介质,所述一个或多个程序包括指令,所述指令在由电子设备的一个或多个处理器执行时,使得所述电子设备:经由显示器呈现包括第一用户界面元素的计算机生成的环境;在呈现所述计算机生成的环境时,接收包括选择输入和操纵输入的多个用户输入;根据确定当接收到所述选择输入时所述电子设备的用户的手部在距所述第一用户界面元素的阈值距离内,根据所述操纵输入来操纵所述第一用户界面元素;以及根据确定当接收到所述选择输入时所述电子设备的所述用户的所述手部不在距所述第一用户界面元素的所述阈值距离内:根据确定所述电子设备的所述用户的注视指向所述第一用户界面元素,根据所述操纵输入来操纵所述第一用户界面元素;以及根据确定所述电子设备的所述用户的所述注视不指向所述第一用户界面元素,放弃根据所述操纵输入来操纵所述第一用户界面元素。10.一种电子设备,所述电子设备包括:一个或多个处理器;存储器;用于经由显示器呈现包括第一用户界面元素的计算机生成的环境的装置;用于在呈现所述计算机生成的环境时,接收包括选择输入和操纵输入的多个用户输入的装置;
用于根据确定当接收到所述选择输入时所述电子设备的用户的手部在距所述第一用户界面元素的阈值距离内,根据所述操纵输入来操纵所述第一用户界面元素的装置;和用于根据确定当接收到所述选择输入时所述电子设备的所述用户的所述手部不在距所述第一用户界面元素的所述阈值距离内而执行以下操作的装置:根据确定所述电子设备的所述用户的注视指向所述第一用户界面元素,根据所述操纵输入来操纵所述第一用户界面元素;以及根据确定所述电子设备的所述用户的所述注视不指向所述第一用户界面元素,放弃根据所述操纵输入来操纵所述第一用户界面元素。11.一种用于在电子设备中使用的信息处理装置,所述信息处理装置包括:用于经由显示器呈现包括第一用户界面元素的计算机生成的环境的装置;用于在呈现所述计算机生成的环境时,接收包括选择输入和操纵输入的多个用户输入的装置;用于根据确定当接收到所述选择输入时所述电子设备的用户的手部在距所述第一用户界面元素的阈值距离内,根据所述操纵输入来操纵所述第一用户界面元素的装置;和用于根据确定当接收到所述选择输入时所述电子设备的所述用户的所述手部不在距所述第一用户界面元素的所述阈值距离内而执行以下操作的装置:根据确定所述电子设备的所述用户的注视指向所述第一用户界面元素,根据所述操纵输入来操纵所述第一用户界面元素;以及根据确定所述电子设备的所述用户的所述注视不指向所述第一用户界面元素,放弃根据所述操纵输入来操纵所述第一用户界面元素。12.一种电子设备,所述电子设备包括:一个或多个处理器;存储器;和一个或多个程序,其中所述一个或多个程序存储在所述存储器中并且被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行根据权利要求1至7所述的方法中的任一种方法的指令。13.一种存储一个或多个程序的非暂态计算机可读存储介质,所述一个或多个程序包括指令,所述指令在由电子设备的一个或多个处理器执行时,使得所述电子设备执行根据权利要求1至7所述的方法中的任一种方法。14.一种电子设备,所述电子设备包括:一个或多个处理器;存储器;和用于执行根据权利要求1至7所述的方法中的任一种方法的装置。15.一种用于在电子设备中使用的信息处理装置,所述信息处理装置包括:用于执行根据权利要求1至7所述的方法中的任一种方法的装置。16.一种方法,所述方法包括:在与显示器通信的电子设备处:经由所述显示器呈现包括第一用户界面元素的计算机生成的环境;在呈现所述计算机生成的环境时,接收包括指向所述第一用户界面元素的移动分量的
用户输入;根据在接收到所述用户输入时基于所述电子设备的用户的手部和所述第一用户界面元素之间的距离确定所述电子设备处于第一操纵模式,根据所述移动分量将所述第一用户界面元素移动第一量;以及根据确定所述电子设备处于不同于所述第一操纵模式的第二操纵模式,根据所述移动分量将所述第一用户界面元素移动大于所述第一量的第二量。17.根据权利要求16所述的方法,其中当接收到所述用户输入时,当所述电子设备的所述用户的所述手部在所述第一用户界面元素的阈值距离内时,所述第一操纵模式是直接操纵模式,并且当接收到所述用户输入时,当所述用户的所述手部不在所述第一用户界面元素的所述阈值距离内时,所述第二操纵模式是间接操纵模式。18.根据权利要求16至17中任一项所述的方法,其中所述第一量是与所述用户输入的所述移动分量的移动近似相同的量,并且所述第二量是与所述用户输入的所述移动分量的所述移动不同的量。19.根据权利要求16至18中任一项所述的方法,其中所述第二量是通过缩放因子缩放的所述用户输入的所述移动分量的移动量。20.根据权利要求19所述的方法,其中:根据确定所述移动分量的所述移动在相对于所述电子设备的所述用户的第一方向上,所述缩放因子是第一缩放因子;并且根据确定所述移动分量的所述移动在相对于所述用户的与所述第一方向不同的第二方向上,所述缩放因子是与所述第一缩放因子不同的第二缩放因子。21.根据权利要求20所述的方法,其中所述第二缩放因子至少基于所述第一用户界面元素与所述计算机生成的环境中的预先确定的参考位置的距离以及所述用户的所述手部与所述预先确定的参考位置的距离。22.根据权利要求16至21中任一项所述的方法,其中:所述用户输入的所述移动分量包括平行于所述电子设备的所述用户的侧向移动分量,并且所述第二量相对于所述电子设备的所述用户的移动角度与所述用户输入的所述侧向移动分量相对于所述电子设备的所述用户的移动角度大致相同。23.一种电子设备,所述电子设备包括:一个或多个处理器;存储器;和一个或多个程序,其中所述一个或多个程序存储在所述存储器中并且被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行以下操作的指令:经由显示器呈现包括第一用户界面元素的计算机生成的环境;在呈现所述计算机生成的环境时,接收包括指向所述第一用户界面元素的移动分量的用户输入;根据在接收到所述用户输入时基于所述电子设备的用户的手部和所述第一用户界面元素之间的距离确定所述电子设备处于第一操纵模式,根据所述移动分量将所述第一用户界面元素移动第一量;以及
根据确定所述电子设备处于不同于所述第一操纵模式的第二操纵模式,根据所述移动分量将所述第一用户界面元素移动大于所述第一量的第二量。24.一种存储一个或多个程序的非暂态计算机可读存储介质,所述一个或多个程序包括指令,所述指令在由电子设备的一个或多个处理器执行时,使得所述电子设备:经由显示器呈现包括第一用户界面元素的计算机生成的环境;在呈现所述计算机生成的环境时,接收包括指向所述第一用户界面元素的移动分量的用户输入;根据在接收到所述用户输入时基于所述电子设备的用户的手部和所述第一用户界面元素之间的距离确定所述电子设备处于第一操纵模式,根据所述移动分量将所述第一用户界面元素移动第一量;以及根据确定所述电子设备处于不同于所述第一操纵模式的第二操纵模式,根据所述移动分量将所述第一用户界面元素移动大于所述第一量的第二量。25.一种电子设备,所述电子设备包括:一个或多个处理器;存储器;用于经由显示器呈现包括第一用户界面元素的计算机生成的环境的装置;用于在呈现所述计算机生成的环境时,接收包括指向所述第一用户界面元素的移动分量的用户输入的装置;用于根据在接收到所述用户输入时基于所述电子设备的用户的手部和所述第一用户界面元素之间的距离确定所述电子设备处于第一操纵模式,根据所述移动分量将所述第一用户界面元素移动第一量的装置;和用于根据确定所述电子设备处于不同于所述第一操纵模式的第二操纵模式,根据所述移动分量将所述第一用户界面元素移动大于所述第一量的第二量的装置。26.一种用于在电子设备中使用的信息处理装置,所述信息处理装置包括:用于经由显示器呈现包括第一用户界面元素的计算机生成的环境的装置;用于在呈现所述计算机生成的环境时,接收包括指向所述第一用户界面元素的移动分量的用户输入的装置;用于根据在接收到所述用户输入时基于所述电子设备的用户的手部和所述第一用户界面元素之间的距离确定所述电子设备处于第一操纵模式,根据所述移动分量将所述第一用户界面元素移动第一量的装置;和用于根据确定所述电子设备处于不同于所述第一操纵模式的第二操纵模式,根据所述移动分量将所述第一用户界面元素移动大于所述第一量的第二量的装置。27.一种电子设备,所述电子设备包括:一个或多个处理器;存储器;和一个或多个程序,其中所述一个或多个程序存储在所述存储器中并且被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行根据权利要求16至22所述的方法中的任一种方法的指令。28.一种存储一个或多个程序的非暂态计算机可读存储介质,所述一个或多个程序包
括指令,所述指令在由电子设备的一个或多个处理器执行时,使得所述电子设备执行根据权利要求16至22所述的方法中的任一种方法。29.一种电子设备,所述电子设备包括:一个或多个处理器;存储器;和用于执行根据权利要求16至22所述的方法中的任一种方法的装置。30.一种用于在电子设备中使用的信息处理装置,所述信息处理装置包括:用于执行根据权利要求16至22所述的方法中的任一种方法的装置。
技术总结
本发明提供了用于与在计算机生成的环境中的对象和用户界面元素进行交互的方法,该方法提供高效且直观的用户体验。在一些实施方案中,用户可以直接或间接地与对象进行交互。在一些实施方案中,当执行间接操纵时,对虚拟对象的操纵被缩放。在一些实施方案中,当执行直接操纵时,对虚拟对象的操纵不被缩放。在一些实施方案中,可通过响应于相应的手势将对象移动到三维环境中的相应位置来将该对象从间接操纵模式重新配置成直接操纵模式。操纵模式重新配置成直接操纵模式。操纵模式重新配置成直接操纵模式。
技术研发人员:A
受保护的技术使用者:苹果公司
技术研发日:2021.09.03
技术公布日:2023/8/14
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
上一篇:镧系及类镧系过渡金属的络合物的制作方法 下一篇:一种车削刀具磨损检测方法与流程