CN108139805A - 用于在虚拟现实环境中的导航的控制系统 - Google Patents

用于在虚拟现实环境中的导航的控制系统 Download PDF

Info

Publication number
CN108139805A
CN108139805A CN201680059255.2A CN201680059255A CN108139805A CN 108139805 A CN108139805 A CN 108139805A CN 201680059255 A CN201680059255 A CN 201680059255A CN 108139805 A CN108139805 A CN 108139805A
Authority
CN
China
Prior art keywords
virtual
setting
user
reference point
feature
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
CN201680059255.2A
Other languages
English (en)
Other versions
CN108139805B (zh
Inventor
马蒂亚斯·布尔曼
多米尼克·菲利蒙·克泽尔
王隽伯
马修·西格米勒
埃文·哈德斯蒂·帕克
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.)
Google LLC
Original Assignee
Google 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 Google LLC filed Critical Google LLC
Publication of CN108139805A publication Critical patent/CN108139805A/zh
Application granted granted Critical
Publication of CN108139805B publication Critical patent/CN108139805B/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
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/1613Constructional details or arrangements for portable computers
    • G06F1/163Wearable computers, e.g. on a belt
    • 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/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye 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/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/014Hand-worn input/output arrangements, e.g. data gloves
    • 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/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • 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
    • 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
    • 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/04845Interaction 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 for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • 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/0486Drag-and-drop
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/20Linear translation of a whole image or part thereof, e.g. panning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/40Scaling the whole image or part thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/038Indexing scheme relating to G06F3/038
    • G06F2203/0384Wireless input, i.e. hardware and software details of wireless interface arrangements for pointing devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04806Zoom, i.e. interaction techniques or interactors for controlling the zooming operation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/21Collision detection, intersection

Abstract

在用于在虚拟现实环境中导航的控制系统中,用户可以在虚拟环境中选择虚拟特征,并在所选特征上设置锚点。用户然后可相对于该特征移动或调整位置,和/或在虚拟环境中移动和/或缩放该特征,将该特征的部分保持在用户的虚拟环境视野内的设置锚点处。

Description

用于在虚拟现实环境中的导航的控制系统
相关申请的相交引用
本申请是2016年11月15日提交的标题为“用于在虚拟现实环境中的导航的控制系统”的美国非临时专利申请第15/352,162号的继续申请并要求其优先权,该美国非临时专利申请要求2016年2月8日提交的标题为“用于在虚拟现实环境中的导航的控制系统”的美国临时专利申请第62/292,602号的优先权,它们的公开内容通过引用整体并入本文。
本申请还要求2016年2月8日提交的美国临时专利申请No.62/292,602的优先权,其公开内容通过引用整体并入本文。
技术领域
本申请一般涉及增强现实和/或虚拟现实环境中的移动和缩放。
背景技术
增强现实(AR)和/或虚拟现实(VR)系统可以生成三维(3D)沉浸式虚拟环境。用户可以通过与各种电子设备的交互来体验这种3D沉浸式虚拟环境,诸如包括显示器、用户在观看显示设备时看过去的眼镜或护目镜的头盔或其他头戴式设备、装有传感器的手套、包括传感器的外部手持设备以及其他这样的电子设备。一旦沉浸在3D虚拟环境中,用户可通过电子设备的物理移动和/或操纵而移动通过虚拟环境并移动到虚拟环境的其他区域,以与虚拟环境交互并个性化与虚拟环境的交互。
发明内容
在一个方面,一种方法可以包括:生成虚拟环境;在与头戴式显示设备通信的控制器的用户接口处检测第一输入;响应于所述第一输入,在所述虚拟环境中的所选虚拟特征上设置锚点;检测第二输入;以及响应于所述第二输入,限定围绕所述锚点的所述特征的区域;并且调整在所述虚拟环境中的所述虚拟特征的位置或比例中的至少一个,同时将所述限定区域内的所述虚拟特征的一部分保持在所述虚拟环境的用户视野内。
在另一方面,一种系统可以包括被配置为生成沉浸式虚拟环境的计算设备,所述计算设备包括:存储可执行指令的存储器;以及被配置为执行所述指令的处理器。所述处理器可以使计算设备:生成虚拟环境;在与头戴式显示设备通信的控制器的用户接口处检测第一输入;响应于所述第一输入,在所述虚拟环境中的所选虚拟特征上设置锚点;检测第二输入;以及响应于所述第二输入,限定围绕所述锚点的所述特征的区域;并且调整在所述虚拟环境中的所述虚拟特征的位置或比例中的至少一个,同时将所述限定区域内的所述虚拟特征的一部分保持在所述虚拟环境的用户视野内。
在附图和下面的描述中阐述了一个或多个实施方式的细节。其他特征将从说明书和附图以及权利要求中显而易见。
附图说明
图1是根据本文描述的实施方式的包括头戴式显示设备和控制器的虚拟现实系统的示例实施方式。
图2A和图2B是根据在此描述的实施方式的示例头戴式显示器的透视图,并且图2C图示出控制器。
图3是根据本文描述的实施方式的头戴式电子设备和控制器的框图。
图4A-4F、5和6A-6F是根据本文描述的实施方式的图示出增强和/或虚拟现实环境中的导航和缩放的第三人视图。
图7A和图7B图示出了根据本文描述的实施方式的增强和/或虚拟现实环境中的虚拟照片球体中的移动。
图8是根据本文描述的实施方式的在增强和/或虚拟现实环境中导航和缩放的方法的流程图。
图9示出了可以用于实施方式在此描述的技术的计算机设备和移动计算机设备的示例。
具体实施方式
沉浸在戴着例如头戴式显示器(HMD)设备的3D虚拟环境中的用户可以探索3D虚拟环境并且通过各种不同类型的输入与3D虚拟环境交互。这些输入可以包括例如物理交互,包括例如与HMD分离的电子设备的操纵、HMD本身的操纵和/或通过手/手臂姿态以及头部运动和/或头部和/或眼睛定向凝视等。用户可以实现这些不同类型的交互中的一个或多个以在虚拟环境中执行特定动作,诸如移动通过虚拟环境或相对于用户移动虚拟环境、从虚拟环境的第一区域向虚拟环境的第二区域移动或转换或者传送信息、调整虚拟环境所经历的视角等。
根据本文描述的实施方式的系统和方法可以促进对虚拟环境中的特征的操纵,并且可以促进移动或导航通过虚拟环境,并且可以允许用户从不同的角度和比例观看和体验虚拟环境。根据本文描述的实施方式的系统和方法还可以向用户提供虚拟现实中的基本上无缝的虚拟运动体验,同时避免有时与虚拟现实中经历的动态视觉运动与缺乏与动态视觉运动相对应的实际物理运动之间的断开连接相关联的晕车和迷失方向。
在图1所示的示例实施方式中,佩戴HMD 100的用户正握着手持电子设备102。手持电子设备102可以是例如控制器、陀螺鼠标、智能手机、操纵杆或可以与HMD 100配对和与HMD 100进行通信以在由HMD 100生成的沉浸式虚拟环境中进行交互的另外一个或多个便携式控制器。在下文中,仅为了便于讨论和说明,手持电子设备102将被称为控制器102。控制器102可以通过例如有线连接或诸如例如WiFi或蓝牙连接的无线连接可操作地与HMD100耦合或与HMD 100配对。控制器102和HMD 100的这种配对或可操作耦合可以提供控制器102和HMD 100之间的通信以及控制器102和HMD 100之间的数据交换。这可以允许控制器102充当与HMD 100通信的控制器,用于在由HMD100生成的沉浸式虚拟环境中进行交互。也就是说,可以以多种不同方式操纵控制器102。控制器102的操纵可以被转换成在由HMD 100生成的沉浸式虚拟环境中的对应选择或移动或其他类型的交互。这可以包括例如与虚拟对象的交互,虚拟对象的操纵或虚拟对象的调整、相对于虚拟环境的比例或视角的变化、用户从虚拟环境中的当前位置到虚拟环境中的选定目的地或特征的移动(例如,导航、远距传输、传送)和其他这样的交互。在一些实施方式中,如上所述,用户可以通过物理姿势(诸如手势)与虚拟环境中的虚拟特征进行交互,而不依赖于使用单独的控制器,所述物理手势由配备成检测和跟踪用户手的系统检测到。
图2A和2B是示例性HMD(例如,由图1中的用户佩戴的HMD100)的透视图,并且图2C图示了示例控制器,诸如例如图1中所示的控制器102。
控制器102可以包括:其中容纳设备102的内部组件的壳体103;以及位于壳体103外部的用户可访问的用户接口104。用户接口104可以包括多种不同类型的操纵设备,包括例如:被配置为接收用户触摸输入的触敏表面106;包括按钮、旋钮、操纵杆、切换开关、幻灯片和其他这样的操纵设备的操纵设备105。在一些实施方式中,控制器102还可以包括光源108,光源108被配置为例如响应于在用户接口104处接收到的用户输入而通过壳体103中的端口选择性地发射光,例如光束或射线。
HMD 100可以包括耦合到框架120的壳体110,并且包括例如安装在耳机中的扬声器的音频输出设备130也耦合到框架120。在图2B中,壳体110的前部110a远离壳体110的基部110b旋转,使得容纳在壳体110中的一些部件可见。显示器140可以安装在壳体110的前部110a的面向内部的一侧上。当前部110a抵靠壳体110的基部110b处的闭合位置时,透镜150可以安装在壳体110中在用户的眼睛和显示器140之间。在一些实施方式中,HMD 100可以包括感测系统160,感测系统160包括各种传感器,诸如音频传感器、图像/光传感器和位置传感器(例如,包括陀螺仪和加速度计的惯性测量单元)等。HMD 100还可以包括控制系统170,控制系统170包括处理器190和各种控制系统设备以促进HMD 100的操作。
在一些实施方式中,HMD 100可以包括照相机180以捕捉静止图像和运动图像。由相机180捕获的图像可以用于帮助追踪真实世界中用户和/或控制器102的物理位置,和/或可以在通过模式中在显示器140上向用户显示,允许用户临时离开虚拟环境并返回到物理环境而不移除HMD 100或以其他方式改变HMD 100的配置以将壳体110移出用户的视线。
在一些实施方式中,HMD 100可以包括注视跟踪设备165以检测和跟踪用户的眼睛注视。注视跟踪设备165可以包括例如图像传感器165A或多个图像传感器165A,以捕捉用户眼睛的图像,例如诸如瞳孔的用户眼睛的特定部分,以检测并跟踪用户注视的方向和移动。在一些实施方式中,HMD 100可以被配置为使得检测到的注视被处理为用户输入以被转换成沉浸式虚拟体验中的对应交互。
在图3中示出了在增强和/或虚拟现实环境中提供对导航的操纵和控制的系统的框图。该系统可以包括与第二电子设备302进行通信的第一电子设备300。第一电子设备300可以是生成沉浸式虚拟环境的例如如上面关于图1、2A和2B所述的HMD,并且第二电子设备302可以是例如上面关于图1和图2C描述的控制器,其与第一电子设备300进行通信以促进用户与由第一电子设备300生成的沉浸式虚拟环境的交互。
第一电子设备300可以包括感测系统360和控制系统370,感测系统360和控制系统370可以分别类似于图2A和2B中所示的感测系统160和控制系统170。感测系统360可以包括一个或多个不同类型的传感器,包括例如光传感器、音频传感器、图像传感器、距离/接近度传感器、位置传感器(例如,包括陀螺仪和加速度计的惯性测量单元)和/或其他传感器和/或传感器的不同组合,包括例如定位成检测和跟踪用户的眼睛注视的图像传感器,诸如图2B所示的注视跟踪设备165。控制系统370可以包括例如电力/暂停控制设备、音频和视频控制设备、光学控制设备、转换控制设备和/或其它这样的设备和/或设备的不同组合。取决于特定的实施方式,感测系统360和/或控制系统370可以包括更多或更少的设备。包括在感测系统360和/或控制系统370中的元件可以在例如除了图2A和2B中所示的HMD 100之外的HMD内具有不同的物理布置(例如,不同的物理位置)。第一电子设备300还可以包括与感测系统360和控制系统370通信的处理器390、存储器380以及提供第一电子设备300与诸如第二电子设备302的另一外部设备之间的通信的通信模块350。
第二电子设备302可以包括提供第二电子设备302与另一外部设备(例如第一电子设备300)之间的通信的通信模块306。除了提供在第一电子设备300和第二电子设备302之间的数据交换,通信模块306也可以被配置为如上所述发射射线或射束。第二电子设备302可以包括感测系统304,感测系统304包括:图像传感器和音频传感器,诸如包括在例如相机和麦克风中的图像传感器和音频传感器;惯性测量单元;诸如包括在控制器或智能手机的触敏表面中的触摸传感器;以及其他这样的传感器和/或传感器的不同组合。处理器309可以与感测系统304和第二电子设备302的控制单元305通信,控制单元305可以访问存储器308并且控制第二电子设备302的整体操作。
如上所述,诸如例如上述的控制器102的控制器可以由用户操纵,有时结合上述HMD 100的功能,以用于虚拟环境中的交互和导航。其一个示例实施方式在图4A-4E中示出。
佩戴生成要由用户体验的虚拟环境的HMD 100的用户可以操作控制器102以导航和操纵虚拟环境400中的虚拟对象和虚拟特征。如图4A中所示,当控制器102移动时固定的设置的控制器参考点410可以与控制器102相关联,所述固定的设置的控制器参考点410可以相对于控制器102保持固定。在下文中,仅为了便于讨论和说明,设置的控制器参考点410将在附图中被示为一组虚拟十字线,其中,设置的控制器参考点410位于该虚拟十字线对的相交处。设置的控制器参考点410/虚拟十字线410可以相对于控制器102保持在固定位置,当用户相对于虚拟环境400中的虚拟对象和特征移动控制器102时与控制器102一起移动。在图4A中所示的示例中,虚拟十字线410包括相对于控制器102保持在固定位置并且基本上与控制器102一起移动的视觉表示或图标。仅仅为了便于讨论和图示,虚拟十字线410将在下文中以这种方式表示。然而,在一些实施方式中,虚拟十字线410可以表示相对于控制器102的空间中的已知位置(被控制器102和/或HMD 100已知),但不以视觉表示或图标的形式呈现给用户,使得用户对虚拟环境400中的虚拟对象和特征的查看和访问不会被虚拟十字线410的视觉表示遮蔽。
图4A图示出了用户与虚拟特征450的虚拟交互的开始,虚拟特征450被显示为在虚拟交互开始时由用户查看的原样。如图4A所示,在用户与虚拟环境400中的虚拟特征450交互的开始处,例如,在时间t=0时,用户可以限定与虚拟特征450相关联的锚点420。在图4A中,当用户相对于虚拟环境400中的虚拟对象和特征移动和/或改变位置和/或视角时,锚点420可识别例如用户希望保留在其视野内的虚拟特征450的一部分。在用户与虚拟特征450交互的开始或者时间t=0时,锚点420可以由虚拟目标射线415限定,虚拟目标射线415从设置的用户参考点100A延伸通过虚拟十字光标410并与由虚拟目标射线415的方向所限定的虚拟特征450的选定部分相交,虚拟目标射线415的方向可以通过用户移动参考点100A和/或虚拟十字线410来控制。
用户参考点100A可以被限定在HMD 100上的设置位置处,例如,用户眼睛处或附近的位置、与用户眼睛之间的位置对应的位置或其他设置位置。随着用户特别是用户的头部在虚拟环境400中移动和改变位置/定向,该设置的用户参考点100A可以在HMD 100上或相对于HMD 100保持设置或恒定。类似地,随着用户特别是拿着设备102的用户的手臂/手在虚拟环境中改变位置/地点/定向,虚拟十字线410相对于控制器102的位置/地点/定向可在控制器102上或相对于控制器102保持设置或者位于恒定位置。HMD 100的位置和地点/定向以及控制器102相对于HMD 100的位置和地点/定向可以基本上实时地被系统知晓和被系统追踪,并且相对于控制器102的设置的用户参考点100A的恒定位置以及虚拟十字线410的恒定位置也可以基本实时地被知晓和被追踪。
在图4A所示的例子中,从设置的用户参考点100A延伸穿过虚拟十字线410到选定的锚点420的虚拟目标射线415由虚线表示。然而,在一些实施方式中,虚拟目标射线415不一定被呈现为要由用户查看的视觉表示或对象,使得用户对虚拟环境中的虚拟对象和特征的查看和访问不被虚拟目标射线420的视觉表示遮挡。在一些实施方式中,视觉指示符(例如,点)可以在由虚拟目标射线415识别的虚拟特征450上的点处呈现为锚点420。在图4B中示出了当用户设置锚点420时从用户相对于图4A所示的虚拟特征450的虚拟位置开始的用户的视角或视点的示例。在图4A中所示的布置可以例如通过在控制器102的用户接口104上操纵设备(例如按下按钮或触发器)来表示用户与虚拟特征450的交互的开始或者时间t=0。
如图4A所示,可以使用按钮或触发器的按下(或者控制器102的用户接口104上的其他操纵设备的致动)来识别和设置锚点420。在设置锚点420之后,诸如头部和手部/手臂移动的用户移动以及延伸通过虚拟十字线410到锚点420的虚拟目标射线415的相应移动(由于在用户的头上的所设置的用户参考点100A的移动以及在用户手中拿着的控制器102的移动)可导致特征450在虚拟环境400中被平移和缩放。例如,一旦锚点420如上所述被设置,如图4C中所示的虚拟目标射线415的(当按钮或触发器保持被按下的同时从图4A中所示的位置起)向下移动可以导致锚点420的向下平移,导致虚拟环境400的比例上的变化(当用户的脚保持在虚拟地面,并且虚拟特征450保持在虚拟地面上),并且特别地,导致由锚点420锚定的虚拟环境400中的虚拟特征450的比例以及相对于虚拟特征450的用户视图或视角的变化,如图4D所示。
类似地,一旦锚点420如上所述被设置,则如图4E中所示的虚拟目标射线415的(例如,在按钮或触发器保持被压下的同时从图4A中所示的位置)向上移动可能导致锚点420向上平移,导致虚拟环境400的比例变化,并且特别是如图4F所示,导致相对于由锚点420锚定的虚拟环境400中的虚拟特征450的比例或用户视角以及相对于该特征的用户的视图或视点的变化。
在虚拟环境中调整比例可以是用户的大小相对于虚拟环境中的虚拟特征的改变(增加或减少),或者相对于虚拟环境中的虚拟特征的用户视角上的对应改变(或者,可以认为是虚拟环境中的相对于用户的虚拟特征大小的变化,即增加或减少)。例如,用户可以选择放大以便从用户的视角来看,用户体验虚拟环境,就好像他的大小已经相对于虚拟环境中的虚拟特征增加了一样(和/或虚拟特征看起来已经减少大小/比例)。类似地,用户可以选择缩小比例,使得从用户的视角看,用户体验虚拟环境,就好像他的大小已经相对于虚拟环境中的虚拟特征减小了一样(和/或虚拟特征看起来增加了大小/比例)。虚拟环境中的这种类型的缩放可以被认为是用户的尺寸/缩放的虚拟调整,特别是相对于虚拟环境中的虚拟特征的用户视角的虚拟调整,或者虚拟环境中的虚拟特征相对于用户的尺寸/缩放的虚拟调整。在下文中,为了便于讨论,缩放将被认为包括相对于虚拟特征的用户大小/比例的虚拟调整和/或虚拟环境中虚拟特征的大小/比例的虚拟调整。从图4A所示的位置(在图4C中以虚线示出为幻影图像)向图4C中所示的位置和/或从图4A所示的位置(在图4E中以虚线示出为幻影图像)向图4E中所示的位置的移动示出了示例性向上和向下移动以及在虚拟环境400中的虚拟特征450的相应平移和/或用户相对于虚拟环境400的缩放(或者虚拟环境400相对于用户的缩放)。然而,在其他方向上的移动(当按钮或触发器保持被按下的同时)也可以使得锚点420通过对应的移动而保持锚定到所选虚拟特征450的所识别部分。例如,向右移动可以生成虚拟特征450在用户周围移动或围绕其旋转的效果。类似地,用户的手臂靠近用户的移动可以产生更接近虚拟特征450的缩放效果。
响应于某些移动,系统可依赖于与设置的用户参考点相关联的某些固定参数、虚拟十字线410相对于控制器102和设置的虚拟参考点400A的位置、设置的虚拟参考点400A贯穿如上所述的特征的各种移动和/或平移和/或缩放期间保持基本静止和恒定。在下文中,设置的虚拟参考点400A将是与虚拟环境400中的虚拟地面或虚拟地板对应的参考平面。也就是说,如图5所示的示例中所示,响应于示例向下移动(从用虚线示出的手臂/手/控制器位置到用实线示出的手臂/手/控制器位置),系统可以依靠某些固定的参数来确定用户的意愿是否是将特征450缩放为缩放的特征450A或缩放的特征450B或缩放的特征450C,它们都沿着虚拟目标射线415。将参照图6A-6F更详细地解释这一点。
在图6A中,在开始与虚拟环境400中的虚拟特征450交互(例如,在时间t=0)时,用户可以在虚拟参考平面400A上面对虚拟特征450定位,虚拟参考平面400A将被认为是虚拟地面400A。在图6A所示的例子中,在时间t=0时,用户使他的手臂伸展来握住控制器102,使得虚拟目标射线415从用户设置参考点100A通过虚拟十字线410延伸到选定特征450的部分以设置锚点420。在一些实施方式中,虚拟十字线410的大小或尺寸(即,高度和宽度)可以是恒定的,并且可以例如针对特定应用或由用户或通过系统来设置等等。虚拟十字线410的设置尺寸可以在时间t=0处限定第一盘d10,第一盘d10具有由虚拟十字线410的设置尺寸限定的恒定半径r1。在图6B中图示了在用户与虚拟特征450交互的开始或时间t=0时,在图4A中所示的用户例如通过下述方式可以看到的内容的示例:例如在控制器102的用户接口104上操纵设备,例如按下按钮或触发器。
第一盘d10可以限定锥体440,锥体440具有在设置的用户参考点100A处的原点并且朝向围绕锚点420的平面与第一盘d10相切地延伸。在时间t=0时,角度α0可以被限定为由设置的用户参考点100A和第一盘d10限定的锥体440的半角。具有半径r2的第二盘d20可以被限定为在与锚点420相对应的距离处(即在基本上与对应于/包括锚点420的虚拟目标射线415垂直的虚拟平面处)通过锥体440的横截面。
一旦被如图6A所示设置,相对于虚拟环境400的虚拟半径r2可相对于虚拟环境400保持固定或恒定。即,在虚拟特征450(包括在第二盘d20内捕获的虚拟特征450的一部分)响应于锚点420的用户移动而被平移和/或缩放的同时,一旦被设置,则虚拟特征450的在具有相对于虚拟环境400的恒定虚拟半径r2的第二盘d20的范围内捕获的虚拟特征450的部分如图6B中所示可以保持相同。这将在图6C-6F中更详细地被描述。
图6C图示出随后的时间点t>0,其图示出了与锚点420的向下移动和虚拟特征450的缩小相对应的虚拟目标射线415的向下移动。在图6D中图示了在图4C中所示的、在从图6A中所示的位置向图6C中所示的位置(将在下面更详细地描述)的移动后用户可以看到的内容的示例。图6E图示随后的时间点t>0,图示出了第一盘d1t更接近设置的用户参考点100A的向内移动,其对应于锚点420的移动的关闭以及减小在用户和虚拟特征450之间的感知的虚拟距离。在图6F中图示了在从图6A所示的位置向图6E中所示的位置的移动(将在下面更详细地描述)后在图4E中所示的由用户可以看到的内容的示例。
在每个随后的时间点t>0(即,t1、t2、...、tN)中,在如上关于图6A所描述的那样设置锚点420之后,可以将角度αt计算为由设置的用户参考点100A和第一盘d1t限定的锥体440的半角。在每个随后的时间点t>0,第一盘d1t的半径r1相对于用户保持恒定/固定(因为虚拟十字线410的尺寸保持恒定)。在每个随后的时间点t>0,随着锚点420移动并保持在虚拟目标射线415上,第二盘d2t的虚拟半径r2相对于虚拟环境400保持恒定/固定。虚拟参考平面400A或虚拟地面400A也保持固定或恒定并与现实世界地面对齐。然而,设置的用户参考点100A和第一盘d1t之间的距离可以随着持有控制器102的用户的手臂/手移动而改变。这可能导致半角αt也响应于如上所述的锚点420的用户移动而在随后的时间点t>0(即,t1、t2、...、tN)处改变。这种作为锚点420的半角αt的重新计算以这种方式移动,同时第一盘d1t的半径r1相对于用户保持恒定,并且第二盘d2t的虚拟半径r2相对于虚拟环境400保持恒定,锚点420保持在虚拟目标射线415上,并且虚拟参考平面400A保持与真实世界地面对准允许虚拟环境如所示地被平移和/或缩放。
在图6A-6E中所示的例子中,表示围绕设置的控制器参考点410的区域的第一盘d10/dt0被限定为基于在设置的控制器参考点410处具有相交点的虚拟十字线的盘。在该示例几何结构中,围绕设置的控制器参考点410的区域具有圆盘形状,并且围绕锚点420的区域以及围绕锚点420的区域具有由锥体限定的圆盘形状,该示例几何结构可以当用户和/或虚拟特征响应于控制器的移动而缩放时促进半角α的计算和跟踪/调整,并且可以生成减少的处理工作量。然而,仅仅为了易于讨论和说明,示出了圆形盘,并且围绕设置的控制器参考点410的区域可以具有其他闭合的曲线形状。类似地,在图6A-6E中所示的例子中,由起始于设置的用户参考点100A并相切地延伸超过第一盘d10的几何形状限定锥体440。然而,该几何结构也可以基于围绕设置的用户参考点410限定的区域的几何形状而变化。类似地,在图6A-6E中所示的示例中,围绕锚点420的区域被限定为圆形盘。然而,围绕锚点420的该区域的形状也将由围绕设置的控制器参考点的区域的闭合曲线形状以及该几何形状向与虚拟特征450的平面的相交处的延伸来限定。
如图7A所示,在一些实施方式中,用户可获得一个或多个虚拟照片球570(例如,第一、第二和第三虚拟照片球570A、570B、570C)以在虚拟环境中进行选择。每个照片球可以在虚拟环境中提供例如特定特征和位置等的360度全景体验。为了移动到虚拟照片球570中的一个,用户可以例如将如上所述的由手持电子设备102生成的虚拟光束500指向虚拟照片球570中选定的一个,诸如第三虚拟照片球570C,以移动到虚拟特征550的内部的360度全景体验,如图7A所示。在对手持电子设备102进行进一步操纵时,例如释放将虚拟光束550引导至所选择的虚拟照片球570C的按钮,用户可以被移动或者远距传输或者传送至所选择的虚拟照片球570C,如图7B所示。
当移动、传送或远距传输到选定的虚拟照片球体570时,用户还可以选择相对于虚拟环境中的特征进行比例调整,如上面详细讨论的。具体地,当移动到所选择的虚拟照片球570时,相对于包括在详细地以如上所述的方式由所选择的虚拟照片球570提供的360度全景体验中的虚拟元素,用户可以选择增加大小/比例或者减小大小/比例。
一旦在虚拟照片球570内,用户可以在虚拟照片球570内移动。例如,用户可以转而观看由虚拟照片球570提供的360度全景体验的不同部分,并且/或者用户可以从虚拟照片球570内的虚拟位置C走到虚拟位置D,如图8B所示,以接近或变得接近包括在由虚拟照片球570提供的360度全景体验中的虚拟元素。在一些实施方式中,用户可以例如在虚拟照片球570内漫步到可以被认为是虚拟照片球570内的360全景虚拟显示器的边缘之处,其中,在用户前方显示的虚拟照片球体570的360度全景体验中显示的虚拟元素随着用户在虚拟元素的方向上行走或逼近虚拟元素而看起来更大。类似地,如果用户转向,例如在到达虚拟位置D后转180度,那么曾经在用户后面的虚拟元素可能看起来较小,因为用户已经行走离开在虚拟照片球体570的那个部分中显示的虚拟元素。
在图8中示出根据本文描述的实施方式的在增强和/或虚拟现实环境中导航和/或缩放的方法700。一旦检测到对虚拟特征的选择(框710),就可以确定对于设置虚拟锚点的请求是否已经被接收到(框720)。设置虚拟锚点的请求例如可以由用户输入,如上面关于图4A和6A详细描述的。如果已经接收到设置虚拟锚点的请求,则可以设置虚拟锚点(框730)。如果设置了虚拟锚点并且接收到对于相对于虚拟环境调整用户的位置或视图或视角或比例的请求(或者相对于用户缩放虚拟环境的请求)(方框750),则系统可以根据接收到的请求来调整位置和/或视图和/或视角和/或比例(方框760),如上面关于图4B-4F和6B-6F详细描述的。如果尚未设置虚拟锚点但是接收到对于移动或以其他方式调整相对于所选虚拟特征的用户位置的请求(框740),则系统可根据所接收的请求执行所请求的调整(框760)。在完成所请求的虚拟调整之后(框770),可以重复该过程直到虚拟体验终止(框780)。
图9示出了可以用于这里描述的技术的通用计算机设备800和通用移动计算机设备850的示例。计算设备800旨在表示各种形式的数字计算机,诸如膝上型计算机、台式计算机、平板电脑、工作站、个人数字助理、电视机、服务器、刀片服务器、大型机以及其他适当的计算设备。计算设备850旨在表示各种形式的移动设备,诸如个人数字助理、蜂窝电话、智能电话以及其他类似的计算设备。这里示出的组件、它们的连接和关系以及它们的功能意味着是仅示例性的,并不意味着限制本文中描述和/或要求保护的本发明的实施方式。
计算设备800包括处理器802、存储器804、存储设备806、连接到存储器804和高速扩展端口810的高速接口808以及连接到低速总线814的低速接口812和存储设备806。处理器802可以是基于半导体的处理器。存储器804可以是基于半导体的存储器。组件802、804、806、808、810和812中的每一个使用各种总线互连,并且可以适当地安装在公共主板上或以其他方式安装。处理器802可处理用于在计算设备800内执行的指令,包括存储在存储器804中或存储设备806上的指令,以在外部输入/输出设备(例如耦合到高速显示器816的显示器816)上显示GUI的图形信息接口808。在其他实施方式中,可以适当地使用多个处理器和/或多条总线以及多个存储器和多种类型的存储器。而且,可以连接多个计算设备800,其中,每个设备提供必要操作的部分(例如,作为服务器银行、一组刀片服务器或多处理器系统)。
存储器804将信息存储在计算设备800内。在一个实施方式中,存储器804是一个或多个易失性存储器单元。在另一实施方式中,存储器804是非易失性存储器单元。存储器804也可以是另一种形式的计算机可读介质,例如磁盘或光盘。
存储设备806能够为计算设备800提供海量存储。在一个实施方式中,存储设备806可以是或包含计算机可读介质,诸如软盘设备、硬盘设备、光盘设备或磁带设备、闪存或其他类似的固态存储设备或包括存储区域网络中或其他配置的设备的设备阵列。计算机程序产品可以有形地包含在信息载体中。计算机程序产品还可以包含当被执行时执行诸如上面描述的那些方法的一个或多个方法的指令。信息载体是计算机或机器可读介质,诸如存储器804、存储设备806或处理器802上的存储器。
高速控制器808管理计算设备800的带宽密集型操作,而低速控制器812管理较低带宽密集型操作。这种功能分配仅仅是示例性的。在一个实施方式中,高速控制器808耦合到存储器804、显示器816(例如,通过图形处理器或加速器),并且耦合到可以接受各种扩展卡(未示出)的高速扩展端口810。在所述实施方式中,低速控制器812耦合到存储设备806和低速扩展端口814。可以包括各种通信端口(例如,USB、蓝牙、以太网、无线以太网)的低速扩展端口可以例如通过网络适配器耦合到一个或多个输入/输出设备,诸如键盘、定点设备、扫描仪或诸如交换机或路由器的联网设备。
如图所示,计算设备800可以以多种不同的形式来实施方式。例如,它可以被实现为标准服务器820,或者在一组这样的服务器中被多次实现。它也可以被实现为机架服务器系统824的一部分。另外,其可以在诸如膝上型计算机822的个人计算机中实现。或者,来自计算设备800的组件可以与诸如设备850的移动设备(未示出)中的其他组件组合。这些设备中的每一个可以包含计算设备800、850中的一个或多个,并且整个系统可以由彼此通信的多个计算设备800、850组成。
除其他组件之外,计算设备850包括处理器852、存储器864、诸如显示器854的输入/输出设备、通信接口866和收发器868。设备850还可以设置有存储设备,诸如微型硬盘或其他设备,以提供额外的存储。组件850、852、864、854、866和868中的每一个使用各种总线互连,并且若干组件可以安装在公共母板上或以其他方式适当地安装。
处理器852可以执行计算设备850内的指令,包括存储在存储器864中的指令。处理器可以被实现为包括分离和多个模拟和数字处理器的芯片的芯片组。处理器可以例如提供设备850的其他组件的协调,诸如用户接口、设备850运行的应用以及设备850的无线通信的控制。
处理器852可以通过耦合到显示器854的控制接口858和显示器接口856与用户通信。显示器854可以是例如TFT LCD(薄膜晶体管液晶显示器)或OLED(有机发光二极管)显示器或其他适当的显示技术。显示接口856可以包括用于驱动显示器854向用户呈现图形和其他信息的适当电路。控制接口858可以接收来自用户的命令并将它们转换以提交给处理器852。另外,可以提供与处理器852通信的外部接口862,以便实现设备850与其他设备的近距离通信。外部接口862可以例如在一些实施方式中提供有线通信,或者在其他实施方式中提供无线通信,并且还可以使用多个接口。
存储器864存储在计算设备850内的信息。存储器864可以被实现为计算机可读介质、易失性存储器单元或非易失性存储器单元中的一个或多个。扩展存储器874也可以被提供并且通过扩展接口872连接到设备850,扩展接口872可以包括例如SIMM(单列直插式存储器模块)卡接口。这样的扩展存储器874可以为设备850提供额外的存储空间,或者还可以存储设备850的应用或其他信息。具体而言,扩展存储器874可以包括执行或补充上述过程的指令,并且还可以包括安全信息。因此,例如,扩展存储器874可以作为设备850的安全模块来提供,并且可以用允许安全使用设备850的指令来编程。另外,可以经由SIMM卡提供安全应用以及附加信息,例如以不可破解的方式在SIMM卡上放置标识信息。
如下所述,存储器可以包括例如闪存和/或NVRAM存储器。在一个实施方式中,计算机程序产品有形地包含在信息载体中。计算机程序产品包含当被执行时执行一个或多个方法的指令,例如上面描述的那些方法。信息载体是可以例如通过收发器868或外部接口862接收的计算机或机器可读介质,诸如存储器864、扩展存储器874或在处理器852上的存储器。
设备850可以通过通信接口866进行无线通信,通信接口866在必要时可以包括数字信号处理电路。通信接口866可以在诸如GSM语音呼叫、SMS、EMS或MMS消息收发、CDMA、TDMA、PDC、WCDMA、CDMA2000或GPRS等各种模式或协议下提供通信。这样的通信可以例如通过射频收发器868发生。另外,可以诸如使用蓝牙、WiFi或其他这样的收发器(未示出)发生短距离通信。另外,GPS(全球定位系统)接收器模块870可以向设备850提供附加的导航和位置相关的无线数据,设备850可以通过在设备850上运行的应用适当地使用。
设备850还可以使用音频编解码器860可听地通信,音频编解码器860可以从用户接收口头信息并将其转换为可用的数字信息。音频编解码器860同样可以例如通过例如在设备850的手机中的扬声器为用户生成可听声音。这种声音可以包括来自语音电话呼叫的声音,可以包括记录的声音(例如,语音消息、音乐文件等等),并且还可以包括由在设备850上操作的应用产生的声音。
如图所示,计算设备850可以以多种不同的形式来实现。例如,它可以被实现为蜂窝电话880。其还可以被实现为智能电话882、个人数字助理或其他类似的移动设备的一部分。
这里描述的系统和技术的各种实施方式可以在数字电子电路、集成电路、专门设计的ASIC(专用集成电路)、计算机硬件、固件、软件和/或其组合中实现。这些各种实施方式可以包括在可编程系统上可执行和/或可解释的一个或多个计算机程序中的实施方式,该可编程系统包括至少一个可编程处理器,其可以是特殊的或通用的,耦合以从接收数据和指令,并且向其发送数据和指令。
这些计算机程序(也称为程序、软件、软件应用或代码)包括用于可编程处理器的机器指令,并且可以以高级过程和/或面向对象的编程语言和/或装配/机器语言实现。如本文所使用的,术语“机器可读介质”、“计算机可读介质”是指任何计算机程序产品、设备和/或设备(例如,磁盘、光盘、存储器、可编程逻辑器件(PLD)),用于将机器指令和/或数据提供给可编程处理器,该可编程处理器包括接收机器指令作为机器可读信号的机器可读介质。术语“机器可读信号”是指用于向可编程处理器提供机器指令和/或数据的任何信号。
为了提供与用户的交互,这里描述的系统和技术可以在计算机上实施方式,该计算机具有:显示设备(例如,CRT(阴极射线管)或LCD(液晶显示器)监视器),用于向用户显示信息;以及用户可以通过其向计算机提供输入的键盘和指点设备(例如,鼠标或轨迹球)。其他类型的设备也可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈(例如,视觉反馈、听觉反馈或触觉反馈);并且可以以任何形式接收来自用户的输入,包括声学、语音或触觉输入。
这里描述的系统和技术可以实施方式在计算系统中,该计算系统包括(诸如作为数据服务器的)后端组件,或者包括(诸如应用服务器的)中间件组件,或者包括(诸如具有用户可以通过其与本说明书中描述的系统和技术的实施方式进行交互的图形用户接口或Web浏览器的客户端计算机的)前端组件,或者包括这样的后端、中间件或前端组件的任何组合。系统的组件可以通过任何形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”)、广域网(“WAN”)和因特网。
计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离并且通常通过通信网络进行交互。客户端和服务器之间的关系是通过运行在各个计算机上并且彼此具有客户端-服务器关系的计算机程序产生的。
已经描述了多个实施例。然而,应该理解,在不脱离本发明的精神和范围的情况下可以进行各种修改。
另外,附图中描绘的逻辑流程不需要所示出的特定顺序或依序来实施方式期望的结果。另外,从所描述的流程,可以提供其他步骤,或者可以消除步骤,并且可以将其他组件添加到所描述的系统或从所描述的系统移除。因此,其他实施例在以下权利要求的范围内。
本文描述的各种技术的实施方式可以在数字电子电路中或者在计算机硬件、固件、软件或其组合中实现。实施方式可以实现为计算机程序产品,即,有形地包含在信息载体中(例如在机器可读存储设备(计算机可读介质)中)的计算机程序,用于通过诸如可编程处理器、计算机或多台计算机数据处理设备进行处理或控制该数据处理设备的操作。因此,计算机可读存储介质可以被配置为存储当被执行时使得处理器(例如,在主机设备处的处理器、在客户端设备处的处理器)执行处理的指令。
诸如上述计算机程序之类的计算机程序可以以任何形式的编程语言来编写,包括编译或解释语言,并且可以以任何形式来部署,包括作为独立程序或作为模块、组件、子程序或适用于计算环境的其他单元。可以将计算机程序部署为在一台计算机上或位于一个站点上或分布在多个站点上并通过通信网络互连的多台计算机上处理。
方法步骤可以由执行计算机程序的一个或多个可编程处理器执行,以通过对输入数据进行操作并生成输出来执行功能。方法步骤也可以由专用逻辑电路(例如FPGA(现场可编程门阵列)或ASIC(专用集成电路))执行,并且设备可以实施方式为专用逻辑电路。
举例来说,适合于执行计算机程序的处理器包括例如通用和专用微处理器以及任何种类的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的元件可以包括用于执行指令的至少一个处理器以及用于存储指令和数据的一个或多个存储器设备。一般而言,计算机还可以包括一个或多个用于存储数据的大容量存储设备,例如磁盘、磁光盘或光盘,或者可操作地连接以从其接收数据或将数据传输到其或两者。适合于包含计算机程序指令和数据的信息载体包括所有形式的非易失性存储器,例如包括:半导体存储器件,例如EPROM、EEPROM和闪存器件;磁盘,例如内部硬盘或可移动磁盘;磁光盘;以及CD-ROM和DVD-ROM盘。处理器和存储器可以由专用逻辑电路补充或者并入专用逻辑电路。
为了提供与用户的交互,实施方式可以实现在计算机上,该计算机具有:显示设备(例如,CRT(阴极射线管)、发光二极管(LED)或LCD(液晶显示器)监视器),用于向用户显示信息;以及键盘和指示设备,例如鼠标或轨迹球,用户可以通过该键盘和指示设备向计算机提供输入。其他类型的设备也可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈或触觉反馈;并且可以以任何形式接收来自用户的输入,该任何形式包括声音、语音或触觉输入。
实施方式可以在计算系统中实现,所述计算系统包括后端组件,该后端组件例如作为数据服务器,或者中间件组件(例如应用服务器)或者包括前端组件(例如,具有用户可以通过其与实施方式交互的图形用户接口或Web浏览器的客户端计算机),或者这样的后端、中间件或前端组件的任何组合。组件可以通过数字数据通信的任何形式或介质(例如通信网络)互连。通信网络的例子包括局域网(LAN)和诸如因特网的广域网(WAN)。
在下面的例子中总结了其他实施方式。
示例1:一种方法,包括:在头戴式显示设备的显示器内生成虚拟环境;在与所述头戴式显示设备通信的控制器的用户接口处检测第一输入;响应于所述第一输入在所述虚拟环境中的所选虚拟特征上设置锚点;检测第二输入;以及响应于所述第二输入,在所述虚拟环境内限定包括与所述锚点相关联的所述虚拟特征的区域,以及调整所述虚拟环境中的所述虚拟特征的位置或比例中的至少一个,同时将所述限定区域内的所述虚拟特征的一部分保持在所述虚拟环境的用户视野内。
示例2:根据示例1所述的方法,其中,响应于所述第一输入在所述虚拟环境中的所选虚拟特征上设置锚点包括:检测虚拟目标射线和所述虚拟特征的相交;将所述锚点设置在所述虚拟目标射线和所述虚拟特征的检测到的相交处;以及基于设置的控制器参考点相对于设置的用户参考点的位置来限定在所述虚拟环境内包括与所述锚点相关联的所述虚拟特征的所述区域。
示例3:根据示例2所述的方法,其中,所述设置的用户参考点与用户头戴式显示设备上的固定点相对应,并且所述设置的控制器参考点与相对于所述控制器的固定点相对应。
示例4:根据示例2或3所述的方法,其中,检测虚拟目标射线与所述虚拟特征的相交包括限定所述虚拟目标射线,所述虚拟目标射线具有在所述设置的用户参考点处的原点,并且所述虚拟目标射线从在所述设置的用户参考点处的所述原点起延伸通过所述设置的控制器参考点。
示例5:根据示例1至4之一所述的方法,其中,所述设置的控制器参考点限定虚拟闭合曲线的中心。
示例6:根据示例2至5之一所述的方法,其中,基于设置的控制器参考点相对于设置的用户参考点的位置来在所述虚拟环境内限定包括与所述锚点相关联的所述虚拟特征的所述区域包括:限定具有由所述设置的控制器参考点限定的中心的第一虚拟盘;基于所述设置的用户参考点和所述第一虚拟盘限定虚拟锥体,所述虚拟锥体具有在所述设置的用户参考点处的原点,并且朝向所述虚拟特征延伸,与所述第一虚拟盘相切地接触;以及在所述虚拟锥体与所述虚拟特征的所述相交处限定第二虚拟盘。
示例7:根据示例6所述的方法,其中,限定具有由所述设置的控制器参考点限定的中心的第一虚拟盘包括限定所述第一虚拟盘的第一半径,所述第一半径从所述设置的控制器参考点延伸到所述第一虚拟盘的周界,并且其中,在所述锥体与所述虚拟特征的所述相交处限定第二虚拟盘包括:限定所述第二虚拟盘的中心,所述第二虚拟盘的中心与所述锚点相对应;限定所述第二虚拟盘的周界,所述周界与所述锥体与所述虚拟特征的平面的所述相交相对应;以及限定所述第二虚拟盘的第二半径,所述第二半径从所述第二虚拟盘的中心延伸到所述第二虚拟盘的所述周界。
示例8:根据示例6或7所述的方法,其中,基于所述设置的用户参考点和所述第一虚拟盘限定虚拟锥体还包括限定在所述虚拟目标射线与所述虚拟锥体的周界之间的半角。
示例9:根据示例7或8所述的方法,其中,当所述设置的控制器参考点相对于所述设置的用户参考点移动时,所述第一虚拟盘的所述第一半径和所述第二虚拟盘的所述第二虚拟半径各自保持恒定,并且当所述设置的控制器参考点相对于所述设置的用户参考点移动时,所述半角改变。
示例10:根据示例1至9之一所述的方法,其中,接收第二输入包括检测所述设置的控制器参考点相对于所述设置的用户参考点的移动,并且其中,响应于所述第二输入调整所述虚拟环境中的所述虚拟特征的位置或比例中的至少一个包括:当所述设置的控制器参考点相对于所述设置的用户参考点移动时,保持所述锚点在所述虚拟目标射线上;当所述设置的控制器参考点相对于所述设置的用户参考点移动时,保持所述第一虚拟盘的所述第一半径恒定;当所述设置的控制器参考点相对于所述设置的用户参考点移动并且所述虚拟特征的所述位置或所述比例中的所述至少一个被调整时,相对于所述虚拟环境保持所述第二虚拟盘的所述第二半径恒定;以及当所述设置的控制器参考点相对于所述设置的用户参考点移动并且所述虚拟特征的所述位置或所述比例中的所述至少一个被调整时,调整所述半角。
示例11:根据示例1至10之一所述的方法,其中,接收第二输入包括检测所述设置的控制器参考点相对于所述设置的用户参考点的移动,并且其中,响应于第二输入调整所述虚拟环境中的所述虚拟特征的位置或比例中的至少一个包括:当所述设置的控制器参考点相对于所述设置的用户参考点移动导致所述锚点移动时,保持所述锚点在所述虚拟目标射线上;当所述锚点移动时,将在围绕所述锚点的所述限定区域中的所述虚拟特征的所述部分保持在所述限定区域内;以及当所述锚点移动时,在围绕所述锚点的所述限定区域中调整所述虚拟特征的所述部分的所述位置或所述比例中的所述至少一个。
示例12:根据示例6至11之一所述的方法,其中,围绕所述锚点的所述虚拟特征的所述限定区域与所述第二虚拟盘相对应,并且其中,当所述虚拟特征的所述位置或所述比例的所述至少一个响应于所述锚点的移动而被调整时,所述第二虚拟盘的所述虚拟半径相对于所述虚拟环境保持恒定。
示例13:一种系统,包括被配置为生成沉浸式虚拟环境的计算设备,所述计算设备包括:存储可执行指令的存储器;以及处理器,被配置为执行所述指令以使得所述计算设备执行以下操作:生成虚拟环境;在与头戴式显示设备通信的控制器的用户接口处检测第一输入;响应于所述第一输入,在所述虚拟环境中的所选虚拟特征上设置锚点;检测第二输入;并且响应于所述第二输入,限定所述特征的区域,使得所述锚点位于所述区域内,并且调整在所述虚拟环境中的所述虚拟特征的位置或比例中的至少一个,同时将所述限定区域内的所述虚拟特征的一部分保持在所述虚拟环境的用户视野内。
示例14:根据示例13所述的系统,其中,在响应于所述第一输入在所述虚拟环境中的所选虚拟特征上设置锚点中,所述处理器被配置为:检测虚拟目标射线和虚拟特征的相交,所述虚拟目标射线基于与用户头戴式显示器上的固定点相对应的设置的用户参考点处的原点来限定,并且延伸通过与相对于所述控制器的固定点相对应的设置的控制器参考点;在所述虚拟目标射线与所述虚拟特征的所检测到的相交处设置所述锚点;以及基于所述设置的控制器参考点相对于所述设置的用户参考点的位置来限定围绕所述锚点的所述特征的所述区域。
示例15:根据示例13或14所述的系统,其中,在基于所述设置的控制器参考点相对于所述设置的用户参考点的位置来限定围绕所述锚点的所述特征的所述区域时,所述处理器被配置为:在所述设置的用户控制器点处限定第一虚拟盘;基于所述设置的用户参考点和所述第一虚拟盘限定虚拟锥体,所述虚拟锥体具有在所述设置的用户参考点处的原点并且朝向所述虚拟特征延伸,与所述第一虚拟盘相切地接触;以及在所述虚拟锥体与所述虚拟特征的所述相交处限定第二个虚拟盘。
示例16:根据示例15所述的系统,其中,在虚拟十字线对处限定第一虚拟盘时,所述处理器被配置为:限定所述第一虚拟盘的中心,所述第一虚拟盘的所述中心与所述设置的控制器参考点相对应;以及限定所述第一虚拟盘的第一半径,所述第一半径从所述设置的控制器参考点处的所述第一虚拟盘的所述中心延伸至所述第一虚拟盘的周界。
示例17:根据示例15或16所述的系统,其中,在所述锥体与所述虚拟特征的所述相交处限定第二虚拟盘时,所述处理器被配置为:限定所述第二虚拟盘的中心,所述第二虚拟盘的所述中心与所述锚点相对应;限定所述第二虚拟盘的周界,所述周界与所述锥体和所述虚拟特征的所述相交相对应;限定所述第二虚拟盘的第二半径,所述第二半径从第二虚拟盘的所述中心延伸到所述第二虚拟盘的所述周界;以及限定在所述虚拟目标射线与所述虚拟锥体的周界之间的半角。
示例18:根据示例13至17之一所述的系统,其中,在响应于所述第二输入来调整在所述虚拟环境中所述虚拟特征的位置或比例中的至少一个时,所述处理器被配置为:检测所述设置的控制器参考点相对于所述设置的用户参考点的移动作为第二输入;当所述设置的控制器参考点相对于所述设置的用户参考点移动时,保持所述锚点在所述虚拟目标射线上;当所述设置的控制器参考点相对于所述设置的用户参考点移动时,保持所述第一虚拟盘的所述第一半径恒定;当所述设置的控制器参考点相对于所述设置的用户参考点移动并且所述虚拟特征的所述位置或所述比例中的所述至少一个被调整时,相对于虚拟环境保持所述第二虚拟盘的所述第二半径恒定;以及当所述设置的控制器参考点相对于所述设置的用户参考点移动并且所述虚拟特征的所述位置或所述比例中的所述至少一个被调整时调整所述半角。
示例19:根据示例18所述的系统,其中,在当所述设置的控制器参考点相对于所述设置的用户参考点移动时,将所述第二虚拟盘的所述第二半径相对于所述虚拟环境保持恒定时,所述处理器被配置为:当所述锚点移动时,将围绕所述锚点的所述限定区域中的所述虚拟特征的所述部分保持在所述限定区域内;以及当所述锚点移动并且所述虚拟特征的所述位置或所述比例中的所述至少一个被调整时,调整在围绕所述锚点的所述限定区域中的所述虚拟特征的所述部分的所述位置或所述比例中的所述至少一个。
示例20:根据示例15至19之一所述的系统,其中,围绕所述锚点的所述虚拟特征的所述限定的区域与所述第二虚拟盘相对应,并且其中,当所述虚拟特征的所述位置或所述比例的所述至少一个响应于所述锚点的移动而被调整时,所述第二虚拟盘的所述虚拟半径相对于所述虚拟环境保持恒定。
虽然已经如本文所述说明了所描述的实施方式的某些特征,但是本领域技术人员现在将想到许多修改、替换、改变和等同物。因此,应该理解的是,所附权利要求旨在覆盖落入实施范围内的所有这些修改和变化。应该理解的是,它们仅作为示例而不是限制被呈现,并且可以进行在形式和细节上的各种改变。本文所述的设备和/或方法的任何部分可以以除互相排斥的组合之外的任何组合进行组合。这里描述的实施方式可以包括所描述的不同实施方式的功能、组件和/或特征的各种组合和/或子组合。

Claims (20)

1.一种方法,包括:
在头戴式显示设备的显示器内生成虚拟环境;
在与所述头戴式显示设备通信的控制器的用户接口处检测第一输入;
响应于所述第一输入而在所述虚拟环境中的所选虚拟特征上设置锚点;
检测第二输入;以及
响应于所述第二输入,
在所述虚拟环境内限定包括与所述锚点相关联的所述虚拟特征的区域,以及
调整所述虚拟环境中的所述虚拟特征的位置或比例中的至少一个,同时将所限定的区域内的所述虚拟特征的一部分保持在所述虚拟环境的用户视野内。
2.根据权利要求1所述的方法,其中,响应于所述第一输入而在所述虚拟环境中的所选虚拟特征上设置锚点包括:
检测虚拟目标射线和所述虚拟特征的相交;
将所述锚点设置在所述虚拟目标射线和所述虚拟特征的检测到的相交处;以及
基于设置的控制器参考点相对于设置的用户参考点的位置来限定在所述虚拟环境内包括与所述锚点相关联的所述虚拟特征的所述区域。
3.根据权利要求2所述的方法,其中,所述设置的用户参考点与用户头戴式显示设备上的固定点相对应,并且所述设置的控制器参考点与相对于所述控制器的固定点相对应。
4.根据权利要求3所述的方法,其中,检测虚拟目标射线与所述虚拟特征的相交包括限定所述虚拟目标射线,所述虚拟目标射线具有在所述设置的用户参考点处的原点,并且所述虚拟目标射线从在所述设置的用户参考点处的所述原点起延伸通过所述设置的控制器参考点。
5.根据权利要求4所述的方法,其中,所述设置的控制器参考点限定虚拟闭合曲线的中心。
6.根据权利要求5所述的方法,其中,基于设置的控制器参考点相对于设置的用户参考点的位置来在所述虚拟环境内限定包括与所述锚点相关联的所述虚拟特征的所述区域包括:
限定具有由所述设置的控制器参考点限定的中心的第一虚拟盘;
基于所述设置的用户参考点和所述第一虚拟盘限定虚拟锥体,所述虚拟锥体具有在所述设置的用户参考点处的原点并且朝向所述虚拟特征延伸,与所述第一虚拟盘相切地接触;以及
在所述虚拟锥体与所述虚拟特征的相交处限定第二虚拟盘。
7.根据权利要求6所述的方法,其中,限定具有由所述设置的控制器参考点限定的中心的第一虚拟盘包括限定所述第一虚拟盘的第一半径,所述第一半径从所述设置的控制器参考点延伸到所述第一虚拟盘的周界,并且其中,在所述锥体与所述虚拟特征的所述相交处限定第二虚拟盘包括:
限定所述第二虚拟盘的中心,所述第二虚拟盘的中心与所述锚点相对应;
限定所述第二虚拟盘的周界,所述周界与所述锥体和所述虚拟特征的平面的相交相对应;以及
限定所述第二虚拟盘的第二半径,所述第二半径从所述第二虚拟盘的中心延伸到所述第二虚拟盘的所述周界。
8.根据权利要求7所述的方法,其中,基于所述设置的用户参考点和所述第一虚拟盘限定虚拟锥体还包括限定在所述虚拟目标射线与所述虚拟锥体的周界之间的半角。
9.根据权利要求8所述的方法,其中,当所述设置的控制器参考点相对于所述设置的用户参考点移动时,所述第一虚拟盘的所述第一半径和所述第二虚拟盘的所述第二虚拟半径各自保持恒定,并且当所述设置的控制器参考点相对于所述设置的用户参考点移动时,所述半角改变。
10.根据权利要求8所述的方法,其中,接收第二输入包括检测所述设置的控制器参考点相对于所述设置的用户参考点的移动,并且其中,响应于所述第二输入而调整所述虚拟环境中的所述虚拟特征的位置或比例中的至少一个包括:
当所述设置的控制器参考点相对于所述设置的用户参考点移动时,保持所述锚点在所述虚拟目标射线上;
当所述设置的控制器参考点相对于所述设置的用户参考点移动时,保持所述第一虚拟盘的所述第一半径恒定;
当所述设置的控制器参考点相对于所述设置的用户参考点移动并且所述虚拟特征的所述位置或所述比例中的所述至少一个被调整时,相对于所述虚拟环境保持所述第二虚拟盘的所述第二半径恒定;以及
当所述设置的控制器参考点相对于所述设置的用户参考点移动并且所述虚拟特征的所述位置或所述比例中的所述至少一个被调整时,调整所述半角。
11.根据权利要求8所述的方法,其中,接收第二输入包括检测所述设置的控制器参考点相对于所述设置的用户参考点的移动,并且其中,响应于所述第二输入而调整所述虚拟环境中的所述虚拟特征的位置或比例中的至少一个包括:
当所述设置的控制器参考点相对于所述设置的用户参考点移动导致所述锚点移动时,保持所述锚点在所述虚拟目标射线上;
当所述锚点移动时,将围绕所述锚点的所述限定区域中的所述虚拟特征的所述部分保持在所述限定区域内;以及
当所述锚点移动时,调整围绕所述锚点的所述限定区域中的所述虚拟特征的所述部分的所述位置或所述比例中的所述至少一个。
12.根据权利要求11所述的方法,其中,围绕所述锚点的所述虚拟特征的所述限定区域与所述第二虚拟盘相对应,并且其中,当所述虚拟特征的所述位置或所述比例的所述至少一个响应于所述锚点的移动而被调整时,所述第二虚拟盘的虚拟半径相对于所述虚拟环境保持恒定。
13.一种系统,包括:
计算设备,所述计算设备被配置为生成沉浸式虚拟环境,所述计算设备包括:
存储可执行指令的存储器;以及
处理器,所述处理器被配置为执行所述指令以使得所述计算设备:
生成虚拟环境;
在与头戴式显示设备通信的控制器的用户接口处检测第一输入;
响应于所述第一输入,在所述虚拟环境中的所选虚拟特征上设置锚点;
检测第二输入;以及
响应于所述第二输入,
限定所述特征的区域,使得所述锚点位于所述区域内;并且
调整在所述虚拟环境中的所述虚拟特征的位置或比例中的至少一个,同时将所述限定区域内的所述虚拟特征的一部分保持在所述虚拟环境的用户视野内。
14.根据权利要求13所述的系统,其中,在响应于所述第一输入而在所述虚拟环境中的所选虚拟特征上设置锚点中,所述处理器被配置为:
检测虚拟目标射线和所述虚拟特征的相交,所述虚拟目标射线基于与用户头戴式显示器上的固定点相对应的设置的用户参考点处的原点来限定,并且延伸通过与相对于所述控制器的固定点相对应的设置的控制器参考点;
在所述虚拟目标射线与所述虚拟特征的所检测到的相交处设置所述锚点;以及
基于所述设置的控制器参考点相对于所述设置的用户参考点的位置来限定围绕所述锚点的所述特征的所述区域。
15.根据权利要求14所述的系统,其中,在基于所述设置的控制器参考点相对于所述设置的用户参考点的位置来限定围绕所述锚点的所述特征的所述区域时,所述处理器被配置为:
在所述设置的用户控制器点处限定第一虚拟盘;
基于所述设置的用户参考点和所述第一虚拟盘限定虚拟锥体,所述虚拟锥体具有在所述设置的用户参考点处的原点并且朝向所述虚拟特征延伸,与所述第一虚拟盘相切地接触;以及
在所述虚拟锥体与所述虚拟特征的所述相交处限定第二虚拟盘。
16.根据权利要求15所述的系统,其中,在虚拟十字线对处限定第一虚拟盘时,所述处理器被配置为:
限定所述第一虚拟盘的中心,所述第一虚拟盘的所述中心与所述设置的控制器参考点相对应;以及
限定所述第一虚拟盘的第一半径,所述第一半径从在所述设置的控制器参考点处的所述第一虚拟盘的所述中心延伸至所述第一虚拟盘的周界。
17.根据权利要求16所述的系统,其中,在所述锥体与所述虚拟特征的所述相交处限定第二虚拟盘时,所述处理器被配置为:
限定所述第二虚拟盘的中心,所述第二虚拟盘的所述中心与所述锚点相对应;
限定所述第二虚拟盘的周界,所述周界与所述锥体和所述虚拟特征的所述相交相对应;
限定所述第二虚拟盘的第二半径,所述第二半径从第二虚拟盘的所述中心延伸到所述第二虚拟盘的所述周界;以及
限定在所述虚拟目标射线与所述虚拟锥体的周界之间的半角。
18.根据权利要求17所述的系统,其中,在响应于所述第二输入而调整在所述虚拟环境中所述虚拟特征的位置或比例中的至少一个时,所述处理器被配置为:
检测所述设置的控制器参考点相对于所述设置的用户参考点的移动作为所述第二输入;
当所述设置的控制器参考点相对于所述设置的用户参考点移动时,保持所述锚点在所述虚拟目标射线上;
当所述设置的控制器参考点相对于所述设置的用户参考点移动时,保持所述第一虚拟盘的所述第一半径恒定;
当所述设置的控制器参考点相对于所述设置的用户参考点移动并且所述虚拟特征的所述位置或所述比例中的所述至少一个被调整时,相对于所述虚拟环境保持所述第二虚拟盘的所述第二半径恒定;以及
当所述设置的控制器参考点相对于所述设置的用户参考点移动并且所述虚拟特征的所述位置或所述比例中的所述至少一个被调整时,调整所述半角。
19.根据权利要求18所述的系统,其中,在当所述设置的控制器参考点相对于所述设置的用户参考点移动时相对于所述虚拟环境将所述第二虚拟盘的所述第二半径保持恒定时,所述处理器被配置为:
当所述锚点移动时,将在围绕所述锚点的所述限定区域中的所述虚拟特征的所述部分保持在所述限定区域内;以及
当所述锚点移动并且所述虚拟特征的所述位置或所述比例中的所述至少一个被调整时,调整在围绕所述锚点的所述限定区域中的所述虚拟特征的所述部分的所述位置或所述比例中的所述至少一个。
20.根据权利要求19所述的系统,其中,围绕所述锚点的所述虚拟特征的所述限定区域与所述第二虚拟盘相对应,并且其中,当所述虚拟特征的所述位置或所述比例中的所述至少一个响应于所述锚点的移动而被调整时,所述第二虚拟盘的所述虚拟半径相对于所述虚拟环境保持恒定。
CN201680059255.2A 2016-02-08 2016-12-06 用于在虚拟现实环境中的导航的控制系统 Active CN108139805B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201662292602P 2016-02-08 2016-02-08
US62/292,602 2016-02-08
US15/352,162 2016-11-15
US15/352,162 US10083539B2 (en) 2016-02-08 2016-11-15 Control system for navigation in virtual reality environment
PCT/US2016/065058 WO2017139009A1 (en) 2016-02-08 2016-12-06 Control system for navigation in virtual reality environment

Publications (2)

Publication Number Publication Date
CN108139805A true CN108139805A (zh) 2018-06-08
CN108139805B CN108139805B (zh) 2021-05-25

Family

ID=59497863

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680059255.2A Active CN108139805B (zh) 2016-02-08 2016-12-06 用于在虚拟现实环境中的导航的控制系统

Country Status (6)

Country Link
US (1) US10083539B2 (zh)
EP (1) EP3414644B1 (zh)
JP (1) JP6535819B2 (zh)
KR (1) KR102021135B1 (zh)
CN (1) CN108139805B (zh)
WO (1) WO2017139009A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110456907A (zh) * 2019-07-24 2019-11-15 广东虚拟现实科技有限公司 虚拟画面的控制方法、装置、终端设备及存储介质
CN110825279A (zh) * 2018-08-09 2020-02-21 北京微播视界科技有限公司 平面间无缝切换的方法、装置和计算机可读存储介质

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170061700A1 (en) * 2015-02-13 2017-03-02 Julian Michael Urbach Intercommunication between a head mounted display and a real world object
EP3605300A4 (en) * 2017-03-22 2020-02-26 Sony Corporation IMAGE PROCESSING DEVICE AND METHOD AND PROGRAM
US10326933B2 (en) * 2017-06-14 2019-06-18 Google Llc Pose estimation of 360-degree photos using annotations
KR102479052B1 (ko) * 2017-08-29 2022-12-20 삼성전자주식회사 복수의 컨트롤러를 이용한 전자 장치의 디스플레이 제어 방법 및 그 장치
KR102374408B1 (ko) * 2017-09-08 2022-03-15 삼성전자주식회사 가상 현실에서의 포인터 제어 방법 및 전자 장치
US10712899B2 (en) * 2017-10-17 2020-07-14 Microsoft Technology Licensing, Llc Human-machine interface tethered to a user position in a three-dimensional VR or AR environment
KR102572675B1 (ko) * 2017-11-22 2023-08-30 삼성전자주식회사 사용자 인터페이스를 적응적으로 구성하기 위한 장치 및 방법
CN108519676B (zh) * 2018-04-09 2020-04-28 杭州瑞杰珑科技有限公司 一种头戴式助视装置
US11353967B2 (en) * 2018-05-31 2022-06-07 Arkh Litho Holdings, LLC Interacting with a virtual environment using a pointing controller
US11397463B2 (en) 2019-01-12 2022-07-26 Microsoft Technology Licensing, Llc Discrete and continuous gestures for enabling hand rays
US11386872B2 (en) 2019-02-15 2022-07-12 Microsoft Technology Licensing, Llc Experiencing a virtual object at a plurality of sizes
US20230297166A1 (en) * 2020-03-10 2023-09-21 Arkh Litho Holdings, LLC Barometric Sensing of Arm Position in a Pointing Controller System
US11120639B1 (en) 2020-04-24 2021-09-14 Microsoft Technology Licensing, Llc Projecting telemetry data to visualization models

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7646394B1 (en) * 2004-03-05 2010-01-12 Hrl Laboratories, Llc System and method for operating in a virtual environment
CN104011788A (zh) * 2011-10-28 2014-08-27 奇跃公司 用于增强和虚拟现实的系统和方法
US20140306993A1 (en) * 2013-04-12 2014-10-16 Adam G. Poulos Holographic snap grid
CN105209959A (zh) * 2013-03-14 2015-12-30 高通股份有限公司 用于头戴式显示器的用户界面

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001128134A (ja) * 1999-11-01 2001-05-11 Atr Media Integration & Communications Res Lab プレゼンテーション装置
JP5681850B2 (ja) * 2010-03-09 2015-03-11 レノボ・イノベーションズ・リミテッド(香港) ヘッドマウントディスプレイを外部表示装置として使用する携帯端末
EP2506118A1 (en) * 2011-03-29 2012-10-03 Sony Ericsson Mobile Communications AB Virtual pointer
US20140168261A1 (en) * 2012-12-13 2014-06-19 Jeffrey N. Margolis Direct interaction system mixed reality environments
JP5868886B2 (ja) * 2013-03-11 2016-02-24 東芝三菱電機産業システム株式会社 ウェアラブルコンピュータ入力装置
US10514767B2 (en) * 2013-04-02 2019-12-24 Sony Corporation Information processing apparatus and information processing method
US20160291687A1 (en) * 2013-05-21 2016-10-06 Sony Corporation Display control device, display control method, and recording medium
US20160004300A1 (en) 2014-07-07 2016-01-07 PinchVR Inc. System, Method, Device and Computer Readable Medium for Use with Virtual Environments
US10416760B2 (en) * 2014-07-25 2019-09-17 Microsoft Technology Licensing, Llc Gaze-based object placement within a virtual reality environment
CN206650796U (zh) * 2017-08-04 2017-11-17 深圳超多维科技有限公司 虚拟现实装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7646394B1 (en) * 2004-03-05 2010-01-12 Hrl Laboratories, Llc System and method for operating in a virtual environment
CN104011788A (zh) * 2011-10-28 2014-08-27 奇跃公司 用于增强和虚拟现实的系统和方法
CN105209959A (zh) * 2013-03-14 2015-12-30 高通股份有限公司 用于头戴式显示器的用户界面
US20140306993A1 (en) * 2013-04-12 2014-10-16 Adam G. Poulos Holographic snap grid

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110825279A (zh) * 2018-08-09 2020-02-21 北京微播视界科技有限公司 平面间无缝切换的方法、装置和计算机可读存储介质
CN110456907A (zh) * 2019-07-24 2019-11-15 广东虚拟现实科技有限公司 虚拟画面的控制方法、装置、终端设备及存储介质

Also Published As

Publication number Publication date
KR102021135B1 (ko) 2019-09-11
US20170228921A1 (en) 2017-08-10
WO2017139009A1 (en) 2017-08-17
CN108139805B (zh) 2021-05-25
EP3414644A1 (en) 2018-12-19
KR20180069041A (ko) 2018-06-22
JP6535819B2 (ja) 2019-06-26
EP3414644B1 (en) 2022-05-25
US10083539B2 (en) 2018-09-25
JP2019502193A (ja) 2019-01-24

Similar Documents

Publication Publication Date Title
CN108139805A (zh) 用于在虚拟现实环境中的导航的控制系统
CN107743604B (zh) 增强和/或虚拟现实环境中的触摸屏悬停检测
US10559117B2 (en) Interactions and scaling in virtual reality
US10132633B2 (en) User controlled real object disappearance in a mixed reality display
EP3314371B1 (en) System for tracking a handheld device in an augmented and/or virtual reality environment
EP3172644B1 (en) Multi-user gaze projection using head mounted display devices
US9904055B2 (en) Smart placement of virtual objects to stay in the field of view of a head mounted display
EP3011418B1 (en) Virtual object orientation and visualization
US10359863B2 (en) Dragging virtual elements of an augmented and/or virtual reality environment
CN107646098A (zh) 用于在虚拟现实中跟踪手持式设备的系统
US11314323B2 (en) Position tracking system for head-mounted displays that includes sensor integrated circuits
US20230367118A1 (en) Augmented reality gaming using virtual eyewear beams
KR20240058665A (ko) 센서에 의해 식별된 데이터를 이용하여 시각적 객체를 변경하기 위한 웨어러블 장치 및 그 방법
KR20230070308A (ko) 웨어러블 장치를 이용한 제어가능한 장치의 위치 식별

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
GR01 Patent grant
GR01 Patent grant