CN110573997A - 基于容器的虚拟相机旋转 - Google Patents

基于容器的虚拟相机旋转 Download PDF

Info

Publication number
CN110573997A
CN110573997A CN201880027519.5A CN201880027519A CN110573997A CN 110573997 A CN110573997 A CN 110573997A CN 201880027519 A CN201880027519 A CN 201880027519A CN 110573997 A CN110573997 A CN 110573997A
Authority
CN
China
Prior art keywords
rotation
angle
virtual camera
container
perspective
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.)
Granted
Application number
CN201880027519.5A
Other languages
English (en)
Other versions
CN110573997B (zh
Inventor
H·A·马丁内斯莫利纳
V·斯里尼瓦桑
C·G·佩雷斯
A·汉达
C·B·马歇尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN110573997A publication Critical patent/CN110573997A/zh
Application granted granted Critical
Publication of CN110573997B publication Critical patent/CN110573997B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/60Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor
    • A63F13/63Generating or modifying game content before or while executing the game program, e.g. authoring tools specially adapted for game development or game-integrated level editor by the player, e.g. authoring using a level editor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/122File system administration, e.g. details of archiving or snapshots using management policies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/012Head tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • G06T15/205Image-based rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2215/00Indexing scheme for image rendering
    • G06T2215/16Using real world measurements to influence rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2016Rotation, translation, scaling

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Geometry (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Multimedia (AREA)
  • Architecture (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Optics & Photonics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Mixers With Rotating Receptacles And Mixers With Vibration Mechanisms (AREA)
  • Processing Of Solid Wastes (AREA)
  • Moulding By Coating Moulds (AREA)

Abstract

用于控制虚拟世界中的虚拟相机的视角的方法和系统。可以在考虑用户的头部位置的同时控制或改变观看虚拟世界的用户的视角。例如,虚拟相机可以被包装在容器中,以使得对该容器的旋转引起虚拟相机相对于全局坐标系的旋转。基于头戴式显示器的位置,可以识别相对于虚拟世界的全局坐标系的初始虚拟相机旋转角度。可以接收对将视角改变到特定方向的指示。接着,针对与特定方向相对应的视角来确定相对于全局坐标系的期望旋转角度。接着,至少基于期望旋转角度和初始虚拟相机旋转角度,将容器以旋转值旋转。

Description

基于容器的虚拟相机旋转
背景技术
发布站点一直是在网上共享和使用信息的关键方式。存在使网站创建民主化的一些服务。然而,不存在解决创建实现3D内容全部潜力的网站的问题的服务。随着越来越多地推动创建简单的3D内容,需要工具和/或服务来促进对3D内容的消费。例如,通过使用虚拟现实设备在虚拟世界中移动通常是具有挑战性的。在某些情况下,用户可能不了解如何利用虚拟世界或者与虚拟世界交互。此外,自动地移动用户通过虚拟世界可能难以实现并且可能引起用户的不适或晕动症。
已经关于这些和其他一般考虑描述了实施例。而且,尽管已经讨论了相对具体的问题,但是应当理解的是,实施例不应限于解决在背景技术中确定的具体问题。
发明内容
本技术涉及控制虚拟世界中的用户视角,例如虚拟3D空间。例如,用户可以穿戴头戴式显示器(HMD),其提供虚拟世界的虚拟现实视角。当用户通过HMD观看虚拟世界时,用户可能希望与虚拟世界中的对象交互。为了促进与虚拟世界的交互,本技术通过将虚拟相机关联或包装在容器中来改变用户的视角。虚拟相机和容器以这样的方式相关联:改变容器的朝向引起虚拟相机的朝向的改变。由此,通过控制容器的朝向,程序可以控制用户体验的视角。本技术还考虑了穿戴设备时用户的头部的旋转,以使得最终视角是呈现虚拟世界的程序所期望的视角。例如,该技术可以在将容器旋转到新的期望视角之前确定虚拟相机的旋转角度。接着,该技术基于所确定的虚拟相机的旋转角度来调整容器的旋转量。通过针对由用户头部的朝向控制的虚拟相机旋转角度进行补偿,用户的最终视角处于程序最初期望的方向。
提供了该发明内容以用简化的形式引入对以下的具体实施方式中进一步描述的概念的选择。该发明内容不旨在排他地标识所要求保护主题的关键特征或必要特征,也不旨在帮助确定所要求保护的主题的范围。
附图说明
参考以下附图描述了非限制性和非穷举性示例。
图1示出了头戴式显示器的示例。
图2A示出了3D空间内的示例视图,其示出了运动标记。
图2B示出了在虚拟世界中的3D对象周围的位置处显示运动标记的示例。
图3描绘了用于显示运动标记的示例方法。
图4描绘了用于虚拟相机的示例朝向参考系统。
图5描绘了使用容器来控制虚拟世界中的虚拟相机的视角的示例方法。
图6是示出可以利用其实践本公开的各方面的计算设备的示例物理组件的框图。
图7A和7B是可以利用其实践本公开的各方面的移动计算设备的简化框图。
图8是可以实践本公开的各方面的分布式计算系统的简化框图。
图9示出了用于执行本公开的一个或多个方面的平板计算设备。
具体实施方式
在以下的详细描述中,对形成了本文的一部分并且在其中通过图示、具体实施例、或示例的方式示出的附图进行了参考。可以组合这些方面,可以利用其他方面,并且可以进行结构性改变而不脱离本公开的精神或范围。因此,以下的详细描述不被认为是限制性意义,并且本发明的范围是由所附权利要求及其等同物来限定的。
本技术涉及控制虚拟世界(例如,虚拟3D空间)中的用户视角。例如,用户可以在穿戴头戴式显示器(HMD),其提供虚拟世界的虚拟现实视图。当用户通过HMD观看虚拟世界时,用户可以希望与虚拟世界中的对象进行交互。为了促进这样的交互,本技术允许在虚拟世界中显示能够由用户选择的运动标记。一旦用户选择了运动标记,用户的视角就被转换到与运动标记相关联的视角。作为示例,可以选择特定的运动标记以从特定位置和特定朝向观看虚拟世界中的特定对象。然而,在选择了运动标记后用户视角的旋转提出了本技术克服的多个挑战,如下文进一步讨论的。
如本领域技术人员将理解的,在虚拟世界中,用户的视角对应于虚拟世界中虚拟相机的定位和朝向。虚拟世界中虚拟相机的定位和朝向的改变引起用户体验的虚拟世界的视角改变。当HMD被用作用户观看虚拟世界的观看设备时,虚拟相机的朝向通常与穿戴HMD的用户的头部的朝向相联系。由此,利用HMD,虚拟相机的朝向通常不能够被计算机程序覆写。因此,当程序需要改变虚拟世界中的用户视角时,这样的动作很难完成。
本技术通过将虚拟相机关联或包装在容器中来改变用户的视角。虚拟相机和容器以这样的方式相关联:改变容器的朝向引起虚拟相机的朝向的改变。由此,通过控制容器的朝向,程序可以控制用户体验的视角。即使利用该实现,仍然存在进一步的挑战,因为用户仍然可以自由地关于容器移动虚拟相机。作为示例,程序可能需要将用户的视角指向虚拟世界的全局坐标系左侧60度的方向。可能需要执行该动作以使得用户的视角查看虚拟世界中的特定对象。然而,容器相对于全局坐标系旋转60度可能不会引起用户的视角处于向左60度,这是因为用户可能已经向左看(或相对于全局坐标系0度以外的任何其他方向)。因此,将容器旋转60度将使得用户具有不期望的方向上的视角。本技术通过在将容器旋转到新视角之前确定虚拟相机的旋转角度来克服该限制,并且基于所确定的虚拟相机的旋转角度来调整容器的旋转量。通过针对由用户头部的朝向控制的虚拟相机旋转角度进行补偿,用户的最终视角处于程序最初期望的方向。
图1描绘了根据本技术示例的具有显示源102的头戴式显示系统(“HMD”)110的示例。HMD 110可以由用户106穿戴以通过显示源102向用户106提供内容,例如虚拟现实内容或增强现实内容。在提供增强现实内容的示例中,HMD 110的前表面可以包含一个或多个相机,以允许通过显示源102将增强视频流呈现给用户106,其可以被称为视频增强现实。HMD110还可以包括集成计算组件,以作为独立系统来提供内容。HMD 110还可以包括无线或有线连通性特征以从其他计算设备接收内容,所述计算设备例如移动电话、平板计算机、笔记本计算机、台式机等。可以使用本领域技术人员已知的任何手段将显示源102固定到HMD110的前部。在一些示例中,HMD 110包括多个显示源102。例如,HMD 110可以包括用于每只眼睛的显示源102。在其他示例中,显示源102可以是智能手机或其他类似设备。显示源102还可以包括镜头或者在镜头附近移位,以允许用户更清楚地看到被显示在显示源上的图像。在美国专利申请No.2016/0027213中描述了可适用于本技术的其他示例HMD。
图2A示出了3D空间内的示例视图,其示出了运动标记。为了帮助用户导航虚拟世界,可以在虚拟世界内放置一个或多个可选择的运动标记,其标识虚拟世界内的用户的放置位置。在一些示例中,当用户的视角或注视位于运动标记周围的预定区域内或指向运动标记周围的预定区域时,可以在虚拟世界内显示运动标记。在其他示例中,除了识别用户可以通过3D空间移动的位置之外,运动标记还可以在移动到3D空间时提供用户视角的默认方向的指示。例如,用户可以通过从一个位置传送到另一个位置来遍历虚拟世界。在传送到新空间后,用户可能会迷失方向。用户视角的指示可以向用户提供上下文,其允许用户在传送之后更好地理解用户在虚拟世界中的朝向。作为示例,用户可以选择运动标记202以传送到运动标记202的位置。在所描绘的示例视图200中,鞋的方向给用户提供在被传送到运动标记的位置时的用户视角方向的指示,由此给予用户上下文以更好地理解用户在传送时的朝向。除了鞋之外,还可以利用其他视觉或图形信息来提供对用户在被传送到运动标记202的位置后的最终朝向的指示。
一个或多个运动标记也可以与内容相关联。在一些示例中,当创建或修改虚拟世界内的3D内容时,可以将运动标记与3D内容相关联,其将用户置于观看3D对象的最佳或优选的位置和朝向。在这样的示例中,当用户的注视聚焦在3D对象上或附近时,可以显示适当地定向以观看该对象的运动标记。可以选择所显示的运动标记以将用户传送到最佳位置和朝向,以便在虚拟世界内观看3D对象。图2B示出了在虚拟世界中的3D对象周围的位置处显示运动标记212的示例视角210。在选择了运动标记212后,用户被传送到所选位置,并且用户的视角将被改变为用于观看3D对象的最佳或优选方向。
示例视图210中的虚拟世界还包括捕捉(snap)区214和视角方向标记216。当用户的注视指向3D对象时,捕捉区214突出显示虚拟世界中的特定3D对象。捕捉区216可以被显示为围绕另一个3D对象的半透明3D对象。例如,在视图210中描绘的虚拟世界中,捕捉区被描绘为围绕虚拟世界中的3D对象的圆柱体。捕捉区216的尺寸和形状可以取决于其所围绕的3D对象的形状和尺寸。捕捉区214可以等同于上面讨论的预先确定的区域。捕捉区214还可以包括视角方向标记216。视角方向标记216指示在选择运动标记212时用户视角的方向是什么。例如,如果用户选择所描绘的运动标记212,则用户将被传输到运动标记212的位置,并且用户的视角将朝向视角方向标记216被定向。在一些示例中,视角方向标记216可以直接被显示在底层的对象上,而不是在捕捉区214上。
图3描绘了用于显示运动标记的示例方法300。流程在操作302处开始,其中监视用户的注视或视角的位置和朝向。在操作304处,关于用户的注视是否指向与运动标记相关联的3D对象周围的预先确定的区域来进行确定。确定用户的注视是否在预先确定的区域内可以基于识别由HMD的位置控制的虚拟相机的俯仰角、偏航角、或翻滚角值中的至少一个。如果对应于俯仰、偏航、或翻滚值中的至少一个的方向矢量将通过预先确定的区域,则可以确定用户的注视被引导到3D对象周围的预先确定的区域。预先确定的区域的一个示例是上面参考图2B讨论的捕捉区214。在一些示例中,预先确定的区域的大小可以基于虚拟世界的大小和/或与运动标记相关联的3D对象的大小或类型以及其他可能的选项而不同。如果用户的注视不在预先确定的区域内,则流程分支“否”并返回到操作302,并且继续监视用户注视的位置。
如果用户注视在与运动标记相关联的3D对象周围的预先确定的区域内,则流程分支“是”到操作302。在操作302处,在虚拟世界内显示运动标记。如先前所描述的,运动标记还可以提供用户注视在移动或传送到运动标记时将改变的方向的指示。在一些示例中,仅当用户的注视位于与运动标记相关联的3D对象周围的预先确定的区域内时,才可以显示运动标记。在替代方面中,可以在虚拟世界内连续显示一个或多个运动标记。
该过程继续至决策操作308,其中关于是否已经选择了所显示的运动标记来进行确定。可以通过手持控制单元,通过智能电话,通过可操作地连接到HMD的其他控件,或基于用户的特定注视或视角来选择运动标记。运动标记也可以通过本领域技术人员已知的任何方法被选择。如果没有选择显示的运动标记,则流程分支“否”并返回到操作302,其中继续监视用户的注视。如果选择了运动标记,则流程分支“是”到操作310,并且用户被自动地移动或传送到3D空间内的运动标记。除了将用户移动到3D空间内的选定位置之外,用户的朝向可以被改变为由所选择的运动标记定义的朝向。
如上所述,用户在虚拟世界中的视角或注视的朝向是基于虚拟世界中的虚拟相机的朝向的。虚拟相机是由HMD在现实世界中的定位来控制的。可以参考虚拟世界的全局坐标系来进行虚拟相机的定向。例如,虚拟世界可以利用具有预先定义的原点的3D笛卡尔坐标系。虚拟相机可以被认为是虚拟世界中的对象,并且其朝向可以通过其相对于全局坐标系的欧拉角来定义。作为参考,图4描绘了用于讨论本文讨论的不同旋转类型的简化图像。关于朝向,围绕所描绘的x轴的旋转在本文中被称为翻滚(通常由符号(phi)表示),围绕所描绘的y轴的旋转在本文中被称为俯仰(通常由符号θ(theta)表示),并且围绕所描绘的z轴的旋转在本文中被称为偏航(通常由符号ψ(psi)表示)。如本领域技术人员将意识到的,可以使用不同的轴和旋转命名约定。本领域技术人员还将意识到,可以与本文所使用的技术一起使用用来控制或表示虚拟对象的旋转的不同技术,例如对旋转矩阵、四元数、或其他技术的使用。
如上所述,利用HMD,虚拟相机的朝向通常不能够被计算机程序覆写。因此,当程序需要改变用户在虚拟世界中的视角时,这样的动作很难完成。本技术通过将虚拟相机关联或包装在容器中来改变用户的视角。在一些示例中,容器可以是软件对象,诸如Unity技术编程平台中使用的空对象或GameObject。在某些情况下,该对象可以被显示在虚拟世界中,但是在其他示例中,该对象不在视觉世界内被显示。虚拟相机和容器以这样的方式相关联:改变容器的朝向引起虚拟相机的朝向的改变。本技术还在转换到最终视角之前或期间补偿用户的视角朝向,例如与所选择的运动标记相关联的视角。通过针对由用户头部的朝向控制的虚拟相机旋转角度进行补偿,用户的最终视角处于程序最初期望的方向,例如与所选择的运动标记相关联的方向。
图5描绘了使用容器来控制虚拟世界中的虚拟相机的视角的示例方法。容器被配置以使得对容器的旋转引起虚拟相机相对于全局坐标系的旋转。在操作502,确定虚拟相机相对于虚拟世界的全局坐标系的初始旋转角度。如上所述,虚拟相机的初始旋转角度至少部分地基于HMD的位置,因此初始旋转角度可以被称为初始HMD旋转角度或初始虚拟相机旋转角度。初始旋转角度可以是就在接收到用于改变用户的视角的请求之前虚拟相机的旋转角度、或者就在最终视角被显示之前虚拟相机的旋转角度,等等。初始旋转角度可以是翻滚、俯仰、和/或偏航中的任何一个。例如,旋转角度可以是翻滚、俯仰、和/或偏航中的任何一个的组合。旋转角度也可以是翻滚、俯仰、或偏航中的单个一个。
在操作504处,接收到将用户的视角改变为特定方向的指示。例如,改变用户视角的指示可以是对运动标记的选择。在这样的示例中,运动标记可以指示用户视角的特定方向,例如朝向视角方向标记。基于用户视角的特定方向,在操作506中确定或识别针对视角改变的期望旋转角度。期望旋转角度是相对于全局坐标系的。例如,期望旋转角度可以是相对于全局坐标的翻滚、俯仰、和/或偏航的值。还可以使用旋转角度的其他标识,例如旋转矩阵或其他欧拉角表示。
一旦识别出相对于全局坐标系的期望旋转角度,就在操作508处确定容器的旋转值。容器的旋转值是基于在其中识别的初始虚拟相机旋转角度和期望旋转角度的。可以确定旋转值以针对初始虚拟相机旋转角度进行补偿,从而使得将容器旋转确定的旋转值引起视角朝向期望的方向定向。作为示例,可以通过首先从360度中减去初始虚拟相机旋转角度来确定容器的旋转值以生成中间值。接下来,将中间值与期望旋转角度相加以生成容器的旋转值。还可以使用模数运算符以使得所得出的旋转值不大于360。可以用于确定旋转值的示例函数如下所示:
//将容器旋转到期望的点
yl=期望角度(在操作506中被确定)
y2=初始虚拟相机角度(在操作502中被确定)
y3=360-y2(中间值)
nY=(yl+y3)%360(容器的旋转值)
上述功能中的%符号是模数运算符。
在操作510处,将容器以确定的旋转值旋转。通过将容器以确定的旋转值旋转,容器使得最终虚拟相机旋转角度等于相对于全局坐标系的期望旋转角度。例如,用户在旋转之后的最终视角处于期望的方向,例如与所选择的运动标记相关联的方向。在一些示例中,HMD上的显示器可以在显示最终视角之前消退为黑色或以其他方式使显示器模糊。例如,在选择运动标记后,屏幕可以消退为黑色,并且在从黑色消退回之后,用户的视角将处于最终虚拟相机角度的朝向。
图6-9和相关联的描述提供了对可以实践本公开的各方面的多种操作环境的讨论。然而,关于图6-9示出和讨论的设备和系统是出于示例和说明的目的的,并且不限制能够用于实践在本文中所描述的本公开的各方面的大量计算设备配置。
图6是示出了可以实践本公开各方面的计算设备600的物理组件(例如,硬件)的框图。下面描述的计算设备组件可以适用于上述计算设备,例如智能电话、平板计算机、HMD、膝上型计算机、台式机或其他计算设备。在基本配置中,计算设备600可以包括至少一个处理单元602和系统存储器604。根据计算设备的配置和类型,系统存储器604可以包括但不限于易失性存储(例如,随机存取存储器)、非易失性存储器(例如,只读存储器)、闪速存储器、或这些存储器的任何组合。
系统存储器604可以包括操作系统605和适合于运行软件应用程序620的一个或多个程序模块606,例如由本文描述的系统支持的一个或多个组件。作为示例,系统存储器604可以存储虚拟世界以及要在虚拟世界内完成的相关功能和操作。例如,操作系统605可以适合于控制计算设备600的操作。
此外,本公开的实施例可以结合图形库、其他操作系统、或任何其他应用程序来实践,并且不限于任何特定应用或系统。该基本配置在图6中由虚线608内的那些组件示出。计算设备600可以具有另外的特征或功能。例如,计算设备600还可以包括另外的数据存储设备(可移动和/或不可移动),例如磁盘、光盘、或磁带。这样的另外的存储在图6中由可移动存储设备609和不可移动存储设备610示出。
如上所述,多个程序模块和数据文件可以存储在系统存储器604中。当在处理单元602上执行时,程序模块606(例如,应用620)可以执行包括但不限于如本文所述的这些方面的处理。可以根据本公开的方面使用的其他程序模块可以包括3D空间生成器624、3D处理和虚拟现实应用626、电子邮件和联系人应用、文字处理应用、电子表格应用、数据库应用、幻灯片演示应用、绘图或计算机辅助应用等。
此外,本公开的实施例可以在包括分立电子元件的电路、包含逻辑门的封装或集成电子芯片、利用微处理器的电路或包含电子元件或微处理器的单个芯片中被实践。例如,本公开的实施例可以经由片上系统(SOC)来实践,其中图6中所示的每个或许多组件可以集成到单个集成电路上。这样的SOC设备可以包括一个或多个处理单元、图形单元、通信单元、系统虚拟化单元和各种应用功能,所有这些都作为单个集成电路集成(或“烧制”)到芯片基底上。当经由SOC操作时,本文描述的关于客户端切换协议的能力的功能可以通过与单个集成电路(芯片)上的计算设备600的其他组件集成的专用逻辑来操作。还可以使用能够执行逻辑运算(例如,与(AND)、或(OR)和非(NOT))的其他技术来实践本公开的实施例,包括但不限于机械、光学、流体和量子技术。另外,本公开的实施例可以在通用计算机或任何其他电路或系统中被实践。
计算设备600还可以具有一个或多个输入设备612,例如键盘、鼠标、笔、声音或语音输入设备、触摸或滑动输入设备、手持游戏控制器等。还可以包括例如显示器、扬声器、打印机等输出设备614。前述设备是示例,并且可以使用其他设备。计算设备600可以包括允许与其他计算设备650进行通信的一个或多个通信连接616。合适的通信连接616的示例包括但不限于射频(RF)发射机、接收机、和/或收发机电路;通用串行总线(USB),并行和/或串行端口。
如本文所使用的术语计算机可读介质可以包括计算机存储介质。计算机存储介质可以包括以用于存储信息的任何方法或技术实现的易失性和非易失性,可移动和不可移动介质,例如计算机可读指令、数据结构或程序模块。系统存储器604、可移动存储设备609和不可移动存储设备610都是计算机存储介质示例(例如,存储器存储)。计算机存储介质可能包括RAM、ROM、电可擦除只读存储器(EEPROM)、闪速存储器或其他存储器技术、CD-ROM、数字通用盘(DVD)或其他光学存储设备、盒式磁带、磁带、磁盘存储或其他磁性存储设备,或可用于存储信息并能够由计算设备600访问的任何其他制品。任何此类计算机存储介质都可以是计算设备600的一部分。计算机存储介质不是载波或其他传播或调制的数据信号。
通信介质可以由计算机可读指令、数据结构、程序模块或诸如载波或其他传输机制之类的已调制数据信号中的其他数据来实施,并且包括任何信息传递介质。术语“已调制数据信号”可以描述这样一种信号,该信号具有以将信息编码在信号中的方式设置或改变的一个或多个特性。作为示例而非限制,通信介质可以包括诸如有线网络或直接有线连接之类的有线介质,以及诸如声学、射频(RF)、红外、和其他无线介质之类的无线介质。
图7A和7B示出了利用其可以实践多个方面的移动计算设备700,例如,移动电话、智能电话、平板个人计算机、膝上型计算机等。参考图7A,示出了用于实现多个方面的移动计算设备700的示例。在基本配置中,移动计算设备700是具有输入元件和输出元件两者的手持式计算机。移动计算设备700通常包括显示器705以及允许用户向移动计算设备700中输入信息的一个或多个输入按钮710。根据一个方面,移动计算设备700的显示器705充当输入设备(例如,触摸屏显示器)。
如果被包括在内,则可选的侧输入元件715允许进一步的用户输入。根据一个方面,侧输入元件715是旋转开关、按钮、或任何其他类型的手动输入元件。在可替代的示例中,移动计算设备700包含更多或更少的输入元件。例如,在一些示例中,显示器705可以不是触摸屏。
在另一可替代的示例中,移动计算设备700是便携式电话系统,例如蜂窝电话。根据一个方面,移动计算设备700包括可选的小键盘735。根据一个方面,可选的小键盘735是物理小键盘。根据另一实施例,可选的小键盘735是在触摸屏显示器上生成的“软”小键盘。
在各种实施例中,输出元件包括用于示出图形用户界面(GUI)的显示器705、视觉指示器720(例如,发光二极管)、和/或音频换能器725(例如,扬声器)。在一些方面中,移动计算设备700包含用于给用户提供触觉反馈的振动换能器。在另一方面中,移动计算设备700包含输入和/或输出端口,例如音频输入(例如,麦克风插孔)、音频输出(例如,耳机插孔)、和视频输出(例如,HDMI端口)。
图7B是示出了移动计算设备的一个方面的架构的框图。也就是说,移动计算设备700包含用于实现一些示例的系统(即,架构)702。在一个实施例中,系统702被实现为能够运行一个或多个应用(例如,浏览器、电子邮件、日历、联系人管理器、消息传送客户端、游戏、和媒体客户端/播放器)的“智能电话”。在一些方面中,系统702被集成为计算设备,例如集成的个人数字助理(PDA)和无线电话。
一个或多个应用程序766被加载到存储器762中并且在操作系统764上运行或者与操作系统764相关联地运行。应用程序的示例包括电话拨号器程序、电子邮件程序、个人信息管理(PIM)程序、文字处理程序、电子表格程序、互联网浏览器程序、消息传送程序等。系统702还包括存储器762内的非易失性存储区域768。非易失性存储区域768用于存储如果系统702断电而不应丢失的持续信息。应用750可以在非易失性存储区域768中使用并存储信息,例如电子邮件或者由电子邮件应用使用的其他消息等。同步应用(未示出)也驻留在系统702上,并且被编程为与驻留在主计算机上的对应的同步应用进行交互,从而将存储在非易失性存储区域768中的信息与存储在主计算机上的对应的信息保持同步。应当理解的是,如在本文中所描述的,其他应用可以被加载到存储器762中并且在移动计算设备700上运行(例如,搜索引擎、提取器模块、相关性排名模块、回答评分模块等)。
系统702具有电源770,其被实现为一个或多个电池。根据一个实施例,电源770还包括外部电源,例如AC适配器或给电池供电或充电的加电对接托架。
系统702包括执行发送和接收无线电频率通信的功能的无线电设备772。无线电设备772经由通信载波或服务提供商来促成系统702与“外部世界”之间的无线连通性。去往或来自无线电设备772的传输是在操作系统764的控制下进行的。换句话说,可以将由无线电设备772所接收的通信经由操作系统764散播至应用程序766,并且反之亦然。
视觉指示器720用于提供视觉通知,和/或音频接口774用于经由音频换能器725产生可听见的通知。在图示的示例中,视觉指示器720是发光二极管(LED),而音频换能器725是扬声器。这些设备可以直接地耦合至电源770,以便当被激活时,即使处理器760和其他组件可以关闭以节省电池电量,这些设备也能保持通电并持续由通知机制所指示的一段时间。LED可以被编程为无限期地保持通电,直到用户采取动作来指示设备的通电状态为止。音频接口774用于向用户提供可听见的信号并从用户接收可听见的信号。例如,除了耦合到音频换能器725之外,音频接口774还可以被耦合至麦克风以接收可听见的输入,例如,以促进电话会话。根据一个实施例,系统702还包括视频接口776,其使得板载相机730的操作能够记录静止图像、视频流等。
根据一个实施例,实现系统702的移动计算设备700具有另外的特征或功能。例如,移动计算设备700包括(可移动的和/或不可移动的)另外的数据存储设备,例如磁盘、光盘、或磁带。在图7B中由非易失性存储区域768示出了这样另外的存储设备。
如上所述,可以将由移动计算设备700生成或捕获并经由系统702存储的数据/信息本地存储在移动计算设备700上,或者可以将数据存储在可以被设备通过无线电接口层772或通过移动计算设备700和与移动计算设备700相关联的单独计算设备(例如,分布式计算网络(例如因特网)中的服务器计算机)之间的有线连接访问的任何数量的存储介质上。应当意识到,可以经由移动计算设备700,经由无线电接口层772或经由分布式计算网络来访问这样的数据/信息。类似地,可以根据包括电子邮件和协作数据/信息共享系统的众所周知的数据/信息传输和存储装置,在计算设备之间容易地传输这样的数据/信息以进行存储和使用。
图8示出了用于处理在计算系统处从远程源(例如,个人计算机804、平板计算设备806、或移动计算设备808)接收的数据的系统的架构的一个方面,如上所述。在服务器设备802处显示的内容可以被存储在不同的通信信道或其他存储类型中。例如,可以使用目录服务822、web门户824、邮箱服务826、虚拟现实存储单元828、或社交网站830来存储各种文档。
可以由与服务器设备802通信的客户端采用3D空间生成器和虚拟现实程序820,和/或服务器设备802可以采用3D空间生成器和虚拟现实程序821。服务器设备802可以通过网络815向诸如个人计算机804、平板计算设备806、和/或移动计算设备808(例如,智能电话)之类的客户端计算设备提供数据并且从其接收数据。作为示例,上述计算机系统可以被实施在个人计算机804、平板计算设备806、移动计算设备808(例如,智能电话)、和/或HMD810中。除了接收可用于在图形发源系统处被预先处理或在进行接收的计算系统处后期处理的图形数据之外,计算设备的这些实施例中的任何一个也可以从存储单元816获得内容。
图9示出了可以结合虚拟现实设备执行在本文中所公开的一个或多个方面的示例性平板计算设备900。另外,本文描述的方面和功能可以在分布式系统(例如,基于云的计算系统)上操作,其中应用功能、存储器、数据存储和检索以及各种处理功能可以在分布式计算网络上彼此远程地操作,例如因特网或内联网。可以经由机载计算设备显示器或经由与一个或多个计算设备相关联的远程显示单元来显示各种类型的用户界面和信息。例如,可以在投射有各种类型的用户界面和信息的墙壁上显示和交互各种类型的用户界面和信息。与可以实践本发明的实施例的多个计算系统的交互包括击键输入、触摸屏输入、语音或其他音频输入、手势输入、其中相关的计算设备配备有用于捕获以及解释用于控制计算设备的功能等的用户手势的检测(例如相机)功能。
从前面的讨论中将理解至少以下方面。在一个方面,该技术涉及一种用于控制虚拟世界中的虚拟相机的视角的方法。该方法包括,基于头戴式显示器的位置,识别相对于虚拟世界的全局坐标系的初始虚拟相机旋转角度,其中虚拟相机被包装在容器中,使得对容器的旋转引起虚拟相机相对于全局坐标系的旋转;接收用于将视角改变为特定方向的指示;识别相对于全局坐标系的期望旋转角度,以使视角对应于特定方向;以及,至少基于期望旋转角度和初始虚拟相机旋转角度,将容器以旋转值旋转。在示例中,旋转容器使得最终虚拟相机旋转角度等于相对于全局坐标系的期望旋转角度。在另一示例中,该方法还包括在HMD的显示屏上显示根据初始虚拟相机角度的虚拟相机的视角;基于接收用于将视角改变为特定方向的指示,将屏幕消退为黑色;并且根据最终虚拟相机旋转角度将屏幕从黑色消退以显示虚拟相机的视角。在又一个示例中,接收指示包括接收对运动标记的选择。在又一个示例中,该方法还包括显示可选择的运动标记,其中对可选择的运动标记的显示指示特定方向。
在另一个示例中,旋转角度包括俯仰角、偏航角或翻滚角中的至少一个。在又一示例中,该方法还包括通过以下步骤来确定旋转值:从360度中减去初始虚拟相机旋转角度以生成中间值;并将中间值与期望旋转角度相加以生成旋转值。
在另一方面,该技术涉及一种系统,包括:头戴式显示器(HMD);至少一个处理器,可操作地连接到HMD;以及存储指令的存储器,当指令由所述至少一个处理器执行时,执行一组操作,包括:基于HMD的位置,识别相对于全局坐标系统虚拟世界的虚拟相机的初始虚拟相机旋转角度,其中虚拟相机被包装在容器中,使得对容器的旋转引起虚拟相机相对于全局坐标系的旋转;接收用于将视角改变为特定方向的指示;识别相对于全局坐标系的期望旋转角度,以使视角对应于特定方向;以及,至少基于期望旋转角度和初始虚拟相机旋转角度,将容器以旋转值旋转。
在一个示例中,旋转容器使得最终虚拟相机旋转角度等于相对于全局坐标系的期望旋转角度。在另一示例中,所述操作还包括:在HMD的显示屏幕上,根据初始虚拟相机角度显示虚拟相机的视角;基于接收用于将视角改变为特定方向的指示,将屏幕消退为黑色;并且根据最终虚拟相机旋转角度将屏幕从黑色消退以显示虚拟相机的视角。在又一个示例中,接收指示包括接收对运动标记的选择。在又一个示例中,操作还包括显示可选择的运动标记,其中对可选择的运动标记的显示指示特定方向。在另一示例中,旋转角度包括俯仰角、偏航角或翻滚角中的至少一个。在又一示例中,操作还包括通过以下步骤确定旋转值:从360度中减去初始虚拟相机旋转角度以生成中间值;并将中间值与期望旋转角度相加以生成旋转值。
在另一方面,该技术涉及一种用于控制虚拟世界中的虚拟相机的视角的方法。该方法包括,基于头戴式显示器的位置,识别虚拟相机的初始虚拟相机旋转角度,其中虚拟相机与容器相关联,使得对容器的旋转引起虚拟相机相对于全局坐标系旋转;在HMD的显示屏上显示根据初始虚拟相机角度的虚拟相机的视角;在HMD的显示屏上显示运动标记;接收对运动标记的选择;识别对应于所选择的运动标记的视角的特定方向;识别期望旋转角度以使视角对应于特定方向;以及,至少基于期望旋转角度和初始虚拟相机旋转角度,将容器以旋转值旋转。在示例中,旋转容器使得最终虚拟相机旋转角度等于相对于全局坐标系的期望旋转角度。在另一示例中,旋转角度包括俯仰角、偏航角或翻滚角中的至少一个。在又一示例中,操作还包括通过以下步骤确定旋转值:从360度中减去初始虚拟相机旋转角度以生成中间值;并将中间值与期望旋转角度相加以生成旋转值。在又一个示例中,该方法还包括确定用户的视角是否在预先确定的区域内,并且其中,显示该运动标记是基于用户的视角在预先确定的区域内的。在另一示例中,该方法还包括显示捕捉区和视角方向标记。
例如,以上参考根据本公开的方面的方法、系统和计算机程序产品的框图和/或操作图示描述了本公开的各方面。框中记录的功能/动作可以不按任何流程图所示的顺序发生。例如,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行,这取决于所涉及的功能/动作。
本申请中提供的一个或多个方面的描述和说明不旨在以任何方式限制或限制本公开的范围。本申请中提供的方面、示例和细节被认为足以传达所有权并使其他人能够制作和使用所要求技术的最佳模式。要求保护的技术不应被解释为限于本申请中提供的任何方面、示例或细节。无论是组合地还是单独地示出和描述,旨在选择性地包括或省略各种特征(结构和方法)以产生具有特定特征集的实施例。例如,上述示例可以容易地彼此组合。已经提供了本申请的描述和说明,本领域技术人员可以设想落入本申请中体现的总体发明构思的更广泛方面的精神内的变型、修改和替换方面,其不脱离要求保护的公开内容的更广泛的范围。

Claims (15)

1.一种用于控制虚拟世界中的虚拟相机的视角的方法,所述方法包括:
基于头戴式显示器的位置,识别相对于所述虚拟世界的全局坐标系的初始虚拟相机旋转角度,其中,所述虚拟相机被包装在容器中,以使得对所述容器的旋转引起所述虚拟相机相对于所述全局坐标系的旋转;
接收对将所述视角改变为特定方向的指示;
针对与所述特定方向相对应的视角,识别相对于所述全局坐标系的期望旋转角度;以及
至少基于所述期望旋转角度和所述初始虚拟相机旋转角度两者来将所述容器以旋转值旋转。
2.根据权利要求1所述的方法,其中,旋转所述容器使得最终虚拟相机旋转角度等于相对于所述全局坐标系的所述期望旋转角度。
3.根据权利要求1所述的方法,还包括:
根据所述初始虚拟相机角度来在所述HMD的显示屏上显示所述虚拟相机的所述视角;
基于接收到对将所述视角改变为特定方向的指示,将所述屏消退为黑色;以及
根据所述最终虚拟相机旋转角度,将所述屏从黑色消退为显示所述虚拟相机的所述视角。
4.根据权利要求1所述的方法,其中,接收所述指示包括接收对运动标记的选择。
5.根据权利要求1所述的方法,还包括显示可选择的运动标记,其中,对所述可选择的运动标记的所述显示指示所述特定方向。
6.根据权利要求1所述的方法,其中,所述旋转角度包括俯仰角、偏航角、或翻滚角中的至少一个。
7.根据权利要求1所述的方法,还包括通过以下操作来确定所述旋转值:
从360度中减去所述初始虚拟相机旋转角度以生成中间值;以及
将所述中间值与所述期望旋转角度相加以生成所述旋转值。
8.一种系统,包括:
头戴式显示器(HMD);
至少一个处理器,其操作性地连接至所述HMD;以及
存储指令的存储器,所述指令当由所述至少一个处理器执行时进行一组操作,所述操作包括:
基于所述HMD的位置,识别虚拟相机相对于虚拟世界的全局坐标系的初始虚拟相机旋转角度,其中,所述虚拟相机被包装在容器中,以使得对所述容器的旋转引起所述虚拟相机相对于所述全局坐标系的旋转;
接收对将所述视角改变为特定方向的指示;
针对与所述特定方向相对应的视角,识别相对于所述全局坐标系的期望旋转角度;以及
至少基于所述期望旋转角度和所述初始虚拟相机旋转角度两者来将所述容器以旋转值旋转。
9.根据权利要求8所述的系统,其中,旋转所述容器使得最终虚拟相机旋转角度等于相对于所述全局坐标系的所述期望旋转角度。
10.一种用于控制虚拟世界中的虚拟相机的视角的方法,所述方法包括:
基于头戴式显示器的位置,识别虚拟相机的初始虚拟相机旋转角度,其中,所述虚拟相机与容器相关联,以使得对所述容器的旋转引起所述虚拟相机相对于所述全局坐标系的旋转;
根据所述初始虚拟相机角度来在所述HMD的显示屏上显示所述虚拟相机的所述视角;
在所述HMD的所述显示屏上显示运动标记;
接收对所述运动标记的选择;
识别与所选择的运动标记相对应的视角的特定方向;
针对与所述特定方向相对应的视角,识别期望旋转角度;以及
至少基于所述期望旋转角度和所述初始虚拟相机旋转角度两者来将所述容器以旋转值旋转。
11.根据权利要求10所述的方法,其中,旋转所述容器使得最终虚拟相机旋转角度等于相对于所述全局坐标系的所述期望旋转角度。
12.根据权利要求10所述的方法,其中,所述旋转角度包括俯仰角、偏航角、或翻滚角中的至少一个。
13.根据权利要求10所述的方法,其中,所述操作还包括通过以下操作来确定所述旋转值:
从360度中减去所述初始虚拟相机旋转角度以生成中间值;以及
将所述中间值与所述期望旋转角度相加以生成所述旋转值。
14.根据权利要求10所述的方法,还包括确定所述用户的视角是否在预先确定的区域内,并且其中,显示所述运动标记是基于所述用户的所述视角在所述预先确定的区域内的。
15.根据权利要求10所述的方法,还包括显示捕捉区和视角方向标记。
CN201880027519.5A 2017-04-25 2018-04-11 基于容器的虚拟相机旋转 Active CN110573997B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201762489904P 2017-04-25 2017-04-25
US62/489,904 2017-04-25
US15/636,359 2017-06-28
US15/636,359 US11436811B2 (en) 2017-04-25 2017-06-28 Container-based virtual camera rotation
PCT/US2018/026995 WO2018200200A1 (en) 2017-04-25 2018-04-11 Container-based virtual camera rotation

Publications (2)

Publication Number Publication Date
CN110573997A true CN110573997A (zh) 2019-12-13
CN110573997B CN110573997B (zh) 2021-12-03

Family

ID=63854033

Family Applications (4)

Application Number Title Priority Date Filing Date
CN201880027189.XA Active CN110832450B (zh) 2017-04-25 2018-04-11 用于基于用户特性在虚拟或半虚拟空间中提供对象的方法和系统
CN202410453813.XA Pending CN118170283A (zh) 2017-04-25 2018-04-11 用于基于用户特性在虚拟或半虚拟空间中提供对象的方法和系统
CN201880027519.5A Active CN110573997B (zh) 2017-04-25 2018-04-11 基于容器的虚拟相机旋转
CN201880027186.6A Active CN110573224B (zh) 2017-04-25 2018-04-11 三维环境创作和生成

Family Applications Before (2)

Application Number Title Priority Date Filing Date
CN201880027189.XA Active CN110832450B (zh) 2017-04-25 2018-04-11 用于基于用户特性在虚拟或半虚拟空间中提供对象的方法和系统
CN202410453813.XA Pending CN118170283A (zh) 2017-04-25 2018-04-11 用于基于用户特性在虚拟或半虚拟空间中提供对象的方法和系统

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201880027186.6A Active CN110573224B (zh) 2017-04-25 2018-04-11 三维环境创作和生成

Country Status (18)

Country Link
US (5) US10388077B2 (zh)
EP (3) EP3615155A1 (zh)
JP (2) JP7189152B2 (zh)
KR (2) KR102707334B1 (zh)
CN (4) CN110832450B (zh)
AU (2) AU2018260575B2 (zh)
BR (1) BR112019022129A2 (zh)
CA (2) CA3056953A1 (zh)
CL (2) CL2019002950A1 (zh)
CO (2) CO2019011870A2 (zh)
IL (2) IL270112B (zh)
MX (2) MX2019012624A (zh)
MY (1) MY202365A (zh)
PH (2) PH12019550189A1 (zh)
RU (2) RU2019137605A (zh)
SG (2) SG11201909454QA (zh)
WO (3) WO2018200201A1 (zh)
ZA (2) ZA201905873B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110313175A (zh) * 2019-03-20 2019-10-08 北京小米移动软件有限公司 在vr360应用中传输视点切换能力的方法和装置

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230098927A (ko) * 2016-03-31 2023-07-04 매직 립, 인코포레이티드 포즈들 및 멀티-dof 제어기들을 사용하는 3d 가상 객체들과상호작용들
US10388077B2 (en) 2017-04-25 2019-08-20 Microsoft Technology Licensing, Llc Three-dimensional environment authoring and generation
EP3486749B1 (en) * 2017-11-20 2022-05-11 Nokia Technologies Oy Provision of virtual reality content
US10225360B1 (en) * 2018-01-24 2019-03-05 Veeva Systems Inc. System and method for distributing AR content
CN112020719A (zh) * 2018-03-22 2020-12-01 惠普发展公司,有限责任合伙企业 三维环境中的数字标记
US10916066B2 (en) * 2018-04-20 2021-02-09 Edx Technologies, Inc. Methods of virtual model modification
US20190391647A1 (en) * 2018-06-25 2019-12-26 Immersion Corporation Real-world haptic interactions for a virtual reality user
JP6745301B2 (ja) * 2018-07-25 2020-08-26 株式会社バーチャルキャスト コンテンツ配信システム、コンテンツ配信方法、コンピュータプログラム
CN110010019B (zh) * 2019-04-15 2021-07-06 珠海格力智能装备有限公司 一种装配led屏的控制方法及装置
US11756259B2 (en) * 2019-04-17 2023-09-12 Rakuten Group, Inc. Display controlling device, display controlling method, program, and non-transitory computer-readable information recording medium
US11048376B2 (en) 2019-05-15 2021-06-29 Microsoft Technology Licensing, Llc Text editing system for 3D environment
US11030822B2 (en) 2019-05-15 2021-06-08 Microsoft Technology Licensing, Llc Content indicators in a 3D environment authoring application
US11087560B2 (en) 2019-05-15 2021-08-10 Microsoft Technology Licensing, Llc Normalization of objects for a 3D environment within an authoring application
US11039061B2 (en) 2019-05-15 2021-06-15 Microsoft Technology Licensing, Llc Content assistance in a three-dimensional environment
US11287947B2 (en) 2019-05-15 2022-03-29 Microsoft Technology Licensing, Llc Contextual input in a three-dimensional environment
US11164395B2 (en) 2019-05-15 2021-11-02 Microsoft Technology Licensing, Llc Structure switching in a three-dimensional environment
US11010984B2 (en) * 2019-06-05 2021-05-18 Sagan Works, Inc. Three-dimensional conversion of a digital file spatially positioned in a three-dimensional virtual environment
JPWO2021124920A1 (zh) * 2019-12-19 2021-06-24
KR20220046356A (ko) * 2020-10-07 2022-04-14 삼성전자주식회사 이동 통신 시스템에서 컨텐츠를 렌더링하는 방법 및 장치
US11847746B2 (en) * 2020-12-03 2023-12-19 Electronics And Telecommunications Research Institute Server and method for generating best view spots
US20230245689A1 (en) * 2022-02-01 2023-08-03 Lakshminath Reddy Dondeti System and method for automatically creating transition videos

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020158873A1 (en) * 2001-01-26 2002-10-31 Todd Williamson Real-time virtual viewpoint in simulated reality environment
CN103761996A (zh) * 2013-10-18 2014-04-30 中广核检测技术有限公司 基于虚拟现实技术的无损检测机器人智能检测方法
CN105453011A (zh) * 2013-06-18 2016-03-30 微软技术许可有限责任公司 虚拟对象朝向和可视化
CN105912310A (zh) * 2015-12-04 2016-08-31 乐视致新电子科技(天津)有限公司 基于虚拟现实应用的用户界面控件实现方法和装置
CN106462324A (zh) * 2014-06-02 2017-02-22 爱皮蓝博有限责任公司 一种用于在虚拟环境内提供交互性的方法和系统
CN106457569A (zh) * 2014-04-10 2017-02-22 宽射咨询公司 机器人系统及操作机器人系统的方法

Family Cites Families (87)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5511157A (en) 1993-12-13 1996-04-23 International Business Machines Corporation Connection of sliders to 3D objects to allow easy user manipulation and viewing of objects
JPH09282483A (ja) 1996-04-19 1997-10-31 Nec Corp 映像生成装置
WO1998007129A1 (fr) 1996-08-14 1998-02-19 Latypov Nurakhmed Nurislamovic Procede de suivi et de representation de la position et de l'orientation d'un sujet dans l'espace, procede de presentation d'un espace virtuel a ce sujet, et systemes de mise en oeuvre de ces procedes
US6050822A (en) 1997-10-01 2000-04-18 The United States Of America As Represented By The Secretary Of The Army Electromagnetic locomotion platform for translation and total immersion of humans into virtual environments
KR100261272B1 (ko) * 1997-10-28 2000-07-01 정선종 인터넷 웹 환경에서 3차원 가상공간 동적구성방법
JP3123501B2 (ja) 1998-03-16 2001-01-15 日本電気株式会社 空間視点制御装置
JP3341734B2 (ja) 1999-09-13 2002-11-05 凸版印刷株式会社 映像表示装置
US7043695B2 (en) 2000-09-19 2006-05-09 Technion Research & Development Foundation Ltd. Object positioning and display in virtual environments
JP4497690B2 (ja) 2000-09-20 2010-07-07 株式会社バンダイナムコゲームス ゲームシステム及び情報記憶媒体
US6646643B2 (en) 2001-01-05 2003-11-11 The United States Of America As Represented By The Secretary Of The Navy User control of simulated locomotion
JP3701614B2 (ja) 2001-03-09 2005-10-05 株式会社ソニー・コンピュータエンタテインメント 仮想空間制御プログラム、仮想空間制御プログラムを記録した記録媒体、プログラム実行装置、仮想空間制御方法
CA2347290C (en) 2001-05-09 2006-10-17 Free Radical Design Limited Methods and apparatus for constructing virtual environments
US20040109031A1 (en) 2001-05-11 2004-06-10 Kenneth Deaton Method and system for automatically creating and displaying a customizable three-dimensional graphical user interface (3D GUI) for a computer system
US7269632B2 (en) 2001-06-05 2007-09-11 Xdyne, Inc. Networked computer system for communicating and operating in a virtual reality environment
US20030146973A1 (en) 2001-11-09 2003-08-07 Swift David C 3D stereoscopic enabling methods for a monoscopic application to support 3D stereoscopic imaging
US7117450B1 (en) 2002-03-15 2006-10-03 Apple Computer, Inc. Method and apparatus for determining font attributes
CA2523623A1 (en) 2002-11-29 2004-07-22 Bracco Imaging, S.P.A. Method and system for scaling control in 3d displays
JP4122983B2 (ja) 2003-01-17 2008-07-23 株式会社三洋物産 遊技機
US7570261B1 (en) * 2003-03-06 2009-08-04 Xdyne, Inc. Apparatus and method for creating a virtual three-dimensional environment, and method of generating revenue therefrom
US6990637B2 (en) 2003-10-23 2006-01-24 Microsoft Corporation Graphical user interface for 3-dimensional view of a data collection based on an attribute of the data
DE102004017730B4 (de) 2004-04-10 2006-05-24 Christian-Albrechts-Universität Zu Kiel Verfahren zur Rotationskompensation sphärischer Bilder
US8207966B2 (en) * 2004-05-26 2012-06-26 Sony Online Entertainment Llc Terrain editor tool for rule-based procedural terrain generation
US8585476B2 (en) 2004-11-16 2013-11-19 Jeffrey D Mullen Location-based games and augmented reality systems
WO2006135756A1 (en) * 2005-06-09 2006-12-21 Intepoint, Llc Multi-infrastructure modeling system
US8473263B2 (en) 2005-06-09 2013-06-25 William J. Tolone Multi-infrastructure modeling and simulation system
US8224024B2 (en) 2005-10-04 2012-07-17 InterSense, LLC Tracking objects with markers
CN100421119C (zh) 2006-07-11 2008-09-24 北京金山软件有限公司 一种游戏中的地图绘制方法
US8601386B2 (en) 2007-04-20 2013-12-03 Ingenio Llc Methods and systems to facilitate real time communications in virtual reality
US8584025B2 (en) 2008-05-02 2013-11-12 International Business Machines Corporation Virtual world teleportation
US8737721B2 (en) 2008-05-07 2014-05-27 Microsoft Corporation Procedural authoring
US20100045701A1 (en) 2008-08-22 2010-02-25 Cybernet Systems Corporation Automatic mapping of augmented reality fiducials
US8493408B2 (en) 2008-11-19 2013-07-23 Apple Inc. Techniques for manipulating panoramas
US9067097B2 (en) 2009-04-10 2015-06-30 Sovoz, Inc. Virtual locomotion controller apparatus and methods
CN101930623B (zh) * 2009-06-26 2012-12-12 比亚迪股份有限公司 一种三维道路模型化方法及装置
WO2011012142A1 (en) 2009-07-29 2011-02-03 Metaio Gmbh Method for determining the pose of a camera with respect to at least one real object
US20110270135A1 (en) 2009-11-30 2011-11-03 Christopher John Dooley Augmented reality for testing and training of human performance
EP2381423A1 (en) 2010-03-26 2011-10-26 Alcatel Lucent Method for transforming web from 2d into 3d
KR20120001114A (ko) * 2010-06-29 2012-01-04 주식회사 태울엔터테인먼트 가상세계 실시간 3d 객체 제어와 이를 위한 인터페이스 및 입출력 방법
US20120233555A1 (en) 2010-11-08 2012-09-13 Eyelead Sa Real-time multi-user collaborative editing in 3d authoring system
US20120143681A1 (en) * 2010-12-02 2012-06-07 Microsoft Corporation Room-based computing environments
US9407904B2 (en) 2013-05-01 2016-08-02 Legend3D, Inc. Method for creating 3D virtual reality from 2D images
KR101971948B1 (ko) 2011-07-28 2019-04-24 삼성전자주식회사 평면 특성 기반 마커리스 증강 현실 시스템 및 그 동작 방법
US20130144566A1 (en) 2011-08-02 2013-06-06 Design Play Technologies Inc. Real-time collaborative design platform
US10019962B2 (en) 2011-08-17 2018-07-10 Microsoft Technology Licensing, Llc Context adaptive user interface for augmented reality display
US9311883B2 (en) 2011-11-11 2016-04-12 Microsoft Technology Licensing, Llc Recalibration of a flexible mixed reality device
KR102116697B1 (ko) 2011-11-23 2020-05-29 매직 립, 인코포레이티드 3차원 가상 및 증강 현실 디스플레이 시스템
US8681179B2 (en) 2011-12-20 2014-03-25 Xerox Corporation Method and system for coordinating collisions between augmented reality and real reality
US9311744B2 (en) 2012-01-09 2016-04-12 Fca Us Llc System and method for generating an outer layer representation of an object
US9210413B2 (en) 2012-05-15 2015-12-08 Imagine Mobile Augmented Reality Ltd System worn by a moving user for fully augmenting reality by anchoring virtual objects
US9429912B2 (en) 2012-08-17 2016-08-30 Microsoft Technology Licensing, Llc Mixed reality holographic object development
CA2927447C (en) 2012-10-23 2021-11-30 Roam Holdings, LLC Three-dimensional virtual environment
US9251590B2 (en) 2013-01-24 2016-02-02 Microsoft Technology Licensing, Llc Camera pose estimation for 3D reconstruction
US20140245160A1 (en) * 2013-02-22 2014-08-28 Ubiquiti Networks, Inc. Mobile application for monitoring and controlling devices
WO2014160342A1 (en) 2013-03-13 2014-10-02 The University Of North Carolina At Chapel Hill Low latency stabilization for head-worn displays
US9367136B2 (en) * 2013-04-12 2016-06-14 Microsoft Technology Licensing, Llc Holographic object feedback
US20160125655A1 (en) 2013-06-07 2016-05-05 Nokia Technologies Oy A method and apparatus for self-adaptively visualizing location based digital information
KR102191867B1 (ko) 2013-07-10 2020-12-16 엘지전자 주식회사 복수의 유저 인터페이스 포맷을 포함하는 헤드 마운티드 디스플레이 디바이스 및 그 제어 방법
US8860818B1 (en) 2013-07-31 2014-10-14 Apple Inc. Method for dynamically calibrating rotation offset in a camera system
US9451162B2 (en) 2013-08-21 2016-09-20 Jaunt Inc. Camera array including camera modules
KR101873127B1 (ko) 2013-09-30 2018-06-29 피씨엠에스 홀딩스, 인크. 증강 현실 디스플레이 및/또는 사용자 인터페이스를 제공하기 위한 방법, 장치, 시스템, 디바이스, 및 컴퓨터 프로그램 제품
US9669300B2 (en) 2013-12-27 2017-06-06 Ballcraft, Llc Motion detection for existing portable devices
CA2843576A1 (en) 2014-02-25 2015-08-25 Evelyn J. Saurette Computer-implemented method of real estate sales
US9817375B2 (en) 2014-02-26 2017-11-14 Board Of Trustees Of The University Of Alabama Systems and methods for modeling energy consumption and creating demand response strategies using learning-based approaches
US10203762B2 (en) 2014-03-11 2019-02-12 Magic Leap, Inc. Methods and systems for creating virtual and augmented reality
US9392212B1 (en) 2014-04-17 2016-07-12 Visionary Vr, Inc. System and method for presenting virtual reality content to a user
US10416760B2 (en) * 2014-07-25 2019-09-17 Microsoft Technology Licensing, Llc Gaze-based object placement within a virtual reality environment
US9766460B2 (en) 2014-07-25 2017-09-19 Microsoft Technology Licensing, Llc Ground plane adjustment in a virtual reality environment
US9892560B2 (en) 2014-09-11 2018-02-13 Nant Holdings Ip, Llc Marker-based augmented reality authoring tools
US9911235B2 (en) 2014-11-14 2018-03-06 Qualcomm Incorporated Spatial interaction in augmented reality
KR20210097818A (ko) 2014-12-18 2021-08-09 페이스북, 인크. 가상 현실 환경에서의 내비게이션을 위한 방법, 시스템 및 장치
WO2016138178A1 (en) 2015-02-25 2016-09-01 Brian Mullins Visual gestures for a head mounted device
JP6110893B2 (ja) 2015-06-12 2017-04-05 株式会社コロプラ 仮想空間位置指定方法、プログラム、プログラムを記録した記録媒体、および、装置
US9520002B1 (en) 2015-06-24 2016-12-13 Microsoft Technology Licensing, Llc Virtual place-located anchor
US20160379405A1 (en) * 2015-06-26 2016-12-29 Jim S Baca Technologies for generating computer models, devices, systems, and methods utilizing the same
WO2017024118A1 (en) 2015-08-04 2017-02-09 Google Inc. Hover behavior for gaze interactions in virtual reality
JP6346131B2 (ja) 2015-09-07 2018-06-20 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置および画像生成方法
JP5869177B1 (ja) 2015-09-16 2016-02-24 株式会社コロプラ 仮想現実空間映像表示方法、及び、プログラム
JP6361714B2 (ja) 2015-09-30 2018-07-25 キヤノンマーケティングジャパン株式会社 情報処理装置、情報処理システム、その制御方法及びプログラム
JP6298432B2 (ja) 2015-10-19 2018-03-20 株式会社コロプラ 画像生成装置、画像生成方法、及び画像生成プログラム
US10018847B2 (en) 2015-10-28 2018-07-10 Honeywell International Inc. Methods of vestibulo-ocular reflex correction in display systems
US11010972B2 (en) 2015-12-11 2021-05-18 Google Llc Context sensitive user interface activation in an augmented and/or virtual reality environment
WO2017112013A1 (en) 2015-12-22 2017-06-29 Google Inc. System and method for performing electronic display stabilization via retained lightfield rendering
KR20170099755A (ko) 2016-02-24 2017-09-01 주식회사 메타포트 보행 시뮬레이터용 hmd
RU168332U1 (ru) 2016-06-06 2017-01-30 Виталий Витальевич Аверьянов Устройство для воздействия на виртуальные объекты дополненной реальности
US20170372499A1 (en) 2016-06-27 2017-12-28 Google Inc. Generating visual cues related to virtual objects in an augmented and/or virtual reality environment
US10388077B2 (en) 2017-04-25 2019-08-20 Microsoft Technology Licensing, Llc Three-dimensional environment authoring and generation
US11087560B2 (en) 2019-05-15 2021-08-10 Microsoft Technology Licensing, Llc Normalization of objects for a 3D environment within an authoring application

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020158873A1 (en) * 2001-01-26 2002-10-31 Todd Williamson Real-time virtual viewpoint in simulated reality environment
CN105453011A (zh) * 2013-06-18 2016-03-30 微软技术许可有限责任公司 虚拟对象朝向和可视化
CN103761996A (zh) * 2013-10-18 2014-04-30 中广核检测技术有限公司 基于虚拟现实技术的无损检测机器人智能检测方法
CN106457569A (zh) * 2014-04-10 2017-02-22 宽射咨询公司 机器人系统及操作机器人系统的方法
CN106462324A (zh) * 2014-06-02 2017-02-22 爱皮蓝博有限责任公司 一种用于在虚拟环境内提供交互性的方法和系统
CN105912310A (zh) * 2015-12-04 2016-08-31 乐视致新电子科技(天津)有限公司 基于虚拟现实应用的用户界面控件实现方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ANDY BORRELL: "Introducing the Oculus Sample Framework for Unity 5", 《HTTPS://DEVELOPER.OCULUS.COM/BLOG/INTRODUCING-THE-OCULUS-SAMPLE-FRAMEWORK-FOR-UNITY-5/》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110313175A (zh) * 2019-03-20 2019-10-08 北京小米移动软件有限公司 在vr360应用中传输视点切换能力的方法和装置

Also Published As

Publication number Publication date
MX2019012624A (es) 2020-01-30
WO2018200200A1 (en) 2018-11-01
US20220375181A1 (en) 2022-11-24
CN110573224B (zh) 2023-09-01
CA3056956A1 (en) 2018-11-01
AU2018260575A1 (en) 2019-09-19
IL270118A (zh) 2019-12-31
CN110573997B (zh) 2021-12-03
KR20190141162A (ko) 2019-12-23
EP3615155A1 (en) 2020-03-04
PH12019550188A1 (en) 2020-06-08
MY202365A (en) 2024-04-24
US11436811B2 (en) 2022-09-06
IL270112A (zh) 2019-12-31
CO2019011870A2 (es) 2020-01-17
CN118170283A (zh) 2024-06-11
ZA201905870B (en) 2020-11-25
IL270118B2 (en) 2023-06-01
NZ756888A (en) 2023-10-27
SG11201909454QA (en) 2019-11-28
CA3056953A1 (en) 2018-11-01
PH12019550189A1 (en) 2020-06-29
RU2019137607A3 (zh) 2021-07-12
RU2019137607A (ru) 2021-05-25
US20180308290A1 (en) 2018-10-25
US20180308289A1 (en) 2018-10-25
CO2019011966A2 (es) 2020-01-17
CN110573224A (zh) 2019-12-13
EP3616032A1 (en) 2020-03-04
KR102707334B1 (ko) 2024-09-13
AU2018260575B2 (en) 2022-04-21
IL270112B (en) 2022-07-01
MX2019012626A (es) 2020-01-30
WO2018200201A1 (en) 2018-11-01
ZA201905873B (en) 2020-12-23
BR112019022129A2 (pt) 2020-05-05
AU2018257944B2 (en) 2022-09-29
JP7189152B2 (ja) 2022-12-13
SG11201909455UA (en) 2019-11-28
JP2020518071A (ja) 2020-06-18
CN110832450A (zh) 2020-02-21
IL270118B1 (zh) 2023-02-01
AU2018257944A1 (en) 2019-09-19
WO2018200199A1 (en) 2018-11-01
RU2019137605A (ru) 2021-05-25
US11138809B2 (en) 2021-10-05
US10388077B2 (en) 2019-08-20
US10453273B2 (en) 2019-10-22
CL2019002950A1 (es) 2020-03-13
RU2765341C2 (ru) 2022-01-28
EP3616043A1 (en) 2020-03-04
CL2019002951A1 (es) 2020-03-13
US20180308274A1 (en) 2018-10-25
CN110832450B (zh) 2024-04-23
US20200013236A1 (en) 2020-01-09
JP2020518077A (ja) 2020-06-18
KR20190139902A (ko) 2019-12-18
JP7080902B2 (ja) 2022-06-06
BR112019019556A2 (pt) 2020-04-22
US12008725B2 (en) 2024-06-11

Similar Documents

Publication Publication Date Title
CN110573997B (zh) 基于容器的虚拟相机旋转
US11039061B2 (en) Content assistance in a three-dimensional environment
US11087560B2 (en) Normalization of objects for a 3D environment within an authoring application
US11030822B2 (en) Content indicators in a 3D environment authoring application
US10354140B2 (en) Video noise reduction for video augmented reality system
US11048376B2 (en) Text editing system for 3D environment
US20180217383A1 (en) Text rendering by microshifting the display in a head mounted display
NZ756888B2 (en) Container-based virtual camera rotation

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40017926

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant