JP6242452B1 - Method for providing virtual space, method for providing virtual experience, program, and recording medium - Google Patents
Method for providing virtual space, method for providing virtual experience, program, and recording medium Download PDFInfo
- Publication number
- JP6242452B1 JP6242452B1 JP2016162243A JP2016162243A JP6242452B1 JP 6242452 B1 JP6242452 B1 JP 6242452B1 JP 2016162243 A JP2016162243 A JP 2016162243A JP 2016162243 A JP2016162243 A JP 2016162243A JP 6242452 B1 JP6242452 B1 JP 6242452B1
- Authority
- JP
- Japan
- Prior art keywords
- virtual
- user
- hmd
- option
- virtual space
- 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
- 238000000034 method Methods 0.000 title claims description 58
- 230000000007 visual effect Effects 0.000 claims description 81
- 238000001514 detection method Methods 0.000 description 53
- 210000003811 finger Anatomy 0.000 description 19
- 210000001508 eye Anatomy 0.000 description 16
- 230000006870 function Effects 0.000 description 15
- 210000003128 head Anatomy 0.000 description 15
- 210000003813 thumb Anatomy 0.000 description 15
- 230000008569 process Effects 0.000 description 14
- 238000004891 communication Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 13
- 230000008859 change Effects 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 210000000887 face Anatomy 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000000547 structure data Methods 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000005452 bending Methods 0.000 description 1
- 210000005252 bulbus oculi Anatomy 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 210000004087 cornea Anatomy 0.000 description 1
- 210000005224 forefinger Anatomy 0.000 description 1
- 230000001678 irradiating effect Effects 0.000 description 1
- 210000004932 little finger Anatomy 0.000 description 1
- 230000006386 memory function Effects 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Images
Landscapes
- Position Input By Displaying (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
【課題】仮想空間において選択した実感をユーザにさらに体感させる。【解決手段】選択肢制御部(233)は、位置(X1)に操作部分を含むUIオブジェクト(OB)を、仮想空間に生成する。選択肢制御部(233)は、仮想右手(HR)によって操作部分が選択されたまま、操作部分が位置(X1)とは異なる位置(X2)に位置している間、選択肢をUIオブジェクト(OB)に対する指示に基づき選択可能とする。【選択図】図10A user can further experience the actual feeling selected in a virtual space. An option control unit (233) generates a UI object (OB) including an operation part at a position (X1) in a virtual space. The option control unit (233) selects the UI object (OB) while the operation part is positioned at a position (X2) different from the position (X1) while the operation part is selected by the virtual right hand (HR). Can be selected based on the instruction. [Selection] Figure 10
Description
本開示は、仮想空間を提供する方法、仮想体験を提供する方法、プログラム、および記録媒体に関する。 The present disclosure relates to a method for providing a virtual space, a method for providing a virtual experience, a program, and a recording medium.
特許文献1には、仮想空間に配置されたウィジェットに視線を送ることによって所定の入力を行うことができる方法が記載されている。 Japanese Patent Application Laid-Open No. 2004-228561 describes a method that allows a predetermined input by sending a line of sight to a widget arranged in a virtual space.
特許文献1においては、仮想体験をさらに改善させる余地がある。特に、UI(User Interface)に対する入力を実行した実感をユーザに体感させることにより、仮想体験をさらに改善し得る。
In
本開示は、前記の課題を解決するためになされたものであり、その目的は、仮想体験をさらに改善することにある。 This indication is made in order to solve the above-mentioned subject, and the object is to further improve a virtual experience.
本開示に係る仮想空間を提供する方法は、頭部にヘッドマウントディスプレイを装着したユーザに仮想空間を提供する方法であって、ヘッドマウントディスプレイの動きに基づいて、仮想空間のうちヘッドマウントディスプレイに出力される視界画像を生成するステップと、仮想空間に、ユーザからの指示を受け付けるユーザインタフェース(以下、UI)オブジェクトであって、操作部分を第1位置に含むUIオブジェクトを生成するステップと、仮想空間に、ユーザの頭部以外の身体の一部の動きに連動する仮想身体を生成するステップと、操作部分が、仮想身体により選択されたことを検出するステップと、操作部分が仮想身体により選択されたまま、仮想身体により何れかの方向に移動させられたことを検出するステップと、操作部分が仮想身体により選択されたまま、第1位置とは異なる第2位置に位置している間、所定の選択肢をUIオブジェクトに対する指示に基づき選択可能とするステップと、を含む。 A method of providing a virtual space according to the present disclosure is a method of providing a virtual space to a user wearing a head-mounted display on a head, wherein the head-mounted display is included in the virtual space based on the movement of the head-mounted display. Generating a visual field image to be output; generating in a virtual space a user interface (hereinafter referred to as UI) object that receives an instruction from a user, the UI object including an operation part at a first position; In the space, generating a virtual body that interlocks with the movement of a part of the body other than the user's head, detecting that the operation part is selected by the virtual body, and selecting the operation part by the virtual body A step of detecting that the virtual body has been moved in any direction by the virtual body; There comprising remains selected by the virtual body, while the first position is located in a different second position, the steps to be selected based on a predetermined selection to the instruction for the UI object, the.
また、本開示に係る仮想体験を提供する方法は、頭部にヘッドマウントディスプレイを装着したユーザに仮想体験を提供する方法であって、ユーザからの指示を受け付けるユーザインタフェース(以下、UI)オブジェクトであって、操作部分を第1位置に含むUIオブジェクトを生成するステップと、操作部分が、ユーザの頭部以外の身体の一部により選択されたことを検出するステップと、操作部分が身体の一部により選択されたまま、身体の一部により何れかの方向に移動させられたことを検出するステップと、操作部分が身体の一部により選択されたまま、第1位置とは異なる第2位置に位置している間、所定の選択肢をUIオブジェクトに対する指示に基づき選択可能とするステップと、を含む。 A method for providing a virtual experience according to the present disclosure is a method for providing a virtual experience to a user wearing a head-mounted display on a head, and is a user interface (hereinafter referred to as UI) object that receives an instruction from the user. A step of generating a UI object including the operation part at the first position; a step of detecting that the operation part is selected by a part of the body other than the user's head; A step of detecting movement in any direction by a part of the body while being selected by the part, and a second position different from the first position while the operation part is selected by the part of the body A predetermined option can be selected on the basis of an instruction to the UI object.
本開示によれば、仮想体験をさらに改善し得る。 According to the present disclosure, the virtual experience can be further improved.
[本発明の実施形態の詳細]
本発明の実施形態に係る仮想空間を提供する方法、および、プログラムの具体例を、以下に図面を参照しつつ説明する。本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が本発明に含まれることが意図される。以下の説明では、図面の説明において同一の要素には同一の符号を付し、重複する説明を繰り返さない。
[Details of the embodiment of the present invention]
A specific example of a method and program for providing a virtual space according to an embodiment of the present invention will be described below with reference to the drawings. The present invention is not limited to these exemplifications, but is defined by the scope of claims for patent, and it is intended that all modifications within the meaning and scope equivalent to the scope of claims for patent are included in the present invention. In the following description, the same reference numerals are given to the same elements in the description of the drawings, and repeated description is not repeated.
(HMDシステム100の構成)
図1は、HMDシステム100の構成を示す図である。この図に示すように、HMDシステム100は、HMD(ヘッドマウントディスプレイ)110、HMDセンサ120、コントローラセンサ140、制御回路部200、およびコントローラ300を備えている。
(Configuration of HMD system 100)
FIG. 1 is a diagram showing a configuration of the
HMD110は、ユーザの頭部に装着される。HMD110は、非透過型の表示装置であるディスプレイ112、センサ114、および注視センサ130を備えている。HMD110は、右目用画像および左目用画像をディスプレイ112にそれぞれ表示することにより、ユーザの両目の視差に基づきユーザに立体的に視認される3次元画像を、ユーザに視認させる。これにより仮想空間をユーザに提供する。ディスプレイ112がユーザの眼前に配置されているので、ユーザは、ディスプレイ112に表示される画像を通じて仮想空間に没入できる。これにより、ユーザは仮想現実(Virtual Reality:VR)を体験することができる。仮想空間は、背景、ならびにユーザが操作可能な各種のオブジェクトおよびメニュー画像等を含み得る。
The HMD 110 is worn on the user's head. The HMD 110 includes a
ディスプレイ112は、右目用画像を表示する右目用サブディスプレイと、左目用画像を表示する左目用サブディスプレイとを含んでもよい。または、ディスプレイ112は、右目用画像および左目用画像を共通の画面に表示する1つの表示装置であってもよい。このような表示装置として、例えば、表示画像が一方の目にしか認識できないようにするシャッターを高速に切り替えることにより、右目用画像および左目用画像を独立して交互に表示する表示装置が挙げられる。
The
また、本実施形態において、HMD110には、透過型ディスプレイが適用されてもよい。つまり、HMD110は、透過型HMDであってもよい。この場合、3次元画像を透過型ディスプレイに表示することによって、後述する仮想オブジェクトを現実空間に仮想的に配置することができる。これにより、ユーザは現実空間に仮想オブジェクトが配置された複合現実(Mixes Reality:MR)を体験することができる。本実施形態において、仮想現実や複合現実といった、ユーザが仮想オブジェクトと相互作用できる体験を仮想体験と称することがある。以下では、仮想現実を提供するための方法を一例として詳説する。
In the present embodiment, a transmissive display may be applied to the
(制御回路部200のハード構成)
図2は、制御回路部200のハード構成を示す図である。制御回路部200は、HMD110に仮想空間を提供させるためのコンピュータである。図2に示すように、制御回路部200は、プロセッサ、メモリ、ストレージ、入出力インターフェース、および通信インターフェースを備えている。これらは、データ伝送路としてのバスを通じて、制御回路部200内において互いに接続されている。
(Hard structure of the control circuit unit 200)
FIG. 2 is a diagram illustrating a hardware configuration of the
プロセッサは、CPU(Central Processing Unit)、MPU(Micro-processing unit)、またはGPU(Graphics Processing Unit)等を含んで構成され、制御回路部200およびHMDシステム100全体の動作を制御する。
The processor includes a central processing unit (CPU), a micro-processing unit (MPU), a graphics processing unit (GPU), and the like, and controls operations of the
メモリは、主記憶として機能する。メモリには、プロセッサによって処理されるプログラムおよび制御用データ(演算パラメータなど)が記憶される。メモリは、ROM(Read Only Memory)またはRAM(Random Access Memory)等を含んで構成され得る。 The memory functions as main memory. The memory stores a program processed by the processor and control data (such as calculation parameters). The memory may include a ROM (Read Only Memory) or a RAM (Random Access Memory).
ストレージは、補助記憶として機能する。ストレージには、HMDシステム100全体の動作を制御するためのプログラム、各種のシミュレーションプログラム、ユーザ認証プログラム、および、仮想空間を規定するための各種のデータ(画像およびオブジェクト等)が格納されている。さらには、各種のデータを管理するためのテーブルを含むデータベースがストレージに構築されていてもよい。ストレージは、フラッシュメモリまたはHDD(Hard Disc Drive)等を含んで構成され得る。
The storage functions as auxiliary storage. The storage stores a program for controlling the operation of the
入出力インターフェースは、USB(Universal Serial Bus)端子、DVI(Digital Visual Interface)端子、HDMI(登録商標)(High-Definition Multimedia Interface)端子等の各種の有線接続端子、および、無線接続のための各種の処理回路を含んで構成されている。入出力インターフェースは、HMD110と、HMDセンサ120およびコントローラセンサ140を含む各種のセンサと、コントローラ300とを互いに接続する。
The input / output interface includes various wired connection terminals such as a USB (Universal Serial Bus) terminal, a DVI (Digital Visual Interface) terminal, an HDMI (registered trademark) (High-Definition Multimedia Interface) terminal, and various wireless connection terminals. These processing circuits are included. The input / output interface connects the
通信インターフェースは、ネットワークNWを介して外部装置と通信するための各種の有線接続端子、および、無線接続のための各種の処理回路を含んで構成される。通信インターフェースは、LAN(Local Area Network)またはインターネットを介して通信するための各種の通信規格およびプロトコルに適合するように、構成されている。 The communication interface includes various wired connection terminals for communicating with an external device via the network NW, and various processing circuits for wireless connection. The communication interface is configured to conform to various communication standards and protocols for communicating via a LAN (Local Area Network) or the Internet.
制御回路部200は、ストレージに格納された所定のアプリケーションプログラムをメモリにロードして実行することによって、ユーザに仮想空間を提供する。プログラムの実行時に、メモリおよびストレージには、仮想空間内に配置される各種のオブジェクトを操作したり、各種のメニュー画像等を表示および制御したりするための各種のプログラムが格納される。
The
制御回路部200は、HMD110に搭載されていてもよいし、されていなくてもよい。すなわち制御回路部200は、HMD110から独立した別のハードウェア(例えば、パーソナルコンピュータ、またはネットワークを通じてHMD110と通信可能なサーバ装置)であってもよい。制御回路部200は、複数のハードウェアの協働によって1または複数の機能が実装される形態の装置であってもよい。または、制御回路部200が有する全機能のうち一部の機能のみがHMD110に実装され、残りの機能が別のハードウェアに実装されていてもよい。
The
HMDシステム100を構成するHMD110等の各要素には、予め、グローバル座標系(基準座標系、xyz座標系)が設定されている。このグローバル座標系は、現実空間における、鉛直方向、鉛直方向と直交する横方向、ならびに、鉛直方向および横方向の双方と直交する前後方向にそれぞれ平行な、3つの基準方向(軸)を有する。本実施形態では、グローバル座標系は視点座標系の一種であるため、グローバル座標系における横方向、鉛直方向(上下方向)、および前後方向を、それぞれx軸、y軸、z軸とする。具体的には、グローバル座標系のx軸は現実空間の横方向に平行であり、y軸は現実空間の鉛直方向に平行であり、z軸は現実空間の前後方向に平行である。
A global coordinate system (reference coordinate system, xyz coordinate system) is set in advance for each element such as the
HMDセンサ120は、HMD110の動きを検出するためのポジション・トラッキング機能を有する。HMDセンサ120は、この機能によって、現実空間内におけるHMD110の位置および傾きを検出する。この検出を実現するために、HMD110は、図示しない複数の光源を備えている。各光源は、例えば赤外線を発するLEDである。HMDセンサ120は、例えば赤外線センサを含んで構成される。HMDセンサ120は、HMD110の光源から照射された赤外線を、赤外線センサによって検出することによって、HMD110の検出点を検出する。さらに、HMD110の検出点の検出値に基づき、ユーザの動きに応じたHMD110の現実空間内における位置および傾きを検出する。HMDセンサ120は、検出値の経時的変化に基づき、HMD110の位置および傾きの時間変化を決定することができる。
The
HMDセンサ120は、光学カメラを含んで構成されてもよい。この場合、HMDセンサ120は、光学カメラによって得られたHMD110の画像情報に基づき、HMD110の位置および傾きを検出する。
The
HMDセンサ120の代わりに、HMD110が、センサ114を用いて自身の位置および傾きを検出してもよい。この場合、センサ114は、例えば角速度センサ、地磁気センサ、加速度センサ、またはジャイロセンサであればよい。HMD110は、これらのうち少なくとも1つを用いる。センサ114が角速度センサである場合、センサ114は、HMD110の動きに応じて、HMD110の現実空間における3軸回りの角速度を経時的に検出する。HMD110は、角速度の検出値に基づき、HMD110の3軸回りの角度の時間的変化を決定し、さらに、角度の時間的変化に基づきHMD110の傾きを検出することができる。
Instead of the
HMD110がセンサ114による検出値に基づきHMD110の位置および傾きを自ら検出する場合、HMDシステム100にHMDセンサ120は不要である。逆に、HMD110から離れた位置に配置されるHMDセンサ120がHMD110の位置および傾きを検出する場合、HMD110にセンサ114は不要である。
When the
上述したように、グローバル座標系は現実空間の座標系と平行である。そのため、HMDセンサ120によって検出されたHMD110の各傾きは、グローバル座標系におけるHMD110の3軸周りの各傾きに相当する。HMDセンサ120は、グローバル座標系におけるHMDセンサ120の傾きの検出値に基づき、uvw視野座標系をHMD110に設定する。HMD110に設定されるuvw視野座標系は、HMD110を装着したユーザが物体を見る際の視点座標系に対応する。
As described above, the global coordinate system is parallel to the real space coordinate system. Therefore, each inclination of the
(uvw視野座標系)
図3は、HMD110に設定されるuvw視野座標系を例示する図である。HMDセンサ120は、HMD110の起動時に、グローバル座標系におけるHMD110の位置および傾きを検出する。そして、傾きの検出値に基づく3次元のuvw視野座標系を、HMD110に設定する。図3に示すように、HMDセンサ120は、HMD110を装着したユーザの頭部を中心(原点)とした3次元のuvw視野座標系を、HMD110に設定する。具体的には、グローバル座標系を規定する横方向、鉛直方向、および前後方向(x軸、y軸、z軸)を、グローバル座標系内においてHMD110の各軸周りの傾きだけ各軸周りにそれぞれ傾けることによって得られる新たな3つの方向を、HMD110におけるuvw視野座標系のピッチ方向(u軸)、ヨー方向(v軸)、およびロール方向(w軸)として設定する。
(Uvw visual field coordinate system)
FIG. 3 is a diagram illustrating an uvw visual field coordinate system set in the
図3に示すように、HMDセンサ120は、HMD110を装着したユーザが直立しかつ正面を視認している場合、グローバル座標系に平行なuvw視野座標系をHMD110に設定する。この場合、グローバル座標系の横方向(x軸)、鉛直方向(y軸)、および前後方向(z軸)が、そのまま、HMD110におけるuvw視野座標系のピッチ方向(u軸)、ヨー方向(v軸)、およびロール方向(w軸)に一致する。
As shown in FIG. 3, when the user wearing the
HMDセンサ120は、HMD110にuvw視野座標系を設定した後、HMD110の動きに応じて、現在設定中のuvw視野座標系におけるHMD110の傾き(傾きの変化量)を検出することができる。この場合、HMDセンサ120は、HMD110の傾きとして、現在設定中のuvw視野座標系におけるHMD110のピッチ角(θu)、ヨー角(θv)、およびロール角(θw)をそれぞれ検出する。ピッチ角(θu)は、uvw視野座標系におけるピッチ方向周りのHMD110の傾き角度である。ヨー角(θv)は、uvw視野座標系におけるヨー方向周りのHMD110の傾き角度である。ロール角(θw)は、uvw視野座標系におけるロール方向周りのHMD110の傾き角度である。
After setting the uvw visual field coordinate system in the
HMDセンサ120は、HMD110の傾きの検出値に基づき、動いた後のHMD110におけるuvw視野座標系を、新たにHMD110に設定する。HMD110と、HMD110のuvw視野座標系との関係は、HMD110の位置および傾きによらず常に一定である。HMD110の位置および傾きが変わると、それの変化に連動して、グローバル座標系におけるHMD110のuvw視野座標系の位置および傾きが同様に変化する。
Based on the detected value of the inclination of the
HMDセンサ120は、赤外線センサによって取得される赤外線の光強度および複数の検出点間の相対位置関係(検出点間の距離等)に基づき、HMD110の現実空間内における位置を、HMDセンサ120に対する相対位置として特定してもよい。また、特定した相対位置に基づき、現実空間内(グローバル座標系)におけるHMD110のuvw視野座標系の原点を決定してもよい。また、HMDセンサ120は、複数の検出点間の相対位置関係に基づきHMD110の現実空間内における傾きを検出し、さらに、その検出値に基づき現実空間内(グローバル座標系)におけるHMD110のuvw視野座標系の向きを決定してもよい。
The
(仮想空間2の概要)
図4は、ユーザに提供される仮想空間2の概要を説明する図である。この図に示すように、仮想空間2は、中心21の360°方向全体を覆う全天球状の構造を有する。図4には、仮想空間2の全体のうち上半分の天球のみを例示する。仮想空間2には、略正方形または略長方形の複数のメッシュが関連付けられている。仮想空間2における各メッシュの位置は、仮想空間2に規定される空間座標系(XYZ座標系)における座標として、予め規定されている。制御回路部200は、仮想空間2に展開可能なコンテンツ(静止画、動画等)を構成する各部分画像を、仮想空間2における対応する各メッシュに対応付けることによって、ユーザによって視認可能な仮想空間画像22が展開される仮想空間2をユーザに提供する。
(Outline of virtual space 2)
FIG. 4 is a diagram illustrating an outline of the
仮想空間2には、中心21を原点とするXYZ空間座標系が規定されている。XYZ座標系は、例えばグローバル座標系に平行である。XYZ座標系は視点座標系の一種であるため、XYZ座標系における横方向、鉛直方向(上下方向)、および前後方向を、それぞれX軸、Y軸、Z軸とする。すなわち、XYZ座標系のX軸(横方向)がグローバル座標系のx軸と平行であり、XYZ座標系のY軸(上下方向)がグローバル座標系のy軸と平行であり、XYZ座標系のZ軸(前後方向)がグローバル座標系のz軸と平行である。
The
HMD110の起動時(初期状態)において、仮想空間2の中心21に仮想カメラ1が配置されている。仮想カメラ1は、現実空間内におけるHMD110の動きに連動して、仮想空間2内において同様に動く。これにより、現実空間内におけるHMD110の位置および向きの変化が、仮想空間2内において同様に再現される。
When the
仮想カメラ1には、HMD110と同様にuvw視野座標系が規定される。仮想空間2内における仮想カメラ1のuvw視野座標系は、現実空間(グローバル座標系)内におけるHMD110のuvw視野座標系に変動するように規定されている。したがって、HMD110の傾きが変化すると、それに連動して仮想カメラ1の傾きも変化する。仮想カメラ1は、HMD110を装着したユーザの現実空間における移動に連動して、仮想空間2において移動することもできる。
As with the
仮想空間2における仮想カメラ1の位置および傾きに応じて、仮想空間2における仮想カメラ1の向きが決まる。これにより、仮想空間2に展開される仮想空間画像22をユーザが視認する際の基準となる視線(基準視線5)が決まる。制御回路部200は、基準視線5に基づき、仮想空間2における視界領域23を決定する。視界領域23は、仮想空間2のうち、HMD110を装着したユーザの視界に対応する領域である。
The orientation of the
図5は、視界領域23の断面を示す図である。図5の(a)に、仮想空間2において視界領域23をX方向から見たYZ断面を示す。図5の(b)に、仮想空間2において視界領域23をY方向から見たXZ断面を示す。視界領域23は、基準視線5と仮想空間2のYZ断面とによって定義される範囲である第1領域24(図5の(a)参照)と、基準視線5と仮想空間2のXZ断面とによって定義される範囲である第2領域25(図5の(b)参照)とを有する。制御回路部200は、仮想空間2における基準視線5を中心として極角αを含む範囲を、第1領域24として設定する。また、仮想空間2における基準視線5を中心とした方位角βを含む範囲を、第2領域25として設定する。
FIG. 5 is a view showing a cross section of the
HMDシステム100は、仮想空間画像22のうち視界領域23に重畳する部分である視界画像26をHMD110のディスプレイ112に表示させることによって、ユーザに仮想空間2を提供する。ユーザがHMD110を動かせば、それに連動して仮想カメラ1も動き、その結果、仮想空間2における視界領域23の位置が変化する。これによりディスプレイ112に表示される視界画像26が、仮想空間画像22のうち、仮想空間2においてユーザが向いた箇所(=視界領域23)に重畳する画像に更新される。したがってユーザは、仮想空間2における所望の箇所を視認することができる。
The
ユーザは、HMD110を装着している間、現実世界を目にすることなく、仮想空間2に展開される仮想空間画像22のみを視認する。そのためHMDシステム100は、仮想空間2への高い没入感をユーザに与えることができる。
While wearing the
制御回路部200は、HMD110を装着したユーザの現実空間における移動に連動して、仮想カメラ1を仮想空間2内において移動させてもよい。この場合、制御回路部200は、仮想カメラ1の仮想空間2内における位置および向きに基づき、仮想空間2のうちHMD110のディスプレイ112に投影されることによってユーザが視認する視界領域23を特定する。
The
仮想カメラ1は、右眼用画像を提供する右眼用仮想カメラと、左眼用画像を提供する左眼用仮想カメラとを含むことが好ましい。さらに、2つの仮想カメラには、ユーザが3次元の仮想空間2を認識できるように適切な視差が設定されていることが好ましい。本実施形態では、このような2つの仮想カメラのロール方向が合成されることによって生成されるロール方向(w)がHMD110のロール方向(w)に適合されるような仮想カメラ1のみを、代表して図示および説明するものとする。
The
(視線方向の検出)
注視センサ130は、ユーザの右目および左目の視線が向けられる方向(視線方向)を検出するアイトラッキング機能を有する。注視センサ130として、アイトラッキング機能を有する公知のセンサを採用することができる。注視センサ130は、右目用センサおよび左目用センサを備えていることが好ましい。注視センサ130は、例えば、ユーザの右目および左目に赤外光を照射すると共に、照射光に対する角膜および虹彩からの反射光を受光することによって、各眼球の回転角を検出するセンサでもよい。注視センサ130は、検出した各回転角に基づき、ユーザの視線方向を検知することができる。
(Gaze direction detection)
The
注視センサ130によって検出されるユーザの視線方向は、ユーザが物体を視認する際の視点座標系における方向である。上述したように、HMD110のuvw視野座標系は、ユーザがディスプレイ112を視認する際の視点座標系に等しい。また、仮想カメラ1のuvw視野座標系は、HMD110のuvw視野座標系に連動している。したがってHMDシステム100では、注視センサ130によって検出されたユーザの視線方向を、仮想カメラ1のuvw視野座標系におけるユーザの視線方向と見なすことができる。
The user's gaze direction detected by the
図6は、ユーザの視線方向を決定する方法を例示する図である。この図に示すように、注視センサ130は、ユーザUの右目および左目の視線を検出する。ユーザUが近くを見ている場合、注視センサ130は、ユーザUの視線R1およびL1を検出する。ユーザが遠くを見ている場合、注視センサ130は、ユーザの視線R1およびL1よりも、HMD110のロール方向(w)とのなす角が小さい視線R2およびL2を特定する。注視センサ130は、検出値を制御回路部200に送信する。
FIG. 6 is a diagram illustrating a method of determining the user's line-of-sight direction. As shown in this figure, the
制御回路部200は、視線の検出値として視線R1およびL1を受信した場合、両者の交点である注視点N1を特定する。一方、視線R2およびL2を受信した場合も、両者の交点である注視点N1(不図示)を特定する。制御回路部200は、特定した注視点N1に基づき、ユーザUの視線方向N0を検出する。制御回路部200は、例えば、ユーザUの右目Rと左目Lとを結ぶ直線の中点と、注視点N1とを通る直線の伸びる方向を、視線方向N0として検出する。視線方向N0は、ユーザUが両目により実際に視線を向けている方向である。視線方向N0はまた、視界領域23に対してユーザUが実際に視線を向けている方向でもある。
When receiving the line of sight R1 and L1 as the line-of-sight detection value, the
HMDシステム100は、HMDシステム100を構成するいずれかの要素に、マイクおよびスピーカを備えていてもよい。これにより、ユーザは仮想空間2内に対して、音声による指示を与えることができる。また、仮想空間内の仮想テレビにテレビ番組の放送を受信するために、HMDシステム100はいずれかの要素にテレビジョン受像機を含んでいてもよい。また、ユーザが取得した電子メール等を表示させるための、通信機能等を含んでいてもよい。
The
(コントローラ300)
図7は、コントローラ300の構成を表す図である。コントローラ300は、ユーザの身体の一部の動きを検知することにより、仮想オブジェクトの動きを制御するために用いる装置の一例である。図1に示すように、コントローラ300は、ユーザが右手に持って使用する右コントローラ320と、ユーザが左手に持って使用する左コントローラ330とからなる。右コントローラ320および左コントローラ330は、それぞれ別体の装置として構成される。ユーザは、右コントローラ320を持った右手と、左コントローラ330を持った左手とを、動かすことにより、ユーザの手の動きに連動する仮想オブジェクト(以下、状況に応じて仮想手、仮想右手、仮想左手、などと称することがある。)を自由に動かすことができる。なお、ユーザの頭部以外である身体の一部の動きを検知するための方法は、当該身体の一部に装着されるセンサを含むコントローラを用いる例に限られず、画像認識、その他任意の物理的、光学的な手法等を適用できる。例えば、外部カメラを用いてユーザの身体の一部の初期位置を特定し、継続的にユーザの身体の一部の位置を特定することにより、ユーザの頭部以外である身体の一部の動きを検知できる。以下の説明においては、コントローラ300を用いたユーザの頭部以外である身体の一部の動きの検知について詳述する。
(Controller 300)
FIG. 7 is a diagram illustrating the configuration of the
図1に示すように、右コントローラ320および左コントローラ330は、それぞれ、操作ボタン302、赤外線LED(Light Emitting Diode)304、センサ306、およびトランシーバ308を備えている。右コントローラ320および左コントローラ330は、赤外線LED304およびセンサ306のうちいずれか一方のみを備えていてもよい。以下の説明において、右コントローラ320および左コントローラ330は共通の構成を有するため、右コントローラ320の構成のみを説明する。
As shown in FIG. 1, the
コントローラセンサ140は、右コントローラ320の動きを検出するためのポジション・トラッキング機能を有する。コントローラセンサ140は、現実空間内における右コントローラ320の位置および傾きを検出する。コントローラセンサ140は、右コントローラ320の赤外線LED304から発せられた赤外光を、それぞれ検出する。コントローラセンサ140は、赤外波長領域において画像を撮像する赤外カメラを備えており、この赤外カメラによって撮像した画像のデータに基づき、右コントローラ320の位置および傾きを検出する。
The
コントローラセンサ140の代わりに、右コントローラ320が、センサ306を用いて自身の位置および傾きを検出してもよい。この場合、右コントローラ320の三軸角速度センサ(センサ306)が、右コントローラ320の3つの直交する各軸回りの回転を検出する。右コントローラ320は、各検出値に基づき、右コントローラ320がどちらの方向にどれだけ回転したかを検出し、逐次検出した回転方向と回転量とを累積することによって、右コントローラ320の傾きを算出する。右コントローラ320は、三軸角速度センサの検出値に加えて、三軸磁気センサおよび/または三軸加速度センサからの検出値を併用してもよい。
Instead of the
操作ボタン302は、コントローラ300に対するユーザからの操作入力を受け取るように構成された複数のボタン群である。本実施形態では、操作ボタン302は、プッシュ式ボタン、トリガー式ボタン、およびアナログスティックを含む。
The
プッシュ式ボタンは、親指で下向きに押下する動作によって操作するように構成されたボタンである。右コントローラ320は、プッシュ式ボタンとして、天面322上に親指ボタン302aおよび302bを備えている。親指ボタン302aおよび302bは、いずれも右手の親指によって操作(押下)される。右手の親指によって親指ボタン302aおよび302bが押下され、または、天面322上に親指が配置されることにより、仮想右手の親指が伸ばした状態から曲げられた状態に変化される。
The push-type button is a button configured to be operated by an operation of pressing downward with a thumb. The
トリガー式ボタンは、人差し指または中指で引き金を引くような動作によって操作するように構成されたボタンである。右コントローラ320は、トリガー式ボタンとして、グリップ324の前面部分に人差し指ボタン302eを備えている。人差し指ボタン302eをおり、右手の人差し指によって操作することにより、仮想右手の人差し指が伸ばした状態から曲げられた状態に変化される。また、グリップ324の側面部分に中指ボタン302fを備えている。中指ボタン302fを右手の中指によって操作することにより、仮想右手の中指、薬指、小指が伸ばした状態から曲げられた状態に変化される。
The trigger type button is a button configured to be operated by an operation of pulling a trigger with an index finger or a middle finger. The
右コントローラ320は、親指ボタン302aおよび302b、人差し指ボタン302e、ならびに中指ボタン302fの押下状態をそれぞれ検出し、これらの検出値を制御回路部200に出力する。
The
本実施形態では、右コントローラ320の各ボタンの押下状態の検出値は、0から1のいずれかの値を取り得る。例えば、ユーザが親指ボタン302aをまったく押下していない場合、親指ボタン302aの押下状態として「0」が検出される。一方、ユーザが親指ボタン302aを完全に(最も深く)押下している場合、親指ボタン302aの押下状態として「1」が検出される。これにより、仮想手における各指の曲がり具合を調整してもよい。例えば、「0」の状態を指が伸びている状態として定義し、「1」の状態を指が曲げられている状態として定義することにより、ユーザは直感的な動作によって仮想手の指を制御することができる。
In the present embodiment, the detection value of the pressed state of each button of the
アナログスティックは、所定のニュートラル位置から360°任意の方向へ傾けて操作することが可能なスティック型のボタンである。右コントローラ320の天面322上にアナログスティック302iが設けられる。アナログスティック302iは、右手の親指によって操作される。
The analog stick is a stick-type button that can be operated by being tilted 360 degrees from a predetermined neutral position. An analog stick 302 i is provided on the
右コントローラ320は、グリップ324の両側面から天面322とは反対側の方向へ延びて半円状のリングを形成するフレーム326を備えている。フレーム326の外表面には、複数の赤外線LED304が埋め込まれている。
The
赤外線LED304は、プレイ中に赤外線を発光する。赤外線LED304から発せられた赤外光は、右コントローラ320の位置および傾きを検出するために利用される。
The
右コントローラ320は、赤外線LED304の代わりに、または赤外線LED304に加えて、さらにセンサ306を内蔵する。センサ306は、例えば磁気センサ、角速度センサ、若しくは加速度センサのいずれか、またはこれらの組み合わせであってよい。センサ306によって、右コントローラ320の位置および傾きを検出することができる。
The
トランシーバ308は、右コントローラ320と、制御回路部200との間でデータを送受信するように構成される。トランシーバ308は、ユーザが操作ボタン302を介して右コントローラ320に与えた操作入力に基づくデータを、制御回路部200へ送信する。また、トランシーバ308は、赤外線LED304の発光を右コントローラ320に指示する命令を、制御回路部200から受信する。さらに、トランシーバ308は、センサ306によって検出した各種の値に対応するデータを、制御回路部200へ送信する。
The
右コントローラ320は、ユーザの手に振動による触覚フィードバックを伝えるためのバイブレータを備えていてもよい。この構成では、トランシーバ308は、上述した各データの送受信に加えて、バイブレータに触覚フィードバックを行わせるための命令を制御回路部200から受信することができる。
The
(制御回路部200の機能的構成)
図8は、制御回路部200の機能的構成を示すブロック図である。制御回路部200は、HMDセンサ120、コントローラセンサ140、注視センサ130、およびコントローラ300から受信した各種のデータを用いることによって、ユーザに提供される仮想空間2を制御する。また、制御回路部200は、HMD110のディスプレイ112への画像表示を制御する。図8に示すように、制御回路部200は、検出部210、表示制御部220、仮想空間制御部230、記憶部240、および通信部250を備えている。制御回路部200は、図2に示す各ハードウェアの協働によって、検出部210、表示制御部220、仮想空間制御部230、記憶部240、および通信部250として機能する。検出部210、表示制御部220、および仮想空間制御部230は、主としてプロセッサおよびメモリの協働によってその機能が実現され得る。記憶部240は、主としてメモリおよびストレージの協働によってその機能が実現され得る。通信部250は、主としてプロセッサおよび通信インターフェースの協働によってその機能が実現され得る。
(Functional configuration of control circuit unit 200)
FIG. 8 is a block diagram showing a functional configuration of the
検出部210は、制御回路部200に接続される各種のセンサ(HMDセンサ120等)から検出値を受信する。また、検出部210は、必要に応じて、受信した検出値を用いた所定の処理を実行する。検出部210は、HMD検出部211、視線検出部212、およびコントローラ検出部213を備えている。HMD検出部211は、HMD110およびHMDセンサ120から検出値をそれぞれ受信する。視線検出部212は、注視センサ130から検出値を受信する。コントローラ検出部213は、コントローラセンサ140、右コントローラ320、および左コントローラ330から、それぞれの検出値を受信する。
The
表示制御部220は、HMD110のディスプレイ112への画像表示を制御する。表示制御部220は、仮想カメラ制御部221、視界領域決定部222、および視界画像生成部223を備えている。仮想カメラ制御部221は、仮想空間2内に仮想カメラ1を配置する。そして、仮想カメラ制御部221は、仮想空間2内における仮想カメラ1の挙動を制御する。視界領域決定部222は、視界領域23を決定する。視界画像生成部223は、決定された視界領域23に基づき、ディスプレイ112に表示される視界画像26を生成する。
The
仮想空間制御部230は、ユーザに提供される仮想空間2を制御する。仮想空間制御部230は、仮想空間規定部231、仮想手制御部232、選択肢制御部233、および設定部234を備えている。
The virtual
仮想空間規定部231は、ユーザに提供される仮想空間2を表す仮想空間データを生成することによって、HMDシステム100における仮想空間2を規定する。仮想手制御部232は、ユーザによる右コントローラ320および左コントローラ330の操作に応じたユーザの各仮想手(仮想右手および仮想左手)を仮想空間2内に配置する。仮想手制御部232は、仮想空間2内における各仮想手の挙動を制御する。
The virtual space defining unit 231 defines the
選択肢制御部233は、選択肢の選択を受け付けるための仮想オブジェクトであるユーザインタフェース(UI)オブジェクトを仮想空間2内に配置する。そして、選択肢制御部233は、UIオブジェクトに対する仮想身体の挙動に基づいて選択肢の選択を受け付ける。なお、仮想身体とは、ユーザの頭部以外の身体の一部の動きに連動する仮想オブジェクトである。本実施形態では、仮想身体が仮想手である例を説明する。
The
選択肢制御部233は、表示領域を含むUIオブジェクトを生成する。選択肢制御部233は、この表示領域に、ユーザが選択可能な選択肢を表示する。また、選択肢制御部233が生成するUIオブジェクトは、操作部分を含む。選択肢制御部233は、操作部分に対する、仮想身体を介したユーザ操作に応じて、表示領域に表示する選択肢を切り替える。
The
設定部234は、HMDシステム100の動作モードを設定する。
The
記憶部240は、制御回路部200が仮想空間2をユーザに提供するために用いる各種のデータを格納している。記憶部240は、雛形格納部241、コンテンツ格納部242、および選択肢格納部243を備えている。雛形格納部241は、仮想空間2の雛形を表す各種の雛形データを格納している。コンテンツ格納部242は、仮想空間2において再生可能な各種のコンテンツを格納している。選択肢格納部243は、仮想空間2に配置される選択肢を格納している。
The
雛形データは、仮想空間2の空間構造を規定する空間構造データを有する。空間構造データは、例えば、中心21を中心とする360°の全天球の空間構造を規定するデータである。雛形データは、仮想空間2のXYZ座標系を規定するデータをさらに有する。雛形データは、天球を構成する各メッシュのXYZ座標系における位置を特定する座標データをさらに有する。また、雛形データは、仮想空間2内に仮想オブジェクトを配置可能であるか否かを示すフラグをさらに有する。
The template data has spatial structure data that defines the spatial structure of the
コンテンツは、仮想空間2において再生可能なコンテンツである。例えば、コンテンツがゲームコンテンツの場合、コンテンツは、ゲームの背景画像、および、ゲームに登場する仮想オブジェクト(キャラクタ、アイテム等)を規定するデータを少なくとも有する。各コンテンツには、HMD110の初期状態(起動時)にユーザに見せる画像を向いた初期方向が、予め規定されている。
The content is content that can be reproduced in the
通信部250は、ネットワークNWを介して外部機器400(例えばゲームサーバ)との間でデータを送受信する。
The
(仮想空間2の提供処理)
図9は、HMDシステム100が仮想空間2をユーザに提供する処理の流れを示すシーケンス図である。仮想空間2は、基本的に、HMD110および制御回路部200の協働によってユーザに提供される。図8に示す処理が開始されると、まず、ステップS1において、仮想空間規定部231が、ユーザに提供される仮想空間2を表す仮想空間データを生成することによって、仮想空間2を規定する。生成の手順は次の通りである。まず仮想空間規定部231は、仮想空間2の雛形データを雛形格納部241から取得することによって、仮想空間2の原型を定義する。仮想空間規定部231は、さらに、仮想空間2において再生されるコンテンツを、コンテンツ格納部242から取得する。本実施形態では、このコンテンツはゲームコンテンツである。
(Process of providing virtual space 2)
FIG. 9 is a sequence diagram showing a flow of processing in which the
仮想空間規定部231は、取得した雛形データに、取得したコンテンツを適合することによって、仮想空間2を規定する仮想空間データを生成する。仮想空間規定部231は、仮想空間データにおいて、仮想空間2の天球を構成する各メッシュの管理データに、コンテンツに含まれる背景画像を構成する各部分画像を適宜関連付ける。仮想空間規定部231は、コンテンツに規定される初期方向を仮想空間2のXYZ座標系におけるZ方向に合致させるように、各部分画像と各メッシュとを関連付けることが好ましい。
The virtual space defining unit 231 generates virtual space data defining the
仮想空間規定部231は、さらに、必要に応じて、コンテンツに含まれる各仮想オブジェクトの管理データを、仮想空間データに追加する。その際、各管理データに、対応する仮想オブジェクトが仮想空間2において配置される位置を表す座標を、設定する。これにより各仮想オブジェクトが、仮想空間2における当該座標の位置にそれぞれ配置される。
The virtual space defining unit 231 further adds management data of each virtual object included in the content to the virtual space data as necessary. At that time, coordinates representing the position where the corresponding virtual object is arranged in the
その後、ユーザによってHMD110が起動されると、ステップS2において、HMDセンサ120が、HMD110の初期状態における位置および傾きを検出して、ステップS3において、検出値を制御回路部200に出力する。HMD検出部211は、この検出値を受信する。この後、ステップS4において、仮想カメラ制御部221は、仮想空間2において仮想カメラ1を初期化する。
After that, when the
初期化の手順は次の通りである。まず仮想カメラ制御部221は、仮想空間2内における初期位置(図4における中心21等)に、仮想カメラ1を配置する。次に、仮想空間2における仮想カメラ1の向きを設定する。その際、仮想カメラ制御部221は、HMDセンサ120からの検出値に基づき初期状態のHMD110のuvw視野座標系を特定すると共に、HMD110のuvw視野座標系に一致するuvw視野座標系を仮想カメラ1に設定することによって、仮想カメラ1の向きを設定すればよい。仮想カメラ制御部221は、仮想カメラ1にuvw視野座標系を設定する際、仮想カメラ1のロール方向(w軸)をXYZ座標系のZ方向(Z軸)に適合させる。具体的には、仮想カメラ制御部221は、仮想カメラ1のロール方向をXZ平面に投影して得られる方向を、XYZ座標系のZ方向に一致させると共に、XZ平面に対する仮想カメラ1のロール方向の傾きを、水平面に対するHMD110のロール方向の傾きに一致させる。このような適合処理によって、初期状態の仮想カメラ1のロール方向がコンテンツの初期方向に適合されるので、コンテンツの再生開始後におけるユーザが最初に向く水平方向の向きを、コンテンツの初期方向に一致させることができる。
The initialization procedure is as follows. First, the virtual
仮想カメラ1の初期化処理が終わると、視界領域決定部222は、仮想カメラ1のuvw視野座標系に基づき、仮想空間2における視界領域23を決定する。具体的には、仮想カメラ1のuvw視野座標系のロール方向(w軸)をユーザの基準視線5として特定し、この基準視線5に基づき視界領域23を決定する。ステップS5において、視界画像生成部223は、仮想空間データを処理することによって、仮想空間2に展開される仮想空間画像22の全体のうち、仮想空間2における視界領域23に投影される部分に相当する視界画像26を生成(レンダリング)する。ステップS6において、視界画像生成部223は、生成した視界画像26を初期視界画像としてHMD110に出力する。ステップS7において、HMD110は、受信した初期視界画像をディスプレイ112に表示する。これによりユーザは初期視界画像を視認する。
When the initialization process of the
その後、ステップS8において、HMDセンサ120が、HMD110の現在の位置および傾きを検出して、ステップS9において、これらの検出値を制御回路部200に出力する。HMD検出部211は、各検出値を受信する。仮想カメラ制御部221は、HMD110の位置および傾きの検出値に基づき、HMD110における現在のuvw視野座標系を特定する。さらに、ステップS10において、仮想カメラ制御部221は、XYZ座標系におけるuvw視野座標系のロール方向(w軸)を、HMD110の視界方向として特定する。
Thereafter, in step S8, the
本実施形態では、ステップS11において、仮想カメラ制御部221が、特定したHMD110の視界方向を、仮想空間2におけるユーザの基準視線5として特定する。ステップS12において、仮想カメラ制御部221は、特定した基準視線5に基づき、仮想カメラ1を制御する。仮想カメラ制御部221は、基準視線5の位置(起点)および方向が仮想カメラ1の初期状態と同一であれば、仮想カメラ1の位置および方向をそのまま維持する。一方、基準視線5の位置(起点)および/または方向が、仮想カメラ1の初期状態から変化していれば、仮想空間2内における仮想カメラ1の位置および/または傾きを、変化後の基準視線5に応じた位置および/または傾きに変更する。また、制御後の仮想カメラ1に対してuvw視野座標系を再設定する。
In the present embodiment, in step S <b> 11, the virtual
ステップS13において、視界領域決定部222は、特定した基準視線5に基づき、仮想空間2における視界領域23を決定する。その後、ステップS14において、視界画像生成部223は、仮想空間データを処理することによって、仮想空間2に展開される仮想空間画像22の全体のうち、仮想空間2における視界領域23に投影(重畳)される部分である視界画像26を生成(レンダリング)する。ステップS15において、視界画像生成部223は、生成した視界画像26を更新用の視界画像としてHMD110に出力する。ステップS16において、HMD110は、受信した視界画像26をディスプレイ112に表示することによって、視界画像26を更新する。これにより、ユーザがHMD110を動かせば、それに連動して視界画像26が更新される。
In step S <b> 13, the visual field
(ユーザに選択肢を選択させる処理および表示例)
前述のように、選択肢制御部233は、UIオブジェクトを生成する。そして、ユーザは、このUIオブジェクトを操作することにより、複数の選択肢の中から所望の選択肢を選択することができる。より詳細には、ユーザは、選択肢を選択する際、まずUIオブジェクトの操作部分を仮想身体によって選択する。そして、ユーザは、操作部分を仮想身体によって選択した状態のまま、仮想身体を移動させることにより、UIオブジェクトにおける操作部分の位置を移動させる。これらの操作により、ユーザは、複数の選択肢を切り替えることができる。このように、UIオブジェクトを用いた選択肢の選択においては、ユーザが仮想身体により操作部分を選択して移動させる操作を行うことにより選択肢が切り替わる。このため、HMDシステム100によれば、ユーザに対し、操作を確実に行ったということを認識させることができ、ユーザの仮想体験をさらに改善することができる。
(Processing and display example for allowing the user to select an option)
As described above, the
以下、HMDシステム100がユーザに選択肢を選択させる処理と、該処理によってディスプレイ112に表示される視界画像26の例を図10および図11に基づいて説明する。なお、以下では、UIオブジェクトが、操作部分として操作レバーSLを含むUIオブジェクトOBであり、操作部分を選択する仮想身体が、仮想手である例を説明する。また、仮想身体によって操作部分を選択するためのユーザ操作が、仮想手を操作レバーSLと接するかまたは操作レバーSLに近接する位置に移動させ、かつ該位置において当該仮想手に握る動作を行わせる操作であるとする。つまり、選択肢制御部233は、操作レバーSLが仮想手によって握られた場合に、操作レバーSLが仮想手によって選択されたと検出する。また、UIオブジェクトOBを介してユーザが選択可能な選択肢が、HMDシステム100の動作モードの1つである「Single Mode」、および他の1つである「Multi Mode」を含む例を説明する。選択肢「Multi Mode」の選択が確定した場合には、設定部234はHMDシステム100を「Multi Mode」で動作させる。一方、選択肢「Single Mode」の選択が確定した場合には、設定部234はHMDシステム100を「Single Mode」で動作させる。
Hereinafter, an example of the process in which the
図10は、HMDシステム100が仮想空間2において、UIオブジェクトによりユーザに選択肢を選択させる処理の流れを示すシーケンス図である。また、図11は、図10の処理によってディスプレイ112に表示される視界画像26の一例を示す図である。ユーザによる一連の操作によって、ディスプレイ112に表示される視界画像26は、視界画像26aから視界画像26eまで順次切り替わる。
FIG. 10 is a sequence diagram illustrating a flow of processing in which the
ステップS21において、選択肢制御部233はUIオブジェクトOBを生成する。UIオブジェクトOBは、図11に示すように、操作レバーSLと表示領域DEを含む。選択肢制御部233は、操作レバーSLを仮想手で選択した状態で、該仮想手を方向DRに移動させるユーザ操作を検出した場合に、操作レバーSLを方向DRに沿って移動させる。視界画像26aに示すように、初期状態のUIオブジェクトOBにおいては、操作レバーSLが初期位置である位置X1(第1位置)に表示されている。また、表示領域DEには初期画像として、ユーザに選択操作を促す文字列である「Please Select」(第1情報)が表示されている。
In step S21, the
ステップS22において、視界画像生成部223はUIオブジェクトOBを含む視界画像をHMD110に出力する。ステップS23において、HMD110は、受信した視界画像をディスプレイ112に表示することによって、視界画像を更新する。
In step S <b> 22, the view
ステップS24において、コントローラセンサ140は、右コントローラ320の位置および傾き、ならびに、左コントローラ330の位置および傾きをそれぞれ検出する。ステップS25において、コントローラセンサ140は、各検出値を制御回路部200に送信する。コントローラ検出部213は、これらの検出値を受信する。ステップS26において、コントローラ300が、各ボタンの押下状態を検出する。ステップS27において、右コントローラ320および左コントローラ330は、各検出値を制御回路部200に送信する。コントローラ検出部213は、これらの検出値を受信する。ステップS28において、仮想手制御部232が、コントローラ検出部213が受信した各検出値を用いて、ユーザの仮想右手HRおよび仮想左手HLを、仮想空間2に生成する。仮想手制御部232は、右コントローラ320の位置および傾きの検出値、ならびに右コントローラ320の各ボタンの押下状態の検出値を用いて、ユーザの仮想右手HRを規定する。同様に、仮想手制御部232は、左コントローラ330の各検出値に基づき、仮想空間2における仮想左手HLの位置、傾き、および各指の状態を規定する。ステップS29において、仮想手制御部232は仮想右手HRおよび仮想左手HLを含む視界画像をHMD110に出力する。ステップS30において、HMD110は、受信した視界画像をディスプレイ112に表示することによって、視界画像を更新する。これにより、例えば図11の視界画像26aがディスプレイ112に表示される。
In step S24, the
ステップS31において、選択肢制御部233は、操作レバーSLが仮想手に握られたことを検出する。例えば、選択肢制御部233は、仮想右手HRが、仮想手制御部232によって操作レバーSLと接するかまたは操作レバーSLに近接する位置に移動され、かつ該位置において当該仮想右手HRによって握る動作が行われた場合に、操作レバーSLが仮想右手HRに握られたと検出してもよい。なお、仮想右手HRに握る動作を行わせるためのユーザ操作は、例えば右コントローラ320の各ボタンを押下する操作である。
In step S31, the
視界画像26bは、仮想右手HRが、初期位置である位置X1にある操作レバーSLを握っている状態、すなわち、ユーザが仮想右手HRにより操作レバーSLを選択した状態を示している。
The
ステップS32において、選択肢制御部233は、操作レバーSLを握った状態で仮想手が移動したことを検出する。すなわち、選択肢制御部233は、操作レバーSLが仮想手により選択されたまま、該仮想手により何れかの方向に移動させられたことを検出する。例えば、選択肢制御部233は、各コントローラの位置および傾きの検出値に基づいて、仮想手が操作レバーSLを握った状態であること、および仮想手が方向DRに移動したことを検出する。
In step S32, the
ステップS33において、選択肢制御部233は、予め設定された複数の選択肢のうち、仮想手の移動先となった位置に対応する所定の選択肢を仮選択状態とする。なお、仮選択状態とは、複数の選択肢の1つを選択しているが、その選択を確定していない状態である。選択肢制御部233は、後述のステップS37の処理により、仮選択状態の選択肢の選択を確定する。つまり、選択肢制御部233は、仮想手の移動先となった位置に対応する選択肢を選択可能にする。選択肢制御部233は、仮選択状態とした選択肢に関連する情報(第2情報)を表示領域DEに表示してもよい。これにより、仮選択状態となっている選択肢をユーザに明確に認識させることができる。
In step S33, the
ステップS34において、視界画像生成部223はUIオブジェクトOBを含む視界画像をHMD110に出力する。ステップS35において、HMD110は、受信した視界画像をディスプレイ112に表示することによって、視界画像を更新する。更新後の視界画像は、例えば、視界画像26cのような画像であってもよい。本例では、仮想手制御部232は、操作レバーSLを握った状態の仮想右手HRを、方向DRに移動させている。そして、選択肢制御部233は、操作レバーSLを、初期位置である位置X1から、位置X2(第2位置)まで移動させる。また、選択肢制御部233は、仮選択状態となっている選択肢を示す「Multi Mode」との文字列を表示領域DEに表示させる。本例では、ユーザは、操作レバーSLを現実空間において握り、そして引っ張るような感覚で選択肢「Multi Mode」を仮選択状態とすることができる。
In step S <b> 34, the view
なお、選択肢「Multi Mode」を仮選択状態とするための位置X2には、マージンを設けてもよい。例えば、操作レバーSLが位置X2を含む所定の距離範囲L1(第1距離範囲)にあるときには、選択肢「Multi Mode」を仮選択状態としてもよい。また、選択肢制御部233は、選択肢を仮選択状態とするときに、制御回路部200を介してコントローラ300を振動させることにより、ユーザの身体の一部にコントローラ300を介して振動を与えるステップをさらに実行してもよい。これにより、選択肢が仮選択状態となったことをユーザに確実に認識させることができる。
It should be noted that a margin may be provided at the position X2 for making the option “Multi Mode” temporarily set. For example, when the operation lever SL is in a predetermined distance range L1 (first distance range) including the position X2, the option “Multi Mode” may be temporarily set. In addition, the
ステップS36において、選択肢制御部233は、仮想手が操作レバーSLを離したか否かを判定する。選択肢制御部233は、仮想手が操作レバーSLを離したか否かを、制御回路部200がコントローラ300から受信する各検出値に基づいて判定可能である。選択肢制御部233は、仮想手が操作レバーSLを離していないと判定した場合(ステップS36でNO)、ステップS32の処理に戻り、操作レバーSLを握った状態で仮想手が移動したことを検出する。そしてステップS33において、選択肢制御部233は、仮選択状態とする選択肢を、仮想手の移動先となった位置に対応する選択肢に切り替える。この後、ステップS34の処理により制御回路部200が視界画像をHMD110に送信し、ステップS35の処理によりHMD110が視界画像を更新する。
In step S36, the
更新後の視界画像は、例えば、視界画像26dのような画像であってもよい。本例では、仮想手制御部232は、操作レバーSLを握った状態の仮想右手HRを、方向DRにさらに移動させている。そして、選択肢制御部233は、操作レバーSLを、位置X2から位置X3(第3位置)まで移動させている。また、選択肢制御部233は、操作レバーSLが位置X3に位置しているとき、仮選択状態となっている選択肢を示す「Single Mode」との文字列を表示領域DEに表示させている。つまり、視界画像26cでは仮選択状態となっている選択肢が「Multi Mode」であったが、視界画像26dでは仮選択状態となっている選択肢が「Single Mode」に切り替わっている。
The updated view image may be an image such as the
なお、選択肢「Single Mode」を仮選択状態とするための位置X3にも、マージンを設けてもよい。例えば、操作レバーSLが位置X3を含む所定の距離範囲L2(第2距離範囲)にあるときには、選択肢「Single Mode」を仮選択状態としてもよい。また、選択肢制御部233は、仮選択状態である選択肢を切り替える際に、制御回路部200を介してコントローラ300を振動させることにより、ユーザに対し振動を与えるステップをさらに実行してもよい。これにより、仮選択状態である選択肢が切り替わったことをユーザに確実に認識させることができる。
A margin may also be provided at the position X3 for temporarily setting the option “Single Mode”. For example, when the operation lever SL is in a predetermined distance range L2 (second distance range) including the position X3, the option “Single Mode” may be temporarily selected. The
ステップS36において、選択肢制御部233は、仮想手が操作レバーSLを離したと判定した場合(ステップS36でYES)、選択肢制御部233は、選択肢の仮選択状態を維持する。つまり、選択肢制御部233は、仮想手が操作レバーSLを離した後は、仮選択状態の選択肢を切り替えない。そして、選択肢制御部233は、仮選択状態としていた選択肢の選択を確定する(ステップS37)。例えば、選択肢制御部233が選択肢「Multi Mode」の選択を確定した場合には、設定部234がHMDシステム100を「Multi Mode」で動作させる。一方、選択肢制御部233が選択肢「Single Mode」の選択を確定した場合には、設定部234がHMDシステム100を「Single Mode」で動作させる。
In step S36, when the
また、選択肢制御部233は、仮想手が操作レバーSLを離したと判定した場合、操作レバーSLを初期位置に戻す。よって、操作レバーSLが初期位置に戻った場合には、選択肢制御部233は、仮想手が操作レバーSLを離したときに仮選択状態としていた選択肢が選択可能な状態を維持する。この場合に、選択肢制御部233は、当該選択肢の選択を確定させる。視界画像生成部223は、操作レバーSLが初期位置に戻ったUIオブジェクトOBの視界画像をHMD110に送信し、HMD110は視界画像を更新する。
In addition, when the
更新後の視界画像は、例えば、視界画像26eのような画像であってもよい。本例では、仮想手制御部232は、指が伸びた状態の仮想右手HRを表示させている。選択肢制御部233は、操作レバーSLを初期位置に表示させている。また、選択肢制御部233は、確定された選択肢を示す「Single Mode」との文字列を表示領域DEに表示させている。つまり、本例は、選択肢「Single Mode」が仮選択状態である視界画像26dの状態において、仮想手が操作レバーSLを離した場合に表示される視界画像の例を示している。なお、選択肢「Multi Mode」が仮選択状態である視界画像26cの状態において、仮想手が操作レバーSLを離した場合には、選択肢制御部233は、確定された選択肢を示す「Multi Mode」との文字列を表示領域DEに表示させる。
The updated view image may be an image such as the
なお、仮想オブジェクトとの接触による操作をMR等に適用することによって仮想体験を提供する場合には、操作対象オブジェクトに換えてユーザの実際の頭部以外の身体の一部を物理的・光学的手法等によって検知し、当該身体の一部と仮想オブジェクトの位置関係に基づいて、当該身体の一部と仮想オブジェクトとの接触を判定してもよい。なお、透過型HMDを用いて仮想体験を提供する場合には、ユーザの基準視線は、非透過型HMDと同様に、HMDの動き、または、ユーザの視線を検知することによって特定してもよい。 When a virtual experience is provided by applying an operation by contact with a virtual object to MR or the like, a part of the body other than the actual head of the user is physically and optically replaced with the operation target object. The contact between the body part and the virtual object may be determined based on the positional relationship between the body part and the virtual object. When providing a virtual experience using a transmissive HMD, the user's reference line of sight may be specified by detecting the movement of the HMD or the user's line of sight, similar to the non-transmissive HMD. .
〔ソフトウェアによる実現例〕
制御回路部200の制御ブロック(検出部210、表示制御部220、仮想空間制御部230、記憶部240、および通信部250)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェアによって実現してもよい。
[Example of software implementation]
A control block (
後者の場合、制御ブロックは、各機能を実現するソフトウェアであるプログラムの命令を実行するCPU、前記プログラムおよび各種データがコンピュータ(又はCPU)で読み取り可能に記録されたROM(Read Only Memory)または記憶装置(これらを「記録媒体」と称する)、前記プログラムを展開するRAM(Random Access Memory)等を備えている。そして、コンピュータ(又はCPU)が前記プログラムを前記記録媒体から読み取って実行することにより、本発明の目的が達成される。前記記録媒体としては、「一時的でない有形の媒体」、たとえば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路等を用いることができる。また、前記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して前記コンピュータに供給されてもよい。なお、本発明は、前記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。 In the latter case, the control block includes a CPU that executes instructions of a program that is software that realizes each function, a ROM (Read Only Memory) or a memory in which the program and various data are recorded so as to be readable by a computer (or CPU). A device (these are referred to as “recording media”), a RAM (Random Access Memory) for expanding the program, and the like are provided. And the objective of this invention is achieved when a computer (or CPU) reads the said program from the said recording medium and runs it. As the recording medium, a “non-temporary tangible medium” such as a tape, a disk, a card, a semiconductor memory, a programmable logic circuit, or the like can be used. The program may be supplied to the computer via an arbitrary transmission medium (such as a communication network or a broadcast wave) that can transmit the program. The present invention can also be realized in the form of a data signal embedded in a carrier wave, in which the program is embodied by electronic transmission.
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。 The present invention is not limited to the above-described embodiments, and various modifications are possible within the scope shown in the claims, and embodiments obtained by appropriately combining technical means disclosed in different embodiments. Is also included in the technical scope of the present invention.
〔付記事項〕
本発明の一側面にかかる内容を列記すると以下の通りである。
[Additional Notes]
The contents according to one aspect of the present invention are listed as follows.
(項目1)頭部にヘッドマウントディスプレイを装着したユーザに仮想空間を提供する方法であって、前記ヘッドマウントディスプレイの動きに基づいて、前記仮想空間のうち前記ヘッドマウントディスプレイに出力される視界画像を生成するステップと、前記仮想空間に、前記ユーザからの指示を受け付けるユーザインタフェース(以下、UI)オブジェクトであって、操作部分を第1位置に含むUIオブジェクトを生成するステップと、前記仮想空間に、前記ユーザの前記頭部以外の身体の一部の動きに連動する仮想身体を生成するステップと、前記操作部分が、前記仮想身体により選択されたことを検出するステップと、前記操作部分が前記仮想身体により選択されたまま、該仮想身体により何れかの方向に移動させられたことを検出するステップと、前記操作部分が前記仮想身体により選択されたまま、前記第1位置とは異なる第2位置に位置している間、所定の選択肢を前記UIオブジェクトに対する前記指示に基づき選択可能とするステップと、を含む方法。 (Item 1) A method of providing a virtual space to a user wearing a head-mounted display on the head, and a field-of-view image output to the head-mounted display in the virtual space based on the movement of the head-mounted display Generating a user interface (hereinafter referred to as UI) object that receives an instruction from the user in the virtual space, the UI object including an operation part at a first position; and Generating a virtual body that is linked to the movement of a part of the body other than the head of the user; detecting that the operation part is selected by the virtual body; and Detects movement in either direction by the virtual body while selected by the virtual body And a predetermined option can be selected based on the instruction to the UI object while the operation part is selected by the virtual body and is positioned at a second position different from the first position. And a method comprising:
前記の方法によれば、仮想身体により操作部分を選択して移動させることにより選択肢を選択可能とするので、ユーザに対し、操作を確実に行ったということを認識させることができる。これにより、ユーザの仮想体験をさらに改善することができる。 According to the above method, the selection can be made by selecting and moving the operation part with the virtual body, so that the user can recognize that the operation has been performed reliably. Thereby, a user's virtual experience can be improved further.
(項目2)前記UIオブジェクトを基準として、前記方向において、前記第2位置を含む第1距離範囲と、前記第2位置および前記第1位置と異なる第3位置を含む第2距離範囲とが設定され、前記選択可能とするステップでは、前記第1距離範囲に前記操作部分が位置している場合、前記所定の選択肢を選択可能とし、前記第2距離範囲に前記操作部分が位置している場合、前記所定の選択肢と異なる選択肢を選択可能とする項目1の方法。
(Item 2) A first distance range including the second position and a second distance range including a second position and a third position different from the first position are set in the direction with the UI object as a reference. In the step of enabling selection, when the operation part is located in the first distance range, the predetermined option can be selected and the operation part is located in the second distance range. The method of
前記の方法によれば、複数の選択肢をユーザの操作感に合わせて、切り替えて選択可能とすることができる。 According to the above method, a plurality of options can be switched and selected according to the user's operational feeling.
(項目3)前記UIオブジェクトには表示領域が設けられており、前記表示領域には、前記操作部分が前記第1位置に位置しているとき、第1情報が表示されており、前記操作部分が前記第2位置に位置しているとき、前記所定の選択肢に応じた第2情報を前記表示領域に表示させる項目1または2に記載の方法。
(Item 3) The UI object is provided with a display area, and the display area displays first information when the operation part is located at the first position, and the operation part 3. The method according to
前記の方法によれば、操作部分が第1位置とは異なる位置にあるときに、表示領域に選択肢に応じた第2情報を表示することにより、ユーザの操作感に合わせて、選択肢を提示することができる。 According to the above method, when the operation part is at a position different from the first position, the second information corresponding to the option is displayed in the display area, and the option is presented in accordance with the user's operational feeling. be able to.
(項目4)前記身体の一部と接触しているコントローラによって、前記身体の一部の動きと前記仮想身体とは連動しており、前記所定の選択肢を選択可能にするとき、前記身体の一部に前記コントローラを介して振動を与えるステップをさらに含む項目1〜3のいずれかの方法。
(Item 4) When the controller that is in contact with the body part is linked with the movement of the body part and the virtual body, the predetermined option can be selected. 4. The method according to any one of
前記の方法によれば、選択肢が選択可能となったことをユーザに確実に認識させることができる。 According to the above method, the user can be surely recognized that the option can be selected.
(項目5)前記第2位置において前記仮想身体による前記操作部分の選択が解除された場合、前記操作部分を前記第1位置に戻すステップと、前記操作部分が前記第1位置に戻った場合、前記所定の選択肢を選択可能な状態を維持するステップと、をさらに含む項目1〜4のいずれかの方法。
(Item 5) When the selection of the operation part by the virtual body is canceled at the second position, the step of returning the operation part to the first position, and the operation part returning to the first position, Maintaining the state in which the predetermined option can be selected. 5. The method according to any one of
前記の方法によれば、ユーザの操作感に合わせて、選択可能状態を解除し、選択肢を維持することができる。 According to the above method, the selectable state can be canceled and the options can be maintained according to the user's operational feeling.
(項目6)前記操作部分が前記第1位置に戻った場合、前記所定の選択肢を選択させるステップをさらに含む項目5の方法。前記の方法によれば、ユーザの容易な操作により、選択肢を選択することができる。
(Item 6) The method according to
(項目7)頭部にヘッドマウントディスプレイを装着したユーザに仮想体験を提供する方法であって、前記ユーザからの指示を受け付けるユーザインタフェース(以下、UI)オブジェクトであって、操作部分を第1位置に含むUIオブジェクトを生成するステップと、前記操作部分が、前記ユーザの頭部以外の身体の一部により選択されたことを検出するステップと、前記操作部分が前記身体の一部により選択されたまま、該身体の一部により何れかの方向に移動させられたことを検出するステップと、前記操作部分が前記身体の一部により選択されたまま、前記第1位置とは異なる第2位置に位置している間、所定の選択肢を前記UIオブジェクトに対する前記指示に基づき選択可能とするステップと、を含む方法。 (Item 7) A method for providing a virtual experience to a user wearing a head-mounted display on a head, which is a user interface (hereinafter referred to as UI) object for receiving an instruction from the user, wherein an operation part is positioned at a first position. Generating a UI object including: detecting that the operation part is selected by a body part other than the user's head; and selecting the operation part by the body part The step of detecting that the body part is moved in any direction, and the operation part is selected by the part of the body and is in a second position different from the first position. Allowing a predetermined option to be selected based on the instructions for the UI object while located.
前記の方法によれば、仮想身体により操作部分を選択して移動させることにより選択肢を選択可能とするので、ユーザに対し、操作を確実に行ったということを認識させることができる。これにより、ユーザの仮想体験をさらに改善することができる。 According to the above method, the selection can be made by selecting and moving the operation part with the virtual body, so that the user can recognize that the operation has been performed reliably. Thereby, a user's virtual experience can be improved further.
(項目8)項目1〜7のいずれかに記載の方法の各ステップを、コンピュータに実行させるプログラム。
(Item 8) A program that causes a computer to execute each step of the method according to any one of
(項目9)項目8に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。 (Item 9) A computer-readable recording medium on which the program according to Item 8 is recorded.
1 仮想カメラ、2 仮想空間、5 基準視線、21 中心、22 仮想空間画像、23 視界領域、24 第1領域、25 第2領域、26 視界画像、100 HMDシステム、110 HMD、112 ディスプレイ、114、306 センサ、120 HMDセンサ、130 注視センサ、140 コントローラセンサ、200 制御回路部、210 検出部、211 HMD検出部、212 視線検出部、213 コントローラ検出部、220 表示制御部、221 仮想カメラ制御部、222 視界領域決定部、223 視界画像生成部、230 仮想空間制御部、231 仮想空間規定部、232 仮想手制御部、233 選択肢制御部、234 設定部、240 記憶部、241 雛形格納部、242 コンテンツ格納部、243 選択肢格納部、250 通信部、300 コントローラ、302 操作ボタン、302a、302b 親指ボタン、302e 人差し指ボタン、302f 中指ボタン、302i アナログスティック、320 右コントローラ、322 天面、324 グリップ、326 フレーム、330 左コントローラ 1 virtual camera, 2 virtual space, 5 reference line of sight, 21 center, 22 virtual space image, 23 view area, 24 first area, 25 second area, 26 view image, 100 HMD system, 110 HMD, 112 display, 114, 306 sensor, 120 HMD sensor, 130 gaze sensor, 140 controller sensor, 200 control circuit unit, 210 detection unit, 211 HMD detection unit, 212 gaze detection unit, 213 controller detection unit, 220 display control unit, 221 virtual camera control unit, 222 Visibility area determination unit, 223 Visibility image generation unit, 230 Virtual space control unit, 231 Virtual space definition unit, 232 Virtual hand control unit, 233 Option control unit, 234 Setting unit, 240 Storage unit, 241 Model storage unit, 242 Content Storage unit, 243 option storage unit, 50 communication unit, 300 controller, 302 an operation button, 302a, 302b thumb button, 302 e forefinger button, 302f middle button, 302i analog stick, 320 right controller, 322 top, 324 grip, 326 frame, 330 Left controller
Claims (10)
前記ヘッドマウントディスプレイの動きに基づいて、前記仮想空間のうち前記ヘッドマウントディスプレイに出力される視界画像を生成するステップと、
前記仮想空間に、前記ユーザからの指示を受け付けるユーザインタフェース(以下、UI)オブジェクトであって、操作部分を第1位置に含むUIオブジェクトを生成するステップと、
前記仮想空間に、前記ユーザの前記頭部以外の身体の一部の動きに連動する仮想身体を生成するステップと、
前記操作部分が、前記仮想身体により選択されたことを検出するステップと、
前記操作部分が前記仮想身体により選択されたまま、該仮想身体により前記UIオブジェクトから遠ざかる何れかの方向に移動させられたことを検出するステップと、
前記操作部分が前記仮想身体により選択されたまま、前記第1位置とは異なる第2位置に位置している間、所定の選択肢を前記UIオブジェクトに対する前記指示に基づき選択可能とするステップと、を含み、
前記UIオブジェクトを基準として、前記方向において、前記第2位置を含む第1距離範囲と、前記第2位置および前記第1位置と異なる第3位置を含む第2距離範囲とが設定されており、
前記選択可能とするステップでは、前記第1距離範囲に前記操作部分が位置している場合、前記所定の選択肢を選択可能とし、前記第2距離範囲に前記操作部分が位置している場合、前記所定の選択肢と異なる選択肢を選択可能とし、
前記UIオブジェクトには表示領域が設けられており、
前記表示領域には、前記操作部分が前記第1位置に位置しているとき、第1情報が表示されており、
前記操作部分が前記第2位置に位置しているとき、前記所定の選択肢に応じた第2情報を前記第1情報から切り替えて前記表示領域に表示させることを特徴とする方法。 A method for providing a virtual space to a user wearing a head-mounted display on a head,
Generating a visual field image output to the head-mounted display in the virtual space based on the movement of the head-mounted display;
Generating a user interface (hereinafter referred to as UI) object that receives an instruction from the user in the virtual space, the UI object including an operation part at a first position;
Generating in the virtual space a virtual body that is linked to the movement of a part of the body other than the head of the user;
Detecting that the operating portion is selected by the virtual body;
Detecting that the operation portion is selected by the virtual body and moved in any direction away from the UI object by the virtual body;
Enabling the user to select a predetermined option based on the instruction to the UI object while the operation part is selected by the virtual body and is positioned at a second position different from the first position. Including
A first distance range including the second position and a second distance range including a second position and a third position different from the first position are set in the direction with respect to the UI object.
In the selecting step, when the operation part is located in the first distance range, the predetermined option can be selected, and when the operation part is located in the second distance range, It is possible to select an option different from the predetermined option,
The UI object has a display area,
In the display area, when the operation portion is located at the first position, first information is displayed,
When the operation portion is located at the second position, the second information corresponding to the predetermined option is switched from the first information and displayed on the display area.
前記所定の選択肢を選択可能にするとき、前記身体の一部に前記コントローラを介して振動を与えるステップをさらに含む請求項1に記載の方法。 The movement of the body part and the virtual body are linked by the controller in contact with the body part,
The method of claim 1, further comprising applying a vibration to the body part via the controller when the predetermined option is selectable.
前記操作部分が前記第1位置に戻った場合、前記所定の選択肢を選択可能な状態を維持するステップと、をさらに含む請求項1または2に記載の方法。 Returning the operation part to the first position when the selection of the operation part by the virtual body is canceled at the second position;
The method according to claim 1, further comprising the step of maintaining a state in which the predetermined option can be selected when the operation portion returns to the first position.
前記ユーザからの指示を受け付けるユーザインタフェース(以下、UI)オブジェクトであって、操作部分を第1位置に含むUIオブジェクトを生成するステップと、
前記操作部分が、前記ユーザの頭部以外の身体の一部により選択されたことを検出するステップと、
前記操作部分が前記身体の一部により選択されたまま、該身体の一部により前記UIオブジェクトから遠ざかる何れかの方向に移動させられたことを検出するステップと、
前記操作部分が前記身体の一部により選択されたまま、前記第1位置とは異なる第2位置に位置している間、所定の選択肢を前記UIオブジェクトに対する前記指示に基づき選択可能とするステップと、を含み、
前記UIオブジェクトを基準として、前記方向において、前記第2位置を含む第1距離範囲と、前記第2位置および前記第1位置と異なる第3位置を含む第2距離範囲とが設定されており、
前記選択可能とするステップでは、前記第1距離範囲に前記操作部分が位置している場合、前記所定の選択肢を選択可能とし、前記第2距離範囲に前記操作部分が位置している場合、前記所定の選択肢と異なる選択肢を選択可能とし、
前記UIオブジェクトには表示領域が設けられており、
前記表示領域には、前記操作部分が前記第1位置に位置しているとき、第1情報が表示されており、
前記操作部分が前記第2位置に位置しているとき、前記所定の選択肢に応じた第2情報を前記第1情報から切り替えて前記表示領域に表示させることを特徴とする方法。 A method for providing a virtual experience to a user wearing a head-mounted display on the head,
Generating a user interface (hereinafter referred to as UI) object that receives an instruction from the user and including an operation part at a first position;
Detecting that the operation part is selected by a part of the body other than the user's head;
Detecting that the operating part is selected by the body part and moved in any direction away from the UI object by the body part;
Enabling the user to select a predetermined option based on the instruction to the UI object while the operation part is selected by the body part and is located at a second position different from the first position; Including,
A first distance range including the second position and a second distance range including a second position and a third position different from the first position are set in the direction with respect to the UI object.
In the selecting step, when the operation part is located in the first distance range, the predetermined option can be selected, and when the operation part is located in the second distance range, It is possible to select an option different from the predetermined option,
The UI object has a display area,
In the display area, when the operation portion is located at the first position, first information is displayed,
When the operation portion is located at the second position, the second information corresponding to the predetermined option is switched from the first information and displayed on the display area.
前記ヘッドマウントディスプレイの動きに基づいて、前記仮想空間のうち前記ヘッドマウントディスプレイに出力される視界画像を生成するステップと、
前記仮想空間に、前記ユーザからの指示を受け付けるユーザインタフェース(以下、UI)オブジェクトであって、操作部分を第1位置に含むUIオブジェクトを生成するステップと、
前記仮想空間に、前記ユーザの前記頭部以外の身体の一部の動きに連動する仮想身体を生成するステップと、
前記操作部分が、前記仮想身体により選択されたことを検出するステップと、
前記操作部分が前記仮想身体により選択されたまま、該仮想身体により前記UIオブジェクトから遠ざかる何れかの方向に移動させられたことを検出するステップと、
前記操作部分が前記仮想身体により選択されたまま、前記第1位置とは異なる第2位置に位置している間、所定の選択肢を前記UIオブジェクトに対する前記指示に基づき選択可能とするステップと、を含み、
前記UIオブジェクトを基準として、前記方向において、前記第2位置を含む第1距離範囲と、前記第2位置および前記第1位置と異なる第3位置を含む第2距離範囲とが設定されており、
前記選択可能とするステップでは、前記第1距離範囲に前記操作部分が位置している場合、前記所定の選択肢を選択可能とし、前記第2距離範囲に前記操作部分が位置している場合、前記所定の選択肢と異なる選択肢を選択可能とすることを特徴とする方法。 A method for providing a virtual space to a user wearing a head-mounted display on a head,
Generating a visual field image output to the head-mounted display in the virtual space based on the movement of the head-mounted display;
Generating a user interface (hereinafter referred to as UI) object that receives an instruction from the user in the virtual space, the UI object including an operation part at a first position;
Generating in the virtual space a virtual body that is linked to the movement of a part of the body other than the head of the user;
Detecting that the operating portion is selected by the virtual body;
Detecting that said operation portion is still selected by the virtual body, made me moved in one direction by the virtual body away from the UI object,
Enabling the user to select a predetermined option based on the instruction to the UI object while the operation part is selected by the virtual body and is positioned at a second position different from the first position. Including
A first distance range including the second position and a second distance range including a second position and a third position different from the first position are set in the direction with respect to the UI object.
In the selecting step, when the operation part is located in the first distance range, the predetermined option can be selected, and when the operation part is located in the second distance range, A method characterized in that an option different from a predetermined option can be selected.
前記ユーザからの指示を受け付けるユーザインタフェース(以下、UI)オブジェクトであって、操作部分を第1位置に含むUIオブジェクトを生成するステップと、
前記操作部分が、前記ユーザの頭部以外の身体の一部により選択されたことを検出するステップと、
前記操作部分が前記身体の一部により選択されたまま、該身体の一部により前記UIオブジェクトから遠ざかる何れかの方向に移動させられたことを検出するステップと、
前記操作部分が前記身体の一部により選択されたまま、前記第1位置とは異なる第2位置に位置している間、所定の選択肢を前記UIオブジェクトに対する前記指示に基づき選択可能とするステップと、を含み、
前記UIオブジェクトを基準として、前記方向において、前記第2位置を含む第1距離範囲と、前記第2位置および前記第1位置と異なる第3位置を含む第2距離範囲とが設定されており、
前記選択可能とするステップでは、前記第1距離範囲に前記操作部分が位置している場合、前記所定の選択肢を選択可能とし、前記第2距離範囲に前記操作部分が位置している場合、前記所定の選択肢と異なる選択肢を選択可能とする方法。 A method for providing a virtual experience to a user wearing a head-mounted display on the head,
Generating a user interface (hereinafter referred to as UI) object that receives an instruction from the user and including an operation part at a first position;
Detecting that the operation part is selected by a part of the body other than the user's head;
Detecting that the operating part is selected by the body part and moved in any direction away from the UI object by the body part;
Enabling the user to select a predetermined option based on the instruction to the UI object while the operation part is selected by the body part and is located at a second position different from the first position; Including,
A first distance range including the second position and a second distance range including a second position and a third position different from the first position are set in the direction with respect to the UI object.
In the selecting step, when the operation part is located in the first distance range, the predetermined option can be selected, and when the operation part is located in the second distance range, A method for enabling selection different from a predetermined option.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016162243A JP6242452B1 (en) | 2016-08-22 | 2016-08-22 | Method for providing virtual space, method for providing virtual experience, program, and recording medium |
US15/681,427 US20180059812A1 (en) | 2016-08-22 | 2017-08-21 | Method for providing virtual space, method for providing virtual experience, program and recording medium therefor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016162243A JP6242452B1 (en) | 2016-08-22 | 2016-08-22 | Method for providing virtual space, method for providing virtual experience, program, and recording medium |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017185508A Division JP2018032413A (en) | 2017-09-26 | 2017-09-26 | Method for providing virtual space, method for providing virtual experience, program and recording medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6242452B1 true JP6242452B1 (en) | 2017-12-06 |
JP2018032101A JP2018032101A (en) | 2018-03-01 |
Family
ID=60570442
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016162243A Active JP6242452B1 (en) | 2016-08-22 | 2016-08-22 | Method for providing virtual space, method for providing virtual experience, program, and recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6242452B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102319074B1 (en) * | 2019-12-11 | 2021-11-02 | 주식회사 시공테크 | Hanging simulator system with 3-axis movement and the method thereof |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005134536A (en) * | 2003-10-29 | 2005-05-26 | Omron Corp | Work training support system |
JP2009294372A (en) * | 2008-06-04 | 2009-12-17 | Nikon Corp | Head-mounted display device |
JP2012008877A (en) * | 2010-06-25 | 2012-01-12 | Konami Digital Entertainment Co Ltd | Operation reception device, operation discrimination method and program |
JP2013258614A (en) * | 2012-06-13 | 2013-12-26 | Sony Computer Entertainment Inc | Image generation device and image generation method |
JP2014071520A (en) * | 2012-09-27 | 2014-04-21 | Kyocera Corp | Display device, control method and control program |
JP2016095557A (en) * | 2014-11-12 | 2016-05-26 | セイコーエプソン株式会社 | Display control device and display control method |
WO2016129549A1 (en) * | 2015-02-12 | 2016-08-18 | 株式会社コロプラ | Device and system for viewing content using head-mounted display |
-
2016
- 2016-08-22 JP JP2016162243A patent/JP6242452B1/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005134536A (en) * | 2003-10-29 | 2005-05-26 | Omron Corp | Work training support system |
JP2009294372A (en) * | 2008-06-04 | 2009-12-17 | Nikon Corp | Head-mounted display device |
JP2012008877A (en) * | 2010-06-25 | 2012-01-12 | Konami Digital Entertainment Co Ltd | Operation reception device, operation discrimination method and program |
JP2013258614A (en) * | 2012-06-13 | 2013-12-26 | Sony Computer Entertainment Inc | Image generation device and image generation method |
JP2014071520A (en) * | 2012-09-27 | 2014-04-21 | Kyocera Corp | Display device, control method and control program |
JP2016095557A (en) * | 2014-11-12 | 2016-05-26 | セイコーエプソン株式会社 | Display control device and display control method |
WO2016129549A1 (en) * | 2015-02-12 | 2016-08-18 | 株式会社コロプラ | Device and system for viewing content using head-mounted display |
Non-Patent Citations (2)
Title |
---|
ふじのっち: "メタルギア ソリッド 4 ガンズ・オブ・ザ・パトリオット METAL GEAR SOLID 4", 週刊ファミ通, vol. 第23巻 第26号, JPN6017013441, 27 June 2008 (2008-06-27), pages 1 - 0 * |
鈴川絢子, VR運転体験!トレインマイスターをやってきた - YOUTUBE, JPN6017013439, 18 May 2016 (2016-05-18), pages 動画 * |
Also Published As
Publication number | Publication date |
---|---|
JP2018032101A (en) | 2018-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2018016553A1 (en) | Method for providing virtual space, method for providing virtual experience, program, and recording medium | |
JP6240353B1 (en) | Method for providing information in virtual space, program therefor, and apparatus therefor | |
JP6189497B1 (en) | Method for providing virtual space, method for providing virtual experience, program, and recording medium | |
JP6257826B1 (en) | Method, program, and information processing apparatus executed by computer to provide virtual space | |
JP6509938B2 (en) | INFORMATION PROCESSING METHOD, COMPUTER, AND PROGRAM | |
JP6113897B1 (en) | Method for providing virtual space, method for providing virtual experience, program, and recording medium | |
JP6220937B1 (en) | Information processing method, program for causing computer to execute information processing method, and computer | |
JP2018194889A (en) | Information processing method, computer and program | |
JP6278546B1 (en) | Information processing method, apparatus, and program for causing computer to execute information processing method | |
JP6368404B1 (en) | Information processing method, program, and computer | |
JP6203346B1 (en) | Method, program, and recording medium for providing virtual space | |
JP2018032413A (en) | Method for providing virtual space, method for providing virtual experience, program and recording medium | |
JP6140871B1 (en) | Information processing method and program for causing computer to execute information processing method | |
JP2018206340A (en) | Method which is executed on computer for providing virtual space, program and information processor | |
JP6159455B1 (en) | Method, program, and recording medium for providing virtual space | |
JP2018028920A (en) | Method for providing virtual space, program and recording medium | |
JP6242452B1 (en) | Method for providing virtual space, method for providing virtual experience, program, and recording medium | |
JP2018028900A (en) | Method, program, and recording medium for providing virtual space | |
JP6728111B2 (en) | Method of providing virtual space, method of providing virtual experience, program, and recording medium | |
JP2018206353A (en) | Information processing method, apparatus, and program for implementing that information processing method in computer | |
JP2019020836A (en) | Information processing method, device, and program for causing computer to execute the method | |
JP2018026105A (en) | Information processing method, and program for causing computer to implement information processing method | |
JP6403843B1 (en) | Information processing method, information processing program, and information processing apparatus | |
JP2018014084A (en) | Method for providing virtual space, method for providing virtual experience, program and recording medium | |
JP6189495B1 (en) | Method for providing virtual space, method for providing virtual experience, program, and recording medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20170808 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171005 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20171011 |
|
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: 20171031 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20171107 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6242452 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |