空 挡 广 告 位 | 空 挡 广 告 位

苹果专利提出用于开发/调试AR/VR环境内容的IDE

查看引用/信息源请点击:映维网Nweon

用于开发和/或调试扩展现实环境内容的IDE

Vision Pro QQ群交流653565822

(映维网资讯)集成开发环境(IDE)提供了用于开发和调试计算机可执行内容的用户界面。现有的IDE可能不会优化用于开发和调试在沉浸式三维环境中使用的内容,并且可能无法充分方便用户开发和测试沉浸式内容。

所以在名为“Three-dimensional programming environment”的专利申请中,苹果提出了一种用于开发和/或调试扩展现实环境内容的IDE。

用于IDE的控件可以呈现为:第一组选项(如用于IDE的全套控件)或第二组选项(如具有用于IDE的缩减控件集的迷你播放器)。在一个实施例中,第一组选项可以锚定在3D环境内,而第二组选项可以可变地定位(例如基于用户的手)和/或基于情景(例如用户是否正在运行、编辑调试代码等)来提供。

在示例性用例中,锚定的用户界面可以为处理XR内容的用户提供一整套IDE功能。用户可能能够站起来四处走动以检查内容或在远离完整IDE功能集的3D位置播放内容。在远离完整的IDE功能集时,用户可以使用迷你播放器的第二组选项来访问特定IDE功能集,而不必返回到完整的IDE功能集所在的位置。

在一个实施例中,只有当第一组选项不在视图中时,才显示迷你播放器。可替换地,迷你播放器可以提供将第一选项集重新定位到当前位置的选项。

苹果指出,发明的一个创新方面可以体现在这样一个动作:呈现具有用于在3D环境中使用内容的第一组选项的第一组视图,其中第一组视图是从第一组视点提供;基于用户交互数据确定呈现用于在三维环境中使用该内容的第二组选项,其中第二组选择包括比第一组选择更少的选项;并且根据确定呈现第二组选项,呈现包括第二组可选项的第二集视图,其中第二集视图是从三维环境中的第二组视点提供。

图1示出了示例性操作环境100。在示例中,示例性操作环境100包括示例性物理环境105,其包括诸如桌子130和植物132之类的物理对象。另外,物理环境105包括持有设备120的用户102,而设备120配置为提供扩展现实环境。在一个实施例中,设备120可以是平板电脑,在其他实施例中,设备120可以是头戴式近眼显示器。

视图205A-C包括与IDE 210的特征(例如IDE窗口-1212和IDE窗口-214)相对应的内容以及经由IDE 210开发的内容。例如,示例性IDE窗口-1212呈现多个部分,包括用于代码编译器、代码解释器、类浏览器、对象浏览器、类层次图等的控件。

示例性IDE窗口-2 214将源代码编辑器呈现为编码接口。IDE窗口-2 214内的编码接口可以允许用户在执行内容220期间或者在特定时间显示内容220时直接对代码进行改变。在调试会话期间,用户可以利用IDE 210进行调试,使用集成调试器,支持在编辑器中设置断点、可视化呈现步骤等。

可选地,IDE 210和/或正在开发的内容220包括多个可以由用户或系统在观看环境内的任何3D位置中选择和移动的部分。例如,用户可能已经将IDE 210定位在桌子表示230上方(例如,在3D位置)。类似地,设备120可以使用户能够控制或指定关于IDE 210和/或正在开发的内容220的定位的偏好,例如,IDE内容是否总是固定在3D位置、固定在3D定位直到满足条件,或者提供在固定的设备位置,例如。

可选地,正在开发的内容220对应于或包括3D内容。例如,可以执行或以其他方式播放正在开发的内容220,以提供一个或多个静态、移动或交互式3D对象。由设备120提供的视图可以提供正在开发的内容220的3D描绘的单独表示。例如,视图可以包括预览应用窗口中的内容220,其中预览应用窗口呈现篮球的2D描绘和表示篮球的虚拟对象260的3D描绘。

视图可以仅呈现正在开发的内容的2D视图,仅呈现正在发展的内容的3D视图,或者呈现2D视图和3D视图两者。另外,正在开发的内容可以包括2D部分和3D部分。例如,正在开发的内容可以是具有包括一个或多个3D对象的2D用户界面的应用程序。视图可以在2D预览窗口中提供2D部分,并且使用一个或多个3D表示来呈现3D部分。

可选地,设备120可以使用户能够检查虚拟对象260的3D描绘。设备可以使得能够从不同的视点检查虚拟对象260的3D描绘,例如,通过固定虚拟对象260相对于物理环境105的3D位置,并且使得用户能够在不同的观看位置周围移动并查看虚拟对象260 3D描绘的不同侧面。

在开发期间检查这种虚拟对象260的能力可以促进、简化和提高开发过程的效率。正在开发的内容220可以具有基于时间的和/或包括交互式特征,并且视图可以便于播放、测试和/或调试这些特征。例如,预览窗口可以使用户能够播放和观看内容的基于时间的2D部分。

可选地,正在开发的IDE 210和/或内容220定位为出现在3D环境内的特定3D位置。例如,如图所示,内容可以包括在物理环境内的3D位置描绘的IDE 210(例如IDE窗口-1212和IDE窗口-214)和内容220(例如虚拟多媒体应用程序)。

在图2A的示例中,IDE 210和正在开发的内容220以它们看起来定位在桌子表示230上方的3D位置。

可选地,内容(例如IDE 210)呈现在相对于物理环境105的锚定的3D位置中。因此,对于来自不同视点的不同视图,内容出现在混合现实环境中的固定3D位置中。如图2A所示,基于相对于3D环境的定义的3D坐标位置,将正在开发的IDE 210和/或内容220显示在桌面表示230上方的设备120的显示器上的相应位置处。

来自不同视点的视图可以基于固定的3D坐标位置,因此IDE 210和正在开发的内容220可以看起来锚定在物理环境105中(例如桌子表示230之上)。当用户改变视点时,例如通过在使用IDE 210开发内容220的同时移动设备120,IDE 210和正在开发的内容220保持锚定在桌面表示230之上。

因此,如果设备120移动到不同的视点,则在设备120提供的视图中,正在开发的IDE 210和内容220保持锚定在桌面表示230之上。

可选地,IDE 210和正在开发的内容220相对于3D环境保持锚定而与情景无关。例如,图2B示出了设备120的第二视图205B,第二视图与对应于第一视图205A的视点显著不同。尽管视点不同,正在开发的IDE 210和内容220依然锚定在相同的3D坐标位置。当视点充分改变时,例如当用户将设备相对于其原始视点向后转动时,IDE 210和220的内容在视图中可能根本不可见。在这种情况下,用户将需要改变视角以再次查看IDE 210和正在开发的内容220并与之交互。

可选地,IDE 210和/或正在开发的内容220保持锚定,直到满足条件为止,例如,视点改变超过阈值,在这一点上,内容重新定位在新的锚定位置,或者转换为锚定到显示器的像素位置而非3D位置。例如,可以基于确定IDE 210和/或内容220在当前视图中不再可见来自动重新定位IDE 210和/或内容220。

可选地,IDE 210和/或正在开发的内容220锚定到设备120的显示器的像素位置,并且因此相对于3D环境不锚定到相同的3D坐标位置。因此,当设备120移动通过一系列不同的视点时,正在开发的IDE 210和内容220将不会保持锚定在桌面表示230之上。

相反,正在开发的IDE 210和内容220可以锚定到设备120的显示器的相同像素位置,并且因此在用户移动或重新定向设备时看起来与用户一起移动。

例如,图2C示出了从与图2B中相同的视角的另一视图。然而,IDE 210和内容220不是保持固定在桌面表示230上方,而是保持位于视图的中心(类似于视图205A)。

可以基于IDE 210和内容220锚定到设备120的显示器上的像素位置而不是锚定到3D坐标位置来提供这种设备固定视图。

有利的是,将IDE 210和/或内容220定位在相对于物理环境的锚定位置,例如,在桌面表示230上方,并且当IDE 210从用户的当前观点看不可见和/或不容易访问时,为用户提供访问IDE 210的一些或全部特征的替代机制。

例如,具有第一组IDE选项的第一组视图(例如,IDE 210)可以提供在与第一组视图相对应的视图中。可以在与第二组视点相对应的视图中提供具有第二组IDE选项的第二组视图。完整的和有限的IDE选项的不同集合的这种显示可以促进在3D环境中使用IDE来开发、播放、测试和/或调试内容。

图3示出了由设备120提供的示例视图305。视图包括物理环境105内的一组有限的IDE选项,例如IDE迷你播放器310。例如,当用户移动以从不同位置观看虚拟对象26时,可以呈现视图305。图3中所示的视图305提供了从特定视点观察物理环境105。因此,视图305包括来自该视点的植物表示232。从这个角度来看,图2A-C的IDE 210的至少一部分是不可见的和/或不容易访问的。

视图305中包括的IDE迷你播放器310包括多个控制选项(例如控制图标320、322、324、326、328)。在示例中,控制图标320在启动时显示额外的控制图标。控制图标322在启动时关闭控制图标的当前视图。当启动时,控制图标324向用户呈现正在开发的内容的不同视角。当启动时,控制图标326呈现同时开发的多条内容。例如,正在开发的内容可以包括在编程/调试期间可以同时呈现的几个不同级别的窗口。

可以基于情景来确定所提供的IDE控件(例如控件图标320、322、324、326、328)的数量和/或提供哪些IDE控件。情景可以包括当前开发活动(例如用户当前是否正在设计、编码、播放、测试、调试等)、用户的位置或移动、正在开发的内容的类型、用户频繁或最近使用的控件、用户的偏好等。IDE迷你播放器310可以基于检测到的情景变化而随时间进行调整。例如基于用户的移动,IDE迷你播放器310可以最小化为一个图标(例如图标320),或者仅向用户呈现一小组控件。

IDE迷你播放器310的IDE控件的配置可以基于用户交互来选择和提供。在一个实施例中,基于用户的手的位置、配置和/或姿势来选择不同的控制特征。

如图3所示,基于检测到用户的手302是静止的和/或用户的手掌向上张开的,设备120可以确定呈现所示的一组控制图标320、322、324、326、328。相反,基于检测到用户的手302不是静止的或者检测到用户手302对应于闭合的第一个,控制图标320、322、324、326、328可以隐藏而看不见。

图4示出了由图1的设备提供的示例视图405。视图405包括物理环境105内的一组有限的IDE选项(例如IDE迷你播放器410)。图4中所示的视图405提供了从特定视点观察物理环境105。因此,视图405包括来自该视点的植物表示232。从这个角度来看,图2A-C的IDE 210的至少一部分是不可见的和/或不容易访问的。

视图405包括对正在开发的内容的描述、描述正在开发内容的3D外观的虚拟对象260、以及IDE迷你播放器410的控制选项。控制选项可以提供IDE功能和特征,包括用于播放、交互、测试和/或调试应用程序414和/或虚拟对象260的功能和特征。

当启动/点击/轻击控制图标422时,关闭控制图标的当前视图。当启动/点击/轻击时,控制图标424执行编码特征和/或编码接口。如图所示,控制图标426和428使得用户能够与应用程序414交互。

图5是示例性方法500的流程图表示。

在502,呈现具有用于在3D环境中使用内容的第一组选项的第一组视图,其中从3D环境中的第一组视点提供第一组视图。例如,当用户坐着开发将提供内容的应用程序时,IDE的视图可以呈现在用户桌子上方的锚定位置。

在504,于用户交互数据确定呈现用于在3D环境中使用内容的第二组选项。

在506,根据确定呈现第二组选项,呈现包括第二组选择的第二组视图。

可选地,呈现3D环境的视图包括呈现物理环境的至少一部分的视频透视图像。

图6示出了示例环境600的系统流程图。

示例性环境600的系统流程从物理环境的传感器获取环境数据602,并且从IDE和应用程序获取IDE/应用数据604,集成环境数据602和IDE/应用程序数据604,获得用户交互数据,并且生成用于用户查看IDE和/或应用程序的执行的交互显示数据。

例如,本文所述的IDE迷你播放器技术可以允许佩戴头显的用户例如能够起身离开以检查内容或在位于更远的环境中播放内容,并且使用IDE迷你播放器的第二组选项来访问一些选项,而不必返回到IDE被锚定的位置。

在示例实现中,环境600包括应用数据管道,应用数据管道获取或获得IDE/应用数据。例如,IDE/应用程序数据604可以包括IDE窗口606、607和内容608。IDE/应用程序数据604可以包括3D内容和用户交互数据。

在一个示例实现中,环境600包括3D环境集成指令集610,其配置有可由处理器执行以生成集成数据612的指令。例如,3D环境集成指令集610获得环境数据602,获得IDE/应用程序数据604,集成环境数据和IDE/应用程序数据,并生成集成数据612。

例如,3D环境集成指令集610分析环境数据602以生成物理环境的3D表示,并将IDE/应用程序数据与3D表示集成,使得用户在应用程序的执行期间将IDE和应用程序视为3D表示之上的叠加。

在示例实现中,环境600同时包括用户交互指令集620,用户交互指令集中配置有可由处理器执行的指令,以从3D环境集成指令集610获取集成数据612并从与IDE和应用程序的用户交互中获得用户交互数据632。

例如,用户交互指令集620可以在IDE和虚拟多媒体应用程序的执行期间基于用户交互信息以及对IDE和内容的改变来交互用户的数据。特别地,如示例环境624中所示,用户的手626示为张开的手掌,其可以启动具有相关IDE控件的IDE迷你播放器628。

相关专利Apple Patent | Three-dimensional programming environment

名为“Three-dimensional programming environment”的苹果专利申请最初在2022年3月提交,并在日前由美国专利商标局公布。

本文链接https://news.nweon.com/120473
转载须知:转载摘编需注明来源映维网并保留本文链接
素材版权:除额外说明,文章所用图片、视频均来自文章关联个人、企业实体等提供
QQ交流群苹果Vision  |  Meta Quest  |  微软HoloLens  |  AR/VR开发者  |  映维粉丝读者

您可能还喜欢...

资讯