根据不同的显示模式显示渲染的体积表示的制作方法

文档序号:33319194发布日期:2023-03-03 19:07阅读:33来源:国知局
根据不同的显示模式显示渲染的体积表示的制作方法

1.本公开涉及显示内容,并且具体地涉及根据各种显示模式显示体积内容。


背景技术:

2.设备可以在显示器的2d内容区域内显示二维(2d)内容项。在一些情况下,设备生成并显示2d内容项的体积表示。生成2d内容项的体积表示包括计算上昂贵且费时的复杂渲染过程。在各种情况下,设备响应于接收显示请求而启动渲染过程。因此,相对较大的延迟与接收显示请求、生成体积表示以及显示体积表示之间的转变相关联。相对较大的延迟通常导致显示不期望的视觉伪影,从而降低用户体验。


技术实现要素:

3.根据一些实施例,在具有一个或多个处理器、非暂态存储器和显示器的电子设备处执行一种方法。该方法包括渲染第一体积对象以便生成第一对象数据。该方法包括在显示器上根据第一显示模式显示第一对象数据。第一显示模式包括在2d内容区域内显示第一对象数据。该方法包括检测从第一显示模式改变为第二显示模式的请求。该方法包括响应于检测请求,在显示器上根据第二显示模式显示第一对象数据。第二显示模式包括在物理环境的表示内显示第一对象数据。
4.根据一些实施例,一种电子设备包括一个或多个处理器、非暂态存储器和显示器。一个或多个程序被存储在非暂态存储器中并且被配置为由一个或多个处理器执行,并且一个或多个程序包括用于执行或导致执行本文所述的方法中的任一种方法的操作的指令。根据一些实施例,一种非暂态计算机可读存储介质中存储有指令,当由电子设备的一个或多个处理器执行时,这些指令使得该设备执行或导致执行本文所述方法中的任一种方法的操作。根据一些实施例,一种电子设备包括用于执行或导致执行本文所述的方法中的任一种方法的操作的装置。根据一些实施例,一种用于在电子设备中使用的信息处理装置包括用于执行或导致执行本文所述方法中的任一种方法的操作的装置。
附图说明
5.为了更好地理解各种所述实施例,应结合以下附图参考下面的具体实施方式,其中类似的附图标号在所有附图中指示对应的部分。
6.图1是根据一些实施例的便携式多功能设备的示例的框图。
7.图2a至图2j是根据一些实施例的在执行相应显示模式转变之前渲染体积对象的示例。
8.图3是根据一些实施例的用于根据不同的显示模式显示渲染的体积对象的系统的框图的示例。
9.图4是根据一些实施例的根据不同的显示模式显示渲染的体积对象的方法的流程图的示例。
10.图5是根据一些实施例的操纵渲染的体积对象的方法的流程图的示例。
具体实施方式
11.设备可以在显示器的2d内容区域内显示2d内容项,诸如在网页内显示2d缩略图。在一些情况下,设备生成并显示2d内容项的体积表示。例如,在2d内容区域内显示2d内容项时,设备接收请求显示2d内容项的体积(例如,三维(3d))表示的输入。基于该输入,设备生成并显示2d内容项的体积表示。生成2d内容项的体积表示包括计算上昂贵且费时的渲染过程。因此,相对较大的延迟与接收输入、生成体积表示以及显示体积表示之间的转变相关联。相对较大的延迟通常导致显示不期望的视觉伪影,从而降低用户体验。
12.相比之下,本文公开的各种实施例包括用于在执行与显示体积对象相关联的显示模式转变之前渲染体积对象的方法、系统和电子设备,从而提供显示模式之间的更加无缝的转变。为此,电子设备渲染体积对象以便生成对象数据。对象数据指示体积对象的体积表示。此外,电子设备根据第一显示模式显示对象数据,包括在2d内容区域内显示第一对象数据。例如,电子设备在网页内显示长沙发的渲染的3d模型。随后,电子设备检测从第一显示模式改变为第二显示模式的请求。基于该请求,电子设备根据第二显示模式显示第一对象数据,包括在物理环境的表示内显示第一对象数据(例如,长沙发的渲染的3d模型)。物理环境的表示提供物理环境的3d表示。与其他设备相比,在检测请求之前生成对象数据实现更快和更加无缝的(例如,更少的视觉伪影)显示模式转变。
13.描述
14.现在将详细地参考实施例,这些实施例的示例在附图中示出。下面的详细描述中示出许多具体细节,以便提供对各种所描述的实施例的充分理解。但是,对本领域的普通技术人员将显而易见的是,各种所描述的实施例可以在没有这些具体细节的情况下被实践。在其他情况下,没有详细地描述众所周知的方法、过程、部件、电路和网络,从而不会不必要地使实施例的各个方面晦涩难懂。
15.还将理解的是,虽然在一些情况下,术语“第一”、“第二”等在本文中用于描述各种元件,但是这些元件不应受到这些术语限制。这些术语只是用于将一个元件与另一元件区分开。例如,第一接触可被命名为第二接触,并且类似地,第二接触可被命名为第一接触,而不脱离各种所描述的实施例的范围。第一接触和第二接触均为接触,但它们不是同一个接触,除非上下文另外明确指示。
16.在本文中对各种所述实施例的描述中所使用的术语只是为了描述特定实施例的目的,而并非旨在进行限制。如在对各种所述实施例的描述中和所附权利要求书中所使用的那样,单数形式“一个”(“a”、“an”)和“该”旨在也包括复数形式,除非上下文另外明确地指示。还将理解的是,本文中所使用的术语“和/或”是指并且涵盖相关联的所列出的项目中的一个或多个项目的任何和全部可能的组合。还将理解的是,术语“包括”(“includes”、“including”、“comprises”和/或“comprising”)在本说明书中使用时是指定存在所陈述的特征、整数、步骤、操作、元件和/或部件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、部件和/或其分组。
17.如本文中所使用,根据上下文,术语“如果”任选地被解释为意指“当
……
时”或“在
……
时”或“响应于确定”或“响应于检测到”。类似地,根据上下文,短语“如果确定
……”
或“如果检测到[所陈述的条件或事件]”任选地被解释为意指“在确定
……
时”或“响应于确定
……”
或“在检测到[所陈述的条件或事件]时”或“响应于检测到[所陈述的条件或事件]”。
[0018]
物理环境是指人们在没有电子设备帮助的情况下能够对其感测和/或与其交互的物理世界。物理环境可包括物理特征,诸如物理表面或物理对象。例如,物理环境对应于包括物理树木、物理建筑物和物理人的物理公园。人们能够诸如通过视觉、触觉、听觉、味觉和嗅觉来直接感测物理环境和/或与物理环境交互。相反,扩展现实(xr)环境是指人们经由电子设备感测和/或交互的完全或部分模拟的环境。例如,xr环境可包括增强现实(ar)内容、混合现实(mr)内容、虚拟现实(vr)内容等。在xr系统的情况下,跟踪人的物理运动的一个子集或其表示,并且作为响应,以符合至少一个物理定律的方式调节在xr系统中模拟的一个或多个虚拟对象的一个或多个特征。例如,xr系统可以检测头部移动,并且作为响应,以与此类视图和声音在物理环境中变化的方式类似的方式调节呈现给人的图形内容和声场。又如,xr系统可以检测呈现xr环境的电子设备(例如,移动电话、平板电脑、膝上型电脑等)的移动,并且作为响应,以类似于此类视图和声音在物理环境中将如何改变的方式调节呈现给人的图形内容和声场。在一些情况下(例如,出于可达性原因),xr系统可响应于物理运动的表示(例如,声音命令)来调节xr环境中图形内容的特征。
[0019]
有许多不同类型的电子系统使人能够感测和/或与各种xr环境交互。示例包括头戴式系统、基于投影的系统、平视显示器(hud)、集成有显示能力的车辆挡风玻璃、集成有显示能力的窗户、被形成为设计用于放置在人的眼睛上的透镜的显示器(例如,类似于隐形眼镜)、耳机/听筒、扬声器阵列、输入系统(例如,具有或不具有触觉反馈的可穿戴或手持式控制器)、智能电话、平板电脑、以及台式/膝上型计算机。头戴式系统可具有集成不透明显示器和一个或多个扬声器。另选地,头戴式系统可被配置为接受外部不透明显示器(例如,智能电话)。头戴式系统可结合用于捕获物理环境的图像或视频的一个或多个成像传感器、和/或用于捕获物理环境的音频的一个或多个麦克风。头戴式系统可具有透明或半透明显示器,而不是不透明显示器。透明或半透明显示器可以具有媒介,代表图像的光通过该媒介被引导到人的眼睛。显示器可以利用数字光投影、oled、led、uled、硅基液晶、激光扫描光源或这些技术的任意组合。媒介可以是光学波导、全息图媒介、光学组合器、光学反射器、或它们的任意组合。在一些实施例中,透明或半透明显示器可被配置为选择性地变得不透明。基于投影的系统可以采用将图形图像投影到人的视网膜上的视网膜投影技术。投影系统也可以被配置为将虚拟对象投影到物理环境中,例如作为全息图或在物理表面上。
[0020]
图1是根据一些实施例的便携式多功能设备100(为了简洁起见,在本文中有时也称为“电子设备100”)的示例的框图。电子设备100包括存储器102(例如,一个或多个非暂态计算机可读存储介质)、存储器控制器122、一个或多个处理单元(cpu)120、外围设备接口118、输入/输出(i/o)子系统106、显示系统112、惯性测量单元(imu)130、图像传感器143(例如,相机)、接触强度传感器165、音频传感器113(例如麦克风)、眼睛跟踪传感器164(例如,包括在头戴式设备(hmd)内)、肢体跟踪传感器150以及其他输入或控制设备116。在一些实施例中,电子设备100对应于移动电话、平板电脑、膝上型电脑、可穿戴计算设备、头戴式设备(hmd)、头戴式壳体(例如,电子设备100滑动到或以其他方式附接到头戴式壳体)等中的一种。在一些实施例中,头戴式壳体被成形为形成用于接收具有显示器的电子设备100的接
收器。
[0021]
在一些实施例中,外围设备接口118、一个或多个处理单元120和存储器控制器122任选地在单个芯片诸如芯片103上实现。在一些其他实施例中,它们任选地在独立的芯片上实现。
[0022]
i/o子系统106将电子设备100上的输入/输出外围设备诸如显示系统112和其他输入或控制设备116与外围设备接口118耦接。i/o子系统106任选地包括显示控制器156、图像传感器控制器158、强度传感器控制器159、音频控制器157、眼睛跟踪控制器160、用于其他输入或控制设备的一个或多个输入控制器152、imu控制器132、肢体跟踪控制器180和隐私子系统170。一个或多个输入控制器152从其他输入或控制设备116接收电信号/将电信号发送到该其他输入或控制设备。其他输入控制设备116任选地包括物理按钮(例如,下压按钮、摇臂按钮等)、拨号盘、滑动开关、操纵杆、点击轮等。在一些另选的实施例中,一个或多个输入控制器152任选地与以下各项中的任一者耦接(或不与以下各项中的任一者耦接):键盘、红外线端口、通用串行总线(usb)端口、触笔、手指可穿戴设备和/或指针设备诸如鼠标。一个或多个按钮任选地包括下压按钮。在一些实施例中,其他输入或控制设备116包括获得关于电子设备100相对于特定对象的位置和/或定向的信息的定位系统(例如,gps)。在一些实施例中,其他输入或控制设备116包括获得表征物理环境内的物理对象的深度信息的深度传感器和/或飞行时间传感器。在一些实施例中,其他输入或控制设备116包括环境光传感器,其感测来自物理环境的环境光并输出对应的环境光数据。
[0023]
显示系统112提供电子设备100与用户之间的输入接口和输出接口。显示控制器156从显示系统112接收电信号和/或将电信号发送至该显示系统。显示系统112向用户显示视觉输出。视觉输出任选地包括图形、文本、图标、视频以及其任何组合(在本文中有时称为“计算机生成的内容”)。在一些实施例中,一些视觉输出或全部视觉输出对应于用户界面对象。如本文所用,术语“示能表示”是指用户交互式图形用户界面对象(例如,被配置为对被引向图形用户界面对象的输入进行响应的图形用户界面对象)。用户交互式图形用户界面对象的示例包括但不限于按钮、滑块、图标、可选择菜单项、开关、超链接或其他用户界面控件。
[0024]
显示系统112可具有基于触觉和/或触感接触来接受来自用户的输入的触敏表面、传感器、或传感器组。显示系统112和显示控制器156(以及存储器102中的任何相关联的模块和/或指令集)检测显示系统112上的接触(和该接触的任何移动或中断),并且将检测到的接触转换为与被显示在显示系统112上的用户界面对象(例如,一个或多个软按键、图标、网页或图像)的交互。在示例性实施例中,显示系统112和用户之间的接触点对应于用户的手指或手指可穿戴设备。
[0025]
显示系统112任选地使用lcd(液晶显示器)技术、lpd(发光聚合物显示器)技术或led(发光二极管)技术,但是在其他实施例中使用其他显示技术。显示系统112和显示控制器156任选地使用现在已知的或以后将开发出的多种触摸感测技术中的任何技术以及其他接近传感器阵列或用于确定与显示系统112接触的一个或多个点的其他元件来检测接触及其任何移动或中断,该多种触摸感测技术包括但不限于电容性技术、电阻性技术、红外线技术和表面声波技术。
[0026]
用户任选地使用任何合适的对象或附加物诸如触笔、手指可穿戴设备、手指等来
与显示系统112接触。在一些实施例中,将用户界面设计成与基于手指的接触和手势一起工作,由于手指在触摸屏上的接触区域较大,因此这可能不如基于触笔的输入精确。在一些实施例中,电子设备100将基于手指的粗略输入转化为精确的指针/光标位置或命令以用于执行用户所期望的动作。
[0027]
音频电路还接收由音频传感器113(例如,麦克风)从声波转换的电信号。音频电路将电信号转换为音频数据,并且将音频数据传输到外围设备接口118以用于处理。音频数据任选地由外围设备接口118检索自和/或传输到存储器102和/或rf电路。在一些实施例中,音频电路还包括耳麦插孔。该耳麦插孔提供音频电路与可移除的音频输入/输出外围设备之间的接口,该可移除的音频输入/输出外围设备为诸如仅输出的耳机或者具有输出(例如,单耳耳机或双耳耳机)和输入(例如,麦克风)两者的耳麦。
[0028]
惯性测量单元(imu)130包括加速度计、陀螺仪和/或磁力仪,以便测量相对于电子设备100的各种力、角速率和/或磁场信息。因此,根据各种实施例,imu 130检测电子设备100的一个或多个位置改变输入,诸如电子设备100被摇动、旋转、沿特定方向移动等。
[0029]
图像传感器143捕获静态图像和/或视频。在一些实施例中,光学传感器143位于电子设备100的背面上,与电子设备100正面上的触摸屏相背对,使得触摸屏能够用作用于静态图像和/或视频图像采集的取景器。在一些实施例中,另一图像传感器143位于电子设备100的正面上,使得获取该用户的图像(例如,用于自拍、用于当用户在触摸屏上观看其他视频会议参与者时进行视频会议等等)。在一些实施例中,图像传感器集成在hmd内。例如,图像传感器143输出表示物理环境内的物理对象(例如,物理代理)的图像数据。
[0030]
接触强度传感器165检测电子设备100上的接触的强度(例如,电子设备100的触敏表面上的触摸输入)。接触强度传感器165与i/o子系统106中的强度传感器控制器159耦接。接触强度传感器165任选地包括一个或多个压阻应变仪、电容式力传感器、电气力传感器、压电力传感器、光学力传感器、电容式触敏表面或其他强度传感器(例如,用于测量触敏表面上的接触的力(或压力)的传感器)。接触强度传感器165从物理环境接收接触强度信息(例如,压力信息或压力信息的代用物)。在一些实施例中,至少一个接触强度传感器165与电子设备100的触敏表面并置排列或邻近。在一些实施例中,至少一个接触强度传感器165位于电子设备100的侧面上。
[0031]
眼睛跟踪传感器164检测电子设备100的用户的眼睛注视,并且生成指示用户的注视位置的眼睛跟踪数据。在各种实施例中,眼睛跟踪数据包括指示用户在显示面板上的固定点(例如,关注点)的数据,该显示面板为诸如头戴式设备(hmd)、头戴式壳体或平视显示器内的显示面板。
[0032]
肢体跟踪传感器150获取指示用户的肢体位置的肢体跟踪数据。例如,在一些实施例中,肢体跟踪传感器150对应于获得指示特定对象内用户的手或手指的位置的手部跟踪数据的手部跟踪传感器。在一些实施例中,肢体跟踪传感器150利用计算机视觉技术以基于相机图像来估计肢体的姿态。
[0033]
在各种实施例中,电子设备100包括隐私子系统170,该隐私子系统包括与用户信息相关联的一个或多个隐私设置滤波器,诸如包括在与用户相关联的肢体跟踪数据、眼睛注视数据和/或身体位置数据中的用户信息。在一些实施例中,隐私子系统170选择性地防止和/或限制电子设备100或其部分获取和/或传输用户信息。为此,隐私子系统170响应于
提示用户进行用户偏好和/或选择来从用户接收用户偏好和/或选择。在一些实施例中,隐私子系统170防止电子设备100获取和/或传输用户信息,除非并且直到隐私子系统170从用户获取到知情同意。在一些实施例中,隐私子系统170匿名化(例如,加扰或模糊)某些类型的用户信息。例如,隐私子系统170接收指定隐私子系统170匿名化哪些类型的用户信息的用户输入。作为另一示例,隐私子系统170独立于用户指定(例如,自动地)匿名化可能包括敏感和/或识别信息的某些类型的用户信息。
[0034]
图2a至图2j是根据一些实施例的在执行相应显示模式转变之前渲染体积对象的示例。如图2a所示,物理环境200包括物理墙202、物理餐具柜204以及握持电子设备210的用户50。电子设备210包括与物理环境200的可视区域214相关联的显示器212。可视区域214包括物理墙202的一部分和物理餐具柜204。在一些实施例中,电子设备210对应于移动设备,诸如智能电话、平板电脑、可穿戴设备和或其他。在一些实施例中,电子设备210对应于可以包括一个或多个不透明或透视显示器的头戴式设备(hmd)。
[0035]
在一些实施例中,电子设备210包括图像传感器,诸如场景相机。图像传感器可以捕获表征物理环境200的图像数据。图像数据可以对应于图像或图像序列(例如,视频流)。如参考图3所述,电子设备210可以包括将图像数据与对象数据进行合成的合成系统,其中对象数据对应于渲染的体积(例如,3d)对象。
[0036]
如图2b所示,在显示器212上,电子设备210根据第一显示模式在2d内容区域220内显示各种对象数据。各种对象数据包括对应于体积汽车222的第一对象数据、对应于体积水果碗224的第二对象数据和对应于体积桌子226的第三对象数据。为此,电子设备210渲染第一体积对象以便生成第一对象数据,渲染第二体积对象以便生成第二对象数据,以及渲染第三体积对象以便生成第三对象数据。例如,电子设备210包括执行渲染的图形处理单元(gpu)。可以在场景文件中定义特定体积对象,该场景文件描述表征特定体积对象的几何形状、视点、纹理、照明和阴影信息。
[0037]
2d接触区域220可以对应于应用程序窗口,诸如网页或绘图应用程序的画布。在一些实施例中,除了包括体积对象222至体积对象226(“3d对象”)之外,2d内容区域220包括2d内容。例如,如图2b所示,2d内容区域220包括列标题文本(“3d对象;”“描述;”和“将对象置于你的空间中”)以及描述体积对象的文本(“虚拟跑车;”“虚拟水果碗;”和“虚拟桌子”)。作为另一示例,如图2b所示,2d内容区域220包括与体积汽车222相关联的第一示能表示230、与体积水果碗224相关联的第二示能表示232和与体积桌子226相关联的第三示能表示234。下面提供了有关示能表示细节。
[0038]
在一些实施例中,当根据第一显示模式显示各种对象数据时,电子设备210不显示物理环境200的表示。因此,在一些实施例中,当根据第一显示模式显示各种对象数据时,电子设备210不激活电子设备210的图像传感器,并且因此图像传感器不捕获表征物理环境200的图像数据。
[0039]
如图2c所示,电子设备210经由一个或多个输入设备接收涉及体积桌子226的第一操纵输入240。即,第一操纵输入240对应于体积桌子226的90度顺时针旋转。例如,一个或多个输入设备包括跟踪用户50的手的顺时针旋转的肢体跟踪器。基于第一操纵输入240,电子设备210更新第三体积对象的渲染以便生成更新的第三对象数据。如图2d所示,与图2c中所示的体积桌子226相比,在显示器212上,电子设备210显示对应于90度顺时针旋转的体积桌
子226的更新的第三对象数据。
[0040]
如图2e所示,电子设备210接收涉及第三示能表示234的第一请求242。第一请求242请求电子设备210将第一显示模式改变为第二显示模式。此外,第一请求242根据第二显示模式请求电子设备210显示更新的第三对象数据。例如,电子设备210跟踪用户50的在空间上涉及第三示能表示234的手指。作为另一示例,电子设备210跟踪用户50的在空间上涉及第三示能表示234的眼睛注视。在一些实施例中,第二显示模式包括物理环境220的表示。例如,第二显示模式的特征在于增强现实(ar)环境或混合现实(mr)环境。本领域的普通技术人员将理解,改变显示模式的请求可以对应于各种输入类型,诸如硬件输入(例如,按下按钮)、来自用户50的语音输入(例如,“显示放置在我的房间的虚拟桌子”)或特定体积对象的肢体/注视选择(而不是对应的示能表示的选择)。
[0041]
如图2f所示,响应于接收第一请求242,在显示器212上,电子设备210根据第二显示模式显示更新的第三对象数据。值得注意的是,第二显示模式包括在物理环境200的表示内显示的更新的第三对象数据。例如,物理环境200的表示大致对应于与显示器212相关联的可视区域216。因此,物理环境200的表示包括物理餐具柜204的表示和物理墙202的部分的表示。为此,在一些实施例中,响应于接收第一请求242,电子设备210激活捕获表征物理环境200的图像数据的图像传感器。因此,图像数据对应于物理环境200的表示。此外,电子设备210将图像数据与更新的第三对象数据进行合成,以便生成显示数据,并且发送合成的结果到显示器212以供显示。
[0042]
与其他设备相比,在接收请求(例如,第一请求242)之前渲染体积对象使电子设备210能够在显示模式之间提供更加无缝的转变。例如,体积对象可以被预渲染为3d内容并且与2d内容排列显示,诸如2d网页或2d画布。基于接收第一请求242,电子设备210可以从第一显示模式转变为第二显示模式而不必重新渲染体积对象,从而提供无缝的转变。例如,电子设备210跨显示模式之间的转变持续地显示体积对象,使得体积对象不消失并且在转变期间重新出现。如上所述,在一些实施例中,第一显示模式包括不直接叠加在物理环境的图像数据(例如,现场相机馈送)上的体积对象,而第二显示模式包括直接叠加在图像数据的至少一部分上的体积对象。相比之下,其他设备可以显示内容区域内的桌子(例如,桌子的缩略图)的2d表示,并且不会渲染桌子的3d对象直到接收显示模式改变请求。因此,其他设备在接收显示模式改变请求与显示渲染的3d桌子之间产生延迟。此外,在完成渲染之前,其他设备可以显示不期望的视觉伪影。
[0043]
如图2g所示,虽然处于第一显示模式,但是电子设备210接收涉及2d内容区域220内的第二示能表示232的第二请求244。第二请求244请求电子设备210从第一显示模式改变为第二显示模式。此外,第二请求244请求电子设备210根据第二显示模式显示第二对象数据。响应于接收图2g中的第二请求244,在显示器212上,电子设备210显示覆盖在物理餐具柜204上的第二对象数据,如图2h所示。第二对象数据对应于体积水果碗224。为此,在一些实施方式中,电子设备210相对于图像数据执行计算机视觉技术,以便识别图像数据内的物理餐具柜204,并将第二对象数据覆盖在表示物理餐具柜204的图像数据的部分之上。
[0044]
如图2i所示,电子设备210经由一个或多个输入设备接收涉及体积水果碗224的第二操纵输入246。第二操纵输入246对应于向左沿着物理餐具柜204的表面移动体积水果碗224的请求。例如,第二操纵输入246是用户50的手的向左移动,其源自对应于体积水果碗
224的位置。电子设备210可以包括肢体跟踪器,以便跟踪用户50的手的移动。基于第二操纵输入246,电子设备210更新对第二体积对象的渲染以便生成更新的第二对象数据。在显示器212上显示更新的第二对象数据,如图2j所示。
[0045]
图3是根据一些实施例的用于根据不同的显示模式显示渲染的体积对象的系统310的框图的示例。在各种实施例中,系统310或其部分集成在电子设备中,诸如参考图2a至图2j描述的电子设备210。
[0046]
系统310包括渲染子系统352,其渲染一个或多个体积对象以便生成对象数据354。对象数据354的每个部分提供体积对象中的对应的一个体积对象的体积(例如,3d)表示。例如,参考图2b,对象数据354的第一部分对应于体积汽车222,并且对象数据354的第二部分对应于体积水果碗224。在一些实施例中,渲染子系统352从体积对象数据存储库350(诸如缓冲器或其他非暂态存储器)获得体积对象。在一些实施例中,渲染子系统352包括执行渲染的gpu。根据各种实施例,系统310包括检测操纵输入368的一个或多个输入设备360,并且渲染子系统352基于操纵输入368更新渲染。
[0047]
例如,输入设备360包括接收操纵输入368的肢体跟踪器362。基于操纵输入368,肢体跟踪器362可以检测用户的肢体涉及特定显示的体积对象,诸如当用户的手距特定显示的体积对象小于阈值距离时。因此,系统310选择特定显示的体积对象。此外,肢体跟踪器362可以检测肢体的移动,并且渲染子系统352相应地更新对特定显示的体积对象的渲染。作为一个示例,如图2i所示,肢体跟踪器362接收选择体积水果碗224的第二操纵输入246,并且渲染子系统352相应地更新渲染以便在显示器212上跨物理餐具柜204向左移动体积水果碗224。
[0048]
作为另一示例,输入设备360包括位置传感器364,诸如imu、触摸传感器(例如,包括在触敏表面上)、磁性传感器和/或其他。位置传感器364接收操纵输入368,并且基于操纵输入368检测系统310的位置变化。例如,参考图2f,基于电子设备210的向左旋转,渲染子系统352更新对体积桌子226的渲染,使得体积桌子226似乎相应地跨显示器212向右移动。
[0049]
在一些实施例中,系统310包括解复用器370。解复用器370基于显示模式改变请求372在第一状态与第二状态之间切换。第一状态与第一显示模式相关联,而第二状态与第二显示模式相关联。在处于第一状态时,解复用器370将对象数据354输出到组合子系统322,该组合子系统生成与第一显示模式相关联的第一显示数据324。在处于第二状态时,解复用器370将对象数据354输出到合成子系统340(或任选地首先输出到处理子系统356),该合成子系统生成与第二显示模式相关联的第二显示数据342。例如,显示模式改变请求372对应于在空间上涉及显示在2d内容区域内的体积对象的输入,或者在空间上涉及与体积对象(诸如图2e中所示的第一请求242)相关联的示能表示的输入。作为另一示例,显示模式改变请求372对应于硬件输入(例如,按下下压按钮)。作为另一示例,显示模式改变请求372对应于系统310的预定位置变化,诸如由位置传感器364检测到的系统310的振荡。
[0050]
根据各种实施例,在显示器380上,系统310根据第一显示模式显示对象数据354。第一显示模式包括在2d内容区域内显示第一对象数据354。例如,2d内容区域包括应用程序窗口的外边界,诸如网页窗口或绘图应用程序窗口。在2d内容数据320内指示2d内容区域。2d内容数据320还可以指示2d内容。例如,基于对特定网页的请求,系统310从网络服务器获得指示特定网页的2d内容数据320。2d内容数据320还可以指示2d内容,诸如特定网页内的
文本或缩略图。作为另一示例,系统310从本地存储获得2d内容数据320,诸如来自有效绘图应用程序所利用的缓冲器。为了根据第一显示模式显示对象数据354,系统310包括组合子系统322。组合子系统322将2d内容数据320与对象数据354进行组合以便生成第一显示数据324。例如,参考图2b,第一显示数据324指示2d内容区域220内的体积汽车222。
[0051]
与第一显示模式相比,第二显示模式包括在显示器380上显示物理环境300的表示内的对象数据354。为此,在一些实施例中,系统310包括捕获表征物理环境300的图像数据322的图像传感器330。图像数据332指示物理环境300的表示。进一步为此,系统310包括合成子系统340,该合成子系统将图像数据332与对象数据354进行合成以便生成第二显示数据342。第二显示数据342指示物理环境300的表示内的一个或多个体积对象。例如,参考图2h,第二显示数据342指示物理环境200的表示内的体积桌子226和体积水果碗224,该物理环境的表示包括物理餐具柜204的表示。
[0052]
在一些实施例中,在合成对象数据354之前,系统310至少处理对象数据354的一部分。为此,系统310包括处理子系统356。例如,处理子系统356处理对象数据354以便改变对应的渲染的体积对象的外观,诸如重新设定尺寸大小、重新定位或改变渲染的体积对象的颜色。例如,系统310在物理环境的表示内显示渲染的体积对象之前重新设定渲染的体积对象的尺寸大小。作为另一示例,参考图2g,电子设备210处理对应于体积水果碗224的第二对象数据。此外,电子设备210将处理的第二对象数据与物理环境200的表示进行合成,以便生成图2h中的对应的显示数据。因此,图2h中所示的体积水果碗224(第二显示模式)小于图2g中所示的体积水果碗224(第一显示模式)。
[0053]
图4是根据一些实施例的根据不同的显示模式显示渲染的体积对象的方法400的流程图的示例。在各种实施例中,方法400或其部分由电子设备(例如,电子设备210)执行。在各种实施例中,方法400或其部分由图3中所示的系统310执行。在各种实施例中,方法400或其部分由移动设备执行,例如智能手机、平板电脑或可穿戴设备。在各种实施例中,方法400或其部分由包括显示器的头戴式设备(hmd)执行。在一些实施例中,方法400由处理逻辑部件(包括硬件、固件、软件或其组合)执行。在一些实施方式中,方法400由执行存储在非暂态计算机可读介质(例如,存储器)中的代码的处理器执行。
[0054]
如框402所表示,方法400包括渲染第一体积对象以便生成第一对象数据。在一些实施例中,第一对象数据指示在不同时间表示第一体积对象的多个图像(例如,视频流)。例如,多个图像中的每个图像表示来自多个观察透视图中的对应的一个观察透视图的第一体积对象。作为一个示例,如图2c所示,电子设备210从第一观察透视图生成并显示体积桌子226的第一图像,而电子设备210从图2d中的第二观察透视图生成并显示体积桌子226的第二图像。
[0055]
如框404所表示,方法400包括根据第一显示模式显示第一对象数据。如框406所表示,第一显示模式包括在2d内容区域内显示第一对象数据,诸如在2d网页应用程序窗口内同时显示第一对象数据。为此,在一些实施例中,方法400包括获得指示2d内容区域的2d内容数据、将2d内容数据与第一对象数据进行组合以便生成第一显示数据以及将第一显示数据发送到显示器。例如,参考图3,组合子系统322通过将对象数据354与2d内容数据320组合来生成第一显示数据324。第一显示数据指示2d内容区域内的第一体积对象。例如,如图2g所示,在显示器212上,电子设备210在2d内容区域220内显示第二对象数据(对应于体积水
果碗224)。在一些实施例中,根据第一显示模式显示第一对象数据包括显示第一对象数据的特定图像。
[0056]
如框408所表示,在一些实施例中,2d内容数据包括2d内容区域内的2d内容。例如,参考图2b,2d内容区域220包括2d表、各种2d文本(例如,“3d对象;”“虚拟跑车”)和2d示能表示230至2d示能表示234。在一些实施例中,如框410所表示,根据第一显示模式显示第一对象数据包括相对于2d内容排列显示第一对象数据。例如,排列显示第一对象数据对应于在2d内容区域内的2d内容旁边显示第一对象数据,而不是显示体积对象的文本链路或2d表示(例如,缩略图)。例如,参考图2b,电子设备210在对应的描述性文本(“虚拟桌子”)旁边显示第三对象数据(对应于体积桌子226)。
[0057]
如框412所表示,方法400包括检测从第一显示模式改变为第二显示模式的请求。例如,第二显示模式对应于增强现实(ar)环境或混合现实(mr)环境。如框414所表示,在一些实施例中,检测请求包括接收涉及在2d内容区域内显示的第一体积对象的输入。例如,参考图3,肢体跟踪器362检测涉及第一体积对象的用户的肢体。作为另一示例,触摸传感器检测来自用户的涉及第一体积对象的触摸输入。在一些实施例中,检测请求基于输入涉及第一体积对象达至少阈值时间量。在一些实施例中,请求对应于涉及与第一体积对象相关联的示能表示的输入。例如,参考图2e,电子设备210接收涉及第三示能表示234的第一请求242,该第三示能表示与体积桌子226相关联。
[0058]
如框416所表示,在一些实施例中,响应于检测请求,方法400包括处理第一对象数据。例如,处理包括改变第一对象数据的外观,诸如重新设定操作或重新定位操作。作为一个示例,响应于检测图2e中的第一请求242,电子设备210处理第三对象数据以便生成体积桌子226的较大版本。因此,根据第二显示模式显示的体积桌子226(图2f中示出)大于根据第一显示模式显示的体积桌子226(图2e中示出)。在一些实施例中,处理由图3的处理子系统356执行。
[0059]
如框418所表示,响应于检测到请求,方法400包括根据第二显示模式显示第一对象数据。如框420所表示,第二显示模式包括在物理环境的表示内显示第一对象数据。为此,在一些实施例中,方法400由包括图像传感器(例如,图3的图像传感器330)的电子设备执行,该图像传感器捕获表征物理环境的图像数据。图像数据指示物理环境的表示。进一步为此,在一些实施例中,方法400包括将图像数据与第一对象数据进行合成(例如,经由图3中的合成子系统322)以便生成第二显示数据。第二显示数据指示物理环境的表示内的第一体积对象。进一步为此,在一些实施例中,方法400包括将第二显示数据发送到显示器。例如,响应于检测图2e中的第一请求242,电子设备210激活捕获物理环境200的图像数据的相机。继续此示例,在显示器212上,电子设备210显示包括物理餐具柜204的表示的物理环境200的表示,如图2f所示。在一些实施例中,图像数据包括图像序列。在一些实施例中,图像数据对应于传递性图像数据。在一些实施例中,根据第二显示模式显示第一对象数据包括停止显示2d内容区域,同时保持第一对象数据的显示。
[0060]
物理环境与执行方法400的电子设备相关联,例如,物理环境包括电子设备。在一些实施例中,当根据第二显示模式显示第一对象数据时,方法400包括将渲染的第一体积对象世界锁定到物理环境的表示的点或区域。例如,方法400包括利用即时定位与地图构建(slam)以便执行世界锁定。与2d内容区域相比,物理环境的表示可以对应于物理环境的3d
表示。
[0061]
在一些实施例中,显示根据第二显示模式对第一对象数据的显示包括显示第一对象数据的特定图像。为此,在一些实施例中,方法400包括响应于检测请求而将特定图像存储在非暂态存储器中,以及从暂态存储器获得特定图像以便在物理环境的表示内显示特定图像。通过从非暂态存储器获得特定图像而不是重新渲染第一体积对象,电子设备提供从第一显示模式到第二显示模式的更快且更无缝的转变。
[0062]
如框422所表示,在一些实施例中,方法400包括在转变到第二显示模式之前检测对第一对象数据的处理的完成。例如,参考图3,合成子系统340在将第二显示数据342发送到显示器380之前从处理子系统356获得处理终止指示符。作为一个示例,处理终止指示符是围栏过程的一部分(例如,在操作系统(os)级实现),并且处理终止指示符用于促进相对于彼此调度多个动画过程。作为一个示例,基于检测从第一显示模式改变为第二显示模式的请求,方法400包括确定增加2d内容区域的第一动画过程已准备好开始,以及确定增加第一对象数据的大小的第二动画过程也已准备好开始。为了提供从第一显示模式到第二显示模式的无缝转变,动画过程中的一个动画过程向os注册围栏,并且暂停其动画。此外,动画过程将处理终止指示符(例如,围栏标识符)发送到其他动画过程,从而向其他动画过程发送信号通知以也与os注册围栏并暂停启动其动画。一旦os接收到两个围栏,os可以炫染围栏并且同时启动动画过程,以便实现从第一显示模式到第二显示模式的无缝转变。
[0063]
图5是根据一些实施例的操纵渲染的体积对象的方法500的流程图的示例。在各种实施例中,方法500或其部分由电子设备(例如,电子设备210)执行。在各种实施例中,方法500或其部分由图3中所示的系统310执行。在各种实施例中,方法500或其部分由移动设备执行,例如智能手机、平板电脑或可穿戴设备。在各种实施例中,方法500或其部分由包括显示器的hmd执行。在一些实施例中,方法500由处理逻辑部件(包括硬件、固件、软件或其组合)执行。在一些实施例中,方法500由执行存储在非暂态计算机可读介质(例如,存储器)中的代码的处理器执行。
[0064]
如框502所表示,方法500包括渲染第一体积对象以便生成第一对象数据,以及渲染第二体积对象以便生成第二对象数据。例如,参考图3,渲染子系统352从体积对象数据存储库350获得第一体积对象和第二体积对象。此外,渲染子系统352生成对象数据354的对应于第一体积对象的第一部分,并且生成对象数据354的对应于第二体积对象的第二部分。
[0065]
如框504所表示,方法500包括根据第一显示模式显示第一对象数据和第二对象数据。如框506所表示,第一显示模式包括在2d内容区域内显示第一对象数据和第二对象数据。例如,参考图2b,电子设备210在2d内容区域220内显示第一对象数据(对应于体积汽车222)和第二对象数据(对应于体积水果碗224)。
[0066]
如框508所表示,在一些实施例中,方法500包括操纵在2d内容区域内显示第一体积对象和第二体积对象中的至少一者。为此,方法500包括基于操纵输入来更新渲染第一对象,以便生成更新的第一对象数据,以及在显示器上用更新的第一对象数据替换第一对象数据。例如,电子设备经由一个或多个输入设备接收操纵输入。
[0067]
作为一个示例,如框510所表示并且参考图3,肢体跟踪器362接收操纵输入368,并将对应的肢体跟踪数据输出到渲染子系统352。肢体跟踪器362跟踪用户的肢体,诸如用户的手指或手。在一些实施例中,操纵输入在空间上涉及显示器上的特定体积对象。例如,操
纵输入与特定体积对象的距离小于阈值距离。作为一个示例,参考图2c和图2d,电子设备210接收涉及体积桌子226的第一操纵输入240,并且因此更新对体积桌子226的渲染以便旋转体积桌子226。
[0068]
如框512所表示,方法500包括检测将第一显示模式改变为第二显示模式的请求,诸如参考图4中所示的方法400的框412所述。如框514所表示,响应于检测请求,方法400包括根据第二显示模式显示第一对象数据和第二对象数据。如框516所表示,第二显示模式包括在物理环境的表示内显示第一对象数据和第二对象数据。例如,响应于接收图2g中的第二请求244,电子设备210在物理环境200的表示内显示第二对象数据(对应于体积水果碗224)和第三对象数据(对应于体积桌子226)。参考图4中所示的方法400的框420描述了关于在物理环境的表示内显示对象数据的附加细节。
[0069]
如框518所表示,在一些实施例中,方法500包括操纵在物理环境的表示内显示第一体积对象和第二体积对象中的至少一者。例如,如框520所表示,方法500包括利用肢体跟踪以便操纵特定体积对象。作为一个示例,参考图2i和图2j,电子设备210接收涉及体积水果碗224的第二操纵输入246,并且因此更新对体积水果碗224的渲染以便跨物理餐具柜204的表面向左移动体积水果碗224。
[0070]
作为另一示例,如框522所表示,方法500包括检测电子设备的位置变化以便操纵特定体积对象。例如,参考图3,位置传感器364接收操纵输入368,并且将对应的设备位置数据输出到渲染子系统352。例如,位置数据指示电子设备的旋转移动或平移移动。例如,位置传感器364对应于检测系统310的旋转变化和/或位置变化的imu。作为另一示例,参考图2j,如果用户50更靠近物理墙202行走,电子设备210将更新对第二对象数据的渲染以便扩大体积水果碗224的外观,并且更新对第三对象数据的渲染以便扩大体积桌子226的外观。
[0071]
本公开描述了各种特征,其中没有一个特征能够单独实现本文所述的益处。应当理解,本文所述的各种特征可被组合、修改或省略,这对本领域的普通技术人员是显而易见的。本文具体描述的那些之外的其他组合和子组合对于普通技术人员而言将显而易见,并旨在形成本公开的一部分。本文结合各种流程图步骤和/或阶段描述了各种方法。应当理解,在很多情况下,某些步骤和/或阶段可被组合在一起,使得流程图中所示的多个步骤和/或阶段可作为单个步骤和/或阶段来被执行。另外,某些步骤和/或阶段可分成要独立执行的附加子部件。在一些情况下,可重新布置步骤和/或阶段的次序,并且可完全省略某些步骤和/或阶段。另外,本文所述的方法应被理解为可广泛解释的,使得也可执行除本文所示和所述那些之外的附加步骤和/或阶段。
[0072]
本文所述的一些或所有方法和任务可由计算机系统执行和完全自动化。在一些情况下,计算机系统可包括通过网络进行通信和互操作以执行所述功能的多个不同的计算机或计算设备(例如,物理服务器、工作站、存储阵列等)。每个此类计算设备通常包括处理器(或多个处理器),该处理器执行存储在存储器或其他非暂态计算机可读存储介质或设备中的程序指令或模块。本文所公开的各种功能可在此类程序指令中实现,但另选地可在计算机系统的专用电路(例如,asic或fpga或gp-gpu)中实现所公开的功能中的一些或全部。在计算机系统包括多个计算设备的情况下,这些设备可位于同一位置或不位于同一位置。可通过将物理存储设备诸如固态存储器芯片和/或磁盘转换成不同状态来持久地存储所公开的方法和任务的结果。
[0073]
本文定义的各种过程考虑了获取和利用用户的个人信息的选项。例如,可利用此类个人信息以便在电子设备上提供改进的隐私屏幕。然而,在收集此类个人信息的程度上,此类信息应在用户知情同意的情况下获取。如本文所描述的,用户应了解和控制其个人信息的使用。
[0074]
个人信息将由适当方仅用于合法和合理的目的。利用此类信息的各方将遵守至少符合适当法律法规的隐私政策和惯例。此外,此类政策应是完善的、用户可访问的,并且被认为符合或高于政府/行业标准。此外,除任何合理和合法的目的外,各方不得分发、出售或以其他方式分享此类信息。
[0075]
然而,用户可限制各方能访问或以其他方式获取个人信息的程度。例如,可调整设置或其他偏好,使得用户可决定其个人信息是否可由各种实体访问。此外,虽然在使用个人信息的上下文中描述了本文所定义的一些特征,但可在不需要使用此类信息的情况下实现这些特征的各方面。例如,如果收集到用户偏好、账户名称和/或位置历史,则该信息可被模糊化或以其他方式一般化,使得该信息不会识别相应用户。
[0076]
本公开并不旨在限于本文所示的实施例。对于本领域的技术人员而言,对本公开中描述的实施例的各种修改可为显而易见的,并且可将本文所定义的一般原理应用于其他实施例,而不脱离本公开的实质或范围。本文所提供的本发明的教导内容可应用于其他方法和系统,并且不限于上述方法和系统,并且可组合上述各种实施例的元素和动作以提供更多实施例。因此,本文描述的新颖方法和系统可以以多种其他形式来实现;此外,在不脱离本公开的实质的情况下,可以对本文所述的方法和系统的形式进行各种省略、替换和改变。所附权利要求及其等同内容旨在涵盖落入本公开的范围和实质内的此类形式或修改形式。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1