JP6113897B1 - 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 PDF

Info

Publication number
JP6113897B1
JP6113897B1 JP2016162245A JP2016162245A JP6113897B1 JP 6113897 B1 JP6113897 B1 JP 6113897B1 JP 2016162245 A JP2016162245 A JP 2016162245A JP 2016162245 A JP2016162245 A JP 2016162245A JP 6113897 B1 JP6113897 B1 JP 6113897B1
Authority
JP
Japan
Prior art keywords
input
input object
virtual space
virtual
head
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
Application number
JP2016162245A
Other languages
Japanese (ja)
Other versions
JP2018032102A (en
Inventor
篤 猪俣
篤 猪俣
友輝 高野
友輝 高野
佐藤 寿樹
寿樹 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Colopl Inc
Original Assignee
Colopl Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Colopl Inc filed Critical Colopl Inc
Priority to JP2016162245A priority Critical patent/JP6113897B1/en
Application granted granted Critical
Publication of JP6113897B1 publication Critical patent/JP6113897B1/en
Priority to US15/681,427 priority patent/US20180059812A1/en
Publication of JP2018032102A publication Critical patent/JP2018032102A/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】仮想体験を改善する。【解決手段】制御回路部は、仮想空間に生成された仮想身体によって入力オブジェクトが仮想空間における決定領域に移動させられたとき、入力オブジェクトに関連付けられた入力対象が入力されたことを受け付ける。【選択図】図1A virtual experience is improved. A control circuit unit receives that an input target associated with an input object is input when the input object is moved to a determination area in the virtual space by a virtual body generated in the virtual space. [Selection] Figure 1

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.

特許第5876607号公報(2016年1月29日登録)Japanese Patent No. 5876607 (registered on January 29, 2016)

特許文献1においては、仮想体験をさらに改善させる余地がある。特に、UI(User Interface)に対する入力を実行した実感をユーザに体感させることにより、仮想体験をさらに改善し得る。   In Patent Document 1, there is room for further improving the virtual experience. In particular, the virtual experience can be further improved by letting the user experience the actual feeling of performing input to a UI (User Interface).

本開示は、前記の課題を解決するためになされたものであり、その目的は、仮想体験をさらに改善することにある。   This indication is made in order to solve the above-mentioned subject, and the object is to further improve a virtual experience.

本開示に係る仮想空間を提供する方法は、頭部にヘッドマウントディスプレイ(以下、HMD)を装着したユーザに仮想空間を提供する方法であって、ヘッドマウントディスプレイの動きに基づいて、仮想空間のうちヘッドマウントディスプレイに出力される視界画像を生成するステップと、仮想空間に、入力対象が関連付けられた入力オブジェクトを生成するステップと、仮想空間に、ユーザの頭部以外の身体の一部の動きに連動する仮想身体を生成するステップと、仮想身体によって入力オブジェクトが仮想空間における決定領域に移動させられたことを検出するステップと、入力オブジェクトが決定領域に移動させられたことが検出された場合、入力オブジェクトに関連付けられた入力対象が入力されたことを受け付けるステップと、を含む。   A method for providing a virtual space according to the present disclosure is a method for providing a virtual space to a user wearing a head-mounted display (hereinafter referred to as an HMD) on a head, based on the movement of the head-mounted display. Among them, a step of generating a field-of-view image to be output to a head-mounted display, a step of generating an input object associated with an input target in the virtual space, and a movement of a part of the body other than the user's head in the virtual space A step of generating a virtual body that is linked to the virtual body, a step of detecting that the input object is moved to the decision area in the virtual space by the virtual body, and a case where it is detected that the input object is moved to the decision area Receiving an input target associated with the input object; Including.

また、本開示に係る仮想体験を提供する方法は、頭部にヘッドマウントディスプレイを装着したユーザに仮想体験を提供する方法であって、入力対象が関連付けられた入力オブジェクトを生成するステップと、ユーザの頭部以外の身体の一部によって入力オブジェクトが決定領域に移動させられたことを検出するステップと、入力オブジェクトが決定領域に移動させられたことが検出された場合、入力オブジェクトに関連付けられた入力対象が入力されたことを受け付けるステップと、を含む。   Further, 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, the step of generating an input object associated with an input target, Detecting that the input object has been moved to the decision area by a part of the body other than the head of the user, and if it is detected that the input object has been moved to the decision area, it is associated with the input object Receiving that the input object has been input.

本開示によれば、仮想体験をさらに改善し得る。   According to the present disclosure, the virtual experience can be further improved.

HMDシステムの構成を示す図である。It is a figure which shows the structure of a HMD system. 制御回路部のハード構成を示す図である。It is a figure which shows the hardware constitutions of a control circuit part. HMDに設定される視野座標系を例示する図である。It is a figure which illustrates the visual field coordinate system set to HMD. ユーザに提供される仮想空間の概要を説明する図である。It is a figure explaining the outline | summary of the virtual space provided to a user. 視界領域の断面を示す図である。It is a figure which shows the cross section of a visual field area | region. ユーザの視線方向を決定する方法を例示する図である。It is a figure which illustrates the method of determining a user's gaze direction. 右コントローラの構成を表す図である。It is a figure showing the structure of a right controller. 制御回路部の機能的構成を示すブロック図である。It is a block diagram which shows the functional structure of a control circuit part. HMDシステムが仮想空間をユーザに提供する処理の流れを示すシーケンス図である。It is a sequence diagram which shows the flow of the process in which an HMD system provides a virtual space to a user. 仮想空間における入力処理の流れを示すシーケンス図である。It is a sequence diagram which shows the flow of the input process in virtual space. 入力処理の一例の流れを示すシーケンス図である。It is a sequence diagram which shows the flow of an example of an input process. 入力処理の一例の流れを示すシーケンス図である。It is a sequence diagram which shows the flow of an example of an input process. 入力処理例Aを説明するための図である。It is a figure for demonstrating the example A of an input process. 入力処理例Bを説明するための図である。It is a figure for demonstrating the input process example B. FIG. 入力処理例Bを説明するための図である。It is a figure for demonstrating the input process example B. FIG. 入力処理例Bを説明するための図である。It is a figure for demonstrating the input process example B. FIG. 入力処理例Cを説明するための図である。10 is a diagram for explaining an input processing example C. FIG. 入力処理例Cを説明するための図である。10 is a diagram for explaining an input processing example C. FIG. 入力処理例Cを説明するための図である。10 is a diagram for explaining an input processing example C. FIG.

[本発明の実施形態の詳細]
本発明の実施形態に係る仮想空間を提供する方法、および、プログラムの具体例を、以下に図面を参照しつつ説明する。本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が本発明に含まれることが意図される。以下の説明では、図面の説明において同一の要素には同一の符号を付し、重複する説明を繰り返さない。
[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は、HMD110、HMDセンサ120、コントローラセンサ140、制御回路部200、およびコントローラ300を備えている。
(Configuration of HMD system 100)
FIG. 1 is a diagram showing a configuration of the HMD system 100. As shown in this figure, the HMD system 100 includes an HMD 110, an HMD sensor 120, a controller sensor 140, a control circuit unit 200, and a controller 300.

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 display 112 which is a non-transmissive display device, a sensor 114, and a gaze sensor 130. The HMD 110 displays a right-eye image and a left-eye image on the display 112, thereby allowing the user to visually recognize a three-dimensional image that is stereoscopically viewed by the user based on the parallax between both eyes of the user. This provides a virtual space to the user. Since the display 112 is disposed in front of the user's eyes, the user can immerse in the virtual space through an image displayed on the display 112. Thereby, the user can experience virtual reality (Virtual Reality: VR). The virtual space may include a background, various objects that can be operated by the user, menu images, and the like.

ディスプレイ112は、右目用画像を表示する右目用サブディスプレイと、左目用画像を表示する左目用サブディスプレイとを含んでもよい。または、ディスプレイ112は、右目用画像および左目用画像を共通の画面に表示する1つの表示装置であってもよい。このような表示装置として、たとえば、表示画像が一方の目にしか認識できないようにするシャッターを高速に切り替えることにより、右目用画像および左目用画像を独立して交互に表示する表示装置が挙げられる。   The display 112 may include a right-eye sub-display that displays a right-eye image and a left-eye sub-display that displays a left-eye image. Alternatively, the display 112 may be a single display device that displays the right-eye image and the left-eye image on a common screen. As such a display device, for example, a display device that alternately displays a right-eye image and a left-eye image independently by switching a shutter so that the display image can be recognized only by one eye. .

また、本実施形態において、HMD110には透過型ディスプレイが適用されてもよい。つまり、HMD110は、透過型HMDであってもよい。この場合、3次元画像を透過型ディスプレイに表示することによって、後述する仮想オブジェクトを現実空間に仮想的に配置することができる。これにより、ユーザは現実空間に仮想オブジェクトが配置された複合現実(Mixes Reality:MR)を体験することができる。本実施形態において、仮想現実や複合現実といった、ユーザが仮想オブジェクトと相互作用できる体験を仮想体験と称することがある。以下では、仮想現実を提供するための方法を一例として詳説する。   In the present embodiment, a transmissive display may be applied to the HMD 110. That is, the HMD 110 may be a transmissive HMD. In this case, by displaying the three-dimensional image on the transmissive display, a virtual object described later can be virtually arranged in the real space. Thereby, the user can experience mixed reality (Mixes Reality: MR) in which virtual objects are arranged in the real space. In the present embodiment, an experience such as virtual reality or mixed reality in which a user can interact with a virtual object may be referred to as a virtual experience. Hereinafter, a method for providing virtual reality will be described in detail as an example.

(制御回路部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 control circuit unit 200. The control circuit unit 200 is a computer for causing the HMD 110 to provide a virtual space. As shown in FIG. 2, the control circuit unit 200 includes a processor, a memory, a storage, an input / output interface, and a communication interface. These are connected to each other in the control circuit unit 200 through a bus as a data transmission path.

プロセッサは、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 control circuit unit 200 and the HMD system 100 as a whole.

メモリは、主記憶として機能する。メモリには、プロセッサによって処理されるプログラムおよび制御用データ(演算パラメータなど)が記憶される。メモリは、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 entire HMD system 100, various simulation programs, a user authentication program, and various data (images, objects, etc.) for defining a virtual space. Furthermore, a database including a table for managing various data may be constructed in the storage. The storage can be configured to include a flash memory or an HDD (Hard Disc Drive).

入出力インターフェースは、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 HMD 110, various sensors including the HMD sensor 120 and the controller sensor 140, and the controller 300 to each other.

通信インターフェースは、ネットワーク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 control circuit unit 200 provides a virtual space to the user by loading a predetermined application program stored in the storage into a memory and executing it. When the program is executed, the memory and the storage store various programs for operating various objects arranged in the virtual space and displaying and controlling various menu images and the like.

制御回路部200は、HMD110に搭載されていてもよいし、されていなくてもよい。すなわち制御回路部200は、HMD110から独立した別のハードウェア(たとえば、パーソナルコンピュータ、またはネットワークを通じてHMD110と通信可能なサーバ装置)であってもよい。制御回路部200は、複数のハードウェアの協働によって1または複数の機能が実装される形態の装置であってもよい。または、制御回路部200が有する全機能のうち一部の機能のみがHMD110に実装され、残りの機能が別のハードウェアに実装されていてもよい。   The control circuit unit 200 may or may not be mounted on the HMD 110. That is, the control circuit unit 200 may be another hardware independent of the HMD 110 (for example, a personal computer or a server device that can communicate with the HMD 110 through a network). The control circuit unit 200 may be a device in which one or a plurality of functions are implemented by cooperation of a plurality of hardware. Alternatively, only a part of all the functions of the control circuit unit 200 may be mounted on the HMD 110, and the remaining functions may be mounted on different hardware.

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 110 constituting the HMD system 100. This global coordinate system has three reference directions (axes) parallel to the vertical direction, the horizontal direction orthogonal to the vertical direction, and the front-rear direction orthogonal to both the vertical direction and the horizontal direction in the real space. In the present embodiment, since the global coordinate system is a kind of viewpoint coordinate system, the horizontal direction, vertical direction (vertical direction), and front-rear direction in the global coordinate system are set as an x-axis, a y-axis, and a z-axis, respectively. Specifically, the x-axis of the global coordinate system is parallel to the horizontal direction of the real space, the y-axis is parallel to the vertical direction of the real space, and the z-axis is parallel to the front-rear direction of the real space.

HMDセンサ120は、HMD110の動きを検出するためのポジション・トラッキング機能を有する。HMDセンサ120は、この機能によって、現実空間内におけるHMD110の位置および傾きを検出する。この検出を実現するために、HMD110は、図示しない複数の光源を備えている。各光源は、たとえば赤外線を発するLEDである。HMDセンサ120は、たとえば赤外線センサを含んで構成される。HMDセンサ120は、HMD110の光源から照射された赤外線を、赤外線センサによって検出することによって、HMD110の検出点を検出する。さらに、HMD110の検出点の検出値に基づき、ユーザの動きに応じたHMD110の現実空間内における位置および傾きを検出する。HMDセンサ120は、検出値の経時的変化に基づき、HMD110の位置および傾きの時間変化を決定することができる。   The HMD sensor 120 has a position tracking function for detecting the movement of the HMD 110. With this function, the HMD sensor 120 detects the position and inclination of the HMD 110 in the real space. In order to realize this detection, the HMD 110 includes a plurality of light sources (not shown). Each light source is, for example, an LED that emits infrared rays. The HMD sensor 120 includes, for example, an infrared sensor. The HMD sensor 120 detects the detection point of the HMD 110 by detecting the infrared ray irradiated from the light source of the HMD 110 with the infrared sensor. Further, based on the detection value of the detection point of the HMD 110, the position and inclination of the HMD 110 in the real space according to the user's movement are detected. The HMD sensor 120 can determine the time change of the position and inclination of the HMD 110 based on the change with time of the detected value.

HMDセンサ120は、光学カメラを含んで構成されてもよい。この場合、HMDセンサ120は、光学カメラによって得られたHMD110の画像情報に基づき、HMD110の位置および傾きを検出する。   The HMD sensor 120 may include an optical camera. In this case, the HMD sensor 120 detects the position and inclination of the HMD 110 based on the image information of the HMD 110 obtained by the optical camera.

HMDセンサ120の代わりに、HMD110が、センサ114を用いて自身の位置および傾きを検出してもよい。この場合、センサ114は、たとえば角速度センサ、地磁気センサ、加速度センサ、またはジャイロセンサであればよい。HMD110は、これらのうち少なくとも1つを用いる。センサ114が角速度センサである場合、センサ114は、HMD110の動きに応じて、HMD110の現実空間における3軸回りの角速度を経時的に検出する。HMD110は、角速度の検出値に基づき、HMD110の3軸回りの角度の時間的変化を決定し、さらに、角度の時間的変化に基づきHMD110の傾きを検出することができる。   Instead of the HMD sensor 120, the HMD 110 may detect its position and inclination using the sensor 114. In this case, the sensor 114 may be an angular velocity sensor, a geomagnetic sensor, an acceleration sensor, or a gyro sensor, for example. The HMD 110 uses at least one of these. When the sensor 114 is an angular velocity sensor, the sensor 114 detects the angular velocity around the three axes in the real space of the HMD 110 over time according to the movement of the HMD 110. The HMD 110 can determine the temporal change of the angle around the three axes of the HMD 110 based on the detected value of the angular velocity, and can detect the inclination of the HMD 110 based on the temporal change of the angle.

HMD110がセンサ114による検出値に基づきHMD110の位置および傾きを自ら検出する場合、HMDシステム100にHMDセンサ120は不要である。逆に、HMD110から離れた位置に配置されるHMDセンサ120がHMD110の位置および傾きを検出する場合、HMD110にセンサ114は不要である。   When the HMD 110 detects the position and inclination of the HMD 110 based on the detection value of the sensor 114, the HMD sensor 120 is not necessary for the HMD system 100. Conversely, when the HMD sensor 120 arranged at a position away from the HMD 110 detects the position and inclination of the HMD 110, the sensor 114 is not necessary for the HMD 110.

上述したように、グローバル座標系は現実空間の座標系と平行である。そのため、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 HMD 110 detected by the HMD sensor 120 corresponds to each inclination around the three axes of the HMD 110 in the global coordinate system. The HMD sensor 120 sets the uvw visual field coordinate system to the HMD 110 based on the detected value of the inclination of the HMD sensor 120 in the global coordinate system. The uvw visual field coordinate system set in the HMD 110 corresponds to a viewpoint coordinate system when a user wearing the HMD 110 views an object.

(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 HMD 110. The HMD sensor 120 detects the position and inclination of the HMD 110 in the global coordinate system when the HMD 110 is activated. Then, a three-dimensional uvw visual field coordinate system based on the detected tilt value is set in the HMD 110. As shown in FIG. 3, the HMD sensor 120 sets a three-dimensional uvw visual field coordinate system around the head of the user wearing the HMD 110 as the center (origin) in the HMD 110. Specifically, the horizontal direction, the vertical direction, and the front-rear direction (x axis, y axis, z axis) that define the global coordinate system are respectively set around each axis by an inclination around each axis of the HMD 110 in the global coordinate system. Three new directions obtained by tilting are set as the pitch direction (u-axis), yaw direction (v-axis), and roll direction (w-axis) of the uvw visual field coordinate system in the HMD 110.

図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 110 stands upright and visually recognizes the front, the HMD sensor 120 sets the uvw visual field coordinate system parallel to the global coordinate system to the HMD 110. In this case, the horizontal direction (x-axis), the vertical direction (y-axis), and the front-back direction (z-axis) of the global coordinate system are the same as the pitch direction (u-axis) and yaw direction (v of the uvw visual field coordinate system in the HMD 110. Axis) and the roll direction (w-axis).

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 110, the HMD sensor 120 can detect the inclination (the amount of change in inclination) of the HMD 110 in the currently set uvw visual field coordinate system in accordance with the movement of the HMD 110. In this case, the HMD sensor 120 detects the pitch angle (θu), yaw angle (θv), and roll angle (θw) of the HMD 110 in the currently set uvw visual field coordinate system as the inclination of the HMD 110. The pitch angle (θu) is an inclination angle of the HMD 110 around the pitch direction in the uvw visual field coordinate system. The yaw angle (θv) is an inclination angle of the HMD 110 around the yaw direction in the uvw visual field coordinate system. The roll angle (θw) is an inclination angle of the HMD 110 around the roll direction in the uvw visual field coordinate system.

HMDセンサ120は、HMD110の傾きの検出値に基づき、動いた後のHMD110におけるuvw視野座標系を、新たにHMD110に設定する。HMD110と、HMD110のuvw視野座標系との関係は、HMD110の位置および傾きによらず常に一定である。HMD110の位置および傾きが変わると、それの変化に連動して、グローバル座標系におけるHMD110のuvw視野座標系の位置および傾きが同様に変化する。   Based on the detected value of the inclination of the HMD 110, the HMD sensor 120 newly sets the uvw visual field coordinate system in the HMD 110 after moving to the HMD 110. The relationship between the HMD 110 and the uvw visual field coordinate system of the HMD 110 is always constant regardless of the position and inclination of the HMD 110. When the position and inclination of the HMD 110 change, the position and inclination of the uvw visual field coordinate system of the HMD 110 in the global coordinate system similarly change in conjunction with the change.

HMDセンサ120は、赤外線センサによって取得される赤外線の光強度および複数の検出点間の相対位置関係(検出点間の距離等)に基づき、HMD110の現実空間内における位置を、HMDセンサ120に対する相対位置として特定してもよい。また、特定した相対位置に基づき、現実空間内(グローバル座標系)におけるHMD110のuvw視野座標系の原点を決定してもよい。また、HMDセンサ120は、複数の検出点間の相対位置関係に基づきHMD110の現実空間内における傾きを検出し、さらに、その検出値に基づき現実空間内(グローバル座標系)におけるHMD110のuvw視野座標系の向きを決定してもよい。   The HMD sensor 120 determines the position of the HMD 110 in the real space relative to the HMD sensor 120 based on the infrared light intensity acquired by the infrared sensor and the relative positional relationship (distance between the detection points) between the plurality of detection points. You may specify as a position. The origin of the uvw visual field coordinate system of the HMD 110 in the real space (global coordinate system) may be determined based on the specified relative position. The HMD sensor 120 detects the inclination of the HMD 110 in the real space based on the relative positional relationship between the plurality of detection points, and further, based on the detected value, the uvw visual field coordinates of the HMD 110 in the real space (global coordinate system). The orientation of the system may be determined.

(仮想空間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 virtual space 2 provided to the user. As shown in this figure, the virtual space 2 has a spherical structure that covers the entire 360 ° direction of the center 21. FIG. 4 illustrates only the upper half celestial sphere in the entire virtual space 2. A plurality of substantially square or substantially rectangular meshes are associated with the virtual space 2. The position of each mesh in the virtual space 2 is defined in advance as coordinates in a space coordinate system (XYZ coordinate system) defined in the virtual space 2. The control circuit unit 200 associates each partial image constituting content (still image, moving image, etc.) that can be developed in the virtual space 2 with each corresponding mesh in the virtual space 2, thereby enabling the virtual space image that can be visually recognized by the user. The virtual space 2 in which 22 is expanded is provided to the user.

仮想空間2には、中心21を原点とするXYZ空間座標系が規定されている。XYZ座標系は、たとえばグローバル座標系に平行である。XYZ座標系は視点座標系の一種であるため、XYZ座標系における横方向、鉛直方向(上下方向)、および前後方向を、それぞれX軸、Y軸、Z軸とする。すなわち、XYZ座標系のX軸(横方向)がグローバル座標系のx軸と平行であり、XYZ座標系のY軸(上下方向)がグローバル座標系のy軸と平行であり、XYZ座標系のZ軸(前後方向)がグローバル座標系のz軸と平行である。   The virtual space 2 defines an XYZ space coordinate system with the center 21 as the origin. The XYZ coordinate system is parallel to the global coordinate system, for example. Since the XYZ coordinate system is a kind of viewpoint coordinate system, the horizontal direction, vertical direction (vertical direction), and front-rear direction in the XYZ coordinate system are defined as an X axis, a Y axis, and a Z axis, respectively. That is, the X axis (horizontal direction) of the XYZ coordinate system is parallel to the x axis of the global coordinate system, the Y axis (vertical direction) of the XYZ coordinate system is parallel to the y axis of the global coordinate system, and The Z axis (front-rear direction) is parallel to the z axis of the global coordinate system.

HMD110の起動時(初期状態)において、仮想空間2の中心21に仮想カメラ1が配置されている。仮想カメラ1は、現実空間内におけるHMD110の動きに連動して、仮想空間2内において同様に動く。これにより、現実空間内におけるHMD110の位置および向きの変化が、仮想空間2内において同様に再現される。   When the HMD 110 is activated (initial state), the virtual camera 1 is arranged at the center 21 of the virtual space 2. The virtual camera 1 moves similarly in the virtual space 2 in conjunction with the movement of the HMD 110 in the real space. Thereby, changes in the position and orientation of the HMD 110 in the real space are similarly reproduced in the virtual space 2.

仮想カメラ1には、HMD110と同様にuvw視野座標系が規定される。仮想空間2内における仮想カメラ1のuvw視野座標系は、現実空間(グローバル座標系)内におけるHMD110のuvw視野座標系に変動するように規定されている。したがって、HMD110の傾きが変化すると、それに連動して仮想カメラ1の傾きも変化する。仮想カメラ1は、HMD110を装着したユーザの現実空間における移動に連動して、仮想空間2において移動することもできる。   As with the HMD 110, the uvw visual field coordinate system is defined for the virtual camera 1. The uvw visual field coordinate system of the virtual camera 1 in the virtual space 2 is defined to change to the uvw visual field coordinate system of the HMD 110 in the real space (global coordinate system). Therefore, when the inclination of the HMD 110 changes, the inclination of the virtual camera 1 also changes accordingly. The virtual camera 1 can also move in the virtual space 2 in conjunction with the movement of the user wearing the HMD 110 in the real space.

仮想空間2における仮想カメラ1の位置および傾きに応じて、仮想空間2における仮想カメラ1の向きが決まる。これにより、仮想空間2に展開される仮想空間画像22をユーザが視認する際の基準となる視線(基準視線5)が決まる。制御回路部200は、基準視線5に基づき、仮想空間2における視界領域23を決定する。視界領域23は、仮想空間2のうち、HMD110を装着したユーザの視界に対応する領域である。   The orientation of the virtual camera 1 in the virtual space 2 is determined according to the position and inclination of the virtual camera 1 in the virtual space 2. As a result, a line of sight (reference line of sight 5) as a reference when the user visually recognizes the virtual space image 22 developed in the virtual space 2 is determined. The control circuit unit 200 determines the visual field region 23 in the virtual space 2 based on the reference visual line 5. The visual field area 23 is an area corresponding to the visual field of the user wearing the HMD 110 in the virtual space 2.

図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 visual field region 23. FIG. 5A shows a YZ cross section of the visual field region 23 viewed from the X direction in the virtual space 2. FIG. 5B shows an XZ cross-section of the visual field region 23 viewed from the Y direction in the virtual space 2. The visual field region 23 is defined by the first region 24 (see FIG. 5A) that is a range defined by the reference line of sight 5 and the YZ section of the virtual space 2, and the reference line of sight 5 and the XZ section of the virtual space 2. And a second region 25 (see FIG. 5B) which is a defined range. The control circuit unit 200 sets a range including the polar angle α around the reference line of sight 5 in the virtual space 2 as the first region 24. In addition, a range including the azimuth angle β around the reference line of sight 5 in the virtual space 2 is set as the second region 25.

HMDシステム100は、仮想空間画像22のうち視界領域23に重畳する部分である視界画像26をHMD110のディスプレイ112に表示させることによって、ユーザに仮想空間2を提供する。ユーザがHMD110を動かせば、それに連動して仮想カメラ1も動き、その結果、仮想空間2における視界領域23の位置が変化する。これによりディスプレイ112に表示される視界画像26が、仮想空間画像22のうち、仮想空間2においてユーザが向いた箇所(=視界領域23)に重畳する画像に更新される。したがってユーザは、仮想空間2における所望の箇所を視認することができる。   The HMD system 100 provides the user with the virtual space 2 by causing the display image 112 of the HMD 110 to display a view image 26 that is a portion of the virtual space image 22 that is superimposed on the view region 23. If the user moves the HMD 110, the virtual camera 1 also moves in conjunction with it, and as a result, the position of the visual field area 23 in the virtual space 2 changes. As a result, the view image 26 displayed on the display 112 is updated to an image that is superimposed on a portion of the virtual space image 22 where the user faces (= view region 23). Therefore, the user can visually recognize a desired location in the virtual space 2.

ユーザは、HMD110を装着している間、現実世界を目にすることなく、仮想空間2に展開される仮想空間画像22のみを視認する。そのためHMDシステム100は、仮想空間2への高い没入感をユーザに与えることができる。   While wearing the HMD 110, the user visually recognizes only the virtual space image 22 developed in the virtual space 2 without seeing the real world. Therefore, the HMD system 100 can give a high immersive feeling to the virtual space 2 to the user.

制御回路部200は、HMD110を装着したユーザの現実空間における移動に連動して、仮想カメラ1を仮想空間2内において移動させてもよい。この場合、制御回路部200は、仮想カメラ1の仮想空間2内における位置および向きに基づき、仮想空間2のうちHMD110のディスプレイ112に投影されることによってユーザが視認する視界領域23を特定する。   The control circuit unit 200 may move the virtual camera 1 in the virtual space 2 in conjunction with the movement of the user wearing the HMD 110 in the real space. In this case, the control circuit unit 200 identifies the visual field region 23 that is visually recognized by the user by being projected on the display 112 of the HMD 110 in the virtual space 2 based on the position and orientation of the virtual camera 1 in the virtual space 2.

仮想カメラ1は、右眼用画像を提供する右眼用仮想カメラと、左眼用画像を提供する左眼用仮想カメラとを含むことが好ましい。さらに、2つの仮想カメラには、ユーザが3次元の仮想空間2を認識できるように適切な視差が設定されていることが好ましい。本実施形態では、このような2つの仮想カメラのロール方向が合成されることによって生成されるロール方向(w)がHMD110のロール方向(w)に適合されるような仮想カメラ1のみを、代表して図示および説明するものとする。   The virtual camera 1 preferably includes a right-eye virtual camera that provides a right-eye image and a left-eye virtual camera that provides a left-eye image. Furthermore, it is preferable that appropriate parallax is set for the two virtual cameras so that the user can recognize the three-dimensional virtual space 2. In the present embodiment, only the virtual camera 1 in which the roll direction (w) generated by combining the roll directions of the two virtual cameras is adapted to the roll direction (w) of the HMD 110 is represented. Will be shown and described.

(視線方向の検出)
注視センサ130は、ユーザの右目および左目の視線が向けられる方向(視線方向)を検出するアイトラッキング機能を有する。注視センサ130として、アイトラッキング機能を有する公知のセンサを採用することができる。注視センサ130は、右目用センサおよび左目用センサを備えていることが好ましい。注視センサ130は、たとえば、ユーザの右目および左目に赤外光を照射すると共に、照射光に対する角膜および虹彩からの反射光を受光することによって、各眼球の回転角を検出するセンサでもよい。注視センサ130は、検出した各回転角に基づき、ユーザの視線方向を検知することができる。
(Gaze direction detection)
The gaze sensor 130 has an eye tracking function that detects the direction (gaze direction) in which the line of sight of the user's right eye and left eye is directed. As the gaze sensor 130, a known sensor having an eye tracking function can be employed. The gaze sensor 130 preferably includes a right eye sensor and a left eye sensor. The gaze sensor 130 may be, for example, a sensor that detects the rotation angle of each eyeball by irradiating the user's right eye and left eye with infrared light and receiving reflected light from the cornea and iris with respect to the irradiated light. The gaze sensor 130 can detect the direction of the user's line of sight based on each detected rotation angle.

注視センサ130によって検出されるユーザの視線方向は、ユーザが物体を視認する際の視点座標系における方向である。上述したように、HMD110のuvw視野座標系は、ユーザがディスプレイ112を視認する際の視点座標系に等しい。また、仮想カメラ1のuvw視野座標系は、HMD110のuvw視野座標系に連動している。したがってHMDシステム100では、注視センサ130によって検出されたユーザの視線方向を、仮想カメラ1のuvw視野座標系におけるユーザの視線方向と見なすことができる。   The user's gaze direction detected by the gaze sensor 130 is a direction in the viewpoint coordinate system when the user visually recognizes the object. As described above, the uvw visual field coordinate system of the HMD 110 is equal to the viewpoint coordinate system when the user visually recognizes the display 112. Further, the uvw visual field coordinate system of the virtual camera 1 is linked to the uvw visual field coordinate system of the HMD 110. Therefore, in the HMD system 100, the user's line-of-sight direction detected by the gaze sensor 130 can be regarded as the user's line-of-sight direction in the uvw visual field coordinate system of the virtual camera 1.

図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 gaze sensor 130 detects the line of sight of the right eye and the left eye of the user U. When the user U is looking nearby, the gaze sensor 130 detects the line of sight R1 and L1 of the user U. When the user looks far away, the gaze sensor 130 identifies the line of sight R2 and L2 that are smaller in angle with the roll direction (w) of the HMD 110 than the line of sight R1 and L1 of the user. The gaze sensor 130 transmits the detection value to the control circuit unit 200.

制御回路部200は、視線の検出値として視線R1およびL1を受信した場合、両者の交点である注視点N1を特定する。また、視線R2およびL2を受信した場合も、両者の交点である注視点N2(不図示)を特定する。制御回路部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 control circuit unit 200 specifies the gazing point N1 that is the intersection of the two. Also, when the lines of sight R2 and L2 are received, the gazing point N2 (not shown) that is the intersection of both is specified. The control circuit unit 200 detects the gaze direction N0 of the user U based on the identified gazing point N1. For example, the control circuit unit 200 detects, as the line-of-sight direction N0, the direction in which the straight line passing through the midpoint of the straight line connecting the right eye R and the left eye L of the user U and the gazing point N1 extends. The line-of-sight direction N0 is a direction in which the user U actually points the line of sight with both eyes. The line-of-sight direction N0 is also a direction in which the user U actually directs his / her line of sight with respect to the visual field region 23.

HMDシステム100は、HMDシステム100を構成するいずれかの要素に、マイクおよびスピーカを備えていてもよい。これにより、ユーザは仮想空間2内に対して、音声による指示を与えることができる。また、仮想空間内の仮想テレビにテレビ番組の放送を受信するために、HMDシステム100はいずれかの要素にテレビジョン受像機を含んでいてもよい。また、ユーザが取得した電子メール等を表示させるための、通信機能等を含んでいてもよい。   The HMD system 100 may include a microphone and a speaker in any element constituting the HMD system 100. Thereby, the user can give a voice instruction to the virtual space 2. Further, in order to receive a broadcast of a television program on a virtual television in a virtual space, the HMD system 100 may include a television receiver as any element. Further, it may include a communication function or the like for displaying an electronic mail or the like acquired by the user.

(コントローラ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 controller 300. The controller 300 is an example of an apparatus used to control the movement of a virtual object by detecting the movement of a part of the user's body. As shown in FIG. 1, the controller 300 includes a right controller 320 that the user uses with the right hand and a left controller 330 that the user uses with the left hand. The right controller 320 and the left controller 330 are configured as separate devices. The user moves a right hand holding the right controller 320 and a left hand holding the left controller 330 to move a virtual object (hereinafter referred to as a virtual hand, a virtual right hand, a virtual hand depending on the situation). May be referred to as the left hand, etc.). The method for detecting the movement of a part of the body other than the user's head is not limited to an example using a controller including a sensor attached to the part of the body. An optical method or the like can be applied. For example, by identifying the initial position of a part of the user's body using an external camera and continuously identifying the position of the part of the user's body, the movement of the body part other than the user's head Can be detected. In the following description, detection of movement of a part of the body other than the user's head using the controller 300 will be described in detail.

図1に示すように、右コントローラ320および左コントローラ330は、それぞれ、操作ボタン302、赤外線LED(Light Emitting Diode)304、センサ306、およびトランシーバ308を備えている。右コントローラ320および左コントローラ330は、赤外線LED304およびセンサ306のうちいずれか一方のみを備えていてもよい。以下の説明において、右コントローラ320および左コントローラ330は共通の構成を有するため、右コントローラ320の構成のみを説明する。   As shown in FIG. 1, the right controller 320 and the left controller 330 each include an operation button 302, an infrared LED (Light Emitting Diode) 304, a sensor 306, and a transceiver 308. The right controller 320 and the left controller 330 may include only one of the infrared LED 304 and the sensor 306. In the following description, since the right controller 320 and the left controller 330 have a common configuration, only the configuration of the right controller 320 will be described.

コントローラセンサ140は、右コントローラ320の動きを検出するためのポジション・トラッキング機能を有する。コントローラセンサ140は、現実空間内における右コントローラ320の位置および傾きを検出する。コントローラセンサ140は、右コントローラ320の赤外線LED304から発せられた赤外光を、それぞれ検出する。コントローラセンサ140は、赤外波長領域において画像を撮像する赤外カメラを備えており、この赤外カメラによって撮像した画像のデータに基づき、右コントローラ320の位置および傾きを検出する。   The controller sensor 140 has a position tracking function for detecting the movement of the right controller 320. The controller sensor 140 detects the position and inclination of the right controller 320 in the real space. The controller sensor 140 detects the infrared light emitted from the infrared LED 304 of the right controller 320, respectively. The controller sensor 140 includes an infrared camera that captures an image in the infrared wavelength region, and detects the position and inclination of the right controller 320 based on image data captured by the infrared camera.

コントローラセンサ140の代わりに、右コントローラ320が、センサ306を用いて自身の位置および傾きを検出してもよい。この場合、右コントローラ320の三軸角速度センサ(センサ306)が、右コントローラ320の3つの直交する各軸回りの回転を検出する。右コントローラ320は、各検出値に基づき、右コントローラ320がどちらの方向にどれだけ回転したかを検出し、逐次検出した回転方向と回転量とを累積することによって、右コントローラ320の傾きを算出する。右コントローラ320は、三軸角速度センサの検出値に加えて、三軸磁気センサおよび/または三軸加速度センサからの検出値を併用してもよい。   Instead of the controller sensor 140, the right controller 320 may detect its position and tilt using the sensor 306. In this case, the three-axis angular velocity sensor (sensor 306) of the right controller 320 detects the rotation of the right controller 320 around each of three orthogonal axes. The right controller 320 detects how much the right controller 320 has rotated in which direction based on each detection value, and calculates the inclination of the right controller 320 by accumulating the sequentially detected rotation direction and rotation amount. To do. The right controller 320 may use the detection value from the triaxial magnetic sensor and / or the triaxial acceleration sensor in addition to the detection value of the triaxial angular velocity sensor.

操作ボタン302は、コントローラ300に対するユーザからの操作入力を受け取るように構成された複数のボタン群である。本実施形態では、操作ボタン302は、プッシュ式ボタン、トリガー式ボタン、およびアナログスティックを含む。   The operation buttons 302 are a group of buttons configured to receive operation inputs from the user for the controller 300. In the present embodiment, the operation button 302 includes a push button, a trigger button, and an analog stick.

プッシュ式ボタンは、親指で下向きに押下する動作によって操作するように構成されたボタンである。右コントローラ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 right controller 320 includes thumb buttons 302a and 302b on the top surface 322 as push buttons. Both thumb buttons 302a and 302b are operated (pressed) with the thumb of the right hand. The thumb buttons 302a and 302b are pressed by the thumb of the right hand, or the thumb is placed on the top surface 322, whereby the thumb of the virtual right hand is changed from the extended state to the bent state.

トリガー式ボタンは、人差し指または中指で引き金を引くような動作によって操作するように構成されたボタンである。右コントローラ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 right controller 320 includes an index finger button 302e on the front surface of the grip 324 as a trigger type button. By holding the index finger of the right hand and operating with the index finger button 302e, the virtual right hand index finger is changed from the extended state to the bent state. Further, a middle finger button 302f is provided on a side surface portion of the grip 324. By operating the middle finger button 302f with the middle finger of the right hand, the middle finger, ring finger, and little finger of the virtual right hand are changed to the bent state.

右コントローラ320は、親指ボタン302aおよび302b、人差し指ボタン302e、ならびに中指ボタン302fの押下状態をそれぞれ検出し、これらの検出値を制御回路部200に出力する。   The right controller 320 detects the pressed state of the thumb buttons 302 a and 302 b, the index finger button 302 e, and the middle finger button 302 f, and outputs these detected values to the control circuit unit 200.

本実施形態では、右コントローラ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 right controller 320 can take any value from 0 to 1. For example, when the user has not pressed the thumb button 302a at all, “0” is detected as the pressing state of the thumb button 302a. On the other hand, when the user presses the thumb button 302a completely (deepest), “1” is detected as the pressing state of the thumb button 302a. Thereby, you may adjust the bending condition of each finger | toe in a virtual hand. For example, by defining the state of “0” as a state where the finger is extended and defining the state of “1” as a state where the finger is bent, the user controls the finger of the virtual hand by an intuitive operation. can do.

アナログスティックは、所定のニュートラル位置から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 top surface 322 of the right controller 320. The analog stick 302i is operated with the thumb of the right hand.

右コントローラ320は、グリップ324の両側面から天面322とは反対側の方向へ延びて半円状のリングを形成するフレーム326を備えている。フレーム326の外表面には、複数の赤外線LED304が埋め込まれている。   The right controller 320 includes a frame 326 that extends from both side surfaces of the grip 324 in a direction opposite to the top surface 322 to form a semicircular ring. A plurality of infrared LEDs 304 are embedded on the outer surface of the frame 326.

赤外線LED304は、プレイ中に赤外線を発光する。赤外線LED304から発せられた赤外光は、右コントローラ320の位置および傾きを検出するために利用される。   The infrared LED 304 emits infrared light during play. Infrared light emitted from the infrared LED 304 is used to detect the position and tilt of the right controller 320.

右コントローラ320は、赤外線LED304の代わりに、または赤外線LED304に加えて、さらにセンサ306を内蔵する。センサ306は、たとえば磁気センサ、角速度センサ、若しくは加速度センサのいずれか、またはこれらの組み合わせであってよい。センサ306によって、右コントローラ320の位置および傾きを検出することができる。   The right controller 320 further incorporates a sensor 306 instead of or in addition to the infrared LED 304. The sensor 306 may be, for example, a magnetic sensor, an angular velocity sensor, an acceleration sensor, or a combination thereof. The position and inclination of the right controller 320 can be detected by the sensor 306.

トランシーバ308は、右コントローラ320と、制御回路部200との間でデータを送受信するように構成される。トランシーバ308は、ユーザが操作ボタン302を介して右コントローラ320に与えた操作入力に基づくデータを、制御回路部200へ送信する。また、トランシーバ308は、赤外線LED304の発光を右コントローラ320に指示する命令を、制御回路部200から受信する。さらに、トランシーバ308は、センサ306によって検出した各種の値に対応するデータを、制御回路部200へ送信する。   The transceiver 308 is configured to transmit and receive data between the right controller 320 and the control circuit unit 200. The transceiver 308 transmits data based on the operation input given to the right controller 320 by the user via the operation button 302 to the control circuit unit 200. The transceiver 308 also receives a command for instructing the right controller 320 to emit light from the infrared LED 304 from the control circuit unit 200. Further, the transceiver 308 transmits data corresponding to various values detected by the sensor 306 to the control circuit unit 200.

右コントローラ320は、ユーザの手に振動による触覚フィードバックを伝えるためのバイブレータを備えていてもよい。この構成では、トランシーバ308は、上述した各データの送受信に加えて、バイブレータに触覚フィードバックを行わせるための命令を制御回路部200から受信することができる。   The right controller 320 may include a vibrator for transmitting tactile feedback by vibration to the user's hand. In this configuration, the transceiver 308 can receive a command for causing the vibrator to perform tactile feedback from the control circuit unit 200 in addition to the transmission / reception of each data described above.

(制御回路部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 control circuit unit 200. The control circuit unit 200 controls the virtual space 2 provided to the user by using various data received from the HMD sensor 120, the controller sensor 140, the gaze sensor 130, and the controller 300. Further, the control circuit unit 200 controls image display on the display 112 of the HMD 110. As illustrated in FIG. 8, the control circuit unit 200 includes a detection unit 210, a display control unit 220, a virtual space control unit 230, a storage unit 240, and a communication unit 250. The control circuit unit 200 functions as a detection unit 210, a display control unit 220, a virtual space control unit 230, a storage unit 240, and a communication unit 250 by the cooperation of the hardware illustrated in FIG. The functions of the detection unit 210, the display control unit 220, and the virtual space control unit 230 can be realized mainly by the cooperation of the processor and the memory. The function of the storage unit 240 can be realized mainly by the cooperation of the memory and the storage. The function of the communication unit 250 can be realized mainly by the cooperation of the processor and the communication interface.

検出部210は、制御回路部200に接続される各種のセンサ(HMDセンサ120等)から検出値を受信する。また、検出部210は、必要に応じて、受信した検出値を用いた所定の処理を実行する。検出部210は、HMD検出部211、視線検出部212、およびコントローラ検出部213を備えている。HMD検出部211は、HMD110およびHMDセンサ120から検出値をそれぞれ受信する。視線検出部212は、注視センサ130から検出値を受信する。コントローラ検出部213は、コントローラセンサ140、右コントローラ320、および左コントローラ330から、それぞれの検出値を受信する。   The detection unit 210 receives detection values from various sensors (such as the HMD sensor 120) connected to the control circuit unit 200. Moreover, the detection part 210 performs the predetermined process using the received detected value as needed. The detection unit 210 includes an HMD detection unit 211, a line-of-sight detection unit 212, and a controller detection unit 213. The HMD detection unit 211 receives detection values from the HMD 110 and the HMD sensor 120, respectively. The line-of-sight detection unit 212 receives the detection value from the gaze sensor 130. The controller detection unit 213 receives detection values from the controller sensor 140, the right controller 320, and the left controller 330.

表示制御部220は、HMD110のディスプレイ112への画像表示を制御する。表示制御部220は、仮想カメラ制御部221、視界領域決定部222、および視界画像生成部223を備えている。仮想カメラ制御部221は、仮想空間2内に仮想カメラ1を配置する。仮想カメラ制御部221は、仮想空間2内における仮想カメラ1の挙動を制御する。視界領域決定部222は、視界領域23を決定する。視界画像生成部223は、決定された視界領域23に基づき、ディスプレイ112に表示される視界画像26を生成する。   The display control unit 220 controls image display on the display 112 of the HMD 110. The display control unit 220 includes a virtual camera control unit 221, a visual field region determination unit 222, and a visual field image generation unit 223. The virtual camera control unit 221 arranges the virtual camera 1 in the virtual space 2. The virtual camera control unit 221 controls the behavior of the virtual camera 1 in the virtual space 2. The view area determination unit 222 determines the view area 23. The view image generation unit 223 generates a view image 26 displayed on the display 112 based on the determined view area 23.

仮想空間制御部230は、ユーザに提供される仮想空間2を制御する。仮想空間制御部230は、仮想空間規定部231、仮想手制御部232、入力制御部233、および入力決定部234を備えている。   The virtual space control unit 230 controls the virtual space 2 provided to the user. The virtual space control unit 230 includes a virtual space defining unit 231, a virtual hand control unit 232, an input control unit 233, and an input determination unit 234.

仮想空間規定部231は、ユーザに提供される仮想空間2を表す仮想空間データを生成することによって、HMDシステム100における仮想空間2を規定する。仮想手制御部232は、ユーザによる右コントローラ320および左コントローラ330の操作に応じたユーザの各仮想手(仮想右手および仮想左手)を仮想空間2内に配置する。仮想手制御部232は、仮想空間2内における各仮想手の挙動を制御する。入力制御部233は、入力に用いる仮想オブジェクトである入力オブジェクトを仮想空間2内に配置する。入力オブジェクトには入力内容が対応付けられている。入力制御部233は、入力の決定に用いる仮想オブジェクトである決定オブジェクトを仮想空間2内に配置する。入力決定部234は、入力オブジェクトと決定オブジェクトとの位置関係から入力内容を決定する。   The virtual space defining unit 231 defines the virtual space 2 in the HMD system 100 by generating virtual space data representing the virtual space 2 provided to the user. The virtual hand control unit 232 arranges each virtual hand (virtual right hand and virtual left hand) of the user in the virtual space 2 according to the operation of the right controller 320 and the left controller 330 by the user. The virtual hand control unit 232 controls the behavior of each virtual hand in the virtual space 2. The input control unit 233 arranges an input object, which is a virtual object used for input, in the virtual space 2. Input contents are associated with input objects. The input control unit 233 arranges a determined object, which is a virtual object used for input determination, in the virtual space 2. The input determination unit 234 determines the input content from the positional relationship between the input object and the determination object.

記憶部240は、制御回路部200が仮想空間2をユーザに提供するために用いる各種のデータを格納している。記憶部240は、雛形格納部241、コンテンツ格納部242、およびオブジェクト格納部243を備えている。雛形格納部241は、仮想空間2の雛形を表す各種の雛形データを格納している。コンテンツ格納部242は、仮想空間2において再生可能な各種のコンテンツを格納している。オブジェクト格納部243は、入力に用いられる入力オブジェクトおよび決定オブジェクトを格納している。   The storage unit 240 stores various data used by the control circuit unit 200 to provide the virtual space 2 to the user. The storage unit 240 includes a template storage unit 241, a content storage unit 242, and an object storage unit 243. The template storage unit 241 stores various template data representing the template of the virtual space 2. The content storage unit 242 stores various types of content that can be reproduced in the virtual space 2. The object storage unit 243 stores input objects and decision objects used for input.

雛形データは、仮想空間2の空間構造を規定する空間構造データを有する。空間構造データは、たとえば、中心21を中心とする360°の全天球の空間構造を規定するデータである。雛形データは、仮想空間2のXYZ座標系を規定するデータをさらに有する。雛形データは、天球を構成する各メッシュのXYZ座標系における位置を特定する座標データをさらに有する。また、雛形データは、仮想空間2内に仮想オブジェクトを配置可能であるか否かを示すフラグをさらに有する。   The template data has spatial structure data that defines the spatial structure of the virtual space 2. The spatial structure data is data that defines the spatial structure of a 360-degree celestial sphere centered on the center 21, for example. The template data further includes data defining the XYZ coordinate system of the virtual space 2. The template data further includes coordinate data for specifying the position of each mesh constituting the celestial sphere in the XYZ coordinate system. The template data further includes a flag indicating whether or not a virtual object can be arranged in the virtual space 2.

コンテンツは、仮想空間2において再生可能なコンテンツである。本実施形態では、このコンテンツはゲームコンテンツである。コンテンツは、ゲームの背景画像、および、ゲームに登場する仮想オブジェクト(キャラクタ、アイテム等)を規定するデータを少なくとも有する。各コンテンツには、HMD110の初期状態(起動時)にユーザに見せる画像を向いた初期方向が、予め規定されている。   The content is content that can be reproduced in the virtual space 2. In the present embodiment, this content is game content. The content includes at least data defining a background image of the game and virtual objects (characters, items, etc.) appearing in the game. In each content, an initial direction facing an image to be shown to the user in the initial state (at the time of activation) of the HMD 110 is defined in advance.

通信部250は、ネットワークNWを介して外部機器400(たとえばゲームサーバ)との間でデータを送受信する。   The communication unit 250 transmits / receives data to / from an external device 400 (for example, a game server) via the network NW.

(仮想空間2の提供処理)
図9は、HMDシステム100が仮想空間2をユーザに提供する処理の流れを示すシーケンス図である。仮想空間2は、基本的に、HMD110および制御回路部200の協働によってユーザに提供される。図9に示す処理が開始されると、まず、ステップ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 HMD system 100 provides the virtual space 2 to the user. The virtual space 2 is basically provided to the user through the cooperation of the HMD 110 and the control circuit unit 200. When the process shown in FIG. 9 is started, first, in step S1, the virtual space defining unit 231 generates virtual space data representing the virtual space 2 provided to the user, thereby defining the virtual space 2. The generation procedure is as follows. First, the virtual space defining unit 231 defines the prototype of the virtual space 2 by acquiring the template data of the virtual space 2 from the template storage unit 241. The virtual space defining unit 231 further acquires content to be played back in the virtual space 2 from the content storage unit 242. In the present embodiment, this content may be game content.

仮想空間規定部231は、取得した雛形データに、取得したコンテンツを適合することによって、仮想空間2を規定する仮想空間データを生成する。仮想空間規定部231は、仮想空間データにおいて、仮想空間2の天球を構成する各メッシュの管理データに、コンテンツに含まれる背景画像を構成する各部分画像を適宜関連付ける。仮想空間規定部231は、コンテンツに規定される初期方向を仮想空間2のXYZ座標系におけるZ方向に合致させるように、各部分画像と各メッシュとを関連付けることが好ましい。   The virtual space defining unit 231 generates virtual space data defining the virtual space 2 by adapting the acquired content to the acquired template data. The virtual space defining unit 231 appropriately associates each partial image constituting the background image included in the content with management data of each mesh constituting the celestial sphere of the virtual space 2 in the virtual space data. The virtual space defining unit 231 preferably associates each partial image with each mesh so that the initial direction defined in the content matches the Z direction in the XYZ coordinate system of the virtual space 2.

仮想空間規定部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 virtual space 2 are set in each management data. Thus, each virtual object is arranged at the position of the coordinate in the virtual space 2.

その後、ユーザによってHMD110が起動されると、ステップS2において、HMDセンサ120が、HMD110の初期状態における位置および傾きを検出する。ステップS3において、検出値を制御回路部200に出力する。HMD検出部211は、この検出値を受信する。この後、ステップS4において、仮想カメラ制御部221は、仮想空間2において仮想カメラ1を初期化する。   After that, when the HMD 110 is activated by the user, the HMD sensor 120 detects the position and inclination of the HMD 110 in the initial state in step S2. In step S3, the detected value is output to the control circuit unit 200. The HMD detection unit 211 receives this detection value. Thereafter, in step S <b> 4, the virtual camera control unit 221 initializes the virtual camera 1 in the virtual space 2.

初期化の手順は次の通りである。まず仮想カメラ制御部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 camera control unit 221 places the virtual camera 1 at an initial position in the virtual space 2 (eg, the center 21 in FIG. 4). Next, the orientation of the virtual camera 1 in the virtual space 2 is set. At that time, the virtual camera control unit 221 specifies the uvw visual field coordinate system of the HMD 110 in the initial state based on the detection value from the HMD sensor 120 and sets the uvw visual field coordinate system that matches the uvw visual field coordinate system of the HMD 110 to the virtual camera 1. The orientation of the virtual camera 1 may be set by setting to. When setting the uvw visual field coordinate system for the virtual camera 1, the virtual camera control unit 221 adapts the roll direction (w axis) of the virtual camera 1 to the Z direction (Z axis) of the XYZ coordinate system. Specifically, the virtual camera control unit 221 matches the direction obtained by projecting the roll direction of the virtual camera 1 on the XZ plane with the Z direction of the XYZ coordinate system, and the roll direction of the virtual camera 1 with respect to the XZ plane. Is matched with the inclination of the roll direction of the HMD 110 with respect to the horizontal plane. By such adaptation processing, the roll direction of the virtual camera 1 in the initial state is adapted to the initial direction of the content, so that the horizontal direction that the user first faces after the start of content reproduction matches the initial direction of the content. Can be made.

仮想カメラ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 virtual camera 1 is completed, the visual field region determination unit 222 determines the visual field region 23 in the virtual space 2 based on the uvw visual field coordinate system of the virtual camera 1. Specifically, the roll direction (w axis) of the uvw visual field coordinate system of the virtual camera 1 is specified as the reference visual line 5 of the user, and the visual field region 23 is determined based on the reference visual line 5. In step S <b> 5, the visual field image generation unit 223 processes the virtual space data, and corresponds to a portion projected to the visual field region 23 in the virtual space 2 out of the entire virtual space image 22 developed in the virtual space 2. A visual field image 26 to be generated is generated (rendered). In step S6, the visual field image generation unit 223 outputs the generated visual field image 26 to the HMD 110 as an initial visual field image. In step S <b> 7, the HMD 110 displays the received initial view image on the display 112. Thereby, the user visually recognizes the initial view image.

その後、ステップS8において、HMDセンサ120が、HMD110の現在の位置および傾きを検出して、ステップS9において、これらの検出値を制御回路部200に出力する。HMD検出部211は、各検出値を受信する。仮想カメラ制御部221は、HMD110の位置および傾きの検出値に基づき、HMD110における現在のuvw視野座標系を特定する。さらに、ステップS10において、仮想カメラ制御部221は、XYZ座標系におけるuvw視野座標系のロール方向(w軸)を、HMD110の視界方向として特定する。   Thereafter, in step S8, the HMD sensor 120 detects the current position and inclination of the HMD 110, and outputs these detected values to the control circuit unit 200 in step S9. The HMD detection unit 211 receives each detection value. The virtual camera control unit 221 specifies the current uvw visual field coordinate system in the HMD 110 based on the position and tilt detection values of the HMD 110. Furthermore, in step S <b> 10, the virtual camera control unit 221 specifies the roll direction (w axis) of the uvw visual field coordinate system in the XYZ coordinate system as the visual field direction of the HMD 110.

本実施形態では、ステップ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 camera control unit 221 specifies the identified visual field direction of the HMD 110 as the user's reference visual line 5 in the virtual space 2. In step S <b> 12, the virtual camera control unit 221 controls the virtual camera 1 based on the identified reference line of sight 5. If the position (starting point) and direction of the reference line of sight 5 are the same as the initial state of the virtual camera 1, the virtual camera control unit 221 maintains the position and direction of the virtual camera 1 as they are. On the other hand, if the position (starting point) and / or direction of the reference line of sight 5 has changed from the initial state of the virtual camera 1, the position and / or inclination of the virtual camera 1 in the virtual space 2 is changed to the reference line of sight after the change. Change the position and / or inclination according to 5. Further, the uvw visual field coordinate system is reset for the virtual camera 1 after the control.

ステップ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 area determination unit 222 determines the visual field area 23 in the virtual space 2 based on the identified reference visual line 5. Thereafter, in step S <b> 14, the visual field image generation unit 223 processes (superimposes) the virtual space data on the visual field region 23 in the virtual space 2 among the entire virtual space image 22 developed in the virtual space 2 by processing the virtual space data. A view field image 26 that is a portion to be generated is generated (rendered). In step S15, the visual field image generation unit 223 outputs the generated visual field image 26 to the HMD 110 as a visual field image for update. In step S <b> 16, the HMD 110 updates the view image 26 by displaying the received view image 26 on the display 112. Thereby, if a user moves HMD110, the view image 26 will be updated in response to it.

(入力処理)
前述のように、入力制御部233は、入力オブジェクトおよび決定オブジェクトを生成する。ユーザは、入力オブジェクトを操作することにより入力操作を行うことができる。より詳細には、ユーザは、入力操作を行う場合、まず入力オブジェクトを仮想身体によって選択する。次に、ユーザは、選択した入力オブジェクトを決定領域に移動させる。決定領域は決定オブジェクトによって定義される領域である。入力決定部234は、入力オブジェクトが決定領域に移動させられたとき、入力内容を決定する。
(Input processing)
As described above, the input control unit 233 generates an input object and a decision object. The user can perform an input operation by operating the input object. More specifically, when performing an input operation, the user first selects an input object by a virtual body. Next, the user moves the selected input object to the determination area. A decision area is an area defined by a decision object. The input determination unit 234 determines the input content when the input object is moved to the determination area.

図10は、HMDシステム100が仮想空間2において、入力操作を受け付ける処理の流れを示すシーケンス図である。   FIG. 10 is a sequence diagram illustrating a flow of processing in which the HMD system 100 receives an input operation in the virtual space 2.

図10のステップS21において、入力制御部233は、入力オブジェクトおよび決定オブジェクトを含む入力受付画像を生成する。ステップS22において、視界画像生成部223は、入力オブジェクトおよび決定オブジェクトを含む視界画像をHMD110に出力する。ステップS23において、HMD110は、受信した視界画像をディスプレイ112に表示することによって、視界画像を更新する。   In step S21 of FIG. 10, the input control unit 233 generates an input reception image including the input object and the determination object. In step S <b> 22, the visual field image generation unit 223 outputs a visual field image including the input object and the determination object to the HMD 110. In step S <b> 23, the HMD 110 updates the view image by displaying the received view image on the display 112.

ステップS24において、コントローラセンサ140は、右コントローラ320の位置および傾き、ならびに、左コントローラ330の位置および傾きをそれぞれ検出する。ステップS25において、コントローラセンサ140は、各検出値を制御回路部200に送信する。コントローラ検出部213は、これらの検出値を受信する。ステップS26において、コントローラ300が、各ボタンの押下状態を検出する。ステップS27において、右コントローラ320および左コントローラ330は、各検出値を制御回路部200に送信する。コントローラ検出部213は、これらの検出値を受信する。ステップS28において、仮想手制御部232が、コントローラ検出部213が受信した各検出値を用いて、ユーザの仮想手を、仮想空間2に生成する。ステップS29において、仮想手制御部232は、仮想手としての仮想右手HRおよび仮想左手HLを含む視界画像をHMD110に出力する。ステップS30において、HMD110は、受信した視界画像をディスプレイ112に表示することによって、視界画像を更新する。   In step S24, the controller sensor 140 detects the position and inclination of the right controller 320 and the position and inclination of the left controller 330, respectively. In step S <b> 25, the controller sensor 140 transmits each detection value to the control circuit unit 200. The controller detection unit 213 receives these detection values. In step S26, the controller 300 detects the pressed state of each button. In step S <b> 27, the right controller 320 and the left controller 330 transmit each detection value to the control circuit unit 200. The controller detection unit 213 receives these detection values. In step S <b> 28, the virtual hand control unit 232 generates the user's virtual hand in the virtual space 2 using each detection value received by the controller detection unit 213. In step S29, the virtual hand control unit 232 outputs a view field image including the virtual right hand HR and the virtual left hand HL as virtual hands to the HMD 110. In step S <b> 30, the HMD 110 updates the view image by displaying the received view image on the display 112.

ステップS31において、入力制御部233および入力決定部234は、入力処理を実行する。入力処理の詳細は後述する。   In step S31, the input control unit 233 and the input determination unit 234 execute input processing. Details of the input processing will be described later.

ステップS32において、視界画像生成部223は入力処理中の視界画像をHMD110に出力する。ステップS33において、HMD110は、受信した視界画像をディスプレイ112に表示することによって、視界画像を更新する。   In step S <b> 32, the visual field image generation unit 223 outputs the visual field image being input to the HMD 110. In step S <b> 33, the HMD 110 updates the view image by displaying the received view image on the display 112.

(入力処理の一例の流れ)
図11を参照して、ステップS31における入力処理の一例の流れについて説明する。図11は、入力処理の一例の流れを示すシーケンス図である。
(Flow of an example of input processing)
With reference to FIG. 11, the flow of an example of the input process in step S31 is demonstrated. FIG. 11 is a sequence diagram illustrating an exemplary flow of input processing.

ステップS101では、入力制御部233は、入力オブジェクトが移動したことを検出する。ステップS102では、入力制御部233は、入力オブジェクトが決定領域に移動したか否かを判定する。入力制御部233は、入力オブジェクトが決定領域に移動したと判定した場合(S102でYES)、ステップS103に進む。入力制御部233は、決定領域へ移動したか否かを、入力オブジェクトが決定オブジェクトと所定の位置関係となった否かにより判定してもよい。たとえば、入力制御部233は、入力オブジェクトが決定オブジェクトと接触したとき、所定の位置関係となったと判定してもよい。   In step S101, the input control unit 233 detects that the input object has moved. In step S102, the input control unit 233 determines whether the input object has moved to the determination area. If the input control unit 233 determines that the input object has moved to the determination area (YES in S102), the process proceeds to step S103. The input control unit 233 may determine whether or not the input object has moved to the determination area based on whether or not the input object has a predetermined positional relationship with the determination object. For example, the input control unit 233 may determine that the predetermined positional relationship has been reached when the input object comes into contact with the determined object.

ステップS103では、入力決定部234は、決定領域に移動したときの入力オブジェクトに対応付けられた入力対象を入力する内容に決定する。仮想空間制御部230は、決定された入力内容を受け付ける。   In step S103, the input determination unit 234 determines the content to be input as the input target associated with the input object when moving to the determination area. The virtual space control unit 230 receives the determined input content.

(入力処理の他の例の流れ)
図12を参照して、ステップS31における入力処理の他の例の流れについて説明する。図12は、入力処理の他の例の流れを示すシーケンス図である。
(Flow of other examples of input processing)
With reference to FIG. 12, the flow of another example of the input process in step S31 will be described. FIG. 12 is a sequence diagram showing the flow of another example of input processing.

ステップS201では、入力制御部233は、入力オブジェクトが移動したことを検出する。ステップS202では、入力制御部233は、入力オブジェクトが決定領域に移動したか否かを判定する。入力オブジェクトが決定領域に移動したと判定した場合(S202でYES)、ステップS203に進む。ステップS203では、入力決定部234は、決定領域に移動したときの入力オブジェクトに対応付けられた入力対象を入力する内容に仮決定する。   In step S201, the input control unit 233 detects that the input object has moved. In step S202, the input control unit 233 determines whether the input object has moved to the determination area. If it is determined that the input object has moved to the determined area (YES in S202), the process proceeds to step S203. In step S <b> 203, the input determination unit 234 temporarily determines the content to be input as the input target associated with the input object when moving to the determination area.

ステップS204では、入力決定部234は、仮決定された入力対象が所定数となったか否かを判定する。入力対象が所定数に達していない場合(S204でNO)、ステップS201に戻る。一方、所定数に達している場合(S204でYES)、ステップS205で、入力決定部234は、入力が完了したとして、仮決定した所定数の入力対象を入力する内容に決定する。これが最終入力決定となる。仮想空間制御部230は、決定された入力内容を受け付ける。   In step S204, the input determination unit 234 determines whether or not the predetermined number of input targets has been provisionally determined. If the number of input objects has not reached the predetermined number (NO in S204), the process returns to step S201. On the other hand, if the predetermined number has been reached (YES in S204), in step S205, the input determining unit 234 determines that the input is completed, and the provisionally determined predetermined number of input targets are input. This is the final input decision. The virtual space control unit 230 receives the determined input content.

(入力処理の例)
次に、図13〜17を参照して、前述したステップS31における入力処理の例を説明する。
(Example of input processing)
Next, an example of the input process in step S31 described above will be described with reference to FIGS.

(入力処理例A)
図13を参照して、入力処理例Aについて説明する。図13は、入力処理例Aを示す図である。入力処理例Aでは、入力オブジェクトにおける第1面が決定オブジェクトと接触したとき、第1面と所定の位置関係にある第2面と対応付けられた入力対象が入力されたことを受け付ける処理の例を示す。
(Input processing example A)
An input processing example A will be described with reference to FIG. FIG. 13 is a diagram illustrating an input processing example A. In the input processing example A, when the first surface of the input object comes into contact with the determined object, an example of processing for accepting input of an input target associated with the second surface in a predetermined positional relationship with the first surface Indicates.

入力処理例Aでは、入力オブジェクトとしてサイコロSK、決定オブジェクトとして台KRが設定されている。ユーザによる入力操作に従い、表示例1301から表示例1302へと進む。   In the input processing example A, a dice SK is set as an input object, and a table KR is set as a decision object. The display example 1301 is advanced to the display example 1302 in accordance with the input operation by the user.

サイコロSKは、複数の面を含み、複数の面それぞれに異なる入力対象が関連付けられている。具体的には、入力対象として「和」、「洋」、「中」が対応付けられている。「和」は和食、「洋」は洋食、「中」は中華を示す。   The dice SK includes a plurality of surfaces, and different input objects are associated with each of the plurality of surfaces. Specifically, “sum”, “western”, and “middle” are associated as input targets. “Japanese” indicates Japanese food, “Western” indicates Western food, and “Middle” indicates Chinese.

表示例1301に示すように、視界画像モニタMTに「今日のランチは何が食べたい?」と表示されている。ユーザは仮想右手HRにより、サイコロSKを移動させて、台KRに乗せることにより、入力操作を行う。   As shown in a display example 1301, “What do you want to eat today's lunch?” Is displayed on the view image monitor MT. The user performs an input operation by moving the dice SK with the virtual right hand HR and placing it on the table KR.

表示例1302では、サイコロSKの下面が台KRと接触し、「洋」と記載されている面が上面となっている。このとき、サイコロSKの上面と対応付けられた「洋」が入力される内容となる。すなわち、「今日のランチは何が食べたい?」との問いに対し「洋食」と回答したことになる。表示例1302では、「洋食」との回答に対し、モニタMTに「今日のおススメの洋食屋はこちら」と表示している。これは、ユーザの回答に対し、次の段階の提案をしていることになる。   In the display example 1302, the lower surface of the dice SK is in contact with the table KR, and the surface described as “Western” is the upper surface. At this time, “Western” associated with the upper surface of the dice SK is input. In other words, in response to the question “What do you want to eat for today's lunch?”, You answered “Western food”. In the display example 1302, in response to the answer “Western food”, “Today's recommended Western food shop is here” is displayed on the monitor MT. This is a proposal for the next stage in response to the user's answer.

なお、上記の例では、接触した面と所定の位置関係にある面と対応付けられた入力対象を受け付ける構成を挙げた。入力対象はこれに限られるものではなく、接触した面と対応付けられた入力対象を受け付ける構成としてもよい。   In the above example, a configuration has been described in which an input target associated with a surface in contact with a surface in a predetermined positional relationship is received. The input object is not limited to this, and may be configured to receive an input object associated with the contacted surface.

また、入力オブジェクトの例としては、サイコロSKのような面を備えたものではなく、たとえば、入力対象が対応付けられたピンが球体に刺さった構造のものであってもよい。この場合、ピンが台KRと接触することにより、当該ピンと対応付けられた入力対象の入力を受け付けるものであってもよい。   Moreover, as an example of an input object, it does not have a surface like a dice SK, but may have a structure in which, for example, a pin associated with an input target is stuck in a sphere. In this case, an input of an input target associated with the pin may be received when the pin comes into contact with the table KR.

(入力処理例B)
図14〜16を参照して、入力処理例Bについて説明する。図14〜16は、入力処理例Bを示す図である。入力処理例Bでは、仮想空間に規定される領域と複数の文字オブジェクトの少なくとも1つの位置とが特定の位置関係となったとき、複数の文字オブジェクトの少なくとも1つが決定領域に移動させられたことを検出し、文字オブジェクトに関連付けられた文字が入力されたことを受け付ける処理の例を示す。
(Input processing example B)
An input processing example B will be described with reference to FIGS. 14 to 16 are diagrams illustrating an input processing example B. In input processing example B, when the area defined in the virtual space and at least one position of the plurality of character objects are in a specific positional relationship, at least one of the plurality of character objects has been moved to the determination area An example of a process of detecting that a character associated with a character object has been input is shown.

入力処理Bでは、入力オブジェクトとして文字オブジェクトCB、決定オブジェクトとしてモニタMTが設定されている。文字オブジェクトCBは複数存在し、それぞれが異なる文字と対応付けられている。   In the input process B, a character object CB is set as an input object, and a monitor MT is set as a decision object. There are a plurality of character objects CB, each of which is associated with a different character.

入力処理例Bでは、ユーザによる入力操作に従い、表示例1401から表示例1402、表示例1403、…表示例1405へと進む。   In the input processing example B, the process proceeds from the display example 1401 to the display example 1402, the display example 1403,.

表示例1401に示すように、モニタMTに「これは何?」と表示されている。また、文字オブジェクトCBが表示されている。次に、表示例1402に示すように、モニタMTに魚の絵が表示される。その後、ユーザは仮想右手HRにより、文字オブジェクトCBをモニタMTに移動させることにより、それぞれの文字を入力する。   As shown in a display example 1401, “What is this?” Is displayed on the monitor MT. In addition, a character object CB is displayed. Next, as shown in a display example 1402, a fish picture is displayed on the monitor MT. Thereafter, the user inputs each character by moving the character object CB to the monitor MT with the virtual right hand HR.

表示例1403では、ユーザが仮想右手HRを用いて、「さ」、「か」、「な」と対応付けられた文字オブジェクトCBをこの順序でモニタMTに移動させている。これにより、表示例1404に示すように、「さ」、「か」、「な」が入力される。すなわち、モニタMTに「これは何?」と表示され、その後、魚の絵が表示されたことに対して「さかな」と回答したことになる。最後に、表示例1405に示すように、モニタMTに「正解」と表示される。   In the display example 1403, the user uses the virtual right hand HR to move the character objects CB associated with “sa”, “ka”, and “na” to the monitor MT in this order. Thereby, as shown in the display example 1404, “sa”, “ka”, and “na” are input. That is, “What is this?” Is displayed on the monitor MT, and after that, a fish picture is displayed, and “Sakana” is answered. Finally, as shown in a display example 1405, “correct answer” is displayed on the monitor MT.

なお、上記では、仮想右手HRを用いて、文字オブジェクトCBをモニタMTに移動させることによって、入力操作を行う例を説明したが、これに限られるものではない。仮想右手HRによって、文字オブジェクトCBを投げることによって、モニタMTに当てることにより、文字オブジェクトCBを移動させてもよい。また、決定オブジェクトはモニタMTではなく、穴のようなものであってもよい。当該穴に文字オブジェクトCBを落とすことにより入力操作を行ってもよい。   In the above description, the example in which the input operation is performed by moving the character object CB to the monitor MT using the virtual right hand HR has been described. However, the present invention is not limited to this. The character object CB may be moved by throwing the character object CB with the virtual right hand HR and hitting the monitor MT. Further, the decision object may be a hole instead of the monitor MT. The input operation may be performed by dropping the character object CB into the hole.

(入力処理例C)
図17〜19を参照して、入力処理例Cについて説明する。図17〜19は、入力処理例Cを示す図である。入力処理例Cでは、仮想空間に配置された入力空間である複数の区域に、所定数の文字オブジェクトが入れられたとき、区域に入れられた文字オブジェクトに関連付けられた入力対象が入力されたことを受け付ける処理の例を示す。
(Input processing example C)
An input processing example C will be described with reference to FIGS. 17 to 19 are diagrams illustrating an input processing example C. In the input processing example C, when a predetermined number of character objects are placed in a plurality of areas that are input spaces arranged in the virtual space, an input target associated with the character objects placed in the area is input. An example of the process of accepting is shown.

入力処理例Cでは、入力オブジェクトとして文字オブジェクトCB、決定オブジェクトとして入力領域KLが設定されている。文字オブジェクトCBは複数存在し、それぞれが異なる文字と対応付けられている。入力領域KLには文字オブジェクトCBを配置可能な区域が複数存在している。   In the input processing example C, a character object CB is set as an input object, and an input area KL is set as a decision object. There are a plurality of character objects CB, each of which is associated with a different character. In the input area KL, there are a plurality of areas where the character object CB can be arranged.

入力処理例Cでは、ユーザによる入力操作に従い、表示例1701から表示例1702、表示例1703、…表示例1406へと進む。   In the input processing example C, the display example 1701 is advanced to the display example 1702, the display example 1703,.

表示例1701に示すように、モニタMTに「これは何?」と表示されている。また、文字オブジェクトCBが表示されている。さらに、入力領域KLが表示されている。次に、表示例1702に示すように、モニタMTに魚の絵が表示される。その後、ユーザは仮想右手HRにより、文字オブジェクトCBを入力領域KLに移動させることにより、それぞれの文字を入力する。表示例1703では、ユーザが仮想右手HRを用いて、「さ」、「か」、「な」と対応付けられた文字オブジェクトCBを、入力領域KLにおけるそれぞれの区域に移動させている。ここでは、区域の左側から、「さ」、「か」、「な」に対応付けられた文字オブジェクトCBを入力領域KLにおけるそれぞれの区域に移動させている。これにより、表示例1704に示すように、入力領域KLの各区域に「さ」、「か」、「な」と入力される。これにより、表示例1705に示すように、「さかな」が入力される。すなわち、モニタMTに「これは何?」と表示され、その後、魚の絵が表示されたことに対して「さかな」と回答したことになる。最後に、表示例1706に示すように、モニタMTに「正解」と表示される。   As shown in a display example 1701, “What is this?” Is displayed on the monitor MT. In addition, a character object CB is displayed. Further, an input area KL is displayed. Next, as shown in a display example 1702, a fish picture is displayed on the monitor MT. Thereafter, the user inputs each character by moving the character object CB to the input area KL with the virtual right hand HR. In the display example 1703, the user uses the virtual right hand HR to move the character objects CB associated with “sa”, “ka”, and “na” to the respective areas in the input area KL. Here, the character objects CB associated with “sa”, “ka”, and “na” are moved to the respective areas in the input area KL from the left side of the area. As a result, as shown in the display example 1704, “sa”, “ka”, and “na” are input to each section of the input area KL. As a result, as shown in a display example 1705, “fish” is input. That is, “What is this?” Is displayed on the monitor MT, and after that, a fish picture is displayed, and “Sakana” is answered. Finally, as shown in a display example 1706, “correct answer” is displayed on the monitor MT.

なお、仮想オブジェクトとの接触による操作を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 (detection unit 210, display control unit 220, virtual space control unit 230, storage unit 240, and communication unit 250) of the control circuit unit 200 is a logic circuit (hardware) formed in an integrated circuit (IC chip) or the like. ) Or by software using a CPU (Central Processing Unit).

後者の場合、制御ブロックは、各機能を実現するソフトウェアであるプログラムの命令を実行する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)頭部にヘッドマウントディスプレイ(以下、HMD)を装着したユーザに仮想空間を提供する方法であって、 前記ヘッドマウントディスプレイの動きに基づいて、前記仮想空間のうち前記ヘッドマウントディスプレイに出力される視界画像を生成するステップと、前記仮想空間に、入力対象が関連付けられた入力オブジェクトを生成するステップと、前記仮想空間に、前記ユーザの前記頭部以外の身体の一部の動きに連動する仮想身体を生成するステップと、前記仮想身体によって前記入力オブジェクトが前記仮想空間における決定領域に移動させられたことを検出するステップと、前記入力オブジェクトが前記決定領域に移動させられたことが検出された場合、前記入力オブジェクトに関連付けられた前記入力対象が入力されたことを受け付けるステップと、を含む、方法。入力対象オブジェクトが決定領域に移動されると、上記入力対象オブジェクトに関連付けられた入力を受け付けることができるので、仮想空間で容易に入力を受け付けることができる。これにより、仮想体験をさらに改善し得る。   (Item 1) A method for providing a virtual space to a user wearing a head-mounted display (hereinafter, HMD) on the head, wherein the head-mounted display is included in the virtual space based on the movement of the head-mounted display. A step of generating a visual field image to be output; a step of generating an input object associated with an input target in the virtual space; and a movement of a part of the body other than the head of the user in the virtual space. Generating an interlocking virtual body; detecting that the input object has been moved to a decision area in the virtual space by the virtual body; and moving the input object to the decision area. If detected, the input object associated with the input object is input. Comprising the steps of: accepting the method. When the input target object is moved to the determination area, the input associated with the input target object can be received, so that the input can be easily received in the virtual space. This can further improve the virtual experience.

(項目2)前記入力オブジェクトは複数の部分を含み、前記複数の部分それぞれに異なる前記入力対象が関連付けられており、前記検出するステップでは、前記仮想空間に配置される決定オブジェクトに前記入力オブジェクトが接触したとき、前記入力オブジェクトが前記決定領域に移動させられたことを検出し、前記受け付けるステップでは、前記決定オブジェクトに前記入力オブジェクトが接触したことが検出されたときの前記入力オブジェクトの前記複数の部分のいずれかに関連付けられた前記入力対象が入力されたことを受け付ける、項目1に記載の方法。入力オブジェクトが決定オブジェクトに接触することにより、入力を受け付けることができるので、容易に入力を受け付けることができる。   (Item 2) The input object includes a plurality of parts, and each of the plurality of parts is associated with a different input target, and in the detecting step, the input object is included in a decision object arranged in the virtual space. When the contact is detected, the input object is detected to be moved to the determination area, and in the receiving step, the plurality of input objects when the input object is detected to be in contact with the determination object are detected. The method according to item 1, wherein the method accepts that the input object associated with any of the parts has been input. Since the input can be received by the input object coming into contact with the determined object, the input can be easily received.

(項目3)前記複数の部分は、複数の面であり、前記受け付けるステップでは、前記入力オブジェクトにおける第1面が前記決定オブジェクトと接触したとき、前記第1面と所定の位置関係にある第2面と対応付けられた前記入力対象が入力されたことを受け付ける、項目2に記載の方法。接触面と所定の位置関係にある面と対応付けられた入力対象の入力を受け付けるので、入力対象をユーザに容易に認識させることができる。   (Item 3) The plurality of portions are a plurality of surfaces, and in the receiving step, when the first surface of the input object comes into contact with the determined object, the second surface is in a predetermined positional relationship with the first surface. The method according to item 2, wherein the input object associated with a surface is received. Since the input of the input target associated with the surface having a predetermined positional relationship with the contact surface is received, the input target can be easily recognized by the user.

(項目4)前記複数の部分は、複数の面であり、前記受け付けるステップでは、前記入力オブジェクトにおける第1面が前記決定オブジェクトと接触したとき、前記第1面と対応付けられた前記入力対象が入力されたことを受け付ける、項目2に記載の方法。決定オブジェクトと接触した面と対応付けられた入力対象の入力を受け付けるので、入力対象をユーザに容易に認識させることができる。   (Item 4) The plurality of portions are a plurality of surfaces, and in the receiving step, when the first surface of the input object comes into contact with the determined object, the input target associated with the first surface is 3. The method according to item 2, wherein the input is accepted. Since the input of the input target associated with the surface in contact with the decision object is received, the input target can be easily recognized by the user.

(項目5)前記入力オブジェクトは、前記入力対象として文字が関連付けられた複数の文字オブジェクトであり、前記検出するステップでは、前記仮想空間に規定される領域と前記複数の文字オブジェクトの少なくとも1つの位置とが特定の位置関係となったとき、前記複数の文字オブジェクトの少なくとも1つが前記決定領域に移動させられたことを検出し、前記受け付けるステップでは、前記位置関係となった複数の文字オブジェクトの少なくとも1つに関連付けられた前記文字が入力されたことを受け付ける、項目1に記載の方法。複数の文字オブジェクトの入力を容易に受け付けることができる。   (Item 5) The input object is a plurality of character objects associated with characters as the input target, and in the detecting step, at least one position of an area defined in the virtual space and the plurality of character objects Are detected in at least one of the plurality of character objects in the positional relationship in the step of receiving and detecting that at least one of the plurality of character objects has been moved to the determination area. The method according to item 1, wherein the input of the character associated with one is accepted. Input of a plurality of character objects can be easily accepted.

(項目6)前記入力オブジェクトは複数生成されるとともに、それぞれ複数の部分を含み、前記複数の部分それぞれに異なる前記入力対象が関連付けられており、前記検出するステップでは、前記仮想空間に配置された入力空間に前記入力オブジェクトの少なくとも1つが入れられたとき、当該少なくとも1つの入力オブジェクトが前記決定領域に移動させられたことを検出し、前記受け付けるステップでは、前記入力空間に前記少なくとも1つの入力オブジェクトが入れられたことが検出されたときの、前記入力空間に入れられた前記入力オブジェクトに関連付けられた前記入力対象が入力されたことを受け付ける、項目1に記載の方法。複数の入力オブジェクトによる入力を受け付けることができる。   (Item 6) A plurality of the input objects are generated, each includes a plurality of parts, and each of the plurality of parts is associated with a different input object, and in the detecting step, the input objects are arranged in the virtual space When at least one of the input objects is placed in the input space, it is detected that the at least one input object has been moved to the decision area, and in the step of accepting, the at least one input object in the input space The method according to item 1, wherein it is accepted that the input target associated with the input object placed in the input space is inputted when it is detected that the input is entered. Input from a plurality of input objects can be received.

(項目7)前記複数の入力オブジェクトの移動を完了させるステップをさらに含み、前記受け付けるステップでは、前記複数の入力オブジェクトの移動が完了された後、前記入力空間に入れられている前記複数の入力オブジェクトの該入力空間における位置に基づき、前記複数の入力オブジェクトの所定の面に関連付けられたそれぞれの前記入力対象が入力されたことを受け付ける、項目6に記載の方法。複数の入力オブジェクトが存在する場合に、入力の完了を容易に認識することができる。   (Item 7) The method further includes a step of completing the movement of the plurality of input objects, and in the receiving step, the plurality of input objects placed in the input space after the movement of the plurality of input objects is completed. 7. The method according to item 6, wherein the input of each of the input targets associated with a predetermined surface of the plurality of input objects is received based on the position of the input object in the input space. When there are a plurality of input objects, it is possible to easily recognize completion of input.

(項目8)頭部にヘッドマウントディスプレイを装着したユーザに仮想体験を提供する方法であって、入力対象が関連付けられた入力オブジェクトを生成するステップと、前記ユーザの前記頭部以外の身体の一部によって前記入力オブジェクトが決定領域に移動させられたことを検出するステップと、前記入力オブジェクトが前記決定領域に移動させられたことが検出された場合、前記入力オブジェクトに関連付けられた前記入力対象が入力されたことを受け付けるステップと、を含む、方法。入力対象オブジェクトが決定領域に移動されると、上記入力対象オブジェクトに関連付けられた入力を受け付けることができるので、仮想空間で容易に入力を受け付けることができる。これにより、ユーザの仮想体験をさらに改善し得る。   (Item 8) A method for providing a virtual experience to a user wearing a head-mounted display on a head, the step of generating an input object associated with an input target, and one of a body other than the head of the user Detecting that the input object has been moved to the decision area by the unit, and if it is detected that the input object has been moved to the decision area, the input target associated with the input object is Receiving the input. When the input target object is moved to the determination area, the input associated with the input target object can be received, so that the input can be easily received in the virtual space. Thereby, a user's virtual experience can be improved further.

(項目9)項目1〜8のいずれか1項に記載の方法の各ステップを、コンピュータに実行させるプログラム。   (Item 9) A program that causes a computer to execute each step of the method according to any one of Items 1 to 8.

(項目10)項目9に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。   (Item 10) A computer-readable recording medium on which the program according to Item 9 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 アナログスティック、308 トランシーバ、320 右コントローラ、322 天面、324 グリップ、326 フレーム、330 左コントローラ、400 外部機器 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 Field of view determination unit, 223 Field of view image generation unit, 230 Virtual space control unit, 231 Virtual space definition unit, 232 Virtual hand control unit, 233 Input control unit, 234 Input determination unit, 240 Storage unit, 241 Model storage unit, 242 Content storage unit, 243 objects Storage unit, 250 communication unit, 300 controller, 302 operation button, 302a, 302b thumb button, 302e index finger button, 302f middle finger button, 302i analog stick, 308 transceiver, 320 right controller, 322 top surface, 324 grip, 326 frame, 330 Left controller, 400 External device

Claims (11)

頭部にヘッドマウントディスプレイ(以下、HMD)を装着したユーザに仮想空間を提供する方法であって、
前記ヘッドマウントディスプレイの動きに基づいて、前記仮想空間のうち前記ヘッドマウントディスプレイに出力される視界画像を生成するステップと、
前記仮想空間に、入力対象が関連付けられた入力オブジェクトを生成するステップと、
前記仮想空間に、前記ユーザの前記頭部以外の身体の一部の動きに連動する仮想身体を生成するステップと、
前記仮想身体によって前記入力オブジェクトが前記仮想空間における決定領域に移動させられたことを検出するステップと、
前記入力オブジェクトが前記決定領域に移動させられたことが検出された場合、前記入力オブジェクトに関連付けられた前記入力対象が入力されたことを受け付けるステップと、を含み、
前記入力オブジェクトは複数の部分を含み、前記複数の部分それぞれに異なる前記入力対象が関連付けられており、
前記検出するステップでは、前記仮想空間に配置される決定オブジェクトに前記入力オブジェクトが接触したとき、前記入力オブジェクトが前記決定領域に移動させられたことを検出し、
前記受け付けるステップでは、前記決定オブジェクトに前記入力オブジェクトが接触したことが検出されたときの前記入力オブジェクトの前記複数の部分のいずれかに関連付けられた前記入力対象が入力されたことを受け付け、
前記複数の部分は、複数の面であり、
前記受け付けるステップでは、前記入力オブジェクトにおける第1面が前記決定オブジェクトと接触したとき、前記第1面と所定の位置関係にある第2面と対応付けられた前記入力対象が入力されたことを受け付ける、方法。
A method for providing a virtual space to a user wearing a head-mounted display (hereinafter, HMD) on the 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 an input object associated with an input target in the virtual space;
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 input object has been moved to a decision region in the virtual space by the virtual body;
If that the input object is moved in the determined area is detected, it is seen including the steps of: receiving said input object associated with the input object is input,
The input object includes a plurality of parts, and each of the plurality of parts is associated with a different input object,
In the detecting step, when the input object comes into contact with the determined object arranged in the virtual space, it is detected that the input object has been moved to the determined area;
In the accepting step, accepting that the input target associated with any one of the plurality of parts of the input object when it is detected that the input object is in contact with the decision object is input;
The plurality of portions are a plurality of surfaces;
In the receiving step, when the first surface of the input object comes into contact with the determined object, it is received that the input target associated with the second surface having a predetermined positional relationship with the first surface is input. ,Method.
頭部にヘッドマウントディスプレイ(以下、HMD)を装着したユーザに仮想空間を提供する方法であって、
前記ヘッドマウントディスプレイの動きに基づいて、前記仮想空間のうち前記ヘッドマウントディスプレイに出力される視界画像を生成するステップと、
前記仮想空間に、入力対象が関連付けられた入力オブジェクトを生成するステップと、
前記仮想空間に、前記ユーザの前記頭部以外の身体の一部の動きに連動する仮想身体を生成するステップと、
前記仮想身体によって前記入力オブジェクトが前記仮想空間における決定領域に移動させられたことを検出するステップと、
前記入力オブジェクトが前記決定領域に移動させられたことが検出された場合、前記入力オブジェクトに関連付けられた前記入力対象が入力されたことを受け付けるステップと、を含み、
前記入力オブジェクトは複数の部分を含み、前記複数の部分それぞれに異なる前記入力対象が関連付けられており、
前記検出するステップでは、前記仮想空間に配置される決定オブジェクトに前記入力オブジェクトが接触したとき、前記入力オブジェクトが前記決定領域に移動させられたことを検出し、
前記受け付けるステップでは、前記決定オブジェクトに前記入力オブジェクトが接触したことが検出されたときの前記入力オブジェクトの前記複数の部分のいずれかに関連付けられた前記入力対象が入力されたことを受け付け、
前記複数の部分は、複数の面であり、
前記受け付けるステップでは、前記入力オブジェクトにおける第1面が前記決定オブジェクトと接触したとき、前記第1面と対応付けられた前記入力対象が入力されたことを受け付ける、方法。
A method for providing a virtual space to a user wearing a head-mounted display (hereinafter, HMD) on the 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 an input object associated with an input target in the virtual space;
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 input object has been moved to a decision region in the virtual space by the virtual body;
If that the input object is moved in the determined area is detected, it is seen including the steps of: receiving said input object associated with the input object is input,
The input object includes a plurality of parts, and each of the plurality of parts is associated with a different input object,
In the detecting step, when the input object comes into contact with the determined object arranged in the virtual space, it is detected that the input object has been moved to the determined area;
In the accepting step, accepting that the input target associated with any one of the plurality of parts of the input object when it is detected that the input object is in contact with the decision object is input;
The plurality of portions are a plurality of surfaces;
The method of accepting, in the accepting step, accepting an input of the input target associated with the first surface when the first surface of the input object comes into contact with the determined object .
頭部にヘッドマウントディスプレイ(以下、HMD)を装着したユーザに仮想空間を提供する方法であって、
前記ヘッドマウントディスプレイの動きに基づいて、前記仮想空間のうち前記ヘッドマウントディスプレイに出力される視界画像を生成するステップと、
前記仮想空間に、入力対象が関連付けられた入力オブジェクトを生成するステップと、
前記仮想空間に、前記ユーザの前記頭部以外の身体の一部の動きに連動する仮想身体を生成するステップと、
前記仮想身体によって前記入力オブジェクトが前記仮想空間における決定領域に移動させられたことを検出するステップと、
前記入力オブジェクトが前記決定領域に移動させられたことが検出された場合、前記入力オブジェクトに関連付けられた前記入力対象が入力されたことを受け付けるステップと、を含み、
前記入力オブジェクトは、前記入力対象として文字が関連付けられた複数の文字オブジェクトであり、
前記検出するステップでは、前記仮想空間に規定される領域と前記複数の文字オブジェクトの少なくとも1つの位置とが特定の位置関係となったとき、前記複数の文字オブジェクトの少なくとも1つが前記決定領域に移動させられたことを検出し、
前記受け付けるステップでは、前記位置関係となった複数の文字オブジェクトの少なくとも1つに関連付けられた前記文字が入力されたことを受け付ける、方法。
A method for providing a virtual space to a user wearing a head-mounted display (hereinafter, HMD) on the 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 an input object associated with an input target in the virtual space;
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 input object has been moved to a decision region in the virtual space by the virtual body;
If that the input object is moved in the determined area is detected, it is seen including the steps of: receiving said input object associated with the input object is input,
The input object is a plurality of character objects associated with characters as the input target,
In the detecting step, when a region defined in the virtual space and at least one position of the plurality of character objects have a specific positional relationship, at least one of the plurality of character objects moves to the determination region. To detect that
A method of accepting that the character associated with at least one of the plurality of character objects in the positional relationship is inputted in the accepting step .
頭部にヘッドマウントディスプレイ(以下、HMD)を装着したユーザに仮想空間を提供する方法であって、
前記ヘッドマウントディスプレイの動きに基づいて、前記仮想空間のうち前記ヘッドマウントディスプレイに出力される視界画像を生成するステップと、
前記仮想空間に、入力対象が関連付けられた入力オブジェクトを生成するステップと、
前記仮想空間に、前記ユーザの前記頭部以外の身体の一部の動きに連動する仮想身体を生成するステップと、
前記仮想身体によって前記入力オブジェクトが前記仮想空間における決定領域に移動させられたことを検出するステップと、
前記入力オブジェクトが前記決定領域に移動させられたことが検出された場合、前記入力オブジェクトに関連付けられた前記入力対象が入力されたことを受け付けるステップと、を含み、
前記入力オブジェクトは複数生成されるとともに、それぞれ複数の部分を含み、前記複数の部分それぞれに異なる前記入力対象が関連付けられており、
前記検出するステップでは、前記仮想空間に配置された入力空間に前記入力オブジェクトの少なくとも1つが入れられたとき、当該少なくとも1つの入力オブジェクトが前記決定領域に移動させられたことを検出し、
前記受け付けるステップでは、前記入力空間に前記少なくとも1つの入力オブジェクトが入れられたことが検出されたときの、前記入力空間に入れられた前記入力オブジェクトに関連付けられた前記入力対象が入力されたことを受け付ける、方法。
A method for providing a virtual space to a user wearing a head-mounted display (hereinafter, HMD) on the 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 an input object associated with an input target in the virtual space;
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 input object has been moved to a decision region in the virtual space by the virtual body;
If that the input object is moved in the determined area is detected, it is seen including the steps of: receiving said input object associated with the input object is input,
A plurality of the input objects are generated, each of which includes a plurality of parts, and each of the plurality of parts is associated with a different input object,
In the detecting step, when at least one of the input objects is placed in the input space arranged in the virtual space, it is detected that the at least one input object has been moved to the determination area;
In the accepting step, the input object associated with the input object placed in the input space when it is detected that the at least one input object is placed in the input space is input. How to accept .
前記複数の入力オブジェクトの移動を完了させるステップをさらに含み、
前記受け付けるステップでは、前記複数の入力オブジェクトの移動が完了された後、前記入力空間に入れられている前記複数の入力オブジェクトの該入力空間における位置に基づき、前記複数の入力オブジェクトの所定の面に関連付けられたそれぞれの前記入力対象が入力されたことを受け付ける、請求項に記載の方法。
Further comprising completing the movement of the plurality of input objects;
In the receiving step, after the movement of the plurality of input objects is completed, a predetermined surface of the plurality of input objects is set based on the positions of the plurality of input objects placed in the input space in the input space. The method according to claim 4 , wherein it is accepted that each of the associated input objects is input.
頭部にヘッドマウントディスプレイを装着したユーザに仮想体験を提供する方法であって、
入力対象が関連付けられた入力オブジェクトを生成するステップと、
前記ユーザの前記頭部以外の身体の一部によって前記入力オブジェクトが決定領域に移動させられたことを検出するステップと、
前記入力オブジェクトが前記決定領域に移動させられたことが検出された場合、前記入力オブジェクトに関連付けられた前記入力対象が入力されたことを受け付けるステップと、を含み、
前記入力オブジェクトは複数の部分を含み、前記複数の部分それぞれに異なる前記入力対象が関連付けられており、
前記検出するステップでは、決定オブジェクトに前記入力オブジェクトが接触したとき、前記入力オブジェクトが前記決定領域に移動させられたことを検出し、
前記受け付けるステップでは、前記決定オブジェクトに前記入力オブジェクトが接触したことが検出されたときの前記入力オブジェクトの前記複数の部分のいずれかに関連付けられた前記入力対象が入力されたことを受け付け、
前記複数の部分は、複数の面であり、
前記受け付けるステップでは、前記入力オブジェクトにおける第1面が前記決定オブジェクトと接触したとき、前記第1面と所定の位置関係にある第2面と対応付けられた前記入力対象が入力されたことを受け付ける、方法。
A method for providing a virtual experience to a user wearing a head-mounted display on the head,
Generating an input object associated with the input target;
Detecting that the input object has been moved to a decision region by a part of the body other than the head of the user;
If that the input object is moved in the determined area is detected, it is seen including the steps of: receiving said input object associated with the input object is input,
The input object includes a plurality of parts, and each of the plurality of parts is associated with a different input object,
In the detecting step, when the input object comes into contact with a decision object, it is detected that the input object has been moved to the decision area;
In the accepting step, accepting that the input target associated with any one of the plurality of parts of the input object when it is detected that the input object is in contact with the decision object is input;
The plurality of portions are a plurality of surfaces;
In the receiving step, when the first surface of the input object comes into contact with the determined object, it is received that the input target associated with the second surface having a predetermined positional relationship with the first surface is input. ,Method.
頭部にヘッドマウントディスプレイを装着したユーザに仮想体験を提供する方法であって、
入力対象が関連付けられた入力オブジェクトを生成するステップと、
前記ユーザの前記頭部以外の身体の一部によって前記入力オブジェクトが決定領域に移動させられたことを検出するステップと、
前記入力オブジェクトが前記決定領域に移動させられたことが検出された場合、前記入力オブジェクトに関連付けられた前記入力対象が入力されたことを受け付けるステップと、を含み、
前記入力オブジェクトは複数の部分を含み、前記複数の部分それぞれに異なる前記入力対象が関連付けられており、
前記検出するステップでは、決定オブジェクトに前記入力オブジェクトが接触したとき、前記入力オブジェクトが前記決定領域に移動させられたことを検出し、
前記受け付けるステップでは、前記決定オブジェクトに前記入力オブジェクトが接触したことが検出されたときの前記入力オブジェクトの前記複数の部分のいずれかに関連付けられた前記入力対象が入力されたことを受け付け、
前記複数の部分は、複数の面であり、
前記受け付けるステップでは、前記入力オブジェクトにおける第1面が前記決定オブジェクトと接触したとき、前記第1面と対応付けられた前記入力対象が入力されたことを受け付ける、方法。
A method for providing a virtual experience to a user wearing a head-mounted display on the head,
Generating an input object associated with the input target;
Detecting that the input object has been moved to a decision region by a part of the body other than the head of the user;
If that the input object is moved in the determined area is detected, it is seen including the steps of: receiving said input object associated with the input object is input,
The input object includes a plurality of parts, and each of the plurality of parts is associated with a different input object,
In the detecting step, when the input object comes into contact with a decision object, it is detected that the input object has been moved to the decision area;
In the accepting step, accepting that the input target associated with any one of the plurality of parts of the input object when it is detected that the input object is in contact with the decision object is input;
The plurality of portions are a plurality of surfaces;
The method of accepting, in the accepting step, accepting an input of the input target associated with the first surface when the first surface of the input object comes into contact with the determined object .
頭部にヘッドマウントディスプレイを装着したユーザに仮想体験を提供する方法であって、
入力対象が関連付けられた入力オブジェクトを生成するステップと、
前記ユーザの前記頭部以外の身体の一部によって前記入力オブジェクトが決定領域に移動させられたことを検出するステップと、
前記入力オブジェクトが前記決定領域に移動させられたことが検出された場合、前記入力オブジェクトに関連付けられた前記入力対象が入力されたことを受け付けるステップと、を含み、
前記入力オブジェクトは、前記入力対象として文字が関連付けられた複数の文字オブジェクトであり、
前記検出するステップでは、規定された領域と前記複数の文字オブジェクトの少なくとも1つの位置とが特定の位置関係となったとき、前記複数の文字オブジェクトの少なくとも1つが前記決定領域に移動させられたことを検出し、
前記受け付けるステップでは、前記位置関係となった複数の文字オブジェクトの少なくとも1つに関連付けられた前記文字が入力されたことを受け付ける、方法。
A method for providing a virtual experience to a user wearing a head-mounted display on the head,
Generating an input object associated with the input target;
Detecting that the input object has been moved to a decision region by a part of the body other than the head of the user;
If that the input object is moved in the determined area is detected, it is seen including the steps of: receiving said input object associated with the input object is input,
The input object is a plurality of character objects associated with characters as the input target,
In the detecting step, when the specified area and at least one position of the plurality of character objects are in a specific positional relationship, at least one of the plurality of character objects is moved to the determination area. Detect
A method of accepting that the character associated with at least one of the plurality of character objects in the positional relationship is inputted in the accepting step .
頭部にヘッドマウントディスプレイを装着したユーザに仮想体験を提供する方法であって、
入力対象が関連付けられた入力オブジェクトを生成するステップと、
前記ユーザの前記頭部以外の身体の一部によって前記入力オブジェクトが決定領域に移動させられたことを検出するステップと、
前記入力オブジェクトが前記決定領域に移動させられたことが検出された場合、前記入力オブジェクトに関連付けられた前記入力対象が入力されたことを受け付けるステップと、を含み、
前記入力オブジェクトは複数生成されるとともに、それぞれ複数の部分を含み、前記複数の部分それぞれに異なる前記入力対象が関連付けられており、
前記検出するステップでは、入力空間に前記入力オブジェクトの少なくとも1つが入れられたとき、当該少なくとも1つの入力オブジェクトが前記決定領域に移動させられたことを検出し、
前記受け付けるステップでは、前記入力空間に前記少なくとも1つの入力オブジェクトが入れられたことが検出されたときの、前記入力空間に入れられた前記入力オブジェクトに関連付けられた前記入力対象が入力されたことを受け付ける、方法。
A method for providing a virtual experience to a user wearing a head-mounted display on the head,
Generating an input object associated with the input target;
Detecting that the input object has been moved to a decision region by a part of the body other than the head of the user;
If that the input object is moved in the determined area is detected, it is seen including the steps of: receiving said input object associated with the input object is input,
A plurality of the input objects are generated, each of which includes a plurality of parts, and each of the plurality of parts is associated with a different input object,
In the detecting step, when at least one of the input objects is placed in the input space, it is detected that the at least one input object has been moved to the decision area;
In the accepting step, the input object associated with the input object placed in the input space when it is detected that the at least one input object is placed in the input space is input. How to accept .
請求項1〜のいずれか1項に記載の方法の各ステップを、コンピュータに実行させるプログラム。 The steps of the method according to any one of claims 1 to 9 program executed by a computer. 請求項10に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。 The computer-readable recording medium which recorded the program of Claim 10 .
JP2016162245A 2016-08-22 2016-08-22 Method for providing virtual space, method for providing virtual experience, program, and recording medium Active JP6113897B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2016162245A JP6113897B1 (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
JP2016162245A JP6113897B1 (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
JP2017047910A Division JP2018032370A (en) 2017-03-13 2017-03-13 Method for providing virtual space, method for providing virtual experience, program and recording medium

Publications (2)

Publication Number Publication Date
JP6113897B1 true JP6113897B1 (en) 2017-04-12
JP2018032102A JP2018032102A (en) 2018-03-01

Family

ID=58666794

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016162245A Active JP6113897B1 (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) JP6113897B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018190335A (en) * 2017-05-11 2018-11-29 株式会社コロプラ Method for providing virtual space, program for implementing that method in computer, and information processor for executing that program
JP2018190395A (en) * 2018-04-02 2018-11-29 株式会社コロプラ Method for providing virtual space, program for implementing that method in computer, and information processor for executing that program

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7288792B2 (en) * 2019-04-24 2023-06-08 株式会社ソニー・インタラクティブエンタテインメント Information processing device and device information derivation method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012168798A (en) * 2011-02-15 2012-09-06 Sony Corp Information processing device, authoring method, and program
JP2016027468A (en) * 2014-06-27 2016-02-18 キヤノンマーケティングジャパン株式会社 Information processing unit, information processing system, control method thereof and program
JP2016151792A (en) * 2015-02-16 2016-08-22 富士フイルム株式会社 Virtual object display device, method, program, and system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012168798A (en) * 2011-02-15 2012-09-06 Sony Corp Information processing device, authoring method, and program
JP2016027468A (en) * 2014-06-27 2016-02-18 キヤノンマーケティングジャパン株式会社 Information processing unit, information processing system, control method thereof and program
JP2016151792A (en) * 2015-02-16 2016-08-22 富士フイルム株式会社 Virtual object display device, method, program, and system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018190335A (en) * 2017-05-11 2018-11-29 株式会社コロプラ Method for providing virtual space, program for implementing that method in computer, and information processor for executing that program
JP2018190395A (en) * 2018-04-02 2018-11-29 株式会社コロプラ Method for providing virtual space, program for implementing that method in computer, and information processor for executing that program

Also Published As

Publication number Publication date
JP2018032102A (en) 2018-03-01

Similar Documents

Publication Publication Date Title
JP6093473B1 (en) Information processing method and program for causing computer to execute information processing method
WO2018016553A1 (en) Method for providing virtual space, method for providing virtual experience, program, and recording medium
JP6532393B2 (en) Display control apparatus and display control method
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
US20180059812A1 (en) Method for providing virtual space, method for providing virtual experience, program and recording medium therefor
WO2018020735A1 (en) Information processing method and program for causing computer to execute information processing method
JP6220937B1 (en) Information processing method, program for causing computer to execute information processing method, and computer
JP6117414B1 (en) Information processing method and program for causing computer to execute information processing method
JP6113897B1 (en) Method for providing virtual space, method for providing virtual experience, program, and recording medium
JP6203346B1 (en) Method, program, and recording medium for providing virtual space
JP6159455B1 (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
JP6368404B1 (en) Information processing method, program, and computer
JP6278546B1 (en) Information processing method, apparatus, and program for causing computer to execute information processing method
JP6242452B1 (en) Method for providing virtual space, method for providing virtual experience, program, and recording medium
JP2018206340A (en) Method which is executed on computer for providing virtual space, program and information processor
JP2019036239A (en) Information processing method, information processing program, information processing system, and information processing device
JP6728111B2 (en) Method of providing virtual space, method of providing virtual experience, program, and recording medium
JP6403843B1 (en) Information processing method, information processing program, and information processing apparatus
JP2018028900A (en) Method, program, and recording medium for providing virtual space
JP6449922B2 (en) Information processing method and program for causing computer to execute information processing method
JP6122194B1 (en) Information processing method and program for causing computer to execute information processing method
JP2018032370A (en) Method for providing virtual space, method for providing virtual experience, program and recording medium
JP2018014084A (en) Method for providing virtual space, method for providing virtual experience, program and recording medium

Legal Events

Date Code Title Description
A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20170105

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170209

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: 20170228

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170315

R150 Certificate of patent or registration of utility model

Ref document number: 6113897

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