一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于交互式三维预览的系统和方法与流程

2023-02-10 18:58:07 来源:中国专利 TAG:

用于交互式三维预览的系统和方法
1.相关申请的交叉引用
2.本技术要求2021年7月28日提交的美国临时申请号63/226,723、2022年7月22日提交的美国专利申请号17/814,455和2022年7月22日提交的美国专利申请号17/814,462的权益,这些申请的全部内容全文以引用方式并入本文以用于所有目的。
技术领域
3.本发明整体涉及用于生成三维内容预览的系统和方法,并且具体地涉及用于使用在电子设备上运行的应用程序来生成和更新三维内容预览的系统和方法。


背景技术:

4.一些计算机图形环境提供二维和/或三维环境,其中被显示供用户观察的至少一些对象是虚拟的并且由计算机生成。例如,在一些用例中,用户可以创建或修改xr环境,诸如通过使用内容生成环境(诸如在内容创建应用程序上运行的图形编辑器或图形编辑界面)来编辑、生成或以其他方式操纵xr虚拟对象。在一些实施方案中,对xr环境,包括xr环境内的内容项(例如,二维和/或三维对象)的创建或修改,可包括在内容创建过程的各个中间阶段生成内容项的预览并且向用户呈现内容项的预览。然而,以二维方式生成并且呈现给用户的内容项的此类预览受到上面运行有内容创建应用程序的设备的二维显示和图形处理特征的限制。


技术实现要素:

5.本公开的一些实施方案涉及与第二电子设备通信的第一电子设备,其中第一电子设备和第二电子设备被配置为在两者之间交换数据(例如,扩展现实(xr)内容数据)。在一些实施方案中,第一电子设备可配置有内容创建应用程序。该内容创建应用程序可用于创建xr内容(本文中也称为xr内容项),并且可用于呈现三维xr内容的二维表示。在一些实施方案中,第二电子设备可配置有三维图形渲染应用程序。该三维图形渲染应用程序可用于在第一电子设备处显示使用内容创建应用程序创建的三维xr内容的三维预览。该内容创建应用程序可以与三维图形渲染应用程序形成通信链路,使得显示在第一电子设备上的二维xr内容可以作为三维预览呈现在第二电子设备上。在一些实施方案中,该通信链路可包括在第一电子设备和/或第二电子设备上运行的一个或多个中间媒介(例如,一个或多个支持应用程序)。在一些实施方案中,可以在单个电子设备内提供内容创建应用程序和三维图形渲染应用程序。
6.本公开的一些实施方案涉及第一电子设备和第二电子设备(例如,分别是计算机和头戴式显示器)之间的三维数据的同步。内容创建应用程序可以在第一电子设备上运行,并且可以利用描述三维内容项的数据文件。可以使用内容创建应用程序和集成设计环境之间的通信链路在内容创建应用程序中启动描述内容项的数据文件。在一些实施方案中,可以在第一电子设备上显示内容项的二维表示。在一些实施方案中,数据文件可在内容创建
应用程序上运行时被编辑。在一些实施方案中,用户可以(例如,使用第一电子设备)请求预览呈三维的内容项的二维表示。第一电子设备可以(例如,响应于请求)发起与第二电子设备的数据传输。在一些实施方案中,数据文件的三维数据可以被传输到在第二电子设备上运行的第一中间媒介应用程序。第一中间媒介应用程序可以启动经由通信链路与第一中间媒介应用程序通信的第二中间媒介应用程序。第二中间媒介应用程序可以使用通信链路将数据文件的用户代码传输到三维图形渲染应用程序。在一些实施方案中,三维图形渲染应用程序可以从预览代理应用程序接收生成内容的请求,并且生成呈三维的虚拟对象。三维虚拟对象可以作为三维表示或二维表示呈现给用户。内容项的三维预览可以作为在三维xr环境中渲染的三维内容项显示在第二电子设备上。内容项的三维图形渲染可以同时呈现为显示在(例如,具有二维显示器的)第一电子设备上的内容项的二维表示。
7.本公开的一些实施方案涉及与显示在电子设备上的三维预览的用户交互和/或对显示在电子设备上的三维预览的操纵。在一些实施方案中,显示在第一电子设备上的xr内容项的二维表示可以与第二电子设备上的xr内容项的三维预览同时显示。在一些实施方案中,与在第二电子设备处接收的xr内容项的三维预览的用户交互(例如,用户输入,诸如触摸、轻击、运动、重新定向等)可以使xr内容项的三维预览的显示根据该输入被更新。在一些实施方案中,与在第二电子设备处接收的xr内容项的三维预览的用户交互可以使xr内容项的二维表示的显示根据该输入在第一电子设备处被更新。在一些实施方案中,在第二电子设备处接收的用户输入被实时地(例如,在小于阈值量的时间内)传送到第一电子设备,使得xr内容项的二维表示和xr内容项的三维预览的显示任选地同时或几乎同时(例如,在彼此的不到50ms的时间内)被更新。附图和具体实施方式中提供了对这些实施方案的全面描述,应当理解,本发明内容不以任何方式限制本公开的范围。
附图说明
8.为了更好地理解各种所述实施方案,应该结合以下附图参考下面的具体实施方式,在附图中,类似的附图标号在所有附图中往往指示对应的部分。
9.图1示出了根据本公开的实施方案的显示扩展现实环境的电子设备。
10.图2示出了根据本公开的实施方案的系统或设备的示例性架构的框图。
11.图3示出了根据本公开的实施方案的用于生成和呈现呈三维的内容项的示例性系统架构的框图。
12.图4示出了根据本公开的实施方案的显示内容项的二维表示的第一电子设备和显示内容项的三维表示的第二电子设备。
13.图5a示出了根据本公开的实施方案的使用电子设备显示的呈三维的内容项的预览。
14.图5b示出了根据本公开的实施方案的对呈三维的内容项的外观的示例性修改。
15.图6a至图6b示出了根据本公开的实施方案的示出用于生成和呈现呈三维的内容项的过程的流程图。
具体实施方式
16.物理环境是指人们在没有电子设备帮助的情况下能够对其感测和/或与其交互的
物理世界。物理环境可包括物理特征,诸如物理表面或物理对象。例如,物理环境对应于包括物理树木、物理建筑物和物理人的物理公园。人们能够诸如通过视觉、触觉、听觉、味觉和嗅觉来直接感测物理环境和/或与物理环境交互。相反,扩展现实(xr)环境是指人们经由电子设备感测和/或交互的完全或部分模拟的环境。例如,xr环境可包括增强现实(ar)内容、混合现实(mr)内容、虚拟现实(vr)内容等。在xr系统的情况下,跟踪人的物理运动的一个子集或其表示,并且作为响应,以符合至少一个物理定律的方式调节在xr系统中模拟的一个或多个虚拟对象的一个或多个特征。例如,xr系统可以检测头部移动,并且作为响应,以与此类视图和声音在物理环境中变化的方式类似的方式调节呈现给人的图形内容和声场。又如,xr系统可以检测呈现xr环境的电子设备(例如,移动电话、平板电脑、膝上型电脑等)的移动,并且作为响应,以类似于此类视图和声音在物理环境中将如何改变的方式调节呈现给人的图形内容和声场。又如,xr系统可以检测与xr环境中的一个或多个对象的交互(例如,(虚拟)触摸、轻击、捏合等),并且作为响应,以类似于此类对象或此类对象的视图在物理环境中将改变的方式的方式来调节和/或更新呈现给人的图形内容。在一些实施方案中,xr系统可响应于物理运动的表示(例如,声音命令)来调节xr环境中图形内容的特征。
17.有许多不同类型的电子系统使人能够感测和/或与各种xr环境交互。示例包括头戴式系统、基于投影的系统(包括基于全息图的系统)、平视显示器(hud)、头戴式显示器(hmd)、集成有显示能力的车辆挡风玻璃、集成有显示能力的窗户、被形成为设计用于放置在人的眼睛上的透镜的显示器(例如,类似于隐形眼镜)、耳机/听筒、扬声器阵列、输入系统(例如,具有或不具有触觉反馈的可穿戴或手持式控制器)、智能电话、平板电脑,以及台式/膝上型计算机。头戴式系统可具有集成不透明显示器和一个或多个扬声器。另选地,头戴式系统可被配置为接受外部不透明显示器(例如,智能电话)。头戴式系统可结合用于捕获物理环境的图像或视频的一个或多个成像传感器、和/或用于捕获物理环境的音频的一个或多个麦克风。头戴式系统可具有透明或半透明显示器,而不是不透明显示器。透明或半透明显示器可以具有媒介,代表图像的光通过该媒介被引导到人的眼睛。显示器可以利用数字光投影、oled、led、uled、硅基液晶、激光扫描光源或这些技术的任意组合。媒介可以是光学波导、全息图媒介、光学组合器、光学反射器、或它们的任意组合。在一些具体实施中,透明或半透明显示器可被配置为选择性地变得不透明。基于投影的系统可以采用将图形图像投影到人的视网膜上的视网膜投影技术。投影系统也可以被配置为将虚拟对象投影到物理环境中,例如作为全息图或在物理表面上。
18.在一些实施方案中,xr内容可以经由xr数据文件(数据文件)(包括脚本、可执行代码等)呈现给用户,该xr数据文件包括表示xr内容的数据和/或描述如何呈现xr内容的数据。在一些实施方案中,xr文件包括表示一个或多个xr场景的数据以及用于呈现一个或多个xr场景的一个或多个触发。例如,xr场景可以被锚定到水平的平坦表面,使得当检测到水平的平坦表面时(例如,在一个或多个相机的视野中),可以呈现xr场景。xr文件还可以包括关于与xr场景相关联的一个或多个虚拟对象的数据,以及/或者涉及xr虚拟对象的相关联的触发和动作。
19.通常,为了简化xr文件的生成和/或计算机生成的图形的编辑,可以使用包括内容生成环境(例如,编辑环境gui)的内容创建应用程序。在一些实施方案中,内容生成环境本身为xr环境(例如,二维和/或三维环境)。例如,内容生成环境可包括一个或多个虚拟对象
和真实世界对象的一个或多个表示。在一些实施方案中,虚拟对象被叠加在物理环境或其表示上方。在一些实施方案中,物理环境经由电子设备的一个或多个相机被捕获,并且在xr环境中(例如,经由显示生成部件)被主动显示。在一些实施方案中,物理环境(例如,被动地)由电子设备提供,例如,如果显示生成部件包括半透明或透明元件,用户能够通过该半透明或透明元件看到物理环境。
20.在这样的内容生成环境中,用户可以从头创建虚拟对象(包括虚拟对象的外观、虚拟对象的行为/动作和/或虚拟对象的行为/动作的触发)。附加地或另选地,虚拟对象可以由其他内容创建者创建并且被导入到内容生成环境中,其中虚拟对象可被置于xr环境或场景中。在一些实施方案中,在内容生成环境或整个环境中生成的虚拟对象(例如,经由生成xr文件并且在内容创建应用程序或xr查看器应用程序中导入或打开xr文件)可被导出到其他环境或xr场景中。
21.本公开的一些实施方案涉及第一电子设备,第一电子设备与第二电子设备通信,其中第一电子设备和第二电子设备被配置为在两者之间交换数据(例如,xr内容数据)。在一些实施方案中,第一电子设备可配置有内容创建应用程序,经由该内容创建应用程序来创建xr内容(本文中也称为xr内容项),其中内容创建应用程序包括xr内容的二维表示。在一些实施方案中,第二电子设备可配置有三维图形渲染应用程序,经由该三维图形渲染应用程序来显示经由第一电子设备的内容创建应用程序创建的xr内容的三维预览。内容创建应用程序可以与三维图形渲染应用程序形成通信链路,使得显示在第一电子设备上的二维xr内容可以作为三维预览呈现在第二电子设备上。在一些实施方案中,通信链路可以包括运行第一电子设备和第二电子设备之一或二者的一个或多个中间媒介(例如,一个或多个支持应用程序)。在一些实施方案中,可以在单个电子设备内提供内容创建应用程序和三维图形渲染应用程序。
22.本公开的一些实施方案涉及第一电子设备和第二电子设备(例如,分别是计算机和头戴式显示器)之间的三维数据的同步。内容创建应用程序可以在第一电子设备上运行,并且可以利用描述三维内容项的数据文件。可以使用内容创建应用程序和集成设计环境之间的通信链路在内容创建应用程序中启动描述内容项的数据文件。在一些实施方案中,可以在第一电子设备上显示内容项的二维表示。在一些实施方案中,数据文件可在内容创建应用程序上运行时被编辑。在一些实施方案中,用户可以(例如,使用第一电子设备)请求预览呈三维的内容项的二维表示。第一电子设备可以(例如,响应于请求)发起与第二电子设备的数据传输。在一些实施方案中,数据文件的三维数据可以被传输到在第二电子设备上运行的第一中间媒介应用程序。第一中间媒介应用程序可以启动经由通信链路与第一中间媒介应用程序通信的第二中间媒介应用程序。第二中间媒介应用程序可以使用通信链路将数据文件的用户代码传输到三维图形渲染应用程序。在一些实施方案中,三维图形渲染应用程序可以从预览代理应用程序接收生成内容的请求,并且生成呈三维的虚拟对象。三维虚拟对象可以作为三维表示或二维表示呈现给用户。内容项的三维预览可以作为在三维xr环境中渲染的三维内容项显示在第二电子设备上。内容项的三维图形渲染可以同时呈现为显示在(例如,具有二维显示器的)第一电子设备上的内容项的二维表示。
23.本公开的一些实施方案涉及与显示在电子设备上的三维预览的用户交互和/或对显示在电子设备上的三维预览的操纵。在一些实施方案中,显示在第一电子设备上的xr内
容项的二维表示可以与第二电子设备上的xr内容项的三维预览同时显示。在一些实施方案中,与在第二电子设备处接收的xr内容项的三维预览的用户交互(例如,用户输入,诸如触摸、轻击、运动、重新定向等)可以使xr内容项的三维预览的显示根据该输入被更新。在一些实施方案中,与在第二电子设备处接收的xr内容项的三维预览的用户交互可以使xr内容项的二维表示的显示根据该输入在第一电子设备处被更新。在一些实施方案中,在第二电子设备处接收的用户输入被实时地(例如,在小于阈值量的时间内)传送到第一电子设备,使得xr内容项的二维表示和xr内容项的三维预览的显示任选地同时或几乎同时(例如,在彼此的不到50ms的时间内)被更新。附图和具体实施方式中提供了对这些实施方案的全面描述,应当理解,本发明内容不以任何方式限制本公开的范围。
24.图1示出了根据本公开的实施方案的显示xr环境(例如,计算机生成的环境)的电子设备100。在一些实施方案中,电子设备100为手持式设备或移动设备,诸如平板电脑、膝上型电脑、智能电话或头戴式显示器。下面参考图2的结构框图来描述设备100的示例。如图1所示,电子设备100和桌面120位于物理环境110中。在一些实施方案中,电子设备100可被配置为捕获物理环境110的包括桌面120和植物156的区域(在电子设备100的视野中示出)。在一些实施方案中,响应于触发,电子设备100可被配置为在计算机生成的环境(例如,由图1中所示的椅子和桌子表示)中显示虚拟对象130,该虚拟对象不存在于物理环境110中,但显示在定位在(例如,锚定到)真实世界桌面120的计算机生成的表示120'的顶部上的计算机生成的环境中。例如,虚拟对象130可以响应于检测到物理环境110中的桌面120的平面表面而显示在经由设备100显示的计算机生成的环境中的桌面120'的表面上。如图1的示例中所示,计算机生成的环境可包括附加的真实世界对象的表示,诸如真实世界植物156的表示156'。应当理解,虚拟对象130是代表性的虚拟对象,并且可以在三维计算机生成的环境中包括并且渲染一个或多个不同的虚拟对象(例如,具有各种维度的虚拟对象,诸如二维或三维虚拟对象)。例如,虚拟对象可表示在计算机生成的环境中显示的应用程序或用户界面。在一些实施方案中,应用程序或用户界面可包括内容应用程序的内容项(例如,照片、视频等)的显示。在一些实施方案中,虚拟对象任选地被配置为交互式的并且响应于用户输入,使得用户可以虚拟地触摸、轻击、移动、旋转或以其他方式与虚拟对象进行交互。另外,应当理解,本文所述的3d环境(或3d虚拟对象)可以是在电子设备处投影或呈现的3d环境(或三维虚拟对象)的表示。
25.在以下讨论中,描述了与显示生成部件和一个或多个输入设备通信的电子设备。应当理解,电子设备任选地与一个或多个其他物理用户界面设备通信,诸如触敏表面、物理键盘、鼠标、操纵杆、手部跟踪设备、眼睛跟踪设备、触笔等。此外,如上所述,应当理解,所描述的电子设备、显示器和触敏表面任选地分布在两个或更多个设备之间。因此,如本公开所用,在电子设备上或由电子设备显示的信息任选地用于描述由电子设备输出以在独立的显示设备(触敏或非触敏)上显示的信息。类似地,如本公开所用,在电子设备上接收的输入(例如,在电子设备的触敏表面上接收的触摸输入,或者在触笔的表面上接收的触摸输入)任选地用于描述在独立的输入设备上接收的输入,电子设备从该独立的输入设备接收输入信息。
26.该设备通常支持多种应用程序,诸如以下应用程序中的一个或多个应用程序:绘图应用程序、呈现应用程序、文字处理应用程序、网站创建应用程序、盘编辑应用程序、电子
表格应用程序、游戏应用程序、电话应用程序、视频会议应用程序、电子邮件应用程序、即时消息应用程序、健身支持应用程序、照片管理应用程序、数字相机应用程序、数字视频相机应用程序、web浏览应用程序、数字音乐播放器应用程序、电视频道浏览应用程序、和/或数字视频播放器应用程序。另外,设备可支持用于生成或编辑计算机生成的图形和/或xr环境的内容的内容创建应用程序(例如,具有内容生成环境的应用程序)。另外,设备可以支持用于生成xr内容和/或xr环境并且将其以三维方式显示的三维图形渲染应用程序。
27.图2示出了根据本公开的实施方案的系统或设备250的示例性架构的框图。在一些实施方案中,设备250为移动设备,诸如移动电话(例如,智能电话)、平板计算机、膝上型计算机、台式计算机、头戴式显示器、与另一设备通信的辅助设备等。设备250任选地包括各种传感器(例如,一个或多个手部跟踪传感器、一个或多个位置传感器、一个或多个图像传感器、一个或多个触敏表面、一个或多个运动和/或取向传感器、一个或多个眼睛跟踪传感器、一个或多个麦克风或其他音频传感器等)、一个或多个显示生成部件、一个或多个扬声器、一个或多个处理器、一个或多个存储器和/或通信电路。一个或多个通信总线任选地用于设备250的上述部件之间的通信。
28.在一些实施方案中,如图2所示,系统/设备250可以在多个设备之间划分。例如,第一设备260任选地包括处理器218a、一个或多个存储器220a、通信电路222a,以及任选地通过通信总线208a进行通信的显示生成部件214a。第二设备270(例如,对应于设备200)任选地包括各种传感器(例如,一个或多个手部跟踪传感器202、一个或多个位置传感器204、一个或多个图像传感器206、一个或多个触敏表面208、一个或多个运动和/或取向传感器210、一个或多个眼睛跟踪传感器212、一个或多个麦克风213或其他音频传感器等)、一个或多个显示生成部件214b、一个或多个扬声器216、一个或多个处理器218b、一个或多个存储器220b和/或通信电路222b。一个或多个通信总线208b任选地用于设备270的上述部件之间的通信。第一设备260和第二设备270任选地经由两个设备之间的有线或无线连接(例如,经由通信电路222a至222b)进行通信。
29.通信电路222a、222b任选地包括用于与电子设备、网络(诸如互联网、内联网、有线网络和/或无线网络、蜂窝网络和无线局域网(lan))通信的电路。通信电路222a、222b任选地包括用于使用近场通信(nfc)和/或短程通信诸如进行通信的电路。
30.处理器218a、218b包括一个或多个通用处理器、一个或多个图形处理器和/或一个或多个数字信号处理器。在一些实施方案中,存储器220a、220b是存储计算机可读指令的非暂态计算机可读存储介质(例如,闪存存储器、随机存取存储器,或其他易失性或非易失性存储器或存储装置),这些计算机可读指令被配置为由处理器218a、218b执行以执行下文描述的技术、过程和/或方法。在一些实施方案中,存储器220a、220b可包括多于一个非暂态计算机可读存储介质。非暂态计算机可读存储介质可以是可有形地包含或存储计算机可执行指令以供指令执行系统、装置和设备使用或与其结合的任何介质(例如,不包括信号)。在一些实施方案中,存储介质是暂态计算机可读存储介质。在一些实施方案中,存储介质是非暂态计算机可读存储介质。非暂态计算机可读存储介质可包括但不限于磁存储装置、光学存储装置、和/或半导体存储装置。此类存储装置的示例包括磁盘、基于cd、dvd或蓝光技术的光盘,以及持久性固态存储器诸如闪存、固态驱动器等。
31.在一些实施方案中,显示生成部件214a、214b包括单个显示器(例如,液晶显示器
(lcd)、有机发光二极管(oled)或其他类型的显示器)。在一些实施方案中,显示生成部件214a、214b包括多个显示器。在一些实施方案中,显示生成部件214a、214b可包括具有触摸能力(例如,触摸屏)的显示器、投影仪、全息投影仪、视网膜投影仪等。在一些实施方案中,设备270包括用于接收用户输入诸如轻击输入和轻扫输入或其他手势的触敏表面208。在一些实施方案中,显示生成部件214b和触敏表面208形成触敏显示器(例如,与设备270集成的触摸屏或在设备270外部的与设备270通信的触摸屏)。
32.设备270任选地包括图像传感器206。图像传感器206任选地包括一个或多个可见光图像传感器(诸如电荷耦合器件(ccd)传感器)和/或可操作以从真实世界环境获得物理对象的图像的互补金属氧化物半导体(cmos)传感器。图像传感器206还任选地包括一个或多个红外(ir)传感器,诸如无源ir传感器或有源ir传感器,用于检测来自真实世界环境的红外光。例如,有源ir传感器包括用于将红外光发射到真实世界环境中的ir发射器。图像传感器206还任选地包括一个或多个相机,该一个或多个相机被配置为捕获真实世界环境中的物理对象的移动。图像传感器206还任选地包括一个或多个深度传感器,该一个或多个深度传感器被配置为检测物理对象与设备270的距离。在一些实施方案中,来自一个或多个深度传感器的信息可以允许设备标识真实世界环境中的对象并且将其与真实世界环境中的其他对象区分开。在一些实施方案中,一个或多个深度传感器可以允许设备确定真实世界环境中的对象的纹理和/或形貌。
33.在一些实施方案中,设备270组合使用ccd传感器、事件相机和深度传感器来检测设备270周围的物理环境。在一些实施方案中,图像传感器206包括第一图像传感器和第二图像传感器。第一图像传感器和第二图像传感器协力地工作,并且任选地被配置为捕获真实世界环境中的物理对象的不同信息。在一些实施方案中,第一图像传感器是可见光图像传感器,并且第二图像传感器是深度传感器。在一些实施方案中,设备270使用图像传感器206来检测设备270和/或显示生成部件214在真实世界环境中的位置和取向。例如,设备270使用图像传感器206来跟踪显示生成部件214b相对于真实世界环境中的一个或多个固定对象的位置和取向。
34.在一些实施方案中,设备270包括麦克风213或其他音频传感器。设备270使用麦克风213来检测来自用户和/或用户的真实世界环境的声音。在一些实施方案中,麦克风213包括任选地协力地操作的麦克风阵列(多个麦克风),以便标识环境噪声或定位真实世界环境的空间中的声源。
35.设备270包括用于检测设备270和/或显示生成部件214b的位置的位置传感器204。例如,位置传感器204可包括从一个或多个卫星接收数据并且允许设备270确定该设备在物理世界中的绝对位置的gps接收器。
36.设备270包括用于检测设备270和/或显示生成部件214b的取向和/或移动的取向传感器210。例如,设备270使用取向传感器210来跟踪设备270和/或显示生成部件214b的位置和/或取向的变化,诸如相对于真实世界环境中的物理对象的变化。取向传感器210任选地包括一个或多个陀螺仪和/或一个或多个加速度计。
37.在一些实施方案中,设备270包括手部跟踪传感器202和/或眼睛跟踪传感器212。手部跟踪传感器202被配置为跟踪用户的手部的一个或多个部分的位置/地点,以及/或者用户的手部的一个或多个部分相对于扩展现实环境、相对于显示生成部件214b以及/或者
相对于另一个限定的坐标系的运动。眼睛跟踪传感器212被配置为跟踪用户的目光(更一般地,眼睛、面部或头部)相对于真实世界或扩展现实环境以及/或者相对于显示生成部件214b的位置和移动。在一些实施方案中,手部跟踪传感器202和/或眼睛跟踪传感器212与显示生成部件214b一起实施。在一些实施方案中,手部跟踪传感器202和/或眼睛跟踪传感器212与显示生成部件214b分开实施。
38.在一些实施方案中,手部跟踪传感器202可以使用从包括一只或多只手(例如,人类用户的一只或多只手)的真实世界捕获三维信息的图像传感器206(例如,一个或多个ir相机、3d相机、深度相机等)。在一些实施方案中,可以用足够的分辨率来分辨手部,以区分手指及其相应位置。在一些实施方案中,一个或多个图像传感器206相对于用户定位以定义图像传感器206的视野和交互空间,在该交互空间中由图像传感器捕获的手指/手部位置、取向和/或移动被用作输入(例如,与用户的休息中的手部或真实世界环境中的其他人的其他手部进行区分)。跟踪用于输入的手指/手部(例如,手势、触摸、轻击等)可能是有利的,因为这不需要用户触摸、握持或穿戴任何类型的信标、传感器或其他标记。
39.在一些实施方案中,眼睛跟踪传感器212包括朝向用户的眼睛发射光的至少一个眼睛跟踪相机(例如,红外(ir)相机)和/或照明源(例如,ir光源,诸如led)。眼睛跟踪相机可以指向用户的眼睛,以直接或间接地从眼睛接收来自光源的反射ir光。在一些实施方案中,通过相应的眼睛跟踪相机和照明源分别跟踪两只眼睛,并且可以通过跟踪两只眼睛来确定焦点/目光。在一些实施方案中,通过相应的眼睛跟踪相机/照明源来跟踪一只眼睛(例如,主眼)。
40.设备270和系统250不限于图2的部件和配置,而是可包括处于多种配置的更少的部件、其他的部件或附加部件。在一些实施方案中,系统250可以在单个设备中实施。使用系统250的人在本文中任选地称为设备的用户。现在关注用于生成和呈现内容的三维预览以及在电子设备诸如电子设备260和电子设备270上实现的相关联的过程的示例性系统架构。该系统架构可以描述从在第一电子设备上运行的内容创建应用程序到在第二电子设备上运行的三维图形渲染应用程序的数据流和数据传输。在一些实施方案中,下面描述的系统的处理可以由设备260和270的处理器218a、218b操作。
41.图3示出了根据本公开的实施方案的用于生成和呈现三维内容项的示例性系统架构300的框图。如上所述,在第一电子设备上运行的内容创建应用程序中创建的内容项(例如,xr内容项,诸如图1中的虚拟对象130)可以经由在第二电子设备上运行的三维图形渲染应用程序以三维预览,该第二电子设备任选地与第一电子设备通信。如上所述,第一电子设备可以为移动或非移动计算设备,诸如移动电话(例如,智能电话)、平板计算机、膝上型计算机或台式计算机,并且第二电子设备可以是头戴式显示器、投影仪、全息图生成器、与另一设备通信的辅助设备等。如下所述,内容创建应用程序可以响应于用户以三维方式预览内容项的请求,经由通信链路将对应于内容项的图形数据传送到三维图形渲染应用程序,该三维图形渲染应用程序可以生成并且呈现内容项的三维预览。
42.虽然在内容创建应用程序中创建的内容项的某些方面可以以二维(例如,颜色、二维维度诸如高度和宽度、平面视图等)方式被捕获,但其他方面无法被捕获。具体地,如果在内容创建应用程序中创建的内容项旨在以及/或者被明确地设计成在三维环境中显示,则二维预览可以向设计者(即,用户)提供关于三维内容的外观的不完整信息。另选的视图(例
如,侧视图和后视图)、表面纹理、照明效果等在二维预览内可能不可见或不可捕获。此外,为了观看内容的另选视图,例如,用户可能需要为每个另选视图生成新的预览,这增加了设计、预览和修改内容项的工作流程的时间和工作量,并且因此增加了复杂性。因此,如下所述,在数字内容创建过程的设计阶段期间,提供三维预览可能特别有用。
43.在一些实施方案中,如图3所示,使用第一电子设备360(例如,对应于图2中的260)的用户可以在内容创建应用程序310(“cc应用程序”)中工作。该内容创建应用程序任选地与集成设计环境312(ide)通信。内容创建应用程序310和/或ide 312利用描述设计成用于与三维操作系统一起使用(例如,设计成用于三维图形环境)的内容项(例如,定义内容项(例如,一个或多个虚拟对象)的外观、动作、反应性等)的数据文件(例如,包括脚本、可执行代码等)。在一些实施方案中,可以使用ide312之间的通信链路320将描述内容项的数据文件上载到内容创建应用程序310以及/或者在该内容创建应用程序中启动。在一些实施方案中,可以在第一电子设备上(例如,经由图2中的显示生成部件214a)显示内容项的二维表示。应当理解,二维表示是第一电子设备的二维显示的函数,但二维表示可以表示三维内容。在一些实施方案中,内容项的二维表示可显示在内容创建应用程序的显示器ui内。在一些实施方案中,内容项的二维表示可以显示在与内容创建应用程序分开的显示器ui(例如,在与内容创建应用程序通信的第二应用程序上运行的显示器ui)内。应当理解,内容创建应用程序正在第一电子设备上运行,并且被上载到内容创建应用程序的数据文件可以被存储在第一电子设备上(例如,存储在存储器220a中或者从基于web的存储器下载和访问)。在一些实施方案中,数据文件可在内容创建应用程序上运行时被编辑。在这样的一些实施方案中,脚本、可执行代码等可以显示在内容创建应用程序的显示器ui的一部分中,使得用户可以在第一电子设备处直接编辑脚本、可执行代码等的部分。如果适用,对数据文件进行的编辑可以更新显示在第一电子设备处的内容项的二维表示。如本文所述,在一些实施方案中,对数据文件的编辑可在与内容创建应用程序310通信的ide 312中实现。
44.在一些实施方案中,用户可请求(例如,使用第一电子设备)以三维方式预览内容项的二维表示。作为示例,内容创建应用程序可包括可选用户界面元素(例如,显示在显示器ui上或显示在内容创建应用程序中或与内容创建应用程序通信的某些其他ui处),该可选用户界面元素在被选择时生成请求。在一些实施方案中,可以使用与第一电子设备通信的一个或多个输入设备来输入请求,诸如通过按压键盘上的一个或多个按键或鼠标上的按钮。响应于该请求,如图3所示,第一电子设备可以发起与第二电子设备370(例如,对应于图2中的设备270)的数据传输。如图3所示,第二电子设备370可配置有用于生成内容项的三维预览的一个或多个应用程序。可以使用第二电子设备将内容项作为内容项的三维表示呈现给用户,并且可以在第一电子设备处显示内容项的二维表示。第一电子设备可以使用通信链路322与第二电子设备通信。通信链路322可以是任何合适的有线或无线通信手段,包括但不限于通用串行总线(usb)、wi-fi或(例如,无线传输),或者,如果所公开的架构300在单个电子设备上实现,则经由跨进程通信(例如,处理器间通信)。
45.在一些实施方案中,数据文件的三维数据(例如,数据文件内的脚本/可执行代码等的全部或部分)可以被传输到在第二电子设备上运行的第一中间媒介应用程序314。作为示例,第一中间媒介应用程序可以是预览外壳(preview shell)应用程序,该预览外壳应用程序被配置为接收从第一电子设备的内容创建应用程序传输的数据文件的脚本、可执行代
码等的全部或部分,并且响应于接收到数据文件(或其部分),启动预览外壳。在一些实施方案中,预览外壳应用程序任选地是用于第二电子设备的可信应用程序(例如,第一方应用程序),使得加载在预览外壳应用程序内的数据、脚本、可执行代码等受到保护。预览外壳应用程序314可以启动第二中间媒介应用程序316,该第二中间媒介应用程序可以是经由通信链路324与预览外壳应用程序314通信的预览代理应用程序。在一些实施方案中,运行在第二电子设备370上的预览代理应用程序316可被配置为执行从第一电子设备提供的、经由预览外壳应用程序314传送到第二电子设备的代码(例如,脚本的三维图形数据表示、数据文件的可执行代码等)。预览代理应用程序可以使用通信链路326将可执行代码传输到三维图形渲染应用程序318。在一些实施方案中,可以包括预览外壳应用程序314和预览代理应用程序316,以允许可以由预览代理应用程序318执行的不可信应用程序或未授权应用程序(例如,第三方应用程序)在第一电子设备和第二电子设备之间的安全通信,而没有安全风险或者使第二电子设备的硬件或软件崩溃的风险。在一些实施方案中,三维图形渲染应用程序318(3d图形渲染应用程序)可以从预览代理应用程序314接收生成内容的请求,并且生成呈三维的虚拟对象。三维虚拟对象可以三维表示或二维表示呈现给用户。内容项的三维预览可以作为在三维xr环境中渲染的三维内容项(例如,经由图2中的显示生成部件214b)显示在第二电子设备上。内容项的三维图形渲染可以呈现为在(例如,具有二维显示器的)第一电子设备上显示的内容项的二维表示。因此,如上所述,可以在第一电子设备和第二电子设备之间以及在第一电子设备和第二电子设备上运行的应用程序之间,并且更具体地,在第一电子设备的内容创建应用程序310和第二电子设备的三维图形渲染应用程序318之间建立一个或多个通信信道或链路。
46.作为示例,数据文件内的代码的三维内容预览可以为用户提供关于xr环境中的内容的外观的有用的视觉反馈。在一些实施方案中,对在内容创建应用程序中运行的数据文件的编辑或修改可以创建对三维预览的外观的对应的改变,该三维预览可以在第二电子设备以及/或者在第一电子设备处被渲染和呈现给用户。作为示例,用户可能希望编辑或修改内容项的一个或多个特征,并且根据编辑或修改来观看内容项的新的三维预览。例如,用户可以经由与第一电子设备通信的一个或多个输入设备(例如,键盘)重写数据文件的脚本、可执行代码等的部分,任选地,同时在第一电子设备上显示内容项的二维表示,并且使用第二电子设备向用户同时呈现内容项的三维预览。用户可以(例如,通过保存对数据文件的改变)最终完成编辑或修改,并且可以请求表示数据文件的内容项的新预览。附加地或另选地,一旦由用户完成编辑或修改,就可以自动请求新的预览。可以用上述方式将新的(例如,新更新的)数据从内容创建应用程序传输到三维渲染应用程序,并且可以更新当前使用第二电子设备呈现的内容项的三维预览,使得内容项的三维预览具有更新的外观。在一些实施方案中,可以对显示在第一电子设备上的内容项的二维表示进行对应的更新。
47.如上所述,预览外壳应用程序可以是仅执行可信代码的可信应用程序,并且预览代理应用程序可以是被配置成执行不可信应用程序代码(例如,由第三方应用程序开发者生成)的应用程序。图3所示的系统架构300允许与数据文件中的内容的创建(以及内容的动画化)相对应的脚本、可执行代码等在第二电子设备上的预览代理应用程序内执行,但可能包括不可信代码。因此,所公开的三维预览系统的一个优点在于,在第一电子设备处写入的不可信用户数据和代码可以被安全地传送到第二电子设备并且在第二电子设备上执行,以
在第二设备上生成和呈现数据的三维预览(并且在第一设备上以二维表示),同时保持第一电子设备和第二电子设备之间的通信安全,而不损害第二电子设备的硬件和/或软件。例如,在数据文件内的用户代码在执行期间崩溃的情况下,可以保护第一设备和/或第二电子设备免受不可信代码的可能的影响(例如,避免使设备崩溃)。
48.如上所述,内容项的三维预览可以显示在第二电子设备上,而内容项的二维表示也同时(例如,在时间上部分或完全同延)显示在第一电子设备上。在一些实施方案中,图3所示的系统架构300可以在单个电子设备(例如,膝上型计算机、台式计算机、移动设备等)中提供,而不是在两个电子设备之间实现和分布。例如,三维图形渲染应用程序可以被提供在模拟器内或至少部分地被提供为模拟器,该模拟器被配置为以三维方式生成用于计算机生成的环境的内容,而不会由于电子设备的二维显示特性(例如,二维显示)而以三维表示来呈现内容。在这样的一些实施方案中,响应于接收到以三维方式显示内容项的请求,三维图形渲染应用程序可以在模拟器的计算机生成的环境内(例如,在电子设备的显示器上的不同窗口中)将呈三维的内容的预览生成和呈现为二维表示。附加地或另选地,在一些实施方案中,内容创建应用程序可以直接或间接地可通信地链接到在与内容创建应用程序相同的电子设备上运行的三维图形渲染应用程序。在这样的一些实施方案中,数据文件的脚本、可执行代码等的全部或部分可以被传输到设备上的三维图形渲染应用程序318。在此类实施方案中,三维图形渲染应用程序可以任选地配置有例如预览外壳应用程序和预览代理应用程序的至少部分功能性。在一些实施方案中,可以省略内容创建应用程序和三维图形渲染应用程序之间的中间应用程序中的一个或多个中间应用程序。在一些此类实施方案中,中间应用程序中的一个或多个中间应用程序的功能性可被实现为内容创建应用程序或三维图形渲染应用程序的一部分。另外,应当理解,在一些实施方案中,请求可以从如图3所示的内容创建应用程序传播到三维图形渲染应用程序,但是来自三维图形渲染应用程序的经渲染的三维内容可以更直接地通信回内容创建应用程序,以减少生成三维内容和将其显示在第一电子设备上之间的等待时间。
49.应当理解,虽然在本文中被称为应用程序,但中间媒介系统部件(例如,预览外壳和预览代理)可以被提供或实现为与第二电子设备的处理器(例如,处理器218b)内单独地或组合地执行的一个或多个软件,而不是被提供为分立的应用程序。如上所述,在一些实施方案中,可以对沿第一电子设备和第二电子设备之间的通信信道传送的图形数据进行同步。在这样的一些实施方案中,内容创建应用程序和三维渲染应用程序之间的通信信道可以是双向的,从而允许数据在两者之间沿任一方向传输。这样,如参考图5a至图5b详细讨论的,用户可以与内容项的三维预览进行交互,使得用户交互不仅影响内容项的三维预览的外观,而且还影响内容创建应用程序处的内容项的二维表示的外观。
50.现在关注内容项的二维表示和内容项的对应的三维预览的示例性同时显示。如上所述,可以在第一电子设备上(例如,经由内容创建应用程序)显示内容项的二维表示,并且可以在第二电子设备上(例如,经由三维图形渲染应用程序)同时显示内容项的三维预览。图4示出了根据本公开的实施方案的显示内容项464的二维表示的第一电子设备460和显示内容项(例如,一个或多个虚拟对象430)的三维表示的第二电子设备。
51.如图4所示,环境468中的第一电子设备460可包括示出编辑环境gui的内容创建应用程序462。如图所示,编辑环境gui可显示在第一电子设备460上,该第一电子设备例如可
以是台式计算设备,并且可以与一个或多个输入设备466通信。如图4所示,第二电子设备(即,与第二电子设备(例如,对应于图2中的电子设备270)相关联的视点,该第二电子设备可以为例如头戴式显示器)可以呈现包括三维预览应用程序434的三维环境468或环境468的表示(例如,由x、y和z轴定义的3d计算机生成的环境)。如本文所述,三维预览应用程序434可包括内容432,并且对应的内容可以在由二维内容464表示的内容创建应用程序中以二维方式显示。
52.在图4的示例中,三维内容432可包括一个或多个虚拟对象430,诸如椅子、桌子、杯子等,但应当理解,这些对象仅仅是代表性的,并且一个或多个不同的虚拟对象(例如,2d或3d对象)可以在内容创建应用程序(包括多个形状、对象、符号、文本、数字等)内导入或设计,并且被包括在3d预览应用程序434中。
53.另外,应当理解,在本文中描述并且使用第二电子设备(例如,头戴式显示器)呈现的3d环境(或3d虚拟对象)可以是同时显示在第一电子设备上(例如,显示在第一电子设备的2d屏幕上)的二维(2d)环境(或2d虚拟对象)的三维表示。在一些实施方案中,3d预览应用程序434可以显示栅格线或其他指示符以向内容创建者提供关于虚拟对象在3d环境中的放置和/或大小的信息。
54.如上所述,用户可能希望预览在内容创建应用程序中或在第一电子设备上的ide中设计和/或编辑的内容项,因为该内容旨在以三维形式出现。在图4的示例中,用户可正在设计包括一个或多个虚拟对象(例如,椅子、桌子、杯子等)的xr场景。该场景可包括被专门设计用于在三维xr环境(例如,计算机游戏、应用程序、电影、电视节目等)内显示的虚拟对象。这样,内容创建者能够(例如,响应于输入)以三维方式预览场景内的一个或多个虚拟对象的当前状态(例如,当前外观、形式、视角等)和/或行为可能是特别有利的。如上所述,当参考图3时,用户可以请求在第一电子设备460上的内容创建应用程序462(或ide)内以三维方式预览内容(例如,通过选择在内容创建应用程序内显示的“预览”用户界面元素)。如图4所示,可以使用第二电子设备来呈现内容432的三维预览。另外,可以在第一电子设备460上显示所生成的内容(例如,二维内容464)的二维表示。在一些实施方案中,可以使用第二电子设备同时呈现第一电子设备406的表示及其内容的二维预览,使得第二电子设备的用户与环境468中的二维内容464和三维内容432同时呈现。应当理解,三维内容432的预览的生成和呈现可以由上述以及图3所示的示例性系统300来执行。因此,所公开的三维预览生成系统和方法的一个优点在于,可以呈现正在被创建的内容项的三维预览,以向用户提供关于内容项在实际具体实施中的外观和/或行为的即时且准确的反馈(例如,这可仅可能使用第二电子设备的硬件和软件或第二电子设备的模拟器)。
55.在一些实施方案中,用户可能希望与显示在第二电子设备上的内容的三维预览进行交互,例如,以获得关于正在经由内容创建应用程序设计的内容和/或内容的行为的附加视角和反馈。作为示例,在第二电子设备处,用户可以缩放、放大/缩小、旋转和/或移动三维内容432(例如,通过选择在3d环境468内显示的用户界面元素以及/或者通过执行手势(例如,手指轻击和捏合))。附加地或另选地,在一些实施方案中,用户可以使用与第一电子设备460通信的一个或多个输入设备466来缩放、放大/缩小、旋转和/或移动三维预览(例如,通过经由鼠标点击来选择在内容创建应用程序462内显示的用户界面元素或者经由键盘来输入命令序列)。在预览中操纵三维内容432可以允许用户以三维方式获得更全面的(以及
更有用的)视觉反馈,诸如内容项从任何方向/视角的另选视图(例如,侧视图和/或后视图)、内容项的表面纹理和/或色彩、内容的一个或多个虚拟对象430之间的空间关系、一个或多个虚拟对象430的深度视角,以及其他可能性。这种视觉反馈可能难以或不可能经由2d表示获得。使用该视觉反馈,用户然后可以实时地对内容进行编辑。
56.作为示例,用户可以经由一个或多个输入设备466编辑在内容创建应用程序462中运行的脚本、可执行代码等,以改变正在使用第二电子设备预览的内容432的一个或多个虚拟对象430的外观。例如,用户可能希望改变内容432的一个或多个虚拟对象430的颜色、大小、表面纹理等,添加、删除或重新定位内容项的一个或多个虚拟对象,以及/或者添加、删除或修改与输入相关联的不同行为。在已经对二维内容项的表示进行了编辑或修改之后,可以使用第二电子设备来更新内容432的三维预览,使得用户可以可视地分析呈三维的内容的新外观,如先前参考图3所讨论的。因此,所公开的三维预览生成系统和方法的一个优点在于,正在创建的内容项的三维预览可以被实时更新(例如,在50ms或更短的时间内),以向用户提供关于对正在创建的内容项的外观和形式的改变的即时且准确的反馈。
57.在一些实施方案中,可以响应于第二电子设备的视点的改变(例如,与头戴式显示器相关联的视点的改变)来改变和/或更新内容的三维预览的呈现。在这样的一些实施方案中,穿戴、持有或以其他方式通过第二电子设备的显示器观看的用户可以相对于正在显示的3d环境468重新定向与第二电子设备相关联的视点。例如,用户可以“步行绕过”在3d环境468内显示的内容432,以获得一个或多个虚拟对象430的另选侧视图(或来自较高角度或较低角度的内容的视图(例如,顶视图))。当用户移动第二电子设备的视点时,预览应用程序434中的三维内容432的预览可以在3d环境468内保持固定(例如,相对于真实世界环境在位置和取向上固定)。
58.附加地或另选地,用户能够通过与内容的三维预览进行交互来编辑当前正在以三维方式预览的内容可能是特别有利的。现在关注经由电子设备(例如,头戴式显示器)显示的内容项的示例性三维预览。如下所述,在电子设备(例如,对应于上述第二电子设备)处接收的用户输入可以改变在电子设备上显示的三维预览的外观,这可以同时改变在内容创建应用程序(例如,在台式计算机上)中显示的内容项的二维表示的外观。
59.图5a示出了根据本公开的实施方案的使用电子设备显示的三维内容项的预览。如上所述,当参考图4时,在第一电子设备上的内容创建应用程序中创建的内容可以在第二电子设备上以三维形式预览,以提供关于呈三维的内容的外观和形式的视觉反馈。继续图4的示例,图5a示出了在电子设备(例如,对应于上述第二电子设备)上的3d预览应用程序534内显示的一个或多个虚拟对象,诸如椅子531、杯子533和桌子535。如下所述,用户可以在电子设备处与内容项(例如,一个或多个虚拟对象)531、533和535进行交互,以改变此类对象的外观或行为。在一些实施方案中,对象的外观和/或行为的改变可导致内容的二维表示的修改(例如,对应于图4中的464),并且因此编辑或修改定义/描述内容的数据文件。
60.重新参考图3,可以在第一电子设备上的内容创建应用程序和第二电子设备上的3d图形渲染应用程序之间交换三维内容数据,其中可以双向交换3d内容数据。如上所述,对定义在内容创建应用程序中运行的内容的数据文件的脚本、可执行代码等的改变可导致对第一电子设备上的内容的二维表示的对应的改变,并且因此导致对第二电子设备上的内容的三维预览的对应的改变。另外,在一些实施方案中,对在第二电子设备上的3d图形渲染应
用程序中运行的内容的三维预览的改变可导致对在第一电子设备上的内容的二维表示的对应的改变,并且因此导致对定义内容的数据文件的脚本、可执行代码等的对应的改变。例如,参考图5a,用户可能希望相对于3d预览应用程序534的杯子533和桌子535的位置来改变椅子531的位置。
61.图5b示出了根据本公开的实施方案的对呈三维的内容项的外观的示例性修改。如上所述,可以在电子设备处接收输入,其中该输入是与内容项的三维预览的用户交互。作为示例,用户可以(例如,经由手指轻击/触摸)虚拟地选择椅子531,并且在继续显示3d预览应用程序534时将椅子531拖动到与3d环境内的椅子的初始位置相对的新位置,如图5b的示例所示。如图所示,内容项531、533和535的三维预览相对于图5a的示例中所示的内容项531、533和535的初始定位已经改变。如上所述,在电子设备处对内容项的三维预览的这种改变可以改变/修改定义内容项的数据文件。例如,重新参考图3,椅子531的重新定位可以改变在3d图形渲染应用程序318中运行的3d数据。然后,对3d数据的这种改变可以传播到预览代理应用程序、预览外壳应用程序等,返回到内容创建应用程序。内容创建应用程序310可以根据椅子531的重新定位来更新内容项的二维表示,然后可以将其转换成ide 312中的数据文件的脚本、可执行代码等中的对应的改变(例如,对数据文件的脚本、可执行代码等中列出的坐标定义的对应的改变)。这样,如上所述,在(第二)电子设备(例如,头戴式显示器)处接收的对应于与内容项的三维预览的交互的用户输入可以通过对定义第一电子设备处的内容创建应用程序中的内容项的数据文件的改变来捕获。因此,第一电子设备和第二电子设备之间的3d数据的同步的优点在于,同步允许用户在第一电子设备或第二电子设备的任一者或两者上作为3d数据工作并且与用户代码进行交互。另外,所公开的通过在三维空间中操纵内容项来修改内容项的外观的过程可以通过提供编辑图形数据文件的脚本、可执行代码等的简单且直观的操作来改善用户体验。因此,另一个优点是与三维预览的一个或多个虚拟对象的用户交互可以提供更容易且更精确的对象操纵和/或修改。
62.在一些实施方案中,内容项以二维和三维方式同时显示可以提供多用户体验。例如,根据本文所述的一些实施方案,第一用户可以操作包括内容创建应用程序的第一电子设备(例如,台式计算机),并且第二用户可以操作包括至少3d图形渲染应用程序的第二电子设备(例如,头戴式显示器)。如上所述,内容创建应用程序可包括内容项,这些内容项包括在第一电子设备上显示为二维表示的一个或多个虚拟对象(例如,531、533和535)。3d图形渲染应用程序可被配置为在第二电子设备上(例如,在3d预览应用程序534中)以三维方式显示内容项的预览。因此,第一用户可以在第一电子设备上观看内容项的二维表示,并且第二用户可以同时在第二电子设备上观看内容项的三维预览。然后,第一用户和第二用户可以通过分别单独地操作第一电子设备和第二电子设备来协作地观看、修改和更新内容项。如上所述,对相应电子设备上的内容项进行的编辑或修改使得根据编辑或修改来更新另一电子设备上的内容项的对应的表示。因此,第一用户和第二用户可以分别主动地与内容项的二维表示和三维表示进行交互,以协作地修改并且最终完成内容项的外观和形式。因此,另一优点在于,在第一电子设备上以二维方式同时显示内容项以及在第二电子设备上以三维方式同时显示内容项可以在操作第一电子设备的第一用户与操作第二电子设备的第二用户之间提供高效且更为简便的用户协作。
63.应当理解,图5a至图5b中所示的虚拟对象(例如,531、533和535)是示例性的,并且
可以在3d预览应用程序534内提供另选的和/或附加的虚拟对象。还应当理解,虽然在图5a至图5b中未明确示出,但是虚拟对象的二维表示可以在用户的视图内(例如,在第一电子设备上)同时显示,如贯穿本公开所讨论的。还应当理解,如本文所述,内容项的二维表示和内容项的对应的三维预览可以同时显示在单个电子设备上(例如,使用运行3d图形渲染应用程序的模拟器应用程序)。还应当理解,当在第二电子设备处接收到对内容的三维预览的改变时,如上所述,第二电子设备的视点内的真实世界对象(例如,真实世界桌子、来自灯的照明/阴影效果等)可以不被内容的二维表示捕获(例如,真实世界桌子的二维表示不被渲染和显示在第一电子设备上)。因此,除了可响应于环境输入提供三维表示的第二电子设备之外,第一电子设备上的二维表示与第二电子设备上的三维表示的比较可用于区分由可能不反映内容本身的改变的三维内容(例如,照明效果等)引起的行为。
64.图6a至图6b示出了根据本公开的实施方案的示出用于生成和呈现呈三维的内容项的过程600的流程图。如图6a所示,在602处,第一电子设备(例如,台式计算机、膝上型计算机、平板计算机、移动设备等)显示内容创建应用程序,该内容创建应用程序可包括内容项(例如,一个或多个对象)的二维表示。在一些实施方案中,可以在604处在第一电子设备处(例如,经由与第一电子设备通信的一个或多个输入设备)接收以三维方式预览内容项的请求。该请求任选地对应于对内容创建应用程序内显示的“预览”用户界面元素的选择。在一些实施方案中,可以从ide中代码的执行接收请求。在606处,可以使用第二电子设备(例如,头戴式显示器或与第一电子设备通信的其他投影系统/设备)来生成和呈现呈三维的内容项的预览。
65.在一些实施方案中,如上所述,所公开的过程600可以利用内容预览系统(例如,对应于图3所示的系统300)来生成和呈现呈三维的内容项。例如,如图6b所示,生成和呈现呈三维的内容项可包括在622处建立第一电子设备和第二电子设备之间的通信链路,以及在630处将对应于内容项的二维表示的图形数据(例如,3d图形数据)传送到第二电子设备处的三维图形渲染应用程序。在一些实施方案中,如图6b所示,在第一电子设备和第二电子设备之间建立通信链路任选地包括:在624处,在第一电子设备处的内容创建应用程序和第二电子设备处的预览外壳应用程序之间建立通信;在626处,在第二电子设备处在预览外壳应用程序和预览代理应用程序之间建立通信;以及在628处,在第二电子设备处在预览代理应用程序和3d图形渲染应用程序之间建立通信。如图所示,将对应于内容项的二维表示的图形数据传送到3d图形渲染应用程序任选地包括:在632处,在第二电子设备处(例如,经由有线或无线连接)将图形数据从内容创建应用程序传送到预览外壳应用程序;在634处,在第二电子设备处(例如,经由交叉处理通信)将图形数据从预览外壳应用程序传送到预览代理应用程序;以及在636处,在第二电子设备处(例如,经由交叉处理通信)将图形数据从预览代理应用程序传送到3d图形渲染应用程序。
66.参考图6a,在608处,当使用第二电子设备呈现呈三维的内容项并且使用第一电子设备同时显示内容项的二维表示时,在610处,任选地在第二电子设备处接收输入。在一些实施方案中,输入任选地是与第二电子设备处呈现的三维内容项的交互(例如,手指轻击或手指触摸、与第二电子设备相关联的视点的重新定向,或与内容项的一个或多个对象的拖放交互)。根据该输入,在612处,在614处任选地更新使用第二电子设备呈现的呈三维的内容项的外观(例如,三维预览的外观基于该输入改变),并且在616处更新第一电子设备上显
示的内容项的二维表示的外观(例如,内容项的二维表示的外观基于该输入改变)。
67.应当理解,过程600是示例,并且可以按相同或不同的顺序执行更多、更少或不同的操作。另外,上述过程600中的操作任选地通过运行信息处理设备诸如通用处理器(例如,如关于图2所述)或专用芯片中的一个或多个功能模块以及/或者由图2的其他部件来实现。
68.因此,根据上述内容,本公开的一些实施方案涉及一种生成三维预览的方法。该方法可以包括:在第一电子设备处显示包括第一内容项的二维表示的内容创建应用程序;在第一电子设备处接收预览呈三维的第一内容项的请求;使用第二电子设备生成和呈现呈三维的第一内容项;以及在使用第二电子设备呈现呈三维的第一内容项并且使用第一电子设备同时显示第一内容项的二维表示时:在第二电子设备处接收输入;以及根据该输入,更新使用第二电子设备呈现的呈三维的第一内容项的外观,并且更新在第一电子设备上显示的第一内容项的二维表示的外观。
69.附加地或另选地,在一些实施方案中,第一电子设备可以为膝上型计算机、台式计算机或平板计算机。附加地或另选地,在一些实施方案中,第二电子设备可以为头戴式显示器。
70.附加地或另选地,在一些实施方案中,该方法还可以包括使用第二电子设备捕获使用第二电子设备的一个或多个输入设备的真实世界环境的至少一部分。附加地或另选地,在一些实施方案中,生成和呈现呈三维的第一内容项可包括呈现该真实世界环境的该捕获部分的表示。
71.附加地或另选地,在一些实施方案中,捕获真实世界环境的该部分可包括捕获第一电子设备和内容创建应用程序,并且生成和呈现呈三维的第一内容项可包括呈现第一电子设备和内容创建应用程序的表示,该表示包括第一内容项的二维表示。
72.附加地或另选地,在一些实施方案中,该方法还可以包括使用第二电子设备捕获包括使用第二电子设备的一个或多个输入设备的光源的真实世界环境的至少一部分。附加地或另选地,在一些实施方案中,生成和呈现呈三维的第一内容项可以包括呈现由于第一内容项和光源之间的交互而引起的照明效果,并且更新使用第二电子设备呈现的三维第一内容项的外观可以包括改变照明效果的外观。附加地或另选地,在一些实施方案中,在第一电子设备上显示的第一内容项的二维表示的外观可以不包括照明效果。
73.附加地或另选地,在一些实施方案中,在第二电子设备处接收的输入可以是与呈三维的第一内容项的交互,该交互包括使用一根或多根手指或使用第二电子设备的一个或多个输入设备来选择呈三维的第一内容项。附加地或另选地,在一些实施方案中,在第二电子设备处接收的输入可以是第二电子设备相对于呈三维的第一内容项的重新定向。
74.附加地或另选地,在一些实施方案中,内容创建应用程序可包括第二内容项的二维表示,并且该方法还可以包括:生成和呈现呈三维的第二内容项;在使用第二电子设备呈现呈三维的第一内容项和第二内容项并且使用第一电子设备同时显示第一内容项和第二内容项的二维表示时:在第二电子设备处接收输入;以及根据该输入,更新使用第二电子设备呈现的呈三维的第一内容项和第二内容项的外观,以及更新在第一电子设备上显示的第一内容项和第二内容项的二维表示的外观。
75.附加地或另选地,在一些实施方案中,该方法还可以包括:在第一电子设备和第二电子设备之间建立通信链路;以及经由该通信链路将对应于第一内容项的内容项数据从第
一电子设备传送到第二电子设备处的三维图形渲染应用程序,并且将以三维方式生成的第一内容项传送到第一电子设备。
76.附加地或另选地,在一些实施方案中,更新使用第二电子设备呈现的呈三维的第一内容项的外观和更新在第一电子设备上显示的第一内容项的二维表示的外观可包括:根据输入修改对应于呈三维的第一内容项的内容数据;经由通信链路将对应于呈三维的第一内容项的经修改的内容数据从三维图形渲染应用程序传送到内容创建应用程序。
77.附加地或另选地,在一些实施方案中,建立该通信链路可包括:在第一电子设备处的内容创建应用程序和第二电子设备处的预览外壳应用程序之间建立第一通信链路;在第二电子设备处在预览外壳应用程序和预览代理应用程序之间建立第二通信链路;以及在第二电子设备处在预览代理应用程序和三维图形渲染应用程序之间建立第三通信链路。
78.附加地或另选地,在一些实施方案中,将内容项数据从第一电子设备传送到第二电子设备处的三维图形渲染应用程序可包括:经由第一通信链路将内容项数据从第一电子设备处的内容创建应用程序传送到第二电子设备处的预览外壳应用程序;在第二电子设备处经由第二通信链路将内容项数据从预览外壳应用程序传送到预览代理应用程序;以及在第二电子设备处经由第三通信链路将内容项数据从预览代理应用程序传送到三维图形渲染应用程序。
79.本公开的一些实施方案涉及一种包括第一电子设备和第二电子设备的系统。该系统可包括:一个或多个处理器;存储器;以及一个或多个程序,该一个或多个程序被存储在存储器中并且被配置为由一个或多个处理器执行。该一个或多个程序可包括用于执行任何上述方法的指令。
80.本公开的一些实施方案涉及非暂态计算机可读存储介质。非暂态计算机可读存储介质可以存储一个或多个程序,该一个或多个程序包括指令,这些指令在由包括第一电子设备和第二电子设备的系统的一个或多个处理器执行时,使该系统执行上述方法中的任一种方法。
81.本公开的一些实施方案涉及一种包括第一电子设备和第二电子设备的系统。该系统还可以包括:一个或多个处理器;存储器;以及用于执行任何上述方法的装置。
82.本公开的一些实施方案涉及在包括第一电子设备和第二电子设备的系统中使用的信息处理设备。该信息处理设备还可以包括用于执行任何上述方法的装置。
83.本公开的一些实施方案涉及一种生成和更新内容的三维预览的方法。该方法可包括:在与显示器和一个或多个输入设备通信的第一电子设备处:经由显示器显示包括第一内容项的二维表示的内容创建应用程序;在显示包括第一内容项的二维表示的内容创建应用程序时,经由一个或多个输入设备接收与预览呈三维的第一内容项的请求相对应的输入;以及根据该输入,向第二电子设备传送在第二电子设备处生成第一内容项的三维表示的请求;在第一电子设备处接收对应于第一内容项的三维表示的信息;以及更新在第一电子设备处显示的第一内容项的二维表示的外观。
84.附加地或另选地,在一些实施方案中,第一电子设备可以为膝上型计算机、台式计算机或平板计算机。附加地或另选地,在一些实施方案中,第二电子设备可以为头戴式显示器。
85.附加地或另选地,在一些实施方案中,向第二电子设备传送在第二电子设备处生
成第一内容项的三维表示的请求可包括:在第一电子设备和第二电子设备之间建立通信链路;以及经由通信链路将对应于第一内容项的内容项数据从第一电子设备传送到第二电子设备处的三维图形渲染应用程序。
86.附加地或另选地,在一些实施方案中,在第一电子设备处接收对应于第一内容项的三维表示的信息可包括在内容创建应用程序处经由通信链路从三维图形渲染应用程序接收对应于第一内容项的三维表示的经修改的内容项数据。
87.本公开的一些实施方案涉及一种电子设备。该电子设备可以包括:一个或多个处理器;存储器;以及一个或多个程序,该一个或多个程序被存储在存储器中并且被配置为由一个或多个处理器执行。该一个或多个程序可包括用于执行任何上述方法的指令。
88.本公开的一些实施方案涉及非暂态计算机可读存储介质。一种可以存储一个或多个程序的非暂态计算机可读存储介质,该一个或多个程序包括指令,这些指令在由电子设备的一个或多个处理器执行时,使电子设备执行上述方法中的任一种方法。
89.本公开的一些实施方案涉及一种电子设备。该电子设备还可以包括:一个或多个处理器;存储器;以及用于执行任何上述方法的装置。
90.本公开的一些实施方案涉及在电子设备中使用的信息处理设备。该信息处理设备还可以包括用于执行任何上述方法的装置。
91.本公开的一些实施方案涉及一种生成和更新内容的三维预览的方法。该方法可包括:在与显示器和一个或多个输入设备通信的第一电子设备处:经由一个或多个输入设备捕获包括显示内容创建应用程序的第二电子设备的真实世界环境的至少一部分;从第二电子设备接收预览呈三维的第一内容项的请求;以及根据该请求,生成第一内容项的三维表示,并且在三维环境内呈现第一内容项的三维表示;将第一内容项的三维表示传送到第二电子设备以在第二电子设备处显示;经由所述一个或多个输入设备来接收输入;根据该输入:更新第一内容项的三维表示在三维环境中的外观;以及将第一内容项的三维表示的更新的外观传送到第二电子设备。
92.附加地或另选地,在一些实施方案中,第一电子设备可以为头戴式显示器。附加地或另选地,在一些实施方案中,第二电子设备可以为膝上型计算机、台式计算机或平板计算机。
93.附加地或另选地,在一些实施方案中,该方法还可以包括呈现真实世界环境的捕获部分的表示。真实世界环境的捕获部分的表示可包括:第二电子设备的表示包括内容创建应用程序的表示;以及在内容创建应用程序中显示的第一内容项的表示。
94.附加地或另选地,在一些实施方案中,该方法还可以包括经由一个或多个输入设备捕获真实世界环境的光源。附加地或另选地,在一些实施方案中,呈现第一内容项的三维表示可包括呈现由于第一内容项和光源之间的交互而引起的照明效果,并且更新第一内容项的三维表示在三维环境中的外观可包括改变照明效果的外观。
95.附加地或另选地,在一些实施方案中,将第一内容项的三维表示的更新的外观传送到第二电子设备可以不包括关于照明效果的信息。
96.附加地或另选地,在一些实施方案中,经由一个或多个输入设备接收的输入可以是与第一内容项的三维表示的交互,该交互包括使用一根或多根手指以及/或者使用一个或多个输入设备来选择第一内容项的三维表示。
97.附加地或另选地,在一些实施方案中,经由一个或多个输入设备接收的输入可以是第一电子设备在真实世界环境内的重新定向或重新定位。
98.附加地或另选地,在一些实施方案中,该方法还可以包括:在第一电子设备和第二电子设备之间建立通信链路。附加地或另选地,在一些实施方案中,接收来自第二电子设备的预览呈三维的第一内容项的请求可包括:在第一电子设备处经由通信链路从第二电子设备在三维图形渲染应用程序处接收对应于第一内容项的内容项数据。附加地或另选地,在一些实施方案中,将第一内容项的三维表示传送到第二电子设备以在第二电子设备处显示可包括:经由通信链路将以三维方式生成的第一内容项传送到第二电子设备。
99.附加地或另选地,在一些实施方案中,建立通信链路可包括:在第一电子设备处的预览外壳应用程序和第二电子设备处的内容创建应用程序之间建立第一通信链路;在第一电子设备处在预览外壳应用程序和预览代理应用程序之间建立第二通信链路;以及在第一电子设备处在预览代理应用程序和三维图形渲染应用程序之间建立第三通信链路。
100.附加地或另选地,在一些实施方案中,从第二电子设备在三维图形渲染应用程序处接收对应于第一内容项的内容项数据可包括:在第一电子设备处在预览外壳应用程序处经由第一通信链路从第二电子设备处的内容创建应用程序接收内容项数据;在第一电子设备处经由第二通信链路将内容项数据从预览外壳应用程序传送到预览代理应用程序;以及在第一电子设备处经由第三通信链路将内容项数据从预览代理应用程序传送到三维图形渲染应用程序。
101.本公开的一些实施方案涉及一种电子设备。该电子设备可以包括:一个或多个处理器;存储器;以及一个或多个程序,该一个或多个程序被存储在存储器中并且被配置为由一个或多个处理器执行。该一个或多个程序可包括用于执行任何上述方法的指令。
102.本公开的一些实施方案涉及非暂态计算机可读存储介质。一种可以存储一个或多个程序的非暂态计算机可读存储介质,该一个或多个程序包括指令,这些指令在由电子设备的一个或多个处理器执行时,使电子设备执行上述方法中的任一种方法。
103.本公开的一些实施方案涉及一种电子设备。该电子设备还可以包括:一个或多个处理器;存储器;以及用于执行任何上述方法的装置。
104.本公开的一些实施方案涉及在电子设备中使用的信息处理设备。该信息处理设备还可以包括用于执行任何上述方法的装置。
105.出于解释的目的,前面的描述是通过参考具体实施方案来描述的。然而,上面的例示性论述并非旨在是穷尽的或将本发明限制为所公开的精确形式。根据以上教导内容,很多修改形式和变型形式都是可能的。选择和描述实施方案是为了最佳地阐明本发明的原理及其实际应用,以便由此使得本领域的其他技术人员能够最佳地使用具有适合于所构想的特定用途的各种修改的本发明以及各种所描述的实施方案。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献