CN118043766A - 用于与三维环境进行交互的设备、方法和图形用户界面 - Google Patents
用于与三维环境进行交互的设备、方法和图形用户界面 Download PDFInfo
- Publication number
- CN118043766A CN118043766A CN202280064271.6A CN202280064271A CN118043766A CN 118043766 A CN118043766 A CN 118043766A CN 202280064271 A CN202280064271 A CN 202280064271A CN 118043766 A CN118043766 A CN 118043766A
- Authority
- CN
- China
- Prior art keywords
- user
- dimensional environment
- user interface
- alert
- representation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims description 311
- 230000033001 locomotion Effects 0.000 claims abstract description 279
- 230000004044 response Effects 0.000 claims description 304
- 230000000007 visual effect Effects 0.000 claims description 147
- 230000008859 change Effects 0.000 claims description 47
- 230000003190 augmentative effect Effects 0.000 claims description 40
- 238000004891 communication Methods 0.000 claims description 33
- 230000006870 function Effects 0.000 claims description 30
- 230000003993 interaction Effects 0.000 claims description 25
- 230000010365 information processing Effects 0.000 claims description 11
- 230000004913 activation Effects 0.000 claims description 7
- 210000003811 finger Anatomy 0.000 description 82
- 230000001976 improved effect Effects 0.000 description 44
- 210000003813 thumb Anatomy 0.000 description 41
- 210000003128 head Anatomy 0.000 description 31
- 238000010586 diagram Methods 0.000 description 27
- 230000008569 process Effects 0.000 description 22
- 210000000707 wrist Anatomy 0.000 description 20
- 230000002452 interceptive effect Effects 0.000 description 16
- 238000012545 processing Methods 0.000 description 15
- 210000004247 hand Anatomy 0.000 description 11
- 238000003384 imaging method Methods 0.000 description 11
- 230000002093 peripheral effect Effects 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 10
- 239000000463 material Substances 0.000 description 10
- 230000003287 optical effect Effects 0.000 description 10
- 230000001953 sensory effect Effects 0.000 description 10
- 210000001747 pupil Anatomy 0.000 description 9
- 230000005484 gravity Effects 0.000 description 8
- 230000036541 health Effects 0.000 description 8
- 230000007704 transition Effects 0.000 description 8
- 230000002829 reductive effect Effects 0.000 description 7
- 238000007654 immersion Methods 0.000 description 6
- 230000003213 activating effect Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000005286 illumination Methods 0.000 description 5
- 230000000670 limiting effect Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000005562 fading Methods 0.000 description 4
- 230000005057 finger movement Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000002085 persistent effect Effects 0.000 description 4
- 239000007787 solid Substances 0.000 description 4
- -1 802.3x Chemical compound 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000004898 kneading Methods 0.000 description 3
- 239000004973 liquid crystal related substance Substances 0.000 description 3
- 239000000047 product Substances 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 230000035807 sensation Effects 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 239000008280 blood Substances 0.000 description 2
- 210000004369 blood Anatomy 0.000 description 2
- 238000013503 de-identification Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 210000000887 face Anatomy 0.000 description 2
- 210000002411 hand bone Anatomy 0.000 description 2
- 230000004886 head movement Effects 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 229910052710 silicon Inorganic materials 0.000 description 2
- 239000010703 silicon Substances 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 239000013589 supplement Substances 0.000 description 2
- WQZGKKKJIJFFOK-GASJEMHNSA-N Glucose Natural products OC[C@H]1OC(O)[C@H](O)[C@@H](O)[C@@H]1O WQZGKKKJIJFFOK-GASJEMHNSA-N 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000002730 additional effect Effects 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- QVGXLLKOCUKJST-UHFFFAOYSA-N atomic oxygen Chemical compound [O] QVGXLLKOCUKJST-UHFFFAOYSA-N 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000036772 blood pressure Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000002772 conduction electron Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 229940079593 drug Drugs 0.000 description 1
- 239000003814 drug Substances 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000005669 field effect Effects 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 239000008103 glucose Substances 0.000 description 1
- 230000001339 gustatory effect Effects 0.000 description 1
- 210000002478 hand joint Anatomy 0.000 description 1
- 210000004932 little finger Anatomy 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 229910052760 oxygen Inorganic materials 0.000 description 1
- 239000001301 oxygen Substances 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000005293 physical law Methods 0.000 description 1
- APTZNLHMIGJTEW-UHFFFAOYSA-N pyraflufen-ethyl Chemical compound C1=C(Cl)C(OCC(=O)OCC)=CC(C=2C(=C(OC(F)F)N(C)N=2)Cl)=C1F APTZNLHMIGJTEW-UHFFFAOYSA-N 0.000 description 1
- 239000002096 quantum dot Substances 0.000 description 1
- 238000002310 reflectometry Methods 0.000 description 1
- 210000001525 retina Anatomy 0.000 description 1
- 230000004270 retinal projection Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000010079 rubber tapping Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 238000009528 vital sign measurement Methods 0.000 description 1
Landscapes
- User Interface Of Digital Computer (AREA)
Abstract
计算机系统在相对于三维环境的第一位置处显示警示,该警示在第一视图中至少部分地与第一对象重叠。该第一位置与该用户具有相应空间关系。该计算机系统检测该用户从第一视点到第二视点的移动。在该第二视点处,该计算机系统根据确定该警示是第一类型的警示,在该三维环境中的第二位置处显示该警示,该第二位置与该用户具有该相应空间关系,并且根据确定该警示是第二类型的警示,从该第二视点显示该三维环境,而不显示与该用户具有该相应空间关系的该警示。
Description
相关专利申请
本专利申请是于2022年9月20日提交的美国专利申请第17/949,117号的继续申请,该美国专利申请要求于2022年9月19日提交的美国临时专利申请第63/408,044号以及于2021年9月24日提交的美国临时专利申请第63/248,375号的优先权,上述各专利申请据此全文以引用方式并入。
技术领域
本公开整体涉及具有显示生成部件和提供计算机生成扩展现实(XR)体验的一个或多个输入设备(包括但不限于经由显示生成部件提供虚拟现实和混合现实体验的电子设备)的计算机系统。
背景技术
近年来,用于虚拟现实、增强现实和扩展现实的计算机系统的发展显著增加。示例性增强现实和扩展现实环境包括至少一些替换或增强物理世界的虚拟元素。用于计算机系统和其他电子计算设备的输入设备(诸如相机、控制器、操纵杆、触敏表面和触摸屏显示器)用于与虚拟/增强/扩展现实环境进行交互。示例性虚拟元素包括虚拟对象(包括数字图像、视频、文本、图标、控制元素(诸如按钮),以及其他图形)。
但用于与包括至少一些虚拟元素的环境(例如,应用程序、增强现实环境、混合现实环境、虚拟现实环境和扩展现实环境等)进行交互的方法和界面麻烦、低效且受限。例如,提供用于执行与虚拟对象相关联的动作的不足反馈的系统、需要一系列输入来在虚拟/增强/扩展现实环境中实现期望结果的系统,以及虚拟对象操纵复杂、繁琐且容易出错的系统,会给用户造成巨大的认知负担,并且减损虚拟/增强/扩展现实环境的体验感。此外,这些方法花费比所需时间更长的时间,从而浪费能量。这后一考虑在电池驱动的设备中是特别重要的。
发明内容
因此,需要具有改进的方法和界面的计算机系统来向用户提供计算机生成的体验,从而使得用户与计算机系统的交互对用户来说更有效且更直观。所公开的系统、方法和用户界面减少或消除了与用于计算机系统的用户界面相关联的上述缺陷和其他问题,这些计算机系统具有显示生成部件和一个或多个输入设备。此类系统、方法和界面任选地补充或替换用于向用户提供扩展现实体验的常规系统、方法和用户界面。此类方法和界面通过帮助用户理解所提供的输入与设备对这些输入的响应之间的联系,减少了来自用户的输入的数量、程度和/或性质,从而形成了更有效的人机界面。
根据一些实施方案,在与第一显示生成部件和一个或多个输入设备通信的计算机系统处执行一种方法。该方法包括经由第一显示生成部件在三维环境的第一视图中显示第一对象。该方法还包括在显示第一对象时,在相对于三维环境的第一位置处显示警示,该警示在第一视图中至少部分地与第一对象重叠,其中第一位置与用户具有相应空间关系。该方法还包括经由一个或多个输入设备检测用户的当前视点从第一视点到第二视点的移动。该方法还包括在用户的当前视点是第二视点时,根据确定该警示是第一类型的警示,在与三维环境中的第一位置不同的三维环境中的第二位置处显示该警示,其中当用户的当前视点是第二视点时,三维环境中的第二位置与用户具有相应空间关系。该方法还包括在用户的当前视点是第二视点时,根据确定该警示是第二类型的警示,从第二视点显示三维环境,而不显示在用户的当前视点是第二视点时与用户具有相应空间关系的警示。
在一些实施方案中,在与第一显示生成部件和一个或多个输入设备通信的计算机系统处执行一种方法。该方法包括经由第一显示生成部件在三维环境的第一视图中显示第一通知的第一表示。该方法还包括在显示第一通知的第一表示时,经由一个或多个输入设备检测用户满足关于第一通知的第一表示的注意力标准。该方法还包括响应于检测到用户满足关于第一通知的第一表示的注意力标准,显示与第一通知的第一表示不同的第一通知的第二表示。该方法还包括在显示第一通知的第二表示之后,检测用户不再满足关于第一通知的相应表示的注意力标准。该方法还包括响应于检测到用户界面对象不再满足关于第一通知的相应表示的注意力标准:根据确定第一通知的相应表示是第一通知的第二表示,停止第一通知的相应表示的显示,并且根据确定第一通知的相应表示是与第一通知的第二表示不同的第一通知的第三表示,保持第一通知的相应表示的显示。
在一些实施方案中,在与第一显示生成部件和一个或多个输入设备通信的计算机系统处执行一种方法。该方法包括经由第一显示生成部件在三维环境的第一视图中显示第一应用程序。该方法还包括在显示第一应用程序时,在三维环境的第一视图中显示第二应用程序的表示。该方法还包括经由一个或多个输入设备检测指向第二应用程序的表示的输入。该方法还包括响应于检测到指向第二应用程序的表示的输入:根据确定该输入是第一类型的输入,将第一应用程序的显示替换为第二应用程序的显示,并且根据确定该输入是第二类型的输入,同时显示第一应用程序和第二应用程序。
在一些实施方案中,在与显示生成部件和一个或多个输入设备通信的计算机系统处执行一种方法。该方法包括经由显示生成部件显示三维环境的第一视图,该第一视图对应于用户的第一视点。该方法还包括在显示三维环境的第一视图时,在三维环境中的第一位置处显示第一用户界面对象,其中第一位置与用户的第一视点具有第一空间关系。该方法还包括在显示包括三维环境中的第一位置处的第一用户界面对象在内的三维环境的第一视图时,检测指向第一用户界面对象的至少第一部分的第一输入。该方法还包括响应于检测到指向第一用户界面对象的至少第一部分的第一输入:在三维环境中的第二位置处显示第二用户界面对象,并且将第一用户界面对象从三维环境中的第一位置移动到第三位置,其中第三位置具有比三维环境中的第一位置距用户的第一视点更大的距离。
在一些实施方案中,在与显示生成部件和一个或多个输入设备通信的计算机系统处执行一种方法。该方法包括在包括第一对象的三维环境的第一视图经由显示生成部件可见时,检测与第一对象相对应的事件。该方法还包括响应于检测到第一事件而显示第二对象,其中第二对象是经由显示生成部件在三维环境中的第一位置处以第一取向显示的虚拟用户界面对象,并且其中在第一位置处以第一取向显示的第二对象面向与三维环境的第一视图相对应的第一视点。该方法还包括在第一位置处以第一取向显示第二对象时,检测将当前视点从第一视点改变到第二视点的第一请求。该方法还包括响应于检测到视点从第一视点到第二视点的改变,其中第二视点相对于第一视点旋转:在与第二视点相对应的三维环境的第二视图中将第二对象从第一位置移动到第二位置;以及将第二对象的取向从第一取向更新到第二取向,其中在第二位置处以第二取向显示的第二对象面向第二视点,并且其中第一位置和取向以及第二位置和取向与第二对象在三维环境中围绕第一对象的至少一部分的弯曲表面上的放置一致。
根据一些实施方案,计算机系统包括以下者或与以下者通信:显示生成部件(例如,显示器、投影仪、头戴式显示器等)、一个或多个输入设备(例如,一个或多个相机、触敏表面、用于检测与触敏表面的接触强度的任选的一个或多个传感器)、任选的一个或多个音频输出部件、任选的一个或多个触觉输出发生器、一个或多个处理器,以及存储一个或多个程序的存储器;一个或多个程序被配置为由一个或多个处理器执行,并且一个或多个程序包括用于执行或引起执行本文所述方法中的任一种方法的操作的指令。根据一些实施方案,非暂态计算机可读存储介质在其中存储有指令,这些指令在被具有显示生成部件、一个或多个输入设备(例如,一个或多个相机、触敏表面、用于检测与触敏表面的接触强度的任选的一个或多个传感器)、任选的一个或多个音频输出部件以及任选的一个或多个触觉输出发生器的计算机系统执行时,使得该设备执行本文所述方法中的任一种方法或使得本文所述方法中的任一种方法的操作被执行。根据一些实施方案,具有显示生成部件、一个或多个输入设备(例如,一个或多个相机、触敏表面、用于检测与触敏表面的接触强度的任选的一个或多个传感器)、任选的一个或多个音频输出部件、任选的一个或多个触觉输出发生器、存储器和用于执行存储在存储器中的一个或多个程序的一个或多个处理器的计算机系统上的图形用户界面包括在本文所述方法中的任一种方法中所显示的元素中的一个或多个元素,该一个或多个元素响应于输入而被更新,如本文所述方法中的任一种方法所描述的。根据一些实施方案,计算机系统包括:显示生成部件、一个或多个输入设备(例如,一个或多个相机、触敏表面、用于检测与触敏表面的接触强度的任选的一个或多个传感器)、任选的一个或多个音频输出部件以及任选的一个或多个触觉输出发生器;以及用于执行或导致执行本文所述的方法中的任一种方法的操作的装置。根据一些实施方案,用于具有显示生成部件、一个或多个输入设备(例如,一个或多个相机、触敏表面、用于检测与触敏表面的接触强度的任选的一个或多个传感器)、任选的一个或多个音频输出部件以及任选的一个或多个触觉输出发生器的计算机系统中的信息处理装置包括用于执行本文所述方法中的任一种方法的操作或使得本文所述方法中的任一种方法的操作被执行的装置。
因此,为具有显示生成部件的计算机系统提供了改进的方法和界面,以用于与三维环境进行交互并且有利于用户在与三维环境进行交互时使用计算机系统,从而提高此类计算机系统的有效性、效率,以及用户安全性和满意度。此类方法和界面可以补充或替换用于与三维环境进行交互并且有利于用户在与三维环境进行交互时使用计算机系统的常规方法。
需注意,上述各种实施方案可与本文所述任何其他实施方案相结合。本说明书中描述的特征和优点并不全面,具体来说,根据附图、说明书和权利要求书,许多另外的特征和优点对本领域的普通技术人员将是显而易见的。此外,应当指出,出于可读性和指导性目的,在原则上选择了本说明书中使用的语言,并且可以不这样选择以描绘或界定本发明的主题。
附图说明
为了更好地理解各种所述实施方案,应结合以下附图参考下面的具体实施方式,其中类似的附图标号在所有附图中指示对应的部分。
图1是示出根据一些实施方案的用于提供扩展现实(XR)体验的计算机系统的操作环境的框图。
图2是示出根据一些实施方案的计算机系统的被配置为管理和协调用户的XR体验的控制器的框图。
图3是示出根据一些实施方案的计算机系统的被配置为向用户提供XR体验的视觉组成部分的显示生成部件的框图。
图4是示出根据一些实施方案的计算机系统的被配置为捕获用户的手势输入的手部跟踪单元的框图。
图5是示出根据一些实施方案的计算机系统的被配置为捕获用户的注视输入的眼睛跟踪单元的框图。
图6是示出根据一些实施方案的闪光辅助的注视跟踪流水线的流程图。
图7A至图7H是示出根据一些实施方案的将警示的表示与三维环境中显示的用户界面对象同时显示的框图。
图7D和图7I至图7L是示出根据一些实施方案的处于多个状态的警示的表示的框图。
图7M至图7O是示出根据一些实施方案的从所显示的应用程序图标打开应用程序的框图。
图7P至图7W是示出根据一些实施方案的通过第一用户界面对象导航到第二用户界面对象的框图。
图7X至图7AE是示出根据一些实施方案的在根据用户的视点的移动更新三维环境的视图的同时与三维环境中的对象相关联地显示虚拟对象的框图。
图8是根据一些实施方案的在用户在物理环境中四处移动时改变某些类型的警示的显示位置的方法的流程图。
图9是根据一些实施方案的根据用户关注相应通知来显示具有不同特性的通知的方法的流程图。
图10是根据一些实施方案的确定是打开应用程序以替换当前显示的应用程序窗口在三维环境中的显示,还是打开应用程序以与当前显示的应用程序窗口同时显示的方法的流程图。
图11是根据一些实施方案的通过第一用户界面对象导航到第二用户界面对象的方法的流程图。
图12是根据一些实施方案的在根据用户的视点的移动更新三维环境的视图的同时与三维环境中的对象相关联地显示虚拟对象的方法的流程图。
具体实施方式
根据一些实施方案,本公开涉及用于向用户提供计算机生成扩展现实(XR)体验的用户界面。
本文所述的系统、方法和GUI以多种方式改进与虚拟/增强现实环境进行的用户界面交互。
在一些实施方案中,计算机系统在相对于三维环境的第一位置处显示警示,该警示在第一视图中至少部分地与第一对象重叠。根据一些实施方案,响应于用户转身离开第一对象,如果该警示是第一类型的警示(例如,系统警示),则该警示被显示在远离该对象的位置处(例如,在如用户转身前相对于用户的当前视点的相同相对位置处),并且如果该警示是第二类型的警示(例如,对象警示和/或应用程序警示),则该警示不被显示在远离该对象的位置处。
在一些实施方案中,计算机系统根据用户关注相应通知来显示具有不同特性的通知。在第一状态下显示第一通知时,计算机系统检测到用户已经关注处于第一状态的第一通知(例如,满足关于第一通知的注意力标准)。响应于检测到用户已经关注处于第一状态的第一通知,计算机系统在与第一状态不同的第二状态下显示第一通知。计算机系统检测到用户不再关注第一通知(处于任何状态),并且计算机系统根据确定当前在第二状态下显示第一通知而停止相应表示的显示,并且根据确定在第三状态下显示第一通知而保持相应表示的显示。
在一些实施方案中,计算机系统在三维环境的第一视图中显示第一应用程序。在显示第一应用程序时,计算机系统在三维环境的第一视图中显示第二应用程序的表示,诸如通知或应用程序图标。计算机系统检测指向第二应用程序的表示的输入,并且基于输入的类型,计算机系统以不同的方式显示第二应用程序。例如,响应于检测到指向第二应用程序的表示的输入,计算机系统根据确定该输入是第一类型的输入,将第一应用程序的显示替换为第二应用程序的显示,并且根据确定该输入是第二类型的输入,同时显示第一应用程序和第二应用程序。
计算机系统在显示与用户的第一视点相对应的三维环境的第一视图时在三维环境中与用户的第一视点具有第一空间关系的第一位置处显示第一用户界面对象。在显示包括三维环境中的第一位置处的第一用户界面对象在内的三维环境的第一视图时,计算机系统响应于检测到指向第一用户界面对象的至少第一部分的第一输入,在三维环境中的第二位置处显示第二用户界面对象,并且将第一用户界面对象从三维环境中的第一位置移动到第三位置,该第三位置具有比三维环境中的第一位置距用户的第一视点更大的距离。
响应于检测到用户的视点从第一视点到第二视点的改变,计算机系统在与第二视点相对应的三维环境的更新视图中将响应于与第一对象相关联的事件而显示的第二对象从第一位置移动到第二位置,并且将第二对象的取向从第一取向更新到第二取向,其中以第一位置和取向显示的第二对象面向第一视点并且以第二位置和取向显示的第二对象面向第二视点,并且其中第一位置和取向以及第二位置和取向与第二对象在三维环境中围绕第一对象的至少一部分的弯曲表面上的放置一致。
图1至图6提供了对用于向用户提供XR体验的示例性计算机系统的描述。图7A至图7AE中的用户界面分别用于示出图8至图12中的过程。
下文所述的过程通过各种技术增强了设备的可操作性并且使用户-设备界面更有效(例如,通过帮助用户提供适当的输入并减少操作设备/与设备交互时的用户错误),包括通过向用户提供改进的视觉、听觉和/或触觉反馈、减少执行操作所需的输入的数量、提供附加控制选项而不使用户界面因为附加的显示的控件变得杂乱、在一组条件已经被满足时执行操作而无需进一步的用户输入和/或附加的技术。这些技术还通过使用户能够更快且更有效地使用设备而减少了电力使用并延长了设备的电池寿命。
在一些实施方案中,如图1中所示,经由包括计算机系统101的操作环境100向用户提供XR体验。计算机系统101包括控制器110(例如,便携式电子设备的处理器或远程服务器)、显示生成部件120(例如,头戴式设备(HMD)、显示器、投影仪、触摸屏等)、一个或多个输入设备125(例如,眼睛跟踪设备130、手部跟踪设备140、其他输入设备150)、一个或多个输出设备155(例如,扬声器160、触觉输出发生器170和其他输出设备180)、一个或多个传感器190(例如,图像传感器、光传感器、深度传感器、触觉传感器、取向传感器、接近传感器、温度传感器、位置传感器、运动传感器、速度传感器等),以及任选地一个或多个外围设备195(例如,家用电器、可穿戴设备等)。在一些实施方案中,输入设备125、输出设备155、传感器190和外围设备195中的一者或多者与显示生成部件120集成(例如,在头戴式设备或手持式设备中)。
在描述XR体验时,各种术语用于区别地指代用户可以感测并且/或者用户可以与其进行交互(例如,利用由生成XR体验的计算机系统101检测到的输入进行交互,这些输入使得生成XR体验的计算机系统生成与提供给计算机系统101的各种输入对应的音频、视觉和/或触觉反馈)的若干相关但不同的环境。以下是这些术语的子集:
物理环境:物理环境是指人们在没有电子系统帮助的情况下能够感测和/或交互的物理世界。物理环境诸如物理公园包括物理物品,诸如物理树木、物理建筑物和物理人。人们能够诸如通过视觉、触觉、听觉、味觉和嗅觉来直接感测物理环境和/或与物理环境交互。
扩展现实:相反,扩展现实(XR)环境是指人们经由电子系统感知和/或交互的完全或部分模拟的环境。在XR中,跟踪人的物理运动的子集或其表示,并且作为响应,以符合至少一个物理定律的方式调节在XR环境中模拟的一个或多个虚拟对象的一个或多个特征。例如,XR系统可以检测人的头部转动,并且作为响应,以与此类视图和声音在物理环境中变化的方式类似的方式调节呈现给人的图形内容和声场。在一些情况下(例如,出于可达性原因),对XR环境中虚拟对象的特征的调节可以响应于物理运动的表示(例如,声音命令)来进行。人可以利用其感觉中的任一者来感测XR对象和/或与XR对象交互,包括视觉、听觉、触觉、味觉和嗅觉。例如,人可以感测音频对象和/或与音频对象交互,该音频对象创建3D或空间音频环境,该3D或空间音频环境提供3D空间中点音频源的感知。又如,音频对象可以使能音频透明度,该音频透明度在有或者没有计算机生成的音频的情况下选择性地引入来自物理环境的环境声音。在某些XR环境中,人可以感测和/或只与音频对象交互。
XR的示例包括虚拟现实和混合现实。
虚拟现实:虚拟现实(VR)环境是指被设计成对于一个或多个感官完全基于计算机生成的感官输入的模拟环境。VR环境包括人可以感测和/或交互的多个虚拟对象。例如,树木、建筑物和代表人的化身的计算机生成的图像是虚拟对象的示例。人可以通过在计算机生成的环境内人的存在的模拟和/或通过在计算机生成的环境内人的物理移动的一个子组的模拟来感测和/或与VR环境中的虚拟对象交互。
混合现实:与被设计成完全基于计算机生成的感官输入的VR环境相比,混合现实(MR)环境是指被设计成除了包括计算机生成的感官输入(例如,虚拟对象)之外还引入来自物理环境的感官输入或其表示的模拟环境。在虚拟连续体上,混合现实环境是完全物理环境作为一端和虚拟现实环境作为另一端之间的任何状况,但不包括这两端。在一些MR环境中,计算机生成的感官输入可以对来自物理环境的感官输入的变化进行响应。另外,用于呈现MR环境的一些电子系统可以跟踪相对于物理环境的位置和/或取向,以使虚拟对象能够与真实对象(即,来自物理环境的物理物品或其表示)交互。例如,系统可以导致移动使得虚拟树木相对于物理地面看起来是静止的。
混合现实的示例包括增强现实和增强虚拟。
增强现实:增强现实(AR)环境是指其中一个或多个虚拟对象叠加在物理环境或物理环境的表示上方的模拟环境。例如,用于呈现AR环境的电子系统可具有透明或半透明显示器,人可以透过该显示器直接查看物理环境。该系统可以被配置为在透明或半透明显示器上呈现虚拟对象,使得人利用该系统感知叠加在物理环境之上的虚拟对象。另选地,系统可以具有不透明显示器和一个或多个成像传感器,该成像传感器捕获物理环境的图像或视频,这些图像或视频是物理环境的表示。系统将图像或视频与虚拟对象组合,并在不透明显示器上呈现组合物。人利用系统经由物理环境的图像或视频而间接地查看物理环境,并且感知叠加在物理环境之上的虚拟对象。如本文所用,在不透明显示器上显示的物理环境的视频被称为“透传视频”,意味着系统使用一个或多个图像传感器捕获物理环境的图像,并且在不透明显示器上呈现AR环境时使用那些图像。进一步另选地,系统可以具有投影系统,该投影系统将虚拟对象投射到物理环境中,例如作为全息图或者在物理表面上,使得人利用该系统感知叠加在物理环境之上的虚拟对象。增强现实环境也是指其中物理环境的表示被计算机生成的感官信息进行转换的模拟环境。例如,在提供透传视频中,系统可以对一个或多个传感器图像进行转换以施加与成像传感器所捕获的视角不同的选择视角(例如,视点)。又如,物理环境的表示可以通过图形地修改(例如,放大)其部分而进行转换,使得经修改部分可以是原始捕获图像的代表性的但不是真实的版本。再如,物理环境的表示可以通过以图形方式消除其部分或将其部分进行模糊处理而进行转换。
增强虚拟:增强虚拟(AV)环境是指其中虚拟环境或计算机生成环境结合了来自物理环境的一项或多项感官输入的模拟环境。感官输入可以是物理环境的一个或多个特性的表示。例如,AV公园可以具有虚拟树木和虚拟建筑物,但人的脸部是从对物理人拍摄的图像逼真再现的。又如,虚拟对象可以采用一个或多个成像传感器所成像的物理物品的形状或颜色。再如,虚拟对象可以采用符合太阳在物理环境中的定位的阴影。
硬件:有许多不同类型的电子系统使人能够感测各种XR环境和/或与各种CGR环境进行交互。示例包括头戴式系统、基于投影的系统、平视显示器(HUD)、集成有显示能力的车辆挡风玻璃、集成有显示能力的窗户、被形成为被设计用于放置在人眼睛上的透镜的显示器(例如,类似于隐形眼镜)、耳机/听筒、扬声器阵列、输入系统(例如,具有或没有触觉反馈的可穿戴或手持控制器)、智能电话、平板电脑、和台式/膝上型计算机。头戴式系统可以具有一个或多个扬声器和集成的不透明显示器。另选地,头戴式系统可以被配置成接受外部不透明显示器(例如,智能电话)。头戴式系统可以结合用于捕获物理环境的图像或视频的一个或多个成像传感器、和/或用于捕获物理环境的音频的一个或多个麦克风。头戴式系统可以具有透明或半透明显示器,而不是不透明显示器。透明或半透明显示器可以具有媒介,代表图像的光通过该媒介被引导到人的眼睛。显示器可以利用数字光投影、OLED、LED、uLED、硅基液晶、激光扫描光源或这些技术的任意组合。媒介可以是光学波导、全息图媒介、光学组合器、光学反射器、或它们的任意组合。在一个实施方案中,透明或半透明显示器可被配置为选择性地变得不透明。基于投影的系统可以采用将图形图像投影到人的视网膜上的视网膜投影技术。投影系统也可以被配置为将虚拟对象投影到物理环境中,例如作为全息图或在物理表面上。在一些实施方案中,控制器110被配置为管理和协调用户的XR体验。在一些实施方案中,控制器110包括软件、固件和/或硬件的合适组合。下文参考图2更详细地描述控制器110。在一些实施方案中,控制器110是相对于场景105(例如,物理设置/环境)处于本地或远程位置的计算设备。例如,控制器110是位于场景105内的本地服务器。又如,控制器110是位于场景105之外的远程服务器(例如,云服务器、中央服务器等)。在一些实施方案中,控制器110经由一个或多个有线或无线通信通道144(例如,蓝牙、IEEE 802.11x、IEEE 802.16x、IEEE 802.3x等)与显示生成部件120(例如,HMD、显示器、投影仪、触摸屏等)通信地耦接。在另一个示例中,控制器110包括在显示生成部件120(例如,HMD或包括显示器和一个或多个处理器的便携式电子设备等)、输入设备125中的一个或多个输入设备、输出设备155中的一个或多个输出设备、传感器190中的一个或多个传感器和/或外围装设备195中的一个或多个外围装设备的壳体(例如,物理外壳)内,或者与上述设备中的一者或多者共享相同的物理壳体或支撑结构。
在一些实施方案中,显示生成部件120被配置为向用户提供XR体验(例如,至少XR体验的视觉组成部分)。在一些实施方案中,显示生成部件120包括软件、固件和/或硬件的合适组合。下文相对于图3更详细地描述了显示生成部件120。在一些实施方案中,控制器110的功能由显示生成部件120提供和/或与该显示生成部件组合。
根据一些实施方案,当用户虚拟地和/或物理地存在于场景105内时,显示生成部件120向用户提供XR体验。
在一些实施方案中,显示生成部件穿戴在用户身体的一部分上(例如,他/她的头部上、他/她的手部上等)。这样,显示生成部件120包括被提供用于显示XR内容的一个或多个XR显示器。例如,在各种实施方案中,显示生成部件120包围用户的视场。在一些实施方案中,显示生成部件120是被配置为呈现XR内容的手持式设备(诸如智能电话或平板电脑),并且用户握持具有朝向用户的视场的显示器和朝向场景105的相机的设备。在一些实施方案中,手持式设备被任选地放置在穿戴在用户的头部上的壳体内。在一些实施方案中,手持式设备被任选地放置在用户前面的支撑件(例如,三脚架)上。在一些实施方案中,显示生成部件120是被配置为呈现XR内容的XR室、壳体或房间,其中用户不穿戴或握持显示生成部件120。参考用于显示XR内容的一种类型的硬件(例如,手持式设备或三脚架上的设备)描述的许多用户界面可以在用于显示XR内容的另一种类型的硬件(例如,HMD或其他可穿戴计算设备)上实现。例如,示出基于发生在手持式设备或三脚架安装的设备前面的空间中的交互而触发的与XR内容的交互的用户界面可以类似地用HMD来实现,其中交互发生在HMD前面的空间中,并且对XR内容的响应经由HMD来显示。类似地,示出基于手持式设备或三脚架安装的设备相对于物理环境(例如,场景105或用户身体的一部分(例如,用户的眼睛、头部或手部))的移动而触发的与XR内容的交互的用户界面可以类似地用HMD来实现,其中移动是由HMD相对于物理环境(例如,场景105或用户身体的一部分(例如,用户的眼睛、头部或手部))的移动引起的。
尽管在图1中示出了操作环境100的相关特征,但本领域的普通技术人员将从本公开中认识到,为了简洁起见并且为了不模糊本文所公开的示例性实施方案的更多相关方面,未示出各种其他特征。
图2是根据一些实施方案的控制器110的示例的框图。尽管示出了一些具体特征,但本领域的技术人员将从本公开中认识到,为简洁起见并且为了不使本文所公开的实施方案的更多相关方面晦涩难懂,未示出各种其他特征。为此,作为非限制性示例,在一些实施方案中,控制器110包括一个或多个处理单元202(例如,微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、图形处理单元(GPU)、中央处理单元(CPU)、处理内核等)、一个或多个输入/输出(I/O)设备206、一个或多个通信接口208(例如,通用串行总线(USB)、IEEE802.3x、IEEE 802.11x、IEEE 802.16x、全球移动通信系统(GSM)、码分多址(CDMA)、时分多址(TDMA)、全球定位系统(GPS)、红外(IR)、蓝牙、ZIGBEE以及/或者类似类型的接口)、一个或多个编程(例如,I/O)接口210、存储器220以及用于互连这些部件和各种其他部件的一条或多条通信总线204。
在一些实施方案中,一条或多条通信总线204包括互连和控制系统部件之间的通信的电路。在一些实施方案中,一个或多个I/O设备206包括键盘、鼠标、触摸板、操纵杆、一个或多个麦克风、一个或多个扬声器、一个或多个图像传感器、一个或多个显示器等中的至少一种。
存储器220包括高速随机存取存储器,诸如动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、双倍数据速率随机存取存储器(DDR RAM)或者其他随机存取固态存储器设备。在一些实施方案中,存储器220包括非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存存储器设备或其他非易失性固态存储设备。存储器220任选地包括远离所述一个或多个处理单元202定位的一个或多个存储设备。存储器220包括非暂态计算机可读存储介质。在一些实施方案中,存储器220或者存储器220的非暂态计算机可读存储介质存储下述程序、模块和数据结构或者它们的子集,其中包括任选的操作系统230和XR体验模块240。
操作系统230包括用于处理各种基础系统服务和用于执行硬件相关任务的指令。在一些实施方案中,XR体验模块240被配置为管理和协调一个或多个用户的单重或多重XR体验(例如,一个或多个用户的单重XR体验,或一个或多个用户的相应群组的多重XR体验)。为此,在各种实施方案中,XR体验模块240包括数据获取单元242、跟踪单元244、协调单元246和数据传输单元248。
在一些实施方案中,数据获取单元242被配置为从图1的至少显示生成部件120,以及任选地从输入设备125、输出设备155、传感器190和/或外围设备195中的一者或多者获取数据(例如,呈现数据、交互数据、传感器数据、位置数据等)。出于该目的,在各种实施方案中,数据获取单元242包括指令和/或用于指令的逻辑以及启发法和用于启发法的元数据。
在一些实施方案中,跟踪单元244被配置为映射场景105,并且跟踪至少显示生成部件120相对于图1的场景105的定位/位置,以及任选地跟踪输入设备125、输出设备155、传感器190和/或外围设备195中的一者或多者的位置。出于该目的,在各种实施方案中,跟踪单元244包括指令和/或用于指令的逻辑以及启发法和用于启发法的元数据。在一些实施方案中,跟踪单元244包括手部跟踪单元245和/或眼睛跟踪单元243。在一些实施方案中,手部跟踪单元245被配置为跟踪用户的手部的一个或多个部分的定位/位置,和/或用户的手部的一个或多个部分相对于图1的场景105的、相对于显示生成部件120和/或相对于坐标系(该坐标系是相对于用户的手部定义的)的运动。下文相对于图4更详细地描述了手部跟踪单元245。在一些实施方案中,眼睛跟踪单元243被配置为跟踪用户注视(或更广泛地,用户的眼睛、面部或头部)相对于场景105(例如,相对于物理环境和/或相对于用户(例如,用户的手部))或相对于经由显示生成部件120显示的XR内容的定位或移动。下文相对于图5更详细地描述了眼睛跟踪单元243。
在一些实施方案中,协调单元246被配置为管理和协调由显示生成部件120,以及任选地由输出设备155和/或外围装设备195中的一者或多者呈现给用户的XR体验。出于该目的,在各种实施方案中,协调单元246包括指令和/或用于指令的逻辑以及启发法和用于启发法的元数据。
在一些实施方案中,数据传输单元248被配置为将数据(例如,呈现数据、位置数据等)传输到至少显示生成部件120,并且任选地传输到输入设备125、输出设备155、传感器190和/或外围设备195中的一者或多者。出于该目的,在各种实施方案中,数据传输单元248包括指令和/或用于指令的逻辑以及启发法和用于启发法的元数据。
尽管数据获取单元242、跟踪单元244(例如,包括眼睛跟踪单元243和手部跟踪单元245)、协调单元246和数据传输单元248被示为驻留在单个设备(例如,控制器110)上,但应当理解,在其他实施方案中,数据获取单元242、跟踪单元244(例如,包括眼睛跟踪单元243和手部跟踪单元245)、协调单元246和数据传输单元248的任何组合可位于单独计算设备中。
此外,图2更多地用作可以存在于特定具体实施中的各种特征的功能描述,与本文所述的实施方案的结构示意图不同。如本领域的普通技术人员将认识到的,单独显示的项目可以组合,并且一些项目可以分开。例如,图2中单独示出的一些功能模块可在单个模块中实现,并且单个功能块的各种功能可在各种实施方案中通过一个或多个功能块来实现。模块的实际数量和特定功能的划分以及如何在其中分配特征将根据具体实施而变化,并且在一些实施方案中,部分地取决于为特定具体实施选择的硬件、软件和/或固件的特定组合。
图3是根据一些实施方案的显示生成部件120的示例的框图。尽管示出了一些具体特征,但本领域的技术人员将从本公开中认识到,为简洁起见并且为了不使本文所公开的实施方案的更多相关方面晦涩难懂,未示出各种其他特征。出于所述目的,作为非限制性示例,在一些实施方案中,HMD 120包括一个或多个处理单元302(例如,微处理器、ASIC、FPGA、GPU、CPU、处理核心等)、一个或多个输入/输出(I/O)设备及传感器306、一个或多个通信接口308(例如,USB、FIREWIRE、THUNDERBOLT、IEEE 802.3x、IEEE 802.11x、IEEE 802.16x、GSM、CDMA、TDMA、GPS、IR、BLUETOOTH、ZIGBEE以及/或者类似类型的接口)、一个或多个编程(例如,I/O)接口310、一个或多个XR显示器312、一个或多个任选的面向内部并且/或者面向外部的图像传感器314、存储器320以及用于互连这些部件和各种其他部件的一条或多条通信总线304。
在一些实施方案中,一条或多条通信总线304包括用于互连和控制各系统部件之间的通信的电路。在一些实施方案中,一个或多个I/O设备及传感器306包括惯性测量单元(IMU)、加速度计、陀螺仪、温度计、一个或多个生理传感器(例如,血压监测仪、心率监测仪、血液氧传感器、血糖传感器等)、一个或多个传声器、一个或多个扬声器、触觉引擎以及/或者一个或多个深度传感器(例如,结构光、飞行时间等)等。
在一些实施方案中,一个或多个XR显示器312被配置为向用户提供XR体验。在一些实施方案中,一个或多个XR显示器312对应于全息、数字光处理(DLP)、液晶显示器(LCD)、硅上液晶(LCoS)、有机发光场效应晶体管(OLET)、有机发光二极管(OLED)、表面传导电子发射显示器(SED)、场发射显示器(FED)、量子点发光二极管(QD-LED)、微机电系统(MEMS)以及/或者类似的显示器类型。在一些实施方案中,一个或多个XR显示器312对应于衍射、反射、偏振、全息等波导显示器。例如,HMD 120包括单个XR显示器。在另一示例中,HMD 120包括针对用户的每只眼睛的XR显示器。在一些实施方案中,一个或多个XR显示器312能够呈现MR和VR内容。在一些实施方案中,一个或多个XR显示器312能够呈现MR或VR内容。
在一些实施方案中,一个或多个图像传感器314被配置为获取与用户面部的包括用户的眼睛的至少一部分对应的图像数据(并且可被称为眼睛跟踪相机)。在一些实施方案中,一个或多个图像传感器314被配置为获取与用户的手部以及任选地用户的手臂的至少一部分对应的图像数据(并且可被称为手部跟踪相机)。在一些实施方案中,一个或多个图像传感器314被配置为面向前方,以便获取与在不存在HMD 120的情况下用户将会看到的场景对应的图像数据(并且可被称为场景相机)。一个或多个任选的图像传感器314可包括一个或多个RGB相机(例如,具有互补金属氧化物半导体(CMOS)图像传感器或电荷耦合器件(CCD)图像传感器)、一个或多个红外(IR)相机和/或一个或多个基于事件的相机等。
存储器320包括高速随机存取存储器,诸如DRAM、SRAM、DDR RAM或其他随机存取固态存储器设备。在一些实施方案中,存储器320包括非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存存储器设备或其他非易失性固态存储设备。存储器320任选地包括远离一个或多个处理单元302定位的一个或多个存储设备。存储器320包括非暂态计算机可读存储介质。在一些实施方案中,存储器320或者存储器320的非暂态计算机可读存储介质存储下述程序、模块和数据结构或者它们的子集,其中包括任选的操作系统330和XR呈现模块340。
操作系统330包括用于处理各种基础系统服务和用于执行硬件相关任务的过程。在一些实施方案中,XR呈现模块340被配置为经由一个或多个XR显示器312向用户呈现XR内容。出于所述目的,在各种实施方案中,XR呈现模块340包括数据获取单元342、XR呈现单元344、XR映射生成单元346和数据传输单元348。
在一些实施方案中,数据获取单元342被配置为至少从图1的控制器110获取数据(例如,呈现数据、交互数据、传感器数据、位置数据等)。出于所述目的,在各种实施方案中,数据获取单元342包括指令以及/或者用于指令的逻辑以及启发法和用于启发法的元数据。
在一些实施方案中,XR呈现单元344被配置为经由一个或多个XR显示器312呈现XR内容。出于所述目的,在各种实施方案中,XR呈现单元344包括指令以及/或者用于指令的逻辑以及启发法和用于启发法的元数据。
在一些实施方案中,XR映射生成单元346被配置为基于媒体内容数据来生成XR映射图(例如,混合现实场景的3D映射图或可以在其中放置计算机生成对象来生成扩展现实的物理环境的映射图)。出于所述目的,在各种实施方案中,XR映射生成单元346包括指令以及/或者用于该指令的逻辑以及启发法和用于该启发法的元数据。
在一些实施方案中,数据传输单元348被配置为将数据(例如,呈现数据、位置数据等)传输到至少控制器110,以及任选地输入设备125、输出设备155、传感器190和/或外围设备195中的一者或多者。出于所述目的,在各种实施方案中,数据传输单元348包括指令以及/或者用于指令的逻辑以及启发法和用于启发法的元数据。
尽管数据获取单元342、XR呈现单元344、XR映射生成单元346和数据传输单元348被示出为驻留在单个设备(例如,图1的显示生成部件120)上,但应当理解,在其他实施方案中,数据获取单元342、XR呈现单元344、XR映射生成单元346和数据传输单元348的任何组合可位于单独计算设备中。
此外,图3更多地用作可能存在于特定实施方案中的各种特征的功能描述,与本文所述的实施方案的结构示意图不同。如本领域的普通技术人员将认识到的,单独显示的项目可以组合,并且一些项目可以分开。例如,图3中单独示出的一些功能模块可在单个模块中实现,并且单个功能块的各种功能可在各种实施方案中通过一个或多个功能块来实现。模块的实际数量和特定功能的划分以及如何在其中分配特征将根据具体实施而变化,并且在一些实施方案中,部分地取决于为特定具体实施选择的硬件、软件和/或固件的特定组合。
图4是手部跟踪设备140的示例性实施方案的示意性图解。在一些实施方案中,手部跟踪设备140(图1)由手部跟踪单元245控制(图2)来跟踪用户的手部的一个或多个部分的定位/位置,和/或用户的手部的一个或多个部分相对于图1的场景105(例如,相对于用户周围的物理环境的一部分、相对于显示生成部件120,或者相对于用户的一部分(例如,用户的面部、眼睛或头部),和/或相对于坐标系(该坐标系是相对于用户的手部定义的))的运动。在一些实施方案中,手部跟踪设备140是显示生成部件120的一部分(例如,嵌入头戴式设备中或附接到头戴式设备)。在一些实施方案中,手部跟踪设备140与显示生成部件120分开(例如,位于单独的外壳中或者附接到单独的物理支撑结构)。
在一些实施方案中,手部跟踪设备140包括捕获至少包括人类用户的手部406的三维场景信息的图像传感器404(例如,一个或多个IR相机、3D相机、深度相机和/或彩色相机等)。图像传感器404以足够的分辨率捕获手部图像,以使手指及其相应位置能够被区分。图像传感器404通常捕获用户身体的其他部分、还或可能捕获身体的所有部分的图像,并且可以具有缩放能力或具有增大放大率的专用传感器以用期望分辨率捕获手部的图像。在一些实施方案中,图像传感器404还捕获手部406的2D彩色视频图像和场景的其他元素。在一些实施方案中,图像传感器404与其他图像传感器结合使用以捕获场景105的物理环境,或者用作捕获场景105的物理环境的图像传感器。在一些实施方案中,以将图像传感器404或其一部分的视场用于限定交互空间的方式相对于用户或用户的环境定位图像传感器,在该交互空间中,由图像传感器捕获的手部移动被视为到控制器110的输入。
在一些实施方案中,图像传感器404将包含3D映射数据(以及此外,可能的彩色图像数据)的帧序列输出到控制器110,该控制器从映射数据提取高级信息。该高级信息通常经由应用程序接口(API)提供给在控制器上运行的应用程序,该应用程序相应地驱动显示生成部件120。例如,用户可以通过移动他的手部408并改变他的手部姿势来与在控制器110上运行的软件交互。
在一些实施方案中,图像传感器404将斑点图案投影到包含手部406的场景上并且捕获所投影图案的图像。在一些实施方案中,控制器110基于图案中斑点的横向偏移来通过三角测量计算场景中的点(包括用户的手部的表面上的点)的3D坐标。这种方法是有利的,因为该方法不需要用户握持或穿戴任何种类的信标、传感器或其他标记。该方法给出了场景中的点在距图像传感器404的特定距离处相对于预先确定的参考平面的深度坐标。在本公开中,假设图像传感器404限定x轴、y轴、z轴的正交集合,使得场景中的点的深度坐标对应于由图像传感器测量的z分量。另选地,手部跟踪设备440可基于单个或多个相机或其他类型的传感器而使用其他3D映射方法,诸如立体成像或飞行时间测量。
在一些实施方案中,手部跟踪设备140在用户移动他的手部(例如,整个手部或一根或多根手指)时捕获并处理包含用户的手部的深度映射图的时间序列。在图像传感器404和/或控制器110中的处理器上运行的软件处理3D映射数据以提取这些深度映射图中手部的图像块描述符。软件可基于先前的学习过程将这些描述符与存储在数据库408中的图像块描述符匹配,以便估计每个帧中手部的位姿。位姿通常包括用户的手部关节和手指尖端的3D位置。
软件还可以分析手部和/或手指在序列中的多个帧上的轨迹以识别手势。本文所述的位姿估计功能可以与运动跟踪功能交替,使得每两个(或更多个)帧仅执行一次基于图像块的位姿估计,而跟踪用于找到在剩余帧上发生的位姿的变化。经由上述API向在控制器110上运行的应用程序提供位姿、运动和手势信息。该程序可以例如响应于位姿和/或手势信息而移动和修改呈现在显示生成部件120上的图像,或者执行其他功能。
在一些实施方案中,软件可以例如通过网络以电子形式下载到控制器110,或者可以另选地在有形非暂态介质诸如光学、磁性或电子存储器介质上提供。在一些实施方案中,数据库408同样存储在与控制器110相关联的存储器中。另选地或除此之外,计算机的所描述的功能中的一些或全部可以在专用硬件(诸如,定制或半定制集成电路或可编程数字信号处理器(DSP))中实现。尽管在图4中示出了控制器110,但是举例来说,作为与图像传感器440分开的单元,控制器的处理功能中一些或全部可以由合适的微处理器和软件或由手部跟踪设备402的外壳内的专用电路或与图像传感器404相关联的其他设备执行。在一些实施方案中,这些处理功能中的至少一些可由与显示生成部件120(例如,在电视接收机、手持式设备或头戴式设备中)集成或与任何其他合适的计算机化设备(诸如,游戏控制台或媒体播放器)集成的合适处理器执行。图像传感器404的感测功能同样可以集成到将由传感器输出控制的计算机或其他计算机化装置中。
图4还包括根据一些实施方案的由图像传感器404捕获的深度映射图410的示意图。如上所述,深度图包括具有相应深度值的像素的矩阵。与手部406对应的像素412已经从该映射图中的背景和手腕分割出来。深度映射图410内的每个像素的亮度与其深度值(即,测量的距图像传感器404的z距离)成反比,其中灰色阴影随着深度的增加而变得更暗。控制器110处理这些深度值以便识别和分割图像的具有人类手部特征的组成部分(即,一组相邻像素)。这些特征可包括例如总体大小、形状和从深度映射图序列中的帧到帧的运动。
图4还示意性地示出了根据一些实施方案的控制器110最终从手部406的深度映射图410提取的手部骨骼414。在图4中,骨骼414叠加在已经从原始深度映射图分割出来的手部背景416上。在一些实施方案中,手部的以及任选地在连接到手部的手腕或手臂上的关键特征点(例如,与指关节、手指尖端、手掌中心、手部的连接到手腕的端部等对应的点)被识别并位于手部骨骼414上。在一些实施方案中,控制器110使用这些关键特征点在多个图像帧上的位置和移动来根据一些实施方案确定由手部执行的手势或手部的当前状态。
图5示出了眼睛跟踪设备130(图1)的示例性实施方案。在一些实施方案中,眼睛跟踪设备130由眼睛跟踪单元243(图2)控制来跟踪用户注视相对于场景105或相对于经由显示生成部件120显示的XR内容的定位和移动。在一些实施方案中,眼睛跟踪设备130与显示生成部件120集成。例如,在一些实施方案中,当显示生成部件120是头戴式设备(诸如,头戴式耳机、头盔、护目镜或眼镜)或放置在可穿戴框架中的手持式设备时,该头戴式设备包括生成XR内容以供用户观看的部件以及用于跟踪用户相对于XR内容的注视的部件两者。在一些实施方案中,眼睛跟踪设备130与显示生成部件120分开。例如,当显示生成部件是手持式设备或XR室时,眼睛跟踪设备130任选地是与手持式设备或XR室分开的设备。在一些实施方案中,眼睛跟踪设备130是头戴式设备或头戴式设备的一部分。在一些实施方案中,头戴式眼睛跟踪设备130任选地与也是头戴式的显示生成部件或不是头戴式的显示生成部件结合使用。在一些实施方案中,眼睛跟踪设备130不是头戴式设备,并且任选地与头戴式显示生成部件结合使用。在一些实施方案中,眼睛跟踪设备130不是头戴式设备,并且任选地是非头戴式显示生成部件的一部分。
在一些实施方案中,显示生成部件120使用显示机构(例如,左近眼显示面板和右近眼显示面板)来在用户眼睛前面显示包括左图像和右图像的帧,从而向用户提供3D虚拟视图。例如,头戴式显示生成部件可包括位于显示器和用户眼睛之间的左光学透镜和右光学透镜(在本文中被称为眼睛透镜)。在一些实施方案中,显示生成部件可包括或耦接到一个或多个外部摄像机,该一个或多个外部摄像机捕获用户的环境的视频以用于显示。在一些实施方案中,头戴式显示生成部件可具有透明或半透明显示器,并且在该透明或半透明显示器上显示虚拟对象,用户可以透过该透明或半透明显示器直接观看物理环境。在一些实施方案中,显示生成部件将虚拟对象投影到物理环境中。虚拟对象可例如被投影在物理表面上或作为全息图被投影,使得个体使用系统观察叠加在物理环境上方的虚拟对象。在这种情况下,可能不需要用于左眼和右眼的单独的显示面板和图像帧。
如图5中所示,在一些实施方案中,注视跟踪设备130包括至少一个眼睛跟踪相机(例如,红外(IR)或近红外(NIR)相机),以及朝向用户眼睛发射光(例如,IR或NIR光)的照明源(例如,IR或NIR光源,诸如LED的阵列或环)。眼睛跟踪相机可指向用户眼睛以接收光源直接从眼睛反射的IR或NIR光,或者另选地可指向位于用户眼睛和显示面板之间的“热”镜,这些热镜将来自眼睛的IR或NIR光反射到眼睛跟踪相机,同时允许可见光通过。注视跟踪设备130任选地捕获用户眼睛的图像(例如,作为以每秒60帧-120帧(fps)捕获的视频流),分析这些图像以生成注视跟踪信息,并将注视跟踪信息传送到控制器110。在一些实施方案中,用户的两只眼睛通过相应的眼睛跟踪相机和照明源来单独地跟踪。在一些实施方案中,通过相应的眼睛跟踪相机和照明源来跟踪用户的仅一只眼睛。
在一些实施方案中,使用设备特定的校准过程来校准眼睛跟踪设备130以确定用于特定操作环境100的眼睛跟踪设备的参数,例如LED、相机、热镜(如果存在的话)、眼睛透镜和显示屏的3D几何关系和参数。在将AR/VR装备递送给终端用户之前,可以在工厂或另一个设施处执行设备特定的校准过程。设备特定的校准过程可以是自动校准过程或手动校准过程。根据一些实施方案,用户特定的校准过程可以包括对特定用户的眼睛参数的估计,例如瞳孔位置、中央凹位置、光轴、视轴、眼睛间距等。根据一些实施方案,一旦针对眼睛跟踪设备130确定了设备特定参数和用户特定参数,就可以使用闪光辅助方法来处理由眼睛跟踪相机捕获的图像,以确定当前视轴和用户相对于显示器的注视点。
如图5中所示,眼睛跟踪设备130(例如,130A或130B)包括眼睛透镜520和注视跟踪系统,该注视跟踪系统包括定位在用户面部的被执行眼睛跟踪的一侧上的至少一个眼睛跟踪相机540(例如,红外(IR)或近红外(NIR)相机),以及朝向用户眼睛592发射光(例如,IR或NIR光)的照明源530(例如,IR或NIR光源,诸如NIR发光二极管(LED)的阵列或环)。眼睛跟踪相机540可指向位于用户眼睛592和显示器510(例如,头戴式显示器的左显示器面板或右显示器面板,或者手持式设备的显示器、投影仪等)之间的镜子550(这些镜子反射来自眼睛592的IR或NIR光,同时允许可见光通过)(例如,如图5的顶部部分所示),或者另选地可指向用户眼睛592以接收来自眼睛592的反射IR或NIR光(例如,如图5的底部部分所示)。
在一些实施方案中,控制器110渲染AR或VR帧562(例如,用于左显示面板和右显示面板的左帧和右帧)并且将帧562提供给显示器510。控制器110将来自眼睛跟踪相机540的注视跟踪输入542用于各种目的,例如用于处理帧562以用于显示。控制器110任选地基于使用闪光辅助方法或其他合适的方法从眼睛跟踪相机540获取的注视跟踪输入542来估计用户在显示器510上的注视点。根据注视跟踪输入542估计的注视点任选地用于确定用户当前正在看向的方向。
以下描述了用户当前注视方向的几种可能的使用案例,并且不旨在进行限制。作为示例性使用案例,控制器110可以基于所确定的用户注视的方向不同地渲染虚拟内容。例如,控制器110可以在根据用户当前注视方向确定的中央凹区域中以比在外围区域中的分辨率更高的分辨率生成虚拟内容。作为另一个示例,控制器可至少部分地基于用户当前注视方向来在视图中定位或移动虚拟内容。作为另一个示例,控制器可至少部分地基于用户当前注视方向来在视图中显示特定虚拟内容。作为AR应用程序中的另一个示例性使用案例,控制器110可引导用于捕获XR体验的物理环境的外部相机在所确定方向上聚焦。然后,外部相机的自动聚焦机构可以聚焦于显示器510上用户当前正看向的环境中的对象或表面上。作为另一个示例性使用案例,眼睛透镜520可以是可聚焦透镜,并且控制器使用注视跟踪信息来调整眼睛透镜520的焦点,使得用户当前正看向的虚拟对象具有适当的聚散度以匹配用户眼睛592的会聚。控制器110可以利用注视跟踪信息来引导眼睛透镜520调整焦点,使得用户正看向的靠近的对象出现在正确距离处。
在一些实施方案中,眼睛跟踪设备是头戴式设备的一部分,该部分包括安装在可穿戴外壳中的显示器(例如,显示器510)、两个眼睛透镜(例如,眼睛透镜520)、眼睛跟踪相机(例如,眼睛跟踪相机540),以及光源(例如,光源530(例如,IR或NIR LED))。光源朝向用户眼睛592发射光(例如,IR或NIR光)。在一些实施方案中,光源可围绕透镜中的每个透镜布置成环或圆圈,如图5中所示。在一些实施方案中,例如,八个光源530(例如,LED)围绕每个透镜520布置。然而,可使用更多或更少的光源530,并且可使用光源530的其他布置和位置。
在一些实施方案中,显示器510发射可见光范围内的光,并且不发射IR或NIR范围内的光,并且因此不会在注视跟踪系统中引入噪声。需注意,眼睛跟踪相机540的位置和角度以举例的方式给出,并且不旨在进行限制。在一些实施方案中,单个眼睛跟踪相机540位于用户面部的每一侧上。在一些实施方案中,可在用户面部的每一侧上使用两个或更多个NIR相机540。在一些实施方案中,可在用户面部的每一侧上使用具有较宽视场(FOV)的相机540和具有较窄FOV的相机540。在一些实施方案中,可在用户面部的每一侧上使用以一个波长(例如,850nm)操作的相机540和以不同波长(例如,940nm)操作的相机540。
如图5中所示的注视跟踪系统的实施方案可以例如用于扩展现实(例如,包括虚拟现实和/或混合现实)应用程序,以向用户提供扩展现实(例如,包括虚拟现实、增强现实和/或增强虚拟)体验。
图6示出了根据一些实施方案的闪光辅助的注视跟踪流水线。在一些实施方案中,注视跟踪流水线通过闪光辅助的注视跟踪系统(例如,如图1和图5中所示的眼睛跟踪设备130)来实现。闪光辅助的注视跟踪系统可维持跟踪状态。最初,跟踪状态为关闭或“否”。当处于跟踪状态时,当分析当前帧以跟踪当前帧中的瞳孔轮廓和闪光时,闪光辅助的注视跟踪系统使用来自先前帧的先前信息。当未处于跟踪状态时,闪光辅助的注视跟踪系统尝试检测当前帧中的瞳孔和闪光,并且如果成功,则将跟踪状态初始化为“是”并且在跟踪状态下继续下一个帧。
如图6中所示,注视跟踪相机可捕获用户左眼和右眼的左图像和右图像。然后将所捕获的图像输入到注视跟踪流水线以用于在610处开始处理。如返回到元素600的箭头所指示的,注视跟踪系统可例如以每秒60至120帧的速率继续捕获用户眼睛的图像。在一些实施方案中,可以将每组所捕获的图像输入到流水线以用于处理。然而,在一些实施方案中或在一些条件下,不是所有所捕获的帧都由流水线处理。
在610处,对于当前所捕获的图像,如果跟踪状态为是,则方法前进到元素640。在610处,如果跟踪状态为否,则如620处所指示的,分析图像以检测图像中的用户瞳孔和闪光。在630处,如果成功检测到瞳孔和闪光,则方法前进到元素640。否则,方法返回到元素610以处理用户眼睛的下一个图像。
在640处,如果从元素410前进,则分析当前帧以部分地基于来自先前帧的先前信息来跟踪瞳孔和闪光。在640处,如果从元素630前进,则基于当前帧中检测到的瞳孔和闪光来初始化跟踪状态。检查元素640处的处理结果以验证跟踪或检测的结果可以是可信的。例如,可检查结果以确定是否在当前帧中成功跟踪或检测到用于执行注视估计的瞳孔和足够数量的闪光。在650处,如果结果不可能是可信的,则跟踪状态被设置为否,并且方法返回到元素610以处理用户眼睛的下一个图像。在650处,如果结果是可信的,则方法前进到元素670。在670处,跟踪状态被设置为YES(如果尚未为是),并且瞳孔和闪光信息被传递到元素680以估计用户的注视点。
图6旨在用作可用于特定具体实施的眼睛跟踪技术的一个示例。如本领域普通技术人员所认识到的,根据各种实施方案,在用于向用户提供XR体验的计算机系统101中,当前存在或未来开发的其他眼睛跟踪技术可用于取代本文所述的闪光辅助的眼睛跟踪技术或与该闪光辅助的眼睛跟踪技术组合使用。
在本公开中,相对于与计算机系统的交互来描述各种输入方法。当使用一个输入设备或输入方法来提供示例,并且使用另一个输入设备或输入方法来提供另一个示例时,应当理解,每个示例可与相对于另一个示例描述的输入设备或输入方法兼容并且任选地利用该输入设备或输入方法。类似地,相对于与计算机系统的交互来描述各种输出方法。当使用一个输出设备或输出方法来提供示例,并且使用另一个输出设备或输出方法来提供另一个示例时,应当理解,每个示例可与相对于另一个示例描述的输出设备或输出方法兼容并且任选地利用该输出设备或输出方法。类似地,相对于通过计算机系统与虚拟环境或混合现实环境进行的交互来描述各种方法。当使用与虚拟环境的交互来提供示例时,并且使用混合现实环境来提供另一个示例时,应当理解,每个示例可与相对于另一个示例描述的方法兼容并且任选地利用这些方法。因此,本公开公开了作为多个示例的特征的组合的实施方案,而无需在每个示例性实施方案的描述中详尽地列出实施方案的所有特征。
用户界面和相关联的过程
现在将注意力转向可在具有显示生成部件、一个或多个输入设备以及(任选)一个或多个相机的计算机系统(诸如,便携式多功能设备或头戴式设备)上实现的用户界面(“UI”)和相关联过程的实施方案。
图7A至图7AE示出了经由显示生成部件(例如,显示生成部件7100、显示生成部件120等)显示的三维环境以及由指向三维环境的用户输入和/或从其他计算机系统和/或传感器接收的输入引起的在三维环境中发生的交互。在一些实施方案中,通过在由虚拟对象占据的区域中检测到的用户注视或者通过与虚拟对象的区域相对应的物理环境中的位置处执行的手势,将输入指向三维环境内的虚拟对象。在一些实施方案中,通过在虚拟对象具有输入焦点时(例如,在虚拟对象已由同时和/或先前检测到的注视输入选择、由同时或先前检测到的指针输入选择、由同时和/或先前检测到的手势输入选择等时)执行(例如,任选地,在与三维环境中的虚拟对象的区域无关的物理环境中的位置处)的手势,将输入指向三维环境内的虚拟对象。在一些实施方案中,由已将焦点选择器对象(例如,指针对象、选择器对象等)定位在虚拟对象的位置处的输入设备将输入指向三维环境内的虚拟对象。在一些实施方案中,经由其他手段(例如,语音、控制按钮等)将输入指向三维环境内的虚拟对象。在一些实施方案中,通过用户手部移动(例如,整个手部移动、在相应姿势中的整个手部移动、用户手部的一部分相对于手部的另一部分的移动和/或双手之间的相对移动)和/或相对于物理对象的操纵(例如,触摸、轻扫、轻击、打开物理对象、朝向物理对象移动和相对于物理对象移动),将输入指向物理对象或与物理对象相对应的虚拟对象的表示。在一些实施方案中,计算机系统根据来自传感器(例如,图像传感器、温度传感器、生物计量传感器、运动传感器和/或接近传感器)的输入和上下文条件(例如,位置、时间和/或环境中其他人的存在)来显示三维环境的一些变化(例如,显示另外的虚拟内容,停止显示现有的虚拟内容,和/或在显示视觉内容的不同沉浸水平之间转变)。在一些实施方案中,计算机系统根据来自与计算机系统的用户共享计算机生成环境(例如,在共享的计算机生成体验中、在共享的虚拟环境中、或在通信会话的共享的虚拟或增强现实环境中)的其他用户所使用的其他计算机的输入来显示三维环境的一些变化(例如,显示另外的虚拟内容,停止显示现有的虚拟内容,和/或在显示视觉内容的不同沉浸水平之间转变)。在一些实施方案中,计算机系统根据来自传感器的输入来显示三维环境的一些变化(例如,显示用户界面、虚拟表面、用户界面对象或虚拟风景的移动、变形和/或视觉特性的变化),该传感器检测其他人和对象的移动以及用户的可能不符合作为触发计算机系统的关联操作的所识别手势输入的标准的移动。
在一些实施方案中,经由本文所述的显示生成部件显示的三维环境是在没有物理环境的表示的情况下在三维环境中的不同虚拟位置处包括虚拟对象和内容的虚拟三维环境。在一些实施方案中,三维环境是混合现实环境,其在三维环境中的受物理环境的一个或多个物理方面(例如,墙、地板、表面的位置和取向、重力方向、一天中的时间和/或物理对象之间的空间关系)约束的不同虚拟位置处显示虚拟对象。在一些实施方案中,三维环境是包括物理环境的表示的增强现实环境。在一些实施方案中,物理环境的表示包括三维环境中的不同位置处的物理对象和表面的相应表示,使得物理环境中的不同物理对象和表面之间的空间关系由三维环境中的物理对象和表面的表示之间的空间关系来反映。在一些实施方案中,当相对于三维环境中的物理对象和表面的表示的位置来放置虚拟对象时,该虚拟对象看起来与物理环境中的物理对象和表面具有对应的空间关系。在一些实施方案中,计算机系统基于用户输入和/或上下文条件在显示不同类型的环境之间转变(例如,在呈现具有不同沉浸级别的计算机生成的环境或体验、调整来自虚拟内容和来自物理环境的表示的音频/视觉感官输入的相对显著性等之间的转变)。
在一些实施方案中,显示生成部件包括其中显示物理环境的表示的透传部分。在一些实施方案中,显示生成部件的透传部分是显示生成部件的展示用户周围或用户的视场内的物理环境的至少一部分的透明或半透明(例如,透视)部分。例如,透传部分是头戴式显示器或平视显示器的被制成半透明(例如,小于50%、40%、30%、20%、15%、10%或5%的不透明度)或透明的一部分,使得用户可以透过它来查看用户周围的真实世界,而无需移除头戴式显示器或远离平视显示器移动。在一些实施方案中,当显示虚拟或混合现实环境时,透传部分逐渐从半透明或透明过渡到完全不透明。在一些实施方案中,显示生成部件的透传部分显示由一个或多个相机(例如,移动设备的或与头戴式显示器相关联的后向相机,或者将图像数据馈送到计算机系统的其他相机)捕获的物理环境的至少一部分的图像或视频的实时馈送。在一些实施方案中,该一个或多个相机指向物理环境的在用户眼睛的正前方(例如,相对于显示生成部件的用户在显示生成部件后方)的一部分。在一些实施方案中,该一个或多个相机指向物理环境的不在用户眼睛的正前方(例如,在不同物理环境中,或者在用户的侧面或后方)的一部分。
在一些实施方案中,当在与物理环境中的一个或多个物理对象的位置相对应的位置处(例如,在虚拟现实环境、混合现实环境、增强现实环境等中的位置处)显示虚拟对象时,虚拟对象中的至少一些虚拟对象被显示以代替(例如,替换其显示)相机的实时视图的一部分(例如,在实时视图中捕获的物理环境的一部分)。在一些实施方案中,虚拟对象和内容中的至少一些虚拟对象和内容被投影到物理环境中的物理表面或空白空间上,并且透过显示生成部件的透传部分是可见的(例如,作为物理环境的相机视图的一部分可见,或者透过显示生成部件的透明或半透明部分可见等)。在一些实施方案中,虚拟对象和虚拟内容中的至少一些虚拟对象和虚拟内容被显示为覆盖显示器的一部分并且遮挡透过显示生成部件的透明或半透明部分可见的物理环境的至少一部分的视线。
在一些实施方案中,显示生成部件根据改变三维环境的当前显示视图的视点相对于三维环境的虚拟位置的用户输入或移动来显示三维环境的不同视图。在一些实施方案中,当三维环境是虚拟环境时,视点根据导航或运动请求(例如,空中手势、或通过手部的一部分相对于手部的另一部分的移动而执行的手势)移动,而不要求用户的头部、躯干和/或显示生成部件在物理环境中的移动。在一些实施方案中,相对于物理环境而言用户的头部和/或躯干的移动和/或显示生成部件或计算机系统的其他位置感测元件的移动(例如,由于用户握住显示生成部件或佩戴HMD)引起视点相对于三维环境的对应移动(例如,具有对应的移动方向、移动距离、移动速度和/或取向变化),从而引起三维环境的当前显示视图的对应变化。在一些实施方案中,当虚拟对象具有相对于视点的预设空间关系(例如,锚定或固定到视点)时,视点相对于三维环境的移动将引起虚拟对象相对于三维环境的移动,同时保持虚拟对象在视场中的位置(例如,虚拟对象被称为是头部锁定的)。在一些实施方案中,虚拟对象被身体锁定到用户,并且在用户作为整体在物理环境中移动(例如,携带或佩戴显示生成部件和/或计算机系统的其他位置感测部件)时相对于三维环境移动,但是将不会响应于单独的用户头部移动而在三维环境中移动(例如,显示生成部件和/或计算机系统的其他位置感测部件围绕用户在物理环境中的固定位置旋转)。在一些实施方案中,虚拟对象任选地被锁定到用户的另一部分,诸如用户的手部或用户的手腕,并且根据用户的该部分在物理环境中的移动而在三维环境中移动,以保持虚拟对象的位置与用户的该部分在三维环境中的虚拟位置之间的预设空间关系。在一些实施方案中,虚拟对象被锁定到由显示生成部件提供的视场的预设部分,并且根据视场的移动而在三维环境中移动,而与不引起视场变化的用户的移动无关。
在一些实施方案中,如图7B至图7AE所示,三维环境的视图有时不包括用户的手部、手臂和/或手腕的表示。在一些实施方案中,用户的手部、手臂和/或手腕的表示被包括在三维环境的视图中。在一些实施方案中,用户的手部、手臂和/或手腕的表示被包括在三维环境的视图中,作为经由显示生成部件提供的物理环境的表示的一部分。在一些实施方案中,这些表示不是物理环境的表示的一部分,并且在独立于三维环境的当前显示视图的三维环境中被分别捕获(例如,通过一个或多个相机指向用户的手部、手臂和手腕)并显示。在一些实施方案中,这些表示包括由计算机系统的一个或多个相机捕获的相机图像或基于由各种传感器捕获的信息的手臂、手腕和/或手部的程式化版本。在一些实施方案中,这些表示替换物理环境的表示的部分的显示、被覆盖在物理环境的表示的部分上或阻挡物理环境的表示的部分的视图。在一些实施方案中,当显示生成部件不提供物理环境的视图并且提供完全虚拟环境(例如,无相机视图且无透明透传部分)时,任选地仍在虚拟环境中显示用户的一个或两个手臂、手腕和/或手部的实时视觉表示(例如,使表示或分段相机图像程式化)。在一些实施方案中,如果在三维环境的视图中没有提供用户的手部的表示,则与用户的手部相对应的位置任选地在三维环境中被指示,例如,通过在与用户的手部在物理环境中的位置相对应的三维环境中的位置处改变虚拟内容的外观(例如,通过半透明度、模拟反射率等的变化)。在一些实施方案中,用户的手部或手腕的表示在三维环境的当前显示视图之外,而与用户的手部或手腕的位置相对应的三维环境中的虚拟位置在经由显示生成部件提供的当前视场之外;并且响应于与用户的手部或手腕的位置相对应的虚拟位置由于显示生成部件、用户的手部或手腕、用户的头部和/或用户作为整体等的移动而在当前视场内移动,使得用户的手部或手腕的表示在三维环境的视图中可见。
图7A至图7H是示出根据一些实施方案的将警示的表示与三维环境中显示的用户界面对象同时显示的框图。图7I至图7L是示出根据用户关注所显示的警示而改变这些警示的表示的状态的框图。图7M至图7O是示出与在三维环境中显示的应用程序的表示(例如,通知和/或应用程序图标)交互的框图。图7P至图7W是示出根据一些实施方案的通过第一用户界面对象导航到第二用户界面对象的框图。图7X至图7AE是示出根据一些实施方案的在根据用户的视点的移动更新三维环境的视图的同时与三维环境中的对象相关联地显示虚拟对象的框图。根据各种实施方案,参考图7A至图7AE(以及图8至图12)针对一些示例中的用户界面对象和警示的表示所描述的行为适用于其他示例中的用户界面对象和警示的表示,除非在说明书中另有说明。
图7A至图7AE示出了与显示生成部件(例如,第一显示生成部件、显示生成部件7100或另一显示生成部件)通信的示例性计算机系统(例如,设备101或另一计算机系统)。在一些实施方案中,显示生成部件是平视显示器。在一些实施方案中,显示生成部件是头戴式显示器(HMD)。在一些实施方案中,显示生成部件是独立显示器、触摸屏、投影仪或另一类型的显示器。在一些实施方案中,计算机系统与一个或多个输入设备通信,该一个或多个输入设备包括检测物理环境中用户的手部的移动、用户的整个身体的移动和/或用户的头部的移动的相机或其他传感器和输入设备。在一些实施方案中,一个或多个输入设备检测用户的手部、面部和用户的整个身体等的移动及当前姿势、取向和位置。在一些实施方案中,一个或多个输入设备包括检测用户注视的位置和移动的眼睛跟踪部件。在一些实施方案中,显示生成部件以及任选地一个或多个输入设备和计算机系统是头戴式设备(例如,HMD或一对护目镜)的部分,该头戴式设备在物理环境中随用户的头部而移动和旋转,并且改变用户在经由显示生成部件提供的三维环境中的视点。在一些实施方案中,显示生成部件是平视显示器,其不随用户的头部或用户的整个身体而移动或旋转,而是任选地根据用户的头部或身体相对于第一显示生成部件的移动来改变用户在三维环境中的视点。在一些实施方案中,显示生成部件任选地由用户的手部相对于物理环境或相对于用户的头部移动和旋转,并且根据显示生成部件相对于用户的头部或面部或相对于物理环境的移动来改变用户在三维环境中的视点。
图7A至图7H是示出在与相对于物理环境中的用户7002(例如,用户的视点)的位置相对应的三维环境中的相应位置处显示用户界面对象(例如,用户界面对象7015’或用户界面对象702(例如,用于第一应用程序的应用程序窗口))的框图。
例如,图7A示出了包括与显示生成部件7100交互的用户7002的物理环境7000。在下面描述的示例中,用户7002使用其两只手部(手部7020和手部7022)中的一只或两只来向计算机系统提供输入或指令。在下面描述的一些示例中,计算机系统还使用用户的手臂(诸如与用户的左手7020相连的用户的左臂7028)的位置或移动作为由用户向计算机系统提供的输入的一部分。物理环境7000包括物理对象7014以及物理墙壁7004和7006。物理环境7000还包括物理地板7008。
如图7B所示,计算机系统(例如,显示生成部件7100)显示三维环境(例如,环境7000’、虚拟三维环境、增强现实环境、物理环境的透传视图或物理环境的相机视图)的视图。在一些实施方案中,三维环境是没有物理环境7000的表示的虚拟三维环境。在一些实施方案中,三维环境是混合现实环境,该混合现实环境是由与物理环境相对应的传感器数据增强的虚拟环境。在一些实施方案中,三维环境是增强现实环境,该增强现实环境包括一个或多个虚拟对象(例如,用户界面对象702、用户界面对象7015’)和显示生成部件7100周围的物理环境的至少一部分的表示(例如,墙壁的表示7004’、7006’、地板的表示7008’和/或物理对象的表示7014’)。在一些实施方案中,物理环境的表示包括物理环境的相机视图。在一些实施方案中,物理环境的表示包括物理环境透过第一显示生成部件的透明或半透明部分的视图。
图7C示出了经由显示生成部件7100显示的用户的当前视图。例如,用户已在物理环境中(例如,相对于图7B中的物理环境中的用户位置/取向)转身(例如,向左)以查看墙壁的表示7006’。在一些实施方案中,显示生成部件7100显示第一用户界面对象702。在一些实施方案中,第一用户界面对象702是用于用户与之交互的第一应用程序的应用程序窗口。在一些实施方案中,第一用户界面对象702是与第一应用程序相关联的虚拟对象(例如,用于棋类游戏应用程序的棋子)。在一些实施方案中,第一用户界面对象702是物理环境中的物理对象(例如,一对耳机),其被显示为透传内容或物理对象的程式化(例如,动画、计算机生成)表示。应当理解,第一用户界面对象702可以对应于经由显示生成部件7100显示的任何数目的虚拟或真实对象。在一些实施方案中,用户界面对象702锚定到三维环境。例如,当用户改变用户对三维环境的当前视图时,用户界面对象702相对于在三维环境中显示的其他对象而言被显示在三维环境内的相同位置,即使用户的当前视图改变时(例如,用户在物理环境中移动时)也是如此。
在一些实施方案中,如图7D所示,用户正关注(例如,注视,和/或注视至少阈值时间量,和/或以小于移动阈值注视)第一用户界面对象702。例如,用户的注意力由从用户的眼睛发出(例如,到第一用户界面对象702)的虚线指示。在一些实施方案中,在用户正关注第一用户界面对象702时,计算机系统接收到警示。
在一些实施方案中,警示是系统警示(例如,与计算机系统和/或计算机系统的操作系统相关联的持久警示)或应用程序特定的警示(例如,与一个或多个应用程序相关联,包括用户当前未观看/与之交互的应用程序),在本文中也称为用于相应应用程序的通知。在一些实施方案中,计算机系统根据用户选择的设置来接收(和/或生成)警示。例如,用户选择哪些应用程序被启用来提供通知(例如,被推送到显示生成部件7100的通知)。
在一些实施方案中,系统警示的表示包括使得能够由用户使用注视和/或手势(例如,空中手势)来选择的内容和/或一个或多个可选用户界面对象(例如,按钮),并且应用程序特定的警示的表示不包括内容和/或一个或多个可选用户界面对象。例如,系统警示包括用于取消系统警示的选项和/或用于查看关于警示的附加信息的选项。在一些实施方案中,两种类型的警示都包括内容和/或一个或多个可选用户界面对象。
图7D示出了响应于接收到警示(例如,系统警示或用于应用程序的通知),计算机系统在三维环境的当前视图中显示警示704-1的表示。在一些实施方案中,在用户正关注第一用户界面对象702时,警示704-1的表示被显示为至少部分地与第一用户界面对象702重叠。
在一些实施方案中,警示704-1的表示至少部分地与用户界面对象重叠,该用户界面对象与该警示相关并且被显示在三维环境的当前视图中。例如,与特定应用程序相关的警示被显示为至少部分地与用于与该警示相关的特定应用程序的应用程序窗口或其他虚拟对象重叠(例如,如果用于该特定应用程序的应用程序窗口被显示在三维环境的当前视图中)。在一些实施方案中,用于警示的表示与应用程序相关(例如,用于在新闻应用程序上发布的新闻文章的警示),并且用于该警示的表示被显示在用于该应用程序(例如,新闻应用程序)的当前活动的(例如,所显示的)应用程序窗口上。
在一些实施方案中,警示704-1的表示至少部分地与物理环境中与该警示相关的物理对象(例如,物理对象的表示)重叠。例如,在耳机处于三维环境的当前视图中时(例如,其中一组耳机被显示为虚拟对象或作为透传内容的物理对象),用于指示该组耳机的充电状态(例如,充电水平)的警示的表示被显示为至少部分地与耳机重叠(例如,至少部分地与耳机的表示重叠)。
在一些实施方案中,警示704-1的表示(例如,最初)被显示在三维环境中相对于用户的当前视点确定的位置处(例如,并且任选地不被显示在与警示相关的虚拟对象和/或物理对象上)。例如,警示704-1的表示被显示在三维环境的用户当前视图的顶部中心部分中(例如,不管在接收到该警示时用户当前关注什么对象)。
在一些实施方案中,显示该警示的表示使得计算机系统在视觉上去加重在三维环境中显示的其他内容(例如,除该警示的表示之外)。在一些实施方案中,计算机系统在视觉上去加重在三维环境中显示的虚拟内容。例如,当前显示的应用程序窗口(例如,用户界面对象702)在三维环境内相对于该警示的表示被调暗(例如,淡化)和/或向后推动(例如,更远离用户)(例如,以引起对该警示的表示的注意),例如所用方式类似于相对于图7P至图7R所示和/或所述的方式,其中当响应于指向当前显示的窗口708的交互式元素710-2的输入而显示新窗口720时,当前显示的窗口708在三维环境中被向后推动。在一些实施方案中,在三维环境中被显示为透传内容的来自物理环境的物理内容在视觉上被去加重。
在一些实施方案中,在三维环境中显示的其他内容的视觉去加重至少部分地基于警示的类型。例如,如果该警示是系统警示,则将在三维环境的当前视图中显示的所有应用程序窗口和/或虚拟对象在视觉上去加重(例如,没有在视觉上去加重物理环境的特征,诸如墙壁的表示),并且如果该警示的表示是用于应用程序的通知,则仅将当前查看的应用程序窗口(例如,和/或虚拟对象)相对于用于该应用程序的通知在视觉上去加重,而没有在视觉上去加重在三维环境的当前视图内显示的其他虚拟内容。
在一些实施方案中,同时显示用于多个警示的多个表示。例如,接收到第一警示(例如,系统警示),并且在三维环境中显示第一警示的表示。在一些实施方案中,在显示第一警示的表示时,接收到用于应用程序的第二警示(例如,通知)。在一些实施方案中,同时显示第一警示和第二警示。在一些实施方案中,显示警示的表示的警示的相应预定义的位置基于警示的类型。例如,系统警示被显示在三维环境的预定义的部分处,该预定义的部分看起来比显示用于应用程序的通知的三维环境的预定义的部分要低(相对于用户的视点)(例如,或反之亦然)。例如,用于应用程序的通知出现在三维环境中的系统警示之上(例如,比系统警示更靠近三维环境的当前视图的顶部)。
在一些实施方案中,系统警示被显示在看起来比显示用于应用程序的通知的三维环境的部分更靠近用户的三维环境的部分处。例如,用于系统警示的表示被显示在用户的手臂可及范围内,而用于应用程序的通知的表示被显示在用户的手臂可及范围外。
在一些实施方案中,响应于接收到用于与第二警示相同的应用程序的第三警示(例如,在显示第二警示的表示时),将第二警示的表示和第三警示的表示组合成单个警示(例如,带有指示为相同应用程序接收到的警示的数量的数字指示符)。
在一些实施方案中,响应于接收到用于与第二警示不同的应用程序的第四警示(例如,在显示第一警示的表示和第二警示的表示时),将第四警示的表示与已经显示的警示的表示(例如,与第一警示和第二警示的表示)同时(例如,并排)显示。在一些实施方案中,第四警示的表示覆盖(例如,与之重叠)第二警示的表示的至少一部分(例如,第四警示的表示看起来叠加在第二警示的表示上)。在一些实施方案中,将用于待处理(例如,已被接收到但用户未查看和/或被用户取消)的警示的多个表示最小化(例如,组合)为警示的单个表示(例如,一堆警示的表示),直到用户关注警示的表示(例如,通过注视警示的表示)。
在一些实施方案中,根据警示704-1的表示是系统警示(例如,由计算机系统生成,与计算机系统的操作系统相关),将警示704-1的表示保持在其相对于三维环境的用户当前视图(例如,和/或相对于用户的身体部位)的当前位置处,即使用户在物理环境中移动时也是如此,如图7E所示。例如,在图7E中,用户已转身离开图7D中面向墙壁的表示7006’的用户视图(例如,用户在物理环境中向右转),并且图7E中用户的当前视图面向墙壁的表示7004’。响应于用户改变用户的当前视点(例如,通过在物理环境中转身和/或旋转,和/或通过在物理环境中移动位置(例如,横向地)),显示生成部件7100继续在三维环境中对于用户的当前视点的相同相对位置处显示警示704-1的表示(例如,将警示704-1的表示保持在三维环境的用户当前视图的顶部中心部分处)。在一些实施方案中,在用户正在物理环境中移动时,将该警示的表示在视觉上去加重(例如,淡化或消失),并且在用户已经停止移动之后重新显示(例如,没有在视觉上去加重)。
在一些实施方案中或在一些情况下,用户不关注(例如,注视)警示704-1。例如,在图7E至图7F中,用户正在关注对象的表示7014’,而没有关注警示704-1的表示。在一些实施方案中,在预先确定的时间段(例如,0.25秒、2秒、5秒或范围0.25秒至5秒内的时间段)之后,如果用户尚未关注警示704-1的表示,则自动地从用户的当前视图中的显示中移除警示704-1的表示。在一些实施方案中,基于警示的类型来确定预先确定的时间段。例如,系统警示不受预先确定的时间段的限制(例如,系统警示继续显示直到用户取消系统警示),而用于应用程序的通知则根据用户在预先确定的时间段(例如,0.25秒、2秒、5秒或范围0.25秒至5秒内的时间段)内不与该通知交互(例如,不关注该通知)而自动停止显示。
在一些实施方案中,如图7F所示,根据警示704-1的表示是用于应用程序(例如,与用户界面对象702相关的应用程序、或用户当前未查看或交互的另一应用程序)的通知,响应于用户改变用户的当前视点(例如,通过在物理环境中从图7D向右转向图7F),不将警示704-1的表示保持在三维环境中对于用户的当前视点的相同相对位置处(例如,在三维环境的用户当前视图的顶部中心部分处)。在一些实施方案中,该警示的表示任选地被显示为在用户的当前视图内继续至少部分地与第一用户界面对象702重叠的位置处的警示704-2的表示。在一些实施方案中,响应于用户改变用户的当前视点,不在用户的当前视点中显示警示704-1的表示(例如,任选地根本不在图7F中的用户的当前视图中显示警示704-2的表示)。
例如,如果该警示(例如,通知)与第一用户界面对象702相关(例如,第一用户界面对象702是用于第一应用程序的应用程序窗口,并且该警示是用于第一应用程序的通知),则该警示不被锚定到用户的当前视点(例如,相反,该警示被锚定到第一应用程序)。在一些实施方案中,警示704-1的表示(例如,用于应用程序的通知的表示)被显示为随着用户在物理环境中移动而在三维环境内移动。在一些实施方案中,用于应用程序的通知的表示以比用户更小的移动量移动(例如,该通知的表示看起来滞后于用户并且以比用户的移动速率更慢的速率移动)。
因此,根据警示的类型(例如,系统警示亦或用于应用程序的通知),响应于用户改变用户的视点(例如,通过在物理环境7000内移动和/或旋转),将警示704-1的表示保持在对于用户的当前视点的相同相对位置处(在系统警示的情况下),如图7E所示,或者不显示在对于用户的当前视点的相同相对位置处(在用于应用程序的通知的情况下),如图7F所示。此外,在一些实施方案中,基于警示的类型来确定该警示在三维环境内移动的方式。例如,在用户正在移动时,系统警示被移动到其在用户的当前视图中的更新位置而不保持系统警示的显示(例如,用于系统警示的表示在用户的移动期间消失),并且当用户的当前视图改变时,用于应用程序的通知任选地继续显示在三维环境中(例如,在相关应用程序窗口上)。
在一些实施方案中,在用户正在三维环境中移动时,该警示的表示被显示为在三维环境中离用户更远。例如,响应于用户在物理环境中移动,该警示的表示被更新为显示在三维环境中看起来比用户静止时该警示的表示的位置更远离用户(例如,在用户的手臂可及范围外)的位置处。例如,在用户不在物理环境中移动时,该警示的表示被显示为更靠近用户(例如,使得用户能够用用户的手臂触及该警示的表示)。
在一些实施方案中,基于用户在物理环境中的当前位置(例如,位置和/或取向),以相对于在三维环境中显示的其他对象的角度来显示该警示的表示。例如,当用户改变用户对三维环境的视角(例如,通过转动用户的头部和/或通过移动位置)时,该警示的表示被更新为以相对于用户的预定义的角度显示(例如,当用户在物理环境中移动时,该警示的表示的角度被更新为看起来正对着用户)。在一些实施方案中,虽然在三维环境中显示的其他对象相对于用户的当前视点的角度随着用户在物理环境中移动而改变,但是该警示的表示的角度相对于用户不改变。相反,当用户在物理环境中移动时,该警示的表示被显示为跟随用户,包括以相同角度显示该警示以供用户查看。
在一些实施方案中,与相同应用程序相关的两个或更多个用户界面对象(例如,虚拟对象和/或物理对象)被显示在三维环境的当前视图中。在一些实施方案中,与相同应用程序相关的两个或更多个用户界面对象不被同时显示在三维环境的相同当前视图中,而是两个或更多个用户界面对象被显示在三维环境的不同视图中(例如,锚定到不同部分)(例如,第一用户界面对象被显示在三维环境的第一视图中,而第二用户界面对象被显示在三维环境的第二视图中)。例如,如图7G所示,第一用户界面对象702和第二用户界面对象712(的至少一部分)被同时显示在三维环境的当前视图中。在一些实施方案中,第一用户界面对象702和第二用户界面对象712与相同应用程序(例如,其实例)相关联。例如,用户界面对象包括用于相同应用程序的两个或更多个应用程序窗口。在一些实施方案中,用户界面对象包括用于应用程序的应用程序窗口(例如,用户界面对象702)和/或与相同应用程序相关联的虚拟(例如,或物理)对象(例如,用户界面对象712)。
在一些实施方案中,根据该警示是用于与两个或更多个用户界面对象(例如,用户界面对象702和用户界面对象712)相关联的应用程序的通知,响应于用户(例如,通过移动物理环境中的位置和/或取向)将用户的当前视图从图7G中的用户视图改变为图7H中的用户的当前视图(例如,用户在物理环境中向右转),在用户已经移动之后,在至少部分地与第二用户界面对象712重叠的位置处显示警示704-3的表示。在一些实施方案中,计算机系统确定与该应用程序相关联的两个或更多个用户界面对象中的哪个用户界面对象在三维环境的当前视图中最突出(例如,最居中、占用最多空间、最靠近用户当前注意力的位置),并且在当前视图中显示至少部分地覆盖与该应用程序相关的最突出用户界面对象的警示704-3的表示。因此,在一些实施方案中,基于用于与该警示相关的应用程序的当前显示的应用程序窗口和/或对象,将用于该应用程序的警示的表示定位在三维环境中。
在一些实施方案中,三维环境的一部分不包括虚拟内容。例如,使得用户能够在物理环境中移动(例如,或转向)到不显示虚拟内容而是仅显示物理环境的透传内容的三维环境的一部分(例如,预定义的区域)。在一些实施方案中,在用户的当前视图对应于三维环境的不显示虚拟内容的部分时,警示的表示不被显示在三维环境的不显示虚拟内容的部分中。在一些实施方案中,即使用户移动以查看三维环境的不包括虚拟内容的部分时,也显示(例如,跟随用户)某些类型的警示(例如,用于应用程序的通知),同时响应于用户的当前视图包括三维环境的不包括虚拟内容的部分,不显示其他类型的警示(例如,系统警示)(例如,任何待处理的系统警示停止显示并且不跟随用户)。
图7D和图7I至图7L是示出处于多个状态的警示的表示(例如,在第一状态下显示的警示704-1的表示(图7D)、在第二状态下显示的警示704-4的表示(图7I)以及在第三状态下显示的警示704-5的表示(图7K))的框图。
在一些实施方案中,警示704-1的表示最初在第一状态下显示,如图7D所示。在一些实施方案中,警示704-1的表示的第一状态包括指示关于该警示的信息的图标。例如,警示704-1的表示的第一状态包括用于与该警示相关联的应用程序的应用程序图标。在一些实施方案中,警示704-1的表示被显示在相对于三维环境的用户当前视图的预定义的位置处。
在一些实施方案中,警示704-1的表示最初被显示在相对于用户的手部的当前位置的位置处。例如,在用户的手部处于三维环境的当前视图中时,该警示的表示被显示在用户的手部附近(例如,在用户的手掌中或在用户的手部的背面上方)。在一些实施方案中,响应于接收到该警示而提供声音和/或触觉。在一些实施方案中,计算机系统输出被模拟为来自用户的手部(例如,或来自三维环境中显示该警示的位置)的声音(例如,音频指示)。因此,提供该声音和/或触觉以向用户指示已经接收到新的警示,并且使用户凭直觉通过转向模拟声音的位置(例如,用户看向用户的手部)来查看该警示。
在一些实施方案中,如图7I所示,用户关注(例如,看向、将用户的头部转向)该警示的表示。响应于检测到用户关注该警示的表示,在不同于第一状态的第二状态下显示警示704-4的表示(例如,警示704-4的表示是在第一状态下示出的警示704-1的表示(图7D)的第二状态)。
在一些实施方案中,该警示的表示的第二状态包括也在第一状态下显示的图标和关于该警示的附加信息。例如,处于第二状态的警示704-4的表示在应用程序图标下方显示应用程序名称的指示(例如,文本指示)。在一些实施方案中,处于第二状态的该警示的表示包括用于与该警示相关联的应用程序的内容。
在一些实施方案中,如图7I中的时间线所指示,在第二状态下显示该警示的表示之前,计算机系统确定用户已经关注(例如,在第一状态下显示的)该警示的表示达第一阈值时间量(例如,t1)。在一些实施方案中,第一阈值时间量小于一秒(例如,0.1秒、0.25秒或0.5秒)。例如,在(例如,响应于)用户已经看向(例如,注视)处于第一状态的警示704-1的表示达第一阈值时间量之后,在第二状态下显示该警示的表示(例如,作为警示704-4的表示)。在一些实施方案中,计算机系统响应于检测到(例如,自动地,并且任选地立即地)用户已经看向该警示的表示而将该警示的表示的显示从第一状态更新到第二状态。
在一些实施方案中,在第二状态下显示警示704-4的表示之后,根据确定用户停止关注该警示(例如,转身离开,或以其他方式改变用户在物理环境中的位置),如图7J所示(例如,用户向右转),该警示的表示不再被显示在三维环境的用户当前视图中。例如,在图7J中,用户正在关注对象的表示7014’,已经转身离开处于第二状态的警示704-4的表示,并且警示704-4的表示停止显示。在一些实施方案中,如上所述,如果警示704-1的表示保持处于第一状态(例如,不更新到第二状态)(例如,因为用户尚未看向该警示达第一阈值时间量t1),并且在用户看向该警示的表示之前经过了阈值时间量(例如,和/或用户转身离开处于第一状态的警示704-1的表示),则警示704-1的表示停止显示。
在一些实施方案中,如图7K所示,根据确定用户关注(例如,注视和/或将用户的头部转向)该警示的当前显示的表示达至少第二阈值时间量(例如,t2),在不同于第一状态和第二状态的第三状态下显示该警示的表示。在一些实施方案中,响应于用户执行手势(例如,作为注视该警示的表示达至少第二阈值时间量的补充或替代),在第三状态下显示该警示的表示。例如,用户的手部7020执行手势(例如,由计算设备的一个或多个传感器检测到的捏合手势、轻击手势或预先确定的手势类型的另一手势)并结合用户注视该警示,使得该设备将警示704-5的表示的显示更新到第三状态。
在一些实施方案中,与该警示的表示的第一状态和第二状态相比,处于第三状态的该警示的表示包括附加信息(例如,与该警示相关的内容)和/或一个或多个用户可选对象(例如,按钮或其他控制选项)。例如,处于第三状态的警示704-5的表示被放大(例如,大于处于第一状态和第二状态的该警示的表示)。例如,处于第三状态的该警示的表示包括用于取消该警示的用户可选选项(例如,并且响应于用户选择(例如,利用诸如注视和捏合手势之类的手势)用于取消该警示的选项,停止在三维环境中显示该警示的表示(例如,在第一状态、第二状态或第三状态中的任一状态下))。
在一些实施方案中,处于第三状态的该警示的表示包括用于打开与该警示相关联的应用程序的应用程序窗口的用户可选选项(例如,其中,响应于检测到用户选择用于打开应用程序窗口的选项,将应用程序窗口与关于该警示的内容一起显示)。例如,如果该警示是带有新闻文章标题的警示,则响应于用户选择用于打开应用程序窗口的选项,在应用程序窗口中显示与标题相关联的新闻文章(例如,而不是显示应用程序窗口的初始主页显示)。因此,响应于来自处于第三状态的该警示的表示的打开该应用程序的请求,所显示的应用程序窗口显示与该警示相关的内容。
例如,对于消息传送应用程序中的新消息的警示,处于第一状态的警示704-1的表示包括用于消息传送应用程序的应用程序图标,处于第二状态的警示704-4的表示包括应用程序图标和消息传送应用程序的标题的文本标签(例如,“消息”)和/或传入消息的发送者的联系人姓名,并且处于第三状态的警示704-5的表示包括在消息传送应用程序中接收的传入消息的预览(例如,传入消息的至少一部分)。
在一些实施方案中,处于第三状态的警示704-5的表示包括一个或多个用户可选选项(例如,使得能够经由注视输入和/或空中手势来选择的所显示的按钮)。例如,一个或多个用户可选选项包括用于打开该应用程序(例如,打开消息传送应用程序)的选项、用于取消该警示的选项和/或特定于该应用程序的选项(例如,用于输入文本以直接从处于第三状态的警示704-5的表示回复该消息而不打开消息传送应用程序的选项)。
因此,当用户更加关注该警示的表示(例如,注视该警示的表示达阈值时间段和/或执行指向该警示的表示的手势)时,将该警示的表示从第一状态和/或第二状态更新到包括与该警示相关的附加信息的第三状态。例如,响应于检测到用户输入(例如,指向该警示的表示的用户输入),诸如用户抬起用户的手部(例如,同时注视该警示)、用用户的手部7020执行另一手势(例如,捏合输入或轻击输入),和/或响应于检测到用户以预定义的姿势(例如,以预定义的取向和/或以用户的手部的预定义的形状)抬起用户的手部,将该警示的表示更新到第三状态。例如,用用户的手部7020执行手势包括空中手势(例如,捏合输入和/或轻击输入是空中手势,如下文更详细描述)。
在一些实施方案中,在第三状态下显示警示704-5的表示(例如,图7K)之后,用户转身离开该警示的表示(例如,在物理环境中移动),如图7L所示。在一些实施方案中,根据在第三状态下显示该警示的表示(例如,通过用户关注该表示达至少第二阈值时间量(例如,t2)和/或响应于指向该警示的表示的手势),在用户改变用户在三维环境中的当前视点之后,警示704-6的表示继续被显示(例如,因为其被激活到第三状态)。在一些实施方案中,在用户在物理环境中移动之后,以与处于第三状态的警示704-5的表示相同的大小和/或内容来保持警示704-6的表示(例如,包括用于该应用程序的内容和/或用户可选选项在内的该警示的放大表示)。在一些实施方案中,在用户在物理环境中移动之后,警示704-6的表示继续在三维环境中显示,但不在第三状态下显示。例如,在第一状态或第二状态下重新显示该警示的表示(例如,响应于用户关注三维环境的不同部分(例如,用户在物理环境中移动),该警示的表示的大小从第三状态减小)。
在一些实施方案中,如果在第一状态(和/或第二状态)下显示该警示的表示时用户不关注该警示的表示,则该警示的表示在预定义时间段(例如,3秒、5秒或在1.5至5秒范围内的时间段)之后自动消失。在一些实施方案中,如果用户已经关注该警示(例如,和/或执行指向该警示的手势),这使得该警示的表示更新到第三状态,则该警示的表示不会自动消失(例如,在已经在第三状态下显示该警示的表示之后,用户必须请求取消该警示的表示)。
在一些实施方案中,响应于接收到第二警示(例如,在第一状态下显示第一警示的表示时),处于第一状态的第一警示的表示至少部分地被替换为第二警示的表示。
在一些实施方案中,响应于在第三状态下显示第一警示的表示时接收到第二警示,显示第二警示的表示而不替换处于第三状态的第一警示的表示。例如,在第三状态下显示第一警示的表示(例如,与附加内容和/或可选用户界面对象一起)之后,保持处于第三状态的第一警示的表示(例如,使得用户能够继续与处于第三状态的第一警示交互),直到用户取消第一警示(例如,通过选择取消选项)。
在一些实施方案中,响应于接收到多个警示(例如,同时地或随后在彼此的预定义的时间量内),在第一状态下同时显示用于多个警示的表示(例如,作为堆叠警示或并排显示)。在一些实施方案中,响应于用户关注用于多个警示中的一个警示(例如,第一警示)的表示中的任一表示,用于多个警示的表示被更新为在第二状态下显示。因此,响应于用户关注多个警示中的任何警示,警示的所有当前显示的表示被更新为在第二状态下显示。这使得用户容易看到所有当前待处理的(例如,尚未被取消的)警示,使得用户随后可以(使用手势,诸如注视和/或手势)选择多个警示中的一个或多个警示来在第三状态下查看(以看到用于所选警示的附加信息和/或用户可选选项)。例如,在第二状态下显示多个警示时,用户通过注视第一警示的表示并结合用手部7020执行的手势来选择第一警示的表示,这使得第一警示的表示在第三状态下显示。
在一些实施方案中,在用户从多个警示中选择一个警示的表示(例如,用户正在注视多个警示)之前,相对于警示的其他表示加重当前选择的警示。例如,当用户将用户的注视移动到多个警示的表示中的警示的不同表示时,通过相对于警示的其他所显示的表示放大和/或高亮显示该警示的表示来向用户指示用户当前正在注视的警示。这使得用户在请求在第三状态下显示该警示(通过执行选择该警示的手势)之前容易知道用户正在选择哪个警示。
在一些实施方案中,在从在第二状态下显示的多个警示中选择第一警示之后,不再显示多个警示中未被选择的警示的表示。例如,在第三状态下显示第一警示,而不显示用于多个警示中的任一个警示的表示。在一些实施方案中,在用户选择第一警示之后,自动取消多个警示。
在一些实施方案中,如果第一警示的表示是所显示的警示的唯一表示(例如,任何其他警示已经被取消),则使得用户能够抬起用户的手部以将该警示转变到第三状态(例如,如上所述)。然而,如果同时显示用于多个警示的表示,则响应于用户抬起用户的手部,没有警示被转变到第三状态(例如,用于多个警示的表示被保持在第一状态或第二状态)。在一些实施方案中,在用户抬起用户的手部之前,在第一状态或第二状态下显示多个警示。
图7M至图7O是示出从所显示的应用程序图标打开应用程序的框图。在一些实施方案中,在三维环境中的第一位置处显示应用程序图标705。在一些实施方案中,应用程序图标705是通知的表示(例如,上述的警示704-1的表示)。在一些实施方案中,应用程序图标705是在一组应用程序图标中显示的应用程序图标,例如在使用户能够从该组应用程序图标(例如,在主显示器内的阵列或菜单中显示的应用程序坞或一组应用程序图标)启动(例如,打开)应用程序的三维环境的一部分内显示的应用程序图标。
在一些实施方案中,应用程序图标705与应用程序窗口703同时显示,如图7M所示。在一些实施方案中,应用程序窗口703是另一类型的用户界面对象(例如,虚拟对象),诸如上述用户界面对象702。在一些实施方案中,应用程序图标705与不同于当前显示的应用程序窗口703的应用程序的应用程序相关联。
在一些实施方案中,应用程序图标705被显示在三维环境内相对于用户的当前视点的预定义的位置处。例如,应用程序图标705被显示在三维环境的用户当前视图的顶部中心部分处(例如,使得当用户在物理环境内移动并且用户的当前视点改变时,应用程序图标705被显示在相对于用户的相同位置处)。
在一些实施方案中,响应于指向所显示的应用程序图标705的表示的用户输入,打开(例如,显示)与该应用程序图标相关联的应用程序。在一些实施方案中,用户输入包括指向所显示的应用程序图标的表示的注视输入。在一些实施方案中,用户输入包括指向所显示的应用程序图标705的表示的空中手势(例如,结合指向该应用程序图标的注视输入)。
在一些实施方案中,指向所显示的应用程序图标的表示的用户输入的类型控制如何打开该应用程序。例如,响应于指向应用程序图标705的第一类型的用户输入(例如,捏合输入),用于与应用程序图标705相关联的应用程序的应用程序窗口706被打开并替换在接收第一类型的用户输入时在三维环境中显示的应用程序窗口703(例如,或其他虚拟对象)的显示。例如,捏合输入是空中手势。在一些实施方案中,响应于第一类型的用户输入,应用程序窗口706吸附到与先前显示的应用程序窗口703相对应的位置(例如,不保持应用程序窗口703的显示),如下文更详细描述。例如,在图7N中,应用程序窗口706替换应用程序窗口703(在图7M中示出)的显示。
在一些实施方案中,响应于第一类型的用户输入(例如,由用户的手部7020执行的捏合输入),应用程序窗口706被吸附到显示应用程序窗口703的位置。例如,响应于用户提供指向应用程序图标705的捏合输入,计算机系统在没有附加用户输入的情况下自动打开应用程序窗口706并将其显示在被吸附到先前显示的应用程序窗口703的预定义的位置的位置处(例如,不需要用户将应用程序图标或应用程序窗口与预定义的位置完全对准)。在一些实施方案中,根据应用程序窗口706在预定义的位置中吸附到位,计算机系统输出音频和/或触觉指示。
在一些实施方案中,根据所显示的应用程序图标是在第三状态下显示的警示的表示(例如,警示704-5的表示,如上文参考图7I至图7L所描述),用于用户从该应用程序图标打开应用程序窗口的选项是可用的。例如,如果所显示的应用程序图标705是在第一状态或第二状态下显示的警示的表示,则直到在第三状态下显示该警示的表示,才使得用户能够打开应用程序窗口(例如,使用捏合输入)。
在一些实施方案中,响应于指向应用程序图标705的第二类型的用户输入(例如,空中手势)(例如,不同于第一类型的用户输入),与应用程序图标705相关联的应用程序窗口706被打开,同时继续显示在接收第二类型的用户输入时显示的应用程序窗口703(例如,或其他虚拟对象),如图7O所示。
例如,响应于用户执行指向应用程序图标705的捏合并拖动输入(例如,或其他空中手势),应用程序窗口706被显示在根据拖动输入的位置处(例如,其中拖动输入具有拖动的开始位置和结束位置,并且应用程序窗口706被显示在与拖动的结束位置相对应的位置处)。例如,用户将应用程序图标705拖动到已经显示的应用程序窗口703旁边。又如,计算机系统使用用户拖动手势的方向来确定应用程序窗口706相对于已经显示的应用程序窗口703的位置(例如,在已经显示的应用程序窗口703的上方、下方、左侧或右侧)。在一些实施方案中,在用户执行拖动手势时,应用程序图标705被显示为正在移动。例如,基于正在执行拖动输入的用户的手部的移动来更新应用程序图标705。当用户移动用户的手部时,在三维环境中更新应用程序图标705的位置(例如,以在拖动手势期间跟随用户的手部的移动)。因此,在一些实施方案中,应用程序窗口703与应用程序窗口706在三维环境中同时显示。在一些实施方案中,应用程序窗口703和应用程序窗口706并排显示(例如,没有重叠)。在一些实施方案中,响应于检测到第二类型的用户输入,应用程序窗口706被显示在至少部分地与应用程序窗口703重叠的位置处(例如,同时继续显示应用程序窗口703的至少一部分)。
因此,如果用户执行选择应用程序图标705的捏合手势,则应用程序窗口706被打开以替换当前显示的应用程序窗口703的显示,但是如果用户执行选择并移动应用程序图标705的捏合并拖动手势,则应用程序窗口706在三维环境中被打开而不替换当前显示的应用程序窗口703的显示。
在一些实施方案中,计算机系统显示多个(例如,至少两个)应用程序图标(例如,警示的多个表示和/或应用程序坞中的多个应用程序图标),并且使得用户能够从多个应用程序图标中选择一个应用程序图标(例如,通过注视用户想要选择的应用程序图标)。响应于指向所选应用程序图标(例如,第二应用程序图标)的用户输入(例如,空中手势,诸如捏合和/或捏合并拖动),与所选应用程序图标相关联的应用程序的应用程序窗口要么与任何先前显示的应用程序窗口同时显示(例如,通过将该应用程序图标拖动到三维环境的一部分),要么通过替换任何先前显示的应用程序窗口(例如,通过在没有拖动输入的情况下捏合应用程序图标)来显示。
在一些实施方案中,使得用户能够打开(例如,选择)用于多个应用程序图标中的多于一个应用程序图标的多个应用程序窗口以便同时显示。在一些实施方案中,使得用户能够打开用于相同应用程序的多个窗口(例如,相同应用程序的多个实例)。
在一些实施方案中,在显示用于与所选应用程序图标(例如,第二应用程序图标)相关联的应用程序的应用程序窗口时,来自多个应用程序图标中的未被选择的应用程序图标(例如,或来自多个应用程序图标的应用程序的子组)继续在三维环境中显示(例如,使得用户还能够打开用于剩余应用程序图标的应用程序窗口)。例如,使得用户能够选择第三应用程序图标(不同于第二应用程序图标),并且响应于用户执行指向第三应用程序图标的捏合并拖动输入,用于与第三应用程序图标相关联的应用程序的应用程序窗口被打开并且与用于第二应用程序图标的应用程序窗口(例如,以及与任何先前显示的应用程序窗口)同时显示。
在一些实施方案中,某些类型的应用程序图标根据该应用程序图标用于预定义的一组应用程序(例如,消息传送应用程序或另一预定义类型的应用程序)而具有不同的行为。例如,对于消息传送应用程序,并非指向用于消息传送应用程序的应用程序图标(例如,通知)的捏合输入使得用于消息传送应用程序的应用程序窗口打开(并替换先前显示的应用程序窗口的显示),而是用于消息传送应用程序的应用程序窗口被显示为覆盖先前显示的应用程序窗口703的覆盖应用程序窗口,而不取消(例如,关闭或退出)应用程序窗口703。因此,使得用户能够与用于消息传送应用程序的应用程序窗口交互(例如,读取和/或回复消息)并快速返回到先前显示的应用程序窗口703,因为应用程序窗口703一直在后台(例如,在用于消息传送应用程序的应用程序窗口之后)保持活动状态。
图7P至图7W是示出根据一些实施方案的通过第一用户界面对象导航到第二用户界面对象的框图。在一些实施方案中,第一用户界面对象被显示在三维环境(例如,增强现实环境或虚拟现实环境)中并且包括一个或多个可选用户界面元素(例如,按钮、可选选项、控件和/或超链接),并且对一个或多个可选用户界面元素中的相应一者的选择使得计算机系统在三维环境中显示与所选用户界面元素相对应的第二用户界面对象。在某个实施方案中,第二用户界面对象是需要用户的输入和/或注意力来从三维环境中取消的模态用户界面对象。在一些实施方案中,第一用户界面对象和第二用户界面对象是包括背景拼盘和/或材料(例如,纹理、颜色、渐变、模糊层和/或其他背景材料)的窗口,并包括覆盖在背景拼盘和/或材料上的前景内容和/或用户界面对象。在一些实施方案中,第一用户界面对象和/或第二用户界面对象被显示有相应手柄,当被用户的输入拖动时,这些手柄根据用户的输入在三维环境中移动第一用户界面对象和/或第二用户界面对象。在一些实施方案中,第一用户界面对象具有相对于图7A至图7O中的用户界面对象702和/或703描述的特性、外观、状态和/或交互中的一些或全部,并且第二用户界面对象具有相对于图7A至图7O中的用户界面对象704-1、704-3、704-4、704-5和/或704-5描述的特性、外观、状态和/或交互中的一些或全部。
在图7P中,根据一些实施方案,计算机系统显示与用户的第一视点相对应的三维环境的第一视图。在一些实施方案中,三维环境的第一视图包括虚拟内容(例如,虚拟对象712、窗口708、虚拟壁纸、虚拟贴花、和/或其他图形元素和/或视觉效果)以及物理环境的表示(例如,墙壁7006的表示7006’、地板7008的表示7008’、物理对象7014的表示7014’、和/或由显示生成部件7100提供的视场中的物理环境的其他部分的表示)。如图7P所示,根据一些实施方案,由计算机系统显示的虚拟内容包括第一用户界面对象708,诸如提供对不同于第一用户界面对象的第二用户界面对象(例如,图7R中的第二用户界面对象720或另一用户界面对象)的访问和/或引起该第二用户界面对象的显示的窗口或交互式用户界面元素。在一些实施方案中,第一用户界面对象708包括覆盖或嵌入在背景725中的多个交互式用户界面元素(例如,用户界面元素710-1、710-2和710-3)和任选地非交互式内容(例如,视频内容、图像和/或图形)。在一些实施方案中,第一用户界面对象708被显示在三维环境中的第一位置处,并且任选地,面向用户的第一视点。在一些实施方案中,三维环境中的第一位置在与用户的第一视点相距第一距离处(例如,手臂的长度、用户的舒适观看距离、或由提供第一用户界面对象的计算机系统或应用程序选择的一至三英尺之间的距离)。在一些实施方案中,第一用户界面对象708与抓取器714(例如,在第一用户界面对象708的底部处,或在接近第一对象的拐角或另一侧的位置处)一起显示,利用该抓取器,第一用户界面对象708可根据用户的输入(例如,通过空中手势、通过触控板和/或通过指向设备提供的选择并拖动输入)在三维环境中重新定位。在一些实施方案中,第一用户界面对象708是包括控件和/或超链接的窗口,这些控件和/或超链接在被选择时使得计算机系统显示在选择之前未与第一用户界面对象同时显示在三维环境中的另一窗口或对话框。
在一些实施方案中,如图7P中的插图716所示,第一用户界面对象708在基本上垂直于第一用户界面对象708的前表面的方向上(例如,从用户的第一视点沿着用户的视线)具有有限的、不可忽略的厚度。在一些实施方案中,如插图716所示,第一用户界面对象708的前表面基本上平行于重力方向、基本上垂直于地板7008的表面、和/或基本上平行于由显示生成部件7100提供的视口的平面。在一些实施方案中,第一用户界面对象708的用户界面元素710-1、710-2和710-3被显示为与第一用户界面对象708的后表面相比更靠近第一用户界面对象708的前表面。在一些实施方案中,用户界面元素710-1、710-2和710-3在用户的视线方向上具有小于第一用户界面对象708的厚度的厚度,并且至少部分地嵌入在第一用户界面对象708的背景材料725内。
在一些实施方案中,第一用户界面对象708的背景材料725是半透明的并且具有基于围绕第一用户界面对象708的物理对象和/或虚拟对象的视觉特性而生成的视觉特性(例如,颜色、亮度和/或变化)。在一些实施方案中,第一用户界面对象708被显示为在其边缘上具有高亮部分,以模拟背景材料725在虚拟灯光和/或物理灯光的虚拟照明下的光学特性。在一些实施方案中,抓取器714被显示在第一用户界面对象708的底部边缘下方,任选地,与第一用户界面对象708的前表面相比更靠近第一用户界面对象708的后表面。
在图7Q中,在第一用户界面对象708被显示在三维环境中与用户的第一视点相距第一距离的第一位置处时,计算机系统检测指向第一用户界面对象708的至少一部分的第一用户输入。在该示例中,第一用户输入指向包括在第一用户界面对象708中的交互式用户界面元素之一,例如用户界面元素710-2。在一些实施方案中,检测第一用户输入包括检测指向用户界面元素710-2的用户注视707,该用户注视任选地在用户界面元素710-2上保持至少阈值时间量。在一些实施方案中,当在用户界面元素710-2上检测到持续至少阈值时间量的用户注视707时,计算机系统显示用户界面元素710-2已准备好被选择的视觉指示(例如,以动画方式显示用户界面元素710-2、相对于第一用户界面对象708中的其他用户界面元素放大、缩小和/或以其他方式在视觉上增强用户界面元素710-2)。在一些实施方案中,当与检测到指向用户界面元素710-2的注视输入707相结合(例如,同时或在其阈值时间量内),计算机系统检测到用户的手部处于就绪状态姿势(例如,抬起和/或不处于放松姿势)时,计算机系统显示用户界面元素710-2已准备好被选择的视觉指示。如图7Q中的插图716所示,在一些实施方案中,计算机系统将用户界面元素710-2显示在远离第一用户界面对象708的背景材料725升高的位置处(例如,在朝向用户的视点的方向上,和/或远离第一用户界面对象的前表面和后表面),以指示用户界面元素710-2已准备好被用户提供的手势或其他选择输入所选择。在一些实施方案中,响应于检测到空中手势718(诸如空中轻击手势、捏合手势或另一预先确定的手势),结合检测到指向用户界面元素710-2的注视输入707,计算机系统激活用户界面元素710-2(例如,显示另一视觉效果(例如,显示用户界面元素710-2的动画、改变用户界面元素710-2的大小和/或颜色、和/或显示用户界面元素710-2周围的高亮边框)以指示对用户界面元素710-2的选择),并且执行与对用户界面元素710-2的选择相对应的操作,即,在三维环境中显示第二用户界面对象720(如图7R所示)。在一些实施方案中,空中手势718是长捏合手势,其包括保持两个手指(例如,拇指和食指,或者拇指和中指)之间的接触达至少阈值时间量,并且在已经满足时间阈值之后中断接触。
在图7R中,计算机系统响应于检测到第一用户输入(包括检测到指向第一用户界面对象710的一部分(例如,用户界面元素708-2)的注视输入707,结合检测到空中手势718)而显示第二用户界面对象720。在一些实施方案中,第二用户界面对象720是包括覆盖或嵌入在背景727中的一个或多个交互式用户界面元素(例如,用户界面元素722-1、722-2和722-3)和/或非交互式内容(例如,视频、图像和/或图形)的窗口。在一些实施方案中,第二用户界面对象720是模态用户界面元素,其需要用户的显式输入和/或注意力(例如,如由手势、注视和/或语音命令所表示),之后才可以从三维环境中取消该模态用户界面元素。
在一些实施方案中,第二用户界面对象708被显示在三维环境中的第二位置处,并且任选地,面向用户的第一视点。在一些实施方案中,三维环境中的第二位置也在与用户的第一视点相距第一距离处(例如,手臂的长度、用户的舒适观看距离、或由提供第一用户界面对象的计算机系统或应用程序选择的一至三英尺之间的距离)。在一些实施方案中,计算机系统将先前在与第一视点相距第一距离处显示的第一用户界面对象708推到更远离第一视点的第三位置,使得第二用户界面对象720可以被显示在与第一视点相距第一距离处和/或比第一用户界面对象708更靠近第一视点处。在一些实施方案中,当第一用户界面对象708在三维环境中被推离第一视点时,其与其他对象(例如,虚拟对象712、物理对象7014的表示7014’和/或墙壁和地板7008的表示)的空间关系也相应地改变。
在一些实施方案中,第二用户界面对象720与抓取器724(例如,在第二用户界面对象720的底部处,或在接近第二用户界面对象的拐角或另一侧的位置处)一起显示,利用该抓取器,第二用户界面对象可根据用户的输入(例如,通过空中手势、通过触控板和/或通过指向设备提供的选择并拖动输入)在三维环境中重新定位。在一些实施方案中,第二用户界面对象720是包括控件和/或超链接的窗口,这些控件和/或超链接在被选择时使得计算机系统显示在选择之前未与第二用户界面对象720同时显示在三维环境中的另一窗口或对话框。
在一些实施方案中,如图7R中的插图716所示,第二用户界面对象720在基本上垂直于第二用户界面对象720的前表面的方向上(例如,从用户的第一视点沿着用户的视线)具有有限的、不可忽略的厚度。在一些实施方案中,如插图716所示,第二用户界面对象720的前表面基本上平行于重力方向、基本上垂直于地板7008的表面、和/或基本上平行于由显示生成部件7100提供的视口的平面。在一些实施方案中,如图7R的插图所示,第一用户界面对象708和第二用户界面对象720的前表面在三维环境中大致彼此平行。在一些实施方案中,第二用户界面对象720的用户界面元素722-1、722-2和722-3被显示为与第二用户界面对象720的后表面相比更靠近第二用户界面对象720的前表面。在一些实施方案中,用户界面元素722-1、722-2和722-3具有小于第二用户界面对象720的厚度的厚度,并且至少部分地嵌入在第二用户界面对象720的背景材料727内。
在一些实施方案中,第二用户界面对象720的背景材料727是半透明的并且具有基于围绕第二用户界面对象720的物理对象和/或虚拟对象的视觉特性而生成的视觉特性(例如,颜色、亮度和/或变化)。在一些实施方案中,第二用户界面对象720被显示为在其边缘上具有高亮部分,以模拟背景材料727在虚拟灯光或物理灯光的虚拟照明下的光学特性。在一些实施方案中,抓取器724被显示在第二用户界面对象720的底部边缘下方,任选地,与第二用户界面对象720的前表面相比更靠近第二用户界面对象720的后表面。在一些实施方案中,如图7R中的插图716所示,第二用户界面对象720被显示在先前被第一用户界面对象708占据的深度处,而第一用户界面对象708被推到更远离第一视点的平面。在一些实施方案中,计算机系统任选地将第一用户界面对象708侧向偏移适当的量,使得第一用户界面对象708在三维环境的第一视图中不被第二用户界面对象720完全或部分地阻挡。在一些实施方案中,第一用户界面对象708和/或第二用户界面对象720被视点锁定,并且根据视点的移动而在三维环境中移动。在一些实施方案中,在第一用户界面对象708和第二用户界面对象720根据用户的视点的移动而在三维环境中移动时,第一用户界面对象708和第二用户界面对象720在视点的移动期间保持它们距视点的相应距离。在一些实施方案中,响应于检测到视点在朝向第一用户界面对象和/或第二用户界面对象的方向上的移动,第一用户界面对象和/或第二用户界面对象在与视点的移动方向相同的方向上移动,以便将第一用户界面对象和/或第二用户界面对象保持在它们距视点的相应距离处。在一些实施方案中,第一用户界面对象和第二用户界面对象根据视点围绕第一用户界面对象和/或第二用户界面对象的移动而围绕相应垂直轴线(例如,重力方向上的轴线,或由用户的姿势定义的向下方向)移动和旋转,使得第一用户界面对象和第二用户界面对象继续面向用户的视点。
在一些实施方案中,当显示第二用户界面对象720时,先前在第一用户界面对象708上的输入焦点被自动地转移到第二用户界面对象720;并且在一些实施方案中,先前在第一用户界面对象708的底部边缘下方显示的抓取器714被移动到第二用户界面对象720的底部边缘下方,并且变成第二用户界面对象720的抓取器724。抓取器724用于在第二用户界面对象具有输入焦点时重新定位第二用户界面对象720(例如,通过结合指向抓取器724的注视输入检测到的捏合并拖动输入,和/或通过在抓取器724的位置处检测到的捏合并拖动输入)。
在一些实施方案中,响应于检测到第一用户输入,除了显示第二用户界面对象720并将第一用户界面对象708推离第一视点之外,计算机系统还减小第一用户界面对象708相对于第二用户界面对象720的视觉显著性,例如通过调暗第一用户界面对象708、使第一用户界面对象708模糊和/或使第一用户界面对象708更加半透明。
在一些实施方案中,计算机系统响应于检测到第一用户输入而显示动画转变,其中由第一用户输入激活的第一用户界面对象的部分(例如,用户界面元素710-2)转换成第二用户界面对象720。在一些实施方案中,动画转变显示,当第一用户界面对象708远离用户的第一视点后退时,第二用户界面对象720从由第一用户输入激活的第一用户界面对象708的部分的位置出现。
在图7S中,在响应于第一用户输入而显示第二用户界面对象720之后,例如,在与第一视点相距第一距离的第二位置处显示第二用户界面对象720并且在与第一视点相距大于第一距离的第三位置处显示第一用户界面对象708时,计算机系统检测到用户的注意力指向第一用户界面对象708。在一些实施方案中,检测用户的注意力指向第一用户界面对象708包括检测指向第一用户界面对象的至少一部分(例如,在第一视图中仍然可见和/或未被第二用户界面对象或三维环境中其他对象的存在所阻挡的第一用户界面对象的一部分)的注视输入709。在一些实施方案中,响应于检测到用户的注意力往回指向第一用户界面对象708,计算机系统将第一用户界面对象708的视觉显著性恢复到与其在第一位置处的先前水平和/或与第二用户界面对象720的水平相当的水平。例如,在一些实施方案中,如果第一用户界面对象708已经响应于第一用户输入而变暗、模糊和/或变得更加半透明,则计算机系统恢复第一用户界面对象708的亮度水平、清晰度和/或不透明度。在一些实施方案中,计算机系统将第一用户界面对象708保持在第三位置并将第二用户界面对象720保持在第二位置,并且通过使第二用户界面对象变暗、使第二用户界面对象模糊和/或使第二用户界面对象更加半透明来减小第二用户界面对象720的视觉显著性。在一些实施方案中,计算机系统使得第二用户界面对象720透明,任选地,在第一视图中留下其存在的轮廓或一些指示,使得当用户的注意力指向第一用户界面对象708时,可以更清楚地看到第一用户界面对象。如图7S所示,在一些实施方案中,当用户的注意力从第二用户界面对象708移动到第一用户界面对象720时,第一用户界面对象720和第二用户界面对象708保持它们距第一视点的相应距离,且反之亦然。在一些实施方案中,当用户的注意力指向第一用户界面对象708时,计算机系统将第一用户界面对象708带回到第一位置和/或与第一视点相距第一距离的位置。在一些实施方案中,当用户的注意力指向第一用户界面对象720时,计算机系统任选地暂时将第二用户界面对象708移开(例如,移到第一用户界面对象的侧面或后面),使得第一用户界面对象708不再被第二用户界面对象720在视觉上遮挡。在一些实施方案中,在没有将输入焦点移回到第一用户界面对象708的显式输入的情况下,计算机系统不将任何输入传递给第一用户界面对象708,并且显示第一用户界面对象708以仅供查看。例如,如果用户需要在向第二用户界面对象720提供输入之前再次查看第一用户界面对象708中的信息,则用户可以看向第一用户界面对象708的未被遮挡的部分以使其全部内容在第一位置或第三位置处重新可见。在一些实施方案中,计算机系统在注视输入709被保持在第一用户界面对象708上时检测到所需的用户输入(例如,空中轻击手势、捏合手势或另一预先确定的手势);并且作为响应,计算机系统将输入焦点返回到第一用户界面对象708,并且任选地从三维环境取消第二用户界面对象720。在一些实施方案中,计算机系统将第一用户界面对象708返回到与第一视点相距第一距离的第一位置或者返回到与当前视点相距第一距离的另一位置(例如,如果视点已同时移动的话)。例如,响应于检测到用户对第一用户界面对象708的注视并且基本上同时检测到捏合手势,计算机系统停止显示第二用户界面对象720并且将第一用户界面对象708朝向第一视点再次带到第一位置。在一些实施方案中,如果计算机系统仅仅检测到注视输入被移动到第一用户界面对象708或三维环境的其他部分,则计算机系统不从三维环境取消第二用户界面对象720。
在图7T中,在检测到用户的注意力指向第一用户界面对象708之后(并且没有检测到将输入焦点返回到第一用户界面对象708所需的手势输入),计算机系统检测到用户的注意力从第一用户界面对象708移开并返回到第二用户界面对象720。例如,计算机系统检测指向第二用户界面对象720的至少一部分(例如,在用户界面元素722-1的位置处、在第二用户界面对象720内的另一用户界面元素的位置处或在第二用户界面对象720的背景部分处)的注视输入711,并且作为响应,如果在检测到第二用户界面对象720上的注视输入之前已经减小了第二用户界面对象720的视觉显著性,则计算机系统增大该视觉显著性,和/或如果在检测到第二用户界面对象720上的注视输入711之前已经增大了第一用户界面对象708的视觉显著性,则计算机系统减小该视觉显著性。如图7T所示,在一些实施方案中,检测用户的注意力重新指向第二用户界面对象720包括检测指向第二用户界面对象720的至少一部分(例如,在第一视图中仍然可见和/或未被第一用户界面对象或三维环境中的其他对象的存在所阻挡的第二用户界面对象的一部分)的注视输入711。在一些实施方案中,响应于检测到用户的注意力往回指向第二用户界面对象720,计算机系统将第二用户界面对象的视觉显著性恢复到与其在第一位置处的先前水平相当的水平。例如,在一些实施方案中,如果第二用户界面对象720在较早失去用户对第一用户界面对象708的注意力时已经变暗、模糊和/或变得更加半透明,则计算机系统恢复第二用户界面对象720的亮度水平、清晰度和/或不透明度。在一些实施方案中,如果第二用户界面对象720在较早失去用户对第一用户界面对象708的注意力时已从第一位置移开,则计算机系统还将第二用户界面对象恢复回到第一位置。在一些实施方案中,如果在第一用户界面对象708具有用户的注意力时第一用户界面对象708已被带到第一位置,则计算机系统将第一用户界面对象708推回到第三位置。在一些实施方案中,计算机系统通过再次使第一用户界面对象708变暗、使第一用户界面对象708模糊和/或使第一用户界面对象708更加半透明来减小第一用户界面对象708的视觉显著性。在一些实施方案中,计算机系统使得第一用户界面对象708透明,任选地,在第一视图中留下其存在的轮廓或一些指示,使得当用户的注意力集中在第二用户界面对象720上时,可以以较少的干扰看到第二用户界面对象720。如图7T所示,在一些实施方案中,当用户的注意力从第一用户界面对象708移动到第二用户界面对象720时,第一用户界面对象708和第二用户界面对象720保持它们距第一视点的相应距离,且反之亦然。
在一些实施方案中,在没有将输入焦点移回到第一用户界面对象708的显式输入的情况下,计算机系统不将任何输入传递给第一用户界面对象708,因此,当用户的注意力转移回到第二用户界面对象720时,第二用户界面对象720已经具有输入焦点并且将立即响应用户的输入(例如,手势输入、语音命令和/或来自其他输入设备的输入)。例如,如果用户需要在向第二用户界面对象720提供输入之前再次查看第一用户界面对象708中的信息,则用户可以看向第一用户界面对象708的未被遮挡的部分以使其全部内容在第一位置或第三位置处重新可见,然后回头看向第二用户界面对象720以向第二用户界面对象720提供输入(例如,填充一些文本信息、作出选择、调整控件、导航到另一用户界面对象和/或取消第二用户界面对象)。在一些实施方案中,计算机系统可响应于用户的注视在第一用户界面对象708与第二用户界面对象720之间来回移动而多次来回切换第一用户界面对象708与第二用户界面对象720之间的视觉显著性。在一些实施方案中,在第一用户界面对象708与第二用户界面对象720之间来回切换视觉显著性时,计算机系统将输入焦点保持在第二用户界面对象720上,除非使用显式手势输入(例如,捏合手势结合指向第一用户界面对象708的注视输入)来取消第二用户界面对象720和/或将输入焦点返回到第一用户界面对象708。
在一些实施方案中,响应于在用户的注视指向第二用户界面对象720时检测到预先确定的取消手势,计算机系统取消第二用户界面对象720。在一些实施方案中,预先确定的取消手势是拖动并释放手势(例如,拇指和食指接触,随后手部移动而不中断拇指和食指之间的接触,之后在手部已经沿预先确定的方向(例如,向下或另一预先确定的方向)进行了阈值量的移动之后中断该接触)。在一些实施方案中,第二用户界面对象720被显示有对应的关闭示能表示,该关闭示能表示在被选择(例如,通过注视输入结合捏合手势,或通过另一类型的选择输入)时使得计算机系统停止显示第二用户界面对象720。在一些实施方案中,与取消第二用户界面对象720相结合,计算机系统还将第一用户界面对象708移回到第一位置或与当前视点相距第一距离的另一位置(如果视点已同时移动的话),并恢复第一用户界面对象708的视觉显著性(例如,如果第一用户界面对象708由于第二用户界面对象720的显示而被调暗、变模糊和/或变为半透明,则增加第一用户界面对象708的亮度、清晰度和/或不透明度)。
在图7U中,在计算机系统同时显示第一用户界面对象708和第二用户界面对象720时,例如在第二用户界面对象720被显示在第一位置处并具有输入焦点时,计算机系统检测到指向第二用户界面对象720的抓取器724的第二用户输入。在一些实施方案中,检测到第二用户输入包括检测到指向抓取器724的位置的注视输入713,结合检测到捏合并拖动手势。在一些实施方案中,计算机系统根据在手部7020保持其捏合姿势时该手部在拖动手势期间的移动来移动抓取器724和第二用户界面对象720(例如,同时保持抓取器724与第二用户界面对象720之间的空间关系)。在一些实施方案中,捏合并拖动手势的移动任选地是在三维环境中的任何方向上的平移移动。在一些实施方案中,抓取器724和第二用户界面对象720的移动是与捏合并拖动手势的移动相对应的三维环境中的任何方向上的平移移动。在一些实施方案中,抓取器724和第二用户界面对象720的移动使得第一用户界面对象708与第二用户界面对象720一起移动,从而在抓取器724和第二用户界面对象720根据捏合并拖动手势的移动而移动期间保持第一用户界面对象708与第二用户界面对象720之间的空间关系,如图7U至图7V所示。在一些实施方案中,抓取器724和第二用户界面对象720的移动不引起第一用户界面对象708的移动,并且第一用户界面对象708任选地被保持在三维环境中的第二位置处。
在一些实施方案中,如图7V所示,计算机系统检测分别指向用户界面元素722-1、722-2和/或722-3的用户输入,并且执行与用户界面元素相对应的相应操作。例如,响应于检测到指向第二用户界面对象720中的用户界面元素722-1的注视输入715-1,结合检测到预先确定的手势(例如,捏合手势、轻击手势或另一预先确定的手势),计算机系统执行与用户界面元素722-1相对应的操作。在一些实施方案中,与用户界面元素722-1相对应的操作包括打开窗口、启动应用程序、显示对话框、选择控件的值、激活或去激活设备控件(例如,闪光灯、WiFi接收器、媒体播放器和/或蓝牙)、和/或激活或去激活预先配置的设置或模式(例如,勿扰、飞行模式、安静模式、锁定模式和/或私人模式)。又如,响应于检测到指向第二用户界面对象720中的用户界面元素722-2的注视输入715-2,结合检测到另一预先确定的手势(例如,捏合并拖动手势、扭转手势或另一预先确定的手势),计算机系统执行与用户界面元素722-2相对应的另一操作。在一些实施方案中,与用户界面元素722-2相对应的操作包括调整控件的值(例如,音量、亮度、颜色渐变、不透明度、大小和/或温度)、改变设置、通过滑块控件(例如,用于媒体回放的滑擦条和/或播放列表)进行滑擦、滚动通过列表或页面和/或逐渐改变沉浸水平。
在一些实施方案中,如图7V至图7W所示,计算机系统检测到指向第二用户界面对象720的注视输入717,结合检测到预先确定的取消手势(例如,手势728、沿向下方向的捏合并拖动手势、或捏合并轻弹手势(例如,在轻弹手腕的同时中断拇指和食指之间的接触))(例如,如图7V所示),并且作为响应,计算机系统停止在三维环境中显示第二用户界面对象720并且在第二用户界面对象720的位置处(例如,在与当前视点相距第一距离处)重新显示第一用户界面对象708(例如,如图7W所示)。在一些实施方案中,如果第二用户界面对象720自从其最初被显示在第一位置处以来尚未被移动,则计算机系统在第二用户界面对象708被取消之后将第一用户界面对象720恢复回到第一位置。
在一些实施方案中,当第二用户界面对象720被取消时,抓取器724向上偏移到第一用户界面对象708的底部边缘下方并且变成第一用户界面对象708的抓取器714(如图7W所示)。例如,图7V中的抓取器724和图7W中的抓取器714与用户的当前视点相距的距离相同。计算机系统将根据用户输入以如相对于图7U至图7V中的抓取器724和第二用户界面对象720所描述的类似方式在三维环境中移动抓取器714和第一用户界面对象708。
在一些实施方案中,当在竖直方向(例如,重力方向,或如用户的姿势或显示生成部件的取向所定义的向下方向)上从第一用户界面对象708导航到小于第一用户界面对象708的第三用户界面对象时,抓取器714的位置将在第三用户界面对象被显示在第一位置处时保持不变。例如,响应于检测到对用户界面元素710-2的选择,计算机系统在第一位置(例如,图7P中的第一用户界面对象708的位置)或第一用户界面对象708的当前位置(例如,图7W中的第一用户界面对象708的位置)处显示第三用户界面对象,同时将第一用户界面对象708推到更远离当前视点的位置。此外,根据确定第三用户界面对象在竖直方向上具有比第一用户界面对象708更小的空间范围,计算机系统将抓取器714保持在其当前位置,并且抓取器714变为第三用户界面对象的手柄,并且计算机系统响应于指向抓取器714的捏合并拖动输入而移动第三用户界面对象。
图7X至图7AE是示出根据一些实施方案的在根据用户的视点的移动更新三维环境的视图的同时与三维环境中的对象相关联地显示虚拟对象的框图。在图7X至图7AE中,诸如模态窗口、控制面板、警示、通知或状态窗口之类的用户界面对象被放置在包围该用户界面对象所对应的对象(例如,物理对象或虚拟对象)的平滑表面上,并且当用户改变他/她相对于该对象的位置时,该用户界面对象基于平滑表面和用户的观看视角而偏移和转向。根据一些实施方案,(例如,完全或部分地)包围该对象的平滑表面任选地不在三维环境的视图中可视地显示,但其空间特性(例如,曲率、形状、大小和/或位置)被用于确定与该对象相关联地显示的该用户界面对象的潜在位置和取向。
在图7X中,计算机系统显示三维环境的第一视图(例如,包括物理环境7000或虚拟三维环境的表示的增强现实视图)。在该示例中,三维环境的第一视图包括墙壁7006的表示7006’、地板7008的表示7008’和物理对象7014的表示7014’。在三维环境的第一视图中,对象732在三维环境中的第一位置处可见。在一些实施方案中,对象732是虚拟对象,诸如虚拟三维对象,诸如虚拟球、虚拟雕塑或虚拟地标。在一些实施方案中,对象732是用户界面对象,诸如窗口、控制面板、应用程序的用户界面、文档、媒体播放器窗口和/或通信会话的窗口、或相对于图7A至图7W描述的用户界面对象中的任何用户界面对象(例如,用户界面对象702、705或其他用户界面对象)。在一些实施方案中,对象732是物理对象的表示,诸如家居控制设备、电器、媒体播放器设备、电子设备、人、雕塑、一件家具、动物和/或一件艺术品。在一些实施方案中,物理对象的表示是与物理环境中的物理对象相对应的相机馈送的一部分。在一些实施方案中,物理对象的表示是透过显示生成部件7100的透明或半透明部分查看的物理对象。应当理解,根据各种实施方案,对象732的以上示例仅仅是例示性的,并且不构成对象732可以表示的穷尽和完整的对象列表。
在图7X中,计算机系统检测到对应于对象732的事件;并且作为响应,计算机系统显示对应于该事件和/或第一对象732的第二对象740。在一些实施方案中,第二对象740是用户界面对象,诸如包括一个或多个交互式用户界面元素(例如,按钮、滑块、拨号盘、选择框、可选选项和/或输入字段)和/或与该事件和/或第二对象相关的信息(例如,媒体内容、文本、状态指示符和/或图形)的窗口和/或相对于图7A至图7W描述的用户界面对象(例如,用户界面对象702、704-1、704-3、704-5和705)中的任何用户界面对象。在一些实施方案中,第一事件是通知或警示的到达、系统请求的生成、通信请求的到达、系统状态的改变和/或与第一对象相关联的预设条件的满足。在一些实施方案中,检测到第一事件包括检测到指向第一对象732的预先确定的用户输入,诸如检测到指向第一对象732的注视输入721,结合检测到手势730(例如,捏合手势、轻击手势或另一预先确定的手势)。
在一些实施方案中,如图7X所示,第一对象732在被锚定到物理环境或三维环境的三维环境中具有相应位置和相应取向。例如,当用户在物理环境中移动时,用户的视点相对于物理环境的表示和三维环境中的第一对象732改变,而第一对象732与物理环境的表示之间的空间关系保持不变。
在图7Y中,响应于检测到对应于第一对象732的第一事件,计算机系统显示对应于第一对象732的第二对象740。在一些实施方案中,第二对象是包括一个或多个交互式用户界面元素(例如,按钮、图标、控件、输入字段、下拉菜单和/或可选选项)(例如,用户界面元素742-1和742-2和/或其他用户界面元素)和/或内容(例如,指示符、状态信息、图形、电影、视频、视觉效果、壁纸和/或图像)的窗口。在一些实施方案中,第二对象740是模态窗口,其需要用户注意或输入信息后才可以从三维环境取消第二对象(例如,诸如相对于图7P至图7W描述的第二用户界面对象720)。在一些实施方案中,第一对象732是智能家用电器,并且第二对象740提供控制面板用户界面,该控制面板用户界面包括用于调整由智能家用电器控制的一个或多个设备功能(例如,灯、锁、相机、扬声器、恒温器和/或媒体播放器)的控件。在一些实施方案中,第一对象732是数字助理中枢,并且第二对象740提供交互界面,该交互界面响应于用户的手势和/或语音请求而提供信息和交互式选项。在一些实施方案中,第一对象732是应用程序的应用程序图标或窗口,并且第二对象740是与应用程序图标相对应的应用程序的用户界面或模态窗口。在一些实施方案中,第一对象732是应用程序窗口,并且第二对象740是由与应用程序窗口相对应的应用程序生成的警示。在一些实施方案中,第一对象732是应用程序窗口,并且第二对象740是由计算机系统生成的系统警示,而不管哪个应用程序提供应用程序窗口。
如图7Y所示,在三维环境中的第一位置处以第一取向显示第二对象740,其中在第一位置处以第一取向显示的第二对象面向与三维环境的第一视图相对应的第一视点。在一些实施方案中,第二对象740的第一位置和第一取向与第二对象740在三维环境中围绕第一对象732的至少一部分的弯曲表面上的放置一致。在该例示性示例中,弯曲表面是包围第一对象732的圆柱形表面。例如,如图7Y中的插图734所示,三维环境的顶视图示出了包围第一对象732的矩形形状的圆柱形表面(虚线圆736)。在一些实施方案中,弯曲表面是具有圆形基部的圆柱形表面。在一些实施方案中,弯曲表面是具有椭圆形基部的圆柱形表面。在一些实施方案中,弯曲表面不完全包围第一对象732,并且可以在一侧上开口,诸如部分包围第一对象732的双曲面或抛物面的情况。在一些实施方案中,弯曲表面是包围第一对象732的至少一部分的球形或椭球形表面。在一些实施方案中,第二对象740被定位在弯曲表面上的第一位置处并且被取向为与弯曲表面相切并面向用户的第一视点。在一些实施方案中,弯曲表面是连续且凸形的(例如,远离第一对象弯曲)。
在一些实施方案中,根据确定第二对象740大于第一对象732,计算机系统在显示第二对象740时将第二对象740的底部边缘与第一对象732的底部边缘对准;并且根据确定第二对象740小于第一对象732,计算机系统在显示第二对象740时将第二对象740的中心与第一对象732的中心对准。
在一些实施方案中,第二对象740被世界锁定到三维环境,特别是被世界锁定到弯曲表面和第一对象732。在一些实施方案中,当第一对象732在三维环境中移动时,弯曲表面根据第一对象732的移动而移动,并且因此,第二对象740在三维环境中与弯曲表面和第一对象732一起移动。在一些实施方案中,计算机系统基于弯曲表面相对于当前视点的新位置和取向来确定第二对象740的新位置和取向。在一些实施方案中,仅第一对象732的一些移动将导致弯曲表面的位置和取向的改变。如图7Y所示,在显示第一对象732并且在围绕第一对象732的弯曲表面上显示第二对象740时,计算机系统检测到与在三维环境中旋转第一对象732的请求相对应的用户输入(例如,指向第一对象732的注视输入721结合手势输入746,或另一类型的用户输入)。响应于检测到该用户输入,计算机系统在三维环境中旋转第一对象732(例如,将第一对象732的左侧抬高到水平面之上,向后倾斜第一对象732,和/或将第一对象732向左转动四十五度),如图7Z所示。作为第一对象732的操纵的结果,围绕第一对象732的弯曲表面也被重定向(例如,如图7Y和图7Z所示的弯曲表面736的顶部边缘上的固定点738的移动所指示)。
根据第一对象732的旋转和弯曲表面的旋转,计算机系统还将第二对象740重新定位在弯曲表面上并且使第二对象740重定向,使得第二对象740继续面向用户的第一视点。在图7Z中,第二对象740被放置在第二位置处并且具有第二取向,其中第二对象740的第二位置和第二取向与第二对象740在弯曲表面736上的放置一致。如图7Z中的插图734所示,由于第一对象732的移动以及任选地围绕第一对象732的弯曲表面736的移动,第二对象740的位置和取向相对于图7Y所示的第二对象740的位置和取向已经改变。
在图7Z中,在显示第一对象732并且在围绕第一对象的弯曲表面上显示第二对象740时,计算机系统检测到与在三维环境中平移和/或旋转第一对象的请求相对应的用户输入(例如,结合指向第一对象732的注视输入721和/或指向抓取器744的注视输入723检测到的手势输入748-1,或另一类型的用户输入)。响应于检测到该用户输入,计算机系统在三维环境中平移和/或旋转第一对象732(例如,朝向用户的视点移动第一对象732,将第一对象732的左侧落在水平面上,向前倾斜第一对象732,并且将第一对象732向右转动四十五度)。作为第一对象732的操纵的结果,围绕第一对象732的弯曲表面也被重定向(例如,如图7Z和图7AA所示的弯曲表面736的顶部边缘上的固定点738的移动所指示)。
根据第一对象732的平移和旋转以及弯曲表面736的平移和旋转,计算机系统还将第二对象740重新定位在弯曲表面736上并且使第二对象740重定向,使得第二对象740继续面向用户的第一视点。在图7AA中,第二对象740被放置在第三位置处并且具有第三取向,其中第二对象740的第三位置和第三取向与第二对象740在弯曲表面736上的放置一致。如图7AA中的插图734所示,由于第一对象732的移动以及围绕第一对象732的弯曲表面736的移动,第二对象740的位置和取向相对于图7Y中的第二对象740的位置和取向以及图7Z中的第二对象740的位置和取向已经改变。
在图7AB至图7AC中,计算机系统检测到(例如,当用户在物理环境中移动时,和/或当显示生成部件在物理环境中移动时)用户的当前视点已经在三维环境中移动(例如,从图7X至图7AA中的第一视点改变到图7AB中的第二视点,然后改变到图7AC中的第三视点)。在该示例中,在图7AB中,用户的当前视点已经移动得更远离第一对象732,并且在图7AC中,用户的当前视点已经围绕第一对象732旋转(例如,在从上面观看时的逆时针方向上)。在图7AB中,随着用户的视点在三维环境中移动,计算机系统改变第二对象740的位置和取向,第二对象740的位置和取向继续保持在弯曲表面736上,并且第二对象740继续面向用户的当前视点。类似地,在图7AC中,随着用户的视点在三维环境中移动,计算机系统改变第二对象740的位置和取向,第二对象740的位置和取向继续保持在弯曲表面736上,并且第二对象740继续面向用户的当前视点。与第二对象740相反,第一对象732在三维环境中保持其原始位置和取向,并且第一对象732的视图随着用户的视点改变而改变(例如,在图7AA、图7AB和图7AC所示的视图之间改变)。在一些实施方案中,基于弯曲表面736的连续且平滑的曲率,第二对象740的移动和重定向是连续且平滑的。
在一些实施方案中,如图7AD所示,计算机系统检测到用户的注视转移到第一对象732的区域之外(在弯曲表面的范围之外达至少阈值时间量而不返回到该范围),和/或转移到不同于第一对象732的另一区域或对象上(例如,物理对象7014,和/或三维环境中的另一对象或区域);并且作为响应,计算机系统停止显示第二对象740或减小第二对象740在三维环境的视图中的视觉显著性(例如,调暗第二对象、使第二对象变暗、模糊和/或更加半透明)。如图7AD所示,在用户的当前视点已经进一步移动之后,用户的注视(例如,注视输入731)被转移到三维环境中的物理对象7014’,并且第一对象732的视图基于视点的移动而改变,并且第二对象740停止在三维环境的当前视图中显示。应当注意,此时,尚未从三维环境取消第二对象740,因为尚未检测到用于清除第二对象740的用户输入。在一些实施方案中,(例如,在用户视场的顶部中心区域或用户视场的另一区域中)显示第二对象740在三维环境中的存在的指示符。在图7AE中,计算机系统检测到用户的注视(例如,注视输入733)被转移回到第一对象732的区域中;并且计算机系统在第四位置处以第四取向重新显示第二对象740,其中在第四位置和第四取向处显示的第二对象740与第二对象740以面向用户的当前视点的取向在弯曲表面736上的放置一致。如图7AE所示,第二对象740与弯曲表面736的顶部边缘上的固定点738的相对位置指示第二对象740已在弯曲表面736上移动到与图7Y、图7Z、图7AA、图7AB和图7AC所示的位置相比不同的位置,并且继续面向已移动到与图7Y、图7Z、图7AA、图7AB和图7AC所示的位置相比不同的位置的用户的当前视点。根据一些实施方案,与第二对象740相反,第一对象732保持其在三维环境中的位置和取向,而不管用户的当前视点的移动。
在一些实施方案中,根据确定第一对象732是二维内容(例如,二维窗口、应用程序图标、文档窗口、媒体窗口和/或控制面板),并且当响应于第一事件的发生而显示第二用户对象740时,计算机系统将第一对象732从用户的当前视点移开;并且根据确定第一对象732是三维内容(例如,三维虚拟对象、三维形状、在远离用户的方向上具有不可忽略的深度的对象、三维物理对象(例如,智能家用电器、数字辅助设备、电子设备和/或物理工件或其他感兴趣的物品)的表示,计算机系统不将第一对象732从当前视点移开。在一些实施方案中,当计算机系统将第一对象732从视点移开时,计算机系统任选地减小第一对象732的视觉显著性。在一些实施方案中,关于计算机系统如何将第一对象732从用户的视点移开以及第一对象732和第二对象740的外观如何响应于用户的交互(例如,经由注视、手势和/或视点的移动的交互)而改变的更多细节在图7P至图7W和所附描述中公开(例如,在图7P至图7W中的示例中,第一对象732是第一用户界面对象708,并且第二对象740是第二用户界面对象720)。
在一些实施方案中,第一对象732是与应用程序相对应的对象(例如,应用程序图标、应用程序的窗口或应用程序的用户界面),并且响应于检测到第一事件,第二对象740以与第一对象732的第一空间关系被显示在三维环境中(例如,与第一对象的底部对准并且被显示在第一对象的前面;或与第一对象的中心对准并且被显示在第一对象上方)。在一些实施方案中,第一对象732是与产品或服务相对应的对象(例如,应用程序图标、物理产品、自助服务终端和/或服务站),并且第二对象740是使得能够对产品或服务进行支付的支付应用程序的用户界面。
在一些实施方案中,第一对象732是与计算机系统的系统级功能相对应的对象(例如,系统警示、操作系统用户界面或通知,而不是应用程序图标、应用程序的窗口或应用程序的用户界面),并且响应于检测到第一事件,第二对象740以与当前视点的第一空间关系被显示在三维环境中(例如,被显示在视场的中间,和/或被显示在视场的左上象限中)。在一些实施方案中,第一对象732是智能家居对象或控制面板的表示,并且第二对象740是包括用于调整计算机系统的多个系统级功能(例如,WiFi、操作模式、音量、亮度等)的多个控件在内的控制面板的用户界面。
在一些实施方案中,根据第一对象是与应用程序相对应的对象还是与系统级功能相对应的对象的确定,计算机系统选择性地将第二对象显示为被世界锁定(例如,到第一对象732和/或弯曲表面736,如先前相对于图7X至图7AD所描述),或被视点锁定到用户的当前视点(例如,能够以与先前相对于图7X至图7AD所描述的不同的方式根据视点的平移移动来远离第一对象和弯曲表面移动)。在一些实施方案中,当第二对象740被显示为被世界锁定到第一对象732和弯曲表面736时,在弯曲表面736的约束下调整第二对象740的位置和取向以面向用户的当前视点(例如,如相对于图7X至图7AD所描述)。
在一些实施方案中,根据一些实施方案,在本文(例如,相对于图7A至图7AE以及图8至图12)所述的各种示例和实施方案中使用的输入手势包括通过用户的手指相对于用户的手部的其他手指或部分的移动执行的用于与虚拟或混合现实环境交互的空中手势。在一些实施方案中,空中手势是在用户不触摸作为设备的一部分的输入元件(或独立于作为设备的一部分的输入元件)的情况下检测到的并且基于所检测到的用户身体的一部分穿过空中的运动(包括用户的身体相对于绝对参考的运动(例如,用户的手臂相对于地面的角度或用户的手部相对于地面的距离)、相对于用户身体的另一部分的运动(例如,用户的手部相对于用户的肩部的移动、用户的一只手相对于用户的另一只手的移动、和/或用户的手指相对于用户的另一手指或手部的一部分的移动)、和/或用户身体的一部分的绝对运动(例如,包括手以预定姿势将移动预定量和/或速度的轻击手势、或包括用户身体的一部分的预定速度或旋转量的摇动手势))的手势。
通常,在输入手势是空中手势的具体实施中(例如,在不存在与输入设备的物理接触的情况下,该输入设备向计算机系统提供关于哪个用户界面元素是用户输入的目标的信息,诸如与显示在触摸屏上的用户界面元素的接触、或与鼠标或触控板的接触以将光标移动到用户界面元素),手势考虑用户的注视以确定用户输入的目标(例如,对于直接输入,如下所述)。因此,在涉及空中手势的具体实施中,输入手势是例如与用户的手指和/或手部的移动组合(例如,同时)的朝向用户界面元素的注视以执行捏合和/或轻击输入,如下文更详细描述。
在一些实施方案中,直接或间接地参考用户界面对象来执行指向用户界面对象的输入手势。例如,根据用用户的手部在与三维环境中的用户界面对象的位置相对应的位置(例如,如基于用户的当前视点所确定的)处执行输入,直接在用户界面对象上执行用户输入。在一些实施方案中,在检测到用户对用户界面对象的注视时,根据在用户执行输入手势的同时用户的手部的位置不在对应于用户界面对象在三维环境中的位置的该位置处,在用户界面对象上间接执行输入手势。例如,对于直接输入手势,用户能够通过在与用户界面对象的显示位置相对应的位置处或附近(例如,从选项的外边缘或选项的中心部分测量的0.5cm、1cm、5cm内或0至5cm之间的距离内)发起手势来将用户的输入引导至用户界面对象。对于间接输入手势,用户能够通过关注用户界面对象(例如,通过注视用户界面对象)来将用户的输入引导至用户界面对象,并且在关注选项的同时,用户发起输入手势(例如,在计算机系统可检测到的任何位置处)(例如,在不对应于用户界面对象的显示位置的位置处)。
在一些实施方案中,根据一些实施方案,在本文(例如,相对于图7A至图7AE和图8至图12)所述的各种示例和实施方案中使用的输入手势(例如,空中手势)包括捏合输入和轻击输入,以用于与虚拟或混合现实环境交互。例如,下文所述的捏合输入和轻击输入被执行为空中手势。
在一些实施方案中,捏合输入是以下各项中的一项或多项:捏合手势、长捏合手势、捏合并拖动手势或双捏合手势。例如,捏合手势包括手部的两个或更多个手指的移动以彼此接触,即,任选地,随后是彼此立即(例如,在0至1秒内)中断接触。长捏合手势包括在检测到彼此接触的中断之前手部的两个或更多个手指彼此接触至少阈值时间量(例如,至少1秒)的移动。例如,长捏合手势包括用户保持捏合手势(例如,其中两个或更多个手指进行接触),并且长捏合手势继续直到检测到两个或更多个手指之间的接触中断为止。在一些实施方案中,双捏合手势包括彼此立即(例如,在预定义时间段内)连续检测到的两个(例如,或更多个)捏合输入(例如,由同一手部执行)。例如,用户执行第一捏合输入(例如,捏合输入或长捏合输入),释放第一捏合输入(例如,中断两个或更多个手指之间的接触),并且在释放第一捏合输入之后的预定义时间段内(例如,在1秒内或在2秒内)执行第二捏合输入。
在一些实施方案中,捏合并拖动手势包括执行的捏合手势(例如,捏合手势或长捏合手势),并结合(例如,随后)将用户的手部的位置从第一位置(例如,拖动的开始位置)改变到第二位置(例如,拖动的结束位置)的拖动输入。在一些实施方案中,用户在执行拖动输入的同时保持捏合手势,并且释放捏合手势(例如,打开他们的两个或更多个手指)以结束拖动手势(例如,在第二位置处)。在一些实施方案中,捏合输入和拖动输入由同一手部执行(例如,用户捏合两个或更多个手指以彼此接触并且利用拖动手势将同一手部移动到第二位置)。在一些实施方案中,由用户的第一手部执行捏合输入,并且由用户的第二手部执行拖动输入(例如,在用户用用户的第一手部继续捏合输入的同时,用户的第二手部从第一位置移动到第二位置。在一些实施方案中,输入手势包括使用用户的两只手部执行的输入(例如,捏合和/或轻击输入)。例如,输入手势包括彼此结合(例如,同时或在预定义时间段内)执行的两个(例如,或更多个)捏合输入。例如,使用用户的第一手部执行第一捏合手势(例如,捏合输入、长捏合输入或捏合并拖动输入),并且结合使用第一手部执行捏合输入,使用另一手部(例如,用户两只手部中的第二手部)执行第二捏合输入。在一些实施方案中,用户两只手部之间的移动(例如,增大和/或减小用户两只手部之间的距离或相对取向)
在一些实施方案中,作为空中手势执行的轻击输入(例如,指向用户界面元素)包括用户的手指朝向用户界面元素的移动、用户的手部朝向用户界面元素的移动(任选地,用户的手指朝向用户界面元素延伸)、用户的手指的向下运动(例如,模仿鼠标点击运动或触摸屏上的轻击)、或用户的手部的其他预定义移动。
在一些实施方案中,根据一些实施方案,在本文(例如,相对于图7A至图7AE以及图8至图12)所述的各种示例和实施方案中使用的输入手势任选地包括离散的小运动手势(这些离散的小运动手势通过将用户的手指相对于用户的手部的其他手指或部分移动来执行),而任选地不需要较大移动用户的整个手部或手臂使其远离其自然位置和姿势来在进行用于与虚拟或混合现实环境进行交互的手势之前或期间立即执行操作。
在一些实施方案中,输入手势通过分析由传感器系统(例如,传感器190,图1;图像传感器314,图3)捕获的数据或信号来检测。在一些实施方案中,传感器系统包括一个或多个成像传感器(例如,一个或多个相机,诸如运动RGB相机、红外相机、深度相机等)。例如,该一个或多个成像传感器是计算机系统(例如,图1中的计算机系统101(例如,便携式电子设备或HMD))的部件或者向该计算机系统提供数据,该计算机系统包括显示生成部件(例如,图1、图3和图4中的显示生成部件120(例如,用作显示器和触敏表面的触摸屏显示器、立体显示器和/或具有透传部分的显示器))。在一些实施方案中,该一个或多个成像传感器在设备的与设备的显示器相反的一侧上包括一个或多个后向相机。在一些实施方案中,由头戴式系统的传感器系统(例如,包括立体显示器的VR头戴式耳机,该立体显示器为用户的左眼提供左图像并为用户的右眼提供右图像)检测输入手势。例如,为头戴式系统的部件的一个或多个相机安装在该头戴式系统的前部和/或下侧上。在一些实施方案中,一个或多个成像传感器位于其中使用头戴式系统的空间中(例如,在房间中的各个位置中围绕头戴式系统排列),使得成像传感器捕获该头戴式系统和/或该头戴式系统的用户的图像。在一些实施方案中,由平视设备(诸如,平视显示器、具有显示图形的能力的汽车挡风玻璃、具有显示图形的能力的窗户、具有显示图形的能力的透镜)的传感器系统检测输入手势。例如,一个或多个成像传感器附接到汽车的内部表面。在一些实施方案中,传感器系统包括一个或多个深度传感器(例如,传感器阵列)。例如,该一个或多个深度传感器包括一个或多个基于光的(例如,红外)传感器和/或一个或多个基于声音的(例如,超声)传感器。在一些实施方案中,传感器系统包括一个或多个信号发射器,诸如光发射器(例如,红外发射器)和/或声音发射器(例如,超声发射器)。例如,在光(例如,来自具有预先确定图案的红外光发射器阵列的光)被投影到手部(例如,手部7102)上时,由该一个或多个相机捕获在光的照明下的手部的图像,并且所捕获的图像被分析以确定手部的位置和/或构造。使用来自指向手部的图像传感器的信号来确定输入手势,而不是使用触敏表面或其他直接接触机构或基于接近的机构的信号,允许用户自由选择在利用他/她的手部提供输入手势时是执行大幅运动还是保持相对静止,而不经受由特定输入设备或输入区域施加的限制。
在一些实施方案中,轻击输入任选地是用户的手部的拇指在食指上方(例如,在与拇指相邻的食指的一侧上)的轻击输入。在一些实施方案中,在不需要将拇指从食指的该侧面抬起的情况下检测轻击输入。在一些实施方案中,根据确定拇指的向下移动之后是拇指的向上移动来检测轻击输入,其中拇指与食指的该侧接触小于阈值量的时间。在一些实施方案中,根据确定拇指从抬起位置移动到触压位置并且保持在触压位置至少第一阈值量的时间(例如,轻击时间阈值或长于轻击时间阈值的另一个时间阈值)来检测轻击-保持输入。在一些实施方案中,计算机系统要求手部作为整体在位置中保持基本上静止达至少第一阈值量的时间,以便检测拇指在食指上进行的轻击-保持输入。在一些实施方案中,在不需要手部作为整体保持基本上静止(例如,手部作为整体可以在拇指搁置在食指的该侧上时移动)的情况下检测触摸保持输入。在一些实施方案中,当拇指触压食指的该侧并且手部作为整体在拇指搁置在食指的该侧上时移动时检测轻击-保持-拖动输入。
在一些实施方案中,轻弹手势任选地是通过拇指跨食指(例如,从食指的手掌侧到背侧)的移动进行的推动或轻弹输入。在一些实施方案中,拇指的伸展移动伴随着远离食指的该侧的向上移动,例如,如在由拇指进行的向上轻弹输入中。在一些实施方案中,在拇指的向前移动和向上移动期间,食指在与拇指的方向相反的方向上移动。在一些实施方案中,通过拇指从伸展位置移动到回缩位置来执行反向轻弹输入。在一些实施方案中,在拇指的向后移动和向下移动期间,食指在与拇指的方向相反的方向上移动。
在一些实施方案中,轻扫手势任选地是通过拇指沿着食指(例如,沿着与拇指相邻或手掌的该侧上的食指的一侧)的移动进行的轻扫输入。在一些实施方案中,食指任选地处于伸展状态(例如,基本上笔直)或卷曲状态。在一些实施方案中,在轻扫输入手势中拇指的移动期间,食指在伸展状态和卷曲状态之间移动。
在一些实施方案中,各种手指的不同的指骨对应于不同的输入。拇指在各种手指(例如,食指、中指、无名指,以及任选地,小拇指)的各种指骨上方的轻击输入任选地映射到不同操作。类似地,在一些实施方案中,不同的推动或点击输入可由拇指跨不同手指和/或手指的不同部分执行,以在相应用户界面上下文中触发不同操作。类似地,在一些实施方案中,由拇指沿着不同手指和/或在不同方向上(例如,朝向手指的远侧端部或近侧端部)执行的不同轻扫输入在相应用户界面上下文中触发不同操作。
在一些实施方案中,计算机系统基于拇指的移动类型而将轻击输入、轻弹输入和轻扫输入视为不同类型的输入。在一些实施方案中,计算机系统将具有被拇指轻击、触摸或轻扫的不同手指位置的输入视为给定输入类型(例如,轻击输入类型、轻弹输入类型、轻扫输入类型等)的不同子输入类型(例如,近侧、中间、远侧子类型,或者食指、中指、无名指或小拇指子类型)。在一些实施方案中,通过移动手指(例如,拇指)执行的移动量和/或与手指的移动相关联的其他移动度量(例如,速度、初始速度、结束速度、持续时间、方向、移动模式等)用于定量地影响通过手指输入触发的操作。
在一些实施方案中,计算机系统识别组合输入类型,这些组合输入类型组合由拇指进行的一系列移动,诸如轻击-轻扫输入(例如,拇指在手指上的触压,然后是沿着手指的该侧的轻扫)、轻击-轻弹输入(例如,拇指在手指上方的触压,紧接着是跨手指从手指的手掌侧到背侧的轻弹)、双击输入(例如,在大约相同位置处在手指的该侧上的两次连续轻击)等。
在一些实施方案中,手势输入由食指而不是拇指执行(例如,食指在拇指上执行轻击或轻扫,或者拇指和食指朝向彼此移动以执行捏合手势等)。在一些实施方案中,与不具有通过手腕移动进行的修改输入的手指移动输入相比,手腕移动(例如,手腕在水平方向或竖直方向上的轻弹)紧接在手指移动输入之前执行,紧接在手指移动输入之后(例如,在阈值量的时间内)执行或与手指移动输入同时执行,以在当前用户界面上下文中触发附加操作、不同操作或经修改操作。在一些实施方案中,用面向用户面部的用户手掌执行的手指输入手势被视为与用背对用户面部的用户手掌执行的手指输入手势不同类型的手势。例如,与响应于用背对用户面部的用户手掌执行的轻击手势而执行的操作(例如,相同操作)相比,用面向用户的用户手掌执行的轻击手势执行的操作具有增加(或减少)的隐私保护。
尽管在本公开中提供的示例中,可以使用一种类型的手指输入来触发一种类型的操作,但是在其他实施方案中,其他类型的手指输入任选地用于触发相同类型的操作。
下文参考相对于下面的图8至图12描述的方法800、900、1000、1100和1200提供了关于图7A至图7AE的附加描述。
图8是根据一些实施方案的在对象(例如,虚拟对象或真实对象)前面显示警示的方法的流程图,并且响应于用户转身离开该对象,如果该警示是系统警示,则该警示被显示在远离该对象的位置处(例如,在如用户转身前相对于用户的当前视点的相同相对位置处),并且如果该警示是对象警示(例如,与该对象相关的应用程序警示),则该警示不被显示在远离该对象的位置处。
在一些实施方案中,方法800在计算机系统(例如,图1中的计算机系统101)处执行,该计算机系统包括第一显示生成部件(例如,图1、图3和图4中的显示生成部件120)(例如,平视显示器、显示器、触摸屏和/或投影仪)和任选地一个或多个输入设备(例如,向下指向用户的手部的相机(例如,相机、颜色传感器、红外传感器和/或其他深度感测相机)或从用户头部向前指向的相机)。在一些实施方案中,方法800通过存储在非暂态计算机可读存储介质中并由计算机系统的一个或多个处理器诸如计算机系统101的一个或多个处理器202(例如,图1A中的控制单元110)执行的指令来管理。方法800中的一些操作任选地被组合,并且/或者一些操作的次序任选地被改变。
在一些实施方案中,方法800在计算机系统(例如,图1中的计算机系统101、相对于图7A至图7AE描述的计算机系统101)处执行。在一些实施方案中,计算机系统与第一显示生成部件(例如,第一显示生成部件是平视显示器、头戴式显示器(HMD)、显示器、触摸屏和/或投影仪)和一个或多个输入设备(例如,相机、控制器、触敏表面、操纵杆、按钮、手套、手表、运动传感器和/或取向传感器)通信。在一些实施方案中,第一显示生成部件是相对于图7A至图7AE描述的第一显示生成部件7100。在一些实施方案中,计算机系统是集成设备,该集成设备具有封闭在与第一显示生成部件相同的外壳中的一个或多个处理器和存储器以及一个或多个输入设备中的至少一些输入设备。在一些实施方案中,计算机系统包括计算部件(例如,服务器,移动电子设备诸如智能电话或平板设备,可穿戴设备诸如手表、腕带或听筒,台式计算机或膝上型计算机),该计算部件包括与第一显示生成部件和/或一个或多个输入设备分开的一个或多个处理器和存储器。在一些实施方案中,第一显示生成部件以及一个或多个输入设备被集成并包围在相同外壳中。根据一些实施方案,相对于图7A至图7H描述了方法800的特征中的许多特征。
方法800涉及显示具有不同特性的不同类型的警示,使得在用户在物理环境中移动时,持久类型的警示(例如,系统警示)在对应于物理环境的三维环境中跟随用户,以便在三维环境中保持该警示与用户之间的相同相对位置,而非持久类型的警示(例如,通知)不被保持在三维环境中对于用户的相同相对位置处。在用户在物理环境中四处移动时自动改变某些类型的警示的显示位置(其中基于警示的类型来确定显示位置),这在用户在物理环境中移动时提供了实时视觉反馈,从而改变三维环境的用户视点。为用户提供改进的视觉反馈增强了该系统的可操作性并且使用户-系统界面更有效(例如,通过帮助用户提供合适的输入并且减少操作该系统/与该系统进行交互时的用户错误),这又通过使用户能够更快速且有效地使用该系统而减少了电力使用并且延长了该系统的电池寿命。
在执行方法800时,计算机系统经由第一显示生成部件在三维环境的第一视图中显示(802)第一对象(例如,与应用程序相关联的用户界面对象、应用程序视图(例如,窗口)、虚拟对象或物理环境中的物理对象)。在一些实施方案中,三维环境的第一视图对应于用户的第一视点或当前视点(例如,第一视图是用户在第一视点看到的视图)。在一些实施方案中,三维环境包括物理环境的一部分(例如,在AR视图中)。
在显示第一对象时,计算机系统在相对于三维环境的第一位置处显示(804)警示,该警示在第一视图中至少部分地与第一对象重叠,其中第一位置与用户(例如,与用户的预定义的部分或与用户的当前视点)具有相应空间关系。例如,该警示(例如,系统警示或应用程序通知)被显示为至少部分地覆盖第一对象(例如,在该对象的前面或在应用程序窗口的前面)。在一些实施方案中,该警示被显示在三维环境的当前视图内的预定义的位置处(例如,当前视图的顶部中心部分)。
计算机系统经由一个或多个输入设备检测(806)用户的当前视点从第一视点到第二视点的移动。在一些实施方案中,检测从第一视点到第二视点的移动包括检测用户在物理环境中的姿势和/或取向的变化。在一些实施方案中,第一视点对应于用户在物理环境中的第一位置,并且第二视点对应于用户在物理环境中的第二位置(例如,其中用户从第一位置移动到第二位置)。在一些实施方案中,第二视点对应于在用户转身离开第一对象时从第一视点的改变(例如,在用户转动用户的头部和/或躯干时(例如,没有从物理环境中的第一位置移动到第二位置),视点被更新)。
在用户的当前视点是第二视点时(808),根据确定该警示是第一类型的警示(例如,系统警示和/或与第一对象不相关或与特定应用程序不相关的警示),计算机系统在与三维环境中的第一位置不同的三维环境中的第二位置处显示(810)该警示。当用户的当前视点是第二视点时,三维环境中的第二位置与用户具有相应空间关系。在一些实施方案中,计算机系统进一步在用户从第一位置移动到第二位置时使该警示淡出,和/或在用户从第一视点移动到第二视点时移动该警示以保持与和用户在物理环境中的位置相对应的第一锚定位置的第一空间关系。在一些实施方案中,第二视点处的该警示不与第一对象重叠(例如,该警示继续显示在用户的当前视图的顶部中心部分中)。例如,将图7D所示的第一视点处的警示704-1的表示从三维环境中的第一位置(例如,在墙壁的表示7006’的前面)移动到三维环境中的第二视点处的第二位置(例如,在墙壁的表示7004’的前面)(例如,在用户已经将用户的头部从图7D向右转向图7E之后)。在一些实施方案中,该警示以相对于与用户在物理环境中的位置相对应的三维环境中的锚定位置的相同空间关系来显示(例如,该警示继续显示在三维环境中相对于用户的当前视点的预定义的位置处)。例如,如图7D至图7E所示,警示704-1的表示被显示在对于用户的视点的相同相对位置处(例如,在用户的当前视图的顶部中心部分中)。
在用户的当前视点是第二视点时(808),根据确定该警示是第二类型的警示(例如,用于应用程序的通知和/或该警示与第一对象相关(例如,与和第一对象相关联的应用程序相关)),计算机系统从第二视点显示(812)三维环境,而不显示在用户的当前视点是第二视点时与用户具有相应空间关系的警示。在一些实施方案中,根据确定第二视点包括第一对象,计算机系统进一步在至少部分地与第一对象重叠的位置(例如,与用户具有不同的相应空间关系)处显示该警示(例如,该警示继续被显示为与第一对象重叠,如下文更详细解释)。在一些实施方案中,根据确定第二视图不包括第一对象(例如,用户已移动超过阈值量),在至少部分地覆盖第二对象(其与和第一对象相同的应用程序相关联)的位置处显示该警示(例如,在第二视图中的应用程序的另一窗口上显示该警示)。
在一些实施方案中,根据确定该警示是第一类型的警示(例如,系统警示),响应于检测到用户满足关于与第一对象不同的第二对象的注意力标准,计算机系统在三维环境中的第三位置处显示该警示。在一些实施方案中,三维环境中的第三位置至少部分地与第二对象重叠。例如,该警示最初被显示为至少部分地与第一对象(例如,第一应用程序窗口)重叠,并且响应于用户关注(例如,注视、转向和/或与之交互)第二对象(例如,第二应用程序窗口),该警示任选地被重新显示为至少部分地与第二对象重叠(例如,不与第一对象重叠)。例如,该警示在三维环境中从部分地与第一对象重叠的三维环境中的第一位置移动到不与第一对象重叠(并且与第二对象重叠)的第三位置。例如,如参考图7D至图7E所描述,在一些实施方案中,图7E中的警示704-1与第三对象重叠。在一些实施方案中,在用户正在移动时停止显示该警示(例如,该警示停止在第一位置处显示,并且在第三位置处重新显示)。在一些实施方案中,该警示被显示在第一位置与第三位置之间的附加位置处(例如,以在从第一位置移动到第三位置时以动画方式显示该警示)。在一些实施方案中,该警示是系统警示(例如,不与特定应用程序相关联),并且该系统警示被显示在三维环境的用户当前视图中的当前显示的应用程序窗口(例如,或其他对象)上(例如,不管用于该窗口或对象的应用程序的类型)。例如,该警示被显示在与不同应用程序相关联的对象(例如,与第一应用程序相关联的第一对象和与第二应用程序相关联的第二对象)上。在用户正在看向对象时自动更新要在该对象(诸如当前在三维环境的用户视图中的不同应用程序窗口)上显示的警示的显示提供了实时视觉反馈,使得即使当用户的注意力改变到不同对象(在三维环境的不同视图中)时用户也可以继续看到该警示,并且通过在用户的当前视图改变时在相关对象上自动显示该警示,由此在不需要附加用户输入的情况下向用户提供了附加控制选项(例如,以便用户与该警示交互),而不需要用户导航到另一视图来与该警示交互,从而向用户提供了改进的视觉反馈,而无需附加用户输入。
在一些实施方案中,第一对象包括三维虚拟对象。例如,虚拟对象是棋盘、灯、白板或由计算机系统在三维环境中生成的任何其他虚拟对象,如参考图7C至图7D所描述。例如,用户界面对象702被显示为虚拟对象(例如,三维对象(例如,棋盘)而不是应用程序窗口)。在一些实施方案中,第二对象与第一对象相关(例如,并且与第二类型的警示或和第二类型的警示相关联的应用程序相关)。在一些实施方案中,第一对象包括在三维环境中显示的应用程序窗口(例如,二维窗口或三维窗口)。在虚拟对象处于三维环境的用户当前视图中时在虚拟对象(诸如与警示相关的虚拟对象)上自动显示该警示提供了指示该警示所涉及的虚拟对象的实时视觉反馈,即使当用户在三维环境中移动时也是如此,从而向用户提供了改进的视觉反馈。
在一些实施方案中,第一对象包括与三维环境相对应的物理环境中的物理对象。例如,物理对象包括一对耳机,如参考图7C至图7D所描述。例如,用户界面对象702被显示为物理对象(例如,物理环境中的三维对象(例如,一对耳机)而不是应用程序窗口)的表示。在一些实施方案中,物理对象在三维环境中被显示为透传对象(例如,其中三维环境允许物理环境的某些对象和/或特征透传为虚拟(AR或VR)三维环境中的表示)。例如,三维环境是所显示的物理环境(例如,其中一个或多个虚拟对象在物理环境中被增强)。在一些实施方案中,三维环境是虚拟环境(例如,不显示物理环境),并且物理环境的特征的表示被显示(例如,作为从物理环境的相机视图生成的虚拟表示)。在物理对象处于三维环境的用户当前视图中时在与三维环境相对应的真实世界物理环境中存在的物理对象(诸如与警示相关的物理对象)上自动显示该警示提供了指示该警示所涉及的物理对象的实时视觉反馈,即使当用户在三维环境中移动时也是如此,从而向用户提供了改进的视觉反馈。
在一些实施方案中,计算机系统在从第一视点观看该警示时以第一角度显示该警示,并且在从第二视点观看该警示时以第二角度显示该警示。在一些实施方案中,在检测到用户的当前视点从第一视点到第二视点的移动时,计算机系统以相对于用户的多个角度显示该警示(例如,其中在用户移动时改变角度)。在一些实施方案中,选择第一角度和第二角度,使得所显示的警示在用户的当前视点处面向用户(例如,该警示以被用户感知为与用户的当前视点垂直(例如,面向前方)的角度出现)(例如,第一角度和第二角度是相同的角度)。在一些实施方案中,相对于三维环境的第一视图或当前视图中的一个或多个其他对象改变角度。例如,当用户移动用户的头部(例如,上下移动)时,该警示的角度被更新为面向用户。在一些实施方案中,以深度特性显示该警示,使得在用户在三维环境中移动时该警示的角度可以倾斜以面向用户。自动更新要相对于在三维环境中显示的其他对象以不同角度显示的警示的显示,使得在三维环境的用户当前视图改变时该警示被用户感知为相对于用户的视点保持在相同角度,提供了实时视觉反馈,即使当用户在三维环境中移动时也是如此,从而向用户提供了改进的视觉反馈。
在一些实施方案中,在用户的当前视点是第二视点时并且根据确定该警示是第二类型的警示(例如,用于应用程序的通知和/或与第一对象相关(例如,特定于与第一对象相关联的应用程序)的警示),计算机系统显示与第一对象相关联的第三对象并且在三维环境中的第四位置处显示该警示,该警示至少部分地与第三对象重叠(例如,第三对象是与该警示相关的应用程序的另一实例(例如,与该应用程序相关的另一窗口或另一对象))。在一些实施方案中,与在用户的当前视点是第一视点时的相应空间关系相比,第四位置处的该警示与用户具有不同的空间关系。例如,该警示是与应用程序相关的通知,并且响应于用户的当前视点包括与该应用程序相关联的窗口和/或对象(例如,未在第一视点处的第一视图中显示),该警示移动以与和该应用程序相关联的窗口和/或对象重叠,如参考图7G至图7H所描述(例如,警示704-3的表示与用户界面对象702和用户界面对象712两者相关联,并且响应于用户改变用户的视点,警示704-3的表示被重新显示在用户界面对象712上(并且任选地,不再被显示为覆盖用户界面对象702))。在一些实施方案中,计算机系统确定在当前视图中最突出的与该警示相对应的应用程序的应用程序窗口和/或对象(例如,如果同时显示相同应用程序的两个应用程序窗口),并且显示至少部分地与最突出部分重叠的该警示(例如,其中最突出部分是基于对象的相对大小、三维环境内的位置(例如,居中比外围更突出)和/或基于用户的注意力(例如,用户当前聚焦于哪个窗口或对象、看向哪个窗口或对象、和/或哪个窗口或对象更接近用户的注视)来确定的)。自动更新要在与警示相关的第二对象上(诸如在不同应用程序窗口上)显示的该警示的显示,使得即使在用户正在查看该不同应用程序窗口之后,用户也可以容易地访问该警示并与该警示交互,提供了实时视觉反馈并且向用户提供了用于在用户的视点改变时与该警示交互的附加控制选项,而不需要用户导航到另一视图来与该警示交互,从而向用户提供了改进的视觉反馈,而无需附加用户输入。
在一些实施方案中,在检测到用户的当前视点的移动时,计算机系统相对于在三维环境中显示的其他对象在视觉上去加重该警示(例如,淡化该警示)。在一些实施方案中,在用户的当前视点移动时,该警示消失(例如,不再显示)。在一些实施方案中,根据确定不再检测到用户的当前视点的移动,计算机系统重新显示该警示而不相对于三维环境的当前视图中显示的其他对象在视觉上去加重该警示。在一些实施方案中,在用户正在移动时,相对于三维环境中的其他显示的对象在视觉上去加重该警示,但是响应于用户停止移动而在没有视觉去加重的情况下重新显示该警示,如参考图7C至图7H所描述。例如,在图7D至图7E中,当用户改变用户的视点时(例如,在用户在物理环境中向右转时),警示704-1的表示被淡化,并且在用户处于第二视点(例如,在图7E中)之后,警示704-1的表示被重新显示而不被淡化。在用户在物理环境中四处移动时通过相对于其他显示的内容在视觉上去加重警示来自动更新该警示的显示,并且一旦用户已经停止移动就在没有视觉去加重的情况下显示该警示,向用户提供了一旦用户已经停止移动就对该警示的访问,而不会在用户在三维环境中四处移动时使用户的视图变得杂乱,从而向用户提供了改进的视觉反馈。
在一些实施方案中,在检测到用户的当前视点从第一视点到第二视点的移动时,计算机系统随着用户的当前视点移动而在三维环境中移动该警示。在一些实施方案中,第二类型的警示包括(用于应用程序的)通知。在一些实施方案中,当用户的当前视点移动时,仅第二类型的警示在三维环境中移动。在一些实施方案中,第一类型的警示不移动(例如,第一类型的警示在用户的当前视点移动时消失),例如如参考图7C至图7H所描述(例如,其中在用户向右转时,图7D至图7E中的警示704-1(例如,第一类型的警示)的表示停止显示,并且在用户向右转时,警示704-1的表示随着用户从图7D向右转向图7F而继续显示(例如,覆盖用户界面对象702))。在用户在物理环境中四处移动时自动更新特定类型的警示(例如,通知)的显示以在三维环境内移动(例如,利用动画移动),使得在用户的视点改变时用户可访问这些警示,而不在用户在物理环境中移动时用动画移动来更新其他类型的警示(例如,系统警示)的显示,为用户提供了附加控制选项以便在用户的视点改变时与该警示交互,从而在已经满足一组条件时执行操作而无需进一步的用户输入。
在一些实施方案中,根据第一组特性来移动第一类型的警示,并且根据与第一组特性不同的第二组特性来移动第二类型的警示。在一些实施方案中,第一类型的警示(例如,系统警示)中的警示被移动到第二位置而不在用户的视点的移动期间保持警示的显示(例如,该警示消失并在移动完成之后重新出现),如参考图7C至图7H所描述(例如,在用户向右转时,图7D至图7E中的警示704-1(例如,第一类型的警示)的表示被显示为淡化和/或以比用户慢的速率移动,并且在用户向右转时,警示704-1的表示随着用户从图7D向右转向图7F而继续以与用户相同的速率显示(例如,覆盖用户界面对象702)(例如,使得警示704-1的表示继续在用户界面对象702上显示,警示704-1的表示移动与用户界面对象702相同的量))。基于对每个相应警示的警示类型的自动确定,以第一方式在三维环境中自动移动某些类型的警示,并且以与第一方式不同的第二方式在三维环境中自动移动其他类型的警示,这使得能够在已经满足一组条件时自动执行一个或多个操作而无需进一步的用户输入。
在一些实施方案中,在三维环境中移动该警示时,根据确定该警示是第二类型的警示,计算机系统在该警示移动到第二位置时继续显示该警示(例如,该警示没有消失和/或计算机系统没有停止显示该警示)。在一些实施方案中,在用户的视点移动时,第二类型的警示(例如,通知)中的警示继续显示(例如,在第一对象仍在用户的当前视点中时,通知继续被显示为部分地与第一对象重叠)。在一些实施方案中,在用户在物理环境中移动时,第一类型的警示(例如,系统警示)消失。例如,在用户开始从第一视点移动之后,第一类型的警示停止在第一位置处显示,并且根据用户的当前视点是第二视点(例如,并且任选地,根据确定用户已经停留(停止)在第二视点处至少阈值时间量)而在第二位置处重新显示第一类型的警示,如参考图7C至图7H所描述(例如,其中在用户向右转时,图7D至图7E中的警示704-1(例如,第一类型的警示)的表示停止显示,并且在用户向右转时,警示704-1(例如,第二类型的警示)的表示随着用户从图7D向右转向图7F而继续显示(例如,覆盖用户界面对象702))。在警示被移动到三维环境中的新位置时自动地继续显示该警示而不使该警示消失,允许用户查看该警示并与该警示交互,即使用户在物理环境中四处移动时也是如此,从而向用户提供了改进的视觉反馈,而无需附加用户输入。
在一些实施方案中,计算机系统检测到用户的当前视点从第二视点到第三视点的移动不满足阈值移动量。在一些实施方案中,在用户的当前视点是第三视点时,根据确定该警示是第二类型的警示,计算机系统显示该警示随着用户的当前视点移动而在三维环境中移动,如参考图7C至图7H所描述(例如,在用户向右转时,警示704-1(例如,第二类型的警示)的表示随着用户从图7D中的用户视点向右转(例如,转向图7F所示的视点之前的视点)而继续显示(例如,覆盖用户界面对象702)。在一些实施方案中,根据确定该警示是第一类型的警示,计算机系统放弃显示该警示随着用户的当前视点移动而在三维环境中移动,和/或保持该警示在第二视点中的第二位置处的显示而不移动第一类型的警示。在一些实施方案中,第二类型的警示(例如,通知)以用户的不满足阈值量的较小移动量移动,而第一类型的警示(例如,系统警示)不以用户的较小移动量移动。例如,在用户的当前视点移动时,不显示第一类型的警示。在一些实施方案中,一旦满足前提条件(例如,移动量或在新视点处的持续时间),第一类型的警示就移动(例如,不以动画方式显示这些位置之间的移动)与用户的移动相同的量(例如,在用户处于第一视点和第二视点时,第一警示继续与用户具有相同的相应空间关系)。在一些实施方案中,根据确定该移动不满足阈值移动量,将第一类型的警示保持在三维空间中的相同位置处。在一些实施方案中,根据确定该移动不满足阈值移动量,第一类型的警示消失(但不移动)。以比用户在物理环境中的移动量更小的移动量在三维环境中自动地移动某些类型的警示,使得在用户在物理环境中移动时某些类型的警示看起来滞后于用户,这在用户在物理环境中移动时为不同类型的警示提供了实时视觉反馈,并且允许用户在显示这些警示时容易地访问这些警示并与这些警示交互,而不使用户的当前视图因为在自然地跟随用户的移动的位置处显示该警示而变得杂乱,从而向用户提供改进的视觉反馈。
在一些实施方案中,响应于确定该警示被显示达阈值时间量而未检测到用户与该警示的交互(例如,该警示空闲达6秒(例如,或3秒、或10秒、或另一阈值时间量)),根据确定该警示是第一类型的警示,计算机系统保持该警示在三维环境中的显示(例如,直到用户与该警示交互以取消该警示)。例如,如果用户不关注图7D中的警示704-1的表示,并且该警示是第一类型的警示,则该警示被保持(例如,并且被显示在对于用户的当前视点的相同相对位置处)。如果该警示是第二类型的警示,则该警示在用户未关注该警示的情况下已经过阈值时间量之后自动消失(例如,不管用户是否在物理环境中移动)。在一些实施方案中,根据确定该警示是第二类型的警示,计算机系统停止该警示的显示。在一些实施方案中,第一类型的警示(例如,系统警示)是即使用户没有与该警示交互(例如,关注和/或看向该警示)也继续显示的持久警示。在一些实施方案中,第二类型的警示(例如,通知)是根据在未检测到用户与该警示的交互的情况下经过阈值时间量而被自动取消(例如,没有用户输入)的临时警示。在一些实施方案中,对于第二类型的警示,响应于在已经过阈值时间量之前检测到用户与该警示的交互,计算机系统保持该警示的显示(例如,如果用户交互(例如,注视)达预定义时间段(例如,注视并停留至少0.25秒),则该警示继续被显示)。如果用户没有与该警示交互,则自动停止在三维环境中显示某些类型的警示,并且不管用户是否已经与其他类型的警示交互,都保持在三维环境中显示其他类型的警示,这通过在某些条件下自动移除用户没有兴趣查看的警示而改善了用户体验,从而通过最小化用户视图中的杂乱并且在已经满足一组条件时自动执行操作来向用户提供改进的视觉反馈。
在一些实施方案中,与该警示是第一类型的警示时第一位置处的该警示与用户的相应空间关系相比,在该警示是第二类型的警示时第一位置处的该警示与用户的相应空间关系是相对于用户更高(例如,基于从地板延伸到天花板的y轴)的空间关系。在一些实施方案中,相对于用户而言,第二类型的警示看起来高于第一类型的警示(例如,在第一类型的警示上方)。在一些实施方案中,如果第一类型的警示(例如,系统警示)和第二类型的警示(例如,通知)两者都被显示在第一视点中,则第一类型的警示被显示在第二类型的警示下方(例如,相对于地面)(例如,通知出现在当前视点的顶部处或附近),如参考图7C至图7H所描述。例如,在图7D中,如果另一类型的警示的表示与警示704-1的表示同时显示,则第一类型的警示的表示比第二类型的警示的表示显示得更低。在三维环境中的比在三维环境中显示其他类型的警示的位置更高的位置处自动显示某些类型的警示允许用户容易地区分作为系统警示的警示和作为通知的警示,这使得用户更容易基于该警示在三维环境中显示的位置来选择用户感兴趣的警示,从而向用户提供改进的视觉反馈。
在一些实施方案中,计算机系统检测用户的当前视点到第四视点的移动,其中第四视点不包括虚拟对象。在一些实施方案中,三维环境包括虚拟部分,该虚拟部分包括虚拟对象。在一些实施方案中,虚拟部分是视场的受限部分(例如,仅在视场的受限部分中显示虚拟内容,并且显示受限部分之外的物理环境的任何部分(例如,作为透传内容)。在一些实施方案中,在用户的当前视点是第四视点时,根据确定该警示是第一类型的警示,计算机系统停止第一类型的警示的显示(例如,当用户不在三维环境的虚拟部分中时,系统警示不跟随用户的移动或当前注视)。在一些实施方案中,根据确定该警示是第二类型的警示,计算机系统在用户的当前视点移动时在三维环境中移动该警示(例如,通知警示在三维环境的任何(例如,所有)部分中跟随用户的当前视点),如参考图7D至图7H所描述。例如,如果用户从图7D向左转(例如,其中图7D中的用户视点左侧的环境的一部分不包括虚拟内容),如果警示704-1的表示是第一类型的警示,则警示704-1的表示停止显示,并且如果警示704-1的表示是第二类型的警示,则在用户已经从图7D中的用户视点向左转之后警示704-4的表示停止显示。在用户转身离开虚拟内容时自动保持某些类型的警示的显示,而在用户转身离开虚拟内容时不保持其他类型的警示的显示,为用户提供了用于在用户的视点改变时与某些类型的警示交互的附加控制选项,而不使非虚拟内容的用户当前视图因为其他类型的警示的显示变得杂乱,从而向用户提供改进的视觉反馈。
在一些实施方案中,在检测用户的当前视点的移动时,计算机系统在三维环境中的一定位置处显示该警报,该位置处与用户的相应空间关系远于第一位置处与用户的相应空间关系。例如,在用户正在移动时,该警示被显示在离用户更远的位置处(例如,在手臂可及范围外),如参考图7D至图7F所描述(例如,在用户从图7D中的视点向右转向图7E和/或图7F所示的视点时,警示704-1的表示表现为相对于其在图7D中的三维环境中的位置被推回)。在一些实施方案中,响应于不再检测到用户的视点的移动,该警示被重新显示为在第一位置处与用户具有相应空间关系。在用户在物理环境中四处移动时将警示的显示从用户静止时的第一位置自动地改变为三维环境内看起来比第一位置处的该警示更远离用户的第二位置,这在用户在物理环境中四处移动时提供了实时视觉反馈,从而向用户提供改进的视觉反馈。
在一些实施方案中,与第二类型的警示在第一位置处与用户的相应空间关系相比,第一类型的警示在第一位置处与用户的相应空间关系是相对于用户更近(例如,在三维环境中其感知深度和/或距用户的距离方面)的空间关系。在一些实施方案中,第二类型的警示(例如,通知)被显示为比第一类型的警示(例如,系统警示)更远离用户的当前视点。例如,系统警示被显示在用户的前面小于阈值距离的距离处(例如,在手臂可及范围内,或另一阈值距离),而通知被显示在大于阈值距离的距离处(例如,在手臂可及范围外,或另一阈值距离),如参考图7D至图7F所描述(例如,在图7D中,如果另一类型的警示的表示与警示704-1的表示同时显示,则第一类型的警示的表示被显示为与第二类型的警示的表示相比更靠近用户的视点)。在三维环境中看起来比在三维环境中显示其他类型的警示的位置更远离用户视点的位置处自动显示某些类型的警示,通过在三维环境的不同部分中显示不同类型的警示来为不同类型的警示提供实时视觉反馈,从而向用户提供改进的视觉反馈。
在一些实施方案中,显示作为第一类型的警示的警示包括显示内容以及用于取消该警示的一个或多个可选用户界面对象。例如,该警示包括用于取消该警示的选项(例如,示能表示),并且响应于检测到选择用于取消该警示的该选项的用户输入(例如,空中手势)(例如,指向该选项的捏合输入、指向该选项的注视输入和/或结合手势的注视输入),计算机系统停止显示该警示(例如,取消该警示),如参考图7C至图7D所描述(例如,警示704-1的表示包括一个或多个可选用户界面对象)。在一些实施方案中,该用户输入直接指向该选项(例如,用户在对应于该选项的位置处执行该输入)或该输入间接指向该选项(例如,用户在注视该选项的同时执行该输入,其中在执行该输入时用户的手部的位置不在对应于该选项的位置处)。例如,使得用户能够通过在该选项处或附近(例如,从该选项的外边缘或该选项的中心部分测量的0.5cm、1cm、5cm内或0至5cm之间的距离内)发起手势来将用户的输入指向该选项。在一些实施方案中,还使得用户能够通过关注该选项(例如,注视该选项)来将用户的输入指向该选项,并且在关注该选项的同时,用户发起手势(例如,在计算机系统可检测到的任何位置处)。例如,如果用户正关注该选项,则手势不需要在该选项处或附近的位置处发起。在一些实施方案中,用于取消该警示的该选项使得该警示从“待处理”警示状态中移除。在一些实施方案中,用于取消该警示的该选项是用于最小化该警示的选项(例如,并且该警示仍然待处理)。在一些实施方案中,在该警示不再被显示在三维环境的当前视图中之后,使得用户能够从警示用户界面查看该警示(例如,该警示用户界面继续存储和显示已由计算机系统接收到而未被取消的警示(例如,用户最小化待处理的警示,但没有查看和/或打开与该警示相关联的应用程序,因此该警示仍然待处理))。例如,该警示不再被显示在三维环境中,除非用户请求查看(例如,任选地所有)待处理的通知的列表。在三维环境中与警示的显示相结合自动地显示内容和用户可选选项,向用户提供附加控制选项而不需要用户导航通过复杂的分级结构,并且通过同时显示该警示和与该警示相关的内容来提供实时视觉反馈,从而向用户提供改进的视觉反馈,而无需附加用户输入。
在一些实施方案中,在三维环境中显示多个单独应用程序区域(例如,一个或多个应用程序窗口和/或其他虚拟内容)时,计算机系统显示该警示,包括(例如,响应于接收到该警示,显示该警示并且在视觉上去加重附加虚拟内容(例如,在显示该警示的同时)),根据确定该警示是第一类型的警示,在三维环境中相对于该警示在视觉上去加重多个单独应用程序区域(例如,该警示没有在视觉上去加重,和/或虚拟内容在三维环境中被调暗和/或被推回一定距离)。在一些实施方案中,根据确定该警示是第二类型的警示,计算机系统在三维环境中相对于该警示在视觉上去加重多个单独应用程序区域中的第一应用程序区域而不去加重多个应用程序区域中的第二应用程序区域。在一些实施方案中,第一应用程序区域(例如,和第二应用程序区域)是三维环境的一部分(少于全部)。在一些实施方案中,第一应用程序区域(例如,或第二应用程序区域)包括第一对象。例如,仅与第二类型的警示相关联(例如,与用于通知的应用程序相关联)的应用程序窗口和/或虚拟对象在视觉上去加重,而其他应用程序窗口(例如,用于与该警示无关的应用程序)没有在视觉上去加重,如上文参考图7C至图7H所描述(例如,如果警示704-1的表示是第一类型的警示(例如,在图7D至图7E中),则用户界面对象702和其他所显示的虚拟内容(例如,如果图7D中显示附加应用程序窗口的话)被淡化和/或被推回;并且如果警示704-1的表示是第二类型的警示(例如,在图7D和图7F中),则用户界面对象702被淡化和/或被推回,而不淡化或推回其他所显示的虚拟内容)。在警示也被显示在三维环境中时自动修改应用程序窗口在三维环境中的显示,使得应用程序窗口相对于它们在显示这些警示之前的位置看起来被调暗和/或被推回,这使得用户更容易与该警示交互而不会受到其他所显示的内容的干扰,从而提供附加控件选项而不使用户的视图因为附加显示的控件变得杂乱。
在一些实施方案中,在三维环境中显示物理环境的一部分时(例如,物理环境的该部分包括在三维环境中显示的(真实世界的)透传内容),计算机系统显示该警示,包括根据确定该警示是第一类型的警示,在视觉上去加重(例如,调暗、淡化和/或模糊)三维环境中的物理环境的该部分,并且根据确定该警示是第二类型的警示,放弃去加重三维环境中的物理环境的该部分(例如,不使物理环境的该部分变暗和/或保持物理环境的该部分的显示),如参考图7C至图7H所描述(例如,如果警示704-1的表示是第一类型的警示(例如,在图7D至图7E中),则物理对象的表示7014’和/或物理对象的其他所显示的表示被淡化和/或被推回;并且如果警示704-1的表示是第二类型的警示(例如,在图7D和图7F中),则物理对象的表示7014’和/或其他所显示的虚拟内容不被淡化和/或被推回)。在某些类型的警示而不是其他类型的警示被显示在三维环境中时自动修改在三维环境中被显示为透传内容的物理内容的显示,使得物理内容在显示某些类型的警示之前看起来相对于其不透明度被调暗,这使得用户更容易与某些类型的警示交互而不会受到其他所显示的内容的干扰,从而提供附加控件选项而不使用户的视图因为附加显示的控件变得杂乱。
应当理解,对图8中的操作进行描述的具体次序仅仅是示例,并非旨在表明所述次序是可以执行这些操作的唯一次序。本领域的普通技术人员会想到多种方式来对本文所述的操作进行重新排序。另外,应当注意,本文相对于本文所述的其他方法(例如,方法900、1000、1100和1200)所述的其他过程的细节同样以类似的方式适用于上文相对于图8所述的方法800。例如,上文参考方法800所述的手势、注视输入、物理对象、用户界面对象、控件、移动、标准、三维环境、显示生成部件、表面、物理对象的表示、虚拟对象和/或动画任选地具有本文参考本文所述的其他方法(例如,方法900、1000、1100和1200)所述的手势、注视输入、物理对象、用户界面对象、控件、移动、标准、三维环境、显示生成部件、表面、物理对象的表示、虚拟对象和/或动画的特征中的一个或多个特征。为了简明起见,此处不再重复这些细节。
图9是根据一些实施方案的根据用户关注相应通知来显示具有不同特性的通知的方法的流程图。
在一些实施方案中,方法900在计算机系统(例如,图1中的计算机系统101)处执行,该计算机系统包括第一显示生成部件(例如,图1、图3和图4中的显示生成部件120)(例如,平视显示器、显示器、触摸屏和/或投影仪)和任选地一个或多个输入设备(例如,向下指向用户的手部的相机(例如,相机、颜色传感器、红外传感器和/或其他深度感测相机)或从用户头部向前指向的相机)。在一些实施方案中,方法900通过存储在非暂态计算机可读存储介质中并由计算机系统的一个或多个处理器诸如计算机系统101的一个或多个处理器202(例如,图1A中的控制单元110)执行的指令来管理。方法900中的一些操作任选地被组合,并且/或者一些操作的次序任选地被改变。
在一些实施方案中,方法900在计算机系统(例如,图1中的计算机系统101、相对于图7A至图7AE描述的计算机系统101)处执行。在一些实施方案中,计算机系统与第一显示生成部件(例如,第一显示生成部件是平视显示器、头戴式显示器(HMD)、显示器、触摸屏和/或投影仪)和一个或多个输入设备(例如,相机、控制器、触敏表面、操纵杆、按钮、手套、手表、运动传感器和/或取向传感器)通信。在一些实施方案中,第一显示生成部件是相对于图7A至图7AE描述的第一显示生成部件7100。在一些实施方案中,计算机系统是集成设备,该集成设备具有封闭在与第一显示生成部件相同的外壳中的一个或多个处理器和存储器以及一个或多个输入设备中的至少一些输入设备。在一些实施方案中,计算机系统包括计算部件(例如,服务器,移动电子设备诸如智能电话或平板设备,可穿戴设备诸如手表、腕带或听筒,台式计算机或膝上型计算机),该计算部件包括与第一显示生成部件和/或一个或多个输入设备分开的一个或多个处理器和存储器。在一些实施方案中,第一显示生成部件以及一个或多个输入设备被集成并包围在相同外壳中。根据一些实施方案,相对于图7D和图7I至图7L描述了方法900的特征中的许多特征。
方法900涉及根据用户关注相应通知来显示具有不同特性的通知。在用户将用户的注意力指向通知和/或将用户的注意力从该通知移开时自动更新该通知的表示的显示,允许用户访问通知并执行与通知不同的操作,同时自动移除用户尚未看向(例如,或以其他方式关注)的通知,从而提供附加控制选项而不使用户的视图因为附加显示控件变得杂乱。向用户提供附加控制选项增强了该系统的可操作性并且使用户-系统界面更有效(例如,通过帮助用户提供合适的输入并且减少操作该系统/与该系统进行交互时的用户错误),这又通过使用户能够更快速且有效地使用该系统而减少了电力使用并且延长了该系统的电池寿命。
在执行方法900时,计算机系统经由第一显示生成部件在三维环境的第一视图中显示(902)第一通知的第一表示。在一些实施方案中,用户界面对象在三维环境中的相应特征位置与对应于用户在物理环境中的位置的三维环境中的第一锚定位置具有第一空间关系(例如,在三维环境中相对于用户的当前位置/视图的预定义的位置处显示该警示)。在一些实施方案中,该通知的第一表示包括与该通知相关联的应用程序图标(例如,该通知的第一表示是警示704-1的表示,图7D)。
在显示第一通知的第一表示时,计算机系统经由一个或多个输入设备检测(904)用户满足关于第一通知的第一表示的注意力标准(例如,用户正在注视用户界面对象)。
响应于检测到用户满足关于第一通知的第一表示的注意力标准,计算机系统显示(906)与第一通知的第一表示不同的第一通知的第二表示(例如,在用户正在注视该警示时扩展该警示,如参考图7I所描述)。
在显示第一通知的第二表示(例如,根据确定用户满足注意力标准)之后,计算机系统检测(908)用户不再满足(例如,不保持)关于第一通知的相应表示(例如,第二表示或另一(例如,第三)表示)的注意力标准。在一些实施方案中,用户停止满足注意力标准(例如,用户从该通知(例如,该通知的表示)移开视线和/或不再注视该通知(例如,该通知的表示))。在一些实施方案中,用户观看用户界面对象达第一时间量(例如,1秒、2秒或另一时间量),然后移开视线。在一些实施方案中,根据确定用户尚未看向该通知(例如,在用户不注视该通知的情况下,该通知的表示在预先确定的时间段(例如,2秒、3秒或另一预先确定的时间段)之后自动消失),用户不满足注意力标准。在一些实施方案中,检测用户不再满足注意力标准还包括确定用户满足注意力标准的时间段(例如,在用户不再满足注意力标准之前,用户必须看向该通知达至少预先确定的时间段(例如,在用户不再满足注意力标准之前,用户必须满足注意力标准))。
响应于检测到用户界面对象不再满足关于第一通知的相应表示的注意力标准(910),根据确定第一通知的相应表示是第一通知的第二表示(例如,其中第二状态是根据短暂观看来实现的(例如,用户在移开视线之前的阈值时间量内不满足注意力标准)),计算机系统停止第一通知的相应表示的显示(912)(例如,如参考图7J所描述)。
根据确定第一通知的相应表示是与第一通知的第二表示不同的第一通知的第三表示(例如,其中第三状态是根据手势和/或连续注视来实现的(用户满足注意力标准达阈值时间量)),计算机系统保持第一通知的相应表示的显示(914)(例如,如参考图7K至图7L所描述)。例如,如果第一通知的相应表示处于第三状态(例如,警示704-5的表示),如图7K所示,则在用户将用户的注意力指向另一对象(例如,物理对象的表示7014’)和/或改变用户的视点之后,如图7L所示,计算机保持该警示的表示(例如,在图7L中示出为警示704-6的表示)的显示。
在一些实施方案中,在显示第一通知的第一表示时,根据确定(例如,响应于检测到)用户在预定义时间段内不满足关于第一通知的第一表示的注意力标准,计算机系统停止第一通知的第一表示的显示。在一些实施方案中,根据确定用户在阈值时间量(例如,0.5秒、1秒、3秒或5秒)内未注视该通知的第一表示(例如,并且该通知的第一表示停留在第一状态,如图7D所示)(例如,第一状态是用户关注该通知的第一表示之前的初始状态),不再显示该通知的第一表示。如果用户在一定量的时间内没有关注(例如,看向)通知,则自动移除所显示的通知,提供了实时视觉反馈,使得在用户不想查看通知时通知不会无限期地保持显示,这避免阻碍三维环境的用户当前视图并且避免用户明确地取消用户不感兴趣的通知的需要,从而使用户界面更有效并且向用户提供改进的视觉反馈。
在一些实施方案中,关于第一通知的第一表示的注意力标准包括在用户已看向第一通知的第一表示时满足的要求(例如,如参考图7I所描述,用户已满足关于警示704-4的注意力标准)。在一些实施方案中,响应于用户注视该通知的第一表示,显示与该通知相关联的应用程序的应用程序名称(例如,其中该通知的第二表示包括应用程序名称的显示)。响应于用户看向通知,自动地将该通知的状态从第一状态改变到第二状态,例如其中第二状态包括与该通知相关联的应用程序的名称,而不是要求用户主动地打开该通知并中断用户的当前视图,这允许用户通过看向该警示来查看关于该通知的附加信息,而无需附加用户输入,从而减少执行操作所需的输入数量。
在一些实施方案中,关于第一通知的第一表示的注意力标准包括在用户已注视第一通知的第一表示达至少阈值时间量时满足的要求(例如,如参考图7I所描述,用户已关注警示704-4达第一阈值时间量t1)。在一些实施方案中,根据确定用户已注视该通知的第一表示达最少时间量(例如,0.1秒、0.25秒、0.5秒、1秒或2秒)来显示第二表示。在一些实施方案中,该通知的第二表示包括该通知的扩展视图,该扩展视图包括与该通知相关的内容。在一些实施方案中,在用户已注视第一表示达至少阈值时间量之前,用户看向该通知的第一表示,这使得该表示更新为显示应用程序名称,并且在用户已注视第一表示达阈值时间量之后,该表示被更新为显示通知内容。响应于用户看向通知达预定义的时间量,自动地改变该通知的状态,例如其中新状态包括用于该通知的附加内容,而不是要求用户主动地打开该通知并中断用户的当前视图,这允许用户通过看向该警示达预定义的时间量来查看关于该通知的附加信息,而无需附加用户输入,从而减少执行操作所需的输入数量。
在一些实施方案中,计算机系统检测用户的手部被移动以满足相应标准(例如,诸如通过检测手部被向上移动预先确定的量或被移动到相对于用户的预先确定的区域中来检测手部被抬起),并且响应于检测到用户的手部被移动以满足相应标准,计算机系统将第一通知的相应表示显示(例如,更新显示)为第一通知的第三表示(例如,处于第三状态的该警示的表示,如参考图7K所描述,响应于用户抬起用户的手部7020(例如,任选地结合指向警示704-5的注视输入))。在一些实施方案中,使用与计算机系统通信的一个或多个相机和/或一个或多个姿势传感器来检测手部。响应于用户抬起用户的手部,自动地将通知的状态改变到第三状态,例如其中第三状态包括用于该通知的附加内容,而不是要求用户主动地打开该通知并中断用户的当前视图,这允许用户通过抬起用户的手部来查看关于该通知的附加信息,而无需附加用户输入,从而减少执行操作所需的输入数量。
在一些实施方案中,计算机系统检测用户的手部被移动以满足相应标准,相应标准包括在用户的手部处于预定义的姿势时满足的标准,并且响应于检测到用户的手部被移动以满足相应标准,计算机系统将第一通知的相应表示显示为第一通知的第三表示(例如,处于第三状态的该警示的表示,如参考图7K所描述,用户的手部7020被移动到预定义的姿势)。例如,检测用户的手部被移动到预定义的姿势包括检测用户以特定取向和/或以预定义的形状(例如,手指以特定方式布置)抬起用户的手部。例如,预定义的姿势是用户手部的用户手掌朝上(或朝下)、用户握拳、用户的手掌背离用户(或朝向用户)和/或用户的双手以预定义的姿势布置。响应于用户执行将用户的手部移动成预定义的姿势的手势,例如同时用户注视通知,自动地将该通知的状态改变到第三状态,其中第三状态包括用于该通知的附加内容,而不是要求用户主动地打开该通知并中断用户的当前视图,这允许用户通过以预定义的姿势抬起用户的手部来查看关于该通知的附加信息,而无需附加用户输入,从而减少执行操作所需的输入数量。
在一些实施方案中,计算机系统检测选择第一通知的相应表示的用户输入(例如,空中手势),并且响应于检测到选择第一通知的相应表示的用户输入,计算机系统将第一通知的相应表示显示为第一通知的第三表示(例如,处于第三状态的该警示的表示,如参考图7K所描述,响应于指向警示704-5的用户输入(例如,使用手部7020和/或注视输入),该警示被扩展到第三状态)。在一些实施方案中,用户输入包括捏合输入、轻击输入和/或另一手势。在一些实施方案中,选择输入是在用户的注视指向相应表示(例如,用户注视相应表示)时检测到的预定义的手势,并且响应于用户执行手势(例如,捏合输入或轻击输入),选择相应表示。响应于用户在当前状态下显示通知时执行选择该通知的手势,自动地将该通知的当前状态改变到第三状态,例如其中第三状态包括与当前状态下相比用于该通知的附加内容,而不是要求用户主动地打开该通知并中断用户的当前视图,这允许用户通过以预定义的姿势抬起用户的手部来查看关于该通知的附加信息,而无需附加用户输入,从而减少执行操作所需的输入数量。
在一些实施方案中,第一通知的第二表示包括与第一通知相对应的应用程序的内容,如参考图7I所描述(例如,警示704-4的表示包括与该警示相关联的应用程序的应用程序名称,而图7D中的警示704-1的表示(例如,处于第一状态)不包括该应用程序名称)。在一些实施方案中,第一通知(例如,处于第二状态的第一通知)的第二表示包括内容的预览(例如,用于消息通知的消息的预览、用于新闻通知的内容的概要和/或用于照片通知的缩略图)。在一些实施方案中,第一通知的第二表示相对于第一通知的第一表示被放大(例如,扩展)(例如,第二表示比第一表示更大以便显示更多内容)。在包括与通知相关的应用程序的内容(诸如该应用程序的名称的指示)的第二状态下自动显示该通知,这响应于用户关注在三维环境中显示的处于第二状态的通知而提供实时视觉反馈,而在用户关注该通知之前不使用户的视图因为附加内容变得杂乱,从而向用户提供改进的视觉反馈。
在一些实施方案中,第一通知的第三表示包括一个或多个可选用户界面对象(例如,如参考图7K所描述(例如,警示704-5的表示包括一个或多个示能表示,而图7I中的警示704-4的表示(例如,处于第二状态)不包括一个或多个示能表示)。例如,计算机系统检测从一个或多个可选用户界面对象中选择第一可选用户界面对象(例如,用于打开与第一通知相关的应用程序)的用户输入(例如,空中手势),并且响应于检测到选择第一可选用户界面对象的用户输入,计算机系统显示与第一通知相关的应用程序(例如,和/或打开或启动应用程序)的应用程序窗口。在一些实施方案中,计算机系统检测从一个或多个可选用户界面对象中选择第二可选用户界面对象(例如,用于关闭第一通知)的用户输入,并且响应于检测到选择第二可选用户界面对象的用户输入,计算机系统停止显示第一通知(例如,最小化第一通知,或取消第一通知)。在一些实施方案中,第一通知的第三表示(例如,处于第三状态的第一通知)包括内容(例如,与在第一通知的第二表示中显示的内容相同的内容、附加内容和/或不同内容)和一个或多个可选示能表示。例如,一个或多个可选示能表示包括用于取消第一通知的表示的示能表示和/或用于打开与第一通知的表示相关的应用程序(例如,以查看与第一通知相关联的应用程序)的示能表示。在包括一个或多个可选选项(诸如用于打开与通知相关的应用程序的选项和/或用于取消该通知的选项)的第三状态下显示该通知,允许用户以比在用户查看处于第三状态的该通知之前用户可以与该通知交互的方式更多的方式与该通知交互,从而提供附加控制选项而不使用户的视图变得杂乱。
在一些实施方案中,在显示第一通知的第三表示时,响应于检测到用于打开与第一通知相关联的应用程序的用户输入,计算机系统显示与第一通知相关联的应用程序(例如,打开并显示用于该应用程序的窗口)。例如,如参考图7K所描述,用户(例如,使用空中手势)选择一个或多个可选用户界面对象中的第一用户界面对象(例如,用于打开与第一通知相关联的应用程序的示能表示),并且响应于该用户选择,计算机系统显示与第一通知相关联的应用程序。在一些实施方案中,该应用程序被打开到该应用程序的窗口,该窗口示出包括在第一通知的第二表示和/或第三表示中的内容(例如,用于消息通知的特定消息线程、来自新闻通知的相应新闻故事和/或来自照片通知的相应照片)。例如,不是将该应用程序打开到初始应用程序窗口(例如,用于该应用程序的主页界面),而是打开该应用程序以显示该通知的相关内容。在一些实施方案中,根据输入的类型,该应用程序与当前在三维环境中显示的另一对象/应用程序同时打开(例如,如下文参考方法900和图7M至图7O所描述)。在第三状态下显示通知时自动显示用于直接从该通知打开与该通知相关联的应用程序的选项,向用户提供附加控制选项而不需要用户导航通过复杂的菜单分级结构,从而减少执行操作所需的输入数量。
在一些实施方案中,在显示第一通知的第一表示时,响应于接收到第二通知,计算机系统将第一通知的第一表示的显示替换为第二通知的第一表示。在一些实施方案中,替换显示包括替换该通知的第一表示的一部分(少于全部)的显示。例如,第二通知的表示在该通知的第一表示前面分层出现(例如,其中显示该通知的第一表示的一部分)。在一些实施方案中,多个通知被显示为堆叠通知(例如,其他通知在前面通知的背后至少部分可见),如参考图7I至图7L所描述。在一些实施方案中,最近的通知是前面通知(例如,在显示图7D的用户界面时接收到的后续通知使得新的(后续的)通知显示在警示704-1的表示的前面)。在一些实施方案中,与特定应用程序相关联的通知被显示为前面通知(例如,基于如由用户设定的应用程序优先级)。响应于接收到后续第二通知而自动替换第一通知的至少一部分的显示,实时地更新用户,而不需要请求查看在计算机系统处接收到的后续通知的用户输入,从而使得能够在已经满足一组条件时执行操作而无需进一步的用户输入。
在一些实施方案中,根据确定存在多个可用通知(例如,未读通知),响应于检测到用户满足关于相应通知的多个第一表示的注意力标准,计算机系统同时显示多个通知中的多个不同通知的表示。在一些实施方案中,多个可用通知包括应用程序图标,并且多个不同通知的表示包括用于相应通知的内容(例如,用于相应通知的内容的预览)。在一些实施方案中,将多个可用通知同时显示(例如,至少部分地)为并排通知或堆叠(例如,分层)通知,如参考图7I至图7L所描述(例如,如果存在多个通知(例如,在图7D中),则响应于用户满足注意力标准,(例如,在图7I中)同时显示用于多个通知的表示(例如,可能在或可能不在图7D中的用户视点中显示)。在一些实施方案中,显示可用通知的子组(少于全部)(例如,最初显示单个通知),并且同时显示多个通知中的多个不同通知的表示(例如,显示为从单个通知的显示扩展开(例如,向外扩展、向侧面扩展和/或向上或向下扩展))。在一些实施方案中,同时显示(例如,并排显示)多个相应通知的表示。响应于用户注视多个可用通知中的一个通知,自动地将多个通知的显示更新到包括比先前显示的更多的关于该通知的信息的第二状态,而不是要求用户主动地单独打开多个通知中的每个通知并中断用户的当前视图,这允许用户同时查看关于多个通知的附加信息,而无需附加用户输入,从而减少执行操作所需的输入数量。
在一些实施方案中,在显示第一通知的第二表示时,计算机系统检测用户的手部被移动以满足相应标准,并且响应于检测到用户的手部被移动以满足相应标准(例如,检测到用户的手部被抬起、检测到用户的手部在一个或多个相机的视场内、检测到由用户的手部执行的另一手势和/或检测到用户的手部处于预定义的姿势),根据确定所显示的第一通知的第二表示是唯一显示的通知,计算机系统将第一通知的第二表示的显示更新为第一通知的第三表示。在一些实施方案中,根据确定显示相应通知的两个或更多个第二表示(例如,包括第一通知的第二表示),计算机系统保持相应通知的两个或更多个第二表示的显示(例如,包括保持第一通知的第二表示的显示)。例如,如果用户抬起用户的手部并且仅存在一个警示,则该警示被自动更新到第三状态(例如,如参考图7K中的用户抬起用户的手部所描述,警示704-4的表示被更新到第三状态(例如,被显示为警示704-5的表示);并且如果用户抬起用户的手部并且存在两个或更多个警示,则该两个或更多个警示被保持在第二状态(例如,如果在图7I中显示了多个警示,则响应于用户抬起用户的手部7020,这些表示不被更新到第三状态(例如,如图7K所示),并且多个警示保持在第二状态下显示)。基于关于通知是唯一显示的通知还是多个显示的通知中的一个通知的自动确定,响应于用户执行的手势而自动确定是否将通知的显示从第二状态更新到第三状态,并且自动地:在通知是唯一显示的通知时选择该通知,或者允许用户在多个显示的通知之间进行选择,这使得能够在已经满足一组条件时自动执行操作而无需进一步的用户输入。
在一些实施方案中,根据确定显示相应通知的多个第二表示(例如,包括第一通知的第二表示),计算机系统检测从相应通知的多个第二表示中选择(例如,单个)第三通知的用户输入,如参考图7I至图7L所描述(例如,如果在图7I中显示了多个通知的表示,则计算机系统检测指向多个通知中的特定通知的输入并且在第三状态下显示该特定通知(例如,作为警示704-5的表示,图7K))。在一些实施方案中,用户输入(例如,空中手势)包括组合的注视和手势。在一些实施方案中,根据确定用户已注视相应通知来选择相应通知(例如,第三通知)(例如,将相应通知改变到第三状态或以其他方式打开),并且响应于在用户正在注视相应通知时接收到用户输入(例如,用用户的手部执行的手势),选择该通知(例如,打开并显示与该通知相关联的应用程序)。例如,用户指示用户想要从相应通知的多个第二表示中选择哪个通知。在一些实施方案中,在用户注视相应通知时,相对于通知的其他所显示的多个第二表示在视觉上加重相应通知(例如,用户当前注视的通知被放大或高亮显示/勾勒),并且使得用户能够执行用户输入(例如,空中手势)以选择相应通知。例如,根据确定用户的注视指向相应通知的多个第二表示中的第一通知,响应于检测到用户输入(在用户注视第一通知时),选择第一通知(例如,并且响应于该选择,在第三状态下显示第一通知和/或打开与第一通知相关联的应用程序)。根据确定用户的注视指向相应通知的多个第二表示中的第二通知,响应于检测到用户输入(例如,在用户注视第二通知时),选择第二通知(例如,并且响应于该选择,在第三状态下显示第二通知和/或打开与第二通知相关联的应用程序)。向用户提供用于使用手势从在第二状态下显示的多个通知中选择一个通知的选项,为用户提供了附加控件而不需要用户导航通过复杂的菜单分级结构,从而减少用户执行操作所需的输入数量。
在一些实施方案中,响应于从相应通知的多个第二表示中选择第三通知的用户输入,计算机系统显示第三通知的第三表示并且停止相应通知的多个第二表示的显示(例如,不显示未从相应通知的多个第二表示中选择的其他通知的第三表示)(例如,如参考图7I至图7L所描述)。例如,如果在图7I中显示了多个通知的表示,则计算机系统检测指向多个通知中的特定通知的输入并且在第三状态下显示该特定通知(例如,警示704-5的表示,图7K)而不继续显示多个通知的表示。响应于用户使用手势从在第二状态下显示的多个通知中选择通知而将该通知的显示从第二状态自动更新到第三状态,这在用户与从多个通知中选择的通知交互时提供实时视觉反馈,从而向用户提供改进的视觉反馈。
在一些实施方案中,根据确定显示相应通知的多个第二表示(例如,包括第一通知的第二表示),计算机系统检测用户的手部被移动以满足相应标准,并且在检测到用户的手部被移动以满足相应标准时,响应于确定用户满足关于来自相应通知的多个第二表示的第四通知的第二注意力标准(例如,在用户正注视第四通知时满足的注视标准)(例如,其中第二注意力标准与该注意力标准不同)(例如,仅在用户的手部被移动以满足相应标准时(例如,在用户的手部被抬起时)才满足第二注意力标准),相对于来自相应通知的多个表示的相应通知的其他第二表示在视觉上加重(例如,放大、高亮显示和/或勾勒)第四通知,如参考图7I至图7L所描述(例如,如果在图7I中显示了多个通知的表示,并且用户的手部7020被抬起,并且用户注视指向多个通知中的特定通知,则该特定通知相对于其他所显示的通知被放大)。响应于用户注视通知(例如,结合用户执行手势(例如,用他们的手部))而自动更新该通知的显示以相对于其他所显示的通知放大或以其他方式加重,这提供视觉反馈,该视觉反馈实时地向用户指示用户当前已从多个所显示的通知中选择了哪个通知,从而向用户提供改进的视觉反馈。
在一些实施方案中,根据确定第一通知的相应表示是第一通知的第三表示,计算机系统显示用于取消第一通知的相应表示的选项,如参考图7I至图7L所描述(例如,处于第三状态的警示704-5的表示包括用于取消该警示的可选示能表示)。在一些实施方案中,响应于在用户的注视指向用于取消的选项时检测到诸如捏合或轻击手势之类的选择手势,用于取消的选项被用户选择。在一些实施方案中,响应于用户选择用于取消的选项,计算机系统停止显示第一通知的任何相应表示(例如,不再显示第一通知的第一表示、第二表示和第三表示)。在包括用于取消通知的选项的第三状态下显示该通知,允许用户以比在用户查看处于第三状态的该通知之前用户可以与该通知交互的方式更多的方式与该通知交互,从而提供附加控制选项而不使用户的视图变得杂乱。
在一些实施方案中,在三维环境的第一视图中显示第一通知的第一表示包括(例如,最初)在三维环境中与用户的身体的一部分(例如,用户的手部)具有第一空间关系的位置处显示第一通知的第一表示。例如,如参考图7I至图7L所描述,在一些实施方案中,在用户的手部处于三维环境的当前视图中时,警示704-1的表示被显示在用户的手部附近(例如,在用户的手掌中或在用户的手部的背面上方)。在计算设备接收到新的通知时在三维环境中的用户手部附近的初始位置处自动显示通知而不需要用户导航通过复杂的菜单分级结构来查看该通知,减少了执行操作所需的输入数量。
在一些实施方案中,计算机系统同时在三维环境的第一视图中与用户的身体的该部分具有第一空间关系的位置处显示第一通知的第一表示,并且在三维环境中与用户的身体的该部分的位置相对应的模拟位置处输出音频指示(例如,空间音频输出)。例如,空间音频输出听起来像是来自用户的手部,如参考图7I至图7L所描述。在一些实施方案中,响应于接收到第一通知而生成音频指示(例如,同时执行第一通知的表示的显示和音频指示)。在一些实施方案中,在音频指示之前显示第一通知的表示(例如,如果用户尚未看向该通知的表示,则在阈值时间段之后输出音频指示)。即使在该通知的位置在三维环境中移动时(例如,在用户的手部移动时)也自动播放被模拟为来自该通知在三维环境中的初始显示位置(例如,用户的手部附近)的空间音频通知声音,这在计算设备接收到新通知时向用户提供实时音频和视觉反馈,从而向用户提供改进的音频和视觉反馈。
现有的立体声音频输出模式和单声道音频输出模式参照绑定到音频输出设备的参考系提供音频。对于静止的音频输出设备,声音好像源自音频输出设备在物理环境中的位置,而与用户在物理环境中的移动无关,并且与计算机生成体验的视觉内容中的变化(例如,由于虚拟声源的移动和/或视点的移动等而引起的计算机生成体验的三维环境中的变化)无关。对于相对于用户身体的一部分(例如,耳朵、头部或躯干)保持静止的可穿戴音频输出设备,声音好像相对于用户身体的该部分被锁定,而与计算机生成体验的视觉内容中的变化(例如,由于虚拟声源的移动而引起的变化、由于视点的移动(例如,由用户或计算机系统的移动请求引起而不是由用户身体的该部分的移动引起且不与用户身体的该部分的移动相对应的视点的移动)引起的在计算机生成体验的三维环境中的变化)无关。在一些情况下,计算机系统的音频输出设备和显示生成部件分开地容纳,并且可在经由音频输出设备和显示生成部件呈现计算机生成内容期间在物理环境中相对于彼此移动。在此类情况下,声音仍然好像源自音频输出设备,而与显示生成部件在物理环境中的位置或计算机生成体验的视觉内容中的变化(例如,由于虚拟声源(例如,在这种情况下,通知的表示)的移动和/或视点的移动(例如,由显示的环境中的移动请求引起的移动,或响应于并根据用户或其一部分在物理环境中的移动)引起的在计算机生成体验的三维环境中的变化)无关。一般来讲,当使用立体声音频输出模式或单声道音频输出模式向用户提供计算机生成体验的音频内容时,立体声音频输出模式和单声道音频输出模式提供与空间音频输出模式相比不太逼真和不太沉浸的收听体验。
在一些实施方案中,空间音频输出模式模拟更逼真的收听体验,其中音频好像来自单独的参考系中的声源,诸如经由显示生成部件显示的三维环境(例如,增强现实环境、虚拟现实环境或用户周围的物理环境的纯透传视图),并且其中模拟声源(例如,在该示例中,通知的表示)的定位与音频输出设备在物理环境中的位置和移动无关。
在一些实施方案中,参考系是基于在经由计算机系统的显示生成部件提供的计算机生成体验中表示的物理环境的参考系。在一些实施方案中,在参考系基于物理环境的情况下(例如,当计算机生成体验是基于物理环境的增强现实体验、或是物理环境的透传视图时),一个或多个感知声源在物理环境中具有相应的空间位置。例如,在一些实施方案中,计算机生成体验包括感知声源的具有对应于物理环境中的相应空间位置(例如,用户的手部在物理环境中的位置)的相应位置的视觉对应物(例如,在计算机生成体验中生成声音的虚拟对象,诸如上述示例中的通知的表示)。在一些实施方案中,计算机生成体验包括没有视觉对应物(例如,在计算机生成体验中生成声音的远程或隐藏虚拟对象、虚拟风、音效或外部叙述者)(例如,在通知的表示进入用户的视场之前的通知的表示)但具有对应于物理环境中的相应空间位置的起源的声音。在一些实施方案中,当音频输出设备在物理环境中四处移动时,调整来自音频输出设备的音频输出,使得音频继续听起来好像来自物理环境中的相应空间位置处的一个或多个感知声源(例如,当用户头戴音频输出设备四处走动,或在物理环境中音频输出设备远离其人身时,声音好像继续来自用户手部的位置,或继续来自用户视场的周边部分中的位置)。在一个或多个感知声源是在围绕物理环境的空间位置序列中移动的移动源的情况下(例如,随着用户的手部相对于他/她的身体移动且同时用户静止或四处走动,在与用户的手部的位置相对应的位置处或附近显示通知的表示时,声音继续好像来自用户的手部的位置),调整来自音频输出设备的音频输出,使得音频继续听起来好像来自物理环境中的空间位置序列处的一个或多个感知声源。此类用于移动声源的调节还考虑了音频输出设备相对于物理环境的任何移动(例如,如果音频输出设备相对于物理环境沿着与移动声源类似的路径移动,以便与声源保持恒定的空间关系,则将输出音频,使得声音好像不相对于音频输出设备移动)。在一些实施方案中,当使用空间音频输出模式和基于在计算机生成体验中表示的物理环境的参考系来输出音频内容时,三维环境的当前显示视图的视点根据用户和/或显示生成部件在物理环境中的移动而变化;并且用户将感知声音好像来自虚拟声源的虚拟位置并且基于在计算机生成体验中表示的物理环境在同一参考系中体验三维环境的视觉内容。
在一些实施方案中,用于空间音频输出模式的参考系固定到输出对应于经由音频输出设备输出的音频内容的视觉内容的电子设备,诸如显示生成部件(例如,声音跟随显示生成部件)。例如,模拟音频源在物理环境中的位置的移动对应于显示生成部件在物理环境中的移动(例如,当在由HMD提供的视场的周边部分中显示通知的表示时),但不对应于音频输出设备在物理环境中的移动。例如,在一些实施方案中,显示生成部件是头戴式显示设备或手持式显示设备,而音频输出设备被放置在物理环境中并且不跟随用户的移动。在一些实施方案中,随着显示生成部件和用户相对于音频输出设备在物理环境中移动,空间音频效果的参考系固定到显示生成部件并间接固定到用户。在一些实施方案中,当使用空间音频输出模式和基于计算机生成体验的三维环境的参考系来输出音频内容时,三维环境的当前显示视图的视点根据用户提供的移动请求和/或用户和/或显示生成部件在物理环境中的移动而变化;并且用户将感知声音好像来自虚拟声源的虚拟位置并且在同一参考系中体验三维环境的视觉内容,其中用户的虚拟位置绑定到当前显示视图的视点。
在一些实施方案中,其中显示第一通知的相应表示的三维环境是增强现实或虚拟现实(AR/VR)三维环境,如参考图7A至图7B和图7I至图7L所描述。例如,在AR/VR环境中显示相应通知和应用程序的表示和/或应用程序窗口(例如,从相应通知打开)(例如,在作为AR/VR三维环境的三维环境中显示本文参考方法800、900、1000、1100和1200所描述的警示(例如,通知))。在接收到通知时在AR/VR环境中自动显示通知和其他虚拟对象,这在用户正与三维环境交互时向用户提供实时视觉反馈,使得用户能够实时查看新通知而不中断AR/VR环境中的用户会话,从而向用户提供改进的视觉反馈。
应当理解,对图9中的操作进行描述的具体次序仅仅是示例,并非旨在表明所述次序是可以执行这些操作的唯一次序。本领域的普通技术人员会想到多种方式来对本文所述的操作进行重新排序。另外,应当注意,本文相对于本文所述的其他方法(例如,方法800、1000、1100和1200)所述的其他过程的细节同样以类似的方式适用于上文相对于图9所述的方法900。例如,上文参考方法900所述的手势、注视输入、物理对象、用户界面对象、控件、移动、标准、三维环境、显示生成部件、表面、物理对象的表示、虚拟对象和/或动画任选地具有本文参考本文所述的其他方法(例如,方法800、1000、1100和1200)所述的手势、注视输入、物理对象、用户界面对象、控件、移动、标准、三维环境、显示生成部件、表面、物理对象的表示、虚拟对象和/或动画的特征中的一个或多个特征。为了简明起见,此处不再重复这些细节。
图10是根据一些实施方案的确定是打开应用程序以替换当前显示的应用程序窗口在三维环境中的显示,还是打开应用程序以与当前显示的应用程序窗口同时显示的方法的流程图。
在一些实施方案中,方法1000在计算机系统(例如,图1中的计算机系统101)处执行,该计算机系统包括第一显示生成部件(例如,图1、图3和图4中的显示生成部件120)(例如,平视显示器、显示器、触摸屏和/或投影仪)和任选地一个或多个输入设备(例如,向下指向用户的手部的相机(例如,相机、颜色传感器、红外传感器和/或其他深度感测相机)或从用户头部向前指向的相机)。在一些实施方案中,方法1000通过存储在非暂态计算机可读存储介质中并由计算机系统的一个或多个处理器诸如计算机系统101的一个或多个处理器202(例如,图1A中的控制单元110)执行的指令来管理。方法1000中的一些操作任选地被组合,并且/或者一些操作的次序任选地被改变。
在一些实施方案中,方法1000在计算机系统(例如,图1中的计算机系统101、相对于图7A至图7AE描述的计算机系统101)处执行。在一些实施方案中,计算机系统与第一显示生成部件(例如,第一显示生成部件是平视显示器、头戴式显示器(HMD)、显示器、触摸屏和/或投影仪)和一个或多个输入设备(例如,相机、控制器、触敏表面、操纵杆、按钮、手套、手表、运动传感器和/或取向传感器)通信。在一些实施方案中,第一显示生成部件是相对于图7A至图7AE描述的第一显示生成部件7100。在一些实施方案中,计算机系统是集成设备,该集成设备具有封闭在与第一显示生成部件相同的外壳中的一个或多个处理器和存储器以及一个或多个输入设备中的至少一些输入设备。在一些实施方案中,计算机系统包括计算部件(例如,服务器,移动电子设备诸如智能电话或平板设备,可穿戴设备诸如手表、腕带或听筒,台式计算机或膝上型计算机),该计算部件包括与第一显示生成部件和/或一个或多个输入设备分开的一个或多个处理器和存储器。在一些实施方案中,第一显示生成部件以及一个或多个输入设备被集成并包围在相同外壳中。根据一些实施方案,相对于图7M至图7O描述了方法1000的特征中的许多特征。
方法1000涉及显示诸如用于通知的应用程序图标,以及基于使得用户能够执行的不同手势来确定是打开与应用程序图标相关联的应用程序以替换当前显示的应用程序窗口在三维环境中的显示,还是打开与应用程序图标相关联的应用程序以与已经显示的应用程序窗口在三维环境中同时显示(例如,并排显示)。基于来自用户的手势的类型,响应于用户的手势来自动确定在何处显示与应用程序图标相关联的应用程序,使得用户不需要手动地调整所显示的应用程序的位置,这向用户提供附加控制选项而不使用户的视图因为附加显示的控件变得杂乱,并且使得能够在已经满足一组条件时自动执行操作而无需进一步的用户输入。
在已经满足一组条件时执行操作增强了该系统的可操作性并且使用户-系统界面更有效(例如,通过帮助用户提供合适的输入并且减少操作该系统/与该系统进行交互时的用户错误,而且避免执行附加动作的需要,例如以便导航菜单来访问用于与该系统进行交互的特征或选项),这又通过使用户能够更快速且有效地使用该系统而减少了电力使用并且延长了该系统的电池寿命。
在执行方法1000时,计算机系统经由第一显示生成部件在三维环境的第一视图中显示(1002)第一应用程序。在一些实施方案中,第一应用程序在三维环境中的相应特征位置与三维环境中的第一锚定位置具有第一空间关系(例如,该应用程序被锚定到三维环境)。在一些实施方案中,如本文所用的“显示相应应用程序”包括显示相应应用程序的用户界面。
在显示第一应用程序时,计算机系统在三维环境的第一视图中显示(1004)第二应用程序的表示。在一些实施方案中,第二应用程序的表示(例如,表示705,图7M)至少部分地与第一应用程序的视图重叠。
计算机系统经由一个或多个输入设备检测(1006)指向第二应用程序的表示(例如,如参考图7M所描述的应用程序图标705)的输入。
响应于检测到指向第二应用程序的表示的输入(1008),根据确定该输入是第一类型的输入(例如,第一手势(例如,第一空中手势)),计算机系统将第一应用程序的显示替换(1010)为第二应用程序的显示(例如,如参考图7M至图7N所描述),并且根据确定该输入是第二类型的输入(例如,第二手势(例如,第二空中手势)),计算机系统同时显示(1012)第一应用程序和第二应用程序(例如,如参考图7M和图7O所描述,第一应用程序窗口703与第二应用程序窗口706同时显示)。
在一些实施方案中,第二应用程序的表示包括一组应用程序图标中的应用程序图标。例如,如参考图7M所描述,应用程序图标是应用程序坞内的应用程序图标,或在主显示器内的阵列或菜单中显示的一组应用程序图标内的应用程序图标。在显示第一应用程序的当前视图时自动显示用于多个应用程序(包括用于第二应用程序)的一组应用程序图标提供实时视觉反馈,使得在用户正在查看第一应用程序时应用程序图标在用户的视图内,并且允许用户与用户的当前视图内的应用程序图标交互而不导航通过复杂的菜单分级结构,从而向用户提供改进的视觉反馈,而无需附加用户输入。
在一些实施方案中,第二应用程序的表示包括对应于第二应用程序的通知。例如,如参考图7M所描述,应用程序图标(例如,应用程序图标705)是通知(例如,警示704-1的表示)。在显示第一应用程序的当前视图时自动显示用于第二应用程序的通知提供实时视觉反馈,使得即使在用户当前正在查看第一应用程序时也显示用于第二应用程序的通知,并且允许用户与用于第二应用程序的通知交互而不导航通过复杂的菜单分级结构,从而向用户提供改进的视觉反馈,而无需附加用户输入。
在一些实施方案中,响应于检测到指向第二应用程序的表示的输入,计算机系统在对应于该通知的状态下显示第二应用程序。例如,如上文参考图7M至图7O所描述,不是在主页状态下启动该应用程序,而是该应用程序被打开到包括与该通知相关联的内容的窗口(例如,在图7N和图7O中,应用程序窗口706显示与该通知相关的内容)。响应于用户选择用于第二应用程序的通知,在包括与该通知相对应的内容的视图中自动显示第二应用程序,而不需要用户在查看与该通知相关的内容之前在第二应用程序内导航,这允许用户直接通过选择通知来查看与该通知相关的内容,而无需附加用户输入,从而减少执行操作所需的输入数量。
在一些实施方案中,第一类型的输入包括捏合输入。例如,如上文参考图7M至图7O所解释,第一类型的输入(例如,用用户的手部7020执行、指向图7M中的应用程序图标705)是捏合手势,该捏合手势包括手部的两个或更多个手指彼此接触或彼此中断接触的移动。例如,在第二应用程序的表示上执行捏合输入(例如,没有检测到用户的手部的移动(例如,没有检测到拖动输入))使得计算机系统在没有附加用户输入的情况下自动地将用于第一应用程序的应用程序窗口的显示替换为第二应用程序的显示。检测用户执行捏合输入、将用户的捏合输入与另一类型的手势(例如,捏合并拖动输入)区分开以及响应于捏合输入而将当前显示的应用程序的显示替换为第二应用程序,允许用户基于用户的输入(例如,手势)的类型来控制第二应用程序的显示(例如,以多种不同方式),而无需明确地显示用于显示第二应用程序的单独控件,从而提供附加控制选项而不使用户的视图因为附加显示控件变得杂乱。
在一些实施方案中,第二类型的输入包括捏合并拖动输入。例如,如上文参考图7M至图7O所解释,用户捏合图7M中的应用程序图标705并将应用程序图标705拖动到应用程序窗口703旁边的位置,并且计算机系统在根据用户的拖动手势的结束所确定的位置处显示应用程序窗口706。例如,捏合并拖动输入包括:包括手部的两个或更多个手指彼此接触或彼此中断接触的移动的捏合手势,并结合(例如,随后)将用户的手部的位置从第一位置(例如,拖动的开始位置)改变到第二位置(例如,拖动的结束位置)的拖动输入。在一些实施方案中,用户在执行拖动输入的同时保持捏合手势,并且释放捏合手势(例如,打开他们的两个或更多个手指)以结束拖动手势(例如,在第二位置处)。例如,捏合输入选择第二应用程序的表示(例如,第二应用程序的表示,也称为应用程序图标),并且使得用户能够在选择后根据拖动手势在三维环境内移动第二应用程序。在一些实施方案中,在捏合第二应用程序的表示之后,第二应用程序的表示被显示为第二应用程序的应用程序窗口(例如,被显示为应用程序窗口的缩略视图),并且在用户正在拖动第二应用程序时,用户正在拖动第二应用程序的所显示的应用程序窗口。在一些实施方案中,在用户正在拖动第二应用程序时,第二应用程序继续被显示为第二应用程序的应用程序图标(例如,并且根据拖动输入的结束来显示应用程序窗口)。例如,用户将第二应用程序拖动到用于第一应用程序的当前显示的应用程序窗口旁边的位置。在一些实施方案中,捏合输入和拖动输入由同一手部执行(例如,用户捏合两个或更多个手指以彼此接触并且利用拖动手势将同一手部移动到第二位置)。在一些实施方案中,由用户的第一手部执行捏合输入,并且由用户的第二手部执行拖动输入(例如,用户的第一手部捏合第二应用程序,并且用户的第二手部从一个位置移动到另一个位置,同时用户继续捏合第二应用程序)。检测用户执行捏合并拖动输入、将用户的捏合并拖动输入与另一类型的手势(例如,捏合输入)区分开以及响应于捏合并拖动输入而与当前显示的应用程序同时显示第二应用程序,允许用户基于用户的输入(例如,手势)的类型来控制第二应用程序的显示(例如,以多种不同方式),而无需明确地显示用于显示第二应用程序的单独控件,从而提供附加控制选项而不使用户的视图因为附加显示控件变得杂乱。
在一些实施方案中,在检测拖动输入时,计算机系统检测用户的手部的移动,并且计算机系统根据用户的手部的移动来移动第二应用程序(例如,在相同方向上和/或以成比例的速率)。例如,当用户拖动第二应用程序(例如,或拖动与第二应用程序相关联的应用程序图标705)时,根据该用户的手部在拖动输入期间移动,第二应用程序被显示在三维环境中的多个位置处(例如,如同在用户在拖动输入期间移动用户的手部时第二应用程序跟随用户的手部)。例如,在将该显示从图7M更新到图7O时,应用程序窗口706(例如,或应用程序图标705)被显示为根据用户的拖动输入来在三维环境中移动到其在图7O中的位置(例如,用户选择应用程序图标705,并且(i)应用程序窗口706(例如,应用程序窗口的缩略图或表示)(例如,其被打开以替换应用程序图标705的显示)或(ii)应用程序图标705根据用户的拖动手势的速度和方向而移动(例如,向下和向右))。根据用户的手部的移动(例如,在拖动输入期间)来自动更新第二应用程序的显示以在三维环境中移动,这在用户在三维环境内移动用户的手部时提供实时视觉反馈,从而向用户提供改进的视觉反馈。
在一些实施方案中,将第一应用程序的显示替换为第二应用程序的显示包括将第二应用程序吸附到与第一应用程序在三维环境中的位置相对应的三维环境中的位置,如参考图7M至图7O所描述(例如,响应于指向应用程序图标705的捏合输入,图7N中的应用程序窗口706被吸附到与图7M中的应用程序窗口703相同的位置)。在一些实施方案中,第二应用程序自动地(例如,在没有附加用户输入的情况下(例如,在捏合输入之后))处于的位置通过以下方式确定:将第二应用程序的中心与所显示的第一应用程序的中心(例如,或中心部分)对准,将第二应用程序的拐角与对应的拐角对准(例如,第二应用程序的右上角与第一应用程序的右上角对准),将第二应用程序的边缘与对应的边缘对准(例如,第二应用程序的左边缘与第一应用程序的左边缘对准),在显示第一应用程序的深度(例如,与用户相距的感知距离)处显示第二应用程序(例如,使得第二应用程序在显示第一应用程序的三维环境中相对于用户的相同位置处出现)。在一些实施方案中,将第一应用程序的显示替换为第二应用程序的显示包括停止显示第一应用程序,并且在与显示第一应用程序相同的位置中显示第二应用程序(例如,如同第二应用程序覆盖第一应用程序)。在一些实施方案中,将第一应用程序的显示替换为第二应用程序的显示包括停止显示第一应用程序,并且在与显示第一应用程序的位置不同的位置中显示第二应用程序(例如,第一应用程序不再被显示,并且第二应用程序自动地被显示在三维环境中的不同位置处(例如,第二应用程序是不同的大小并且被显示在不同的位置处,这由上述方法中的任何方法确定)。响应于用户输入(例如,捏合输入)而将第二应用程序自动地吸附到当前显示的应用程序的位置,允许用户在吸附位置处查看第二应用程序,而不需要用户仔细地将第二应用程序与当前显示的应用程序对准,从而使得能够在已经满足一组条件时执行操作而无需进一步的用户输入。
在一些实施方案中,在显示第一应用程序时,计算机系统在三维环境中显示第三应用程序的表示,第三应用程序的表示包括用于第三应用程序的通知。在一些实施方案中,响应于指向用于第三应用程序的通知的第三类型的输入(例如,第三空中手势),计算机系统显示用于第三应用程序的通知的内容而不取消第一应用程序,如参考图7M至图7O所描述(例如,应用程序图标705是用于第三应用程序的通知)。在一些实施方案中,第三类型的输入打开至少部分地与第一应用程序重叠的通知而不停止第一应用程序的显示(例如,在图7O中,不是将与第三应用程序相关联的应用程序窗口706显示在应用程序窗口703旁边(例如,或替换应用程序窗口703的显示),而是将应用程序窗口706显示为部分地与应用程序窗口703重叠(例如,同时继续显示应用程序窗口703(例如,在应用程序窗口706后面))。自动地显示用于第三应用程序的通知,并且响应于打开用于第三应用程序的通知的用户输入,打开第三应用程序而不取消在接收到打开用于该应用程序的通知的用户输入时显示的当前显示的应用程序,这响应于用户请求打开第三应用程序而提供实时视觉反馈,使得用户可以查看第三应用程序而不中断用户的当前视图(例如,不关闭当前显示的应用程序),并且减少来自用户的输入数量,使得用户不需要导航回到当前显示的应用程序(例如,在查看第三应用程序之后),从而向用户提供改进的视觉反馈并且减少执行操作所需的输入数量。
在一些实施方案中,第三应用程序包括消息传送应用程序(例如,即时消息传送应用程序、电子邮件应用程序或另一通信应用程序,如上文参考图7M至图7O所描述,应用程序图标705是消息传送应用程序的图标)。自动地显示用于消息传送应用程序的通知,并且响应于打开用于消息传送应用程序的通知的用户输入,打开消息传送应用程序而不取消在接收到打开用于消息传送应用程序的通知的用户输入时显示的当前显示的应用程序,这响应于用户请求打开消息传送应用程序而提供实时视觉反馈,使得用户可以查看消息传送应用程序(例如,并执行一个或多个操作)而不中断用户的当前视图(例如,不关闭当前显示的应用程序),并且减少来自用户的输入数量,使得用户不需要导航回到当前显示的应用程序(例如,在查看消息传送应用程序之后),从而向用户提供改进的视觉反馈并且减少执行操作所需的输入数量。
在一些实施方案中,在第一显示状态下显示第二应用程序的表示时,计算机系统检测指向处于第一显示状态的表示(例如,在第一状态下显示的警示704-1的表示和/或在第二状态下显示的警示704-4的表示,如参考图7D和图7I至图7L所描述)的用户的注意力。例如,第二应用程序的表示最初在第一状态(例如,初始通知状态)下显示(例如,其中第一状态包括用于第二应用程序的应用程序图标)。在一些实施方案中,第一显示状态包括“短暂观看”状态(例如,上述的警示704-4的第二状态)(例如,在用户已经关注第二应用程序的表示达阈值时间量后“短暂观看”被更新为第二“长时观看”状态(例如,在第三状态下显示的第二应用程序的表示)之前)。在一些实施方案中,根据确定指向处于第一显示状态的表示的用户的注意力满足关于第二应用程序的表示的注意力标准,将第二应用程序的表示的显示更新到第二显示状态(例如,不同于第一显示状态的“长时观看”状态),其中第二显示状态包括用于显示第二应用程序的用户可选选项。在一些实施方案中,指向第二应用程序的表示的输入(例如,空中手势)包括选择用于显示第二应用程序的选项的输入。在一些实施方案中,注意力标准包括用户看向该表示达至少阈值时间量的注视标准。在一些实施方案中,根据确定指向处于第一显示状态的表示的用户的注意力不满足关于第二应用程序的表示的注意力标准,不显示用于显示第二应用程序的用户可选选项(例如,不在第一显示状态下显示该用户可选选项)。在包括一个或多个可选选项(诸如用于打开与通知相关的应用程序的选项)的第二状态下显示该通知,而在第一状态下显示该通知时不显示一个或多个可选选项,允许用户在第二状态下显示该通知时以比在第二状态下显示该通知之前用户可以与该通知交互的方式更多的方式与该通知交互,从而提供附加控制选项而不使用户的视图变得杂乱。
在一些实施方案中,其中显示第一应用程序和第二应用程序的表示的三维环境是增强现实或虚拟现实(AR/VR)三维环境,如参考图7A至图7B和图7M至图7O所描述。在一些实施方案中,三维环境是混合现实环境,其中使得用户的物理环境的特征能够被显示为三维环境中的透传内容并且与一个或多个虚拟对象/虚拟应用程序同时显示。在一些实施方案中,三维环境是不显示透传内容的虚拟现实环境(例如,所有对象都是虚拟的)。在接收到通知时在AR/VR环境中自动显示通知和其他虚拟对象,这在用户正与三维环境交互时向用户提供实时视觉反馈,使得用户能够实时查看新通知而不中断AR/VR环境中的用户会话,从而向用户提供改进的视觉反馈。
在一些实施方案中,在显示第二应用程序的表示时,计算机系统显示一个或多个附加应用程序的表示。在一些实施方案中,响应于检测到选择用于一个或多个附加应用程序中的第四应用程序的表示的输入(例如,空中手势),计算机系统显示对应于第四应用程序的应用程序窗口。例如,在显示图7M中的应用程序图标705时,计算机系统显示用户可以选择打开附加应用程序窗口的附加应用程序图标(例如,并且使得能够显示对应于所选应用程序图标的另一应用程序窗口(例如,应用程序窗口703,图7N))。在一些实施方案中,该输入是捏合并拖动输入(例如,被执行为空中手势),如上文参考图7M至图7O所描述(例如,包括手部的两个或更多个手指彼此接触或彼此中断接触的移动的捏合手势,并结合(例如,随后)将用户的手部的位置从第一位置(例如,拖动的开始位置)改变到第二位置(例如,拖动的结束位置)的拖动输入)。在一些实施方案中,用户在执行拖动输入的同时保持捏合手势,并且释放捏合手势(例如,打开他们的两个或更多个手指)以结束拖动手势(例如,在第二位置处)。例如,捏合输入选择第四应用程序的表示(例如,在用户正在注视第四应用程序的表示时,用户执行捏合输入),并且使得用户能够在选择(例如,捏合)后根据拖动手势在三维环境内移动第四应用程序。例如,用户将第四应用程序拖动到三维环境中的位置,并且响应于用户在第二位置处释放捏合(例如,在拖动手势结束时),在该位置处显示第四应用程序(例如,第四应用程序窗口的中心部分在拖动结束的第二位置处)。在一些实施方案中,捏合输入和拖动输入由同一手部执行(例如,用户捏合两个或更多个手指以彼此接触并且利用拖动手势将同一手部移动到第二位置)。在一些实施方案中,由用户的第一手部执行捏合输入,并且由用户的第二手部执行拖动输入(例如,用户的第一手部捏合第四应用程序,并且用户的第二手部从一个位置移动到另一个位置,同时用户继续捏合第四应用程序)。自动检测用户执行指向从应用程序的多个当前显示的表示中选择的应用程序的表示的捏合并拖动输入,并且响应于捏合并拖动输入而将所选应用程序自动显示为三维空间中的新应用程序窗口,这在用户执行指向应用程序的特定表示的预定义的手势时提供实时视觉反馈,从而向用户提供改进的视觉反馈。
在一些实施方案中,在显示对应于第四应用程序的应用程序窗口时,计算机系统保持第二应用程序的表示和未被选择的一个或多个附加应用程序的表示的显示(例如,没有第四应用程序的表示的一个或多个附加应用程序,如参考图7M至图7O所描述(例如,在图7O中,在显示应用程序窗口时,应用程序图标(例如,应用程序图标705)继续被显示))。自动保持应用程序的多个表示的显示,同时在三维空间中的新应用程序窗口中同时显示所选应用程序,而不停止显示未被选择的应用程序的表示,这在用户从应用程序的多个所显示的表示中选择打开应用程序的特定表示时提供实时视觉反馈,并且使得用户能够在用户已经选择特定应用程序之后快速地访问应用程序的其他所显示的多个表示,而不需要用户导航到另一视图来访问应用程序的其他所显示的多个表示,从而向用户提供改进的视觉反馈并且减少执行操作所需的输入数量。
在一些实施方案中,响应于接收到选择一个或多个附加应用程序中的第五应用程序的表示的输入,计算机系统显示对应于第五应用程序的应用程序窗口(例如,同时保持对应于第四应用程序的应用程序窗口的显示)。例如,一个或多个附加应用程序中的应用程序的表示(例如,通知)是可选择的以打开新的应用程序窗口,如参考图7M至图7O所描述。例如,在显示图7M中的应用程序图标705时,计算机系统显示用户可以选择打开附加应用程序窗口的附加应用程序图标(例如,并且使得附加应用程序窗口能够与图7O中的应用程序窗口703和706同时显示)。检测指向从应用程序的多个当前显示的表示中选择的应用程序的另一表示的用户输入(诸如拖动输入),并且响应于该用户输入而将所选应用程序显示为三维空间中的新应用程序窗口,允许用户通过执行指向相应应用程序的当前显示的表示的手势来控制多个不同应用程序的显示,而不显示用于控制这些应用程序中的每个应用程序的显示的可选选项,从而提供附加控制选项而不使用户的视图因为附加显示控件变得杂乱。
应当理解,对图10中的操作进行描述的具体次序仅仅是示例,并非旨在表明所述次序是可以执行这些操作的唯一次序。本领域的普通技术人员会想到多种方式来对本文所述的操作进行重新排序。另外,应当注意,本文相对于本文所述的其他方法(例如,方法800、900、1100和1200)所述的其他过程的细节同样以类似的方式适用于上文相对于图10所述的方法1000。例如,上文参考方法1000所述的手势、注视输入、物理对象、用户界面对象、控件、移动、标准、三维环境、显示生成部件、表面、物理对象的表示、虚拟对象和/或动画任选地具有本文参考本文所述的其他方法(例如,方法800、900、1100和1200)所述的手势、注视输入、物理对象、用户界面对象、控件、移动、标准、三维环境、显示生成部件、表面、物理对象的表示、虚拟对象和/或动画的特征中的一个或多个特征。为了简明起见,此处不再重复这些细节。
上文参考图8、图9、图10、图11和图12所述的操作任选地由图1至图6所描绘的部件来实现。在一些实施方案中,方法800、900、1000、1100和1200的各方面/操作可在这些方法之间互换、替换和/或添加。为了简明起见,此处不再重复这些细节。
图11是根据一些实施方案的通过第一用户界面对象导航到第二用户界面对象的方法1100的流程图。在一些实施方案中,当从第一用户界面对象导航到第二用户界面对象时,第一用户界面对象被推得更远离用户的视点,并且第二用户界面对象被显示在第一用户界面对象的前面距用户的视点的适当距离处,诸如在第一用户界面对象的原始位置处。响应于检测到作为满足至少第一输入阈值的输入的第一用户输入,在三维环境中的第二位置处显示第二用户界面对象并将第一用户界面对象从第一位置移动到与第一视点的距离比第一位置大的第三位置,这在适当位置处自动显示第二用户界面对象和第一用户界面对象而无需进一步的用户输入(例如,用于移动第一用户界面对象和/或移动第二用户界面对象的进一步的用户输入)。
在一些实施方案中,方法1100在计算机系统(例如,图1中的计算机系统101)处执行,该计算机系统包括第一显示生成部件(例如,图1、图3和图4中的显示生成部件120)(例如,平视显示器、显示器、触摸屏和/或投影仪)和任选地一个或多个输入设备(例如,向下指向用户的手部的相机(例如,相机、颜色传感器、红外传感器和/或其他深度感测相机)或从用户头部向前指向的相机)。在一些实施方案中,方法1100通过存储在非暂态计算机可读存储介质中并由计算机系统的一个或多个处理器诸如计算机系统101的一个或多个处理器202(例如,图1A中的控制单元110)执行的指令来管理。方法1100中的一些操作任选地被组合,并且/或者一些操作的次序任选地被改变。
在一些实施方案中,方法1100在计算机系统处执行,该计算机系统包括显示生成部件(例如,平视显示器、头戴式显示器(HMD)、显示器、触摸屏、投影仪、平板电脑和/或智能电话)和一个或多个输入设备(例如,相机、控制器、触敏表面、操纵杆和/或按钮)或与该显示生成部件和该一个或多个输入设备通信。在一些实施方案中,第一显示生成部件是相对于图7A至图7AE描述的第一显示生成部件7100。在一些实施方案中,计算机系统是集成设备,该集成设备具有封闭在与第一显示生成部件相同的外壳中的一个或多个处理器和存储器以及一个或多个输入设备中的至少一些输入设备。在一些实施方案中,计算机系统包括计算部件(例如,服务器,移动电子设备诸如智能电话或平板设备,可穿戴设备诸如手表、腕带或听筒,台式计算机或膝上型计算机),该计算部件包括与第一显示生成部件和/或一个或多个输入设备分开的一个或多个处理器和存储器。在一些实施方案中,第一显示生成部件以及一个或多个输入设备被集成并包围在相同外壳中。根据一些实施方案,相对于图7P至图7W描述了方法1100的特征中的许多特征。
在执行方法1100时,计算机系统经由显示生成部件显示(1102)三维环境的第一视图,该第一视图对应于用户的第一视点。在显示三维环境的第一视图时,计算机系统在三维环境中的第一位置处显示(1104)第一用户界面对象,其中第一位置与用户的第一视点具有第一空间关系。例如,在一些实施方案中,第一用户界面对象是与另一交互式用户界面对象分开的交互式用户界面元素(例如,按钮、图标、超链接、控件或另一类型的交互式用户界面元素)。在一些实施方案中,第一用户界面对象包括公共背景拼盘上的多个交互式用户界面元素。图7R示出了根据一些实施方案的在三维环境7000’中的第一位置处的第一用户界面对象708的显示,其中第一位置与用户的第一视点具有第一空间关系(例如,在与第一视点相距第一距离处,并且面向第一视点)。在三维环境中的第一位置处显示包括第一用户界面对象在内的三维环境的第一视图时(例如,在用户的第一视点在三维环境中保持静止或基本上静止时),计算机系统检测(1106)指向第一用户界面对象的至少第一部分的第一输入(例如,结合手势输入718检测到的注视输入707,如图7Q所示)。响应于检测到指向第一用户界面对象的至少第一部分的第一输入(例如,在用户的第一视点在三维环境中保持静止或基本上静止时)(例如,根据确定第一输入满足第一标准(例如,第一输入是捏合手势结合第一用户界面对象的第一部分处的注视或焦点选择器,或者第一输入是长捏合手势结合第一用户界面对象的第一部分处的注视或焦点选择器))(1108):计算机系统在三维环境中的第二位置处(例如,任选地,第二位置与用户的第一视点具有第一空间关系)显示(1110)第二用户界面对象(例如,与第一用户界面对象或第一输入指向的第一用户界面对象的部分相对应的模态用户界面);并且计算机系统将第一用户界面对象从三维环境中的第一位置移动到第三位置,其中与三维环境中的第一位置相比,第三位置与用户的第一视点的距离更大。例如,在一些实施方案中,响应于指向第一用户界面对象的至少一部分的用户输入,当第一用户界面对象移动得更远离用户的视点而用户的视点在三维环境中保持静止或基本上静止时,在第一用户界面对象的原始位置或深度处显示新的用户界面对象。例如,如图7Q至图7R所示,在一些实施方案中,响应于检测到如图7Q所示指向第一用户界面对象708中的用户界面元素710-2的注视输入707,计算机系统在三维环境7000’中的第二位置处显示第二用户界面对象720,并将第一用户界面对象708移动到三维环境中的第三位置,如图7R所示,其中第三位置比先前显示第一用户界面对象708的第一位置更远离第一视点。在一些实施方案中,在用户的第一视点在三维环境中保持静止或基本上静止时,与第一用户界面对象相反,也在三维环境的第一视图中示出的一个或多个静止用户界面对象在三维环境中保持在它们的原始位置处,并且不会由于第一输入而改变它们与第一视点的相应空间关系。例如,物理对象的表示7014’和虚拟对象712保持在它们在三维环境中的原始位置处,并且不会由于用户的输入而改变它们与第一视点的相应空间关系。
在一些实施方案中,将第一用户界面对象从三维环境中的第一位置移动到第三位置改变了第一用户界面对象与三维环境中的至少一个其他用户界面对象(例如,三维环境中的静止用户界面对象、被世界锁定的对象、被视点锁定的对象)之间的相应空间关系。例如,在一些实施方案中,如图7Q至图7R所示,将第一用户界面对象708从第一位置(例如,图7Q所示)移动到第三位置(例如,图7R所示)改变了第一用户界面对象708与虚拟对象712、地板7008的表示7008’、墙壁7006的表示7006’和物理对象7014的表示7014’之间的空间关系。改变第一用户界面对象与三维环境中的至少一个其他用户界面对象之间的相应空间关系向用户提供了改进的视觉反馈(例如,第二用户界面被显示在三维环境中的第二位置处的改进的视觉反馈)。
在一些实施方案中,第一位置和第二位置与三维环境中的用户的第一视点具有小于阈值量的距离差(例如,具有相同距离)。例如,在一些实施方案中,响应于第一输入,当第一用户界面对象从用户的视点后退时,计算机系统显示与第一用户界面对象或第一输入指向的第一用户界面对象的部分相对应的新用户界面;并且新用户界面对象被显示在第一用户界面对象的原始观看深度处(例如,完全或部分地阻挡第一用户界面对象的视图)。例如,如图7R的插图716所示,第二用户界面对象720被显示在与第一用户界面对象708的原始位置(例如,如图7Q所示的第一用户界面对象708的位置)相同或基本上相同的距第一视点的距离的位置。将第二用户界面对象显示在具有与第一位置相同或基本上相同的距用户的第一视点的距离的第二位置处,使得计算机系统在与第一用户界面对象相同或基本上相同的距第一视点的距离处自动显示第二用户界面对象(在检测到第一输入之前)而无需进一步的用户输入(例如,用于首先将第一用户界面移动到第三位置的进一步的用户输入、用于显示第二用户界面对象的进一步的用户输入和/或用于将第二用户界面对象移动到第二位置的进一步的用户输入)。
在一些实施方案中,计算机系统检测(例如,在由于第一输入而在三维环境中的第二位置处显示第二用户界面对象并且在第三位置处显示第一用户界面对象时)显示生成部件在物理环境(例如,在三维环境中表示的物理环境,或用户的物理环境)中的移动。响应于检测到显示生成部件在物理环境中的移动,计算机系统将三维环境的第一视图替换为三维环境的第二视图,其中三维环境的第二视图对应于用户的第二视点,并且三维环境中的第一视点与第二视点之间的差异对应于显示生成部件在物理环境中的移动。在一些实施方案中,当显示生成部件的移动引起用户的视点在三维环境中的移动时,三维环境中的一个或多个静止对象保持在它们在三维环境中的原始位置处,并且它们与用户的视点的相应空间关系由于显示生成部件的移动而改变。响应于检测到显示生成部件的移动,计算机系统进一步根据显示生成部件在物理环境中的移动来在三维环境中移动第一用户界面对象和第二用户界面对象,同时保持从第二视点到第一用户界面对象和第二用户界面对象的相应距离。在一些实施方案中,与三维环境中的静止对象相反,当显示生成部件的移动引起用户的视点在三维环境中的移动时,第一用户界面对象和第二用户界面对象被锚定到用户的视点,并且根据用户的视点在三维环境中的移动来在三维环境中移动,它们与用户的视点的相应空间关系由于显示生成部件的移动而基本上保持不变。例如,在一些实施方案中,在图7T中,第一用户界面对象708和第二用户界面对象720以距用户的第一视点的相应距离来显示,并且如果用户的当前视点基于用户和/或显示生成部件的移动而改变到第二视点,则计算机系统将三维环境的视图更新到对应于第二视点的第二视图,并且计算机系统还在三维环境中移动第一用户界面对象708和第二用户界面对象720,使得第一用户界面对象和第二用户界面对象保持在用户的视场的相同部分中并保持它们与用户的当前视点的相应距离。将三维环境的第一视图替换为三维环境的第二视图,并且根据显示生成部件的移动来移动第一用户界面对象和第二用户界面对象,使得计算机系统自动地移动第一用户界面对象和第二用户界面对象(例如,不需要用户执行附加输入来手动地将第一用户界面对象和第二用户界面对象移动到三维环境的第二视图中的适当位置)。
在一些实施方案中,第一输入是满足至少第一输入阈值(例如,具有比第一时间阈值更长的持续时间和/或距离阈值)的输入。在一些实施方案中,第一输入是满足输入阈值(例如,时间阈值和/或距离阈值)的第一类型的空中手势(例如,捏合手势、轻扫手势或另一类型的空中手势)。在一些实施方案中,第一输入是长捏合空中手势。在一些实施方案中,第一输入是长轻击空中手势。例如,在图7Q中,根据一些实施方案,计算机系统检测到作为满足至少第一输入阈值(例如,时间阈值或距离阈值)的输入的手势710,并且计算机系统显示第二用户界面对象720(图7Q)并将第一用户界面对象708推得更远离用户的视点。在一些实施方案中,计算机系统响应于指向第一用户界面对象的该部分的其他类型的输入而生成其他类型的响应(例如,响应于轻弹手势而从第一视图取消第一用户界面对象,和/或响应于捏合并拖动手势而改变第一用户界面对象的位置),而不显示第二用户界面对象或将第一用户界面对象从用户的视点移开。响应于检测到作为满足至少第一输入阈值的输入的第一用户输入,在三维环境中的第二位置处显示第二用户界面对象并将第一用户界面对象从第一位置移动到与第一视点的距离比第一位置大的第三位置,这在适当位置处自动显示第二用户界面对象和第一用户界面对象而无需进一步的用户输入(例如,用于移动第一用户界面对象和/或移动第二用户界面对象的进一步的用户输入)。
在一些实施方案中,第一用户界面对象的第一部分是第一用户界面对象内的第一可选对象,并且第一输入指向第一可选对象(例如,而不是第一用户界面对象内的任何其他可选对象),并且第二用户界面对象从三维环境中的第一可选对象的相应位置出现。例如,在一些实施方案中,第一输入指向的第一用户界面对象的第一部分是包含在第一用户界面对象内的可选按钮或菜单选项;并且响应于选择或激活可选按钮或菜单选项的第一输入,该按钮或菜单选项以动画方式显示成对应于该按钮或菜单选项的模态用户界面,并且任选地显示在第一用户界面对象的原始位置处,同时第一用户界面对象后退到三维环境中的另一位置处。例如,如图7Q所示,根据一些实施方案,第一用户界面对象的第一部分是可选用户界面元素710-2,并且第一输入(例如,注视输入707和手势输入718)指向可选用户界面元素710-2;并且响应于检测到指向可选用户界面元素710-2的第一输入,计算机系统显示从可选用户界面元素710-2在三维环境中的相应位置出现的第二用户界面对象720。显示从第一可选对象在三维环境中的相应位置出现的第二用户界面对象向用户提供了改进的视觉反馈(例如,正在显示第二用户界面对象的改进的视觉反馈,以及关于第一用户界面对象和第二用户界面对象的位置的改进的视觉反馈)。
在一些实施方案中,响应于检测到指向第一用户界面对象的至少第一部分的第一输入:计算机系统将第一用户界面对象的一个或多个显示特性从第一组值改变为第二组值,结合将第一用户界面对象从三维环境中的第一位置移动到第三位置。例如,在一些实施方案中,改变第一用户界面对象的一个或多个显示特性包括:相对于第二用户界面对象和/或第一用户界面对象在第一位置处的先前状态,使第一用户界面对象模糊、使第一用户界面对象更加半透明、使第一用户界面对象降低颜色饱和度和/或使第一用户界面对象变暗。例如,如图7Q至图7R所示,根据一些实施方案,与响应于检测到注视输入707结合手势输入718而将第一用户界面对象708从三维环境中的第一位置移动到第三位置相结合,计算机系统进一步改变第一用户界面对象708的显示特性,使得第一用户界面对象708以减小的视觉显著性显示(例如,被调暗、变暗、模糊和/或变得更加半透明)。将第一用户界面对象的一个或多个显示特性从第一组值改变为第二组值,结合将第一用户界面对象从三维环境中的第一位置移动到第三位置,向用户提供改进的视觉反馈(例如,计算机系统已经检测到显示生成部件的移动的改进的视觉反馈)。
在一些实施方案中,在第一用户界面对象被显示在三维环境中的第三位置处时,计算机系统检测到用户的注意力指向第一用户界面对象(例如,检测到用户的注视从第二用户界面对象或三维环境的另一部分转移到第一用户界面对象,检测到焦点选择器被移动到第三位置处的第一用户界面对象)。响应于检测到用户的注意力指向第一用户界面对象,计算机系统将第一用户界面对象的一个或多个显示特性从第二组值恢复到第一组值。例如,在一些实施方案中,在与显示第二用户界面对象相结合将第一用户界面对象移动到第三位置之后,计算机系统继续在第三位置处以相对于第二用户界面对象减小的视觉显著性显示第一用户界面对象,例如通过使第一用户界面对象模糊、使其更加半透明、使其降低饱和度、淡出和/或变暗;并且当计算机系统检测到用户的注视从第二用户界面对象或三维环境的另一部分转移回第一用户界面对象时,计算机系统通过恢复第一用户界面对象的原始清晰度、不透明度、颜色饱和度和/或亮度来增大第一用户界面对象的视觉显著性。例如,如图7Q至图7S所示,根据一些实施方案,响应于检测到指向在第三位置处显示的第一用户界面对象708的用户的注视输入709,计算机系统将第一用户界面对象708(图7S中)的视觉外观恢复到显示第二用户界面对象720之前所示的外观(例如,图7Q所示的第一用户界面对象708的外观)。响应于检测到用户的注意力指向第一用户界面对象,将第一用户界面对象的一个或多个显示特性从第二组值恢复到第一组值,提供了附加控制选项而不需要显示附加控件(例如,用于改变第一用户界面对象的一个或多个显示值的附加控件)。
在一些实施方案中,响应于检测到用户的注意力指向第一用户界面对象(例如,检测到用户的注视从第二用户界面对象或三维环境的另一部分转移到第一用户界面对象,或检测到焦点选择器被移动到第三位置处的第一用户界面对象),计算机系统将第二用户界面对象的一个或多个显示特性从第三组值改变为第四组值。例如,在一些实施方案中,在与显示第二用户界面对象相结合将第一用户界面对象移动到第三位置之后,计算机系统继续在第三位置处以相对于第二用户界面对象减小的视觉显著性显示第一用户界面对象,例如通过使第一用户界面对象模糊、使其更加半透明、使其降低饱和度、淡出和/或变暗;并且当计算机系统检测到用户的注视从第二用户界面对象或三维环境的另一部分转移回第一用户界面对象时,计算机系统通过通过恢复第一用户界面对象的原始清晰度、不透明度、颜色饱和度和/或亮度并且使第二用户界面对象模糊、使第二用户界面对象更加半透明、降低颜色饱和度和/或变暗来增大第一用户界面对象的视觉显著性。例如,如图7R至图7S所示,根据一些实施方案,响应于检测到指向在第三位置处显示的第一用户界面对象720的用户的注视输入709,计算机系统改变第二用户界面对象708(在图7S中)的视觉外观,使得第二用户界面对象720的视觉显著性减小(例如,与图7R所示的第二用户界面对象720的外观相比)。响应于检测到用户的注意力指向第一用户界面对象,将第二用户界面对象的一个或多个显示特性从第三组值改变为第四组值,向用户提供了改进的视觉反馈(例如,计算机系统已经检测到用户的注意力指向第一用户界面对象(例如,并且不再指向第二用户界面对象)的改进的视觉反馈)。
在一些实施方案中,响应于检测到用户的注意力指向第一用户界面对象(例如,检测到用户的注视从第二用户界面对象或三维环境的另一部分转移到第一用户界面对象,和/或检测到焦点选择器被移动到第三位置处的第一用户界面对象),计算机系统恢复第一用户界面对象在第一位置处的外观。例如,在一些实施方案中,计算机系统通过恢复第一用户界面对象的原始清晰度、不透明度、颜色饱和度和/或亮度来增大第一用户界面对象的视觉显著性。例如,在一些实施方案中,计算机系统通过恢复第一位置处的第一用户界面对象的原始清晰度、不透明度、颜色饱和度和/或亮度来增大第一用户界面对象的视觉显著性。在一些实施方案中,计算机系统将第二用户界面对象移开以在第一位置处重新显示第一用户界面对象。例如,在一些实施方案中,响应于检测到指向第一用户界面对象708的注视输入,计算机系统在第一位置处重新显示第一用户界面对象708并且将第一用户界面对象708的外观恢复到图7Q所示的外观,并且任选地将第二用户界面对象推到侧面上的另一位置。响应于检测到用户的注意力指向第一用户界面对象,在第一位置处恢复第一用户界面对象的外观,这使得能够在第一位置处显示第一用户界面对象(例如,通过恢复第一用户界面对象的外观)而不显示附加控件(例如,用于将第一用户界面对象移动到第一位置和/或改变第一用户界面对象的外观的附加控件)。
在一些实施方案中,在三维环境的第一视图中同时显示第一用户界面对象和第二用户界面对象时(例如,在第三位置处显示第一用户界面对象并且在第二位置处显示第二用户界面对象时),计算机系统检测注视输入在第一用户界面对象与第二用户界面对象之间的来回移动。响应于检测到注视输入在第一用户界面对象与第二用户界面对象之间的来回移动:在来回移动的第一部分期间,根据确定注视输入从第二用户界面对象移动到第一用户界面对象,计算机系统改变第一用户界面对象和第二用户界面对象中的至少一者的一个或多个显示特性,使得第一用户界面对象比第二用户界面对象获得更大的视觉显著性;并且在来回移动的第二部分期间,根据确定注视输入从第一用户界面对象移动到第二用户界面对象,计算机系统改变第一用户界面对象和第二用户界面对象中的至少一者的一个或多个显示特性,使得第二用户界面对象获得比第一用户界面对象更大的视觉显著性。例如,当用户的注视从第二用户界面对象转移到第一用户界面对象时,计算机系统例如通过使第二用户界面对象模糊和/或变暗和/或降低第二用户界面对象的不透明度来减小第二位置处的第二用户界面对象的视觉显著性,并且例如通过恢复第一用户界面对象的原始清晰度、不透明度和/或亮度来增大第三位置处的第一用户界面对象的视觉显著性。类似地,当用户的注视从第一用户界面对象转移回到第二用户界面对象时,计算机系统例如通过恢复其原始清晰度、不透明度和/或亮度来恢复第二位置处的第二用户界面对象的视觉显著性,并且例如通过使第一用户界面对象模糊和/或变暗和/或降低第一用户界面对象的不透明度来减小第三位置处的第一用户界面对象的视觉显著性。当用户的注视在第一用户界面对象和第二用户界面对象之间来回移动时,任选地重复该过程。例如,在一些实施方案中,如图7R至图7S所示,当用户的注视从第二用户界面对象720转移到第一用户界面对象708时,计算机系统改变第一位置处的第二用户界面对象的视觉特性以使其在视觉上较不显著,并且计算机系统改变第三位置处的第一用户界面对象的视觉特性以将其视觉显著性恢复到如图7Q所示的其原始状态;并且当用户的注视从第一用户界面对象708转移到第二用户界面对象708时,计算机系统改变第三位置处的第一用户界面对象的视觉特性以使其在视觉上较不显著,并且计算机系统改变第一位置处的第二用户界面对象的视觉特性以将其视觉显著性恢复到如图7R所示的其原始状态。根据确定注视输入从第二用户界面对象移动到第一用户界面对象,改变第一用户界面对象和第二用户界面对象中的至少一者的一个或多个显示特性,使得第一用户界面对象获得比第二用户界面对象更大的视觉显著性,并且根据确定注视输入从第一用户界面对象移动到第二用户界面对象,改变第一用户界面对象和第二用户界面对象中的至少一者的一个或多个显示特性,使得第二用户界面对象获得比第一用户界面对象更大的视觉显著性,这使得用户界面对象能够以适当的视觉显著性显示而不需要显示附加控件(例如,用于调整第一用户界面对象和/或第二用户界面对象的视觉显著性的附加控件)。
在一些实施方案中,在三维环境中的第二位置处显示第二用户界面对象并且在第三位置处显示第一用户界面对象时(例如,当仍然显示三维环境的第一视图时),计算机系统检测指向第一用户界面对象的第二用户输入。响应于检测到指向第一用户界面对象的第二输入(例如,在用户的第一视点在三维环境中保持静止或基本上静止时)(例如,根据确定第二输入满足第二标准(例如,第二输入包括捏合手势结合指向第一用户界面对象的注视输入,或长捏合手势结合第一用户界面对象处的焦点选择器)):计算机系统停止显示第二用户界面对象;并且计算机系统将第一用户界面对象从三维环境中的第三位置移动回到第一位置。例如,在一些实施方案中,在第一用户界面对象被移动到更远离用户的视点的第三位置之后,如果检测到指向第一用户界面对象的另一用户输入(例如,满足用于激活第一用户界面对象的第一部分的第一标准的输入),则计算机系统取消第二用户界面对象并且将第一用户界面对象恢复回到三维环境中的第一位置。换句话讲,恢复第一用户界面对象与用户的视点之间的原始空间关系。例如,在一些实施方案中,在图7S中,在注视输入709指向第一用户界面对象708时,如果检测到满足第一标准的手势输入(例如,捏合手势、轻击手势或另一手势),则计算机系统停止显示第二用户界面对象,并且在三维环境中的第一位置处重新显示第一用户界面对象708。响应于检测到指向第一用户界面对象的第二输入,停止显示第二用户界面对象并将第一用户界面对象从第三位置移动回到第一位置,使得适当的用户界面对象能够被显示在适当的位置处,而不需要显示附加控件(例如,用于停止显示第二用户界面对象和/或用于移动第一用户界面对象的附加控件)。
在一些实施方案中,指向第一用户界面对象的第二输入包括结合空中手势(例如,捏合手势、长捏合手势或轻击手势)(例如,与空中手势同时和/或在空中手势的时间窗口内)检测到的指向第一用户界面对象的注视输入。例如,在一些实施方案中,在图7S中,在注视输入709指向第一用户界面对象708时,如果计算机系统检测到满足第一标准的空中手势输入(例如,捏合手势、长捏合手势或轻击手势),则计算机系统停止显示第二用户界面对象并且在三维环境中的第一位置处重新显示第一用户界面对象(例如,恢复图7P所示的状态)。响应于检测到指向第一用户界面对象的注视输入结合空中手势,停止显示第二用户界面对象并将第一用户界面对象从第三位置移动回到第一位置,使得适当的用户界面对象能够被显示在适当的位置处,而不需要显示附加控件(例如,用于停止显示第二用户界面对象和/或用于移动第一用户界面对象的附加控件)。
在一些实施方案中,将第一用户界面对象从三维环境中的第三位置移动回到第一位置包括在朝向用户的第一视点的方向上移动第一用户界面对象。在一些实施方案中,如果在第一用户界面对象和第二用户界面对象被同时显示时视点已经在三维环境中移动(例如,由于显示生成部件在物理环境中的移动),则第一用户界面对象和第二用户界面对象被任选地锚定到用户的当前视点并且根据视点的移动来在三维环境中移动。因此,当检测到用于导航回到第一用户界面对象并取消第二用户界面对象的输入(例如,结合空中手势(例如,捏合手势、长捏合手势或轻击手势)检测到的指向第一用户界面对象的注视输入)时,计算机系统停止显示第二用户界面对象并将第一用户界面对象从其当前位置朝向用户的当前视点移动,使得第一用户界面对象与用户的视点之间的原始空间关系(例如,第一空间关系和/或第一观看距离)得以恢复。例如,在一些实施方案中,在图7S中,在注视输入709指向第一用户界面对象708时,如果计算机系统检测到满足第一标准的空中手势输入(例如,捏合手势、长捏合手势或轻击手势),则计算机系统停止显示第二用户界面对象并且在三维环境中的第一位置处重新显示第一用户界面对象(例如,恢复图7P所示的状态),这包括朝向第一视点移动第一用户界面对象708直到第一用户界面对象708到达与第一视点相距第一距离处的第一位置。响应于检测到指向第一用户界面对象的第二输入,停止显示第二用户界面对象并将第一用户界面对象从第三位置移动回到第一位置(包括在朝向用户的第一视点的方向上移动第一用户界面对象),使得适当的用户界面对象能够被显示在适当的位置处,而不需要显示附加控件(例如,用于停止显示第二用户界面对象和/或用于移动第一用户界面对象的附加控件)。
在一些实施方案中,在第三位置处显示第一用户界面对象并且在第二位置处显示第二用户界面对象时,检测第三输入,该第三输入包括用户的手部在第一姿势(例如,捏合姿势、食指和拇指保持彼此接触或三指捏合姿势)下的移动,随后释放第一姿势(例如,中断捏合姿势、停止食指和拇指之间的接触或停止三指捏合姿势的至少两个手指的接触)。响应于检测到第三输入,计算机系统停止在三维环境中显示第二用户界面对象。在一些实施方案中,计算机系统任选地响应于第三输入而停止在三维环境中显示第一用户界面对象。在一些实施方案中,计算机系统任选地响应于第三输入而将第一用户界面对象移动回到恢复第一用户界面对象与用户的当前视点之间的第一空间关系的位置。在一些实施方案中,计算机系统将诸如关闭按钮之类的用户界面对象与第二用户界面对象同时显示;并且响应于用户界面对象的激活(例如,结合空中手势(例如,捏合手势、轻击手势或长捏合手势)检测到的指向关闭按钮的注视输入,或在焦点选择器在关闭按钮处时的激活输入),计算机系统停止在三维环境中显示第二用户界面对象,并且任选地停止显示第一用户界面对象或将第一用户界面对象移动回到恢复第一用户界面对象与用户的当前视点之间的第一空间关系的位置。例如,在一些实施方案中,如图7V至图7W所示,在将第二用户界面对象和第一用户界面对象显示在它们的相应位置处(例如,将第一用户界面对象708显示在第三位置处并且将第二用户界面对象720显示在第二位置处,或者在第二用户界面对象已被用户平移到不同位置之后将第一用户界面对象显示在第二用户界面对象后面的不同位置处(例如,如图7U至图7V所示))时,计算机系统检测手势输入728(例如,在向下方向上的捏合并拖动,或者捏合和手腕轻弹手势)(任选地,结合检测指向第二用户界面对象720的未被占据部分的注视输入717);并且响应于检测到手势输入728(以及任选地注视输入717)(如图7V所示),计算机系统停止显示第二用户界面对象720并且恢复第一用户界面对象708的外观并且将第一用户界面对象708与当前视点之间的空间关系恢复到在显示第二用户界面对象720之前存在的空间关系(例如,如果当前视点是第一视点并且第一用户界面对象和第二用户界面对象尚未被用户输入728移动,则第一用户界面对象708将以其原始外观重新显示在第一位置处,和/或如果当前视点是第二视点,则第一用户界面对象708被显示在与第二视点相距第一距离的位置处(例如,在第二位置处,和/或在第二用户界面对象被取消之前第二用户界面对象的最后位置处))。响应于检测到包括用户的手部在第一姿势下的移动且随后释放第一姿势的第三输入而停止显示第二用户界面对象,使得用户界面对象能够被取消(例如,使得它们不再被显示)而不需要显示附加控件(例如,用于停止显示第二用户界面对象的附加控件)。
在一些实施方案中,在三维环境中的第一位置处显示第一用户界面对象时,在三维环境中的第四位置处显示抓取器对象(例如,图7Q中的抓取器对象714),其中抓取器对象与第一用户界面对象具有第二空间关系(例如,抓取器对象被锚定到第一用户界面对象的边缘,并且具有与第一用户界面对象相同或基本上相同的z深度),并且第一用户界面对象被配置为在抓取器对象在三维环境中移动时随抓取器对象移动。例如,在一些实施方案中,如图7Q所示,抓取器对象714被显示在第一用户界面对象708的底部边缘下方。如果检测到指向抓取器对象的拖动输入(例如,结合指向抓取器对象714的注视输入检测到的捏合并拖动手势,或者另一选择并拖动输入),则计算机系统根据拖动输入来一起平移第一用户界面对象708和抓取器对象714,同时在第一用户界面对象708和抓取器对象714的平移期间保持第一用户界面对象708和抓取器对象714之间的空间关系。响应于检测到第一输入,计算机系统在三维环境中的第五位置处显示抓取器对象(例如,抓取器对象被锚定到第二用户界面对象并且具有与第二用户界面对象相同或基本上相同的z深度,而第二用户界面对象被显示在第二位置处并且第一用户界面对象被移动到第三位置),其中第五位置和第四位置与用户的第一视点具有小于阈值量的距离差(例如,第五位置和第四位置与用户的第一视点具有相同或基本上相同的距离)。例如,在一些实施方案中,如图7Q至图7R所示,抓取器对象724和抓取器对象714是相同的对象;并且响应于检测到引起第二用户界面对象720在第一位置处的显示的输入,计算机系统将图7Q所示的抓取器对象714向下移动到第二用户界面对象720的底部边缘下方,而不改变抓取器对象714的显示深度,并且图7R中显示在第二用户界面对象720下方的抓取器对象714被标记为抓取器对象724。例如,在一些实施方案中,当第二用户界面对象被显示在三维环境中的第二位置处并且第一用户界面对象被显示在第三位置处时,抓取器对象保持静止(例如,当第二用户界面对象具有高于第一用户界面对象的底部边缘的底部边缘时)。在一些实施方案中,当第二用户界面对象被显示在三维环境中的第二位置处并且第一用户界面对象被显示在第三位置处时,抓取器对象从第四位置移动到第五位置(例如,从第一用户界面对象的底部边缘区域移动到第二用户界面对象的底部边缘区域),但抓取器对象的观看深度或z位置保持不变。在一些实施方案中,抓取器对象和第二用户界面对象之间的空间关系与在显示第二用户界面对象之前抓取器对象和第一用户界面项目之间的空间关系相同或基本上相同。在一些实施方案中,只有当第二用户界面对象的底部边缘低于第一用户界面对象的底部边缘时,抓取器条才会移动。在一些实施方案中,除用户界面对象的底部边缘之外的不同边缘(例如,顶部边缘、左边缘或另一边缘)用于确定如何定位抓取器条。在一些实施方案中,在抓取器对象被显示在第五位置处(例如,在第二用户界面对象的底部区域处)时,拖动抓取器对象的用户输入使得第一用户界面对象和第二用户界面对象与抓取器对象同时移动,使得在抓取器对象的用户控制的移动期间保持第一用户界面对象与第二用户界面对象之间的空间关系以及抓取器对象与第二用户界面对象之间的空间关系。例如,当用户将抓取器对象从用户的当前视场的左侧拖动到右侧时,第一用户界面对象和第二用户界面对象都从用户的视场的左侧移动到右侧。在一些实施方案中,抓取器对象根据用户输入来从具有较小观看深度的位置移动到具有较大观看深度的位置,并且因此,第一用户界面对象和第二用户界面对象根据抓取器对象的移动来进一步远离用户的视点移动。在三维环境中的第四位置处显示抓取器对象,其中抓取器对象与第一用户界面对象具有第二空间关系,这向用户提供改进的视觉反馈(例如,可以移动第一用户界面对象的改进的视觉反馈,和/或关于如何移动第一用户界面对象的改进的视觉反馈)。
在一些实施方案中,在三维环境中的第五位置处显示抓取器对象包括:根据确定在第二位置处显示的第二用户界面对象的第一边缘(例如,底部边缘、顶部边缘或另一边缘)位于先前由在第一位置处显示的第一用户界面对象占据的区域之外,将抓取器对象移动超过第二用户界面对象的第一边缘;并且根据确定在第二位置处显示的第二用户界面对象的第一边缘(例如,底部边缘、顶部边缘或另一边缘)位于先前由在第一位置处显示的第一用户界面对象占据的区域内,将抓取器对象保持在其在三维环境中的当前位置处。例如,在一些实施方案中,在图7Q至图7R所示的示例中,第二用户界面对象720在竖直方向上大于第一用户界面对象708,并且计算机系统将抓取器对象714(在图7Q中示出,并且在图7R中被重新标记为抓取器对象724)向下移动到第二用户界面对象720的底部边缘下方的位置,该位置在位置上低于第一用户界面对象的底部边缘。根据一些实施方案,如果在另一示例中第二用户界面对象在竖直方向上小于第一用户界面对象,则第二用户界面对象的底部边缘的位置将高于第一用户界面对象的底部边缘,并且抓取器对象714将不在竖直方向上移动。根据确定第二用户界面对象的第一边缘位于先前由第一用户界面对象占据的区域之外而将抓取器对象移动超过第二用户界面对象的第一边缘,并且根据确定第二用户界面对象的第一边缘位于先前由第一用户界面对象占据的区域内而将抓取器对象保持在其当前位置,使得抓取器对象能够被显示在适当的位置处而不需要显示附加控件(例如,用于调整抓取器对象的位置的附加控件)。
[捏合以在模态用户界面中选择]在一些实施方案中,第二用户界面对象包括与计算机系统的第一操作相对应的至少第一可选对象。在第二位置处显示第二用户界面对象时,计算机系统检测指向第二用户界面对象内的第一可选对象的第四输入。响应于检测到指向第一可选对象的第四输入:根据确定第四输入满足用于选择第一可选对象的预设标准(例如,第四输入是捏合手势结合对第一可选对象的注视,或在焦点选择器在第一可选对象上时的轻击手势),计算机系统执行第一操作。在一些实施方案中,响应于检测到不满足用于选择第一可选对象的预设标准的输入,计算机系统放弃执行第一操作。例如,在一些实施方案中,如图7V所示,第二用户界面对象720包括对应于相应操作的一个或多个可选用户界面元素(例如,用户界面元素720-1、720-2和/或720-3)。例如,这些操作包括切换控制值、打开新窗口、启动AR或VR体验、改变当前显示的体验的沉浸水平、接受通信请求、发送通信请求、激活或去激活控件、执行由菜单选项指定的操作、执行与第一用户界面对象和/或第二用户界面对象相对应的应用程序内的操作。在一些实施方案中,根据一些实施方案,计算机系统检测指向用户界面元素722-2的注视输入715-2结合第一手势类型(例如,捏合手势、轻击手势和/或另一手势类型)的手势输入,并且响应于检测到这些输入,计算机系统执行对应于用户界面元素722-2的第一操作。在一些实施方案中,根据一些实施方案,计算机系统检测指向第二用户界面对象中的另一用户界面元素的注视输入结合检测第一手势类型的手势输入,并且计算机系统放弃执行第一操作并任选地执行对应于所选用户界面元素的另一操作。响应于检测到作为满足至少第一输入阈值的输入的第一用户输入而在三维环境中的第二位置处显示包括第一可选对象的第二用户界面对象,并且根据确定第四输入满足用于选择第一可选对象的预设标准并响应于检测到指向第一可选对象的第四输入而执行第一操作,这使得能够在不需要永久地显示附加控件(例如,第一可选对象)的情况下执行第一操作。
在一些实施方案中,第二用户界面对象包括与具有一个或多个控制值的第一控制功能相对应的至少第一控件。在第二位置处显示第二用户界面对象时,计算机系统检测指向第二用户界面对象内的第一控件的第五输入。响应于检测到指向第一控件的第五输入:根据确定第五输入满足用于调整该控件的预设标准(例如,第五输入是捏合并拖动手势结合对第一可选对象的注视,或在焦点选择器在第一可选对象上时的扭转手势),计算机系统根据第五输入来调整控制功能的当前控制值。例如,在一些实施方案中,如图7V所示,第二用户界面对象720包括对应于相应控制功能的一个或多个可选用户界面元素(例如,用户界面元素720-1、720-2和/或720-3)。例如,控制功能包括调整音量水平、亮度水平、颜色饱和度水平、沉浸水平、媒体回放进度控制和/或具有值范围内的可调值的其他可调控制。在一些实施方案中,控制值在控制值范围内是连续的。在一些实施方案中,控制值是控制值范围内的离散值。在一些实施方案中,根据一些实施方案,计算机系统检测指向用户界面元素722-2的注视输入715-2结合第一手势类型(例如,捏合并拖动手势、捏合并扭转手势和/或另一手势类型)的手势输入,并且响应于检测到这些输入,计算机系统根据手势输入来调整与用户界面元素722-2相对应的第一控制功能的控制值。在一些实施方案中,根据一些实施方案,手势输入是定向的,并且计算机系统基于手势输入的方向来在不同方向上调整控制值(例如,增加、减小和/或在多个方向中的相应方向上)。响应于检测到作为满足至少第一输入阈值的输入的第一用户输入而在三维环境中的第二位置处显示包括第一控制对象的第二用户界面对象,并且根据满足预设标准的第五输入来调整控制功能的当前控制值,这使得能够调整控制功能的控制值而不需要永久地显示附加控件(例如,第一控件)。
在一些实施方案中,与在第一位置处的第一用户界面对象相比,第二用户界面对象在第二位置处的至少一个维度上(例如,在x方向和/或y方向上,和/或占据更大的面积)具有更大的空间范围。例如,如图7R所示,第二用户界面对象720在竖直维度上大于第一用户界面对象。在一些实施方案中,第二用户界面对象在水平维度上大于第一用户界面对象。在至少一个维度上以比第一用户界面对象更大的空间范围显示第二用户界面对象,向用户提供了改进的视觉反馈(例如,通过将用户的注意力吸引到第二用户界面对象)。
应当理解,对图11中的操作进行描述的具体次序仅仅是示例,并非旨在表明所述次序是可以执行这些操作的唯一次序。本领域的普通技术人员会想到多种方式来对本文所述的操作进行重新排序。另外,应当注意,本文相对于本文所述的其他方法(例如,方法800、900、1000和1200)所述的其他过程的细节同样以类似的方式适用于上文相对于图11所述的方法1100。例如,上文参考方法1100所述的手势、注视输入、物理对象、用户界面对象、控件、移动、标准、三维环境、显示生成部件、表面、物理对象的表示、虚拟对象和/或动画任选地具有本文参考本文所述的其他方法(例如,方法800、900、1000和1200)所述的手势、注视输入、物理对象、用户界面对象、控件、移动、标准、三维环境、显示生成部件、表面、物理对象的表示、虚拟对象和/或动画的特征中的一个或多个特征。为了简明起见,此处不再重复这些细节。
图12是根据一些实施方案的在根据用户的视点的移动更新三维环境的视图的同时与三维环境中的对象相关联地显示虚拟对象的方法1200的流程图。在一些实施方案中,当用户在三维环境中围绕对象移动时,虚拟对象被锚定到弯曲表面并且被重定向以面向用户的视点。响应于检测到对应于第一对象的第一事件,在三维环境中的第一位置处以第一取向显示作为虚拟用户界面对象的第二对象,该第二对象面向与三维环境中的第一视图相对应的第一视点;并且响应于检测到视点从第一视点到第二视点的改变,将第二对象从第一位置移动到第二位置并且将第二对象的取向从第一取向更新到面向第二视点的第二取向(与第二对象在三维环境中围绕第一对象的至少一部分的弯曲表面上的放置一致),这自动地以适当的位置和取向显示第二对象而无需来自用户的进一步的用户输入(例如,用于每当存在视点的改变时移动第二对象和/或调整第二对象的取向的进一步的用户输入)。
在一些实施方案中,方法1200在计算机系统(例如,图1中的计算机系统101)处执行,该计算机系统包括第一显示生成部件(例如,图1、图3和图4中的显示生成部件120)(例如,平视显示器、显示器、触摸屏和/或投影仪)和任选地一个或多个输入设备(例如,向下指向用户的手部的相机(例如,相机、颜色传感器、红外传感器和/或其他深度感测相机)或从用户头部向前指向的相机)。在一些实施方案中,方法1200通过存储在非暂态计算机可读存储介质中并由计算机系统的一个或多个处理器诸如计算机系统101的一个或多个处理器202(例如,图1A中的控制单元110)执行的指令来管理。方法1200中的一些操作任选地被组合,并且/或者一些操作的次序任选地被改变。
在一些实施方案中,方法1200在计算机系统处执行,该计算机系统包括显示生成部件(例如,平视显示器、头戴式显示器(HMD)、显示器、触摸屏、投影仪、平板电脑和/或智能电话)和一个或多个输入设备(例如,相机、控制器、触敏表面、操纵杆和/或按钮)或与该显示生成部件和该一个或多个输入设备通信。在包括第一对象(例如,物理环境中的第一物理对象的表示、第一虚拟对象、应用程序图标、窗口、菜单或用户的化身)的三维环境的第一视图经由显示生成部件可见时,计算机系统检测(1202)对应于第一对象的第一事件(例如,该事件包括接收到通知,或检测到用户交互事件,诸如对应于第一对象的空中手势)。例如,在一些实施方案中,如图7X所示,计算机系统检测手势输入730结合指向第一对象732的注视输入721,同时三维环境7000’的第一视图经由显示生成部件7100可见。响应于检测到第一事件,计算机系统显示(1204)第二对象,其中第二对象是经由显示生成部件在三维环境中的第一位置处以第一取向显示的虚拟用户界面对象(例如,第二对象是窗口、菜单、控制面板、通知或警示,而不是物理环境或AR环境中的物理对象的表示)。在第一位置处以第一取向显示的第二对象面向与三维环境的第一视图相对应的第一视点(例如,面向第一视点,以包围第一对象的平滑表面与连接第一视点和第一对象的射线之间的交点为中心)。例如,如图7X至图7Y所示,响应于检测到第一事件(例如,图7X中的手势输入730结合注视输入721),计算机系统在第一位置处以第一取向显示第二对象740,该第一取向面向与三维环境的第一视图相对应的第一视点(如图7Y所示)。第一位置在圆柱形表面736上(例如,由图7Y中的虚线表示的表面,其任选地实际上未由显示生成部件渲染)。在第一位置处以第一取向显示第二对象时,计算机系统检测(1206)将当前视点从第一视点改变到第二视点的第一请求(例如,佩戴HMD的用户的头部移动、包括在显示生成部件中或与显示生成部件通信的一个或多个相机的移动)。例如,如图7AB至图7AC所示,在第一位置处以第一取向显示第二对象740时,计算机系统检测到用户7002和/或显示生成部件7100在与第一对象732在三维环境中的位置相对应的位置周围移动,并且计算机系统将三维环境的视图从第一视图更新到与用户的第二视点相对应的第二视图(如图7AC所示)。响应于检测到视点从第一视点到第二视点的改变,其中第二视点相对于第一视点旋转(1208):计算机系统在与第二视点相对应的三维环境的第二视图中将第二对象从第一位置移动(1210)到第二位置;并且计算机系统将第二对象的取向从第一取向更新到第二取向,其中在第二位置处以第二取向显示的第二对象面向第二视点,并且其中第一位置和取向以及第二位置和取向与第二对象在三维环境中围绕第一对象的至少一部分的弯曲表面上的放置一致。例如,在一些实施方案中,如图7AB至图7AC所示,响应于检测到用户的视点的移动(例如,由插图734中的用户的眼睛592的位置的改变所指示),计算机系统改变第二对象740围绕弯曲表面736的位置(例如,第二对象740被移动得更靠近弯曲表面736上的固定点738),并且改变第二对象740的取向(例如,围绕第二对象在弯曲表面736上的新位置旋转),使得第二对象继续面向用户的视点(例如,如图7AC中的用户的眼睛592的位置所指示)。在一些实施方案中,第二视点相对于第一对象的轴线旋转,该轴线诸如为与第二对象面向第一视点的表面平行的第一对象的轴线、与第二对象面向第二视点的表面平行的第一对象的轴线、不与第二对象面向第一视点的表面垂直的第一对象的轴线或不与第二对象面向第二视点的表面垂直的第一对象的轴线。在一些实施方案中,第一视点和第二视点具有相对于重力的相同取向。在一些实施方案中,第二对象的第一取向和第二对象的第二取向具有相对于重力的相同取向。在一些实施方案中,响应于检测到视点从第一视点到第二视点的改变,其中第二视点相对于第一视点旋转:根据确定视点从第一视点到第二视点的改变是用户围绕第一对象移动的结果,计算机系统在与第二视点相对应的三维环境的第二视图中将第二对象从第一位置移动到第二位置,并且计算机系统将第二对象的取向从第一取向更新到第二取向,其中在第二位置处以第二取向显示的第二对象面向第二视点,并且其中第一位置和取向以及第二位置和取向与第二对象在围绕三维环境中的第一对象的至少一部分的弯曲表面上的放置一致;并且根据确定视点从第一视点到第二视点的改变不是用户围绕第一对象移动的结果(例如,而是用户倾斜他/她的头部或者朝向或远离第一对象移动的结果),计算机系统放弃在与第二视点相对应的三维环境的第二视图中将第二对象从第一位置移动到第二位置,并且计算机系统放弃将第二对象的取向从第一取向更新到第二取向。根据一些实施方案,第二用户界面对象的移动和重定向在图7AB至图7AC所示的示例中示出。如图7AB至图7AC所示,在第一位置处以第一取向显示第二对象740时,计算机系统检测到用户7002和显示生成部件7100在与第一对象732在三维环境中的位置相对应的位置周围移动,并且计算机系统将三维环境的视图从第一视图更新到与用户的第二视点相对应的第二视图(如图7AC所示)。除了将三维环境的视图从第一视图更新到第二视图之外,计算机系统还将第二对象740从圆柱形表面736上的第一位置移动到圆柱形表面736上的第二位置,并且将第二对象740的取向从面向用户的第一视点的第一取向(在图7AB中示出)改变到面向用户的第二视点的第二取向(在图7AC中示出)。
在一些实施方案中,在与第二视点相对应的三维环境的第二视图中在第二位置处以第二取向显示第二对象时,计算机系统检测将当前视点从第二视点改变到第三视点的第二请求(例如,佩戴HMD的用户的附加头部移动、包括在显示生成部件中或与显示生成部件通信的一个或多个相机的附加移动)。例如,如图7AC和图7AE所示,在第二位置处以第二取向显示第二对象740时,计算机系统检测到用户7002和/或显示生成部件7100在与第一对象732在三维环境中的位置相对应的位置周围移动,并且计算机系统将三维环境的视图从第二视图更新到与用户的第三视点相对应的第三视图(如图7AE所示)。响应于检测到当前视点从第二视点到第三视点的改变,其中第三视点相对于第二视点旋转:计算机系统将第二对象从第二位置移动到与第三视点相对应的三维环境的第三视图中的第三位置,并且计算机系统将第二对象的取向从第二取向更新到第三取向,其中在第三位置处以第三取向显示的第二对象面向第三视点,并且其中第一位置和取向、第二位置和取向以及第三位置和取向与第二对象在三维环境中围绕第一对象的至少一部分的相同弯曲表面上的放置一致。例如,在一些实施方案中,如图7AC接着图7AE所示,响应于检测到用户的视点的移动(例如,由插图734中的用户的眼睛592的位置的改变所指示),计算机系统改变第二对象740围绕弯曲表面736的位置(例如,第二对象740被移动得更靠近弯曲表面736上的固定点738),并且改变第二对象740的取向(例如,围绕第二对象在弯曲表面736上的新位置旋转),使得第二对象继续面向用户的视点(例如,如图7AE中的用户的眼睛592的位置所指示)。在一些实施方案中,第三视点相对于第一对象的轴线旋转,该轴线诸如为与第二对象面向第一视点的表面平行的第一对象的轴线、与第二对象面向第二视点的表面平行的第一对象的轴线、与第二对象面向第三视点的表面平行的第一对象的轴线、不与第二对象面向第一视点的表面垂直的第一对象的轴线、不与第二对象面向第二视点的表面垂直的第一对象的轴线或不与第二对象面向第三视点的表面垂直的第一对象的轴线。在一些实施方案中,第一视点、第二视点和/或第三视点具有相对于重力的相同取向。在一些实施方案中,第二对象的第一取向和第二对象的第二取向具有相对于重力的相同或基本上相同的取向。在一些实施方案中,弯曲表面是圆柱体的侧表面。在一些实施方案中,弯曲表面是球体的表面。在一些实施方案中,弯曲表面是椭圆体的表面。在一些实施方案中,弯曲表面与第一对象的表面上的起伏不相符,并且是简单的凸形表面。根据一些实施方案,第二用户界面对象的移动和重定向在图7AB至图7AC、接着图7AE所示的示例中示出。如图7AB至图7AC、接着图7AE所示,在第二位置处以第二取向显示第二对象740时,计算机系统检测到用户7002和显示生成部件7100在与第一对象732在三维环境中的新位置相对应的位置周围移动,并且计算机系统将三维环境的视图从第二视图更新到与用户的第三视点相对应的第三视图(如图7AE所示)。除了将三维环境的视图从第二视图更新到第三视图之外,计算机系统还将第二对象740从圆柱形表面736上的第二位置移动到圆柱形表面736上的第三位置,并且将第二对象740的取向从面向用户的第二视点的第二取向(在图7AC中示出)改变到面向用户的第三视点的第三取向(在图7AE中示出)。将第二对象从第二位置移动到与第三视点相对应的三维环境的第三视图中的第三位置,并且将第二对象的取向从第二取向更新到面向第三视点的第三取向(与第二对象在围绕第一对象的至少一部分的相同弯曲表面上的放置一致),这自动地使第二对象适当地定向在三维环境的第三视图中,而不需要附加用户输入(例如,用于在视点改变之后手动调整第二对象的取向的附加用户输入)。
在一些实施方案中,第二对象至少包括与计算机系统的第一操作相对应的第一部分和与计算机系统的第二操作相对应的第二部分,第一部分和第二部分分开地位于第二对象内,并且第一操作不同于第二操作。例如,第二对象740包括内部交互式用户界面元素742-1和742-2(图7Y)。在一些实施方案中,在显示第二对象(例如,在第一位置处以第一取向显示第二对象,在第二位置处以第二取向显示第二对象,或者在第三位置处以第三取向显示第二对象)时,计算机系统检测指向第二对象的用户输入。响应于检测到指向第二对象的用户输入:根据确定用户输入指向第二对象的第一部分并确定用户输入满足激活标准(例如,用户输入是结合指向第二对象的第一部分的注视输入检测到的长捏合空中手势,或者用户输入是结合在第二对象的第一部分处的焦点选择器检测到的轻击手势),计算机系统执行第一操作(例如,选择位于第二对象的第一部分处的第一菜单选项,或者启动与第一对象相对应的应用程序的第一用户界面),并且根据确定用户输入指向第二对象的第二部分并确定用户输入满足激活标准(例如,用户输入是结合指向第二对象的第二部分的注视输入检测到的长捏合空中手势,或者用户输入是结合在第二对象的第二部分处的焦点选择器检测到的轻击手势),计算机系统执行第二操作(例如,选择位于第二对象的第二部分处的第二菜单选项,或者启动与第一对象相对应的应用程序的第二用户界面)。例如,在一些实施方案中,如图7Y所示,如果在第二对象740的位置处检测到用户输入(例如,结合满足激活标准的空中手势检测到的注视输入,或在第二对象740的位置处检测到的直接操纵手势),则计算机系统基于用户输入的位置来选择性地激活用户界面元素742-1或用户界面元素742-2并执行它们的对应操作。如果用户输入指向包含用户界面元素742-1的第二对象740的部分,则计算机系统执行对应于用户界面元素742-1的操作而不执行对应于用户界面元素742-2的操作;并且如果用户输入指向包含用户界面元素742-2的第二对象740的部分,则计算机系统执行对应于用户界面元素742-2的操作而不执行对应于用户界面元素742-1的操作。响应于检测到对应于第一对象的第一事件,在三维环境中第一位置处以面向与三维环境中的第一视图相对应的第一视点的第一取向显示第二对象,其中第二对象至少包括与计算机系统的第一操作相对应的第一部分和与计算机系统的第二操作相对应的第二部分,这提供了附加控制选项(例如,对应于第一操作和第二操作)而不需要永久地显示附加控件(例如,第二对象的第一部分和第二部分)。
在一些实施方案中,在三维环境中围绕第一对象的至少一部分的弯曲表面是连续且凸形的表面(例如,球面、椭球面或圆柱面)。例如,在一些实施方案中,如图7Y所示,弯曲表面736是围绕第一对象732的连续且凸形的表面。在一些实施方案中,基于第一对象的形状和大小来选择弯曲表面。在一些实施方案中,弯曲表面对于不同大小和形状的对象具有相同的基本形状。在一些实施方案中,弯曲表面不是第一对象的表面,并且不是与第一对象的表面紧密相符的表面。响应于检测到视点从第一视点到第二视点的改变,将第二对象从第一位置移动到第二位置并且将第二对象的取向从第一取向更新到面向第二视点的第二取向(与第二对象在弯曲表面上的放置一致,该弯曲表面是连续且凸形的表面,并在三维环境中围绕第一对象的至少该部分),这自动地以适当的位置和取向显示第二对象而无需来自用户的进一步的用户输入(例如,用于每当存在视点的改变时移动第二对象和/或调整第二对象的取向的进一步的用户输入)。
在一些实施方案中,检测将当前视点从第一视点改变到第二视点的第一请求包括检测处于经由显示生成部件观看三维环境的位置的用户的第一移动(例如,佩戴用作显示生成部件的HMD的用户,或握住显示生成部件的用户的移动),其中用户的第一移动使得当前视点围绕第一对象旋转至少第一阈值旋转量。例如,在一些实施方案中,在图7AB至图7AC中,接着在图7AE中,检测用户的当前视点的改变包括检测用户7002在物理环境中相对于与第一对象732相对应的位置的移动。在一些实施方案中,将第二对象的取向从第一取向更新到第二取向包括使第二对象面向用户(例如,当用户在与第一对象的位置相对应的位置周围走动时沿着表面平移第二对象并且旋转第二对象,使得第二用户在用户在物理环境中移动之后继续面向三维环境中的用户)。例如,在一些实施方案中,在图7AB至图7AC中,接着在图7AC中,更新第二对象740的取向包括当第二对象740在弯曲表面736上移动时,使第二对象740面向用户7002的位置(由用户的眼睛592的位置表示)。将第二对象的取向从第一取向更新到使第二对象面向用户的第二取向,这自动地使第二对象适当地定向,而不需要附加用户输入(例如,用于在视点改变之后手动调整第二对象的取向的附加用户输入)。
在一些实施方案中,将第二对象的取向从第一取向更新到第二取向包括当第二对象移动通过第一位置与第二位置之间的多个中间位置时,使第二对象旋转通过第一取向与第二取向之间的多个中间取向,其中第二对象的多个中间取向根据弯曲表面在多个中间位置处的曲率来对应于第二对象的多个中间位置。例如,在一些实施方案中,在图7AB至图7AC中,当用户的视点连续且平滑地移动通过三维环境时,计算机系统根据视点的移动来连续地更新三维环境的当前视图,并且计算机系统连续地移动第二对象740在弯曲表面736上的位置并连续地更新第二对象740的取向,使得第二对象740在视点和第二对象的移动期间连续地面向用户的当前视点。当第二对象移动通过第一位置与第二位置之间的多个中间位置时,将第二对象旋转通过第一取向与第二取向之间的多个中间取向,其中多个中间取向根据弯曲表面在多个中间位置处的曲率来对应于多个中间位置,这在适当位置处以适当取向自动地显示第二对象而无需进一步的用户输入(例如,用于在第二对象从第一位置移动到第二位置时移动第二对象和/或调整第二对象的取向的进一步的用户输入)。
在一些实施方案中,在第一位置处以第一取向显示第二对象时,计算机系统检测将当前视点从第一视点改变到第四视点的第三请求(例如,佩戴HMD的用户的头部移动、包括在显示生成部件中或与显示生成部件通信的一个或多个相机的移动)。响应于检测到当前视点从第一视点到第四视点的改变:计算机系统在与第四视点相对应的三维环境的第四视图中将第二对象以第一取向保持在第一位置处。例如,第四视点比第一视点更靠近第一对象;第四视点比第一视点更远离第一对象。在一些实施方案中,第一视点和第二视点具有相对于重力的相同取向。在视点的改变不涉及围绕第一对象的至少一部分的旋转和/或仅仅涉及视点从靠近第一对象或第二对象到远离第一对象或第二对象的移动或使视点相对于视场的中心重定向的情况下,第二对象在三维环境中的位置和取向保持不变。例如,在一些实施方案中,如图7AA至图7AB所示,当用户的视点(例如,由插图734中用户的眼睛592相对于物理环境的位置所指示)朝向或远离第一对象732和/或第二对象740移动而不围绕第一对象740和/或第二对象732移动时,第二对象740在位置和取向上保持基本上固定。在一些实施方案中,第一对象732被世界锁定,弯曲表面736也是如此,并且第二对象740的移动受到弯曲表面736的约束,而不管用户的视点的移动。响应于检测到当前视点从第一视点到第四视点的改变,在与第四视点相对应的三维环境的第四视图中将第二对象以第一取向保持在第一位置处,这减少了在适当位置处以适当取向显示第二对象所需的输入数量(例如,每当当前视点改变时,用户不需要执行附加输入来将第二对象移动回到第一位置和/或改变第二对象的取向)。
在一些实施方案中,在三维环境的第一视图中在第一位置处以第一取向显示第二对象时,计算机系统检测将第一对象从第一对象的原始位置移动到第一对象在三维环境中的新位置的请求。响应于检测到将第一对象从第一对象的原始位置移动到第一对象的新位置的请求:计算机系统根据第一对象在三维环境中的新位置来将第二对象从第一位置移动到第五位置。此外,计算机系统还将第二对象的当前取向从第一取向更新到第五取向,其中在第五位置处以第五取向显示的第二对象面向第一视点,并且其中第一位置和取向、第二位置和取向以及第五位置和取向与第二对象在三维环境中围绕第一对象的至少一部分的相同弯曲表面上的放置一致。例如,如图7Z至图7AA所示,计算机系统检测与将第一对象732移动到新位置的请求相对应的用户输入(例如,手势输入748-1结合指向第一对象732的注视输入721)。响应于检测到用户的输入,计算机系统将第二对象740移动到弯曲表面736上的新位置(例如,在顺时针方向上更远离固定点738)并且使第二对象740重定向以继续面向用户的视点(例如,如由用户的眼睛592的位置所指示)。在该示例中,第二对象740的移动由弯曲表面736的移动引起,该移动又由第一对象732相对于用户的视点和/或物理环境的移动引起。响应于检测到将第一对象从第一对象的原始位置移动到第一对象的新位置的请求,根据第一对象在三维环境中的新位置来将第二对象从第一位置移动到第五位置,并且将第二对象的当前取向从第一取向更新到第五取向(与第二对象在围绕第一对象的至少一部分的相同弯曲表面上的放置一致),这自动地在适当位置处以适当取向显示第二对象而无需进一步的用户输入(例如,用于每当第一对象被移动到新位置时将第二对象移动到新位置和/或更新第二对象的取向的进一步的用户输入)。
在一些实施方案中,当在三维环境的第一视图中以第一位置和取向显示第二对象时,第二对象和第一对象隔开第一距离,其中当在三维环境的第二视图中以第二位置和取向显示第二对象时,第二对象和第一对象隔开第二距离,并且其中在第一距离和第二距离之间存在小于阈值量的差值。例如,在一些实施方案中,当用户的视点移动时(即使对象的取向和/或位置移动不可忽略的量),第二对象与它所对应的第一对象保持大致相同的距离(例如,具有小于阈值量的距离差)。例如,在一些实施方案中,在图7Z至图7AE中,弯曲表面736上的点与第一对象732的位置(例如,第一对象732的中心的位置、第一对象742的主要部分的位置和/或与弯曲表面740上放置第二对象的点最接近的第一对象732的表面上的点的位置)之间的距离对于弯曲表面736上由于视点的移动而可能定位第二对象的不同点保持基本上恒定。在以第一位置和取向显示第二对象时显示隔开第一距离的第二对象和第一对象,并且在以第二位置和取向显示第二对象时显示隔开第二距离的对象和第一对象,其中在第一距离和第二距离之间存在小于阈值量的差值,这自动地显示隔开大致相同距离的第二对象和第一对象而无需进一步的用户输入(例如,用于调整第二对象和第一对象之间的位置和/或距离的进一步的用户输入),并且允许用户容易地定位第二对象(例如,因为它被一致地显示在距第一对象大致相同的距离处)。
在一些实施方案中,在三维环境的相应视图中显示第一对象和第二对象时,计算机系统检测用户注意力从与第一对象和第二对象相对应的三维环境的第一区域到不与第一对象和第二对象相对应的三维环境的第二区域的移动(例如,用户的注视远离第二对象移动到三维环境中的另一对象,和/或用户的面部转向侧面)。例如,在一些实施方案中,如图7AC至图7AD所示,计算机系统检测到用户的注意力已经从包括第一对象732的三维环境的区域移动到包括物理对象732的表示7104’(并且不包括第一对象7014)的三维环境的区域(例如,如由用户的注视的位置的改变(例如,从注视721到注视731)所指示)。响应于检测到用户注意力从三维环境的第一区域到三维环境的第二区域的移动,计算机系统改变第二对象的一个或多个显示特性以减小第二对象在三维环境的相应视图中的视觉显著性(例如,使第二对象淡出、使第二对象变暗和/或使第二对象更加半透明)。例如,在一些实施方案中,如图7AC至图7AD所示,响应于检测到用户的注意力从第一对象732的位置到物理对象7014的表示7014’的位置的移动,计算机系统停止显示第二对象738或以其他方式减小第二对象的视觉显著性(例如,使第二对象更加半透明、调暗和/或变暗)。响应于检测到用户注意力从三维环境的第一区域到不与第一对象和第二对象相对应的三维环境的第二区域的移动,改变第二对象的一个或多个显示特性以减小第二对象的视觉显著性,这在用户的注意力不指向第一对象和/或第二对象时自动减小第二对象的视觉显著性而无需进一步的用户输入(例如,用于在用户的注意力不指向第一对象和/或第二对象时减小第二对象的视觉显著性的进一步的用户输入)。
在一些实施方案中,在第一位置处以第一取向显示第二对象时,计算机系统检测将第一对象从第一对象的原始取向旋转到第一对象在三维环境中的新取向的请求。响应于检测到将第一对象从第一对象的原始取向旋转到第一对象的新取向的请求:计算机系统更新第一对象和第二对象之间的空间关系以将第二对象以第一取向保持在第一位置处。例如,如图7Y至图7Z所示,计算机系统检测到已经根据用户的输入(例如,结合注视输入721检测到的手势746)相对于三维环境改变第一对象732的取向(例如,同时视点相对于三维环境保持基本上静止),并且计算机系统使第二对象740重定向,使得第二对象相对于视点的取向和位置保持不变(例如,第二对象740以第一取向保持在第一位置处)。响应于检测到将第一对象从第一对象的原始取向旋转到第一对象的新取向的请求,更新第一对象与第二对象之间的空间关系以将第二对象以第一取向保持在第一位置处,这自动地在适当位置处以适当取向显示第二对象而无需附加用户输入(例如,用于调整第二对象的位置和/或取向的附加用户输入)。
在一些实施方案中,响应于检测到第一事件,并且结合显示第二对象:根据确定第二对象包括二维内容,计算机系统使第一对象远离当前视点移动(例如,如相对于7P至7W所描述,其中窗口708用作第一对象732的示例并且用户界面对象720用作显示二维内容的第二对象740的示例,并且在显示用户界面对象720时使窗口708远离视点移动);并且根据确定第二对象包括三维内容,计算机系统保持第一对象与当前视点之间的空间关系(例如,如相对于图7X至图7Y所描述,其中第二对象732用作包括三维内容的对象的示例,第一对象732与视点之间的空间关系不会由于第二对象740的显示而改变)。根据确定第二对象包括二维内容来使第一对象远离当前视点移动,并且根据确定第二对象包括三维内容来保持第一对象与当前视点之间的空间关系,这自动地在适当位置处显示第一对象和第二对象而无需附加用户输入(例如,无需用户手动地确定第二对象包括二维内容还是三维内容,然后在需要时手动地调整第一对象的位置)。
在一些实施方案中,根据确定第一对象是与应用程序相对应的对象(例如,应用程序图标、应用程序的窗口或应用程序的用户界面),响应于检测到第一事件,第二对象以与第一对象的第一空间关系被显示在三维环境中(例如,与第一对象的底部对准并且被显示在第一对象的前面;与第一对象的中心对准并且被显示在第一对象上方)。在一些实施方案中,图7X中的第一对象732用作第一应用程序的应用程序图标、应用程序窗口或应用程序用户界面的示例,并且图7Y中的第二对象740用作第一应用程序的模态用户界面或模态窗口的示例。在一些实施方案中,第二对象740以与第一对象732的第一空间关系来显示(例如,如相对于用户界面对象720和用户界面对象708所描述,和/或如相对于第二对象740和第一对象732所描述)。在一些实施方案中,第二对象被显示在根据第一对象的当前位置来选择的位置处,并且具有基于第一对象的取向及视点相对于第一对象的当前位置的位置两者来选择的取向。在一些实施方案中,当第一对象被移动(例如,响应于用户输入)到三维环境中的不同位置和/或在三维环境中旋转时,第二对象的位置和取向被自动更新。在一些实施方案中,当视点在三维环境中相对于第一对象移动时,第二对象的位置和取向被自动更新。第一对象和第二对象之间的第一空间关系确定第二对象相对于第一对象的基线位置和取向,同时在包围第一对象的至少一部分的弯曲表面的约束下从基线位置和取向进一步调整第二对象的位置和取向以面向视点。在一些实施方案中,第二对象包括与第一对象相对应的应用程序的菜单。在一些实施方案中,第二对象包括与第一对象相对应的应用程序的弹出窗口。响应于检测到第一事件,并且根据确定第一对象是对应于应用程序的对象,以与第一对象的第一空间关系在三维环境中显示第二对象,这自动地以与第一对象的适当的第一空间关系显示第二对象而无需进一步的用户输入(例如,无需用户首先识别第一对象对应于应用程序,然后相应地调整第二对象与第一对象的空间关系)。
在一些实施方案中,根据确定第一对象是与计算机系统的系统级功能相对应的对象(例如,系统警示、操作系统用户界面或通知,而不是应用程序图标、应用程序的窗口或应用程序的用户界面),响应于检测到第一事件,第二对象以与当前视点的第一空间关系被显示在三维环境中(例如,被显示在视场的中间,和/或被显示在视场的左上象限中)。在一些实施方案中,第二对象被显示在根据当前视点的位置来选择的位置处。在一些实施方案中,当第一对象被移动(例如,响应于用户输入)到三维环境中的不同位置和/或在三维环境中旋转时,第二对象的位置和取向不被自动更新。在一些实施方案中,当视点在三维环境中相对于第一对象移动时,第二对象的位置和取向被自动更新。第二对象和当前视点之间的第一空间关系确定第二对象相对于视点的基线位置和取向,同时在包围第一对象的至少一部分的弯曲表面的约束下从基线位置和取向进一步调整第二对象的位置和取向以面向视点。例如,在一些实施方案中,如图7X至图7Y所示,根据确定第一对象732是对应于系统级功能的对象(例如,第一对象是智能家居设备、控制中枢和/或计算机系统的家庭位置),第二对象740以与视点的第一空间关系来显示(例如,如图7X和图7Y中用户的眼睛592的位置所指示)。在一些实施方案中,第二对象和当前视点之间的第一空间关系确定第二对象740相对于视点的基线位置和取向,同时在包围第一对象732的至少一部分的弯曲表面736的约束下从基线位置和取向进一步调整第二对象740的位置和取向以面向视点。在一些实施方案中,第二对象是包括用于网络连接、显示亮度和/或音量的控件的控制用户界面。响应于检测到第一事件并且根据确定第一对象是计算机系统的系统级功能,以与当前视点的第一空间关系在三维环境中显示第二对象,这自动地以适当的空间关系显示第二对象而无需附加用户输入(例如,无需用户首先识别第一对象对应于计算机系统的系统级功能,然后相应地调整第二对象与第一对象的空间关系)。
在一些实施方案中,根据确定第一对象在至少第一维度上小于第二对象(例如,在竖直方向上更短,和/或在竖直方向和水平方向两者上更小),响应于检测到第一事件,根据相对于第一对象的第一对准配置来在三维环境中显示第二对象(例如,以第一对象和第二对象的底部边缘彼此对准的方式显示,或以第一对象和第二对象的顶部边缘彼此对准的方式显示)。例如,在一些实施方案中,在图7X至图7Y中,根据确定第一对象732在至少竖直方向上小于第二对象740,根据相对于第一对象的第一对准配置来显示第二对象740(例如,在底部对准或在顶部对准)。响应于检测到第一事件并且根据确定第一对象在至少第一维度上小于第二对象,根据相对于第一对象的第一对准配置来在三维环境中显示第二对象,这自动地以相对于第一对象的适当对准配置显示第二对象而无需进一步的用户输入(例如,用于手动调整第二对象与第一对象的对准配置的进一步的用户输入)。
在一些实施方案中,根据确定第一对象在至少第一维度上大于第二对象(例如,在竖直方向上更长,或者在竖直方向和水平方向两者上更大),响应于检测到第一事件,根据相对于第一对象的第二对准配置来在三维环境中显示第二对象(例如,以第二对象与第一对象的中心对准的方式显示),第二对准配置不同于第一对准配置。例如,在一些实施方案中,在图7X至图7Y中,根据确定第一对象732在至少竖直方向上大于第二对象740,根据相对于第一对象的第二对准配置来显示第二对象740(例如,在竖直方向上的中心处对准)。响应于检测到第一事件并且根据确定第一对象在至少第一维度上大于第二对象,根据相对于第一对象的与第一对准配置不同的第二对准配置来在三维环境中显示第二对象,这自动地以相对于第一对象的适当对准配置显示第二对象而无需进一步的用户输入(例如,用于手动调整第二对象与第一对象的对准配置的进一步的用户输入)。
上文参考图8、图9、图10、图11和图12所述的操作任选地由图1至图6所描绘的部件来实现。在一些实施方案中,方法800、900、1000、1100和1200的各方面/操作可在这些方法之间互换、替换和/或添加。为了简明起见,此处不再重复这些细节。
应当理解,对图12中的操作进行描述的具体次序仅仅是示例,并非旨在表明所述次序是可以执行这些操作的唯一次序。本领域的普通技术人员会想到多种方式来对本文所述的操作进行重新排序。另外,应当注意,本文相对于本文所述的其他方法(例如,方法800、900、1000和1100)所述的其他过程的细节同样以类似的方式适用于上文相对于图12所述的方法1200。例如,上文参考方法1200所述的手势、注视输入、物理对象、用户界面对象、控件、移动、标准、三维环境、显示生成部件、表面、物理对象的表示、虚拟对象和/或动画任选地具有本文参考本文所述的其他方法(例如,方法800、900、1000和1100)所述的手势、注视输入、物理对象、用户界面对象、控件、移动、标准、三维环境、显示生成部件、表面、物理对象的表示、虚拟对象和/或动画的特征中的一个或多个特征。为了简明起见,此处不再重复这些细节。
上文参考图8、图9、图10、图11和图12所述的操作任选地由图1至图6所描绘的部件来实现。在一些实施方案中,方法800、900、1000、1100和1200的各方面/操作可在这些方法之间互换、替换和/或添加。为了简明起见,此处不再重复这些细节。
此外,在本文所述的其中一个或多个步骤取决于已满足一个或多个条件的方法中,应当理解,所述方法可在多次重复中重复,使得在重复的过程中,在方法的不同重复中已满足决定方法中的步骤的所有条件。例如,如果方法需要执行第一步骤(如果满足条件),以及执行第二步骤(如果不满足条件),则普通技术人员将会知道,重复所声明的步骤,直到满足条件和不满足条件两者(不分先后)。因此,可将被描述为具有取决于已满足一个或多个条件的一个或多个步骤的方法重写为重复直到已满足该方法中所述的每个条件的方法。然而,这不需要系统或计算机可读介质声明该系统或计算机可读介质包含用于基于对应的一个或多个条件的满足来执行视情况而定的操作的指令,并且因此能够确定是否已满足可能的情况,而无需明确地重复方法的步骤直到已满足决定方法中的步骤的所有条件。本领域的普通技术人员还将理解,类似于具有视情况而定的步骤的方法,系统或计算机可读存储介质可根据需要多次重复方法的步骤,以确保已执行所有视情况而定的步骤。
出于解释的目的,前面的描述是通过参考具体实施方案来描述的。然而,上面的例示性论述并非旨在是穷尽的或将本发明限制为所公开的精确形式。根据以上教导内容,很多修改形式和变型形式都是可能的。选择和描述实施方案是为了最佳地阐明本发明的原理及其实际应用,以便由此使得本领域的其他技术人员能够最佳地使用具有适合于所构想的特定用途的各种修改的本发明以及各种所描述的实施方案。
出于解释的目的,前面的描述是通过参考具体实施方案来描述的。然而,上面的例示性论述并非旨在是穷尽的或将本发明限制为所公开的精确形式。根据以上教导内容,很多修改形式和变型形式都是可能的。选择和描述实施方案是为了最佳地阐明本发明的原理及其实际应用,以便由此使得本领域的其他技术人员能够最佳地使用具有适合于所构想的特定用途的各种修改的本发明以及各种所描述的实施方案。
如上所述,本发明技术的一个方面是收集和使用得自各种来源的数据以改进用于XR体验的用户输入。本公开预期,在一些实例中,这些所采集的数据可包括唯一地识别或可用于联系或定位特定人员的个人信息数据。此类个人信息数据可以包括人口统计数据、基于位置的数据、电话号码、电子邮件地址、推特ID、家庭地址、与用户的健康或健身水平有关的数据或记录(例如,生命体征测量、药物信息、锻炼信息)、出生日期或任何其他识别或个人信息。
本公开认识到在本发明技术中使用此类个人信息数据可用于使用户受益。例如,个人信息数据可用于改进用于XR体验的用户输入。此外,本公开还预期个人信息数据有益于用户的其他用途。例如,健康和健身数据可用于向用户的总体健康状况提供见解,或者可用作使用技术来追求健康目标的个人的积极反馈。
本公开设想负责采集、分析、公开、传输、存储或其他使用此类个人信息数据的实体将遵守既定的隐私政策和/或隐私实践。具体地,此类实体应当实行并坚持使用被公认为满足或超出对维护个人信息数据的隐私性和安全性的行业或政府要求的隐私政策和实践。此类政策应该能被用户方便地访问,并应随着数据的采集和/或使用变化而被更新。来自用户的个人信息应当被收集用于实体的合法且合理的用途,并且不在这些合法使用之外共享或出售。此外,应在收到用户知情同意后进行此类采集/共享。另外,此类实体应考虑采取任何必要步骤,保卫和保障对此类个人信息数据的访问,并确保有权访问个人信息数据的其他人遵守其隐私政策和流程。另外,这种实体可使其本身经受第三方评估以证明其遵守广泛接受的隐私政策和实践。另外,应当调整政策和实践,以便采集和/或访问的特定类型的个人信息数据,并适用于包括管辖范围的具体考虑的适用法律和标准。例如,在美国,对某些健康数据的收集或获取可能受联邦和/或州法律的管辖,诸如健康保险流通和责任法案(HIPAA);而其他国家的健康数据可能受到其他法规和政策的约束并应相应处理。因此,在每个国家应为不同的个人数据类型保持不同的隐私实践。
不管前述情况如何,本公开还预期用户选择性地阻止使用或访问个人信息数据的实施方案。即本公开预期可提供硬件元件和/或软件元件,以防止或阻止对此类个人信息数据的访问。例如,就XR体验而言,本发明技术可被配置为在注册服务期间或之后任何时候允许用户选择“选择加入”或“选择退出”参与对个人信息数据的收集。又如,用户可选择不提供用于服务定制的数据。再如,用户可选择限制保持数据的时间长度或者完全禁止定制服务的开发。除了提供“选择加入”和“选择退出”选项外,本公开还设想提供与访问或使用个人信息相关的通知。例如,可在下载应用时向用户通知其个人信息数据将被访问,然后就在个人信息数据被应用访问之前再次提醒用户。
此外,本公开的目的是应管理和处理个人信息数据以最小化无意或未经授权访问或使用的风险。一旦不再需要数据,通过限制数据收集和删除数据可最小化风险。此外,并且当适用时,包括在某些健康相关应用程序中,数据去标识可用于保护用户的隐私。可在适当时通过移除特定标识符(例如,出生日期等)、控制所存储数据的量或特异性(例如,在城市级别而不是在地址级别收集位置数据)、控制数据如何被存储(例如,在用户之间聚合数据)、和/或其他方法来促进去标识。
因此,虽然本公开广泛地覆盖了使用个人信息数据来实现一个或多个各种所公开的实施方案,但本公开还预期各种实施方案也可在无需访问此类个人信息数据的情况下被实现。即,本发明技术的各种实施方案不会由于缺少此类个人信息数据的全部或一部分而无法正常进行。例如,可通过基于非个人信息数据或绝对最低限度量的个人信息(诸如,与用户相关联的设备所请求的内容、对服务可用的其他非个人信息、或可公开获得的信息)推断偏好来生成XR体验。
Claims (125)
1.一种方法,包括:
在与第一显示生成部件和一个或多个第一输入设备通信的第一计算机系统处:
经由所述第一显示生成部件在三维环境的第一视图中显示第一对象;
在显示所述第一对象时,在相对于所述三维环境的第一位置处显示警示,所述警示在所述第一视图中至少部分地与所述第一对象重叠,其中所述第一位置与所述用户具有相应空间关系;
经由所述一个或多个输入设备检测所述用户的当前视点从第一视点到第二视点的移动;以及
在所述用户的所述当前视点是所述第二视点时:
根据确定所述警示是第一类型的警示,在与所述三维环境中的所述第一位置不同的所述三维环境中的第二位置处显示所述警示,其中当所述用户的所述当前视点是所述第二视点时,所述三维环境中的所述第二位置与所述用户具有所述相应空间关系;以及
根据确定所述警示是第二类型的警示,从所述第二视点显示所述三维环境,而不显示在所述用户的所述当前视点是所述第二视点时与所述用户具有所述相应空间关系的所述警示。
2.根据权利要求1所述的方法,还包括根据确定所述警示是所述第一类型的警示:
响应于检测到所述用户满足关于与所述第一对象不同的第二对象的注意力标准,在所述三维环境中的第三位置处显示所述警示,其中所述三维环境中的所述第三位置至少部分地与所述第二对象重叠。
3.根据权利要求1至2中任一项所述的方法,其中所述第一对象包括三维虚拟对象。
4.根据权利要求1至2中任一项所述的方法,其中所述第一对象包括与所述三维环境相对应的物理环境中的物理对象。
5.根据权利要求1至4中任一项所述的方法,还包括:
在从所述第一视点观看所述警示时以第一角度显示所述警示,以及
在从所述第二视点观看所述警示时以第二角度显示所述警示。
6.根据权利要求1至5中任一项所述的方法,还包括:
在所述用户的所述当前视点是所述第二视点时并且根据确定所述警示是所述第二类型的警示:
显示与所述第一对象相关联的第三对象;以及
在所述三维环境中的第四位置处显示所述警示,所述警示至少部分地与所述第三对象重叠,其中与在所述用户的所述当前视点是所述第二视点时的所述相应空间关系相比,所述第四位置处的所述警示与所述用户具有不同的空间关系。
7.根据权利要求1至6中任一项所述的方法,还包括:
在检测到所述用户的所述当前视点的移动时,相对于在所述三维环境中显示的其他对象在视觉上去加重所述警示;以及
根据确定不再检测到所述用户的所述当前视点的移动,重新显示所述警示而不相对于所述三维环境的当前视图中显示的所述其他对象在视觉上去加重所述警示。
8.根据权利要求1至7中任一项所述的方法,还包括在检测到所述用户的所述当前视点从所述第一视点到所述第二视点的移动时,随着所述用户的所述当前视点移动而在所述三维环境中移动所述警示。
9.根据权利要求8所述的方法,其中根据第一组特性来移动所述第一类型的警示,并且根据与所述第一组特性不同的第二组特性来移动所述第二类型的警示。
10.根据权利要求8至9中任一项所述的方法,其中在所述三维环境中移动所述警示时,根据确定所述警示是所述第二类型的警示,在所述警示移动到所述第二位置时继续显示所述警示。
11.根据权利要求1至10中任一项所述的方法,还包括:
检测到所述用户的所述当前视点从所述第二视点到第三视点的移动不满足阈值移动量;以及
在所述用户的所述当前视点是所述第三视点时,根据确定所述警示是所述第二类型的警示,显示所述警示随着所述用户的所述当前视点移动而在所述三维环境中移动。
12.根据权利要求1至11中任一项所述的方法,还包括:
响应于确定所述警示被显示达阈值时间量而未检测到用户与所述警示的交互:
根据确定所述警示是所述第一类型的警示,保持所述警示在所述三维环境中的显示;以及
根据确定所述警示是所述第二类型的警示,停止所述警示的显示。
13.根据权利要求1至12中任一项所述的方法,其中与所述警示是所述第一类型的警示时所述第一位置处的所述警示与所述用户的所述相应空间关系相比,在所述警示是所述第二类型的警示时所述第一位置处的所述警示与所述用户的所述相应空间关系是相对于所述用户更高的空间关系。
14.根据权利要求1至13中任一项所述的方法,还包括:
检测所述用户的所述当前视点到第四视点的移动,其中所述第四视点不包括虚拟对象;
在所述用户的所述当前视点是所述第四视点时:
根据确定所述警示是所述第一类型的警示,停止显示所述第一类型的警示;
根据确定所述警示是所述第二类型的警示,在所述用户的所述当前视点移动时在所述三维环境中移动所述警示。
15.根据权利要求1至14中任一项所述的方法,还包括在检测所述用户的所述当前视点的移动时,在所述三维环境中的一定位置处显示所述警报,所述位置与所述用户的相应空间关系远于所述第一位置与所述用户的所述相应空间关系。
16.根据权利要求1至15中任一项所述的方法,其中与所述第二类型的警示在所述第一位置处与所述用户的所述相应空间关系相比,所述第一类型的警示在所述第一位置处与所述用户的所述相应空间关系是相对于所述用户更近的空间关系。
17.根据权利要求1至16中任一项所述的方法,其中显示作为所述第一类型的警示的警示包括显示内容以及用于取消所述警示的一个或多个可选用户界面对象。
18.根据权利要求1至17中任一项所述的方法,还包括:
在所述三维环境中显示多个单独应用程序区域,显示所述警示,包括:
根据确定所述警示是所述第一类型的警示,在所述三维环境中相对于所述警示在视觉上去加重所述多个单独应用程序区域;以及
根据确定所述警示是所述第二类型的警示,在所述三维环境中相对于所述警示在视觉上去加重所述多个单独应用程序区域中的第一应用程序区域而不去加重所述多个应用程序区域中的第二应用程序区域。
19.根据权利要求1至18中任一项所述的方法,还包括:
在所述三维环境中显示物理环境的一部分时,显示所述警示,包括:
根据确定所述警示是所述第一类型的警示,在视觉上去加重所述三维环境中的所述物理环境的所述部分;以及
根据确定所述警示是所述第二类型的警示,放弃去加重所述三维环境中的所述物理环境的所述部分。
20.一种第一计算机系统,包括:
第一显示生成部件;
一个或多个输入设备;
一个或多个处理器;以及
存储器,所述存储器存储一个或多个程序,其中所述一个或多个程序被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于以下操作的指令:
经由所述第一显示生成部件在三维环境的第一视图中显示第一对象;
在显示所述第一对象时,在相对于所述三维环境的第一位置处显示警示,所述警示在所述第一视图中至少部分地与所述第一对象重叠,其中所述第一位置与所述用户具有相应空间关系;
经由所述一个或多个输入设备检测所述用户的当前视点从第一视点到第二视点的移动;以及
在所述用户的所述当前视点是所述第二视点时:
根据确定所述警示是第一类型的警示,在与所述三维环境中的所述第一位置不同的所述三维环境中的第二位置处显示所述警示,其中当所述用户的所述当前视点是所述第二视点时,所述三维环境中的所述第二位置与所述用户具有所述相应空间关系;以及
根据确定所述警示是第二类型的警示,从所述第二视点显示所述三维环境,而不显示在所述用户的所述当前视点是所述第二视点时与所述用户具有所述相应空间关系的所述警示。
21.一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令在由包括第一显示生成部件和一个或多个输入设备的第一计算机系统执行时,使得所述第一计算机系统执行操作,所述操作包括:
经由所述第一显示生成部件在三维环境的第一视图中显示第一对象;
在显示所述第一对象时,在相对于所述三维环境的第一位置处显示警示,所述警示在所述第一视图中至少部分地与所述第一对象重叠,其中所述第一位置与所述用户具有相应空间关系;
经由所述一个或多个输入设备检测所述用户的当前视点从第一视点到第二视点的移动;以及
在所述用户的所述当前视点是所述第二视点时:
根据确定所述警示是第一类型的警示,在与所述三维环境中的所述第一位置不同的所述三维环境中的第二位置处显示所述警示,其中当所述用户的所述当前视点是所述第二视点时,所述三维环境中的所述第二位置与所述用户具有所述相应空间关系;以及
根据确定所述警示是第二类型的警示,从所述第二视点显示所述三维环境,而不显示在所述用户的所述当前视点是所述第二视点时与所述用户具有所述相应空间关系的所述警示。
22.一种计算机系统,包括:
第一显示生成部件;
一个或多个输入设备;
一个或多个处理器;以及
存储器,所述存储器存储一个或多个程序,其中所述一个或多个程序被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行根据权利要求1至19所述的方法中的任一种方法的指令。
23.一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令在由包括第一显示生成部件和一个或多个输入设备的计算机系统执行时,使得所述计算机系统执行根据权利要求1至19所述的方法中的任一种方法。
24.一种位于计算机系统上的图形用户界面,所述计算机系统包括第一显示生成部件、一个或多个输入设备、存储器和用于执行存储在所述存储器中的一个或多个程序的一个或多个处理器,所述图形用户界面包括根据权利要求1至19所述的方法中的任一种方法显示的用户界面。
25.一种计算机系统,包括:
第一显示生成部件;
一个或多个输入设备;以及
用于执行根据权利要求1至19所述的方法中的任一种方法的装置。
26.一种用于在包括第一显示生成部件和一个或多个输入设备的计算机系统中使用的信息处理装置,所述信息处理装置包括:
用于执行根据权利要求1至19所述的方法中的任一种方法的装置。
27.一种方法,包括:
在与第一显示生成部件和一个或多个第一输入设备通信的第一计算机系统处:
经由所述第一显示生成部件在三维环境的第一视图中显示第一通知的第一表示;
在显示所述第一通知的所述第一表示时,经由所述一个或多个输入设备检测所述用户满足关于所述第一通知的所述第一表示的注意力标准;以及
响应于检测到所述用户满足关于所述第一通知的所述第一表示的所述注意力标准,显示与所述第一通知的所述第一表示不同的所述第一通知的第二表示;
在显示所述第一通知的所述第二表示之后,检测所述用户不再满足关于所述第一通知的相应表示的所述注意力标准;以及
响应于检测到所述用户界面对象不再满足关于所述第一通知的所述相应表示的所述注意力标准:
根据确定所述第一通知的所述相应表示是所述第一通知的所述第二表示,停止显示所述第一通知的所述相应表示;以及
根据确定所述第一通知的所述相应表示是与所述第一通知的所述第二表示不同的所述第一通知的第三表示,保持显示所述第一通知的所述相应表示。
28.根据权利要求27所述的方法,还包括在显示所述第一通知的所述第一表示时,根据确定所述用户在预定义时间段内不满足关于所述第一通知的所述第一表示的所述注意力标准,停止显示所述第一通知的所述第一表示。
29.根据权利要求27至28中任一项所述的方法,其中关于所述第一通知的所述第一表示的所述注意力标准包括在所述用户已看向所述第一通知的所述第一表示时满足的要求。
30.根据权利要求27至29中任一项所述的方法,其中关于所述第一通知的所述第一表示的所述注意力标准包括在所述用户已注视所述第一通知的所述第一表示达至少阈值时间量时满足的要求。
31.根据权利要求27至30中任一项所述的方法,还包括检测所述用户的手部被移动以满足相应标准,并且响应于检测到所述用户的所述手部被移动以满足所述相应标准,将所述第一通知的所述相应表示显示为所述第一通知的所述第三表示。
32.根据权利要求27至31中任一项所述的方法,还包括:
检测所述用户的手部被移动以满足相应标准,所述相应标准包括在所述用户的所述手部处于预定义的姿势时满足的标准,以及
响应于检测到所述用户的所述手部被移动以满足所述相应标准,将所述第一通知的所述相应表示显示为所述第一通知的所述第三表示。
33.根据权利要求27至32中任一项所述的方法,还包括:
检测选择所述第一通知的所述相应表示的用户输入;以及
响应于检测到选择所述第一通知的所述相应表示的所述用户输入,将所述第一通知的所述相应表示显示为所述第一通知的所述第三表示。
34.根据权利要求27至33中任一项所述的方法,其中所述第一通知的所述第二表示包括与所述第一通知相对应的所述应用程序的内容。
35.根据权利要求27至34中任一项所述的方法,其中所述第一通知的所述第三表示包括一个或多个可选用户界面对象。
36.根据权利要求27至35中任一项所述的方法,还包括在显示所述第一通知的所述第三表示时,响应于检测到用于打开与所述第一通知相关联的应用程序的用户输入,显示与所述第一通知相关联的所述应用程序。
37.根据权利要求27至36中任一项所述的方法,还包括在显示所述第一通知的所述第一表示时,响应于接收到第二通知,将所述第一通知的所述第一表示的显示替换为所述第二通知的第一表示。
38.根据权利要求27至37中任一项所述的方法,还包括根据确定存在多个可用通知,响应于检测到所述用户满足关于相应通知的所述多个第一表示的注意力标准,同时显示所述多个通知中的多个不同通知的表示。
39.根据权利要求27至38中任一项所述的方法,还包括:
在显示所述第一通知的所述第二表示时:检测所述用户的手部被移动以满足相应标准,并且响应于检测到所述用户的所述手部被移动以满足相应标准:
根据确定被显示的所述第一通知的第二表示是唯一显示的通知,将所述第一通知的所述第二表示的显示更新为所述第一通知的所述第三表示;以及
根据确定显示相应通知的两个或更多个第二表示,保持显示所述相应通知的所述两个或更多个第二表示。
40.根据权利要求27至39中任一项所述的方法,还包括根据确定显示相应通知的多个第二表示,检测从相应通知的所述多个第二表示中选择第三通知的用户输入。
41.根据权利要求40所述的方法,还包括响应于从相应通知的所述多个第二表示中选择所述第三通知的所述用户输入:
显示所述第三通知的第三表示;以及
停止显示所述相应通知的所述多个第二表示。
42.根据权利要求27至41中任一项所述的方法,还包括根据确定显示相应通知的多个第二表示,检测所述用户的手部被移动以满足相应标准,并且在检测到所述用户的所述手部被移动以满足所述相应标准时,响应于确定所述用户满足关于来自所述相应通知的所述多个第二表示的第四通知的第二注意力标准,相对于来自所述相应通知的所述多个表示的所述相应通知的其他第二表示在视觉上加重所述第四通知。
43.根据权利要求27至42中任一项所述的方法,还包括根据确定所述第一通知的所述相应表示是所述第一通知的所述第三表示,显示用于取消所述第一通知的所述相应表示的选项。
44.根据权利要求27至43中任一项所述的方法,其中在所述三维环境的所述第一视图中显示所述第一通知的所述第一表示包括在所述三维环境中与所述用户的身体的一部分具有第一空间关系的位置处显示所述第一通知的所述第一表示。
45.根据权利要求44所述的方法,还包括同时在所述三维环境的所述第一视图中与所述用户的身体的所述一部分具有所述第一空间关系的所述位置处显示所述第一通知的所述第一表示,以及在所述三维环境中与所述用户的身体的所述部分的位置相对应的模拟位置处输出音频指示。
46.根据权利要求27至45中任一项所述的方法,其中显示所述第一通知的所述相应表示的所述三维环境是增强现实或虚拟现实(AR/VR)三维环境。
47.一种第一计算机系统,包括:
第一显示生成部件;
一个或多个输入设备;
一个或多个处理器;以及
存储器,所述存储器存储一个或多个程序,其中所述一个或多个程序被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于进行以下操作的指令:
经由所述第一显示生成部件在三维环境的第一视图中显示第一通知的第一表示;
在显示所述第一通知的所述第一表示时,经由所述一个或多个输入设备检测所述用户满足关于所述第一通知的所述第一表示的注意力标准;以及
响应于检测到所述用户满足关于所述第一通知的所述第一表示的所述注意力标准,显示与所述第一通知的所述第一表示不同的所述第一通知的第二表示;
在显示所述第一通知的所述第二表示之后,检测所述用户不再满足关于所述第一通知的相应表示的所述注意力标准;以及
响应于检测到所述用户界面对象不再满足关于所述第一通知的所述相应表示的所述注意力标准:
根据确定所述第一通知的所述相应表示是所述第一通知的所述第二表示,停止显示所述第一通知的所述相应表示;以及
根据确定所述第一通知的所述相应表示是与所述第一通知的所述第二表示不同的所述第一通知的第三表示,保持显示所述第一通知的所述相应表示。
48.一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令在由包括第一显示生成部件和一个或多个输入设备的第一计算机系统执行时,使得所述第一计算机系统执行操作,所述操作包括:
经由所述第一显示生成部件在三维环境的第一视图中显示第一通知的第一表示;
在显示所述第一通知的所述第一表示时,经由所述一个或多个输入设备检测所述用户满足关于所述第一通知的所述第一表示的注意力标准;以及
响应于检测到所述用户满足关于所述第一通知的所述第一表示的所述注意力标准,显示与所述第一通知的所述第一表示不同的所述第一通知的第二表示;
在显示所述第一通知的所述第二表示之后,检测所述用户不再满足关于所述第一通知的相应表示的所述注意力标准;以及
响应于检测到所述用户界面对象不再满足关于所述第一通知的所述相应表示的所述注意力标准:
根据确定所述第一通知的所述相应表示是所述第一通知的所述第二表示,停止显示所述第一通知的所述相应表示;以及
根据确定所述第一通知的所述相应表示是与所述第一通知的所述第二表示不同的所述第一通知的第三表示,保持显示所述第一通知的所述相应表示。
49.一种计算机系统,包括:
第一显示生成部件;
一个或多个输入设备;
一个或多个处理器;和
存储器,所述存储器存储一个或多个程序,其中所述一个或多个程序被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行根据权利要求27至46所述的方法中的任一种方法的指令。
50.一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令在由包括第一显示生成部件和一个或多个输入设备的计算机系统执行时,使得所述计算机系统执行根据权利要求27至46所述的方法中的任一种方法。
51.一种位于计算机系统上的图形用户界面,所述计算机系统包括第一显示生成部件、一个或多个输入设备、存储器和用于执行存储在所述存储器中的一个或多个程序的一个或多个处理器,所述图形用户界面包括根据权利要求27至46所述的方法中的任一种方法显示的用户界面。
52.一种计算机系统,包括:
第一显示生成部件;
一个或多个输入设备;以及
用于执行根据权利要求27至46所述的方法中的任一种方法的装置。
53.一种用于在包括第一显示生成部件和一个或多个输入设备的计算机系统中使用的信息处理装置,所述信息处理装置包括:
用于执行根据权利要求27至46所述的方法中的任一种方法的装置。
54.一种方法,包括:
在与第一显示生成部件和一个或多个第一设备通信的第一计算机系统处:
经由所述第一显示生成部件在三维环境的第一视图中显示第一应用程序;
在显示所述第一应用程序时,在所述三维环境的所述第一视图中显示第二应用程序的表示;
经由所述一个或多个输入设备检测指向所述第二应用程序的所述表示的输入;以及
响应于检测到指向所述第二应用程序的所述表示的所述输入:
根据确定所述输入是第一类型的输入,将所述第一应用程序的显示替换为所述第二应用程序的显示;以及
根据确定所述输入是第二类型的输入,同时显示所述第一应用程序和所述第二应用程序。
55.根据权利要求54所述的方法,其中所述第二应用程序的所述表示包括一组应用程序图标中的应用程序图标。
56.根据权利要求54所述的方法,其中所述第二应用程序的所述表示包括对应于所述第二应用程序的通知。
57.根据权利要求56所述的方法,还包括响应于检测到指向所述第二应用程序的所述表示的所述输入,在对应于所述通知的状态下显示所述第二应用程序。
58.根据权利要求54至57中任一项所述的方法,其中所述第一类型的输入包括捏合输入。
59.根据权利要求54至58中任一项所述的方法,其中所述第二类型的输入包括捏合并拖动输入。
60.根据权利要求59所述的方法,还包括:
在检测所述拖动输入时,检测所述用户的所述手部的移动;以及
根据所述用户的所述手部的所述移动来移动所述第二应用程序。
61.根据权利要求54至60中任一项所述的方法,其中将所述第一应用程序的显示替换为所述第二应用程序的显示包括将所述第二应用程序挪动到在所述三维环境中与所述第一应用程序在所述三维环境中的所述位置相对应的位置。
62.根据权利要求54至61中任一项所述的方法,还包括:
在显示所述第一应用程序时,在所述三维环境中显示第三应用程序的表示,所述第三应用程序的所述表示包括用于所述第三应用程序的通知;以及
响应于指向用于所述第三应用程序的所述通知的第三类型的输入,显示用于所述第三应用程序的所述通知的内容而不取消所述第一应用程序。
63.根据权利要求62所述的方法,其中所述第三应用程序包括消息传送应用程序。
64.根据权利要求54至63中任一项所述的方法,还包括:
在第一显示状态下显示所述第二应用程序的所述表示时,检测指向处于所述第一显示状态的所述表示的所述用户的注意力;以及
根据确定指向处于所述第一显示状态的所述表示的所述用户的所述注意力满足关于所述第二应用程序的所述表示的注意力标准,将所述第二应用程序的所述表示的显示更新到第二显示状态,其中所述第二显示状态包括用于显示所述第二应用程序的用户可选选项。
65.根据权利要求54至64中任一项所述的方法,其中显示所述第一应用程序和所述第二应用程序的所述表示的所述三维环境是增强现实或虚拟现实(AR/VR)三维环境。
66.根据权利要求54至65中任一项所述的方法,还包括:
在显示所述第二应用程序的所述表示时,显示一个或多个附加应用程序的表示;以及
响应于检测到选择用于所述一个或多个附加应用程序中的第四应用程序的表示的输入,显示对应于所述第四应用程序的应用程序窗口。
67.根据权利要求66所述的方法,还包括在显示对应于第四应用程序的所述应用程序窗口时,保持显示所述第二应用程序的所述表示和未被选择的所述一个或多个附加应用程序的所述表示。
68.根据权利要求66至67中任一项所述的方法,还包括响应于接收到选择所述一个或多个附加应用程序中的第五应用程序的表示的输入,显示对应于所述第五应用程序的应用程序窗口。
69.一种第一计算机系统,包括:
第一显示生成部件;
一个或多个输入设备;
一个或多个处理器;以及
存储器,所述存储器存储一个或多个程序,其中所述一个或多个程序被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于以下操作的指令:
经由所述第一显示生成部件在三维环境的第一视图中显示第一应用程序;
在显示所述第一应用程序时,在所述三维环境的所述第一视图中显示第二应用程序的表示;
经由所述一个或多个输入设备检测指向所述第二应用程序的所述表示的输入;以及
响应于检测到指向所述第二应用程序的所述表示的所述输入:
根据确定所述输入是第一类型的输入,将所述第一应用程序的显示替换为所述第二应用程序的显示;以及
根据确定所述输入是第二类型的输入,同时显示所述第一应用程序和所述第二应用程序。
70.一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令在由包括第一显示生成部件和一个或多个输入设备的第一计算机系统执行时,使得所述第一计算机系统执行操作,所述操作包括:
经由所述第一显示生成部件在三维环境的第一视图中显示第一应用程序;
在显示所述第一应用程序时,在所述三维环境的所述第一视图中显示第二应用程序的表示;
经由所述一个或多个输入设备检测指向所述第二应用程序的所述表示的输入;以及
响应于检测到指向所述第二应用程序的所述表示的所述输入:
根据确定所述输入是第一类型的输入,将所述第一应用程序的显示替换为所述第二应用程序的显示;以及
根据确定所述输入是第二类型的输入,同时显示所述第一应用程序和所述第二应用程序。
71.一种计算机系统,包括:
第一显示生成部件;
一个或多个输入设备;
一个或多个处理器;以及
存储器,所述存储器存储一个或多个程序,其中所述一个或多个程序被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行根据权利要求54至68所述的方法中的任一种方法的指令。
72.一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令在由包括第一显示生成部件和一个或多个输入设备的计算机系统执行时,使得所述计算机系统执行根据权利要求54至68所述的方法中的任一种方法。
73.一种位于计算机系统上的图形用户界面,所述计算机系统包括显示生成部件、一个或多个输入设备、存储器以及用于执行存储在所述存储器中的一个或多个程序的一个或多个处理器,所述图形用户界面包括根据权利要求54至68所述的方法中的任一种方法显示的用户界面。
74.一种计算机系统,包括:
第一显示生成部件;
一个或多个输入设备;以及
用于执行根据权利要求54至68所述的方法中的任一种方法的装置。
75.一种用于在包括第一显示生成部件和一个或多个输入设备的计算机系统中使用的信息处理装置,所述信息处理装置包括:
用于执行根据权利要求54至68所述的方法中的任一种方法的装置。
76.一种方法,包括:
在包括显示生成部件和一个或多个输入设备或与所述显示生成部件和所述一个或多个输入设备通信的计算机系统处:
经由所述显示生成部件显示三维环境的第一视图,所述第一视图对应于用户的第一视点;
在显示所述三维环境的所述第一视图时,在所述三维环境中的第一位置处显示第一用户界面对象,其中所述第一位置与所述用户的所述第一视点具有第一空间关系;
在显示包括所述三维环境中的所述第一位置处的所述第一用户界面对象在内的所述三维环境的所述第一视图时,检测指向所述第一用户界面对象的至少第一部分的第一输入;以及
响应于检测到指向所述第一用户界面对象的至少所述第一部分的所述第一输入:
在所述三维环境中的第二位置处显示第二用户界面对象;以及
在所述三维环境中将所述第一用户界面对象从所述第一位置移动到第三位置,其中与所述三维环境中的所述第一位置相比,所述第三位置与所述用户的所述第一视点的距离更大。
77.根据权利要求76所述的方法,其中在所述三维环境中将所述第一用户界面对象从所述第一位置移动到所述第三位置改变了所述第一用户界面对象与所述三维环境中的至少一个其他用户界面对象之间的相应空间关系。
78.根据权利要求76至77中任一项所述的方法,其中所述第一位置和所述第二位置与所述三维环境中的所述用户的所述第一视点具有小于阈值量的距离差。
79.根据权利要求76至78中任一项所述的方法,包括:
检测所述显示生成部件在物理环境中的移动;以及
响应于检测到所述显示生成部件在所述物理环境中的所述移动:
将所述三维环境的所述第一视图替换为所述三维环境的第二视图,其中所述三维环境的所述第二视图对应于所述用户的第二视点,并且所述三维环境中的所述第一视点与所述第二视点之间的差异对应于所述显示生成部件在所述物理环境中的所述移动;以及
根据所述显示生成部件在所述物理环境中的所述移动而在所述三维环境中移动所述第一用户界面对象和所述第二用户界面对象,同时保持从所述第二视点到所述第一用户界面对象和所述第二用户界面对象的相应距离。
80.根据权利要求76至79中任一项所述的方法,其中所述第一输入是满足至少第一输入阈值的输入。
81.根据权利要求76至80中任一项所述的方法,其中所述第一用户界面对象的所述第一部分是所述第一用户界面对象内的第一可选对象,并且所述第一输入指向所述第一可选对象,并且所述第二用户界面对象从所述三维环境中的所述第一可选对象的相应位置出现。
82.根据权利要求76至81中任一项所述的方法,包括:
响应于检测到指向所述第一用户界面对象的至少所述第一部分的所述第一输入:
将所述第一用户界面对象的一个或多个显示特性从第一组值改变为第二组值,结合在所述三维环境中将所述第一用户界面对象从所述第一位置移动到所述第三位置。
83.根据权利要求82所述的方法,包括:
在所述第一用户界面对象被显示在所述三维环境中的所述第三位置处时,检测到所述用户的注意力指向所述第一用户界面对象;以及
响应于检测到所述用户的所述注意力指向所述第一用户界面对象,将所述第一用户界面对象的所述一个或多个显示特性从所述第二组值恢复到所述第一组值。
84.根据权利要求83所述的方法,包括:
响应于检测到所述用户的注意力指向所述第一用户界面对象,将所述第二用户界面对象的一个或多个显示特性从第三组值改变为第四组值。
85.根据权利要求83至84中任一项所述的方法,包括:
响应于检测到所述用户的注意力指向所述第一用户界面对象,恢复在所述第一位置处的所述第一用户界面对象的外观。
86.根据权利要求76至85中任一项所述的方法,包括:
在所述三维环境的所述第一视图中同时显示所述第一用户界面对象和所述第二用户界面对象时,检测注视输入在所述第一用户界面对象与所述第二用户界面对象之间的来回移动;以及
响应于检测到所述注视输入在所述第一用户界面对象与所述第二用户界面对象之间的所述来回移动:
在所述来回移动的第一部分期间,根据确定所述注视输入从所述第二用户界面对象移动到所述第一用户界面对象,改变所述第一用户界面对象和所述第二用户界面对象中的至少一者的一个或多个显示特性,使得所述第一用户界面对象比所述第二用户界面对象获得更大的视觉显著性;以及
在所述来回移动的第二部分期间,根据确定所述注视输入从所述第一用户界面对象移动到所述第二用户界面对象,改变所述第一用户界面对象和所述第二用户界面对象中的至少一者的一个或多个显示特性,使得所述第二用户界面对象获得比所述第一用户界面对象更大的视觉显著性。
87.根据权利要求76至86中任一项所述的方法,包括:
在所述三维环境中的所述第二位置处显示所述第二用户界面对象并且在所述第三位置处显示所述第一用户界面对象时,检测指向所述第一用户界面对象的第二用户输入;以及
响应于检测到指向所述第一用户界面对象的所述第二输入:
停止显示所述第二用户界面对象;以及
在所述三维环境中将所述第一用户界面对象从所述第三位置移动回到所述第一位置。
88.根据权利要求87所述的方法,其中指向所述第一用户界面对象的所述第二输入包括结合空中手势检测到的指向所述第一用户界面对象的注视输入。
89.根据权利要求87至88中任一项所述的方法,其中在所述三维环境中将所述第一用户界面对象从所述第三位置移动回到所述第一位置包括在朝向所述用户的所述第一视点的方向上移动所述第一用户界面对象。
90.根据权利要求76至89中任一项所述的方法,包括:
在所述第三位置处显示所述第一用户界面对象并且在所述第二位置处显示所述第二用户界面对象时,检测第三输入,所述第三输入包括用户的手部在第一姿势下的移动,随后释放所述第一姿势;以及
响应于检测到所述第三输入:
停止在所述三维环境中显示所述第二用户界面对象。
91.根据权利要求76至90中任一项所述的方法,包括:
在所述三维环境中的所述第一位置处显示所述第一用户界面对象时,在所述三维环境中的第四位置处显示抓取器对象,其中所述抓取器对象与所述第一用户界面对象具有第二空间关系,并且所述第一用户界面对象被配置为在所述抓取器对象在所述三维环境中移动时随所述抓取器对象移动;以及
响应于检测到所述第一输入:
在所述三维环境中的第五位置处显示所述抓取器对象,其中所述第五位置和所述第四位置与所述用户的所述第一视点具有小于阈值量的距离差。
92.根据权利要求91所述的方法,其中在所述三维环境中的所述第五位置处显示所述抓取器对象包括:
根据确定在所述第二位置处显示的所述第二用户界面对象的第一边缘位于先前由在所述第一位置处显示的所述第一用户界面对象占据的区域之外,将所述抓取器对象移动超过所述第二用户界面对象的所述第一边缘;以及
根据确定在所述第二位置处显示的所述第二用户界面对象的所述第一边缘位于先前由在所述第一位置处显示的所述第一用户界面对象占据的所述区域内,将所述抓取器对象保持在其在所述三维环境中的当前位置处。
93.根据权利要求76至92中任一项所述的方法,其中所述第二用户界面对象包括与所述计算机系统的第一操作相对应的至少第一可选对象,并且所述方法包括:
在所述第二位置处显示所述第二用户界面对象时,检测指向所述第二用户界面对象内的所述第一可选对象的第四输入;以及
响应于检测到指向所述第一可选对象的所述第四输入:
根据确定所述第四输入满足用于选择所述第一可选对象的预设标准,执行所述第一操作。
94.根据权利要求76至93中任一项所述的方法,其中所述第二用户界面对象包括与具有一个或多个控制值的第一控制功能相对应的至少第一控件,并且所述方法包括:
在所述第二位置处显示所述第二用户界面对象时,检测指向所述第二用户界面对象内的所述第一控件的第五输入;以及
响应于检测到指向所述第一控件的所述第五输入:
根据确定所述第五输入满足用于调整所述控件的预设标准,根据所述第五输入调整所述控制功能的当前控制值。
95.根据权利要求76至94中任一项所述的方法,其中与在所述第一位置处的所述第一用户界面对象相比,所述第二用户界面对象在所述第二位置处的至少一个维度上具有更大的空间范围。
96.一种计算机系统,包括:
显示生成部件;
一个或多个输入设备;
一个或多个处理器;以及
存储器,所述存储器存储一个或多个程序,其中所述一个或多个程序被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于以下操作的指令:
经由所述显示生成部件显示三维环境的第一视图,所述第一视图对应于用户的第一视点;
在显示所述三维环境的所述第一视图时,在所述三维环境中的第一位置处显示第一用户界面对象,其中所述第一位置与所述用户的所述第一视点具有第一空间关系;
在显示包括所述三维环境中的所述第一位置处的所述第一用户界面对象在内的所述三维环境的所述第一视图时,检测指向所述第一用户界面对象的至少第一部分的第一输入;以及
响应于检测到指向所述第一用户界面对象的至少所述第一部分的所述第一输入:
在所述三维环境中的第二位置处显示第二用户界面对象;以及
在所述三维环境中将所述第一用户界面对象从所述第一位置移动到第三位置,其中与所述三维环境中的所述第一位置相比,所述第三位置与所述用户的所述第一视点的距离更大。
97.一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令在由包括第一显示生成部件和一个或多个输入设备的计算机系统执行时,使得所述计算机系统执行操作,所述操作包括:
经由所述显示生成部件显示三维环境的第一视图,所述第一视图对应于用户的第一视点;
在显示所述三维环境的所述第一视图时,在所述三维环境中的第一位置处显示第一用户界面对象,其中所述第一位置与所述用户的所述第一视点具有第一空间关系;
在显示包括所述三维环境中的所述第一位置处的所述第一用户界面对象在内的所述三维环境的所述第一视图时,检测指向所述第一用户界面对象的至少第一部分的第一输入;以及
响应于检测到指向所述第一用户界面对象的至少所述第一部分的所述第一输入:
在所述三维环境中的第二位置处显示第二用户界面对象;以及
在所述三维环境中将所述第一用户界面对象从所述第一位置移动到第三位置,其中与所述三维环境中的所述第一位置相比,所述第三位置与所述用户的所述第一视点的距离更大。
98.一种计算机系统,包括:
显示生成部件;
一个或多个输入设备;
一个或多个处理器;以及
存储器,所述存储器存储一个或多个程序,其中所述一个或多个程序被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行根据权利要求76至95所述的方法中的任一种方法的指令。
99.一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,当所述指令由包括显示生成部件和一个或多个输入设备的计算机系统执行时,使得所述计算机系统执行根据权利要求76至95所述的方法中的任一种方法。
100.一种位于计算机系统上的图形用户界面,所述计算机系统包括显示生成部件、一个或多个输入设备、存储器和用于执行存储在所述存储器中的一个或多个程序的一个或多个处理器,所述图形用户界面包括根据权利要求76至95所述的方法中的任一种方法显示的用户界面。
101.一种计算机系统,包括:
显示生成部件;
一个或多个输入设备;以及
用于执行根据权利要求76至95所述的方法中的任一种方法的装置。
102.一种用于在包括显示生成部件和一个或多个输入设备的计算机系统中使用的信息处理装置,所述信息处理装置包括:
用于执行根据权利要求76至95所述的方法中的任一种方法的装置。
103.一种方法,包括:
在包括显示生成部件和一个或多个输入设备或与所述显示生成部件和所述一个或多个输入设备通信的计算机系统处:
在包括第一对象的三维环境的第一视图经由所述显示生成部件可见时,检测与所述第一对象相对应的第一事件;
响应于检测到所述第一事件而显示第二对象,其中所述第二对象是经由所述显示生成部件在所述三维环境中的第一位置处以第一取向显示的虚拟用户界面对象,并且其中在所述第一位置处以所述第一取向显示的所述第二对象面向与所述三维环境的所述第一视图相对应的所述第一视点;
在所述第一位置处以所述第一取向显示所述第二对象时,检测将当前视点从所述第一视点改变到第二视点的第一请求;以及
响应于检测到视点从所述第一视点到所述第二视点的所述改变,其中所述第二视点相对于所述第一视点旋转:
在所述三维环境的与所述第二视点相对应的第二视图中将所述第二对象从所述第一位置移动到第二位置;以及
将所述第二对象的取向从所述第一取向更新到第二取向,其中在所述第二位置处以所述第二取向显示的所述第二对象面向所述第二视点,并且其中所述第一位置和取向以及所述第二位置和取向与所述第二对象在所述三维环境中围绕所述第一对象的至少一部分的弯曲表面上的放置一致。
104.根据权利要求103所述的方法,包括:
在所述三维环境的与所述第二视点相对应的所述第二视图中在所述第二位置处以所述第二取向显示所述第二对象时,检测将所述当前视点从所述第二视点改变到第三视点的第二请求;以及
响应于检测到所述当前视点从所述第二视点到所述第三视点的所述改变,其中所述第三视点相对于所述第二视点旋转:
将所述第二对象从所述第二位置移动到与所述第三视点相对应的所述三维环境的第三视图中的第三位置;以及
将所述第二对象的所述取向从所述第二取向更新到第三取向,其中在所述第三位置处以所述第三取向显示的所述第二对象面向所述第三视点,并且其中所述第一位置和取向、所述第二位置和取向以及所述第三位置和取向与所述第二对象在所述三维环境中围绕所述第一对象的至少一部分的相同弯曲表面上的放置一致。
105.根据权利要求103至104中任一项所述的方法,其中所述第二对象至少包括与所述计算机系统的第一操作相对应的第一部分和与所述计算机系统的第二操作相对应的第二部分,所述第一部分和所述第二部分分开地位于所述第二对象内,并且所述第一操作不同于所述第二操作,并且其中所述方法包括:
在显示所述第二对象时,检测指向所述第二对象的用户输入;以及
响应于检测到指向所述第二对象的所述用户输入:
根据确定所述用户输入指向所述第二对象的所述第一部分并确定所述用户输入满足激活标准,执行所述第一操作;以及
根据确定所述用户输入指向所述第二对象的所述第二部分并确定所述用户输入满足所述激活标准,执行所述第二操作。
106.根据权利要求103至105中任一项所述的方法,其中在所述三维环境中围绕所述第一对象的至少一部分的所述弯曲表面是连续且凸形的表面。
107.根据权利要求103至106中任一项所述的方法,其中:
检测将所述当前视点从所述第一视点改变到所述第二视点的所述第一请求包括检测处于经由所述显示生成部件观看所述三维环境的位置的用户的第一移动,其中所述用户的所述第一移动使得所述当前视点围绕所述第一对象旋转至少第一阈值旋转量;以及
将所述第二对象的所述取向从所述第一取向更新到所述第二取向包括使所述第二对象面向所述用户。
108.根据权利要求103至107中任一项所述的方法,其中将所述第二对象的所述取向从所述第一取向更新到所述第二取向包括当所述第二对象移动通过所述第一位置与所述第二位置之间的多个中间位置时,使所述第二对象旋转通过所述第一取向与所述第二取向之间的多个中间取向,其中所述第二对象的所述多个中间取向根据所述弯曲表面在所述多个中间位置处的曲率而对应于所述第二对象的所述多个中间位置。
109.根据权利要求103至108中任一项所述的方法,包括:
在所述第一位置处以所述第一取向显示所述第二对象时,检测将所述当前视点从所述第一视点改变到第四视点的第三请求;以及
响应于检测到所述当前视点从所述第一视点到所述第四视点的所述改变:
在所述三维环境的与所述第四视点相对应的第四视图中将所述第二对象以所述第一取向保持在所述第一位置处。
110.根据权利要求103至109中任一项所述的方法,包括:
在所述三维环境的所述第一视图中在所述第一位置处以所述第一取向显示所述第二对象时,检测将所述第一对象从所述第一对象的原始位置移动到所述第一对象在所述三维环境中的新位置的请求;以及
响应于检测到将所述第一对象从所述第一对象的所述原始位置移动到所述第一对象的所述新位置的所述请求:
根据所述第一对象在所述三维环境中的所述新位置而将所述第二对象从所述第一位置移动到第五位置;以及
将所述第二对象的所述当前取向从所述第一取向更新到所述第五取向,其中在所述第五位置处以所述第五取向显示的所述第二对象面向所述第一视点,并且其中所述第一位置和取向、所述第二位置和取向以及所述第五位置和取向与所述第二对象在所述三维环境中围绕所述第一对象的至少一部分的相同弯曲表面上的放置一致。
111.根据权利要求103至110中任一项所述的方法,其中当以所述第一位置和取向显示所述第二对象并且所述第二对象处于所述三维环境的所述第一视图中时,所述第二对象和所述第一对象隔开第一距离,其中当在所述三维环境的所述第二视图中以所述第二位置和取向显示所述第二对象时,所述第一对象隔开第二距离,并且其中在所述第一距离和所述第二距离之间存在小于阈值量的差值。
112.根据权利要求103至111中任一项所述的方法,包括:
在所述三维环境的相应视图中显示所述第一对象和所述第二对象时,检测用户注意力从所述三维环境的与所述第一对象和所述第二对象相对应的第一区域到所述三维环境的不与所述第一对象和所述第二对象相对应的第二区域的移动;以及
响应于检测到用户注意力从所述三维环境的所述第一区域到所述三维环境的所述第二区域的所述移动,改变所述第二对象的一个或多个显示特性以减小所述第二对象在所述三维环境的所述相应视图中的视觉显著性。
113.根据权利要求103至112中任一项所述的方法,包括:
在所述第一位置处以所述第一取向显示所述第二对象时,检测将所述第一对象从所述第一对象的原始取向旋转到所述第一对象在所述三维环境中的新取向的请求;以及
响应于检测到将所述第一对象从所述第一对象的所述原始取向旋转到所述第一对象的所述新取向的所述请求:
更新所述第一对象和所述第二对象之间的空间关系以将所述第二对象以所述第一取向保持在所述第一位置处。
114.根据权利要求103至113中任一项所述的方法,包括:
响应于检测到所述第一事件,并且结合显示所述第二对象:
根据确定所述第二对象包括二维内容,将所述第一对象远离所述当前视点移动;以及
根据确定所述第二对象包括三维内容,保持所述第一对象与所述当前视点之间的空间关系。
115.根据权利要求103至114中任一项所述的方法,其中根据确定所述第一对象是与应用程序相对应的对象,响应于检测到所述第一事件,所述第二对象以与所述第一对象的第一空间关系被显示在所述三维环境中。
116.根据权利要求103至115中任一项所述的方法,其中根据确定所述第一对象是与所述计算机系统的系统级功能相对应的对象,响应于检测到所述第一事件,所述第二对象以与所述当前视点的第一空间关系被显示在所述三维环境中。
117.根据权利要求103至116中任一项所述的方法,其中根据确定所述第一对象在至少第一维度上小于所述第二对象,响应于检测到所述第一事件,根据相对于所述第一对象的第一对准配置而在所述三维环境中显示所述第二对象。
118.根据权利要求117所述的方法,其中根据确定所述第一对象在至少所述第一维度上大于所述第二对象,响应于检测到所述第一事件,根据相对于所述第一对象的第二对准配置而在所述三维环境中显示所述第二对象,所述第二对准配置不同于所述第一对准配置。
119.一种计算机系统,包括:
显示生成部件;
一个或多个输入设备;
一个或多个处理器;以及
存储器,所述存储器存储一个或多个程序,其中所述一个或多个程序被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于以下操作的指令:
在包括第一对象的三维环境的第一视图经由所述显示生成部件可见时,检测与所述第一对象相对应的事件;
响应于检测到所述第一事件而显示第二对象,其中所述第二对象是经由所述显示生成部件在所述三维环境中的第一位置处以第一取向显示的虚拟用户界面对象,并且其中在所述第一位置处以所述第一取向显示的所述第二对象面向与所述三维环境的所述第一视图相对应的所述第一视点;
在所述第一位置处以所述第一取向显示所述第二对象时,检测将当前视点从所述第一视点改变到第二视点的第一请求;以及
响应于检测到视点从所述第一视点到所述第二视点的所述改变,其中所述第二视点相对于所述第一视点旋转:
在所述三维环境的与所述第二视点相对应的第二视图中将所述第二对象从所述第一位置移动到第二位置;以及
将所述第二对象的取向从所述第一取向更新到第二取向,其中在所述第二位置处以所述第二取向显示的所述第二对象面向所述第二视点,并且其中所述第一位置和取向以及所述第二位置和取向与所述第二对象在所述三维环境中围绕所述第一对象的至少一部分的弯曲表面上的放置一致。
120.一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令在由包括第一显示生成部件和一个或多个输入设备的计算机系统执行时,使得所述计算机系统执行操作,所述操作包括:
在包括第一对象的三维环境的第一视图经由所述显示生成部件可见时,检测与所述第一对象相对应的事件;
响应于检测到所述第一事件而显示第二对象,其中所述第二对象是经由所述显示生成部件在所述三维环境中的第一位置处以第一取向显示的虚拟用户界面对象,并且其中在所述第一位置处以所述第一取向显示的所述第二对象面向与所述三维环境的所述第一视图相对应的所述第一视点;
在所述第一位置处以所述第一取向显示所述第二对象时,检测将当前视点从所述第一视点改变到第二视点的第一请求;以及
响应于检测到视点从所述第一视点到所述第二视点的所述改变,其中所述第二视点相对于所述第一视点旋转:
在所述三维环境的与所述第二视点相对应的第二视图中将所述第二对象从所述第一位置移动到第二位置;以及
将所述第二对象的取向从所述第一取向更新到第二取向,其中在所述第二位置处以所述第二取向显示的所述第二对象面向所述第二视点,并且其中所述第一位置和取向以及所述第二位置和取向与所述第二对象在所述三维环境中围绕所述第一对象的至少一部分的弯曲表面上的放置一致。
121.一种计算机系统,包括:
显示生成部件;
一个或多个输入设备;
一个或多个处理器;以及
存储器,所述存储器存储一个或多个程序,其中所述一个或多个程序被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行根据权利要求103至118所述的方法中的任一种方法的指令。
122.一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,当所述指令由包括显示生成部件和一个或多个输入设备的计算机系统执行时,使得所述计算机系统执行根据权利要求103至118所述的方法中的任一种方法。
123.一种位于计算机系统上的图形用户界面,所述计算机系统包括显示生成部件、一个或多个输入设备、存储器和用于执行存储在所述存储器中的一个或多个程序的一个或多个处理器,所述图形用户界面包括根据权利要求103至118所述的方法中的任一种方法显示的用户界面。
124.一种计算机系统,包括:
显示生成部件;
一个或多个输入设备;以及
用于执行根据权利要求103至118所述的方法中的任一种方法的装置。
125.一种在包括显示生成部件和一个或多个输入设备的计算机系统中使用的信息处理装置,所述信息处理装置包括:
用于执行根据权利要求103至118所述的方法中的任一种方法的装置。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US63/248,375 | 2021-09-24 | ||
US63/408,044 | 2022-09-19 | ||
US17/949,117 US20230106627A1 (en) | 2021-09-24 | 2022-09-20 | Devices, Methods, And Graphical User Interfaces for Interacting with Three-Dimensional Environments |
US17/949,117 | 2022-09-20 | ||
PCT/US2022/044350 WO2023049244A1 (en) | 2021-09-24 | 2022-09-22 | Devices, methods, and graphical user interfaces for interacting with three-dimensional environments |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118043766A true CN118043766A (zh) | 2024-05-14 |
Family
ID=91002735
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280064271.6A Pending CN118043766A (zh) | 2021-09-24 | 2022-09-22 | 用于与三维环境进行交互的设备、方法和图形用户界面 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118043766A (zh) |
-
2022
- 2022-09-22 CN CN202280064271.6A patent/CN118043766A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11340756B2 (en) | Devices, methods, and graphical user interfaces for interacting with three-dimensional environments | |
US20210191600A1 (en) | Devices, Methods, and Graphical User Interfaces for Displaying Applications in Three-Dimensional Environments | |
US11954242B2 (en) | Devices, methods, and graphical user interfaces for interacting with three-dimensional environments | |
CN116438505A (zh) | 用于操纵环境中的对象的方法 | |
US11995230B2 (en) | Methods for presenting and sharing content in an environment | |
US11934569B2 (en) | Devices, methods, and graphical user interfaces for interacting with three-dimensional environments | |
US20230384907A1 (en) | Methods for relative manipulation of a three-dimensional environment | |
US20230336865A1 (en) | Device, methods, and graphical user interfaces for capturing and displaying media | |
US20240028177A1 (en) | Devices, methods, and graphical user interfaces for interacting with media and three-dimensional environments | |
US20230106627A1 (en) | Devices, Methods, And Graphical User Interfaces for Interacting with Three-Dimensional Environments | |
US20230343049A1 (en) | Obstructed objects in a three-dimensional environment | |
US20230252737A1 (en) | Devices, methods, and graphical user interfaces for interacting with virtual objects using hand gestures | |
US20230092874A1 (en) | Devices, Methods, and Graphical User Interfaces for Interacting with Three-Dimensional Environments | |
CN118043766A (zh) | 用于与三维环境进行交互的设备、方法和图形用户界面 | |
US20240184356A1 (en) | Devices, Methods, and Graphical User Interfaces for Interacting with Three-Dimensional Environments | |
US20240036699A1 (en) | Devices, Methods, and Graphical User Interfaces for Processing Inputs to a Three-Dimensional Environment | |
US20230152935A1 (en) | Devices, methods, and graphical user interfaces for presenting virtual objects in virtual environments | |
WO2023049111A1 (en) | Devices, methods, and graphical user interfaces for interacting with three-dimensional environments | |
KR20240047458A (ko) | 미디어 및 3차원 환경들과의 상호작용을 위한 디바이스들, 방법들 및 그래픽 사용자 인터페이스들 | |
CN117999534A (zh) | 用于与三维环境进行交互的设备、方法和图形用户界面 | |
WO2024063786A1 (en) | Devices, methods, and graphical user interfaces for displaying shadow and light effects in three-dimensional environments | |
WO2024026024A1 (en) | Devices and methods for processing inputs to a three-dimensional environment | |
CN117957581A (zh) | 用于与三维环境交互的设备、方法和图形用户界面 | |
CN117940880A (zh) | 用于与媒体和三维环境交互的设备、方法和图形用户界面 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication |