JP6820405B2 - 拡張および/または仮想現実環境における6自由度コントローラを用いた仮想オブジェクトの操作 - Google Patents
拡張および/または仮想現実環境における6自由度コントローラを用いた仮想オブジェクトの操作 Download PDFInfo
- Publication number
- JP6820405B2 JP6820405B2 JP2019510942A JP2019510942A JP6820405B2 JP 6820405 B2 JP6820405 B2 JP 6820405B2 JP 2019510942 A JP2019510942 A JP 2019510942A JP 2019510942 A JP2019510942 A JP 2019510942A JP 6820405 B2 JP6820405 B2 JP 6820405B2
- Authority
- JP
- Japan
- Prior art keywords
- controller
- axis
- coordinate system
- movement
- respect
- 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.)
- Active
Links
- 230000033001 locomotion Effects 0.000 claims description 227
- 238000000034 method Methods 0.000 claims description 40
- 238000004590 computer program Methods 0.000 claims description 12
- 230000004044 response Effects 0.000 claims description 8
- 230000009466 transformation Effects 0.000 claims description 6
- 238000006243 chemical reaction Methods 0.000 claims 1
- 230000015654 memory Effects 0.000 description 35
- 238000004891 communication Methods 0.000 description 21
- 230000008859 change Effects 0.000 description 12
- 239000013598 vector Substances 0.000 description 11
- 230000003993 interaction Effects 0.000 description 10
- 230000003190 augmentative effect Effects 0.000 description 9
- 238000001514 detection method Methods 0.000 description 9
- 238000013519 translation Methods 0.000 description 7
- 230000014616 translation Effects 0.000 description 7
- 230000003287 optical effect Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 241000699666 Mus <mouse, genus> Species 0.000 description 4
- 230000009471 action Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 239000004973 liquid crystal related substance Substances 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 240000007320 Pinus strobus Species 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 2
- 230000004397 blinking Effects 0.000 description 2
- 230000026058 directional locomotion Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 210000003128 head Anatomy 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 241000699670 Mus sp. Species 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000009125 cardiac resynchronization therapy Methods 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001502 supplementing effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/017—Gesture based interaction, e.g. based on a set of recognized hand gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/0346—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
- G06F3/038—Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction 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/04815—Interaction 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction 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/04842—Selection of displayed objects or displayed text elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction 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/04845—Interaction 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction 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/0486—Drag-and-drop
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B9/00—Simulators for teaching or training purposes
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63B—APPARATUS FOR PHYSICAL TRAINING, GYMNASTICS, SWIMMING, CLIMBING, OR FENCING; BALL GAMES; TRAINING EQUIPMENT
- A63B22/00—Exercising apparatus specially adapted for conditioning the cardio-vascular system, for training agility or co-ordination of movements
- A63B22/02—Exercising apparatus specially adapted for conditioning the cardio-vascular system, for training agility or co-ordination of movements with movable endless bands, e.g. treadmills
- A63B2022/0271—Exercising apparatus specially adapted for conditioning the cardio-vascular system, for training agility or co-ordination of movements with movable endless bands, e.g. treadmills omnidirectional
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/20—Input arrangements for video game devices
- A63F13/21—Input arrangements for video game devices characterised by their sensors, purposes or types
- A63F13/211—Input arrangements for video game devices characterised by their sensors, purposes or types using inertial sensors, e.g. accelerometers or gyroscopes
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/40—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
- A63F13/42—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
- A63F13/428—Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle involving motion or position input signals, e.g. signals representing the rotation of an input controller or a player's arm motions sensed by accelerometers or gyroscopes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/01—Indexing scheme relating to G06F3/01
- G06F2203/012—Walk-in-place systems for allowing a user to walk in a virtual environment while constraining him to a given position in the physical environment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/048—Indexing scheme relating to G06F3/048
- G06F2203/04806—Zoom, i.e. interaction techniques or interactors for controlling the zooming operation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Computer Graphics (AREA)
- Business, Economics & Management (AREA)
- Educational Administration (AREA)
- Educational Technology (AREA)
- User Interface Of Digital Computer (AREA)
- Processing Or Creating Images (AREA)
- Position Input By Displaying (AREA)
Description
本願は、2016年8月23日に出願された米国仮出願第62/378,389号に基づく優先権を主張する2017年8月17日に出願された米国出願第15/679,597号の継続出願であり、それに基づく優先権を主張し、その開示全体を本明細書に引用により援用する。
本文書は概して、拡張現実およびまたは仮想現実環境における入力の処理に関する。
拡張現実(augmented reality:AR)および/または仮想現実(virtual reality:VR)システムは、3次元(3D)没入型環境を生成することができる。ユーザは、この拡張および/または仮想現実環境を、さまざまな電子装置との対話を通して体験することができる。これらの電子装置は、たとえば、ディスプレイを含むヘルメットまたはその他のヘッドマウントデバイス、ユーザがディスプレイ装置を見るときに用いる眼鏡またはゴーグル、センサを含む外部ハンドヘルドデバイス、センサが装着された手袋、およびその他のこのような電子装置などである。拡張および/または仮想現実環境に没入すると、ユーザは仮想環境において、仮想環境の中の仮想の物体、要素、特徴などと、仮想環境の中の仮想の物体を選択および/または操作するためのさまざまな方法で対話することができる。たとえば、ユーザは、1つ以上の外部電子装置の操作、物理的な動きおよび/またはジェスチャ、頭部の方向および/または目の注視などを通して仮想環境で所望の効果を生成して、仮想環境と対話し、仮想環境を個人専用にし、仮想環境を制御することができる。
ある局面において、方法は、3次元(3D)仮想環境を生成することと、物理環境での第1のコントローラの6自由度(6DOF)の位置および向きを追跡することと、物理環境での第2のコントローラの6DOFの位置および向きを追跡することと、仮想環境で表示される仮想オブジェクトの選択を検出することと、物理環境で検出された第1の座標系に対する第1のコントローラの動き、および物理環境で検出された第2の座標系に対する第2のコントローラの動きに基づいて、選択された仮想オブジェクトについて目標とされた入力を検出することと、検出された第1の座標系に対する第1のコントローラの動き、および検出された第2の座標系に対する第2のコントローラの動きを、共通の座標系に対するコマンドの動きに変換することと、コマンドの動きに応じて、選択された仮想オブジェクトを操作することとを含み得る。
たとえばヘッドマウントディスプレイ(head mounted display:HMD)デバイスを装着し仮想環境に没入しているユーザは、仮想環境を探検することができ、多種多様な入力を通して仮想環境の中の仮想の物体、要素、特徴などと対話することができる。これらの入力は、たとえば、HMDとは別の電子装置の操作および/もしくはHMD自体の操作、ならびに/または目の注視の方向、ならびに/または頭部の動きならびに/または手/腕のジェスチャなどを含み得る。ユーザは、HMDに作動的に結合されたまたはHMDとペアリングされた1つ以上のハンドヘルド電子装置、またはコントローラを操作して、仮想環境で所望の行動を生じさせることができる。ユーザは、たとえば、コントローラのタッチ面へのタッチ入力、コントローラ上の入力ボタンおよび/またはスイッチの操作、コントローラ自体の物理的な動きなどの多種多様な方法でコントローラを操作して、仮想環境で実行されることになる入力を提供することができる。たとえば、ある実装例では、コントローラを操作して、仮想環境でユーザに表示される仮想コンテンツの視覚サイズおよび/または外観および/または位置を調整することができる。この能力によって、ユーザ入力を提供する際の柔軟性および利便性が提供され得、ユーザの仮想体験が向上し得る。
Claims (17)
- 方法であって、
3次元(3D)仮想環境を生成することと、
物理環境での第1のコントローラの6自由度(6DOF)の位置および向きを追跡することと、
前記物理環境での第2のコントローラの6DOFの位置および向きを追跡することと、
前記仮想環境で表示される仮想オブジェクトの選択を検出することと、
前記物理環境で検出された第1の座標系に対する前記第1のコントローラの動き、および前記物理環境で検出された第2の座標系に対する前記第2のコントローラの動きに基づいて、選択された前記仮想オブジェクトについて目標とされた入力を検出することと、
検出された前記第1の座標系に対する前記第1のコントローラの前記動き、および検出された前記第2の座標系に対する前記第2のコントローラの前記動きを、共通の座標系に対する動きに変換することと、
前記共通の座標系に対する動きに応じて、選択された前記仮想オブジェクトを操作することとを備え、
検出された前記第1の座標系に対する前記第1のコントローラの前記共通の座標系に対する前記動き、および検出された前記第2の座標系に対する前記第2のコントローラの前記動きを、共通の座標系に対する動きに変換することは、
前記共通の座標系の第1の軸を定義することを含み、前記第1の軸は前記第1のコントローラの中央部から前記第2のコントローラの中央部に延び、前記変換することはさらに、
前記共通の座標系の第2の軸を定義することを含み、前記第2の軸は前記第1の座標系のX軸、Y軸、またはZ軸の1つから選択され、前記変換することはさらに、
前記共通の座標系の第3の軸を定義することを含み、前記第3の軸は前記第1の軸と前記第2の軸との外積である、方法。 - 前記共通の座標系の前記第2の軸を定義することは、
前記第1の座標系の前記X軸、前記Y軸または前記Z軸のうちのどれが前記第1の軸に最も直交しているかを判断することと、
前記X軸、前記Y軸または前記Z軸のうちの最も直交している軸を前記共通の座標系の前記第2の軸として設定することとを含む、請求項1に記載の方法。 - 前記第1の軸を定義することは、前記第1のコントローラおよび前記第2のコントローラが前記物理環境において、かつそれに対応して前記仮想環境に対して動くと、連続した時点において前記第1の軸を動的に再び定義することを含む、請求項1または請求項2に記載の方法。
- 前記第2の軸を定義することは、前記第1のコントローラおよび前記第2のコントローラが前記物理環境において、かつそれに対応して前記仮想環境に対して動くと、かつ前記第1の軸が動的に再び定義されると、連続した時点において前記第2の軸を動的に再び定義することを含む、請求項3に記載の方法。
- 前記第3の軸を定義することは、前記第1のコントローラおよび前記第2のコントローラが前記物理環境において、かつそれに対応して前記仮想環境に対して動くと、かつ前記第1の軸および前記第2の軸が動的に再び定義されると、連続した時点において前記第3の軸を動的に再び定義することを含む、請求項4に記載の方法。
- 検出された前記第1の座標系に対する前記第1のコントローラの前記動き、および検出された前記第2の座標系に対する前記第2のコントローラの前記動きに基づいて、選択された前記仮想オブジェクトについて目標とされた入力を検出することは、
前記第1の座標系の前記X軸、前記Y軸または前記Z軸の少なくとも1つの周りの前記第1のコントローラの回転運動を検出すること、または
前記第2の座標系のX軸、Y軸またはZ軸の少なくとも1つの周りの前記第2のコントローラの回転運動を検出すること、の少なくとも一方を含む、請求項1〜請求項5のいずれか1項に記載の方法。 - 検出された前記第1の座標系に対する前記第1のコントローラの前記動き、および検出された前記第2の座標系に対する前記第2のコントローラの前記動きを、前記共通の座標系に対する前記動きに変換することは、
検出された前記第1のコントローラの前記回転運動または検出された前記第2のコントローラの前記回転運動の少なくとも一方に基づいて、前記共通の座標系に対する回転の動きを判断することと、
前記回転の動きを、選択された前記仮想オブジェクトの操作に適用することとを含む、請求項6に記載の方法。 - 検出された前記第1の座標系に対する前記第1のコントローラの前記動き、および検出された前記第2の座標系に対する前記第2のコントローラの前記動きに基づいて、選択された前記仮想オブジェクトについて目標とされた入力を検出することは、
前記第1の座標系の前記X軸、前記Y軸または前記Z軸の少なくとも1つに対する、かつ前記第2のコントローラの位置に対する前記第1のコントローラの動きを検出すること、または
前記第2の座標系のX軸、Y軸またはZ軸の少なくとも1つに対する、かつ前記第1のコントローラの位置に対する前記第2のコントローラの動きを検出すること、の少なくとも一方を含む、請求項1〜請求項7のいずれか1項に記載の方法。 - 検出された前記第1の座標系に対する前記第1のコントローラの前記動き、および検出された前記第2の座標系に対する前記第2のコントローラの前記動きを、共通の座標系に対する動きに変換することは、
検出された前記第1のコントローラの前記動きまたは検出された前記第2のコントローラの前記動きの少なくとも一方に基づいて、前記共通の座標系に対する選択された動きの方向および選択された動きの量を求めることと、
前記選択された動きの方向における前記選択された動きの量を、選択された前記仮想オブジェクトの操作に適用することとを含む、請求項8に記載の方法。 - 前記3D仮想環境を生成することは、ヘッドマウントディスプレイ(HMD)デバイスのディスプレイ上に前記仮想環境を表示することを含み、前記第1および第2のコントローラは前記HMDに作動的に結合されるハンドヘルドコントローラであり、その結果、前記物理環境での前記第1および第2のコントローラの物理的な動きは、前記仮想環境で表示される選択された仮想オブジェクトに対して実行されることになるユーザコマンドに対応する、請求項1〜請求項9のいずれか1項に記載の方法。
- 方法であって、
仮想環境で表示される仮想オブジェクトの選択を検出することと、
検出された第1の座標系に対する第1のコントローラの動き、および検出された第2の座標系に対する第2のコントローラの動きに応じて、前記仮想環境で表示される選択された前記仮想オブジェクトについて目標とされた入力を検出することとを備え、前記第1のコントローラおよび前記第2のコントローラは物理環境で動作し、前記方法はさらに、
検出された前記第1のコントローラの前記動き、および検出された前記第2のコントローラの前記動きを、共通の座標系に対する動きに変換することと、
前記共通の座標系に対する前記動きに応じて、選択された前記仮想オブジェクトを前記仮想環境で回転させることとを備え、
検出された前記第1のコントローラの前記動き、および検出された前記第2のコントローラの前記動きを、共通の座標系に対する動きに変換することは、
前記共通の座標系の第1の軸を定義することを含み、前記第1の軸は前記第1のコントローラの中央部から前記第2のコントローラの中央部に延び、前記変換することはさらに、
前記共通の座標系の第2の軸を定義することを含み、前記第2の軸を定義することは、
前記第1の座標系のX軸、Y軸またはZ軸のうちのどれが前記第1の軸に最も直交しているかを判断することと、
前記第1の座標系の前記X軸、前記Y軸または前記Z軸のうちの最も直交している軸を前記共通の座標系の前記第2の軸として設定することとを含み、前記変換することはさらに、
前記共通の座標系の第3の軸を定義することを含み、前記第3の軸は前記第1の軸と前記第2の軸との外積である、方法。 - 前記第1の軸を定義することは、前記第1のコントローラおよび前記第2のコントローラが前記物理環境において、かつそれに対応して前記仮想環境に対して動くと、連続した時点において前記第1の軸を動的に再び定義することを含み、
前記第2の軸を定義することは、前記第1のコントローラおよび前記第2のコントローラが前記物理環境において、かつそれに対応して前記仮想環境に対して動くと、かつ前記第1の軸が動的に再び定義されると、連続した時点において前記第2の軸を動的に再び定義することを含み、
前記第3の軸を定義することは、前記第1のコントローラおよび前記第2のコントローラが前記物理環境において、かつそれに対応して前記仮想環境に対して動くと、かつ前記第1の軸および前記第2の軸が動的に再び定義されると、連続した時点において前記第3の軸を動的に再び定義することを含む、請求項11に記載の方法。 - 検出された前記第1のコントローラの前記動き、および検出された第2のコントローラの前記動きに応じて、選択された前記仮想オブジェクトについて目標とされた入力を検出することは、
前記第1の座標系の前記X軸、前記Y軸または前記Z軸の少なくとも1つの周りの前記第1のコントローラの回転運動を検出すること、または
前記第2の座標系のX軸、Y軸またはZ軸の少なくとも1つの周りの前記第2のコントローラの回転運動を検出すること、の少なくとも一方を含む、請求項11または請求項12に記載の方法。 - 検出された前記第1の座標系に対する前記第1のコントローラの前記動き、および検出された前記第2の座標系に対する前記第2のコントローラの前記動きを、共通の座標系に対する動きに変換することは、
検出された前記第1のコントローラの前記回転運動または検出された前記第2のコントローラの前記回転運動の少なくとも一方に基づいて、前記共通の座標系に対する回転の動きを判断することと、
前記回転の動きを、選択された前記仮想オブジェクトの操作に適用することとを含む、請求項13に記載の方法。 - 前記物理環境での前記第1のコントローラの6自由度(6DOF)の位置および向きを追跡することと、
前記物理環境での前記第2のコントローラの6DOFの位置および向きを追跡することと、
前記第1のコントローラの前記6DOFの追跡に基づいて、前記第1のコントローラの前記動きを検出することと、
前記第2のコントローラの前記6DOFの追跡に基づいて、前記第2のコントローラの前記動きを検出することとをさらに備える、請求項11〜請求項14のいずれか1項に記載の方法。 - コンピュータプログラムであって、一連の命令を含み、前記命令はプロセッサによって実行されると前記プロセッサに方法を実行させ、前記方法は、
3次元(3D)仮想環境を生成することと、
物理環境での第1のコントローラの6自由度(6DOF)の位置および向きを追跡することと、
前記物理環境での第2のコントローラの6DOFの位置および向きを追跡することと、
前記仮想環境で表示される仮想オブジェクトの選択を検出することと、
前記物理環境で検出された第1の座標系に対する前記第1のコントローラの動き、および前記物理環境で検出された第2の座標系に対する前記第2のコントローラの動きに基づいて、選択された前記仮想オブジェクトについて目標とされた入力を検出することと、
検出された前記第1の座標系に対する前記第1のコントローラの前記動き、および検出された前記第2の座標系に対する前記第2のコントローラの前記動きを、共通の座標系に対する動きに変換することと、
前記共通の座標系に対する前記動きに応じて、選択された前記仮想オブジェクトを操作することとを備え、
検出された前記第1のコントローラの前記動き、および検出された前記第2のコントローラの前記動きを、共通の座標系に対する動きに変換することは、
前記共通の座標系の第1の軸を定義することを含み、前記第1の軸は前記第1のコントローラの中央部から前記第2のコントローラの中央部に延び、前記変換することはさらに、
前記共通の座標系の第2の軸を定義することを含み、前記第2の軸を定義することは、
前記第1の座標系のX軸、Y軸またはZ軸のうちのどれが前記第1の軸に最も直交しているかを判断することと、
前記X軸、前記Y軸または前記Z軸のうちの最も直交している軸を前記共通の座標系
の前記第2の軸として設定することとを含み、前記変換することはさらに、
前記共通の座標系の第3の軸を定義することを含み、前記第3の軸は前記第1の軸と前記第2の軸との外積である、コンピュータプログラム。 - 検出された前記第1のコントローラの前記動き、および検出された第2のコントローラの前記動きに応じて、選択された前記仮想オブジェクトについて目標とされた入力を検出することは、
前記第1の座標系の前記X軸、前記Y軸または前記Z軸の少なくとも1つの周りの前記第1のコントローラの回転運動を検出すること、または
前記第2の座標系のX軸、Y軸またはZ軸の少なくとも1つの周りの前記第2のコントローラの回転運動を検出すること、の少なくとも一方を含み、
検出された前記第1の座標系に対する前記第1のコントローラの前記動き、および検出された前記第2の座標系に対する前記第2のコントローラの前記動きを、共通の座標系に対する動きに変換することは、
検出された前記第1のコントローラの前記回転運動または検出された前記第2のコントローラの前記回転運動の少なくとも一方に基づいて、前記共通の座標系に対する回転の動きを判断することと、
前記回転の動きを、選択された前記仮想オブジェクトの操作に適用することとを含む、請求項16に記載のコンピュータプログラム。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662378370P | 2016-08-23 | 2016-08-23 | |
US62/378,370 | 2016-08-23 | ||
US15/679,597 | 2017-08-17 | ||
US15/679,597 US10642344B2 (en) | 2016-08-23 | 2017-08-17 | Manipulating virtual objects with six degree-of-freedom controllers in an augmented and/or virtual reality environment |
PCT/US2017/047600 WO2018039069A1 (en) | 2016-08-23 | 2017-08-18 | Manipulating virtual objects with six degree-of-freedom controllers in an augmented and/or virtual reality environment |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019532396A JP2019532396A (ja) | 2019-11-07 |
JP6820405B2 true JP6820405B2 (ja) | 2021-01-27 |
Family
ID=60662035
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019510942A Active JP6820405B2 (ja) | 2016-08-23 | 2017-08-18 | 拡張および/または仮想現実環境における6自由度コントローラを用いた仮想オブジェクトの操作 |
Country Status (7)
Country | Link |
---|---|
US (1) | US10642344B2 (ja) |
EP (1) | EP3504608B1 (ja) |
JP (1) | JP6820405B2 (ja) |
KR (1) | KR102245245B1 (ja) |
CN (1) | CN109643159B (ja) |
DE (1) | DE202017104928U1 (ja) |
WO (1) | WO2018039069A1 (ja) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10198874B2 (en) | 2016-05-13 | 2019-02-05 | Google Llc | Methods and apparatus to align components in virtual reality environments |
WO2018026893A1 (en) * | 2016-08-03 | 2018-02-08 | Google Llc | Methods and systems for determining positional data for three-dimensional interactions inside virtual reality environments |
US10664993B1 (en) | 2017-03-13 | 2020-05-26 | Occipital, Inc. | System for determining a pose of an object |
US10429949B2 (en) * | 2017-06-30 | 2019-10-01 | Htc Corporation | User interaction apparatus and method |
WO2020023524A1 (en) * | 2018-07-23 | 2020-01-30 | Magic Leap, Inc. | Method and system for resolving hemisphere ambiguity using a position vector |
US10909772B2 (en) * | 2018-07-31 | 2021-02-02 | Splunk Inc. | Precise scaling of virtual objects in an extended reality environment |
US10692299B2 (en) | 2018-07-31 | 2020-06-23 | Splunk Inc. | Precise manipulation of virtual object position in an extended reality environment |
JP7400721B2 (ja) * | 2018-08-29 | 2023-12-19 | ソニーグループ株式会社 | 情報処理装置、情報処理方法及びプログラム |
CN113196212A (zh) | 2018-10-17 | 2021-07-30 | 美达威公司 | 作为用于交互的物理接口的移动平台 |
JP2022047549A (ja) | 2019-01-18 | 2022-03-25 | ソニーグループ株式会社 | 情報処理装置、情報処理方法、及び、記録媒体 |
US11644940B1 (en) | 2019-01-31 | 2023-05-09 | Splunk Inc. | Data visualization in an extended reality environment |
US11853533B1 (en) * | 2019-01-31 | 2023-12-26 | Splunk Inc. | Data visualization workspace in an extended reality environment |
US10922892B1 (en) * | 2019-04-30 | 2021-02-16 | Splunk Inc. | Manipulation of virtual object position within a plane of an extended reality environment |
US20200356765A1 (en) * | 2019-05-08 | 2020-11-12 | Ssam Sports, Inc. | Solving magnetic interference in inertial sensors |
US10928975B2 (en) * | 2019-07-17 | 2021-02-23 | Microsoft Technology Licensing, Llc | On-the-fly adjustment of orientation of virtual objects |
KR102570009B1 (ko) * | 2019-07-31 | 2023-08-23 | 삼성전자주식회사 | Ar 객체 생성 방법 및 전자 장치 |
US11054923B2 (en) * | 2019-10-11 | 2021-07-06 | Finch Technologies Ltd. | Automatic switching between different modes of tracking user motions to control computer applications |
KR102164371B1 (ko) * | 2019-11-29 | 2020-10-12 | 주식회사 아이브이알시스템즈 | 가상정비훈련을 위한 가상객체와의 상호작용 구현 방법 |
CN110992757A (zh) * | 2019-11-29 | 2020-04-10 | 北方工业大学 | 基于vr与人工智能的高危化学实验室防火安全培训方法 |
CN115087948A (zh) * | 2020-02-19 | 2022-09-20 | 发那科株式会社 | 工业机械的操作系统 |
CA3180827A1 (en) | 2020-04-22 | 2021-10-28 | Within Unlimited, Inc. | Virtual and augmented reality personalized and customized fitness training activity or game, methods, devices, and systems |
US11448884B2 (en) * | 2020-11-25 | 2022-09-20 | Sony Interactive Entertainment Inc. | Image based finger tracking plus controller tracking |
CN113181619A (zh) * | 2021-04-09 | 2021-07-30 | 青岛小鸟看看科技有限公司 | 一种运动训练方法、装置和系统 |
CN113457157A (zh) * | 2021-06-30 | 2021-10-01 | 网易(杭州)网络有限公司 | 游戏中虚拟道具的切换方法、装置以及触控终端 |
CN114003126A (zh) * | 2021-09-26 | 2022-02-01 | 歌尔光学科技有限公司 | 虚拟现实设备的交互控制方法、装置及设备 |
WO2024020061A1 (en) * | 2022-07-18 | 2024-01-25 | Apple Inc. | Devices, methods, and graphical user interfaces for providing inputs in three-dimensional environments |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6184867B1 (en) | 1997-11-30 | 2001-02-06 | International Business Machines Corporation | Input for three dimensional navigation using two joysticks |
US7219033B2 (en) | 2005-02-15 | 2007-05-15 | Magneto Inertial Sensing Technology, Inc. | Single/multiple axes six degrees of freedom (6 DOF) inertial motion capture system with initial orientation determination capability |
US8384665B1 (en) * | 2006-07-14 | 2013-02-26 | Ailive, Inc. | Method and system for making a selection in 3D virtual environment |
US9405372B2 (en) * | 2006-07-14 | 2016-08-02 | Ailive, Inc. | Self-contained inertial navigation system for interactive control using movable controllers |
EP2076830A4 (en) | 2006-10-27 | 2013-07-17 | Nokia Corp | METHOD AND DEVICE FOR ENABLING MOVEMENT WITHIN A THREE-DIMENSIONAL GRAPHIC USER INTERFACE |
EP2104905A4 (en) * | 2006-12-29 | 2010-12-29 | Gesturetek Inc | MANIPULATION OF VIRTUAL OBJECTS USING AN EXTENDED INTERACTIVE SYSTEM |
JP5730463B2 (ja) * | 2008-07-11 | 2015-06-10 | 任天堂株式会社 | ゲームプログラムおよびゲーム装置 |
JP2010238015A (ja) * | 2009-03-31 | 2010-10-21 | Sega Corp | 入力装置及びプログラム |
EP2348383B1 (en) | 2009-12-31 | 2017-07-12 | Sony Computer Entertainment Europe Limited | System and method of virtual interaction |
CN103218055B (zh) * | 2010-02-05 | 2017-03-01 | 索尼电脑娱乐公司 | 用于利用位置、方向或动作与计算程序相接口的控制器 |
JP5735865B2 (ja) * | 2011-06-17 | 2015-06-17 | 任天堂株式会社 | ゲームシステムおよびゲームプログラム |
GB2501929B (en) * | 2012-05-11 | 2015-06-24 | Sony Comp Entertainment Europe | Apparatus and method for augmented reality |
US9041622B2 (en) * | 2012-06-12 | 2015-05-26 | Microsoft Technology Licensing, Llc | Controlling a virtual object with a real controller device |
US20140168261A1 (en) * | 2012-12-13 | 2014-06-19 | Jeffrey N. Margolis | Direct interaction system mixed reality environments |
US9443354B2 (en) * | 2013-04-29 | 2016-09-13 | Microsoft Technology Licensing, Llc | Mixed reality interactions |
US10579207B2 (en) * | 2014-05-14 | 2020-03-03 | Purdue Research Foundation | Manipulating virtual environment using non-instrumented physical object |
US9741169B1 (en) * | 2014-05-20 | 2017-08-22 | Leap Motion, Inc. | Wearable augmented reality devices with object detection and tracking |
JP6355978B2 (ja) * | 2014-06-09 | 2018-07-11 | 株式会社バンダイナムコエンターテインメント | プログラムおよび画像生成装置 |
US9911235B2 (en) * | 2014-11-14 | 2018-03-06 | Qualcomm Incorporated | Spatial interaction in augmented reality |
US9696795B2 (en) * | 2015-02-13 | 2017-07-04 | Leap Motion, Inc. | Systems and methods of creating a realistic grab experience in virtual reality/augmented reality environments |
US10317989B2 (en) * | 2016-03-13 | 2019-06-11 | Logitech Europe S.A. | Transition between virtual and augmented reality |
US9983697B1 (en) * | 2016-05-18 | 2018-05-29 | Meta Company | System and method for facilitating virtual interactions with a three-dimensional virtual environment in response to sensor input into a control device having sensors |
US10146335B2 (en) * | 2016-06-09 | 2018-12-04 | Microsoft Technology Licensing, Llc | Modular extension of inertial controller for six DOF mixed reality input |
US10078377B2 (en) * | 2016-06-09 | 2018-09-18 | Microsoft Technology Licensing, Llc | Six DOF mixed reality input by fusing inertial handheld controller with hand tracking |
US10249090B2 (en) * | 2016-06-09 | 2019-04-02 | Microsoft Technology Licensing, Llc | Robust optical disambiguation and tracking of two or more hand-held controllers with passive optical and inertial tracking |
-
2017
- 2017-08-16 DE DE202017104928.0U patent/DE202017104928U1/de active Active
- 2017-08-17 US US15/679,597 patent/US10642344B2/en active Active
- 2017-08-18 EP EP17758408.3A patent/EP3504608B1/en active Active
- 2017-08-18 JP JP2019510942A patent/JP6820405B2/ja active Active
- 2017-08-18 KR KR1020197005419A patent/KR102245245B1/ko active IP Right Grant
- 2017-08-18 WO PCT/US2017/047600 patent/WO2018039069A1/en unknown
- 2017-08-18 CN CN201780050179.3A patent/CN109643159B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
KR102245245B1 (ko) | 2021-04-27 |
EP3504608A1 (en) | 2019-07-03 |
JP2019532396A (ja) | 2019-11-07 |
CN109643159A (zh) | 2019-04-16 |
WO2018039069A1 (en) | 2018-03-01 |
EP3504608B1 (en) | 2021-10-06 |
KR20190031551A (ko) | 2019-03-26 |
US10642344B2 (en) | 2020-05-05 |
CN109643159B (zh) | 2022-08-02 |
DE202017104928U1 (de) | 2017-11-24 |
US20180059777A1 (en) | 2018-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6820405B2 (ja) | 拡張および/または仮想現実環境における6自由度コントローラを用いた仮想オブジェクトの操作 | |
US11181986B2 (en) | Context-sensitive hand interaction | |
JP6895390B2 (ja) | 仮想現実においてハンドヘルド電子装置を追跡するためのシステム | |
CN107667328B (zh) | 用于在增强和/或虚拟现实环境中跟踪手持设备的系统 | |
EP3400502B1 (en) | Combining gyromouse input and touch input for navigation in an augmented and/or virtual reality environment | |
CN109074149B (zh) | 用于增强或虚拟现实环境的头戴式参考系中的对象跟踪 | |
JP6535819B2 (ja) | 仮想現実環境におけるナビゲーション用制御システム | |
US20180150204A1 (en) | Switching of active objects in an augmented and/or virtual reality environment | |
US10359863B2 (en) | Dragging virtual elements of an augmented and/or virtual reality environment | |
US10620720B2 (en) | Input controller stabilization techniques for virtual reality systems | |
EP3479198A1 (en) | Hover touch input compensation in augmented and/or virtual reality | |
WO2019055929A1 (en) | MONITORING THE LOCATION AND ORIENTATION OF A VIRTUAL CONTROL DEVICE IN A VIRTUAL REALITY SYSTEM |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190509 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190509 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200529 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200714 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201013 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20201208 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210104 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6820405 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |