JP6262283B2 - Method, program, and recording medium for providing virtual space - Google Patents

Method, program, and recording medium for providing virtual space Download PDF

Info

Publication number
JP6262283B2
JP6262283B2 JP2016099088A JP2016099088A JP6262283B2 JP 6262283 B2 JP6262283 B2 JP 6262283B2 JP 2016099088 A JP2016099088 A JP 2016099088A JP 2016099088 A JP2016099088 A JP 2016099088A JP 6262283 B2 JP6262283 B2 JP 6262283B2
Authority
JP
Japan
Prior art keywords
virtual space
hmd
operation object
user
mode
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
JP2016099088A
Other languages
Japanese (ja)
Other versions
JP2017224003A (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 JP2016099088A priority Critical patent/JP6262283B2/en
Priority to US15/588,590 priority patent/US10539797B2/en
Priority to PCT/JP2017/017878 priority patent/WO2017199848A1/en
Publication of JP2017224003A publication Critical patent/JP2017224003A/en
Application granted granted Critical
Publication of JP6262283B2 publication Critical patent/JP6262283B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)

Description

本開示は、仮想空間を提供する方法、プログラム、および記録媒体に関する。   The present disclosure relates to a method, a program, and a recording medium that provide a virtual space.

特許文献1には、仮想空間において再生されるコンテンツを、ヘッドマウントディスプレイを通じてユーザに視認させるための技術が開示されている。   Patent Document 1 discloses a technique for allowing a user to visually recognize content played back in a virtual space through a head-mounted display.

特開2013−258614号公報(2013年12月26日公開)JP2013-258614A (released on December 26, 2013)

上述した従来技術では、ユーザがHMDを動かすと、仮想空間におけるユーザの視認箇所を変えることができるので、仮想空間に対するユーザの没入感を高めることができる。一方で、仮想空間における没入間を高めつつ、より簡単に仮想空間における任意の箇所をユーザが視認できるように仮想空間における操作性をより高めるための工夫が、求められている。   In the above-described conventional technique, when the user moves the HMD, the user's visual recognition location in the virtual space can be changed, so that the user's immersion feeling in the virtual space can be enhanced. On the other hand, there is a need for a device for improving the operability in the virtual space so that the user can more easily visually recognize an arbitrary place in the virtual space while increasing the immersion space in the virtual space.

本開示は前記の課題を解決するためになされたものである。そして、その目的は、仮想空間における操作性をより高めることにある。   This indication is made in order to solve the above-mentioned subject. The purpose is to further improve the operability in the virtual space.

前記の課題を解決するために、本開示に係る仮想空間を提供する方法は、ヘッドマウントディスプレイ(以下、HMD)を装着したユーザに仮想空間を提供する方法であって、第1のモードにおいて、仮想空間内に配置されかつHMDに連動する仮想カメラのロール方向に基づく視界画像をHMDに表示させるステップと、第2のモードにおいて、ユーザの操作に基づき少なくとも回転方向を特定すると共に、操作が検出され続ける間、仮想カメラまたは仮想空間の空間座標系を回転方向に回転させ続けながら、HMDに視界画像を更新させるステップとを有する。   In order to solve the above problems, a method of providing a virtual space according to the present disclosure is a method of providing a virtual space to a user wearing a head mounted display (hereinafter, HMD), in the first mode, In the second mode, the visual image based on the roll direction of the virtual camera that is arranged in the virtual space and interlocked with the HMD is displayed on the HMD. In the second mode, at least the rotation direction is specified based on the user operation, and the operation is detected. While continuing to be performed, the HMD has a step of updating the visual field image while continuously rotating the virtual camera or the space coordinate system of the virtual space in the rotation direction.

本開示によれば、仮想空間における操作性をより高めることができる。   According to this indication, operativity in virtual space can be raised more.

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 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. HMDシステムが、仮想空間内のプラットフォームを通じてユーザが選択した動画コンテンツを仮想空間において再生する処理の流れを示すシーケンス図である。It is a sequence diagram which shows the flow of a process which the HMD system reproduces | regenerates the moving image content which the user selected through the platform in virtual space in virtual space. 仮想空間内のプラットフォームを通じた動画コンテンツの選択および再生を説明する図である。It is a figure explaining the selection and reproduction | regeneration of the moving image content through the platform in virtual space. HMDシステムが回転モードに移行する際の処理の流れを示すシーケンス図である。It is a sequence diagram which shows the flow of a process when a HMD system transfers to rotation mode. 制御回路部が回転モードにおいて仮想カメラの回転を開始する際の処理の流れを示すシーケンス図である。It is a sequence diagram which shows the flow of a process when a control circuit part starts rotation of a virtual camera in rotation mode. 仮想カメラが回転した後の仮想空間および視界画像を示す図である。It is a figure which shows the virtual space and visual field image after a virtual camera rotates. 制御回路部が回転モードにおいて仮想カメラをさらに回転させるかまたは仮想カメラの回転を停止させる際の処理の流れを示すシーケンス図である。It is a sequence diagram showing a flow of processing when the control circuit unit further rotates the virtual camera or stops the rotation of the virtual camera in the rotation mode. 仮想カメラがさらに回転した後の仮想空間および視界画像を示す図である。It is a figure which shows the virtual space and visual field image after a virtual camera further rotates. 仮想カメラの回転が停止した後の仮想空間および視界画像を示す図である。It is a figure which shows the virtual space and visual field image after rotation of a virtual camera stopped.

[本発明の実施形態の詳細]
本発明の実施形態に係る仮想空間を提供する方法、および、プログラムの具体例を、以下に図面を参照しつつ説明する。本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が本発明に含まれることが意図される。以下の説明では、図面の説明において同一の要素には同一の符号を付し、重複する説明を繰り返さない。
[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、制御回路部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 control circuit unit 200, and a controller 300.

HMD110は、ユーザの頭部に装着される。HMD110は、非透過型の表示装置であるディスプレイ112、センサ114、および注視センサ130を備えている。HMD110は、右目用画像および左目用画像をディスプレイ112にそれぞれ表示することにより、ユーザの両目の視差に基づきユーザに立体的に視認される3次元画像を、ユーザに視認させる。これにより仮想空間をユーザに提供する。ディスプレイ112がユーザの眼前に配置されているので、ユーザは、ディスプレイ112に表示される画像を通じて仮想空間に没入できる。仮想空間は、背景、ならびにユーザが操作可能な各種のオブジェクトおよびメニュー画像等を含み得る。   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. 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. .

(制御回路部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を含む各種のセンサと、コントローラ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 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.

(uwv視野座標系)
図3は、HMD110に設定されるuwv視野座標系を例示する図である。HMDセンサ120は、HMD110の起動時に、グローバル座標系におけるHMD110の位置および傾きを検出する。そして、傾きの検出値に基づく3次元のuvw視野座標系を、HMD110に設定する。図3に示すように、HMDセンサ120は、HMD110を装着したユーザの頭部を中心(原点)とした3次元のuvw視野座標系を、HMD110に設定する。具体的には、グローバル座標系を規定する横方向、鉛直方向、および前後方向(x軸、y軸、z軸)を、グローバル座標系内においてHMD110の各軸周りの傾きだけ各軸周りにそれぞれ傾けることによって得られる新たな3つの方向を、HMD110におけるuvw視野座標系のピッチ方向(u軸)、ヨー方向(v軸)、およびロール方向(w軸)として設定する。
(Uuv visual field coordinate system)
FIG. 3 is a diagram illustrating a uwv 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を受信した場合も、両者の交点である注視点N1(不図示)を特定する。制御回路部200は、特定した注視点N1に基づき、ユーザUの視線方向N0を検出する。制御回路部200は、たとえば、ユーザUの右目Rと左目Lとを結ぶ直線の中点と、注視点N1とを通る直線の伸びる方向を、視線方向N0として検出する。視線方向N0は、ユーザUが両目により実際に視線を向けている方向である。視線方向N0はまた、視界領域23に対してユーザUが実際に視線を向けている方向でもある。   When receiving the line of sight R1 and L1 as the line-of-sight detection value, the control circuit unit 200 specifies the gazing point N1 that is the intersection of the two. On the other hand, also when the lines of sight R2 and L2 are received, the gazing point N1 (not shown) that is the intersection of the two 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)
コントローラ300は、ユーザの操作に基づく各種の指令を制御回路部200に対して送信ことができるデバイスである。コントローラ300は、有線または無線通信が可能な携帯端末であり得る。コントローラ300は、たとえば、スマートフォン、PDA(Personal Digital Assistant)、タブレット型コンピュータ、ゲーム用コンソール、汎用のPC(Personal Computer)等であればよい。コントローラ300は、タッチパネルを備えるデバイスであることが好ましく、互いにバス接続されたプロセッサ、メモリ、ストレージ、通信部、表示部と入力部が一体として構成されたタッチパネル、を備える任意の端末が採用され得る。ユーザは、コントローラ300のタッチパネルに対し、タップ、スワイプ、およびホールドを含む各種のタッチ動作を入力することによって、仮想空間2に配置される各種のオブジェクトおよびUI(User Interface)に対して影響を及ぼすことができる。
(Controller 300)
The controller 300 is a device that can transmit various commands based on user operations to the control circuit unit 200. The controller 300 can be a portable terminal capable of wired or wireless communication. The controller 300 may be, for example, a smartphone, a PDA (Personal Digital Assistant), a tablet computer, a game console, a general-purpose PC (Personal Computer), or the like. The controller 300 is preferably a device including a touch panel, and any terminal including a processor, a memory, a storage, a communication unit, and a touch panel in which a display unit and an input unit are integrated with each other may be employed. . The user inputs various touch operations including tap, swipe, and hold on the touch panel of the controller 300, thereby affecting various objects and UI (User Interface) arranged in the virtual space 2. be able to.

(制御回路部200の機能的構成)
図7は、制御回路部200の機能的構成を示すブロック図である。制御回路部200は、HMDセンサ120、注視センサ130、およびコントローラ300から受信した各種のデータを用いることによって、ユーザに提供される仮想空間2を制御すると共に、HMD110のディスプレイ112への画像表示を制御する。図7に示すように、制御回路部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. 7 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 gaze sensor 130, and the controller 300, and displays an image on the display 112 of the HMD 110. Control. As illustrated in FIG. 7, 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は、HMD検出部211、視線検出部212、および操作受付部213を備えている。HMD検出部211は、HMD110およびHMDセンサ120から検出値をそれぞれ受信する。視線検出部212は、注視センサ130から検出値を受信する。操作受付部213は、コントローラ300に対するユーザの操作に応じて送信された指令を受信することによって、当該操作を受け付ける。   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 predetermined process using the received detected value is performed as needed. The detection unit 210 includes an HMD detection unit 211, a line-of-sight detection unit 212, and an operation reception 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 operation reception unit 213 receives the operation by receiving a command transmitted in response to a user operation on the controller 300.

表示制御部220は、HMD110のディスプレイ112への画像表示を制御する。表示制御部220は、仮想カメラ制御部221、視界領域決定部222、および視界画像生成部223を備えている。仮想カメラ制御部221は、仮想空間2内に仮想カメラ1を配置すると共に、仮想空間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 and 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、および回転制御部235を備えている。仮想空間規定部231は、ユーザに提供される仮想空間2を表す仮想空間データを生成することによって、HMDシステム100における仮想空間2を規定する。視線管理部232は、仮想空間2におけるユーザの視線を管理する。コンテンツ特定部233は、仮想空間2における再生対象のコンテンツを特定する。操作オブジェクト制御部234は、仮想空間2における操作オブジェクト27を制御する。回転制御部235は、操作オブジェクト27への操作に基づく仮想カメラ1または仮想空間2の回転を制御する。   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 line-of-sight management unit 232, a content specifying unit 233, an operation object control unit 234, and a rotation control unit 235. 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 line-of-sight management unit 232 manages the user's line of sight in the virtual space 2. The content specifying unit 233 specifies the content to be reproduced in the virtual space 2. The operation object control unit 234 controls the operation object 27 in the virtual space 2. The rotation control unit 235 controls the rotation of the virtual camera 1 or the virtual space 2 based on the operation on the operation object 27.

記憶部240は、制御回路部200が仮想空間2をユーザに提供するために用いる各種のデータを格納している。記憶部240は、雛形格納部241およびコンテンツ格納部242を備えている。雛形格納部241は、各種の雛形データを格納している。コンテンツ格納部242は、各種のコンテンツを格納している。   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 and a content storage unit 242. The template storage unit 241 stores various template data. The content storage unit 242 stores various types of content.

雛形データは、仮想空間2の雛形を表すデータである。雛形データは、仮想空間2の空間構造を規定する空間構造データを有する。空間構造データは、たとえば、中心21を中心とする360°の全天球の空間構造を規定するデータである。雛形データは、仮想空間2のXYZ座標系を規定するデータをさらに有する。雛形データは、天球を構成する各メッシュのXYZ座標系における位置を特定する座標データをさらに有する。また、雛形データは、仮想空間2内にオブジェクトを配置可能であるか否かを示すフラグをさらに有する。   The template data is data representing a template of the virtual space 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 an object can be arranged in the virtual space 2.

コンテンツは、仮想空間2において再生可能なコンテンツである。コンテンツの例として、たとえば、プラットフォームコンテンツおよび視聴用コンテンツが挙げられる。   The content is content that can be reproduced in the virtual space 2. Examples of content include platform content and viewing content.

プラットフォームコンテンツは、ユーザが視聴したい視聴用コンテンツを仮想空間2においてユーザに選択させるための環境(プラットフォーム)に関するコンテンツである。このプラットフォームコンテンツが仮想空間2において再生されることによって、コンテンツ選択用のプラットフォームがユーザに提供される。プラットフォームコンテンツは、背景画像、および、オブジェクトを規定するデータを少なくとも有する。   The platform content is content related to an environment (platform) for allowing the user to select viewing content that the user wants to view in the virtual space 2. By reproducing the platform content in the virtual space 2, a platform for content selection is provided to the user. The platform content has at least a background image and data defining an object.

視聴用コンテンツは、たとえば静止画コンテンツまたは動画コンテンツである。静止画コンテンツは、背景画像を有する。動画コンテンツは、各フレームの画像(静止画)を少なくとも有する。動画コンテンツは、さらに音声データを有してもよい。   The viewing content is, for example, a still image content or a moving image content. The still image content has a background image. The moving image content includes at least an image (still image) of each frame. The moving image content may further include audio data.

動画コンテンツは、たとえば、全天球カメラによって生成されるコンテンツである。全天球カメラは、当該カメラのレンズを中心とした現実空間の全方向を一度に撮影することによって、全方向の画像を一度に生成することができるカメラである。全天球カメラによって得られる動画コンテンツを構成する各画像は歪んでいるが、動画コンテンツが仮想空間2において再生されるとき、各画像の歪みは、HMD110のディスプレイ112を構成するレンズによってキャンセルされることによって解消される。したがって動画コンテンツの再生時、ユーザは仮想空間2内において歪みのない自然な画像を視認することができる。   The moving image content is content generated by an omnidirectional camera, for example. An omnidirectional camera is a camera that can generate images in all directions at once by photographing all directions in a real space around the lens of the camera at once. Each image constituting the moving image content obtained by the omnidirectional camera is distorted, but when the moving image content is reproduced in the virtual space 2, the distortion of each image is canceled by the lens constituting the display 112 of the HMD 110. It is solved by. Therefore, at the time of reproduction of the moving image content, the user can visually recognize a natural image without distortion in the virtual space 2.

各コンテンツには、HMD110の初期状態(起動時)にユーザに見せる画像を向いた初期方向が、予め規定されている。全天球カメラによって生成される動画コンテンツに規定される初期方向は、通常、動画コンテンツの撮影に用いた全天球カメラに規定される所定の撮影方向に一致する。この初期方向を、撮影方向とは異なる方向に変更することもできる。具体的には、全天球カメラによる撮影後、得られた動画コンテンツを適宜編集することによって、撮影方向からずれた方向を初期方向として動画コンテンツに規定することができる。   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. The initial direction defined in the moving image content generated by the omnidirectional camera usually matches the predetermined shooting direction defined in the omnidirectional camera used for shooting the moving image content. The initial direction can be changed to a direction different from the shooting direction. Specifically, after shooting with the omnidirectional camera, the obtained moving image content is appropriately edited, whereby the direction deviated from the shooting direction can be defined as the moving image content.

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

(仮想空間2の提供処理)
図8は、HMDシステム100が仮想空間2をユーザに提供する処理の流れを示すシーケンス図である。仮想空間2は、基本的に、HMD110および制御回路部200の協働によってユーザに提供される。図8に示す処理が開始されると、まず、S1において、仮想空間規定部231が、ユーザに提供される仮想空間2を表す仮想空間データを生成することによって、仮想空間2を規定する。生成の手順は次の通りである。まず仮想空間規定部231は、仮想空間2の雛形データを雛形格納部241から取得することによって、仮想空間2の原型を定義する。仮想空間規定部231は、さらに、仮想空間2において再生されるコンテンツを、コンテンツ格納部242から取得する。仮想空間規定部231は、取得した雛形データに、取得したコンテンツを適合することによって、仮想空間2を規定する仮想空間データを生成する。仮想空間規定部231は、仮想空間データにおいて、仮想空間2の天球を構成する各メッシュの管理データに、コンテンツに含まれる背景画像を構成する各部分画像を適宜関連付ける。仮想空間規定部231は、コンテンツに規定される初期方向を仮想空間2のXYZ座標系におけるZ方向に合致させるように、各部分画像と各メッシュとを関連付けることが好ましい。
(Process of providing virtual space 2)
FIG. 8 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. 8 is started, first, in 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. 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 the 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 object included in the content to the virtual space data as necessary. At that time, coordinates representing the position where the corresponding object is arranged in the virtual space 2 are set in each management data. Thereby, each 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 S2, and outputs the detected value to the control circuit unit 200 in S3. The HMD detection unit 211 receives this detection value. Thereafter, in S4, 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のロール方向の傾きに一致させる。このような適合処理によって、初期状態の仮想カメラ2のロール方向がコンテンツの初期方向に適合されるので、コンテンツの再生開始後におけるユーザが最初に向く水平方向の向きを、コンテンツの初期方向に一致させることができる。   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. As a result of such adaptation processing, the roll direction of the virtual camera 2 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 S <b> 5, the visual field image generation unit 223 corresponds to a portion projected on the visual field region 23 in the virtual space 2 out of the entire virtual space image 22 developed in the virtual space 2 by processing the virtual space data. A view image 26 is generated (rendered). In 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 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 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 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 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 S <b> 11, the virtual camera control unit 221 identifies the identified visual field direction of the HMD 110 as the user's reference visual line 5 in the virtual space 2. In 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 S <b> 13, the visual field region determination unit 222 determines the visual field region 23 in the virtual space 2 based on the identified reference visual line 5. Thereafter, in S14, the visual field image generation unit 223 projects (superimposes) the entire virtual space image 22 developed in the virtual space 2 onto the visual field region 23 in the virtual space 2 by processing the virtual space data. A view field image 26 is generated (rendered). In 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 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.

(プラットフォームの提供およびコンテンツの再生処理)
本実施形態では、HMDシステム100は、仮想空間2においてユーザが視聴したいコンテンツを仮想空間2においてユーザに選択するための環境(プラットフォーム)を、ユーザに提供する。ユーザが、仮想空間2に展開されるプラットフォームを通じて、視聴したいコンテンツを選択すれば、制御回路部200は、選択されたコンテンツの仮想空間2における再生を開始する。以下に、プラットフォームの提供およびコンテンツの再生処理の詳細について、説明する。
(Platform provision and content playback processing)
In the present embodiment, the HMD system 100 provides the user with an environment (platform) for the user to select content in the virtual space 2 that the user wants to view. When the user selects content to view through the platform developed in the virtual space 2, the control circuit unit 200 starts reproduction of the selected content in the virtual space 2. Details of the platform provision and content playback processing will be described below.

図9は、HMDシステム100が、仮想空間2内のプラットフォームを通じてユーザが選択した動画コンテンツを仮想空間2において再生する処理の流れを示すシーケンス図である。図10は、仮想空間2内のプラットフォームを通じた動画コンテンツの選択および再生を説明する図である。図9に示す処理が開始されると、まず、S21において、仮想空間規定部231が、プラットフォーム提供用の仮想空間2を表す仮想空間データを生成することによって、プラットフォーム提供用の仮想空間2を規定する。生成の手順は次の通りである。まず仮想空間規定部231は、プラットフォームに対応した仮想空間2の雛形データを、雛形格納部241から取得する。ここでは、オブジェクトが使用可能な仮想空間2の雛形データが取得される。   FIG. 9 is a sequence diagram illustrating a flow of processing in which the HMD system 100 reproduces the moving image content selected by the user through the platform in the virtual space 2 in the virtual space 2. FIG. 10 is a diagram for explaining selection and playback of moving image content through the platform in the virtual space 2. When the processing shown in FIG. 9 is started, first, in S21, the virtual space defining unit 231 creates virtual space data representing the virtual space 2 for providing the platform, thereby defining the virtual space 2 for providing the platform. To do. The generation procedure is as follows. First, the virtual space defining unit 231 acquires the template data of the virtual space 2 corresponding to the platform from the template storage unit 241. Here, the template data of the virtual space 2 in which the object can be used is acquired.

仮想空間規定部231は、さらに、仮想空間2において提供されるプラットフォームに関するプラットフォームコンテンツを、コンテンツ格納部242から取得する。仮想空間規定部231は、取得した雛形データに、取得したプラットフォームコンテンツを適合することによって、プラットフォームを提供するための仮想空間2を規定する仮想空間データを生成する。仮想空間規定部231は、仮想空間データにおいて、仮想空間2の天球を構成する各メッシュの管理データに、プラットフォームコンテンツに含まれる背景画像を構成する各部分画像を適宜関連付ける。   The virtual space defining unit 231 further acquires platform content related to the platform provided in the virtual space 2 from the content storage unit 242. The virtual space defining unit 231 generates virtual space data defining the virtual space 2 for providing the platform by adapting the acquired platform content to the acquired template data. In the virtual space data, the virtual space defining unit 231 appropriately associates each partial image constituting the background image included in the platform content with the management data of each mesh constituting the celestial sphere of the virtual space 2.

仮想空間規定部231は、さらに、プラットフォームコンテンツに含まれる各オブジェクトの管理データを、仮想空間データに追加する。これにより各オブジェクトが、プラットフォームを提供する仮想空間2における所定の位置にそれぞれ配置される。各オブジェクトのうち1つは、ユーザによって操作される操作オブジェクトである。詳しくは後述するが、操作オブジェクト27は、仮想カメラ1または仮想空間2を回転させるために用いられる。残りは、視聴用コンテンツの概要画像(サムネイル)を表示するために用いられるサムネイルオブジェクトである。仮想空間規定部231は、次に、コンテンツ格納部242に格納される一定数の視聴用コンテンツ(ここでは動画コンテンツ)のサムネイルを、それぞれ取得する。仮想空間規定部231は、取得した各サムネイルを、仮想空間データ内のいずれかのサムネイルオブジェクトの管理データに関連付ける。これにより、仮想空間2に配置される各サムネイルオブジェクトに、サムネイルが関連付けられる。以下では、説明の便宜のために、仮想空間2に配置される、サムネイルが関連付けられたサムネイルオブジェクトのことを、単にサムネイルと表記する場合がある。   The virtual space defining unit 231 further adds management data of each object included in the platform content to the virtual space data. Thus, each object is placed at a predetermined position in the virtual space 2 that provides the platform. One of the objects is an operation object operated by the user. As will be described in detail later, the operation object 27 is used to rotate the virtual camera 1 or the virtual space 2. The rest are thumbnail objects used to display a summary image (thumbnail) of the viewing content. Next, the virtual space defining unit 231 acquires thumbnails of a predetermined number of viewing contents (here, moving image contents) stored in the content storage unit 242. The virtual space defining unit 231 associates each acquired thumbnail with the management data of any thumbnail object in the virtual space data. Thereby, a thumbnail is associated with each thumbnail object arranged in the virtual space 2. In the following, for convenience of explanation, a thumbnail object arranged in the virtual space 2 and associated with a thumbnail may be simply referred to as a thumbnail.

対応するサムネイルがオブジェクトに関連付けられた各視聴用コンテンツは、ユーザが仮想空間2において再生させるために選択可能な動画コンテンツの候補(候補動画コンテンツ)である。ユーザは、サムネイルをの選択を通じて、対応する候補動画コンテンツを選択することができる。制御回路部200は、プラットフォームにおいてユーザによって選択された候補動画コンテンツを、仮想空間2において再生させる動画コンテンツとして特定する。   Each viewing content in which the corresponding thumbnail is associated with the object is a moving image content candidate (candidate moving image content) that can be selected for reproduction in the virtual space 2 by the user. The user can select the corresponding candidate moving image content through selection of the thumbnail. The control circuit unit 200 identifies the candidate video content selected by the user on the platform as video content to be played back in the virtual space 2.

図10の(a)に、プラットフォーム提供用の仮想空間2の一例を示す。この図には、1つの操作オブジェクト27および4つのサムネイルSN1〜SN4が配置される、プラットフォーム提供用の仮想空間2を示す。これらのサムネイルSN1〜SN4は、いずれも、対応する動画コンテンツの概要画像(サムネイル)が関連付けられたオブジェクトである。操作オブジェクト27の形状は、基本的に円形である。詳しくは後述するが、操作オブジェクト27は、ユーザによる操作オブジェクト27への操作に応じて弾性変形(伸張)する。   FIG. 10A shows an example of a virtual space 2 for providing a platform. This figure shows a virtual space 2 for providing a platform in which one operation object 27 and four thumbnails SN1 to SN4 are arranged. Each of these thumbnails SN1 to SN4 is an object associated with a summary image (thumbnail) of the corresponding moving image content. The shape of the operation object 27 is basically circular. As will be described in detail later, the operation object 27 is elastically deformed (expanded) in response to an operation on the operation object 27 by the user.

図10の(a)に示す仮想空間2を表す仮想空間データの生成後、S22において、視界画像生成部223は、ユーザの基準視線5に基づき視界画像26を生成する。この生成方法は図8を参照して説明した方法と同一である。ここでは、プラットフォームに対応した視界画像26が生成される。図10の(a)では、サムネイルSN1〜N4のうち、ユーザの基準視線5によって規定される視界領域23の内部に、操作オブジェクト27、サムネイルSN1、およびSN2が配置されている。一方、サムネイルSN3およびSN4は、視界領域23の外部に配置されている。そのため視界画像生成部223は、操作オブジェクト27、サムネイルSN1、SN2を含む視界画像26を生成する。詳しくは後述するが、視界画像生成部223は、さらに注視点28を含む視界画像26を生成する。注視点28は、ユーザが視界画像26におけるどの位置に視線を当てているのかを示す情報である。   After generating the virtual space data representing the virtual space 2 shown in FIG. 10A, the view image generation unit 223 generates the view image 26 based on the user's reference line of sight 5 in S22. This generation method is the same as the method described with reference to FIG. Here, a view field image 26 corresponding to the platform is generated. In FIG. 10A, among the thumbnails SN1 to N4, an operation object 27, thumbnails SN1, and SN2 are arranged inside the field of view area 23 defined by the user's reference line of sight 5. On the other hand, the thumbnails SN3 and SN4 are arranged outside the field-of-view area 23. Therefore, the view image generation unit 223 generates a view image 26 including the operation object 27 and thumbnails SN1 and SN2. As will be described in detail later, the visual field image generation unit 223 further generates a visual field image 26 including the gazing point 28. The gaze point 28 is information indicating which position in the view image 26 the user is gazing at.

S23において、視界画像生成部223は、生成した視界画像26をHMD110に出力する。S24においてHMD110は、受信した視界画像26をディスプレイ112に表示する。ユーザは、プラットフォームの視界画像26を視認する。サムネイルが関連付けられたオブジェクトが視界画像26に含まれる場合、視界画像26の表示時、当該オブジェクトに関連付けられたサムネイルがディスプレイ112に表示される。これによりユーザは、サムネイルを含む視界画像26を視認する。また、操作オブジェクト27が視界画像26に含まれる場合、視界画像26の表示時、操作オブジェクト27がディスプレイ112に表示される。これによりユーザは、操作オブジェクト27を含む視界画像26を視認する。   In S <b> 23, the visual field image generation unit 223 outputs the generated visual field image 26 to the HMD 110. In S <b> 24, the HMD 110 displays the received view field image 26 on the display 112. The user views the platform view image 26. When an object associated with a thumbnail is included in the view image 26, the thumbnail associated with the object is displayed on the display 112 when the view image 26 is displayed. Thereby, the user visually recognizes the view field image 26 including the thumbnail. When the operation object 27 is included in the view image 26, the operation object 27 is displayed on the display 112 when the view image 26 is displayed. Thereby, the user visually recognizes the view field image 26 including the operation object 27.

図10の(b)に、プラットフォームの視界画像26の一例を示す。この図に示す視界画像26は、操作オブジェクト27、注視点28、サムネイルSN1、およびサムネイルSN2を含む。したがってユーザは、仮想空間2において、操作オブジェクト27、注視点28、サムネイルSN1、およびサムネイルSN2を視認する。   FIG. 10B shows an example of the platform view image 26. The view image 26 shown in this figure includes an operation object 27, a gazing point 28, a thumbnail SN1, and a thumbnail SN2. Therefore, the user visually recognizes the operation object 27, the gazing point 28, the thumbnail SN1, and the thumbnail SN2 in the virtual space 2.

視界画像生成部223は、基準視線5および視線方向N0に基づき視界画像26における注視点28の位置を決定する。ユーザが正面を視認している場合、すなわち、基準視線5が視線方向N0に一致する場合、視界画像生成部223は、視界画像26の生成時に、基準視線5に基づき視界画像26の中央に注視点28を配置する。ユーザが正面を視認したまま視線を変えない場合、基準視線5は視線方向N0に一致するので、注視点28は常に視界画像26の中央に配置される。   The visual field image generation unit 223 determines the position of the gazing point 28 in the visual field image 26 based on the reference visual line 5 and the visual line direction N0. When the user is viewing the front, that is, when the reference line-of-sight 5 coincides with the line-of-sight direction N0, the visual field image generation unit 223 applies a note to the center of the visual field image 26 based on the reference visual line 5 when generating the visual field image 26. The viewpoint 28 is arranged. When the user does not change the line of sight while viewing the front, the reference line of sight 5 coincides with the line-of-sight direction N0, so that the gazing point 28 is always arranged at the center of the field-of-view image 26.

一方、視界画像生成部223は、ユーザが視線を動かしたために視線方向N0が基準視線5からずれた場合、現在の視線方向N0に基づき、視界画像26における注視点28の位置を決定する。具体的には、視界領域23における視線方向N0が交わる交点を特定し、次に、視界画像26におけるこの交点に対応する位置に注視点28が当てられた視界画像26を生成する。   On the other hand, the visual field image generation unit 223 determines the position of the gazing point 28 in the visual field image 26 based on the current visual line direction N0 when the visual line direction N0 deviates from the reference visual line 5 because the user moves the line of sight. Specifically, an intersection point where the line-of-sight direction N0 intersects in the visual field region 23 is specified, and then a visual field image 26 in which the gazing point 28 is applied to a position corresponding to the intersection point in the visual field image 26 is generated.

ユーザがHMD110を動かさずに(基準視線5が固定されたまま)視線だけを動かすと、その視線の動きに追随して、視界画像26における注視点28の位置が変更される。これにより、視界画像26においてユーザが視線を当てた位置に注視点28が表示されるように、視界画像26が更新される。言い換えると、ユーザは、視線の動きによって、視界画像26内において注視点28を自在に動かすことができる。したがってユーザは、注視点28を確認することによって、視界画像26におけるどの箇所に視線を当てているのかを正確に把握することができる。   When the user moves only the line of sight without moving the HMD 110 (while the reference line of sight 5 is fixed), the position of the gazing point 28 in the view field image 26 is changed following the movement of the line of sight. As a result, the view field image 26 is updated so that the gazing point 28 is displayed at the position where the user gazed in the view field image 26. In other words, the user can freely move the gazing point 28 in the view field image 26 by the movement of the line of sight. Accordingly, the user can accurately grasp which part of the view field image 26 is line of sight by confirming the gazing point 28.

図9には示さないが、この後、ユーザがHMD110を動かせば、その動きに連動して視界画像26が更新される。たとえば、ユーザがHMD110を動かすことによって、視界領域23の位置が、サムネイルSN1およびSN3を含む位置に変化すれば、サムネイルSN1およびSN3を含む視界画像26がディスプレイ112に表示される。したがってユーザは、HMD110を適宜動かすことによって、視聴したい動画コンテンツのサムネイルを、自身の視界のうちに収めることができる。   Although not shown in FIG. 9, if the user moves the HMD 110 thereafter, the view field image 26 is updated in conjunction with the movement. For example, when the user moves the HMD 110 and the position of the visual field area 23 changes to a position including the thumbnails SN1 and SN3, the visual field image 26 including the thumbnails SN1 and SN3 is displayed on the display 112. Therefore, the user can put the thumbnail of the moving image content that he / she wants to watch in his / her field of view by moving the HMD 110 as appropriate.

プラットフォームの視界画像26が表示された後、S25において、注視センサ130は、ユーザの右目の視線および左目の視線をそれぞれ検出し、S26において、各検出値を制御回路部200に送信する。視線検出部212が、この検出値を受信する。S27において、視線検出部212は、受信した検出値を用いて、仮想カメラ1のuvw視野座標系におけるユーザの視線方向N0を特定する。   After the platform view image 26 is displayed, the gaze sensor 130 detects the user's right eye gaze and left eye gaze in S25, and transmits each detected value to the control circuit unit 200 in S26. The line-of-sight detection unit 212 receives this detection value. In S <b> 27, the line-of-sight detection unit 212 identifies the user's line-of-sight direction N <b> 0 in the uvw visual field coordinate system of the virtual camera 1 using the received detection value.

S28において、視線管理部232は、視線方向N0と、視界領域23に含まれる各サムネイルとに基づき、視界画像26に含まれる特定のサムネイルに規定時間以上ユーザの視線(注視点28)が当たったか否かを判定する。より詳細には、視線管理部232は、視界領域23における視線方向N0が交わる点が、視界領域23に含まれる特定のサムネイルの表示範囲(配置範囲)に含まれているか否かを判定する。この判定結果がYESであれば、視界画像26に含まれる特定のサムネイルに視線が当たったと判定し、NOであれば、視線は特定のサムネイルに当たっていないと判定する。   In S28, based on the line-of-sight direction N0 and each thumbnail included in the field-of-view area 23, the line-of-sight management unit 232 hits a specific thumbnail included in the field-of-view image 26 with a user's line of sight (gaze point 28) for a specified time or more. Determine whether or not. More specifically, the line-of-sight management unit 232 determines whether or not the point where the line-of-sight direction N0 in the visual field region 23 intersects is included in the display range (arrangement range) of a specific thumbnail included in the visual field region 23. If the determination result is YES, it is determined that the line of sight has hit a specific thumbnail included in the field-of-view image 26. If NO, it is determined that the line of sight has not hit the specific thumbnail.

S28がNoの場合、図9の処理はS25の直前に戻る。この後、S28がYESになるまで、S25〜S28の処理が繰り返される。一方、S28がYESの場合、S29において、コンテンツ特定部233は、規定時間以上視線が当たったと判定されたサムネイルに対応するコンテンツを特定する。たとえばユーザがサムネイルSN1に視線を当てれば、視界画像26においてサムネイルSN1に注視点28が重畳される。さらに、ユーザがサムネイルSN1に規定時間以上視線を当てれば、サムネイルSN1に対応するコンテンツとして、サムネイルSN1の管理データに関連付けられる動画コンテンツを特定する。   When S28 is No, the process of FIG. 9 returns to immediately before S25. Thereafter, the processes of S25 to S28 are repeated until S28 becomes YES. On the other hand, when S28 is YES, in S29, the content specifying unit 233 specifies the content corresponding to the thumbnail that has been determined that the line of sight has been hit for a specified time or more. For example, when the user focuses on the thumbnail SN1, the gazing point 28 is superimposed on the thumbnail SN1 in the view image 26. Furthermore, when the user focuses on the thumbnail SN1 for a predetermined time or more, the moving image content associated with the management data of the thumbnail SN1 is specified as the content corresponding to the thumbnail SN1.

この後、S30において、仮想空間規定部231は、特定された動画コンテンツを再生するための仮想空間データを生成することによって、動画コンテンツ再生用の仮想空間2を規定する。生成の手順は次の通りである。まず仮想空間規定部231は、動画コンテンツに対応した仮想空間2の雛形データを、雛形格納部241から取得する。   Thereafter, in S30, the virtual space defining unit 231 defines the virtual space 2 for reproducing the moving image content by generating virtual space data for reproducing the specified moving image content. The generation procedure is as follows. First, the virtual space defining unit 231 acquires the template data of the virtual space 2 corresponding to the moving image content from the template storage unit 241.

仮想空間規定部231は、コンテンツ特定部233によって特定された動画コンテンツを、コンテンツ格納部242から取得する。仮想空間規定部231は、取得した雛形データに、取得した動画コンテンツを適合することによって、動画コンテンツ再生用の仮想空間2を規定する仮想空間データを生成する。仮想空間規定部231は、仮想空間データにおいて、仮想空間2の天球を構成する各メッシュの管理データに、動画コンテンツに含まれる最初のフレームの画像を構成する各部分画像を適宜関連付ける。   The virtual space defining unit 231 acquires the moving image content specified by the content specifying unit 233 from the content storage unit 242. The virtual space defining unit 231 generates virtual space data that defines the virtual space 2 for reproducing moving image content by adapting the acquired moving image content to the acquired template data. The virtual space defining unit 231 appropriately associates each partial image constituting the first frame image included in the moving image content with the management data of each mesh constituting the celestial sphere of the virtual space 2 in the virtual space data.

ここで生成される仮想空間データによって規定される仮想空間2においては、オブジェクトを配置することが想定されていない。さらに、動画コンテンツには、オブジェクトを規定する管理データが含まれない。そのためS30において、仮想空間規定部231は、オブジェクトの管理データを含まない仮想空間データを生成する。   In the virtual space 2 defined by the virtual space data generated here, it is not assumed that an object is arranged. Furthermore, the moving image content does not include management data that defines the object. Therefore, in S30, the virtual space defining unit 231 generates virtual space data that does not include object management data.

動画コンテンツ再生用の仮想空間2を表す仮想空間データの生成後、S31において、視界画像生成部223は、ユーザの基準視線5に基づき視界画像26を生成する。この生成方法は図8を参照して説明した方法と同一である。ここでは、動画コンテンツの視界画像26が生成される。S32において、視界画像生成部223は、生成した視界画像26をHMD110に出力する。S33においてHMD110は、受信した視界画像26をディスプレイ112に表示することによって、視界画像26を更新する。これにより仮想空間2における動画コンテンツの再生が開始され、ユーザは動画コンテンツの視界画像26を視認する。   After generating the virtual space data representing the virtual space 2 for reproducing moving image content, the view image generating unit 223 generates the view image 26 based on the reference line of sight 5 of the user in S31. This generation method is the same as the method described with reference to FIG. Here, a view image 26 of the moving image content is generated. In S <b> 32, the visual field image generation unit 223 outputs the generated visual field image 26 to the HMD 110. In S <b> 33, the HMD 110 updates the view image 26 by displaying the received view image 26 on the display 112. Thereby, the reproduction of the moving image content in the virtual space 2 is started, and the user visually recognizes the view image 26 of the moving image content.

図9には示さないが、この後、ユーザがHMD110を動かせば、その動きに連動して視界画像26が更新される。したがってユーザは、HMD110を適宜動かすことによって、動画コンテンツを構成する各フレームの全天球画像における所望の位置の部分画像(視界画像26)を、視認することができる。   Although not shown in FIG. 9, if the user moves the HMD 110 thereafter, the view field image 26 is updated in conjunction with the movement. Therefore, the user can visually recognize a partial image (view image 26) at a desired position in the omnidirectional image of each frame constituting the moving image content by appropriately moving the HMD 110.

図10の(c)に、動画コンテンツの視界画像26の一例を示す。この図に示す視界画像26は、ユーザによって選択されたサムネイルSN1に対応する動画コンテンツの視界画像26である。このように、ユーザが、図10の(b)に示すプラットフォームの視界画像26を視認中にサムネイルSN1を視線によって選択すると、ディスプレイ112に表示されるプラットフォームの視界画像26が、図10の(c)に示す動画コンテンツの視界画像26に更新される。すなわちユーザは、仮想空間2において視線移動によってサムネイルSN1を選択することによって、これに対応した動画コンテンツを仮想空間2において視聴することができる。   FIG. 10C shows an example of the visual field image 26 of the moving image content. The view image 26 shown in this figure is the view image 26 of the moving image content corresponding to the thumbnail SN1 selected by the user. As described above, when the user selects the thumbnail SN1 by the line of sight while viewing the platform view image 26 shown in FIG. 10B, the platform view image 26 displayed on the display 112 is shown in FIG. The view image 26 of the moving image content shown in FIG. That is, the user can view the moving image content corresponding to this in the virtual space 2 by selecting the thumbnail SN1 by moving the line of sight in the virtual space 2.

以上のように、ユーザは、仮想空間2において視聴したい動画コンテンツを、仮想空間2における動画コンテンツ選択用のプラットフォームを通じて選択することができる。したがってユーザは、HMD110を装着する前に、制御回路部200に接続される他の一般的なディスプレイを現実空間において視認しながら、仮想空間2において視聴したい動画コンテンツを選択する必要がない。これにより、仮想空間2に対するユーザの没入感をより一層高めることができる。   As described above, the user can select the moving image content desired to view in the virtual space 2 through the moving image content selection platform in the virtual space 2. Therefore, the user does not need to select the moving image content that the user wants to view in the virtual space 2 while visually recognizing another general display connected to the control circuit unit 200 in the real space before wearing the HMD 110. Thereby, a user's immersion feeling with respect to the virtual space 2 can be improved further.

また、制御回路部200は、動画コンテンツの再生中にユーザが所定の操作をHMDシステム100に対して(たとえばコントローラ300を通じて)行えば、動画コンテンツが再生される仮想空間2をユーザに提供することを終了し、それから再び、動画コンテンツ選択用のプラットフォームが展開される仮想空間2をユーザに提供する。これによりユーザは、他のサムネイルを選択することによって、他の動画コンテンツを仮想空間2において視聴することができる。ユーザは、視聴したい動画コンテンツを切り替える際にHMD110を外す必要がないので、仮想空間2に対するユーザの没入感をより一層高めることができる。   In addition, if the user performs a predetermined operation on the HMD system 100 (for example, through the controller 300) during reproduction of the moving image content, the control circuit unit 200 provides the user with the virtual space 2 in which the moving image content is reproduced. Then, again, the virtual space 2 in which the platform for selecting moving image contents is developed is provided to the user. Thus, the user can view other moving image content in the virtual space 2 by selecting another thumbnail. Since the user does not need to remove the HMD 110 when switching the moving image content that the user wants to view, the user's immersion in the virtual space 2 can be further enhanced.

(仮想カメラ1の回転制御)
本実施形態に係る制御回路部200は、通常モード(第1のモード)または回転モード(第2のモード)において動作する。通常モードと回転モードとでは、制御回路部200による仮想カメラ1の制御方法が相違する。通常モードにおいて、制御回路部200は、HMD110の傾きに連動させて仮想空間2における仮想カメラ1の傾きを制御する。したがって、通常モードにおいてユーザがHMD110を傾けると、それに連動して仮想カメラ1も傾き、その傾きに応じた視界画像26がHMD110に表示される。
(Rotation control of virtual camera 1)
The control circuit unit 200 according to the present embodiment operates in the normal mode (first mode) or the rotation mode (second mode). The control method of the virtual camera 1 by the control circuit unit 200 is different between the normal mode and the rotation mode. In the normal mode, the control circuit unit 200 controls the tilt of the virtual camera 1 in the virtual space 2 in conjunction with the tilt of the HMD 110. Therefore, when the user tilts the HMD 110 in the normal mode, the virtual camera 1 is also tilted in conjunction with the tilt, and the view field image 26 corresponding to the tilt is displayed on the HMD 110.

回転モードにおいて、制御回路部200は、仮想空間2における仮想カメラ1の傾きを、HMD110の傾きに連動させて制御しない。したがって、回転モードにおいてユーザがHMD110を傾けても、それに連動して仮想カメラ1は傾かない。その代わりに、制御回路部200は、ユーザによる操作オブジェクト27の操作に応じて、仮想空間2において仮想カメラ1を回転させる。本実施形態ではユーザはHMD110の動きによって操作オブジェクト27を操作することができる。したがって、制御回路部200は、回転モードおいて、HMD110の傾きに応じて仮想カメラ1を回転させる。   In the rotation mode, the control circuit unit 200 does not control the tilt of the virtual camera 1 in the virtual space 2 in conjunction with the tilt of the HMD 110. Therefore, even if the user tilts the HMD 110 in the rotation mode, the virtual camera 1 does not tilt in conjunction with the tilt. Instead, the control circuit unit 200 rotates the virtual camera 1 in the virtual space 2 according to the operation of the operation object 27 by the user. In the present embodiment, the user can operate the operation object 27 by the movement of the HMD 110. Therefore, the control circuit unit 200 rotates the virtual camera 1 according to the inclination of the HMD 110 in the rotation mode.

通常モードでは、ユーザがHMD110の動きを止めると、仮想カメラ1の動きも止まる。したがって、視界画像26の更新も止まる。一方、回転モードでは、ユーザがHMD110の動きを止めても、仮想カメラ1の回転は止まらない。すなわち、ユーザがHMD110を回転開始時の状態からさらに傾けた状態を維持し続ける限り、仮想カメラ1は回転し続ける。これにより、視界画像26も更新され続ける。   In the normal mode, when the user stops the movement of the HMD 110, the movement of the virtual camera 1 also stops. Therefore, the update of the view image 26 is also stopped. On the other hand, in the rotation mode, even if the user stops the movement of the HMD 110, the rotation of the virtual camera 1 does not stop. That is, as long as the user continues to maintain the state in which the HMD 110 is further tilted from the state at the time of starting rotation, the virtual camera 1 continues to rotate. Thereby, the view image 26 is also continuously updated.

図11は、HMDシステム100が回転モードに移行する際の処理の流れを示すシーケンス図である。以下では、プラットフォームが再生される仮想空間2がユーザに提供されている場合を例に挙げて説明する。   FIG. 11 is a sequence diagram illustrating a processing flow when the HMD system 100 shifts to the rotation mode. Hereinafter, a case where the virtual space 2 in which the platform is reproduced is provided to the user will be described as an example.

プラットフォームの視界画像26が表示された後、S41において、HMDセンサ120が、HMD110の位置および傾きを検出して、S42において、検出値を制御回路部200に出力する。HMD検出部211は、この検出値を受信する。仮想カメラ制御部221は、HMD110の位置および傾きの検出値に基づき、上述した手順によって基準視線5を特定する。仮想カメラ制御部221は、特定した基準視線5に基づき、仮想カメラ1を制御する。   After the platform view image 26 is displayed, the HMD sensor 120 detects the position and inclination of the HMD 110 in S41, and outputs the detection value to the control circuit unit 200 in S42. The HMD detection unit 211 receives this detection value. The virtual camera control unit 221 specifies the reference line of sight 5 according to the above-described procedure based on the detected values of the position and inclination of the HMD 110. The virtual camera control unit 221 controls the virtual camera 1 based on the identified reference line of sight 5.

次に、S43において、操作オブジェクト制御部234は、仮想空間2において操作オブジェクト27に基準視線5が規定時間以上当たったか否かを判定する。S43においてNOの場合、視界領域決定部222は、特定した基準視線5に基づき、仮想空間2における視界領域23を決定する。その後、S44において、視界画像生成部223は、視界画像26を生成し、S45においてHMD110に出力する。S46において、HMD110は、受信した視界画像26をディスプレイ112に表示することによって、視界画像26を更新する。これにより、通常モードにおいてユーザがHMD110を動かせば、それに連動して視界画像26が更新される。   Next, in S43, the operation object control unit 234 determines whether or not the reference line of sight 5 has hit the operation object 27 in the virtual space 2 for a specified time or more. In the case of NO in S <b> 43, 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 S44, the visual field image generation unit 223 generates the visual field image 26 and outputs the visual field image 26 to the HMD 110 in S45. In S <b> 46, the HMD 110 updates the view image 26 by displaying the received view image 26 on the display 112. Thereby, if the user moves the HMD 110 in the normal mode, the view image 26 is updated in conjunction with the movement.

ユーザがHMD110を動かした場合、操作オブジェクト27が視界領域23に含まれていれば、操作オブジェクト27は他のオブジェクトと同様に動かない。一方、ユーザがHMD110を動かすことによって、操作オブジェクト27が視界領域23から外れた場合、操作オブジェクト27は視界領域23内に戻るように動く。   When the user moves the HMD 110, if the operation object 27 is included in the view area 23, the operation object 27 does not move in the same manner as other objects. On the other hand, when the user moves the HMD 110 and the operation object 27 moves out of the view area 23, the operation object 27 moves so as to return to the view area 23.

これを実現する手順は次の通りである。まず操作オブジェクト制御部234は、操作オブジェクト27の少なくとも一部が視界領域23の外に位置することを検出する。次に操作オブジェクト制御部234は、操作オブジェクト27の少なくとも一部が視界領域23の外に位置することを検出した場合、操作オブジェクト27を視界領域23の中に移動させる。具体的には、操作オブジェクト27を規定するデータにおける、操作オブジェクト27の位置(座標)を、現在の視界領域23内のいずれかの座標に更新する。   The procedure for realizing this is as follows. First, the operation object control unit 234 detects that at least a part of the operation object 27 is located outside the field-of-view area 23. Next, when the operation object control unit 234 detects that at least a part of the operation object 27 is located outside the view field area 23, the operation object control unit 234 moves the operation object 27 into the view field area 23. Specifically, the position (coordinates) of the operation object 27 in the data defining the operation object 27 is updated to any coordinate in the current visual field region 23.

操作オブジェクト27が視界領域23に戻る位置は、視界領域23内の任意の位置であればよい。操作オブジェクト27が移動する際に移動量が最も少なくなる位置であることが好ましい。たとえば、操作オブジェクト27が視界領域23の右側に位置するようになった場合、操作オブジェクト制御部234は、操作オブジェクト27を視界領域23の右端に移動させることが好ましい。   The position where the operation object 27 returns to the view area 23 may be any position in the view area 23. It is preferable that the position is such that the movement amount is the smallest when the operation object 27 moves. For example, when the operation object 27 is positioned on the right side of the visual field area 23, the operation object control unit 234 preferably moves the operation object 27 to the right end of the visual field area 23.

これにより、通常モードおいて、視界領域23に常に操作オブジェクト27が含まれるので、視界領域23に基づき生成される視界画像26にも、常に操作オブジェクト27が含まれる。したがってユーザは、操作オブジェクト27を選択したい場合、操作オブジェクト27を容易に見つけ出すことができる。また、後述するように基準視線5によって操作オブジェクト27を選択する場合、基準視線5を操作オブジェクト27に当てるためのHMD110の移動制御を、最小限にすることができる。   Thereby, in the normal mode, since the operation object 27 is always included in the view area 23, the view object 26 generated based on the view area 23 always includes the operation object 27. Therefore, when the user wants to select the operation object 27, the user can easily find the operation object 27. Further, as will be described later, when the operation object 27 is selected by the reference line of sight 5, the movement control of the HMD 110 for bringing the reference line of sight 5 to the operation object 27 can be minimized.

一方、S43においてYESの場合、操作オブジェクト制御部234は、S47において、ユーザによって操作オブジェクト27が選択されたことを検出する。このように、ユーザは、視線を操作オブジェクト27に当てることによって、操作オブジェクト27を選択することができる。操作オブジェクト27の選択をトリガとして、S48において、制御回路部200は回転モードに移行する。これにより、ユーザは自らの意思で制御回路部200を回転モードに移行させることができる。回転モードへの移行後、操作オブジェクト27へのユーザの操作に応じて、仮想カメラ1の回転が開始される。   On the other hand, in the case of YES in S43, the operation object control unit 234 detects that the operation object 27 has been selected by the user in S47. In this way, the user can select the operation object 27 by placing the line of sight on the operation object 27. Using the selection of the operation object 27 as a trigger, the control circuit unit 200 shifts to the rotation mode in S48. Thereby, the user can shift the control circuit unit 200 to the rotation mode by his / her own intention. After shifting to the rotation mode, the rotation of the virtual camera 1 is started in response to a user operation on the operation object 27.

図12は、制御回路部200が回転モードにおいて仮想カメラ1の回転を開始する際の処理の流れを示すシーケンス図である。   FIG. 12 is a sequence diagram showing a flow of processing when the control circuit unit 200 starts to rotate the virtual camera 1 in the rotation mode.

回転モードへの移行後、S51において、HMDセンサ120が、HMD110の位置および傾きを検出して、S52において、検出値を制御回路部200に出力する。HMD検出部211は、この検出値を受信する。S53において、操作オブジェクト制御部234は、HMD110の傾きが変化したか否かを判定する。S53においてNOの場合、図12の処理はS51の前に戻る。したがって、操作オブジェクト27の選択後、ユーザがHMD110をさらに傾けるまで、S51〜S53の工程が繰り返される。   After shifting to the rotation mode, the HMD sensor 120 detects the position and inclination of the HMD 110 in S51, and outputs the detected value to the control circuit unit 200 in S52. The HMD detection unit 211 receives this detection value. In S53, the operation object control unit 234 determines whether or not the inclination of the HMD 110 has changed. If NO in S53, the process in FIG. 12 returns to before S51. Therefore, after the operation object 27 is selected, the steps S51 to S53 are repeated until the user further tilts the HMD 110.

一方、S53においてYESの場合、S54において、操作オブジェクト制御部234は、HMD110の傾きの変化量を特定する。S55において、操作オブジェクト制御部234は、特定した傾きの変化量に基づき、ユーザによって指定された操作オブジェクト27の伸張方向(所定方向)および伸張量(所定量)を特定する。S56において、操作オブジェクト制御部234は、操作オブジェクト27を、特定した伸張方向に、特定した伸張量だけ伸張させる。その際、操作オブジェクト制御部234は、操作オブジェクト27の根本から伸張方向の終端部に向かって徐々に操作オブジェクト27が細くなるように、操作オブジェクト27を伸張する。また、操作オブジェクト27の伸張方向の終端部に基準視線5が重畳するように、操作オブジェクト27の表示状態を変更する。   On the other hand, in the case of YES in S53, the operation object control unit 234 specifies the amount of change in the inclination of the HMD 110 in S54. In S55, the operation object control unit 234 specifies the extension direction (predetermined direction) and the extension amount (predetermined amount) of the operation object 27 designated by the user based on the specified change amount of the tilt. In S56, the operation object control unit 234 extends the operation object 27 by the specified extension amount in the specified extension direction. At that time, the operation object control unit 234 expands the operation object 27 so that the operation object 27 gradually becomes narrower from the root of the operation object 27 toward the end portion in the expansion direction. Further, the display state of the operation object 27 is changed so that the reference line of sight 5 is superimposed on the end portion of the operation object 27 in the extension direction.

その後、S57において、回転制御部235は、操作オブジェクト27の伸張方向に基づき仮想カメラ1の回転方向を決定すると共に、操作オブジェクト27の伸張量に基づき仮想カメラ1の回転速度を決定する。その際、操作オブジェクト制御部234は、伸張方向における水平方向の成分に平行な方向を、仮想カメラ1の回転方向として特定することが好ましい。これにより、仮想カメラ1は仮想空間2におけるY軸周りにのみ回転する。また、仮想カメラ1が仮想空間2におけるZ軸周りに回転することを防止することができる。これにより、視界画像26の更新時に仮想空間2の地面が上下に移動するユーザが視認することを防止できるので、仮想空間2におけるユーザの酔い発生を防止することができる。   Thereafter, in S <b> 57, the rotation control unit 235 determines the rotation direction of the virtual camera 1 based on the extension direction of the operation object 27 and determines the rotation speed of the virtual camera 1 based on the extension amount of the operation object 27. At this time, the operation object control unit 234 preferably specifies a direction parallel to the horizontal component in the extension direction as the rotation direction of the virtual camera 1. Thereby, the virtual camera 1 rotates only around the Y axis in the virtual space 2. Further, the virtual camera 1 can be prevented from rotating around the Z axis in the virtual space 2. Thereby, since it can prevent that the user who the ground of the virtual space 2 moves up and down visually at the time of the update of the visual field image 26, generation | occurrence | production of the user's sickness in the virtual space 2 can be prevented.

S58において、仮想カメラ制御部221は、決定された回転方向に決定された回転速度で仮想カメラ1の回転を開始する。仮想カメラ1が回転すると、仮想空間2における仮想カメラ1のロール方向が変わるので、視界領域23が変更される。操作オブジェクト制御部234は、仮想カメラ1の回転時に操作オブジェクト27が常に視界領域23の中央に配置されるように、操作オブジェクト27を制御する。具体的には、操作オブジェクト27の管理データにおいて、操作オブジェクト27の座標を視界領域23の中央の座標に更新する。これにより仮想カメラ1のuvw視野座標系における操作オブジェクト27の位置が固定された状態で、仮想カメラ1および操作オブジェクト27がいずれも仮想空間2において回転する。   In S58, the virtual camera control unit 221 starts the rotation of the virtual camera 1 at the determined rotation speed in the determined rotation direction. When the virtual camera 1 rotates, the roll direction of the virtual camera 1 in the virtual space 2 changes, so that the field-of-view area 23 is changed. The operation object control unit 234 controls the operation object 27 so that the operation object 27 is always arranged at the center of the visual field area 23 when the virtual camera 1 is rotated. Specifically, in the management data of the operation object 27, the coordinates of the operation object 27 are updated to the coordinates at the center of the visual field area 23. Thereby, both the virtual camera 1 and the operation object 27 rotate in the virtual space 2 in a state where the position of the operation object 27 in the uvw visual field coordinate system of the virtual camera 1 is fixed.

視界領域決定部222は、一定時間回転後の仮想カメラ1の向き(ロール方向)に基づき視界領域23を決定する。そして、S59において、視界画像生成部223は、決定された視界領域23に基づき視界画像26を生成し、S60においてHMD110に送信する。S61おいて、HMD110は、受信した視界画像26をディスプレイ112に表示することによって、視界画像26を更新する。これにより、仮想カメラ1の回転前の視界画像26が、仮想カメラ1の回転後の視界画像26に更新される。   The visual field area determination unit 222 determines the visual field area 23 based on the direction (roll direction) of the virtual camera 1 after rotation for a certain time. In step S59, the visual field image generation unit 223 generates a visual field image 26 based on the determined visual field region 23, and transmits the visual field image 26 to the HMD 110 in step S60. In S <b> 61, the HMD 110 updates the view image 26 by displaying the received view image 26 on the display 112. Thereby, the view image 26 before the rotation of the virtual camera 1 is updated to the view image 26 after the rotation of the virtual camera 1.

図13は、仮想カメラ1が回転した後の仮想空間2および視界画像26を示す図である。図13の(a)に仮想空間2を示し、図13の(b)に視界画像26を示す。以下では、操作オブジェクト27の選択後、ユーザが首を左側にねじることによって、操作オブジェクト27を左側に伸張させる操作を操作オブジェクト27に対して行った例を説明する。この場合、操作オブジェクト27の伸張方向はユーザから見て左側の方向なので、仮想カメラ1の回転方向として、Y軸を自転軸とした左回りの回転方向が決定される。したがって仮想カメラ1は、Y軸を自転軸として左回りに回転する。   FIG. 13 is a diagram illustrating the virtual space 2 and the view image 26 after the virtual camera 1 is rotated. FIG. 13A shows the virtual space 2 and FIG. 13B shows the view field image 26. Hereinafter, an example will be described in which after the operation object 27 is selected, the user performs an operation on the operation object 27 to expand the operation object 27 to the left side by twisting the neck to the left side. In this case, since the extension direction of the operation object 27 is the left direction when viewed from the user, the counterclockwise rotation direction with the Y axis as the rotation axis is determined as the rotation direction of the virtual camera 1. Therefore, the virtual camera 1 rotates counterclockwise about the Y axis as a rotation axis.

仮想カメラ1が左回りに回転することによって、視界領域23の位置が、仮想空間2において左回りにずれる。これにより、図13の(a)に示すように、視界領域23におけるサムネイルSN1およびサムネイルSN2の位置が、回転開始前の位置よりも相対的に右側にずれるようになる。仮想カメラ1は回転中であるので、操作オブジェクト27は伸張している。   By rotating the virtual camera 1 counterclockwise, the position of the visual field region 23 is shifted counterclockwise in the virtual space 2. As a result, as shown in FIG. 13A, the positions of the thumbnail SN1 and the thumbnail SN2 in the view field area 23 are shifted to the right relative to the position before the rotation is started. Since the virtual camera 1 is rotating, the operation object 27 is expanded.

図13の(b)に示すように、仮想カメラ1が回転した後の視界領域23に基づく視界画像26には、サムネイルSN1およびサムネイルSN2が含まれる。視界領域23におけるサムネイルSN1およびサムネイルSN2の位置が仮想カメラ1の回転開始前よりも右側にずれていることから、これに対応して、視界画像26におけるサムネイルSN1およびサムネイルSN2の位置も、仮想カメラ1の回転開始前よりも右側にずれている。したがってユーザは、仮想カメラ1が左回りの回転を開始したことを把握することができる。   As shown in FIG. 13B, the view field image 26 based on the view field area 23 after the virtual camera 1 rotates includes a thumbnail SN1 and a thumbnail SN2. Since the positions of the thumbnail SN1 and the thumbnail SN2 in the view area 23 are shifted to the right side before the rotation of the virtual camera 1 is started, correspondingly, the positions of the thumbnail SN1 and the thumbnail SN2 in the view image 26 are also the virtual camera. 1 is shifted to the right than before the start of rotation. Therefore, the user can grasp that the virtual camera 1 has started to rotate counterclockwise.

仮想カメラ1の回転開始後、ユーザが左側に首をねじり続けている間、仮想カメラ1は左回りに回転し続ける。一方、ユーザが、首をねじることを止めて、顔を正面に向けると、仮想カメラ1の回転は停止される。以下では、これらの処理の流れを説明する。   After the virtual camera 1 starts to rotate, the virtual camera 1 continues to rotate counterclockwise while the user continues to twist his neck to the left. On the other hand, when the user stops twisting his neck and turns his face to the front, the rotation of the virtual camera 1 is stopped. Hereinafter, the flow of these processes will be described.

図14は、制御回路部200が回転モードにおいて仮想カメラ1をさらに回転させるかまたは仮想カメラ1の回転を停止させる際の処理の流れを示すシーケンス図である。   FIG. 14 is a sequence diagram illustrating a processing flow when the control circuit unit 200 further rotates the virtual camera 1 or stops the rotation of the virtual camera 1 in the rotation mode.

仮想カメラ1の回転中に、S71において、HMDセンサ120が、HMD110の位置および傾きを検出して、S72において、検出値を制御回路部200に出力する。HMD検出部211は、この検出値を受信する。S73において、操作オブジェクト制御部234は、HMD110の現在の傾きが、操作オブジェクト27の選択時のHMD110の傾き一致するか否かを判定する。S73においてNOの場合、S74において、仮想カメラ制御部221は、仮想カメラ1をさらに回転させる。   While the virtual camera 1 is rotating, the HMD sensor 120 detects the position and inclination of the HMD 110 in S71, and outputs the detected value to the control circuit unit 200 in S72. The HMD detection unit 211 receives this detection value. In S <b> 73, the operation object control unit 234 determines whether or not the current inclination of the HMD 110 matches the inclination of the HMD 110 when the operation object 27 is selected. If NO in S73, the virtual camera control unit 221 further rotates the virtual camera 1 in S74.

その後、視界領域決定部222は、一定時間回転後の仮想カメラ1の向き(ロール方向)に基づき視界領域23を決定する。そして、S75において、視界画像生成部223は、決定された視界領域23に基づき視界画像26を生成し、S76においてHMD110に送信する。S77において、HMD110は、受信した視界画像26をディスプレイ112に表示することによって、視界画像26を更新する。これにより、仮想カメラ1を一定時間回転した後の視界画像26が、仮想カメラ1をさらに回転した後の視界画像26に更新される。   Thereafter, the visual field region determination unit 222 determines the visual field region 23 based on the direction (roll direction) of the virtual camera 1 after rotation for a predetermined time. In step S75, the visual field image generation unit 223 generates the visual field image 26 based on the determined visual field region 23, and transmits the visual field image 26 to the HMD 110 in step S76. In S <b> 77, the HMD 110 updates the view image 26 by displaying the received view image 26 on the display 112. Thereby, the view image 26 after rotating the virtual camera 1 for a certain time is updated to the view image 26 after further rotating the virtual camera 1.

S77の後、図14に示す処理はS71の前に戻る。したがって、仮想カメラ1の回転開始後、ユーザがHMD110の傾きを元に戻す(操作オブジェクト27の選択時の傾きに戻す)まで、S71〜S77の工程が繰り返される。すなわち、操作オブジェクト27に対するユーザの操作が検出され続ける限り、仮想カメラ制御部221は仮想カメラ1を回転させ続ける。   After S77, the process shown in FIG. 14 returns to before S71. Therefore, after the rotation of the virtual camera 1 is started, the processes of S71 to S77 are repeated until the user restores the inclination of the HMD 110 (returns to the inclination when the operation object 27 is selected). That is, as long as a user operation on the operation object 27 is continuously detected, the virtual camera control unit 221 continues to rotate the virtual camera 1.

図15は、仮想カメラ1がさらに回転した後の仮想空間2および視界画像26を示す図である。図15の(a)に仮想空間2を示し、図15の(b)に視界画像26を示す。仮想カメラ1が左回りにさらに回転することによって、視界領域23の位置も、仮想空間2においてさらに左回りにずれる。これにより視界領域23は、仮想空間2におけるサムネイルSN1、サムネイルSN3、およびサムネイルSN4を含む位置に配置されるようになる。仮想カメラ1が回転中であるので、操作オブジェクト27も依然として伸張したままである。   FIG. 15 is a diagram illustrating the virtual space 2 and the field-of-view image 26 after the virtual camera 1 has further rotated. FIG. 15A shows the virtual space 2, and FIG. 15B shows the view field image 26. As the virtual camera 1 further rotates counterclockwise, the position of the visual field region 23 is further shifted counterclockwise in the virtual space 2. As a result, the visual field region 23 is arranged at a position including the thumbnail SN1, the thumbnail SN3, and the thumbnail SN4 in the virtual space 2. Since the virtual camera 1 is rotating, the operation object 27 is still stretched.

図15の(b)に示すように、仮想カメラ1がさらに回転した後の視界領域23に基づく視界画像26には、サムネイルSN1、サムネイルSN3、およびサムネイルSN4が含まれる。したがってユーザは、仮想カメラ1の回転中に、サムネイルSN4が新たに自身の視界に入ったことを把握する。以下では、この時点で仮想カメラ1の回転を停止させるための操作を操作オブジェクト27に対して行う例を説明する。   As shown in FIG. 15B, the view field image 26 based on the view field area 23 after the virtual camera 1 further rotates includes a thumbnail SN1, a thumbnail SN3, and a thumbnail SN4. Therefore, the user grasps that the thumbnail SN4 newly enters his field of view while the virtual camera 1 is rotating. Hereinafter, an example in which an operation for stopping the rotation of the virtual camera 1 at this time is performed on the operation object 27 will be described.

S73においてYESの場合、S78において、操作オブジェクト制御部234は、ユーザによる操作オブジェクト27への伸張方向および伸張量の指定が解除されたことを検出する。これにより操作オブジェクト制御部234は、S79において、操作オブジェクト27の形状を元の円形に戻す。次にS80において、操作オブジェクト制御部234は、操作オブジェクト27の選択を解除する。次にS81において、仮想カメラ制御部221は、仮想カメラ1の回転を停止させる。   If YES in S73, in S78, the operation object control unit 234 detects that the designation of the extension direction and extension amount to the operation object 27 by the user has been cancelled. Thereby, the operation object control unit 234 returns the shape of the operation object 27 to the original circle in S79. Next, in S80, the operation object control unit 234 cancels the selection of the operation object 27. Next, in S81, the virtual camera control unit 221 stops the rotation of the virtual camera 1.

仮想カメラ1の回転停止後、S82において、制御回路部200は、通常モードに移行する。これにより視界領域決定部222は、仮想カメラ1の回転が停止した時点での仮想カメラ1の向きに基づき視界領域23を特定する。視界画像生成部223は、S83において、視界領域23に基づき視界画像26を生成し、S84において視界画像26をHMD110に出力する。HMD110は、S85において、受信した視界画像26をディスプレイ112に表示することによって、視界画像26を更新する。   After the rotation of the virtual camera 1 is stopped, in S82, the control circuit unit 200 shifts to the normal mode. Thereby, the visual field region determination unit 222 identifies the visual field region 23 based on the orientation of the virtual camera 1 at the time when the rotation of the virtual camera 1 stops. The view image generation unit 223 generates a view image 26 based on the view region 23 in S83, and outputs the view image 26 to the HMD 110 in S84. In S85, the HMD 110 updates the view image 26 by displaying the received view image 26 on the display 112.

図16は、仮想カメラ1の回転が停止した後の仮想空間2および視界画像26を示す図である。図16の(a)に仮想空間2を示し、図16の(b)に視界画像26を示す。図16には、図15に示す状態まで仮想カメラ1が回転した直後に、仮想カメラ1の回転が停止した場合の例を示す。仮想カメラ1の回転停止後、仮想空間2における操作オブジェクト27の形状は元の円形に戻っている。これに対応して、視界画像26に含まれる操作オブジェクト27の形状も、元の円形に戻っている。操作オブジェクト27は選択されておらず、さらに制御回路部200は通常モードで動作している。したがってユーザは、通常通り、視線を動かすことによって視界画像26内の所望のサムネイルを選択することができる。   FIG. 16 is a diagram showing the virtual space 2 and the view field image 26 after the rotation of the virtual camera 1 is stopped. FIG. 16A shows the virtual space 2, and FIG. 16B shows the view field image 26. FIG. 16 shows an example in which the rotation of the virtual camera 1 is stopped immediately after the virtual camera 1 is rotated to the state shown in FIG. After the rotation of the virtual camera 1 is stopped, the shape of the operation object 27 in the virtual space 2 returns to the original circle. Correspondingly, the shape of the operation object 27 included in the view field image 26 is also returned to the original circular shape. The operation object 27 is not selected, and the control circuit unit 200 operates in the normal mode. Therefore, the user can select a desired thumbnail in the view field image 26 by moving the line of sight as usual.

図16の(b)に示す視界画像26には、仮想空間2においてサムネイルSN1から離れた位置にあるサムネイルSN4が含まれる。したがってユーザは、仮想カメラ1の回転前には視認できなかったサムネイルSN4を、簡単な操作によって容易に自身の視野に収めることができる。また、ユーザは、サムネイルSN4に視線を当てることによって、サムネイルSN4に対応した動画コンテンツの視聴を開始することができる。   The field-of-view image 26 shown in FIG. 16B includes a thumbnail SN4 that is located away from the thumbnail SN1 in the virtual space 2. Therefore, the user can easily put the thumbnail SN4 that could not be visually recognized before the rotation of the virtual camera 1 into his field of view by a simple operation. Further, the user can start viewing the moving image content corresponding to the thumbnail SN4 by gazing at the thumbnail SN4.

以上のように、本発明に係るHMDシステム100は、通常モードでは仮想空間2に対するユーザの没入感を高めることができる。さらに、回転モードでは、ユーザは、通常モードに比べてより簡単な操作で、仮想空間2における所望の箇所を視認することができる。HMDシステム100が通常モードおよび回転モードの両方に対応していることによって、仮想空間2におけるユーザの没入間を高めつつ、仮想空間2における操作性をより高めることができる。また、各サムネイルを仮想空間2における幅広い範囲にそれぞれ配置することができるので、仮想空間2をより有効に活用することができる。   As described above, the HMD system 100 according to the present invention can enhance the user's immersion in the virtual space 2 in the normal mode. Further, in the rotation mode, the user can visually recognize a desired location in the virtual space 2 with a simpler operation than in the normal mode. Since the HMD system 100 supports both the normal mode and the rotation mode, the operability in the virtual space 2 can be further improved while increasing the user's immersion in the virtual space 2. Further, since each thumbnail can be arranged in a wide range in the virtual space 2, the virtual space 2 can be used more effectively.

制御回路部200は、回転モードにおいて、操作オブジェクト27の伸張量が閾値を超えた場合、仮想カメラ1の回転を停止してもよい。具体的には、操作オブジェクト制御部234は、第2のモードにおいて、操作オブジェクト27の伸張量が閾値を超えた場合、操作オブジェクトを元の形状に戻し、かつ、操作オブジェクトの選択を解除する。操作オブジェクト制御部234は、操作オブジェクト27を元の形状に戻す前に、伸張した操作オブジェクト27を切るように操作オブジェクト27の表示状態を変更してもよい。仮想カメラ制御部221は、操作オブジェクト27の伸張量が閾値を超えた場合、仮想カメラ1の回転を停止する。この後、制御回路部200は、通常モードに移行する。この場合も、ユーザは簡単な操作で仮想カメラ1の停止させることができる。   In the rotation mode, the control circuit unit 200 may stop the rotation of the virtual camera 1 when the expansion amount of the operation object 27 exceeds the threshold value. Specifically, the operation object control unit 234 returns the operation object to the original shape and cancels the selection of the operation object when the expansion amount of the operation object 27 exceeds the threshold value in the second mode. The operation object control unit 234 may change the display state of the operation object 27 so as to cut the extended operation object 27 before returning the operation object 27 to its original shape. The virtual camera control unit 221 stops the rotation of the virtual camera 1 when the expansion amount of the operation object 27 exceeds the threshold value. Thereafter, the control circuit unit 200 shifts to the normal mode. Also in this case, the user can stop the virtual camera 1 with a simple operation.

(仮想空間2を回転させる例)
制御回路部200は、回転モードにおいて、操作オブジェクト27に対するユーザの操作に基づき、仮想カメラ1ではなく仮想空間2を回転させてもよい。この場合、回転制御部235は、特定した回転方向および回転速度を、仮想空間規定部231に通知する。仮想空間規定部231は、通知された回転方向および回転速度で仮想空間2を回転させる。ここでいう「回転」とは、仮想空間2の中心21を通る軸を自転軸とした仮想空間2の自転を意味する。
(Example of rotating the virtual space 2)
The control circuit unit 200 may rotate the virtual space 2 instead of the virtual camera 1 based on a user operation on the operation object 27 in the rotation mode. In this case, the rotation control unit 235 notifies the virtual space defining unit 231 of the specified rotation direction and rotation speed. The virtual space defining unit 231 rotates the virtual space 2 with the notified rotation direction and rotation speed. Here, “rotation” means the rotation of the virtual space 2 with the axis passing through the center 21 of the virtual space 2 as the rotation axis.

仮想空間規定部231は、仮想空間2のXYZ座標系をグローバル座標系において回転させることによって、仮想空間2を回転させる。このとき、仮想空間データに含まれるXYZ座標系を規定するデータを処理することによって、回転後のXYZ座標系を規定するデータに更新する。仮想空間2における各メッシュの位置はXYZ座標系における座標として各メッシュの管理データに規定されているので、XYZ座標系がグローバル座標系において回転することによって、各メッシュもグローバル座標系において同様に回転する。同様に、仮想空間2に配置されるサムネイルSN1〜SN4の位置も、XYZ座標系における座標として各サムネイルの管理データに規定されているので、XYZ座標系がグローバル座標系において回転することによって、サムネイルSN1〜SN4もグローバル座標系において同様に回転する。   The virtual space defining unit 231 rotates the virtual space 2 by rotating the XYZ coordinate system of the virtual space 2 in the global coordinate system. At this time, by processing the data defining the XYZ coordinate system included in the virtual space data, the data is updated to data defining the rotated XYZ coordinate system. Since the position of each mesh in the virtual space 2 is defined in the management data of each mesh as coordinates in the XYZ coordinate system, each mesh is similarly rotated in the global coordinate system when the XYZ coordinate system rotates in the global coordinate system. To do. Similarly, since the positions of the thumbnails SN1 to SN4 arranged in the virtual space 2 are also defined in the management data of each thumbnail as coordinates in the XYZ coordinate system, the thumbnails are displayed by rotating the XYZ coordinate system in the global coordinate system. SN1 to SN4 also rotate in the same manner in the global coordinate system.

仮想空間規定部231は、仮想空間2を回転させる際、仮想カメラ1を仮想空間2と共に回転させない。すなわち、グローバル座標系における仮想カメラ1の位置および傾きを固定したまま、仮想空間2を回転させる。したがって、仮想空間2が回転すると、仮想空間2における仮想カメラ1のロール方向が相対的に変化する(仮想空間2に対して相対的に回転する)。その結果、視界領域23の位置も相対的に変化するので、その変化に追随して視界領域23に基づく視界画像26も変化する。   The virtual space defining unit 231 does not rotate the virtual camera 1 together with the virtual space 2 when rotating the virtual space 2. That is, the virtual space 2 is rotated while the position and inclination of the virtual camera 1 in the global coordinate system are fixed. Therefore, when the virtual space 2 rotates, the roll direction of the virtual camera 1 in the virtual space 2 changes relatively (rotates relative to the virtual space 2). As a result, since the position of the visual field area 23 also changes relatively, the visual field image 26 based on the visual field area 23 also changes following the change.

仮想空間2が鉛直方向を自転軸として左回りに回転すると、仮想空間2における視界領域23の位置は、仮想空間2において相対的に右回りの方向に移動する。これにより視界画像26は、ユーザから見て右から左に流れるように更新される。逆に、仮想空間2が鉛直方向を自転軸として右回りに回転すると、仮想空間2における視界領域23の位置は、仮想空間2において相対的に左回りの方向に移動する。これにより視界画像26は、ユーザから見て左から右に流れるように更新される。   When the virtual space 2 rotates counterclockwise about the vertical direction as the axis of rotation, the position of the visual field area 23 in the virtual space 2 moves relatively clockwise in the virtual space 2. As a result, the view field image 26 is updated so as to flow from right to left as viewed from the user. Conversely, when the virtual space 2 rotates clockwise about the vertical direction as the axis of rotation, the position of the visual field region 23 in the virtual space 2 moves in a relatively counterclockwise direction in the virtual space 2. As a result, the view field image 26 is updated so as to flow from left to right as viewed from the user.

仮想空間規定部231は、仮想空間2を回転させる際、操作オブジェクト27は仮想空間2と共に回転させないように制御する。具体的には、仮想カメラ1のuvw視野座標系における基準視線5と操作オブジェクトとの位置関係を維持したまま、仮想空間2を回転させる。言い換えると、仮想空間2の回転時、視界領域23において基準視線5が交わる点に操作オブジェクト27が常に配置されるように、仮想空間2における操作オブジェクト27の位置を更新する。この結果、回転モードにおいて仮想空間2がどれだけ回転しても、視界画像26には必ず操作オブジェクト27が含まれる。ユーザは、仮想空間2の回転中において、伸張した操作オブジェクト27を常に視認することによって、現在、操作オブジェクト27に対する操作に基づき仮想空間2が回転していることを認識することができる。   The virtual space defining unit 231 performs control so that the operation object 27 is not rotated together with the virtual space 2 when rotating the virtual space 2. Specifically, the virtual space 2 is rotated while maintaining the positional relationship between the reference line of sight 5 and the operation object in the uvw visual field coordinate system of the virtual camera 1. In other words, when the virtual space 2 is rotated, the position of the operation object 27 in the virtual space 2 is updated so that the operation object 27 is always arranged at a point where the reference line of sight 5 intersects in the visual field region 23. As a result, no matter how much the virtual space 2 rotates in the rotation mode, the view object image 26 always includes the operation object 27. The user can recognize that the virtual space 2 is currently rotating based on an operation on the operation object 27 by constantly viewing the extended operation object 27 while the virtual space 2 is rotating.

ユーザによって指定された操作オブジェクト27の伸張方向に基づく仮想空間2の回転方向は、同じ伸張方向が指定された場合の仮想カメラ1の回転方向と逆であることが好ましい。これにより、視界画像26が流れる方向を、仮想カメラ1の回転時と仮想空間2の回転時とで一致させることができる。したがって、仮想カメラ1または仮想空間2のいずれを回転させる場合でも、操作オブジェクト27に対するユーザの同一の操作に基づく視界画像26の流れる方向に一貫性を持たせることができる。   The rotation direction of the virtual space 2 based on the extension direction of the operation object 27 designated by the user is preferably opposite to the rotation direction of the virtual camera 1 when the same extension direction is designated. As a result, the direction in which the visual field image 26 flows can be matched between when the virtual camera 1 rotates and when the virtual space 2 rotates. Therefore, regardless of whether the virtual camera 1 or the virtual space 2 is rotated, the direction in which the visual field image 26 flows based on the same operation of the user with respect to the operation object 27 can be made consistent.

(視線による操作オブジェクト27の操作)
通常モードにおいて、ユーザは、HMD110ではなく視線を動かすことによって、操作オブジェクト27を選択したり操作したりしてもよい。この場合、ユーザは、視界画像26に含まれる操作オブジェクト27に視線を向けることによって、視界画像26において注視点28を操作オブジェクト27に当てる。視線管理部232は、注視点28が操作オブジェクト27に規定時間以上当たった否かを判定する。この判定結果が真である場合、操作オブジェクト制御部234は、操作オブジェクト27がユーザによって選択されたことを検出する。これにより、制御回路部200は回転モードに移行する。
(Operation of the operation object 27 by line of sight)
In the normal mode, the user may select or operate the operation object 27 by moving the line of sight instead of the HMD 110. In this case, the user focuses the gazing point 28 on the operation object 27 in the view image 26 by directing a line of sight toward the operation object 27 included in the view image 26. The line-of-sight management unit 232 determines whether or not the gazing point 28 has hit the operation object 27 for a predetermined time or more. When the determination result is true, the operation object control unit 234 detects that the operation object 27 has been selected by the user. Thereby, the control circuit unit 200 shifts to the rotation mode.

視線による操作オブジェクト27の選択後、ユーザは、視線移動によって操作オブジェクト27を操作することができる。この場合、ユーザは、操作オブジェクト27が選択されているときに、視線をいずれかの方向に変化させる。視線管理部232は、視線変化前後の各視線方向N0に基づき、視線方向N0の移動方向および移動量を特定する。操作オブジェクト制御部234は、視線方向N0の移動方向に基づき操作オブジェクト27の伸張方向を決定し、さらに、視線方向N0の移動量に基づき操作オブジェクト27の伸張量を決定する。伸張方向および伸張量の決定後の操作オブジェクト27の伸張および仮想カメラ1(または仮想空間2)の回転方法は、上述した例と同一である。   After selecting the operation object 27 by line of sight, the user can operate the operation object 27 by moving the line of sight. In this case, the user changes the line of sight in either direction when the operation object 27 is selected. The line-of-sight management unit 232 identifies the movement direction and amount of movement in the line-of-sight direction N0 based on the respective line-of-sight directions N0 before and after the line-of-sight change. The operation object control unit 234 determines the extension direction of the operation object 27 based on the movement direction in the line-of-sight direction N0, and further determines the extension amount of the operation object 27 based on the movement amount in the line-of-sight direction N0. The extension method of the operation object 27 and the rotation method of the virtual camera 1 (or the virtual space 2) after the extension direction and the extension amount are determined are the same as in the above-described example.

以上の例では、ユーザは、HMD110を動かすことなく、視線を変化させる(眼球を動かす)ことによって、仮想カメラ1または仮想空間2を所望の方向に回転させることができる。たとえば、回転モードにおいてユーザが正面右側に視線を移せば、仮想カメラ1を右回り(仮想空間2を左回り)に回転させることができる。一方、回転モードにおいてユーザが正面左側に視線を移せば、仮想カメラ1を左回り(仮想空間2を右回り)に回転させることができる。これらのようにユーザは、より簡単な操作で、仮想空間2における所望の箇所を自身の視界に収めることができる。   In the above example, the user can rotate the virtual camera 1 or the virtual space 2 in a desired direction by changing the line of sight (moving the eyeball) without moving the HMD 110. For example, when the user moves his / her line of sight to the right side in the rotation mode, the virtual camera 1 can be rotated clockwise (the virtual space 2 is counterclockwise). On the other hand, when the user moves his / her line of sight to the left side in the rotation mode, the virtual camera 1 can be rotated counterclockwise (the virtual space 2 is rotated clockwise). As described above, the user can place a desired portion in the virtual space 2 in his / her field of view with a simpler operation.

(コントローラ300による回転制御)
ユーザは、コントローラ300を操作することによって、操作オブジェクト27を選択したり操作したりこともできる。この場合、通常モードにおいて、操作オブジェクト制御部234は、ユーザがコントローラ300に対して操作オブジェクト27を選択するための操作を行った場合、ユーザによって操作オブジェクト27が選択されたことを検出する。また、回転モードにおいて、操作オブジェクト制御部234は、ユーザがコントローラ300を操作することによって操作オブジェクト27の伸張方向および伸張量を操作オブジェクト27に指定する操作を行った場合、これらの伸張方向および伸張量を特定する。伸張方向および伸張量の決定後の操作オブジェクト27の伸張および仮想カメラ1(または仮想空間2)の回転方法は、上述した例と同一である。
(Rotation control by the controller 300)
The user can also select and operate the operation object 27 by operating the controller 300. In this case, in the normal mode, when the user performs an operation for selecting the operation object 27 on the controller 300, the operation object control unit 234 detects that the operation object 27 has been selected by the user. Further, in the rotation mode, when the user operates the controller 300 to perform an operation of designating the expansion direction and expansion amount of the operation object 27 to the operation object 27, the expansion direction and expansion of the operation object 27 are performed. Specify the amount. The expansion method of the operation object 27 and the rotation method of the virtual camera 1 (or the virtual space 2) after determining the expansion direction and the expansion amount are the same as the above-described example.

以上の例では、ユーザは、HMD110を動かすことなく、かつ視線を変化させることなく、コントローラ300を操作することによって、仮想カメラ1または仮想空間2を所望の方向に回転させることができる。たとえば、回転モードにおいてユーザが操作オブジェクト27を右側に伸張させるための操作をコントローラ300に対して行えば、仮想カメラ1を右回り(仮想空間2を左回り)に回転させることができる。一方、回転モードにおいてユーザが操作オブジェクト27を左側に伸張するための操作をコントローラ300に対して行えば、仮想カメラ1を左回り(仮想空間2を右回り)に回転させることができる。   In the above example, the user can rotate the virtual camera 1 or the virtual space 2 in a desired direction by operating the controller 300 without moving the HMD 110 and without changing the line of sight. For example, if the user performs an operation on the controller 300 to extend the operation object 27 to the right in the rotation mode, the virtual camera 1 can be rotated clockwise (the virtual space 2 is rotated counterclockwise). On the other hand, if the user performs an operation on the controller 300 to extend the operation object 27 to the left in the rotation mode, the virtual camera 1 can be rotated counterclockwise (the virtual space 2 is rotated clockwise).

コントローラ300は、ユーザが右手で持つ右コントローラと、ユーザが左手で持つ左コントローラとからなるものであってもよい。この場合、制御回路部200は、右コントローラの位置および傾きの検知値、ならびに、右コントローラが備える各ボタンへのユーザの押下操作の検出結果に基づき、ユーザの仮想右手を仮想空間2に生成することができる。同様に、制御回路部200は、左コントローラの位置および傾きの検知値、ならびに、左コントローラが備える各ボタンへのユーザの押下操作の検出結果に基づき、ユーザの仮想左手を仮想空間2に生成することができる。仮想右手および仮想左手は、いずれもオブジェクトである。   The controller 300 may include a right controller that the user has with the right hand and a left controller that the user has with the left hand. In this case, the control circuit unit 200 generates the user's virtual right hand in the virtual space 2 based on the detection value of the position and inclination of the right controller and the detection result of the user's pressing operation on each button included in the right controller. be able to. Similarly, the control circuit unit 200 generates the virtual left hand of the user in the virtual space 2 based on the detection value of the position and inclination of the left controller and the detection result of the user's pressing operation on each button included in the left controller. be able to. The virtual right hand and the virtual left hand are both objects.

この態様では、ユーザは、仮想右手または仮想左手によって操作オブジェクト27に作用を与えることによって、操作オブジェクト27を選択したり操作したりすることができる。たとえばユーザが、仮想右手を操作オブジェクト27に接触させるように右手を動かした場合、操作オブジェクト制御部234は、操作オブジェクト27がユーザによって選択されたことを検出する。この後、ユーザが、仮想右手で操作オブジェクト27をつまむための操作をコントローラ300に対して行う(たとえば右コントローラのいずれかのボタンを押下する)と共に、仮想右手によって操作オブジェクト27を所定方向にドラッグするように右手を動かした場合、操作オブジェクト制御部234は、右手を動かす前後の右コントローラの位置の各検知値に基づき、操作オブジェクト27の伸張方向および伸張量を特定する。伸張方向および伸張量の決定後の操作オブジェクト27の伸張および仮想カメラ1(または仮想空間2)の回転方法は、上述した例と同一である。   In this aspect, the user can select and operate the operation object 27 by acting on the operation object 27 with the virtual right hand or the virtual left hand. For example, when the user moves the right hand so that the virtual right hand contacts the operation object 27, the operation object control unit 234 detects that the operation object 27 has been selected by the user. Thereafter, the user performs an operation for pinching the operation object 27 with the virtual right hand on the controller 300 (for example, pressing any button of the right controller) and drags the operation object 27 in a predetermined direction with the virtual right hand. When the right hand is moved in such a manner, the operation object control unit 234 specifies the extension direction and the extension amount of the operation object 27 based on the detected values of the position of the right controller before and after the right hand is moved. The extension method of the operation object 27 and the rotation method of the virtual camera 1 (or the virtual space 2) after the extension direction and the extension amount are determined are the same as in the above-described example.

以上の例では、ユーザは、HMD110を動かすことなく、かつ視線を変化させることなく、右コントローラを操作することによって、仮想カメラ1または仮想空間2を所望の方向に回転させることができる。たとえば、回転モードにおいて、ユーザが、仮想右手によって操作オブジェクト27を右方向にドラッグするように右コントローラを操作すれば、仮想カメラ1を右回り(仮想空間2を左回り)に回転させることができる。一方、回転モードにおいて、ユーザが、仮想右手によって操作オブジェクト27を左側にドラッグするように右コントローラを操作すれば、仮想カメラ1を左回り(仮想空間2を右回り)に回転させることができる。これらの場合、ユーザは、より直感的に、仮想カメラ1または仮想空間2を回転させることができる。   In the above example, the user can rotate the virtual camera 1 or the virtual space 2 in a desired direction by operating the right controller without moving the HMD 110 and without changing the line of sight. For example, in the rotation mode, if the user operates the right controller so as to drag the operation object 27 in the right direction with the virtual right hand, the virtual camera 1 can be rotated clockwise (the virtual space 2 is rotated counterclockwise). . On the other hand, in the rotation mode, if the user operates the right controller so as to drag the operation object 27 to the left with the virtual right hand, the virtual camera 1 can be rotated counterclockwise (the virtual space 2 is rotated clockwise). In these cases, the user can rotate the virtual camera 1 or the virtual space 2 more intuitively.

(機能区画による回転制御)
プラットフォームが展開される仮想空間2を構成する天球面におけるいずれかの位置に、機能区画が規定されていてもよい。機能区画は、所定の機能を割り当てることができる領域である。以下では、機能区画をユーザが選択した場合に、制御回路部200が回転モードに移行する例を説明する。以下の例では、機能区画には、ユーザの視線(視界方向または視線方向N0)が機能区画に当たったか否かを検出する機能が割り当てられている。さらに、機能区画には、ユーザの視線が機能区画に当たった時間を検出する機能も割り当てられている。
(Rotation control by functional section)
A functional partition may be defined at any position on the celestial sphere constituting the virtual space 2 where the platform is developed. The functional partition is an area to which a predetermined function can be assigned. Hereinafter, an example in which the control circuit unit 200 shifts to the rotation mode when the user selects a functional section will be described. In the following example, a function for detecting whether or not the user's line of sight (viewing direction or line-of-sight direction N0) hits the functional section is assigned to the functional section. Further, a function for detecting the time when the user's line of sight hits the function section is also assigned to the function section.

視線管理部232は、通常モードにおいて機能区画に対してユーザの視線(基準視線5または視線方向N0)が規定時間以上当たったことを検出した場合、機能区画をユーザが選択したことを検出する。これにより制御回路部200は、回転モードに移行する。この後、ユーザによる何らかの操作に基づき、制御回路部200は仮想カメラ1または仮想空間2の回転を開始する。たとえば制御回路部200は、規定時間以上の注視によってユーザが選択した機能区画からユーザの視線が外れたか否かを判定する。制御回路部200は、ユーザの視線が機能区画から外れたと判定した場合、視線が外れた方向を特定する。そして、視線が外れた方向を視線の移動方向として特定し、さらに、特定した視線の移動方向に基づく回転方向に仮想カメラ1または仮想空間2を回転させる。本例のように機能区画を活用すれば、操作オブジェクト27を規定することができない仮想空間2がユーザに提供される場合も、ユーザの操作に基づき仮想カメラ1または仮想空間2を回転させることができる。   When the line-of-sight management unit 232 detects that the user's line of sight (the reference line of sight 5 or the line-of-sight direction N0) hits the functional section in the normal mode for a specified time or longer, the line-of-sight management unit 232 detects that the user has selected the functional section. Thereby, the control circuit unit 200 shifts to the rotation mode. Thereafter, the control circuit unit 200 starts to rotate the virtual camera 1 or the virtual space 2 based on some operation by the user. For example, the control circuit unit 200 determines whether or not the user's line of sight has deviated from the functional section selected by the user by gaze for a specified time or longer. When it is determined that the user's line of sight has deviated from the functional section, the control circuit unit 200 identifies the direction in which the line of sight has deviated. Then, the direction in which the line of sight is deviated is specified as the movement direction of the line of sight, and the virtual camera 1 or the virtual space 2 is rotated in the rotation direction based on the specified movement direction of the line of sight. If the functional partition is used as in this example, even when the virtual space 2 in which the operation object 27 cannot be defined is provided to the user, the virtual camera 1 or the virtual space 2 can be rotated based on the user's operation. it can.

本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能である。異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態も、本発明の技術的範囲に含まれる。各実施形態にそれぞれ開示された技術的手段を組み合わせることによって、新しい技術的特徴を形成することもできる。   The present invention is not limited to the above-described embodiments, and various modifications can be made within the scope of the claims. Embodiments obtained by appropriately combining technical means disclosed in different embodiments are also included in the technical scope of the present invention. A new technical feature can also be formed by combining the technical means disclosed in each embodiment.

〔ソフトウェアによる実現例〕
制御回路部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.

〔付記事項〕
(項目1)ヘッドマウントディスプレイ(以下、HMD)を装着したユーザに仮想空間を提供する方法であって、第1のモードにおいて、前記仮想空間内に配置されかつ前記HMDに連動する仮想カメラのロール方向に基づく視界画像を前記HMDに表示させるステップと、第2のモードにおいて、前記ユーザの操作に基づき少なくとも回転方向を特定すると共に、前記操作が検出され続ける間、前記仮想カメラまたは前記仮想空間を前記回転方向に回転させ続けながら、前記HMDに表示させる前記視界画像を更新するステップとを有する、方法。仮想空間における操作性を高めることができる。
[Additional Notes]
(Item 1) A method of providing a virtual space to a user wearing a head-mounted display (hereinafter referred to as HMD), and in the first mode, a virtual camera roll arranged in the virtual space and interlocked with the HMD In the second mode, at least a direction of rotation is specified based on the user's operation, and the virtual camera or the virtual space is detected while the operation continues to be detected. Updating the field-of-view image displayed on the HMD while continuing to rotate in the rotation direction. The operability in the virtual space can be improved.

(項目2)
前記視界画像を前記HMDに表示させるステップにおいて、前記仮想空間に配置される操作オブジェクトを含む前記視界画像を前記HMDに表示させ、前記第1のモードにおいて、前記操作オブジェクトが前記ユーザによって選択されたことを検出するステップと、前記第1のモードにおいて、前記操作オブジェクトが選択されたことが検出された後、前記第2のモードに移行するステップとをさらに有する、項目1の方法。ユーザの意思により、第2のモードに移行することができる。
(Item 2)
In the step of displaying the view image on the HMD, the view image including the operation object arranged in the virtual space is displayed on the HMD, and the operation object is selected by the user in the first mode. The method according to item 1, further comprising a step of detecting a transition to the second mode after detecting that the operation object has been selected in the first mode. It is possible to shift to the second mode according to the user's intention.

(項目3)前記第2のモードにおいて、前記操作オブジェクトが選択されたことが検出された後、前記ユーザによって前記操作オブジェクトに指定された所定方向を特定するステップと、前記第2のモードにおいて、前記操作オブジェクトを前記所定方向に弾性変形させるステップとをさらに有し、前記回転方向を決定するステップにおいて、前記所定方向に基づき前記回転方向を決定する、項目2の方法。操作オブジェクトに対するユーザの操作に基づき、仮想カメラまたは仮想空間を回転させることができる。   (Item 3) In the second mode, after it is detected that the operation object is selected, a step of specifying a predetermined direction designated by the user for the operation object; and in the second mode, The method according to item 2, further comprising the step of elastically deforming the operation object in the predetermined direction, wherein the rotation direction is determined based on the predetermined direction in the step of determining the rotation direction. The virtual camera or the virtual space can be rotated based on a user operation on the operation object.

(項目4)
前記回転方向を決定するステップにおいて、前記所定方向における水平方向の成分に基づき前記回転方向を決定する、項目3の方法。ユーザが仮想空間において酔うことを防止できる。
(Item 4)
4. The method according to item 3, wherein in the step of determining the rotation direction, the rotation direction is determined based on a horizontal component in the predetermined direction. It is possible to prevent the user from getting drunk in the virtual space.

(項目5)
前記第2のモードにおいて、前記操作オブジェクトへの前記所定方向の指定が解除されたことを検出するステップと、前記第2のモードにおいて、前記所定方向の指定が解除されたことが検出された場合、前記操作オブジェクトを元の形状に戻すと共に、前記操作オブジェクトの選択を解除する変更するステップと、前記第2のモードにおいて、前記所定方向の指定が解除されたことが検出された場合、前記仮想カメラまたは前記仮想空間の回転を停止させると共に、前記第1のモードに移行するステップとをさらに有する、項目4の方法。ユーザは簡単な操作で仮想カメラまたは仮想空間の回転を停止させることができる。
(Item 5)
In the second mode, detecting that the designation of the predetermined direction to the operation object has been released; and in the second mode, detecting that the designation of the predetermined direction has been released. A step of returning the operation object to the original shape and canceling the selection of the operation object; and in the second mode, when it is detected that the designation of the predetermined direction is released, The method according to item 4, further comprising the step of stopping rotation of the camera or the virtual space and shifting to the first mode. The user can stop the rotation of the virtual camera or the virtual space with a simple operation.

(項目6)
前記第2のモードにおいて、前記操作オブジェクトが選択されたことが検出された後、基準座標系における前記HMDの傾きの変化量を特定するステップと、前記所定方向を特定するステップにおいて、前記傾きの変化量に基づき前記所定方向を特定する、項目3〜5のいずれかの方法。ユーザはHMDを傾ける方向を変えることによって仮想カメラまたは仮想空間の回転速方法を調整することができる。
(Item 6)
In the second mode, after detecting that the operation object is selected, in the step of specifying the amount of change in the inclination of the HMD in the reference coordinate system and the step of specifying the predetermined direction, The method according to any one of items 3 to 5, wherein the predetermined direction is specified based on a change amount. The user can adjust the rotation speed method of the virtual camera or the virtual space by changing the direction in which the HMD is tilted.

(項目7)
前記所定方向の指定が解除されたことを検出するステップにおいて、前記仮想カメラまたは仮想空間の回転が開始された後の前記HMDの傾きが、前記操作オブジェクトが選択されたことが検出された時点の前記HMDの傾きに一致した場合、前記所定方向の指定が解除されたことを検出する、項目6の方法。ユーザは簡単な操作によって仮想カメラまたは仮想空間の回転を停止させることができる。
(Item 7)
In the step of detecting that the designation of the predetermined direction has been canceled, the inclination of the HMD after the rotation of the virtual camera or virtual space is started is detected when the operation object is selected. The method according to Item 6, wherein when the inclination of the HMD coincides, it is detected that the designation of the predetermined direction is cancelled. The user can stop the rotation of the virtual camera or the virtual space with a simple operation.

(項目8)
前記第2のモードにおいて、前記操作オブジェクトが選択されたことが検出された後、前記ユーザによって前記操作オブジェクトに指定された所定量を特定するステップと、前記第2のモードにおいて、前記所定量に基づき、前記仮想カメラまたは前記仮想空間を回転させる際の回転速度を決定するステップとをさらに有し、前記操作オブジェクトを弾性変形させるステップにおいて、前記操作オブジェクトを前記所定量だけ伸張させ、前記視界画像を更新するステップにおいて、前記仮想カメラまたは仮想空間を前記回転速度で回転させ続ける、項目3〜7のいずれかの方法。ユーザは所望の回転速度で仮想カメラまたは仮想空間を回転させることができる。
(Item 8)
In the second mode, after detecting that the operation object is selected, a step of specifying a predetermined amount designated for the operation object by the user; and in the second mode, the predetermined amount And a step of determining a rotation speed when rotating the virtual camera or the virtual space, and in the step of elastically deforming the operation object, the operation object is expanded by the predetermined amount, and the view image The method according to any one of items 3 to 7, wherein in the step of updating, the virtual camera or the virtual space is continuously rotated at the rotation speed. The user can rotate the virtual camera or the virtual space at a desired rotation speed.

(項目9)
前記第2のモードにおいて、前記所定量が閾値を超えた場合、前記操作オブジェクトを元の形状に戻し、かつ、前記操作オブジェクトの選択を解除するステップと、前記第2のモードにおいて、前記所定量が閾値を超えた場合、前記仮想カメラまたは前記仮想空間の回転を停止させるステップと、前記第2のモードにおいて、前記仮想カメラまたは前記仮想空間の回転が停止した後、前記第1のモードに移行するステップとをさらに有する、項目8の方法。ユーザは簡単な操作で仮想カメラまたは仮想空間の回転を停止させることができる。
(Item 9)
In the second mode, when the predetermined amount exceeds a threshold value, the step of returning the operation object to the original shape and canceling the selection of the operation object; and in the second mode, the predetermined amount When the threshold value exceeds a threshold, the step of stopping the rotation of the virtual camera or the virtual space and the second mode, the rotation of the virtual camera or the virtual space is stopped, and then the mode is shifted to the first mode. The method of item 8, further comprising the step of: The user can stop the rotation of the virtual camera or the virtual space with a simple operation.

(項目10)
前記第2のモードにおいて、前記操作オブジェクトが選択されたことが検出された後、基準座標系における前記HMDの傾きの変化量を特定するステップをさらに備えており、、前記所定量を特定するステップにおいて、前記傾きの変化量に基づき前記所定量を特定する、項目8または9の方法。ユーザはHMDを傾ける度合いを変えることによって仮想カメラまたは仮想空間の回転速方法を調整することができる。
(Item 10)
In the second mode, after detecting that the operation object is selected, the method further includes a step of specifying a change amount of the inclination of the HMD in a reference coordinate system, and the step of specifying the predetermined amount The method according to item 8 or 9, wherein the predetermined amount is specified based on a change amount of the inclination. The user can adjust the rotation speed method of the virtual camera or the virtual space by changing the degree of tilting the HMD.

(項目11)
前記第1のモードにおいて、前記操作オブジェクトの少なくとも一部が、前記仮想カメラの視界領域の外に位置することを検出するステップと、前記第1のモードにおいて、前記操作オブジェクトの少なくとも一部が、前記視界領域の外に位置することが検出された場合、前記操作オブジェクトを前記視界領域の中に移動させるステップとをさらに有する、項目2〜10のいずれかの1つの方法。ユーザがオブジェクトを見つけ出しやすくなる。
(Item 11)
In the first mode, detecting that at least a part of the operation object is located outside the field of view of the virtual camera; in the first mode, at least a part of the operation object is: The method according to any one of items 2 to 10, further comprising a step of moving the operation object into the visual field area when it is detected that the object is located outside the visual field area. This makes it easier for users to find objects.

(項目12)
前記第1のモードにおいて、前記仮想空間に規定される機能区画をユーザが選択したことを検出するステップと、前記第1のモードにおいて、前記仮想空間に規定される機能区画をユーザが選択したことが検出された場合、前記第2のモードに移行するステップをさらに有する、項目1の方法。オブジェクトを用いることができない仮想空間が提供される場合も、ユーザの操作に基づき仮想カメラまたは仮想空間を回転させることができる。
(Item 12)
Detecting that a user has selected a functional partition defined in the virtual space in the first mode; and a user selecting a functional partition defined in the virtual space in the first mode. The method of item 1, further comprising the step of transitioning to the second mode if detected. Even when a virtual space in which an object cannot be used is provided, the virtual camera or the virtual space can be rotated based on a user operation.

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

(項目14)
項目13のプログラムを記録したコンピュータ読み取り可能な記録媒体。
(Item 14)
A computer-readable recording medium on which the program of item 13 is recorded.

1 仮想カメラ、2 仮想空間、5 基準視線、21 中心、22 仮想空間画像、23 視界領域、24 第1領域、25 第2領域、26 視界画像、100 HMDシステム、110 HMD、112 ディスプレイ、114 センサ、120 HMDセンサ、130 注視センサ、200 制御回路部、210 検出部、211 HMD検出部、212 視線検出部、213 操作受付部、220 表示制御部、221 仮想カメラ制御部、222 視界領域決定部、223 視界画像生成部、230 仮想空間制御部、231 仮想空間規定部、231 視線管理部、232 コンテンツ特定部、233 操作オブジェクト制御部、 記憶部、241 雛形格納部、242 コンテンツ格納部、250 通信部、300 コントローラ 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 sensor 120 HMD sensor, 130 gaze sensor, 200 control circuit unit, 210 detection unit, 211 HMD detection unit, 212 gaze detection unit, 213 operation reception unit, 220 display control unit, 221 virtual camera control unit, 222 visual field region determination unit, 223 Visibility image generation unit, 230 Virtual space control unit, 231 Virtual space definition unit, 231 Gaze management unit, 232 Content specification unit, 233 Operation object control unit, Storage unit, 241 Model storage unit, 242 Content storage unit, 250 Communication unit 300 controller

Claims (12)

ヘッドマウントディスプレイ(以下、HMD)を装着したユーザに仮想空間を提供する方法であって、
第1のモードにおいて、前記仮想空間内に配置されかつ前記HMDに連動する仮想カメラのロール方向に基づく視界画像を前記HMDに表示させるステップと、
第2のモードにおいて、前記ユーザの操作に基づき少なくとも回転方向を特定すると共に、前記操作が検出され続ける間、前記仮想カメラまたは前記仮想空間を前記回転方向に回転させ続けながら、前記HMDに前記視界画像を更新させるステップとを有し、
前記視界画像を前記HMDに表示させるステップにおいて、前記仮想空間に配置される操作オブジェクトを含む前記視界画像を前記HMDに表示させ、
前記第1のモードにおいて、前記操作オブジェクトが前記ユーザによって選択されたことを検出するステップと、
前記第1のモードにおいて、前記操作オブジェクトが選択されたことが検出された後、前記第2のモードに移行するステップと、
前記第2のモードにおいて、前記操作オブジェクトが選択されたことが検出された後、前記ユーザによって前記操作オブジェクトに指定された所定方向を特定するステップとをさらに有し、
前記視界画像を更新させるステップにおいて、前記所定方向に基づき前記回転方向を特定し、
前記第2のモードにおいて、前記操作オブジェクトを前記所定方向に弾性変形させるステップをさらに有する、方法。
A method of providing a virtual space to a user wearing a head mounted display (hereinafter, HMD),
In the first mode, causing the HMD to display a field-of-view image based on a roll direction of a virtual camera disposed in the virtual space and interlocked with the HMD;
In the second mode, at least the rotation direction is specified based on the user's operation, and the field of view is displayed on the HMD while continuously rotating the virtual camera or the virtual space in the rotation direction while the operation is continuously detected. Updating the image, and
In the step of displaying the visual field image on the HMD, the visual field image including the operation object arranged in the virtual space is displayed on the HMD,
Detecting that the operation object is selected by the user in the first mode;
After detecting that the operation object is selected in the first mode, the step of transitioning to the second mode;
After detecting that the operation object is selected in the second mode, further comprising the step of specifying a predetermined direction designated by the user as the operation object;
In the step of updating the view image, the rotation direction is specified based on the predetermined direction ,
The method further comprising the step of elastically deforming the operation object in the predetermined direction in the second mode .
前記視界画像を更新させるステップにおいて、前記所定方向における水平方向の成分に基づき前記回転方向を特定する、請求項1に記載の方法。   The method according to claim 1, wherein in the step of updating the view image, the rotation direction is specified based on a horizontal component in the predetermined direction. 前記第2のモードにおいて、前記操作オブジェクトへの前記所定方向の指定が解除されたことを検出するステップと、
前記第2のモードにおいて、前記所定方向の指定が解除されたことが検出された場合、前記操作オブジェクトを元の形状に戻すと共に、前記操作オブジェクトの選択を解除する変更するステップと、
前記第2のモードにおいて、前記所定方向の指定が解除されたことが検出された場合、前記仮想カメラまたは前記仮想空間の回転を停止させると共に、前記第1のモードに移行するステップとをさらに有する、請求項2に記載の方法。
Detecting in the second mode that the designation of the predetermined direction to the operation object has been canceled;
In the second mode, when it is detected that the designation of the predetermined direction has been canceled, the operation object is returned to the original shape and changed to cancel the selection of the operation object;
In the second mode, when it is detected that the designation of the predetermined direction has been canceled, the method further includes the step of stopping the rotation of the virtual camera or the virtual space and shifting to the first mode. The method according to claim 2.
前記第2のモードにおいて、前記操作オブジェクトが選択されたことが検出された後、基準座標系における前記HMDの傾きの変化量を特定するステップと、
前記所定方向を特定するステップにおいて、前記傾きの変化量に基づき前記所定方向を特定する、請求項1〜3のいずれか1項に記載の方法。
In the second mode, after detecting that the operation object is selected, specifying a change amount of the inclination of the HMD in a reference coordinate system;
The method according to claim 1, wherein in the step of specifying the predetermined direction, the predetermined direction is specified based on a change amount of the inclination.
前記所定方向の指定が解除されたことを検出するステップにおいて、前記仮想カメラまたは仮想空間の回転が開始された後の前記HMDの傾きが、前記操作オブジェクトが選択されたことが検出された時点の前記HMDの傾きに一致した場合、前記所定方向の指定が解除されたことを検出する、請求項4に記載の方法。   In the step of detecting that the designation of the predetermined direction has been canceled, the inclination of the HMD after the rotation of the virtual camera or virtual space is started is detected when the operation object is selected. The method according to claim 4, further comprising detecting that the designation of the predetermined direction is canceled when the inclination of the HMD coincides. 前記第2のモードにおいて、前記操作オブジェクトが選択されたことが検出された後、前記ユーザによって前記操作オブジェクトに指定された所定量を特定するステップと、
前記第2のモードにおいて、前記所定量に基づき、前記仮想カメラまたは前記仮想空間を回転させる際の回転速度を特定するステップとをさらに有し、
前記操作オブジェクトを弾性変形させるステップにおいて、前記操作オブジェクトを前記所定量だけ伸張させ、
前記視界画像を更新するステップにおいて、前記仮想カメラまたは仮想空間を前記回転速度で回転させ続ける、請求項に記載の方法。
In the second mode, after detecting that the operation object has been selected, specifying a predetermined amount designated for the operation object by the user;
In the second mode, further comprising the step of specifying a rotation speed when rotating the virtual camera or the virtual space based on the predetermined amount;
In the step of elastically deforming the operation object, the operation object is extended by the predetermined amount,
Wherein in the step of updating the view field image, continue the virtual camera or a virtual space is rotated at the rotational speed, The method according to claim 1.
前記第2のモードにおいて、前記所定量が閾値を超えた場合、前記操作オブジェクトを元の形状に戻し、かつ、前記操作オブジェクトの選択を解除するステップと、
前記第2のモードにおいて、前記所定量が閾値を超えた場合、前記仮想カメラまたは前記仮想空間の回転を停止させるステップと、
前記第2のモードにおいて、前記仮想カメラまたは前記仮想空間の回転が停止した後、前記第1のモードに移行するステップとをさらに有する、請求項に記載の方法。
In the second mode, when the predetermined amount exceeds a threshold, returning the operation object to an original shape, and deselecting the operation object;
Stopping the rotation of the virtual camera or the virtual space when the predetermined amount exceeds a threshold in the second mode;
The method according to claim 6 , further comprising the step of transitioning to the first mode after rotation of the virtual camera or the virtual space is stopped in the second mode.
前記第2のモードにおいて、前記操作オブジェクトが選択されたことが検出された後、基準座標系における前記HMDの傾きの変化量を特定するステップと、
前記所定量を特定するステップにおいて、前記傾きの変化量に基づき前記所定量を特定する、請求項6または7に記載の方法。
In the second mode, after detecting that the operation object is selected, specifying a change amount of the inclination of the HMD in a reference coordinate system;
The method according to claim 6 or 7 , wherein, in the step of specifying the predetermined amount, the predetermined amount is specified based on a change amount of the slope.
前記第1のモードにおいて、前記操作オブジェクトの少なくとも一部が、前記仮想カメラの視界領域の外に位置することを検出するステップと、
前記第1のモードにおいて、前記操作オブジェクトの少なくとも一部が、前記視界領域の外に位置することが検出された場合、前記操作オブジェクトを前記視界領域の中に移動させるステップとをさらに有する、請求項1〜8のいずれか1項に記載の方法。
In the first mode, detecting that at least a part of the operation object is located outside the field of view of the virtual camera;
In the first mode, when it is detected that at least a part of the operation object is located outside the visual field area, the operation object further includes a step of moving the operation object into the visual field area. Item 9. The method according to any one of Items 1 to 8 .
前記第1のモードにおいて、前記仮想空間に規定される機能区画をユーザが選択したことを検出するステップと、
前記第1のモードにおいて、前記仮想空間に規定される機能区画をユーザが選択したことが検出された場合、前記第2のモードに移行するステップをさらに有する、請求項1に記載の方法。
Detecting that a user has selected a functional partition defined in the virtual space in the first mode;
The method according to claim 1, further comprising the step of transitioning to the second mode when it is detected in the first mode that a user has selected a functional partition defined in the virtual space.
請求項1〜10のいずれか1項に記載の方法の各ステップを、コンピュータに実行させるプログラム。 The program which makes a computer perform each step of the method of any one of Claims 1-10 . 請求項11に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。 The computer-readable recording medium which recorded the program of Claim 11 .
JP2016099088A 2016-05-06 2016-05-17 Method, program, and recording medium for providing virtual space Active JP6262283B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2016099088A JP6262283B2 (en) 2016-05-17 2016-05-17 Method, program, and recording medium for providing virtual space
US15/588,590 US10539797B2 (en) 2016-05-06 2017-05-05 Method of providing virtual space, program therefor, and recording medium
PCT/JP2017/017878 WO2017199848A1 (en) 2016-05-17 2017-05-11 Method for providing virtual space, program, and recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016099088A JP6262283B2 (en) 2016-05-17 2016-05-17 Method, program, and recording medium for providing virtual space

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2017187257A Division JP2017228322A (en) 2017-09-27 2017-09-27 Method, program, and storage medium for providing virtual space

Publications (2)

Publication Number Publication Date
JP2017224003A JP2017224003A (en) 2017-12-21
JP6262283B2 true JP6262283B2 (en) 2018-01-17

Family

ID=60686921

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016099088A Active JP6262283B2 (en) 2016-05-06 2016-05-17 Method, program, and recording medium for providing virtual space

Country Status (1)

Country Link
JP (1) JP6262283B2 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6445499B2 (en) * 2016-09-08 2018-12-26 株式会社ソニー・インタラクティブエンタテインメント Display control program, display control apparatus, and display control method
KR20200009594A (en) * 2018-07-19 2020-01-30 (주)코믹스브이 Method for providing virtual-reality cartoon service using panoramic image
US11960635B2 (en) 2019-02-01 2024-04-16 Maxell, Ltd. Virtual object display device and virtual object display method
JP2022051972A (en) * 2019-02-06 2022-04-04 ソニーグループ株式会社 Information processing device and method, and program

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09179062A (en) * 1995-12-25 1997-07-11 Canon Inc Computer system
JP3048927B2 (en) * 1996-07-29 2000-06-05 北海道日本電気ソフトウェア株式会社 Pointing device for large screen presentation system
JP2010231290A (en) * 2009-03-26 2010-10-14 National Institute Of Advanced Industrial Science & Technology Input device and method using head motion
JP5343692B2 (en) * 2009-05-12 2013-11-13 ソニー株式会社 Information processing apparatus, information processing method, and information processing program
WO2011084895A1 (en) * 2010-01-08 2011-07-14 Kopin Corporation Video eyewear for smart phone games
JP5394299B2 (en) * 2010-03-30 2014-01-22 富士フイルム株式会社 Ultrasonic diagnostic equipment
JP5552947B2 (en) * 2010-07-30 2014-07-16 ソニー株式会社 Information processing apparatus, display control method, and display control program
JP5724422B2 (en) * 2011-02-07 2015-05-27 富士通株式会社 Operation control device, operation control program, and operation control method
JP2013258614A (en) * 2012-06-13 2013-12-26 Sony Computer Entertainment Inc Image generation device and image generation method
US9908048B2 (en) * 2013-06-08 2018-03-06 Sony Interactive Entertainment Inc. Systems and methods for transitioning between transparent mode and non-transparent mode in a head mounted display
CN105359063B (en) * 2013-06-09 2018-08-17 索尼电脑娱乐公司 Utilize the head-mounted display of tracking
JP5845211B2 (en) * 2013-06-24 2016-01-20 キヤノン株式会社 Image processing apparatus and image processing method
GB2517143A (en) * 2013-08-07 2015-02-18 Nokia Corp Apparatus, method, computer program and system for a near eye display
JP5876607B1 (en) * 2015-06-12 2016-03-02 株式会社コロプラ Floating graphical user interface
JP5914739B1 (en) * 2015-08-27 2016-05-11 株式会社コロプラ Program to control the head mounted display system
JP5944600B1 (en) * 2015-08-28 2016-07-05 株式会社タカラトミー Information processing device with head-mounted display
JP5869177B1 (en) * 2015-09-16 2016-02-24 株式会社コロプラ Virtual reality space video display method and program

Also Published As

Publication number Publication date
JP2017224003A (en) 2017-12-21

Similar Documents

Publication Publication Date Title
WO2018016553A1 (en) Method for providing virtual space, method for providing virtual experience, program, and recording medium
JP5914739B1 (en) Program to control the head mounted display system
JP6130478B1 (en) Program and computer
JP6126271B1 (en) Method, program, and recording medium for providing virtual space
JP6262283B2 (en) Method, program, and recording medium for providing virtual space
JP6276434B1 (en) Method for supporting movement in virtual space, program for causing computer to execute the method, and information processing apparatus for executing the program
JP6189497B1 (en) Method for providing virtual space, method for providing virtual experience, program, and recording medium
JP6523493B1 (en) PROGRAM, INFORMATION PROCESSING DEVICE, AND INFORMATION PROCESSING METHOD
JP6306083B2 (en) Method, program, and recording medium for providing virtual space
JP6113897B1 (en) Method for providing virtual space, method for providing virtual experience, program, and recording medium
JP6126272B1 (en) Method, program, and recording medium for providing virtual space
JP2017045296A (en) Program for controlling head-mounted display system
JP2017121082A (en) Program and computer
JP2017228322A (en) Method, program, and storage medium for providing virtual space
JP6203346B1 (en) Method, program, and recording medium for providing virtual space
JP6223614B1 (en) Information processing method, information processing program, information processing system, and information processing apparatus
JP2017208808A (en) Method of providing virtual space, program, and recording medium
JP6159455B1 (en) Method, program, and recording medium for providing virtual space
JP7030075B2 (en) Programs, information processing devices, and information processing methods
WO2017199848A1 (en) Method for providing virtual space, program, and recording medium
JP2017201524A (en) Method, program and storage medium for providing virtual space
WO2020188721A1 (en) Head-mounted information processing device and head-mounted display system
JP2017208809A (en) Method, program and recording medium for providing virtual space
JP2018014109A (en) Method for providing virtual space, method for providing virtual experience, program and recording medium
JP6121495B2 (en) Program to control the head mounted display system

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20170808

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171107

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20171113

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171213

R150 Certificate of patent or registration of utility model

Ref document number: 6262283

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