JP6948220B2 - Methods, programs and computers for providing virtual experiences to users - Google Patents

Methods, programs and computers for providing virtual experiences to users Download PDF

Info

Publication number
JP6948220B2
JP6948220B2 JP2017201003A JP2017201003A JP6948220B2 JP 6948220 B2 JP6948220 B2 JP 6948220B2 JP 2017201003 A JP2017201003 A JP 2017201003A JP 2017201003 A JP2017201003 A JP 2017201003A JP 6948220 B2 JP6948220 B2 JP 6948220B2
Authority
JP
Japan
Prior art keywords
event
field
view
user
virtual space
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017201003A
Other languages
Japanese (ja)
Other versions
JP2019074953A (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 JP2017201003A priority Critical patent/JP6948220B2/en
Publication of JP2019074953A publication Critical patent/JP2019074953A/en
Application granted granted Critical
Publication of JP6948220B2 publication Critical patent/JP6948220B2/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 methods, programs and computers for providing virtual experiences to users.

特許文献1には、ヘッドマウントデバイス(Head−Mounted Device、HMD)の動きと同期せずにユーザの視野画像が更新される場合に、仮想現実(VR:Virtual Reality)空間における酔い(いわゆる「VR酔い」)を低減させる技術が開示されている。当該技術によると、外部コントローラからの入力によって仮想カメラが動かされるとき、ユーザの視線を誘導するための視線誘導領域が生成される。この視線誘導領域によってユーザの視野画像の一部を隠すことにより、仮想カメラが動くときのVR酔いが低減される。 Patent Document 1 describes sickness in a virtual reality (VR) space (so-called "VR") when a user's visual field image is updated in synchronization with the movement of a head-mounted device (HMD). A technique for reducing "sickness") is disclosed. According to this technology, when the virtual camera is moved by an input from an external controller, a line-of-sight guidance area for guiding the user's line of sight is generated. By hiding a part of the user's visual field image by this line-of-sight guidance region, VR sickness when the virtual camera moves is reduced.

今後、仮想空間におけるユーザの仮想体験を損なうことなくVR酔いを低減するための様々な技術の開発が進むものと考えられる。 In the future, it is expected that various technologies for reducing VR sickness will be developed without impairing the virtual experience of the user in the virtual space.

特許第6087453号公報Japanese Patent No. 6087453

本開示は、仮想空間内で生じるイベントに関する仮想体験をユーザに提供する場合に、ユーザの仮想体験を損なうことなくVR酔いを低減するための新規な手法を提供することを目的とする。 An object of the present disclosure is to provide a novel method for reducing VR sickness without impairing the user's virtual experience when providing the user with a virtual experience regarding an event occurring in the virtual space.

本開示の一実施形態によれば、ユーザの頭部に関連付けられる画像表示装置を介して当該ユーザに仮想体験を提供するためのコンピュータに、
前記仮想体験を提供するための仮想空間を規定する仮想空間データを特定するステップと、
前記画像表示装置の動きに基づいて、前記仮想空間内で仮想視点からの視界を制御するステップと、
前記仮想空間内でイベントを生じさせるステップと、
前記仮想視点からの視界内における前記イベントの視認度合いが条件を満たさない場合に、前記ユーザの注意を前記イベントに向けるための行動を、前記仮想空間内に存在する1つ又は複数のキャラクタオブジェクトに行わせる処理を実行するステップと、
前記行動が行われている間に、前記視界内における前記イベントの視認度合いが条件を満たすように前記視界を制御するステップと
を実行させるためのプログラムが提供される。
According to one embodiment of the present disclosure, a computer for providing a virtual experience to a user via an image display device associated with the user's head.
The step of identifying the virtual space data that defines the virtual space for providing the virtual experience, and
A step of controlling the field of view from a virtual viewpoint in the virtual space based on the movement of the image display device,
The step of causing an event in the virtual space and
When the degree of visibility of the event in the field of view from the virtual viewpoint does not satisfy the condition, an action for directing the user's attention to the event is given to one or a plurality of character objects existing in the virtual space. The steps to perform the processing to be performed and
A program is provided for executing a step of controlling the field of view so that the degree of visibility of the event in the field of view satisfies the condition while the action is being performed.

本開示の別の実施形態によれば、コンピュータであって、
前記コンピュータが備えるプロセッサによる、ユーザの頭部に関連付けられる画像表示装置を介して当該ユーザに仮想体験を提供するための制御により、
前記仮想体験を提供するための仮想空間を規定する仮想空間データを特定するステップと、
前記画像表示装置の動きに基づいて、前記仮想空間内で仮想視点からの視界を制御するステップと、
前記仮想空間内でイベントを生じさせるステップと、
前記仮想視点からの視界内における前記イベントの視認度合いが条件を満たさない場合に、前記ユーザの注意を前記イベントに向けるための行動を、前記仮想空間内に存在する1つ又は複数のキャラクタオブジェクトに行わせる処理を実行するステップと、
前記行動が行われている間に、前記視界内における前記イベントの視認度合いが条件を満たすように前記視界を制御するステップと
が実行されるコンピュータが提供される。
According to another embodiment of the present disclosure, it is a computer.
Controlled by a processor included in the computer to provide a virtual experience to the user via an image display device associated with the user's head.
The step of identifying the virtual space data that defines the virtual space for providing the virtual experience, and
A step of controlling the field of view from a virtual viewpoint in the virtual space based on the movement of the image display device,
The step of causing an event in the virtual space and
When the degree of visibility of the event in the field of view from the virtual viewpoint does not satisfy the condition, an action for directing the user's attention to the event is given to one or a plurality of character objects existing in the virtual space. The steps to perform the processing to be performed and
A computer is provided in which, while the action is being performed, a step of controlling the field of view is performed so that the degree of visibility of the event in the field of view satisfies the condition.

本開示の別の実施形態によれば、ユーザの頭部に関連付けられる画像表示装置を介して当該ユーザに仮想体験を提供するためのコンピュータにより実行される方法であって、
前記仮想体験を提供するための仮想空間を規定する仮想空間データを特定するステップと、
前記画像表示装置の動きに基づいて、前記仮想空間内で仮想視点からの視界を制御するステップと、
前記仮想空間内でイベントを生じさせるステップと、
前記仮想視点からの視界内における前記イベントの視認度合いが条件を満たさない場合に、前記ユーザの注意を前記イベントに向けるための行動を、前記仮想空間内に存在する1つ又は複数のキャラクタオブジェクトに行わせる処理を実行するステップと、
前記行動が行われている間に、前記視界内における前記イベントの視認度合いが条件を満たすように前記視界を制御するステップと
を含む、方法が提供される。
According to another embodiment of the present disclosure, a method performed by a computer to provide a virtual experience to a user via an image display device associated with the user's head.
The step of identifying the virtual space data that defines the virtual space for providing the virtual experience, and
A step of controlling the field of view from a virtual viewpoint in the virtual space based on the movement of the image display device,
The step of causing an event in the virtual space and
When the degree of visibility of the event in the field of view from the virtual viewpoint does not satisfy the condition, an action for directing the user's attention to the event is given to one or a plurality of character objects existing in the virtual space. The steps to perform the processing to be performed and
A method is provided that includes a step of controlling the field of view so that the degree of visibility of the event in the field of view satisfies the condition while the action is being performed.

本開示の実施形態により、仮想空間内で生じるイベントに関する仮想体験をユーザに提供する場合に、ユーザの仮想体験を損なうことなくVR酔いを低減するための新規な手法を提供することができる。 According to the embodiment of the present disclosure, when providing a virtual experience regarding an event occurring in a virtual space to a user, it is possible to provide a novel method for reducing VR sickness without impairing the virtual experience of the user.

本開示のその他の特徴及び利点は、後述する実施形態の説明、添付の図面及び特許請求の範囲の記載から明らかなものとなる。 Other features and advantages of the present disclosure will become apparent from the description of embodiments described below, the accompanying drawings and the claims.

HMDシステムの構成を概略的に示す図である。It is a figure which shows the structure of the HMD system schematicly. 本開示の一実施形態による、コンピュータの基本的なハードウェア構成の例を表すブロック図である。It is a block diagram which shows the example of the basic hardware composition of the computer by one Embodiment of this disclosure. 一実施形態に従う、HMDに設定されるuvw視野座標系を概念的に表す図である。It is a figure that conceptually represents the uvw field-of-view coordinate system set in the HMD according to one embodiment. 一実施形態に従う、仮想空間を表現する一態様を概念的に表す図である。It is a figure which conceptually represents one aspect which expresses a virtual space according to one Embodiment. 一実施形態に従う、HMDを装着するユーザの頭部を上から表した図である。It is the figure which showed the head of the user who wears HMD according to one Embodiment from the top. 仮想空間において視認領域をx方向から見たyz断面を表す図である。It is a figure which shows the yz cross section which looked at the visual area from the x direction in a virtual space. 仮想空間において視認領域をy方向から見たxz断面を表す図である。It is a figure which shows the xz cross section which looked at the visual area in a virtual space from the y direction. 一実施形態に従う、コントローラの概略構成を表す図である。It is a figure which shows the schematic structure of the controller according to one Embodiment. 一実施形態に従う、コントローラの概略構成を表す図である。It is a figure which shows the schematic structure of the controller according to one Embodiment. 本開示の一実施形態による、HMDシステムを介してユーザに仮想体験を提供するための、コンピュータの機能を示すブロック図である。FIG. 3 is a block diagram showing a function of a computer for providing a virtual experience to a user via an HMD system according to an embodiment of the present disclosure. ユーザが没入する仮想空間の画像を表示部に表示するための一般的な処理のフロー図である。It is a flow diagram of a general process for displaying an image of a virtual space in which a user is immersed on a display unit. 本開示の一実施形態による方法のフローチャートである。It is a flowchart of the method by one Embodiment of this disclosure. ステップ1110及び1112において実行される処理の具体例を示すフローチャートである。It is a flowchart which shows the specific example of the process executed in steps 1110 and 1112. ゲームのプレイ中にイベントが生じた様子を概略的に表す図である。It is a figure which shows roughly the appearance that the event occurred during the play of a game. 図13に示すシーンに関してユーザに提供される視界画像の例を示す図である。It is a figure which shows the example of the field of view image provided to the user with respect to the scene shown in FIG. ステップ1116において実行される処理の具体例を示すフローチャートである。It is a flowchart which shows the specific example of the process executed in step 1116. ステップ1502において行われる処理の様子を模式的に示す図である。It is a figure which shows the state of the process performed in step 1502 schematically. ステップ1502において行われる処理の様子を模式的に示す図である。It is a figure which shows the state of the process performed in step 1502 schematically. ステップ1502において行われる処理の様子を模式的に示す図である。It is a figure which shows the state of the process performed in step 1502 schematically. ステップ1504において行われる処理の様子を模式的に示す図である。It is a figure which shows the state of the process performed in step 1504 schematically. ステップ1504において行われる処理の様子を模式的に示す図である。It is a figure which shows the state of the process performed in step 1504 schematically. ステップ1504において行われる処理の様子を模式的に示す図である。It is a figure which shows the state of the process performed in step 1504 schematically. ステップ1118において実行される処理の具体例を示すフローチャートである。It is a flowchart which shows the specific example of the process executed in step 1118. ユーザの仮想視点を動かす様子を説明する図である。It is a figure explaining how to move a virtual viewpoint of a user. 視界画像の中心点が基準点に一致するように仮想カメラを移動させた後の視界画像を示す図である。It is a figure which shows the field of view image after moving a virtual camera so that the center point of the field of view image coincides with a reference point. ステップ1110及び1112において実行される処理の具体例を示すフローチャートである。It is a flowchart which shows the specific example of the process executed in steps 1110 and 1112. オブジェクトに設定された特徴点と視界画像との間の関係を説明する図である。It is a figure explaining the relationship between a feature point set in an object, and a field of view image. ステップ1110及び1112において実行される処理の具体例を示すフローチャートである。It is a flowchart which shows the specific example of the process executed in steps 1110 and 1112. 所定期間内に得られた視界内のオブジェクトの数及びこれに基づく値の例を示す図である。It is a figure which shows the example of the number of objects in the field of view obtained within a predetermined period, and the value based on this.

[本開示の実施形態の説明]
はじめに、本開示の例示的な実施形態の構成を列記して説明する。本開示の実施形態による方法、プログラム及びコンピュータは、以下のような構成を備えてもよい。
[Explanation of Embodiments of the present disclosure]
First, the configurations of exemplary embodiments of the present disclosure will be listed and described. The methods, programs and computers according to the embodiments of the present disclosure may have the following configurations.

(項目1)
ユーザの頭部に関連付けられる画像表示装置を介して当該ユーザに仮想体験を提供するためのコンピュータに、
前記仮想体験を提供するための仮想空間を規定する仮想空間データを特定するステップと、
前記画像表示装置の動きに基づいて、前記仮想空間内で仮想視点からの視界を制御するステップと、
前記仮想空間内でイベントを生じさせるステップと、
前記仮想視点からの視界内における前記イベントの視認度合いが条件を満たさない場合に、前記ユーザの注意を前記イベントに向けるための行動を、前記仮想空間内に存在する1つ又は複数のキャラクタオブジェクトに行わせる処理を実行するステップと、
前記行動が行われている間に、前記視界内における前記イベントの視認度合いが条件を満たすように前記視界を制御するステップと
を実行させるためのプログラム。
(Item 1)
To a computer for providing a virtual experience to the user via an image display device associated with the user's head.
The step of identifying the virtual space data that defines the virtual space for providing the virtual experience, and
A step of controlling the field of view from a virtual viewpoint in the virtual space based on the movement of the image display device,
The step of causing an event in the virtual space and
When the degree of visibility of the event in the field of view from the virtual viewpoint does not satisfy the condition, an action for directing the user's attention to the event is given to one or a plurality of character objects existing in the virtual space. The steps to perform the processing to be performed and
A program for executing a step of controlling the field of view so that the degree of visibility of the event in the field of view satisfies the condition while the action is being performed.

(項目2)
前記処理を実行するステップが、
前記行動が行われることを示唆する音声を出力するステップを含み、
前記1つ又は複数のキャラクタオブジェクトが、前記音声に関連付けられる1つ又は複数のキャラクタオブジェクトである、項目1に記載のプログラム。
(Item 2)
The step of executing the process is
Including the step of outputting a voice suggesting that the action is performed.
The program according to item 1, wherein the one or more character objects are one or more character objects associated with the voice.

(項目3)
前記処理を実行するステップが、
前記行動として、前記1つ又は複数のキャラクタオブジェクトによって前記視界を覆わせる第1の行動と、前記イベントの視認度合いが条件を満たすように前記視界が制御される契機となる第2の行動とを、前記1つ又は複数のキャラクタオブジェクトに行わせる処理を実行する、項目1又は2に記載のプログラム。
(Item 3)
The step of executing the process is
As the action, a first action of covering the field of view with the one or more character objects and a second action of triggering the field of view to be controlled so that the degree of visibility of the event is satisfied. , The program according to item 1 or 2, which executes a process to be performed by the one or more character objects.

(項目4)
前記イベントは、1つ又は複数のオブジェクトが登場するイベントであり、
前記1つ又は複数のオブジェクトのうち所定の数以上のオブジェクトが前記視界内に含まれていない場合に、前記視界内における前記イベントの視認度合いが前記条件を満たしていないと判断するステップを前記コンピュータに更に実行させるための、項目1から3のいずれか1項に記載のプログラム。
(Item 4)
The event is an event in which one or more objects appear.
When a predetermined number or more of the one or a plurality of objects are not included in the field of view, the computer determines that the degree of visibility of the event in the field of view does not satisfy the condition. The program according to any one of items 1 to 3 for further execution by the computer.

(項目5)
前記イベントは、1つ又は複数のオブジェクトが登場するイベントであり、
前記1つ又は複数のオブジェクトについて予め設定された1つ又は複数の特徴点のうち所定の特徴点が前記視界内に含まれていない場合に、前記視界内における前記イベントの視認度合いが前記条件を満たしていないと判断するステップを前記コンピュータに更に実行させるための、項目1から3のいずれか1項に記載のプログラム。
(Item 5)
The event is an event in which one or more objects appear.
When a predetermined feature point among the one or more feature points preset for the one or more objects is not included in the field of view, the degree of visibility of the event in the field of view determines the condition. The program according to any one of items 1 to 3, for causing the computer to further perform a step of determining that the condition is not satisfied.

(項目6)
前記イベントは、1つ又は複数のオブジェクトが登場するイベントであり、
前記判断するステップは、所定の期間内に前記視界内に現れる前記1つ又は複数のオブジェクトの数に基づく値が所定の数未満である場合に、前記視界内における前記イベントの視認度合いが前記条件を満たしていないと判断するステップを含む、項目1から3のいずれか1項に記載のプログラム。
(Item 6)
The event is an event in which one or more objects appear.
In the determination step, when the value based on the number of the one or more objects appearing in the field of view within a predetermined period is less than the predetermined number, the degree of visibility of the event in the field of view is the condition. The program according to any one of items 1 to 3, which includes a step of determining that the above conditions are not satisfied.

(項目7)
前記イベントは、前記1つ又は複数のキャラクタオブジェクトのうちの少なくとも1つが登場するイベントであり、
前記1つ又は複数のキャラクタオブジェクトのうち前記行動を行うキャラクタオブジェクトと、前記1つ又は複数のキャラクタオブジェクトのうち前記イベントに登場するキャラクタオブジェクトとが、共通の属性を有し、
前記共通の属性が、性別、服装、所属集団及び大きさのうちの少なくとも1つを含む、項目1から6のいずれか1項に記載のプログラム。
(Item 7)
The event is an event in which at least one of the one or more character objects appears.
The character object that performs the action among the one or more character objects and the character object that appears in the event among the one or more character objects have common attributes.
The program according to any one of items 1 to 6, wherein the common attribute includes at least one of gender, clothing, affiliation group and size.

(項目8)
コンピュータであって、
前記コンピュータが備えるプロセッサによる、ユーザの頭部に関連付けられる画像表示装置を介して当該ユーザに仮想体験を提供するための制御により、
前記仮想体験を提供するための仮想空間を規定する仮想空間データを特定するステップと、
前記画像表示装置の動きに基づいて、前記仮想空間内で仮想視点からの視界を制御するステップと、
前記仮想空間内でイベントを生じさせるステップと、
前記仮想視点からの視界内における前記イベントの視認度合いが条件を満たさない場合に、前記ユーザの注意を前記イベントに向けるための行動を、前記仮想空間内に存在する1つ又は複数のキャラクタオブジェクトに行わせる処理を実行するステップと、
前記行動が行われている間に、前記視界内における前記イベントの視認度合いが条件を満たすように前記視界を制御するステップと
が実行されるコンピュータ。
(Item 8)
It ’s a computer,
Controlled by a processor included in the computer to provide a virtual experience to the user via an image display device associated with the user's head.
The step of identifying the virtual space data that defines the virtual space for providing the virtual experience, and
A step of controlling the field of view from a virtual viewpoint in the virtual space based on the movement of the image display device,
The step of causing an event in the virtual space and
When the degree of visibility of the event in the field of view from the virtual viewpoint does not satisfy the condition, an action for directing the user's attention to the event is given to one or a plurality of character objects existing in the virtual space. The steps to perform the processing to be performed and
A computer that performs a step of controlling the field of view so that the degree of visibility of the event in the field of view satisfies the condition while the action is being performed.

(項目9)
ユーザの頭部に関連付けられる画像表示装置を介して当該ユーザに仮想体験を提供するためのコンピュータにより実行される方法であって、
前記仮想体験を提供するための仮想空間を規定する仮想空間データを特定するステップと、
前記画像表示装置の動きに基づいて、前記仮想空間内で仮想視点からの視界を制御するステップと、
前記仮想空間内でイベントを生じさせるステップと、
前記仮想視点からの視界内における前記イベントの視認度合いが条件を満たさない場合に、前記ユーザの注意を前記イベントに向けるための行動を、前記仮想空間内に存在する1つ又は複数のキャラクタオブジェクトに行わせる処理を実行するステップと、
前記行動が行われている間に、前記視界内における前記イベントの視認度合いが条件を満たすように前記視界を制御するステップと
を含む、方法。
(Item 9)
A method performed by a computer to provide a virtual experience to a user via an image display device associated with the user's head.
The step of identifying the virtual space data that defines the virtual space for providing the virtual experience, and
A step of controlling the field of view from a virtual viewpoint in the virtual space based on the movement of the image display device,
The step of causing an event in the virtual space and
When the degree of visibility of the event in the field of view from the virtual viewpoint does not satisfy the condition, an action for directing the user's attention to the event is given to one or a plurality of character objects existing in the virtual space. The steps to perform the processing to be performed and
A method comprising the step of controlling the field of view so that the degree of visibility of the event in the field of view satisfies the condition while the action is being performed.

[本開示の実施形態の詳細]
以下、図面を参照しつつ、本開示の実施形態について説明する。以下の説明では、同様の要素には同様の符号を付してある。それらの名称及び機能も同様である。このような要素については重複する説明が省略される。
[Details of Embodiments of the present disclosure]
Hereinafter, embodiments of the present disclosure will be described with reference to the drawings. In the following description, similar elements are designated by the same reference numerals. The same applies to their names and functions. Duplicate description of such elements is omitted.

図1を参照して、ヘッドマウントデバイス(Head−Mounted Device、HMD)システム100の構成について説明する。図1は、HMDシステム100の構成を概略的に示す。一例では、HMDシステム100は、家庭用のシステム又は業務用のシステムとして提供される。HMDは、表示部を備える所謂ヘッドマウントディスプレイであってもよく、表示部を有するスマートフォン等の端末を装着可能なヘッドマウント機器であってもよい。 The configuration of the head-mounted device (HMD) system 100 will be described with reference to FIG. FIG. 1 schematically shows the configuration of the HMD system 100. In one example, the HMD system 100 is provided as a home system or a business system. The HMD may be a so-called head-mounted display provided with a display unit, or may be a head-mounted device to which a terminal such as a smartphone having a display unit can be attached.

HMDシステム100は、HMD110と、HMDセンサ120と、コントローラ160と、コンピュータ200とを備える。HMD110は、表示部112と、注視センサ140とを含む。コントローラ160は、モーションセンサ130を含んでもよい。 The HMD system 100 includes an HMD 110, an HMD sensor 120, a controller 160, and a computer 200. The HMD 110 includes a display unit 112 and a gaze sensor 140. The controller 160 may include a motion sensor 130.

一例では、コンピュータ200は、インターネット等のネットワーク192に接続可能であってもよく、ネットワーク192に接続されるサーバ150等のコンピュータと通信可能であってもよい。別の態様において、HMD110は、HMDセンサ120の代わりにセンサ114を含んでもよい。 In one example, the computer 200 may be able to connect to a network 192 such as the Internet, or may be able to communicate with a computer such as a server 150 connected to the network 192. In another embodiment, the HMD 110 may include a sensor 114 instead of the HMD sensor 120.

HMD110は、ユーザ190の頭部に装着され、動作中に仮想空間をユーザに提供し得る。より具体的には、HMD110は、右目用の画像及び左目用の画像を表示部112にそれぞれ表示する。ユーザの各目がそれぞれの画像を視認すると、ユーザは、両目の視差に基づき当該画像を3次元の画像として認識し得る。 The HMD 110 may be worn on the head of the user 190 and provide the user with virtual space during operation. More specifically, the HMD 110 displays an image for the right eye and an image for the left eye on the display unit 112, respectively. When each eye of the user visually recognizes the image, the user can recognize the image as a three-dimensional image based on the parallax of both eyes.

表示部112は、例えば、非透過型の表示装置として実現される。一例では、表示部112は、ユーザの両目の前方に位置するように、HMD110の本体に配置される。したがって、ユーザは、表示部112に表示される3次元画像を視認すると、仮想空間に没入することができる。ある実施形態において、仮想空間は、例えば、背景、ユーザが操作可能なオブジェクト、ユーザが選択可能なメニューの画像等を含む。ある実施形態において、表示部112は、スマートフォン等の情報表示端末が備える液晶表示部又は有機EL(Electro Luminescence)表示部として実現され得る。 The display unit 112 is realized as, for example, a non-transparent display device. In one example, the display unit 112 is arranged on the main body of the HMD 110 so as to be located in front of both eyes of the user. Therefore, the user can immerse himself in the virtual space by visually recognizing the three-dimensional image displayed on the display unit 112. In certain embodiments, the virtual space includes, for example, a background, user-operable objects, user-selectable menu images, and the like. In certain embodiments, the display unit 112 can be realized as a liquid crystal display unit or an organic EL (Electroluminescence) display unit included in an information display terminal such as a smartphone.

一例では、表示部112は、右目用の画像を表示するためのサブ表示部と、左目用の画像を表示するためのサブ表示部とを含み得る。別の態様において、表示部112は、右目用の画像と左目用の画像とを一体として表示する構成であってもよい。この場合、表示部112は、高速シャッタを含む。高速シャッタは、画像がいずれか一方の目にのみ認識されるように、右目用の画像と左目用の画像とを交互に表示可能に作動する。 In one example, the display unit 112 may include a sub-display unit for displaying an image for the right eye and a sub-display unit for displaying an image for the left eye. In another aspect, the display unit 112 may be configured to display the image for the right eye and the image for the left eye as a unit. In this case, the display unit 112 includes a high-speed shutter. The high-speed shutter operates so that the image for the right eye and the image for the left eye can be alternately displayed so that the image is recognized by only one of the eyes.

一例では、HMD110は、複数の光源(図示せず)を含む。各光源は、例えば、赤外線を発するLED(Light Emitting Diode)により実現される。HMDセンサ120は、HMD110の動きを検出するためのポジショントラッキング機能を有する。より具体的には、HMDセンサ120は、HMD110が発する複数の赤外線を読み取り、現実空間内におけるHMD110の位置及び傾きを検出してもよい。 In one example, the HMD 110 includes a plurality of light sources (not shown). Each light source is realized by, for example, an LED (Light Emitting Diode) that emits infrared rays. The HMD sensor 120 has a position tracking function for detecting the movement of the HMD 110. More specifically, the HMD sensor 120 may read a plurality of infrared rays emitted by the HMD 110 to detect the position and inclination of the HMD 110 in the real space.

ある態様において、HMDセンサ120は、カメラにより実現されてもよい。この場合、HMDセンサ120は、カメラから出力されるHMD110の画像情報を用いて、画像解析処理を実行することにより、HMD110の位置及び傾きを検出することができる。 In some embodiments, the HMD sensor 120 may be implemented by a camera. In this case, the HMD sensor 120 can detect the position and tilt of the HMD 110 by executing the image analysis process using the image information of the HMD 110 output from the camera.

別の態様において、HMD110は、位置検出器として、HMDセンサ120の代わりに、センサ114を備えてもよい。HMD110は、センサ114を用いて、HMD110自身の位置及び傾きを検出し得る。例えば、センサ114が角速度センサ、地磁気センサ、加速度センサ、ジャイロセンサ等である場合、HMD110は、HMDセンサ120の代わりに、これらの各センサのいずれかを用いて、自身の位置及び傾きを検出し得る。一例として、センサ114が角速度センサである場合、角速度センサは、現実空間におけるHMD110の3軸周りの角速度を経時的に検出する。HMD110は、各角速度に基づいて、HMD110の3軸周りの角度の時間的変化を算出し、さらに、角度の時間的変化に基づいて、HMD110の傾きを算出する。また、HMD110は、透過型表示装置を備えていても良い。この場合、当該透過型表示装置は、その透過率を調整することにより、一時的に非透過型の表示装置として構成可能であってもよい。また、視界画像は、仮想空間を構成する画像の一部に、現実空間を提示する構成を含んでいてもよい。例えば、HMD110に搭載されたカメラで撮影した画像を視界画像の一部に重畳して表示させてもよいし、当該透過型表示装置の一部の透過率を高く設定することにより、視界画像の一部から現実空間を視認可能にしてもよい。 In another aspect, the HMD 110 may include a sensor 114 as a position detector instead of the HMD sensor 120. The HMD 110 can detect the position and tilt of the HMD 110 itself by using the sensor 114. For example, when the sensor 114 is an angular velocity sensor, a geomagnetic sensor, an acceleration sensor, a gyro sensor, or the like, the HMD 110 detects its position and inclination by using any of these sensors instead of the HMD sensor 120. obtain. As an example, when the sensor 114 is an angular velocity sensor, the angular velocity sensor detects the angular velocity around the three axes of the HMD 110 in real space over time. The HMD 110 calculates the temporal change of the angle around the three axes of the HMD 110 based on each angular velocity, and further calculates the inclination of the HMD 110 based on the temporal change of the angle. Further, the HMD 110 may be provided with a transmissive display device. In this case, the transmissive display device may be temporarily configured as a non-transparent display device by adjusting its transmittance. Further, the field of view image may include a configuration for presenting the real space as a part of the image constituting the virtual space. For example, an image taken by a camera mounted on the HMD 110 may be superimposed on a part of the view image and displayed, or by setting a high transmittance of a part of the transmissive display device, the view image can be displayed. The real space may be visible from a part.

注視センサ140は、ユーザ190の右目及び左目の視線が向けられる方向(視線)を検出する。当該方向の検出は、例えば、公知のアイトラッキング機能によって実現される。注視センサ140は、当該アイトラッキング機能を有するセンサにより実現される。ある態様において、注視センサ140は、右目用のセンサ及び左目用のセンサを含むことが好ましい。注視センサ140は、例えば、ユーザ190の右目及び左目に赤外光を照射するとともに、照射光に対する角膜及び虹彩からの反射光を受けることにより各眼球の回転角を検出するセンサであってもよい。注視センサ140は、検出した各回転角に基づいて、ユーザ190の視線を検知することができる。 The gaze sensor 140 detects the direction (line of sight) to which the eyes of the right eye and the left eye of the user 190 are directed. The detection of the direction is realized by, for example, a known eye tracking function. The gaze sensor 140 is realized by a sensor having the eye tracking function. In some embodiments, the gaze sensor 140 preferably includes a sensor for the right eye and a sensor for the left eye. The gaze sensor 140 may be, for example, a sensor that irradiates the right eye and the left eye of the user 190 with infrared light and detects the angle of rotation of each eyeball by receiving the reflected light from the cornea and the iris with respect to the irradiation light. .. The gaze sensor 140 can detect the line of sight of the user 190 based on each of the detected rotation angles.

サーバ150は、コンピュータ200にプログラムを送信し得る。別の態様において、サーバ150は、他のユーザによって使用されるHMDに仮想現実を提供するための他のコンピュータ200と通信し得る。例えば、アミューズメント施設において、複数のユーザが参加型のゲームを行う場合、各コンピュータ200は、各ユーザの動作に基づく信号を他のコンピュータ200と通信して、同じ仮想空間において複数のユーザが共通のゲームを楽しむことを可能にする。 The server 150 may send the program to the computer 200. In another aspect, the server 150 may communicate with another computer 200 to provide virtual reality to the HMD used by other users. For example, in an amusement facility, when a plurality of users play a participatory game, each computer 200 communicates a signal based on the operation of each user with another computer 200, and the plurality of users are common in the same virtual space. Allows you to enjoy the game.

コントローラ160は、有線又は無線によりコンピュータ200に接続される。コントローラ160は、ユーザ190からコンピュータ200への命令の入力を受け付ける。ある態様において、コントローラ160は、ユーザ190によって把持可能に構成される。別の態様において、コントローラ160は、ユーザ190の身体又は衣類の一部に装着可能に構成される。別の態様において、コントローラ160は、コンピュータ200から送信される信号に基づいて、振動、音、光のうちの少なくともいずれかを出力するように構成されてもよい。別の態様において、コントローラ160は、ユーザ190から、仮想空間に配置されるオブジェクトの位置や動きを制御するための操作を受け付ける。 The controller 160 is connected to the computer 200 by wire or wirelessly. The controller 160 receives an instruction input from the user 190 to the computer 200. In some embodiments, the controller 160 is configured to be grippable by the user 190. In another embodiment, the controller 160 is configured to be wearable on a part of the body or clothing of the user 190. In another aspect, the controller 160 may be configured to output at least one of vibration, sound, and light based on a signal transmitted from the computer 200. In another aspect, the controller 160 receives from the user 190 an operation for controlling the position and movement of an object arranged in the virtual space.

ある態様において、モーションセンサ130は、ユーザの手に取り付けられて、ユーザの手の動きを検出する。例えば、モーションセンサ130は、手の回転速度、回転数等を検出する。検出された信号は、コンピュータ200に送られる。モーションセンサ130は、例えば、手袋型のコントローラ160Aに設けられる。ある実施形態において、現実空間における安全のため、コントローラ160Aは、手袋型のようにユーザ190の手に装着されることにより容易に飛んで行かないものに装着されるのが望ましい。別の態様において、複数の操作ボタンを有する一般的な構造のコントローラ160Bが用いられてもよい。別の態様において、ユーザ190に装着されないセンサがユーザ190の手の動きを検出してもよい。ユーザ190の身体の様々な部分の位置、向き、動きの方向、動きの距離などを検知する光学式センサが用いられてもよい。例えば、ユーザ190を撮影するカメラの信号が、ユーザ190の動作を表す信号として、コンピュータ200に入力されてもよい。モーションセンサ130とコンピュータ200とは、一例として、無線により互いに接続される。無線の場合、通信形態は特に限られず、例えば、Bluetooth(登録商標)その他の公知の通信手法が用いられる。 In some embodiments, the motion sensor 130 is attached to the user's hand to detect the movement of the user's hand. For example, the motion sensor 130 detects the rotation speed, the number of rotations, and the like of the hand. The detected signal is sent to the computer 200. The motion sensor 130 is provided on, for example, a glove-shaped controller 160A. In certain embodiments, for safety in real space, it is desirable that the controller 160A be attached to something that does not easily fly by being attached to the user 190's hand, such as a glove type. In another embodiment, a controller 160B having a general structure having a plurality of operation buttons may be used. In another embodiment, a sensor not attached to the user 190 may detect the movement of the user 190's hand. Optical sensors may be used to detect the position, orientation, direction of movement, distance of movement, etc. of various parts of the body of the user 190. For example, the signal of the camera that captures the user 190 may be input to the computer 200 as a signal representing the operation of the user 190. As an example, the motion sensor 130 and the computer 200 are wirelessly connected to each other. In the case of wireless communication, the communication mode is not particularly limited, and for example, Bluetooth (registered trademark) or other known communication method is used.

図2を参照して、本開示の実施形態に係るコンピュータ200について説明する。図2は、本開示の一実施形態によるコンピュータ200の基本的なハードウェア構成の例を表すブロック図である。コンピュータ200は、主たる構成要素として、プロセッサ202と、メモリ204と、ストレージ206と、入出力インターフェース208と、通信インターフェース210とを備える。各構成要素は、それぞれ、バス212に接続される。 The computer 200 according to the embodiment of the present disclosure will be described with reference to FIG. FIG. 2 is a block diagram showing an example of a basic hardware configuration of the computer 200 according to the embodiment of the present disclosure. The computer 200 includes a processor 202, a memory 204, a storage 206, an input / output interface 208, and a communication interface 210 as main components. Each component is connected to bus 212, respectively.

プロセッサ202は、コンピュータ200に与えられる信号に基づいて、あるいは、予め定められた条件が成立したことに基づいて、メモリ204又はストレージ206に格納されているプログラムに含まれる一連の命令を実行する。ある態様において、プロセッサ202は、CPU(Central Processing Unit)、MPU(Micro Processor Unit)、FPGA(Field−Programmable Gate Array)等のデバイスとして実現される。 The processor 202 executes a series of instructions included in the program stored in the memory 204 or the storage 206 based on the signal given to the computer 200 or when a predetermined condition is satisfied. In some embodiments, the processor 202 is realized as a device such as a CPU (Central Processing Unit), an MPU (Micro Processor Unit), or an FPGA (Field-Programmable Gate Array).

メモリ204は、プログラム及びデータを一時的に保存する。プログラムは、例えば、ストレージ206からロードされる。データは、コンピュータ200に入力されたデータと、プロセッサ202によって生成されたデータとを含む。ある態様において、メモリ204は、RAM(Random Access Memory)等の揮発性メモリとして実現される。 Memory 204 temporarily stores programs and data. The program is loaded from storage 206, for example. The data includes data input to the computer 200 and data generated by the processor 202. In some embodiments, the memory 204 is realized as a volatile memory such as a RAM (Random Access Memory).

ストレージ206は、プログラム及びデータを永続的に保持する。ストレージ206は、例えば、ROM(Read−Only Memory)、ハードディスク装置、フラッシュメモリ等の不揮発性記憶装置として実現される。ストレージ206に格納されるプログラムは、HMDシステム100において仮想空間を提供するためのプログラム、シミュレーションプログラム、ゲームプログラム、ユーザ認証プログラム、他のコンピュータ200との通信を実現するためのプログラム等を含む。ストレージ206に格納されるデータは、仮想空間を規定するためのデータ及びオブジェクト等を含む。 Storage 206 permanently holds programs and data. The storage 206 is realized as, for example, a non-volatile storage device such as a ROM (Read-Only Memory), a hard disk device, or a flash memory. The program stored in the storage 206 includes a program for providing a virtual space in the HMD system 100, a simulation program, a game program, a user authentication program, a program for realizing communication with another computer 200, and the like. The data stored in the storage 206 includes data, objects, and the like for defining the virtual space.

別の態様において、ストレージ206は、メモリカードのように着脱可能な記憶装置として実現されてもよい。さらに別の態様において、コンピュータ200に内蔵されたストレージ206の代わりに、外部の記憶装置に保存されているプログラム及びデータを使用する構成が使用されてもよい。このような構成によれば、例えば、アミューズメント施設のように複数のHMDシステム100が使用される場面において、プログラムやデータの更新を一括して行なうことが可能になる。 In another aspect, the storage 206 may be realized as a removable storage device such as a memory card. In yet another embodiment, a configuration using programs and data stored in an external storage device may be used instead of the storage 206 built into the computer 200. According to such a configuration, for example, in a scene where a plurality of HMD systems 100 are used such as an amusement facility, it is possible to update programs and data at once.

ある実施形態において、入出力インターフェース208は、HMD110、HMDセンサ120及びモーションセンサ130との間で信号を通信する。ある態様において、入出力インターフェース208は、USB(Universal Serial Bus、USB)、DVI(Digital Visual Interface)、HDMI(登録商標)(High−Definition Multimedia Interface)等の端子を用いて実現される。なお、入出力インターフェース208は上述のものに限られない。 In certain embodiments, the input / output interface 208 communicates signals with the HMD 110, the HMD sensor 120, and the motion sensor 130. In some embodiments, the input / output interface 208 is implemented using terminals such as USB (Universal Serial Bus, USB), DVI (Digital Visual Interface), HDMI® (High-Definition Multimedia Interface), and the like. The input / output interface 208 is not limited to the above.

ある実施形態において、入出力インターフェース208は、さらに、コントローラ160と通信し得る。例えば、入出力インターフェース208は、コントローラ160及びモーションセンサ130から出力された信号の入力を受ける。別の態様において、入出力インターフェース208は、プロセッサ202から出力された命令を、コントローラ160に送る。当該命令は、振動、音声出力、発光等をコントローラ160に指示する。コントローラ160は、当該命令を受信すると、その命令に応じて、振動、音声出力、発光等を実行する。 In certain embodiments, the input / output interface 208 may further communicate with the controller 160. For example, the input / output interface 208 receives input of signals output from the controller 160 and the motion sensor 130. In another embodiment, the input / output interface 208 sends an instruction output from the processor 202 to the controller 160. The command instructs the controller 160 to vibrate, output voice, emit light, and the like. Upon receiving the command, the controller 160 executes vibration, voice output, light emission, and the like in response to the command.

通信インターフェース210は、ネットワーク192に接続され、ネットワーク192に接続されている他のコンピュータ(例えば、サーバ150)と通信する。ある態様において、通信インターフェース210は、例えば、LAN(Local Area Network)等の有線通信インターフェース、あるいは、WiFi(Wireless Fidelity)、Bluetooth(登録商標)、NFC(Near Field Communication)等の無線通信インターフェースとして実現される。なお、通信インターフェース210は上述のものに限られない。 The communication interface 210 is connected to the network 192 and communicates with another computer (for example, the server 150) connected to the network 192. In some embodiments, the communication interface 210 is realized as, for example, a wired communication interface such as LAN (Local Area Network), or a wireless communication interface such as WiFi (Wireless Field), Bluetooth (registered trademark), NFC (Near Field Communication), etc. Will be done. The communication interface 210 is not limited to the above.

ある態様において、プロセッサ202は、ストレージ206にアクセスし、ストレージ206に格納されている1つ以上のプログラムをメモリ204にロードし、当該プログラムに含まれる一連の命令を実行する。当該1つ以上のプログラムは、コンピュータ200のオペレーティングシステム、仮想空間を提供するためのアプリケーションプログラム、仮想空間で実行可能なゲームソフトウェア等を含み得る。プロセッサ202は、入出力インターフェース208を介して、仮想空間を提供するための信号をHMD110に送る。HMD110は、その信号に基づいて表示部112に映像を表示する。 In some embodiments, the processor 202 accesses storage 206, loads one or more programs stored in storage 206 into memory 204, and executes a series of instructions contained in the programs. The one or more programs may include an operating system of a computer 200, an application program for providing a virtual space, game software that can be executed in the virtual space, and the like. The processor 202 sends a signal for providing virtual space to the HMD 110 via the input / output interface 208. The HMD 110 displays an image on the display unit 112 based on the signal.

図2に示される例では、コンピュータ200は、HMD110の外部に設けられている。しかし、別の態様において、コンピュータ200は、HMD110に内蔵されてもよい。一例として、表示部112を含む携帯型の情報通信端末(例えば、スマートフォン)がコンピュータ200として機能してもよい。 In the example shown in FIG. 2, the computer 200 is provided outside the HMD 110. However, in another aspect, the computer 200 may be built into the HMD 110. As an example, a portable information communication terminal (for example, a smartphone) including the display unit 112 may function as the computer 200.

また、コンピュータ200は、複数のHMD110に共通して用いられる構成であってもよい。このような構成によれば、例えば、複数のユーザに同一の仮想空間を提供することもできるので、各ユーザは同一の仮想空間で他のユーザと同一のアプリケーションを楽しむことができる。 Further, the computer 200 may have a configuration commonly used for a plurality of HMD 110s. According to such a configuration, for example, the same virtual space can be provided to a plurality of users, so that each user can enjoy the same application as other users in the same virtual space.

ある実施形態において、HMDシステム100では、グローバル座標系が予め設定されている。グローバル座標系は、現実空間における鉛直方向、鉛直方向に直交する水平方向、ならびに、鉛直方向及び水平方向の双方に直交する前後方向にそれぞれ平行な、3つの基準方向(軸)を有する。本実施形態では、グローバル座標系は視点座標系の1つである。そこで、グローバル座標系における水平方向、鉛直方向(上下方向)、及び前後方向は、それぞれ、x軸、y軸、z軸として規定される。より具体的には、グローバル座標系において、x軸は現実空間の水平方向に平行である。y軸は、現実空間の鉛直方向に平行である。z軸は現実空間の前後方向に平行である。 In one embodiment, the HMD system 100 has a preset global coordinate system. The global coordinate system has three reference directions (axises) that are parallel to the vertical direction in the real space, the horizontal direction orthogonal to the vertical direction, and the front-back direction orthogonal to both the vertical direction and the horizontal direction. In this embodiment, the global coordinate system is one of the viewpoint coordinate systems. Therefore, the horizontal direction, the vertical direction (vertical direction), and the front-back direction in the global coordinate system are defined as the x-axis, the y-axis, and the z-axis, respectively. More specifically, in the global coordinate system, the x-axis is parallel to the horizontal direction of real space. The y-axis is parallel to the vertical direction in real space. The z-axis is parallel to the front-back direction of the real space.

ある態様において、HMDセンサ120は、赤外線センサを含む。赤外線センサが、HMD110の各光源から発せられた赤外線をそれぞれ検出すると、HMD110の存在を検出する。HMDセンサ120は、さらに、各点の値(グローバル座標系における各座標値)に基づいて、HMD110を装着したユーザ190の動きに応じた、現実空間内におけるHMD110の位置及び傾きを検出する。より詳しくは、HMDセンサ120は、経時的に検出された各値を用いて、HMD110の位置及び傾きの時間的変化を検出できる。 In some embodiments, the HMD sensor 120 includes an infrared sensor. When the infrared sensor detects infrared rays emitted from each light source of the HMD 110, the presence of the HMD 110 is detected. The HMD sensor 120 further detects the position and inclination of the HMD 110 in the real space according to the movement of the user 190 wearing the HMD 110 based on the value of each point (each coordinate value in the global coordinate system). More specifically, the HMD sensor 120 can detect a temporal change in the position and inclination of the HMD 110 by using each value detected over time.

グローバル座標系は現実空間の座標系と平行である。したがって、HMDセンサ120によって検出されたHMD110の各傾きは、グローバル座標系におけるHMD110の3軸周りの各傾きに相当する。HMDセンサ120は、グローバル座標系におけるHMD110の傾きに基づき、uvw視野座標系をHMD110に設定する。HMD110に設定されるuvw視野座標系は、HMD110を装着したユーザ190が仮想空間において物体を見る際の視点座標系に対応する。 The global coordinate system is parallel to the coordinate system in real space. Therefore, each inclination of the HMD 110 detected by the HMD sensor 120 corresponds to each inclination of the HMD 110 around three axes in the global coordinate system. The HMD sensor 120 sets the uvw field of view coordinate system to the HMD 110 based on the tilt of the HMD 110 in the global coordinate system. The uvw field-of-view coordinate system set in the HMD 110 corresponds to the viewpoint coordinate system when the user 190 wearing the HMD 110 sees an object in the virtual space.

図3を参照して、uvw視野座標系について説明する。図3は、ある実施形態に従うHMD110に設定されるuvw視野座標系を概念的に表す図である。HMDセンサ120は、HMD110の起動時に、グローバル座標系におけるHMD110の位置及び傾きを検出する。プロセッサ202は、検出された値に基づいて、uvw視野座標系をHMD110に設定する。 The uvw field coordinate system will be described with reference to FIG. FIG. 3 is a diagram conceptually representing the uvw field coordinate system set in the HMD 110 according to a certain embodiment. The HMD sensor 120 detects the position and tilt of the HMD 110 in the global coordinate system when the HMD 110 is activated. Processor 202 sets the uvw field coordinate system to HMD110 based on the detected values.

図3に示されるように、HMD110は、HMD110を装着したユーザの頭部を中心(原点)とした3次元のuvw視野座標系を設定する。より具体的には、HMD110は、グローバル座標系を規定する水平方向、鉛直方向、及び前後方向(x軸、y軸、z軸)を、グローバル座標系内においてHMD110の各軸周りの傾きだけ各軸周りにそれぞれ傾けることによって新たに得られる3つの方向を、HMD110におけるuvw視野座標系のピッチ方向(u軸)、ヨー方向(v軸)、及びロール方向(w軸)として設定する。 As shown in FIG. 3, the HMD 110 sets a three-dimensional uvw visual field coordinate system centered (origin) on the head of the user wearing the HMD 110. More specifically, the HMD 110 defines the global coordinate system in the horizontal, vertical, and front-back directions (x-axis, y-axis, z-axis) by the inclination of the HMD 110 around each axis in the global coordinate system. The three directions newly obtained by tilting each around the axis are set as the pitch direction (u-axis), the yaw direction (v-axis), and the roll direction (w-axis) of the uvw field coordinate system in the HMD 110.

ある態様において、HMD110を装着したユーザ190が直立し、かつ、正面を視認している場合、プロセッサ202は、グローバル座標系に平行なuvw視野座標系をHMD110に設定する。この場合、グローバル座標系における水平方向(x軸)、鉛直方向(y軸)、及び前後方向(z軸)は、HMD110におけるuvw視野座標系のピッチ方向(u軸)、ヨー方向(v軸)及びロール方向(w軸)に一致する。 In some embodiments, when the user 190 wearing the HMD 110 is upright and visually recognizing the front, the processor 202 sets the uvw field coordinate system parallel to the global coordinate system to the HMD 110. In this case, the horizontal direction (x-axis), vertical direction (y-axis), and front-back direction (z-axis) in the global coordinate system are the pitch direction (u-axis) and yaw direction (v-axis) of the uvw field coordinate system in the HMD 110. And the roll direction (w-axis).

uvw視野座標系がHMD110に設定された後、HMDセンサ120は、HMD110の動きに基づいて、設定されたuvw視野座標系におけるHMD110の傾き(傾きの変化量)を検出できる。この場合、HMDセンサ120は、HMD110の傾きとして、uvw視野座標系におけるHMD110のピッチ角(θu)、ヨー角(θv)及びロール角(θw)をそれぞれ検出する。ピッチ角(θu)は、uvw視野座標系におけるピッチ方向周りのHMD110の傾き角度を表す。ヨー角(θv)は、uvw視野座標系におけるヨー方向周りのHMD110の傾き角度を表す。ロール角(θw)は、uvw視野座標系におけるロール方向周りのHMD110の傾き角度を表す。 After the uvw visual field coordinate system is set to the HMD 110, the HMD sensor 120 can detect the inclination (change amount of the inclination) of the HMD 110 in the set uvw visual field coordinate system based on 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 uvw visual field coordinate system as the inclination of the HMD 110, respectively. The pitch angle (θu) represents the tilt angle of the HMD 110 around the pitch direction in the uvw visual field coordinate system. The yaw angle (θv) represents the tilt angle of the HMD 110 around the yaw direction in the uvw visual field coordinate system. The roll angle (θw) represents the tilt angle of the HMD 110 around the roll direction in the uvw visual field coordinate system.

HMDセンサ120は、検出されたHMD110の傾き角度に基づいて、HMD110が動いた後のHMD110におけるuvw視野座標系を、HMD110に設定する。HMD110と、HMD110のuvw視野座標系との関係は、HMD110の位置及び傾きに関わらず、常に一定である。HMD110の位置及び傾きが変わると、当該位置及び傾きの変化に連動して、グローバル座標系におけるHMD110のuvw視野座標系の位置及び傾きが変化する。 The HMD sensor 120 sets the uvw field coordinate system in the HMD 110 after the HMD 110 has moved to the HMD 110 based on the detected tilt angle of the HMD 110. The relationship between the HMD 110 and the uvw 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 change in conjunction with the change of the position and inclination.

ある態様において、HMDセンサ120は、赤外線センサからの出力に基づいて取得される赤外線の光強度及び複数の点間の相対的な位置関係(例えば、各点間の距離等)に基づいて、HMD110の現実空間内における位置を、HMDセンサ120に対する相対位置として特定してもよい。また、プロセッサ202は、特定された相対位置に基づいて、現実空間内(グローバル座標系)におけるHMD110のuvw視野座標系の原点を決定してもよい。 In some embodiments, the HMD sensor 120 is based on the infrared light intensity acquired based on the output from the infrared sensor and the relative positional relationship between the points (eg, the distance between the points). The position of the light in the real space may be specified as a relative position with respect to the HMD sensor 120. Further, the processor 202 may determine the origin of the uvw visual field coordinate system of the HMD 110 in the real space (global coordinate system) based on the specified relative position.

図4を参照して、仮想空間についてさらに説明する。図4は、ある実施形態に従う仮想空間400を表現する一態様を概念的に表す図である。仮想空間400は、中心406の360度方向の全体を覆う全天球状の構造を有する。図4では、説明を複雑にしないために、仮想空間400のうちの上半分の天球が例示されている。仮想空間400では各メッシュが規定される。各メッシュの位置は、仮想空間400に規定されるXYZ座標系における座標値として予め規定されている。コンピュータ200は、仮想空間400に展開可能なコンテンツ(静止画、動画等)を構成する各部分画像を、仮想空間400において対応する各メッシュにそれぞれ対応付けて、ユーザによって視認可能な仮想空間画像が展開される仮想空間400をユーザに提供する。 The virtual space will be further described with reference to FIG. FIG. 4 is a diagram conceptually representing one aspect of expressing the virtual space 400 according to a certain embodiment. The virtual space 400 has an all-sky spherical structure that covers the entire center 406 in the 360-degree direction. In FIG. 4, the celestial sphere in the upper half of the virtual space 400 is illustrated so as not to complicate the explanation. Each mesh is defined in the virtual space 400. The position of each mesh is predetermined as a coordinate value in the XYZ coordinate system defined in the virtual space 400. The computer 200 associates each partial image constituting the content (still image, moving image, etc.) expandable in the virtual space 400 with each corresponding mesh in the virtual space 400, and creates a virtual space image visible to the user. The virtual space 400 to be expanded is provided to the user.

ある態様において、仮想空間400では、中心406を原点とするxyz座標系が規定される。xyz座標系は、例えば、グローバル座標系に平行である。xyz座標系は視点座標系の一種であるため、xyz座標系における水平方向、鉛直方向(上下方向)及び前後方向は、それぞれx軸、y軸及びz軸として規定される。したがって、xyz座標系のx軸(水平方向)がグローバル座標系のx軸と平行であり、xyz座標系のy軸(鉛直方向)がグローバル座標系のy軸と平行であり、xyz座標系のz軸(前後方向)がグローバル座標系のz軸と平行である。 In some embodiments, the virtual space 400 defines an xyz coordinate system with the center 406 as the origin. The xyz coordinate system is, for example, parallel to the global coordinate system. Since the xyz coordinate system is a kind of viewpoint coordinate system, the horizontal direction, the vertical direction (vertical direction), and the front-back direction in the xyz coordinate system are defined as the x-axis, the y-axis, and the z-axis, respectively. Therefore, the x-axis (horizontal direction) of the xyz coordinate system is parallel to the x-axis of the global coordinate system, and the y-axis (vertical direction) of the xyz coordinate system is parallel to the y-axis of the global coordinate system. The z-axis (front-back direction) is parallel to the z-axis of the global coordinate system.

HMD110の起動時、すなわちHMD110の初期状態において、仮想カメラ404が、仮想空間400の中心406に配置される。ある態様において、プロセッサ202は、仮想カメラ404が撮影する画像をHMD110の表示部112に表示する。仮想カメラ404は、現実空間におけるHMD110の動きに連動して、仮想空間400を同様に移動する。これにより、現実空間におけるHMD110の位置及び向きの変化が、仮想空間400において同様に再現され得る。 When the HMD 110 is activated, that is, in the initial state of the HMD 110, the virtual camera 404 is arranged at the center 406 of the virtual space 400. In some embodiments, the processor 202 displays an image captured by the virtual camera 404 on the display unit 112 of the HMD 110. The virtual camera 404 moves in the virtual space 400 in the same manner in conjunction with the movement of the HMD 110 in the real space. As a result, changes in the position and orientation of the HMD 110 in the real space can be similarly reproduced in the virtual space 400.

HMD110の場合と同様に、仮想カメラ404には、uvw視野座標系が規定される。仮想空間400における仮想カメラ404のuvw視野座標系は、現実空間(グローバル座標系)におけるHMD110のuvw視野座標系に連動するように規定される。したがって、HMD110の傾きが変化すると、それに応じて、仮想カメラ404の傾きも変化する。また、仮想カメラ404は、HMD110を装着したユーザの現実空間における移動に連動して、仮想空間400において移動することもできる。 As in the case of the HMD 110, the virtual camera 404 is defined with an uvw field-of-view coordinate system. The uvw field-of-view coordinate system of the virtual camera 404 in the virtual space 400 is defined to be linked to the uvw field-of-view 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 404 also changes accordingly. Further, the virtual camera 404 can also move in the virtual space 400 in conjunction with the movement of the user wearing the HMD 110 in the real space.

コンピュータ200のプロセッサ202は、仮想カメラ404の配置位置と、基準視線408とに基づいて、仮想空間400における視認領域410を規定する。視認領域410は、仮想空間400のうち、HMD110を装着したユーザが視認する領域に対応する。 The processor 202 of the computer 200 defines the viewing area 410 in the virtual space 400 based on the arrangement position of the virtual camera 404 and the reference line of sight 408. The viewing area 410 corresponds to the area of the virtual space 400 that is visually recognized by the user wearing the HMD 110.

注視センサ140によって検出されるユーザ190の視線は、ユーザ190が物体を視認する際の視点座標系における方向である。HMD110のuvw視野座標系は、ユーザ190が表示部112を視認する際の視点座標系に等しい。また、仮想カメラ404のuvw視野座標系は、HMD110のuvw視野座標系に連動している。したがって、ある態様に従うHMDシステム100は、注視センサ140によって検出されたユーザ190の視線を、仮想カメラ404のuvw視野座標系におけるユーザの視線とみなすことができる。 The line of sight of the user 190 detected by the gaze sensor 140 is a direction in the viewpoint coordinate system when the user 190 visually recognizes an object. The uvw field-of-view coordinate system of the HMD 110 is equal to the viewpoint coordinate system when the user 190 visually recognizes the display unit 112. Further, the uvw field-of-view coordinate system of the virtual camera 404 is linked to the uvw field-of-view coordinate system of the HMD 110. Therefore, the HMD system 100 according to a certain aspect can consider the line of sight of the user 190 detected by the gaze sensor 140 as the line of sight of the user in the uvw field of view coordinate system of the virtual camera 404.

図5を参照して、ユーザの視線の決定について説明する。図5は、ある実施形態に従うHMD110を装着するユーザ190の頭部を上から表した図である。 The determination of the line of sight of the user will be described with reference to FIG. FIG. 5 is a top view of the head of the user 190 wearing the HMD 110 according to an embodiment.

ある態様において、注視センサ140は、ユーザ190の右目及び左目の各視線を検出する。ある態様において、ユーザ190が近くを見ている場合、注視センサ140は、視線R1及びL1を検出する。別の態様において、ユーザ190が遠くを見ている場合、注視センサ140は、視線R2及びL2を検出する。この場合、ロール方向wに対して視線R2及びL2がなす角度は、ロール方向wに対して視線R1及びL1がなす角度よりも小さい。注視センサ140は、検出結果をコンピュータ200に送信する。 In some embodiments, the gaze sensor 140 detects each line of sight of the user 190's right and left eyes. In some embodiments, the gaze sensor 140 detects gazes R1 and L1 when the user 190 is looking closer. In another embodiment, when the user 190 is looking far away, the gaze sensor 140 detects the lines of sight R2 and L2. In this case, the angle formed by the lines of sight R2 and L2 with respect to the roll direction w is smaller than the angle formed by the lines of sight R1 and L1 with respect to the roll direction w. The gaze sensor 140 transmits the detection result to the computer 200.

コンピュータ200が、視線の検出結果として、視線R1及びL1の検出値を注視センサ140から受信した場合には、その検出値に基づいて、視線R1及びL1の交点である注視点N1を特定する。一方、コンピュータ200は、視線R2及びL2の検出値を注視センサ140から受信した場合には、視線R2及びL2の交点を注視点として特定する。コンピュータ200は、特定した注視点N1の位置に基づき、ユーザ190の視線N0を特定する。コンピュータ200は、例えば、ユーザ190の右目Rと左目Lとを結ぶ直線の中点と、注視点N1とを通る直線の延びる方向を、視線N0として検出する。視線N0は、ユーザ190が両目により実際に視線を向けている方向である。また、視線N0は、視認領域410に対してユーザ190が実際に視線を向けている方向に相当する。 When the computer 200 receives the detection values of the line of sight R1 and L1 from the gaze sensor 140 as the detection result of the line of sight, the computer 200 identifies the gaze point N1 which is the intersection of the line of sight R1 and L1 based on the detected values. On the other hand, when the computer 200 receives the detected values of the lines of sight R2 and L2 from the gaze sensor 140, the computer 200 identifies the intersection of the lines of sight R2 and L2 as the gaze point. The computer 200 identifies the line of sight N0 of the user 190 based on the position of the identified gazing point N1. The computer 200 detects, for example, the extending direction of the straight line passing through the midpoint of the straight line connecting the right eye R and the left eye L of the user 190 and the gazing point N1 as the line of sight N0. The line of sight N0 is the direction in which the user 190 actually directs the line of sight with both eyes. Further, the line of sight N0 corresponds to the direction in which the user 190 actually directs the line of sight with respect to the viewing area 410.

別の態様において、HMDシステム100は、HMDシステム100を構成するいずれかの部分に、マイク及びスピーカを備えてもよい。ユーザは、マイクに発話することにより、仮想空間400に対して、音声による指示を与えることができる。 In another aspect, the HMD system 100 may include a microphone and a speaker in any part constituting the HMD system 100. The user can give a voice instruction to the virtual space 400 by speaking to the microphone.

また、別の態様において、HMDシステム100は、テレビジョン放送受信チューナを備えてもよい。このような構成によれば、HMDシステム100は、仮想空間400においてテレビ番組を表示することができる。 In another aspect, the HMD system 100 may include a television broadcast receiving tuner. According to such a configuration, the HMD system 100 can display a television program in the virtual space 400.

さらに別の態様において、HMDシステム100は、インターネットに接続するための通信回路、あるいは、電話回線に接続するための通話機能を備えていてもよい。 In still another aspect, the HMD system 100 may include a communication circuit for connecting to the Internet or a telephone function for connecting to a telephone line.

図6及び図7を参照して、視認領域410について説明する。図6は、仮想空間400において視認領域410をx方向から見たyz断面を表す図である。図7は、仮想空間400において視認領域410をy方向から見たxz断面を表す図である。 The viewing area 410 will be described with reference to FIGS. 6 and 7. FIG. 6 is a diagram showing a yz cross section of the visual recognition area 410 viewed from the x direction in the virtual space 400. FIG. 7 is a diagram showing an xz cross section of the visual recognition area 410 viewed from the y direction in the virtual space 400.

図6に示されるように、yz断面における視認領域410は、領域602を含む。領域602は、仮想カメラ404の配置位置と基準視線408と仮想空間400のyz断面とによって定義される。プロセッサ202は、仮想空間おける基準視線408を中心として極角αを含む範囲を、領域602として規定する。 As shown in FIG. 6, the visible region 410 in the yz cross section includes the region 602. The area 602 is defined by the arrangement position of the virtual camera 404, the reference line of sight 408, and the yz cross section of the virtual space 400. The processor 202 defines a range including the polar angle α centered on the reference line of sight 408 in the virtual space as a region 602.

図7に示されるように、xz断面における視認領域410は、領域702を含む。領域702は、仮想カメラ404の配置位置と基準視線408と仮想空間400のxz断面とによって定義される。プロセッサ202は、仮想空間400における基準視線408を中心とした方位角βを含む範囲を、領域702として規定する。極角α及びβは、仮想カメラ404の配置位置と仮想カメラ404の向きとに応じて定まる。 As shown in FIG. 7, the visible region 410 in the xz cross section includes the region 702. The area 702 is defined by the arrangement position of the virtual camera 404, the reference line of sight 408, and the xz cross section of the virtual space 400. The processor 202 defines a range including the azimuth angle β centered on the reference line of sight 408 in the virtual space 400 as the region 702. The polar angles α and β are determined according to the arrangement position of the virtual camera 404 and the orientation of the virtual camera 404.

ある態様において、HMDシステム100は、コンピュータ200からの信号に基づいて、視界画像を表示部112に表示させることにより、仮想空間における視界をユーザ190に提供する。視界画像は、仮想空間画像402のうち視認領域410に重畳する部分に相当する。ユーザ190が、頭に装着したHMD110を動かすと、その動きに連動して仮想カメラ404も動く。その結果、仮想空間400における視認領域410の位置が変化する。これにより、表示部112に表示される視界画像は、仮想空間画像402のうち、仮想空間400においてユーザが向いた方向の視認領域410に重畳する画像に更新される。ユーザは、仮想空間400における所望の方向を視認することができる。 In some embodiments, the HMD system 100 provides the user 190 with a field of view in virtual space by displaying a field of view image on the display unit 112 based on a signal from the computer 200. The visual field image corresponds to a portion of the virtual space image 402 that is superimposed on the visual field area 410. When the user 190 moves the HMD 110 attached to the head, the virtual camera 404 also moves in conjunction with the movement. As a result, the position of the visible area 410 in the virtual space 400 changes. As a result, the field-of-view image displayed on the display unit 112 is updated to an image superimposed on the visual-view area 410 in the direction facing the user in the virtual space 400 among the virtual space images 402. The user can visually recognize the desired direction in the virtual space 400.

このように、仮想カメラ404の向き(傾き)は仮想空間400におけるユーザの視線(基準視線408)に相当し、仮想カメラ404が配置される位置は、仮想空間400におけるユーザの視点に相当する。したがって、仮想カメラ404を移動(配置位置を変える動作、向きを変える動作を含む)させることにより、表示部112に表示される画像が更新され、ユーザ190の視界(視点、視線を含む)が移動される。 As described above, the direction (tilt) of the virtual camera 404 corresponds to the user's line of sight (reference line of sight 408) in the virtual space 400, and the position where the virtual camera 404 is arranged corresponds to the user's viewpoint in the virtual space 400. Therefore, by moving the virtual camera 404 (including the operation of changing the arrangement position and the operation of changing the orientation), the image displayed on the display unit 112 is updated, and the field of view (including the viewpoint and the line of sight) of the user 190 is moved. Will be done.

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

ある態様において、プロセッサ202は、HMD110を装着したユーザ190の現実空間における移動に連動して、仮想空間400において仮想カメラ404を移動し得る。この場合、プロセッサ202は、仮想空間400における仮想カメラ404の位置及び向きに基づいて、HMD110の表示部112に投影される画像領域(すなわち、仮想空間400における視認領域410)を特定する。 In some embodiments, the processor 202 may move the virtual camera 404 in the virtual space 400 in conjunction with the movement of the user 190 wearing the HMD 110 in the real space. In this case, the processor 202 identifies an image area (that is, a viewing area 410 in the virtual space 400) projected onto the display unit 112 of the HMD 110 based on the position and orientation of the virtual camera 404 in the virtual space 400.

ある実施形態に従うと、仮想カメラ404は、2つの仮想カメラ、すなわち、右目用の画像を提供するための仮想カメラと、左目用の画像を提供するための仮想カメラとを含んでもよい。また、ユーザ190が3次元の仮想空間400を認識できるように、適切な視差が、2つの仮想カメラに設定されてもよい。 According to certain embodiments, the virtual camera 404 may include two virtual cameras, a virtual camera for providing an image for the right eye and a virtual camera for providing an image for the left eye. Further, appropriate parallax may be set in the two virtual cameras so that the user 190 can recognize the three-dimensional virtual space 400.

図8Aを参照して、コントローラ160の一例であるコントローラ160Aについて説明する。図8Aは、ある実施形態に従うコントローラ160Aの概略構成を表す図である。 The controller 160A, which is an example of the controller 160, will be described with reference to FIG. 8A. FIG. 8A is a diagram showing a schematic configuration of a controller 160A according to an embodiment.

ある態様において、コントローラ160Aは、右コントローラと左コントローラとを含み得る。説明を簡単にするために、図8Aにおけるコントローラ160Aは右コントローラを示す。右コントローラは、ユーザ190の右手で操作される。左コントローラは、ユーザ190の左手で操作される。ある態様において、右コントローラと左コントローラとは、別個の装置として対称に構成される。したがって、ユーザ190は、右コントローラを把持した右手と、左コントローラを把持した左手とをそれぞれ自由に動かすことができる。別の態様において、コントローラ160は両手の操作を受け付ける一体型のコントローラであってもよい。以下、右コントローラ160Aについて説明する。 In some embodiments, the controller 160A may include a right controller and a left controller. For simplicity of explanation, controller 160A in FIG. 8A shows the right controller. The right controller is operated by the right hand of the user 190. The left controller is operated by the left hand of the user 190. In some embodiments, the right controller and the left controller are symmetrically configured as separate devices. Therefore, the user 190 can freely move the right hand holding the right controller and the left hand holding the left controller. In another embodiment, the controller 160 may be an integrated controller that accepts operations of both hands. Hereinafter, the right controller 160A will be described.

右コントローラ160Aは、グリップ802と、フレーム804と、天面806とを備える。グリップ802は、ユーザ190の右手によって把持されるように構成されている。例えば、グリップ802は、ユーザ190の右手の掌と3本の指(中指、薬指、小指)とによって保持され得る。 The right controller 160A includes a grip 802, a frame 804, and a top surface 806. The grip 802 is configured to be gripped by the right hand of the user 190. For example, the grip 802 may be held by the palm of the user 190's right hand and three fingers (middle finger, ring finger, little finger).

グリップ802は、ボタン808及び810と、モーションセンサ130とを含む。ボタン808は、グリップ802の側面に配置され、右手の中指による操作を受け付ける。ボタン810は、グリップ802の前面に配置され、右手の人差し指による操作を受け付ける。ある態様において、ボタン808、810は、トリガー式のボタンとして構成される。モーションセンサ130は、グリップ802の筐体に内蔵されている。なお、ユーザ190の動作がカメラその他の装置によってユーザ190の周りから検出可能である場合には、グリップ802は、モーションセンサ130を備えなくてもよい。 The grip 802 includes buttons 808 and 810 and a motion sensor 130. The button 808 is arranged on the side surface of the grip 802 and accepts an operation by the middle finger of the right hand. The button 810 is arranged in front of the grip 802 and accepts an operation by the index finger of the right hand. In some embodiments, the buttons 808, 810 are configured as trigger-type buttons. The motion sensor 130 is built in the housing of the grip 802. If the operation of the user 190 can be detected from around the user 190 by a camera or other device, the grip 802 may not include the motion sensor 130.

フレーム804は、その円周方向に沿って配置された複数の赤外線LED812を含む。赤外線LED812は、コントローラ160Aを使用するプログラムの実行中に、当該プログラムの進行に合わせて赤外線を発光する。赤外線LED812から発せられた赤外線は、右コントローラ160Aと左コントローラ(図示しない)との各位置や姿勢(傾き、向き)を検出するために使用され得る。図8に示される例では、2列に配置された赤外線LED812が示されているが、配列の数は図8に示されるものに限られない。1列あるいは3列以上の配列が使用されてもよい。 The frame 804 includes a plurality of infrared LEDs 812 arranged along its circumferential direction. The infrared LED 812 emits infrared rays as the program progresses during the execution of the program using the controller 160A. The infrared rays emitted from the infrared LED 812 can be used to detect each position and orientation (tilt, orientation) of the right controller 160A and the left controller (not shown). In the example shown in FIG. 8, infrared LEDs 812 arranged in two rows are shown, but the number of arrays is not limited to that shown in FIG. An array of one column or three or more columns may be used.

天面806は、ボタン814及び816と、アナログスティック818とを備える。ボタン814及び816は、プッシュ式ボタンとして構成される。ボタン814及び816は、ユーザ190の右手の親指による操作を受け付ける。アナログスティック818は、ある態様において、初期位置(ニュートラルの位置)から360度任意の方向への操作を受け付ける。当該操作は、例えば、仮想空間400に配置されるオブジェクトを移動するための操作を含む。 The top surface 806 includes buttons 814 and 816 and an analog stick 818. Buttons 814 and 816 are configured as push buttons. Buttons 814 and 816 accept operations by the thumb of the user 190's right hand. In some embodiments, the analog stick 818 accepts an operation 360 degrees in any direction from the initial position (neutral position). The operation includes, for example, an operation for moving an object arranged in the virtual space 400.

ある態様において、右コントローラ160A及び左コントローラは、赤外線LED812等の部材を駆動するための電池を含む。電池は、1次電池及び2次電池のいずれであってもよく、その形状は、ボタン型、乾電池型等任意であり得る。別の態様において、右コントローラ160Aと左コントローラは、例えば、コンピュータ200のUSBインターフェースに接続され得る。この場合、右コントローラ800及び左コントローラは、USBインターフェースを介して電力を供給され得る。 In some embodiments, the right controller 160A and the left controller include a battery for driving a member such as an infrared LED 812. The battery may be either a primary battery or a secondary battery, and the shape thereof may be arbitrary such as a button type and a dry battery type. In another embodiment, the right controller 160A and the left controller can be connected, for example, to the USB interface of computer 200. In this case, the right controller 800 and the left controller may be powered via the USB interface.

図8Bを参照して、コントローラ160の一例であるコントローラ160Bについて説明する。図8Bは、ある実施形態に従うコントローラ160Bの概略構成を表す図である。 The controller 160B, which is an example of the controller 160, will be described with reference to FIG. 8B. FIG. 8B is a diagram showing a schematic configuration of a controller 160B according to an embodiment.

コントローラ160Bは、複数のボタン820(820a、820b、820c、820d)及び822(822a、822b、822c、822d)と、左右のアナログスティック824L及び824Rとを備える。各ボタン820及び822は、プッシュ式ボタンとして構成される。ボタン820及び822は、ユーザ190の手の親指による操作を受け付ける。ユーザ190の手の人差し指又は中指による操作を受け付けることが可能な不図示のトリガー式のボタンが、更にコントローラ160Bに設けられてもよい。アナログスティック824L及び824Rは、ある態様において、それぞれ初期位置(ニュートラルの位置)から360度任意の方向への操作を受け付ける。当該操作は、例えば、仮想空間400に配置されるオブジェクトを移動するための操作を含む。ボタン820(820a、820b、820c、820d)及び822(822a、822b、822c、822d)並びにアナログスティック824L及び824R(更に、含まれる場合には不図示のトリガー式ボタン)には、それぞれ別個の操作コマンドが割り当てられる。操作コマンドは、例えば、仮想空間400内のオブジェクトに指令を与えるためのコマンド、ゲームのメニュー画面等において各種の設定を行うためのコマンド、及びユーザ190が仮想空間400を体験している際にコンピュータ200に入力し得る任意の他のコマンドを含む。各ボタン又はアナログスティックに割り当てられた操作コマンドは、例えばゲームの進行や場面の変化に応じて、動的に変更されてもよい。 The controller 160B includes a plurality of buttons 820 (820a, 820b, 820c, 820d) and 822 (822a, 822b, 822c, 822d), and left and right analog sticks 824L and 824R. Each button 820 and 822 is configured as a push button. Buttons 820 and 822 accept operations by the thumb of the user 190's hand. A trigger-type button (not shown) capable of accepting an operation by the index finger or the middle finger of the user 190's hand may be further provided in the controller 160B. In some embodiments, the analog sticks 824L and 824R accept operations in any direction 360 degrees from the initial position (neutral position), respectively. The operation includes, for example, an operation for moving an object arranged in the virtual space 400. Separate operations for buttons 820 (820a, 820b, 820c, 820d) and 822 (822a, 822b, 822c, 822d) and analog sticks 824L and 824R (and, if included, trigger-type buttons (not shown)). A command is assigned. The operation commands include, for example, a command for giving a command to an object in the virtual space 400, a command for making various settings on a game menu screen, and a computer when the user 190 is experiencing the virtual space 400. Includes any other command that can be entered in 200. The operation command assigned to each button or analog stick may be dynamically changed according to, for example, the progress of the game or the change of the scene.

ある態様において、コントローラ160Bは、その外表面に配置された不図示の複数の赤外線LEDを含んでもよい。赤外線LEDは、コントローラ160Bを使用するプログラムの実行中に、当該プログラムの進行に合わせて赤外線を発光する。赤外線LEDから発せられた赤外線は、コントローラ160Bの位置や姿勢(傾き、向き)を検出するために使用され得る。またコントローラ160Bは、内部の電子部品を駆動するための電池を含む。電池は、1次電池及び2次電池のいずれであってもよく、その形状は、ボタン型、乾電池型等任意であり得る。別の態様において、コントローラ160Bは、例えば、コンピュータ200のUSBインターフェースに接続され得る。この場合、コントローラ160Bは、USBインターフェースを介して電力を供給され得る。
図9は、本開示の一実施形態による、HMDシステム100を介してユーザに仮想体験を提供するための、コンピュータ200の機能を示すブロック図である。コンピュータ200は、主にHMDセンサ120、モーションセンサ130、注視センサ140、コントローラ160からの入力に基づいて、様々な処理を実行する。
In some embodiments, the controller 160B may include a plurality of infrared LEDs (not shown) located on its outer surface. The infrared LED emits infrared rays as the program progresses during the execution of the program using the controller 160B. The infrared rays emitted from the infrared LEDs can be used to detect the position and orientation (tilt, orientation) of the controller 160B. Further, the controller 160B includes a battery for driving an internal electronic component. The battery may be either a primary battery or a secondary battery, and the shape thereof may be arbitrary such as a button type and a dry battery type. In another embodiment, the controller 160B may be connected to, for example, the USB interface of the computer 200. In this case, the controller 160B may be powered via the USB interface.
FIG. 9 is a block diagram showing a function of the computer 200 for providing a virtual experience to a user via the HMD system 100 according to an embodiment of the present disclosure. The computer 200 executes various processes mainly based on the inputs from the HMD sensor 120, the motion sensor 130, the gaze sensor 140, and the controller 160.

コンピュータ200は、プロセッサ202と、メモリ204と、通信制御部205とを備える。プロセッサ202は、仮想空間特定部902と、HMD動作検知部904と、視線検知部906と、基準視線決定部908と、視界領域決定部910と、仮想視点特定部912と、視界画像生成部914と、仮想カメラ制御部916と、イベント生成部918と、視認度合い特定部920と、条件判定部922と、オブジェクト制御部923と、視界画像出力部924と、を含み得る。メモリ204は様々な情報を格納するように構成され得る。一例では、メモリ204は、仮想空間データ926、オブジェクトデータ928、アプリケーションデータ930、イベントデータ932、視認度合い条件934、行動データ936、その他のデータ938を含んでもよい。メモリ204はまた、HMDセンサ120、モーションセンサ130、注視センサ140、コントローラ160等からの入力に対応した出力情報をHMD110に関連付けられる表示部112へ提供するための演算に必要な、各種データを含んでもよい。オブジェクトデータ928は、仮想空間内に配置される様々なオブジェクトに関するデータを含んでもよい。イベントデータ932は、仮想空間内で生じるイベントに関する様々なデータを含んでもよい。イベントは、仮想空間におけるシナリオの進行に応じて生じてもよい。視認度合い条件934は、イベントをユーザが視認しているかどうかの判定に関する情報(例えば、視認度合いを満たすのに必要な、後述のオブジェクト数や特徴点数など)を含んでもよい。行動データ936は、ユーザの注意を誘導するために仮想空間内のオブジェクトによって行われる行動に関するデータを含んでもよい。表示部112は、HMD110に内蔵されてもよいし、HMD110に取り付け可能な別のデバイス(例えば、スマートフォン)のディスプレイであってもよい。本開示の実施形態において、HMD110は、ユーザの頭部に関連付けられる画像表示装置として構成される様々な装置を含み得る。 The computer 200 includes a processor 202, a memory 204, and a communication control unit 205. The processor 202 includes a virtual space identification unit 902, an HMD motion detection unit 904, a line-of-sight detection unit 906, a reference line-of-sight determination unit 908, a field of view area determination unit 910, a virtual viewpoint identification unit 912, and a field of view image generation unit 914. A virtual camera control unit 916, an event generation unit 918, a visibility degree specifying unit 920, a condition determination unit 922, an object control unit 923, and a field of view image output unit 924 may be included. The memory 204 may be configured to store various information. In one example, the memory 204 may include virtual space data 926, object data 928, application data 930, event data 932, visibility condition 934, behavior data 936, and other data 938. The memory 204 also includes various data necessary for the calculation for providing the output information corresponding to the input from the HMD sensor 120, the motion sensor 130, the gaze sensor 140, the controller 160, etc. to the display unit 112 associated with the HMD 110. It may be. The object data 928 may include data about various objects arranged in the virtual space. Event data 932 may include various data about events occurring in the virtual space. The event may occur as the scenario progresses in the virtual space. The visibility condition 934 may include information related to determining whether or not the user is visually recognizing the event (for example, the number of objects and the number of feature points, which will be described later, required to satisfy the visibility). The behavior data 936 may include data about the behavior performed by the objects in the virtual space to guide the user's attention. The display unit 112 may be built in the HMD 110, or may be a display of another device (for example, a smartphone) that can be attached to the HMD 110. In embodiments of the present disclosure, the HMD 110 may include various devices configured as image display devices associated with the user's head.

図9においてプロセッサ202内に含まれるコンポーネントは、プロセッサ202が実行する機能を具体的なモジュールとして表現する1つの例にすぎない。複数のコンポーネントの機能が単一のコンポーネントによって実現されてもよい。プロセッサ202がすべてのコンポーネントの機能を実行するように構成されてもよい。 In FIG. 9, the component included in the processor 202 is only one example of expressing the function executed by the processor 202 as a concrete module. The functionality of multiple components may be achieved by a single component. Processor 202 may be configured to perform the functions of all components.

図10は、ユーザが没入する仮想空間の画像を表示部112に表示するための一般的な処理のフロー図である。 FIG. 10 is a flow chart of a general process for displaying an image of a virtual space in which a user is immersed on the display unit 112.

図9及び図10を参照して、仮想空間の画像を提供するためのHMDシステム100の一般的な処理を説明する。仮想空間400は、HMDセンサ120、注視センサ140及びコンピュータ200等の相互作用によって提供され得る。 With reference to FIGS. 9 and 10, a general process of the HMD system 100 for providing an image of the virtual space will be described. The virtual space 400 can be provided by the interaction of the HMD sensor 120, the gaze sensor 140, the computer 200, and the like.

処理はステップ1002において開始する。一例として、アプリケーションデータ930に含まれるゲームアプリケーションがコンピュータ200によって実行されてもよい。ステップ1004において、プロセッサ202(又は、仮想空間特定部902)は、仮想空間データ926を参照するなどして、ユーザが没入する仮想空間400を構成する天球状の仮想空間画像402を生成する。HMDセンサ120によってHMD110の位置や傾きが検知される。HMDセンサ120によって検知された情報はコンピュータ200に送信される。ステップ1006において、HMD動作検知部904は、HMD110の位置情報、傾き情報等を取得する。ステップ1008において、取得された位置情報及び傾き情報に基づいて視界方向が決定される。 The process starts in step 1002. As an example, the game application included in the application data 930 may be executed by the computer 200. In step 1004, the processor 202 (or the virtual space identification unit 902) generates a spherical virtual space image 402 constituting the virtual space 400 in which the user is immersed by referring to the virtual space data 926 or the like. The position and tilt of the HMD 110 are detected by the HMD sensor 120. The information detected by the HMD sensor 120 is transmitted to the computer 200. In step 1006, the HMD motion detection unit 904 acquires the position information, tilt information, and the like of the HMD 110. In step 1008, the viewing direction is determined based on the acquired position information and inclination information.

注視センサ140がユーザの左右の目の眼球の動きを検出すると、当該情報がコンピュータ200に送信される。ステップ1010において、視線検知部906は、右目及び左目の視線が向けられる方向を特定し、視線方向N0を決定する。ステップ1012において、基準視線決定部908は、HMD110の傾きにより決定された視界方向又はユーザの視線方向N0を基準視線408として決定する。基準視線408はまた、HMD110の位置や傾きに追随する仮想カメラ404の位置及び傾きに基づいて決定されてもよい。 When the gaze sensor 140 detects the movement of the eyeballs of the user's left and right eyes, the information is transmitted to the computer 200. In step 1010, the line-of-sight detection unit 906 specifies the directions in which the lines of sight of the right eye and the left eye are directed, and determines the line-of-sight direction N0. In step 1012, the reference line-of-sight determination unit 908 determines the field-of-view direction determined by the inclination of the HMD 110 or the user's line-of-sight direction N0 as the reference line-of-sight 408. The reference line of sight 408 may also be determined based on the position and tilt of the virtual camera 404 that follows the position and tilt of the HMD 110.

ステップ1014において、視界領域決定部910は、仮想空間400における仮想カメラ404の視界領域410を決定する。図4に示すように、視界領域410は、仮想空間画像402のうちユーザの視界を構成する部分である。視界領域410は基準視線408に基づいて決定される。視界領域410をx方向から見たyz断面図及び視界領域410をy方向から見たxz断面図は、既に説明した図6及び図7にそれぞれ示されている。 In step 1014, the field of view area determination unit 910 determines the field of view area 410 of the virtual camera 404 in the virtual space 400. As shown in FIG. 4, the field of view area 410 is a part of the virtual space image 402 that constitutes the user's field of view. The field of view 410 is determined based on the reference line of sight 408. The yz cross-sectional view of the field of view 410 viewed from the x direction and the xz cross section of the field of view 410 viewed from the y direction are shown in FIGS. 6 and 7, respectively, which have already been described.

ステップ1016において、視界画像生成部914は、視界領域410に基づいて視界画像を生成する。視界画像は、右目用と左目用の2つの2次元画像を含む。これらの2次元画像が表示部112に重畳される(より具体的には、右目用画像が右目用表示部に出力され、左目用画像が左目用表示部に出力される)ことにより、3次元画像としての仮想空間400がユーザに提供される。ステップ1018において、視界画像出力部924は、視界画像に関する情報を表示部112に出力する。表示部112は、受信した視界画像の情報に基づいて、当該視界画像を表示する。処理はステップ1020において終了する。 In step 1016, the field of view image generation unit 914 generates a field of view image based on the field of view region 410. The field of view image includes two two-dimensional images, one for the right eye and one for the left eye. By superimposing these two-dimensional images on the display unit 112 (more specifically, the image for the right eye is output to the display unit for the right eye and the image for the left eye is output to the display unit for the left eye), the three-dimensional image is displayed. The virtual space 400 as an image is provided to the user. In step 1018, the field of view image output unit 924 outputs information about the field of view image to the display unit 112. The display unit 112 displays the field of view image based on the information of the received field of view image. The process ends in step 1020.

図11は、本開示の一実施形態による方法1100のフローチャートである。図11のステップ1110、1112、1116及び1118において実行される処理の具体例を示すフローチャートは、後述する図12、図15、図19、図21及び図23に示される。本開示の一実施形態において、コンピュータプログラムが、図11、図12、図15、図19、図21及び図23に示される各ステップをプロセッサ202(又はコンピュータ200)に実行させてもよい。また、本開示の別の実施形態は、少なくともプロセッサを備え、当該プロセッサの制御により方法1100を実行するコンピュータとして実施することもできる。 FIG. 11 is a flowchart of Method 1100 according to an embodiment of the present disclosure. Flow charts showing specific examples of the processes executed in steps 1110, 1112, 1116 and 1118 of FIG. 11 are shown in FIGS. 12, 15, 19, 19, 21 and 23, which will be described later. In one embodiment of the present disclosure, the computer program may cause the processor 202 (or computer 200) to perform each step shown in FIGS. 11, 12, 15, 19, 21, and 23. Another embodiment of the present disclosure may also be implemented as a computer comprising at least a processor and performing method 1100 under the control of the processor.

以下、本開示の実施形態について具体的に説明する。ここでは、本開示の実施形態を適用することができる具体例として、ユーザが、当該ユーザに関連付けられるアバター、他のオブジェクト等が配置された仮想空間に没入して楽しむことができるゲームを想定する。しかし、本開示の実施形態は、必ずしもこのような態様に限定されない。本開示の実施形態が、特許請求の範囲において規定される範囲に含まれる様々な態様を取り得ることは、当業者にとって明らかであろう。 Hereinafter, embodiments of the present disclosure will be specifically described. Here, as a specific example to which the embodiment of the present disclosure can be applied, it is assumed that a user can immerse himself / herself in a virtual space in which an avatar, other objects, etc. associated with the user are arranged and enjoy the game. .. However, the embodiments of the present disclosure are not necessarily limited to such aspects. It will be apparent to those skilled in the art that embodiments of the present disclosure may take various aspects within the scope of the claims.

図13は、ゲームのプレイ中にイベントが生じた様子を概略的に表す図である。以下では、具体例として「女の子と一緒に犬を散歩させる」というイベントが生じた場合について、本開示の実施形態を説明する。しかし、イベントはこの種のものに限られず、RPGゲーム、シューティングゲームなどを含む様々なアプリケーションにおいて生じるイベントであってもよい。例えば、イベントは、旅行、観光、レッスン、講習などの、様々なシナリオを含むイベントであってもよい。 FIG. 13 is a diagram schematically showing how an event occurs during game play. Hereinafter, an embodiment of the present disclosure will be described with respect to a case where an event of "walking a dog with a girl" occurs as a specific example. However, the event is not limited to this type, and may be an event that occurs in various applications including RPG games, shooting games, and the like. For example, the event may be an event that includes various scenarios such as travel, tourism, lessons, and training.

ユーザ1304はHMD110を頭部に装着する。この例では、ユーザ1304は、図8Bに示す構成を有するコントローラ160Bを操作してもよい。これはコントローラの一例にすぎないことが理解されよう。図8Aに示すコントローラ160Aなどの、ユーザの身体に装着可能な他の態様のコントローラを含む、様々なコントローラを本開示の実施形態に適用することができる。別の例において、ユーザ1304がコントローラを装着せず、ユーザ1304に装着されないセンサがユーザ1304の動きを検出してもよい。例えば、ユーザ1304を撮影するカメラの信号が、ユーザ1304の動きを表す信号として、コンピュータ200に入力されてもよい。 User 1304 wears the HMD 110 on his head. In this example, user 1304 may operate controller 160B having the configuration shown in FIG. 8B. It will be understood that this is just one example of a controller. Various controllers can be applied to the embodiments of the present disclosure, including controllers of other embodiments that can be worn on the user's body, such as the controller 160A shown in FIG. 8A. In another example, the user 1304 may not be equipped with the controller, and a sensor not attached to the user 1304 may detect the movement of the user 1304. For example, the signal of the camera that captures the user 1304 may be input to the computer 200 as a signal representing the movement of the user 1304.

仮想空間1300内には、ユーザ1304によって操作されるアバター1306が配置される。ゲームのプレイ中、ユーザ1304は、コントローラ160Bを操作すること、HMD110が装着された頭部を動かすこと等によって、ユーザ1304に関連付けられるアバター1306に様々な動作を行わせることができる。 An avatar 1306 operated by the user 1304 is arranged in the virtual space 1300. During game play, the user 1304 can cause the avatar 1306 associated with the user 1304 to perform various actions by operating the controller 160B, moving the head on which the HMD 110 is attached, and the like.

図13に示されるように、アバター1306の位置(例えば、アバター1306の目の位置)に仮想カメラ1302が配置されてもよい。ユーザ1304は、仮想カメラ1302により(アバター1306の視点から)得られた仮想空間1300の映像を見ることができる。この例では、ユーザ1304のアバター1306が、女の子1310、犬1312、リード1314、犬小屋1316などのオブジェクト、及び他の任意の背景画像を含むシーン1318の近傍にいるものと仮定する。 As shown in FIG. 13, the virtual camera 1302 may be arranged at the position of the avatar 1306 (for example, the position of the eyes of the avatar 1306). The user 1304 can see the image of the virtual space 1300 obtained by the virtual camera 1302 (from the viewpoint of the avatar 1306). In this example, it is assumed that user 1304's avatar 1306 is in the vicinity of scene 1318, which includes objects such as girl 1310, dog 1312, lead 1314, kennel 1316, and any other background image.

図11に戻り、処理はステップ1102において開始する。プロセッサ202は、メモリ204に格納されているアプリケーションデータ930に含まれるゲームプログラムを読み出して実行する。仮想空間特定部902は、仮想空間データ926、オブジェクトデータ928等に基づいて、実行されたゲームのための仮想空間データを特定する。アバター1306及びシーン1318内に現れるオブジェクトに関するデータは、オブジェクトデータ928、アプリケーションデータ930等に含まれてもよい。仮想空間データは、ユーザ1304に関連付けられるアバター1306を含む仮想空間を規定する。イベントに関するデータは、イベントデータ932に含まれてもよい。 Returning to FIG. 11, the process starts in step 1102. The processor 202 reads and executes the game program included in the application data 930 stored in the memory 204. The virtual space specifying unit 902 specifies the virtual space data for the executed game based on the virtual space data 926, the object data 928, and the like. Data related to the objects appearing in the avatar 1306 and the scene 1318 may be included in the object data 928, the application data 930 and the like. The virtual space data defines a virtual space that includes an avatar 1306 associated with user 1304. Data about the event may be included in the event data 932.

処理はステップ1104に進み、仮想カメラ制御部916は、ユーザ1304による操作に基づいて、仮想空間1300内で仮想カメラ1302を動かす(仮想視点からの視界を制御する)。仮想カメラ1302は、ユーザ1304によるコントローラ160Bに対する操作、ユーザ1304の頭部190の動きに伴うHMD110の動き、アプリケーションによって予め規定される仮想カメラ1302の移動等によって動かされてもよい。 The process proceeds to step 1104, and the virtual camera control unit 916 moves the virtual camera 1302 in the virtual space 1300 based on the operation by the user 1304 (controls the field of view from the virtual viewpoint). The virtual camera 1302 may be moved by an operation on the controller 160B by the user 1304, a movement of the HMD 110 accompanying the movement of the head 190 of the user 1304, a movement of the virtual camera 1302 predetermined by the application, and the like.

処理はステップ1106に進み、イベント生成部918は、ゲームの進行状況等に応じて生じるイベント(この例では散歩イベント)を、イベントデータ932、オブジェクトデータ928、アプリケーションデータ930等に基づいて生成する。 The process proceeds to step 1106, and the event generation unit 918 generates an event (a walk event in this example) that occurs according to the progress of the game, etc., based on the event data 932, the object data 928, the application data 930, and the like.

図13の例において、シーン1318は、女の子1310、犬1312、リード1314及び犬小屋1316を含む。アバター1306の視線の方向、すなわち仮想カメラ1302の向き(又は、仮想視点の向き)は、矢印1312により示されている。 In the example of FIG. 13, scene 1318 includes girl 1310, dog 1312, lead 1314 and kennel 1316. The direction of the line of sight of the avatar 1306, that is, the orientation of the virtual camera 1302 (or the orientation of the virtual viewpoint) is indicated by the arrow 1312.

処理はステップ1108に進む。視界画像生成部914は、仮想空間データ926、イベントデータ932、仮想カメラ1302の位置及び向き等に基づいて、視界画像を生成する。視界画像は、例えば、図10に関連して既に説明された処理によって生成される。 The process proceeds to step 1108. The field of view image generation unit 914 generates a field of view image based on the virtual space data 926, the event data 932, the position and orientation of the virtual camera 1302, and the like. The field of view image is generated, for example, by the process already described in connection with FIG.

処理はステップ1110に進み、視認度合い特定部920は、ステップ1106において生成されたイベントをユーザ1304がどの程度視認しているかを示す視認度合いを特定する。 The process proceeds to step 1110, and the visibility degree specifying unit 920 specifies the visibility degree indicating how much the user 1304 is visually recognizing the event generated in step 1106.

処理はステップ1112に進み、条件判定部922は、視認度合い条件934等に基づいて、ステップ1110で特定された視認度合いが所定の条件を満たしているか否かを判定する。 The process proceeds to step 1112, and the condition determination unit 922 determines whether or not the visibility degree specified in step 1110 satisfies a predetermined condition based on the visibility degree condition 934 or the like.

図12は、ステップ1110及び1112において実行される処理の具体例を示すフローチャートである。 FIG. 12 is a flowchart showing a specific example of the processing executed in steps 1110 and 1112.

ステップ1202において、視認度合い特定部920は、ステップ1106において生成されたイベントに登場するオブジェクトのうち視界内に含まれるオブジェクトの数を算出する。一例として、オブジェクトが視界内に含まれるか否かは、ステップ1108により生成された視界画像内に当該オブジェクトのうち少なくとも所定の部分が含まれるか否かに基づいて判断されてもよい。 In step 1202, the visibility degree specifying unit 920 calculates the number of objects included in the field of view among the objects appearing in the event generated in step 1106. As an example, whether or not an object is included in the field of view may be determined based on whether or not at least a predetermined portion of the object is included in the field of view image generated in step 1108.

図14は、図13に示したシーン1318に関してユーザに提供される視界画像の例を示す。図14においては、オブジェクト1310、1312及び1316が、四隅の座標により定まる、点線で示される矩形領域1402、1404及び1406を有するように設定されている。このような矩形領域を設定することは、視界内にオブジェクトが含まれるか否かを判断するための手法の一例にすぎない。様々な手法を用い得ることが当業者に理解されよう。図示されていないが、リード1314についても領域が定められてもよい。 FIG. 14 shows an example of a field of view image provided to the user with respect to the scene 1318 shown in FIG. In FIG. 14, the objects 1310, 1312, and 1316 are set to have rectangular areas 1402, 1404, and 1406 indicated by dotted lines, which are determined by the coordinates of the four corners. Setting such a rectangular area is only an example of a method for determining whether or not an object is included in the field of view. Those skilled in the art will appreciate that various techniques can be used. Although not shown, regions may also be defined for leads 1314.

ステップ1108によって視界画像1410が生成される場合、イベントに関連するシーン1318内のオブジェクトは視界画像1410に一切含まれない。すなわち、このとき、アバター1306の視線は発生しているイベントの方向に向いていない。この場合、ステップ1202において、視認度合い特定部920は、視界内に各オブジェクト(又は、各オブジェクトについて設定される領域1402、1404及び1406)のいずれも含まれていないと判断し、視界内のオブジェクトの数がゼロであると特定する。ステップ1202において、視認度合い特定部920は、オブジェクトの領域の全体が視界内に含まれるときにのみ、当該オブジェクトが視界内に含まれると判定してもよい。あるいは、視認度合い特定部920は、オブジェクトの領域のうち所定の一部のみが視界内に含まれる場合であっても、当該オブジェクトが視界内に含まれると判定してもよい。 If the field of view image 1410 is generated by step 1108, no objects in the scene 1318 related to the event are included in the field of view image 1410. That is, at this time, the line of sight of the avatar 1306 is not directed in the direction of the event in which it is occurring. In this case, in step 1202, the visibility degree specifying unit 920 determines that none of the objects (or the areas 1402, 1404 and 1406 set for each object) is included in the field of view, and the objects in the field of view. Identify that the number of is zero. In step 1202, the visibility degree specifying unit 920 may determine that the object is included in the field of view only when the entire area of the object is included in the field of view. Alternatively, the visibility degree specifying unit 920 may determine that the object is included in the field of view even when only a predetermined part of the area of the object is included in the field of view.

別の例において、ステップ1108によって視界画像1412が生成される場合、女の子1310、犬1312及びリード1314が視界内に含まれ、犬小屋1316は視界内に含まれない。このとき、視認度合い特定部920は、視界内のオブジェクトの数が3であると特定する。さらに別の例において、視界画像1414が生成される場合、視認度合い特定部920は、女の子1310が視界内に含まれていると判断し、視界内のオブジェクトの数が1であると特定してもよい。さらに別の例において、視界画像1416が生成される場合、視認度合い特定部920は、犬小屋1316及び女の子1310が視界内に含まれていると判断し、視界内のオブジェクトの数が2であると特定してもよい。 In another example, if the visibility image 1412 is generated by step 1108, the girl 1310, the dog 1312 and the lead 1314 are in sight and the kennel 1316 is not in sight. At this time, the visibility degree specifying unit 920 specifies that the number of objects in the field of view is three. In yet another example, when the field of view image 1414 is generated, the visibility degree specifying unit 920 determines that the girl 1310 is included in the field of view, and specifies that the number of objects in the field of view is 1. May be good. In yet another example, when the field of view image 1416 is generated, the visibility degree specifying unit 920 determines that the kennel 1316 and the girl 1310 are included in the field of view, and the number of objects in the field of view is 2. May be specified.

図14に関する上述の処理は、一例として、2次元の視界画像を用いて実行されるように説明された。しかし、当該処理は、3次元の仮想空間内で実行されてもよい。例えば、uvw視野座標系のvを縦軸、uを横軸として、上述の処理を、視界画像を生成する前に行うようにしてもよい。また例えば、視界とオブジェクトとのコリジョン判定により、視界内に各オブジェクトが含まれているか否かを判定してもよい。この場合、視界には当該視界の形状に相当するコリジョン領域を設け、オブジェクトにも当該オブジェクトの少なくとも一部を覆う形状のコリジョン領域を設ける。視界のコリジョン領域と各オブジェクトのコリジョン領域との衝突(コリジョン)の有無で、視界内に各オブジェクトが含まれているか否かを特定すればよい。 The above-mentioned processing with respect to FIG. 14 has been described as being performed using a two-dimensional field-of-view image as an example. However, the process may be executed in a three-dimensional virtual space. For example, the above processing may be performed before the visual field image is generated, with v in the uvw visual field coordinate system as the vertical axis and u as the horizontal axis. Further, for example, it may be determined whether or not each object is included in the field of view by determining the collision between the field of view and the object. In this case, the field of view is provided with a collision area corresponding to the shape of the field of view, and the object is also provided with a collision area having a shape that covers at least a part of the object. Whether or not each object is included in the field of view may be specified by the presence or absence of a collision between the collision area of the field of view and the collision area of each object.

図12に戻り、処理はステップ1204に進む。ステップ1204において、条件判定部922は、ステップ1202により算出された視界内のオブジェクトの数が所定数J以上であるか否かを判定する。所定数Jは視認度合い条件934内に格納されていてもよい。例えば、図14の例において、所定数J=2と設定されてもよい。 Returning to FIG. 12, the process proceeds to step 1204. In step 1204, the condition determination unit 922 determines whether or not the number of objects in the field of view calculated in step 1202 is a predetermined number J or more. The predetermined number J may be stored in the visibility condition 934. For example, in the example of FIG. 14, a predetermined number J = 2 may be set.

視界画像1412及び1416の場合のように、視界内のオブジェクトの数が所定数J以上であるとき(ステップ1204の「Y」)、処理はステップ1206に進む。視認度合い特定部920は、イベントの視認度合いが条件を満たす(図11のステップ1112の「Y」)と判断する。したがって、図11の処理は終了する。 As in the case of the field of view images 1412 and 1416, when the number of objects in the field of view is a predetermined number J or more (“Y” in step 1204), the process proceeds to step 1206. The visibility degree specifying unit 920 determines that the visibility degree of the event satisfies the condition (“Y” in step 1112 in FIG. 11). Therefore, the process of FIG. 11 ends.

他方、視界画像1410及び1414の場合のように、視界内のオブジェクトの数が所定数J未満であるとき(ステップ1204の「N」)、処理はステップ1208に進む。視認度合い特定部920は、イベントの視認度合いが条件を満たしていない(図11のステップ1112の「N」)と判断する。したがって、図11の処理はステップ1114に進む。 On the other hand, when the number of objects in the field of view is less than a predetermined number J (“N” in step 1204) as in the case of the field of view images 1410 and 1414, the process proceeds to step 1208. The visibility degree specifying unit 920 determines that the visibility degree of the event does not satisfy the condition (“N” in step 1112 in FIG. 11). Therefore, the process of FIG. 11 proceeds to step 1114.

視界画像を用いる上述の処理は、一例として、2次元の視界画像を用いて実行されるように説明された。しかし、当該処理は、3次元の仮想空間内で上述した手法で実行されてもよい。 The above process using a field of view image has been described as being performed using a two-dimensional field of view image as an example. However, the process may be executed by the method described above in the three-dimensional virtual space.

図11に戻り、ステップ1114において、オブジェクト制御部923は、ユーザに見て欲しいイベントへとユーザの注意を向けるための誘導行動が行われることを予め示唆する処理を実行する。当該処理は、仮想空間内で所定のオブジェクトに所定の行動(以下、「予告行動」とも呼ぶ)を行わせる処理であってもよい。予告行動に関するデータは行動データ936内に格納されていてもよい。予告行動は、ユーザ1304の意思とは無関係にユーザ1304の仮想視点の位置、向き等が変更されることをユーザに事前に知らせるために、様々な態様をとることができる。例えば、予告行動として、「どこ見ているの?」、「あっちで何かやっているよ、見ようよ。」などの内容を含む音声が出力され、ユーザに提供されてもよい。当該音声は、仮想空間内の1つ又は複数のキャラクタオブジェクトに関連付けられてもよい。 Returning to FIG. 11, in step 1114, the object control unit 923 executes a process that suggests in advance that a guiding action for directing the user's attention to the event that the user wants to see is performed. The process may be a process of causing a predetermined object to perform a predetermined action (hereinafter, also referred to as “preliminary action”) in the virtual space. The data regarding the advance notice action may be stored in the action data 936. The advance notice action can take various forms in order to notify the user in advance that the position, orientation, etc. of the virtual viewpoint of the user 1304 will be changed regardless of the intention of the user 1304. For example, as a warning action, a voice including contents such as "Where are you looking?" And "I'm doing something over there, let's see." May be output and provided to the user. The voice may be associated with one or more character objects in the virtual space.

予告行動が音声の出力である場合、イベントの内容に応じて当該音声は様々な内容を含み得る。例えば、旅行関連のアプリケーションにおいて生じる観光案内のイベントの場合、「右手をご覧下さい。」、「左前方をご覧下さい。」などの音声が出力されてもよい。ショッピングのイベントの場合、「右の棚をご覧下さい」などの音声が出力されてもよい。講習、レッスンなどのイベントの場合、「右のボードをご覧下さい。」などの音声が出力されてもよい。このような音声を予め出力することにより、仮想空間内のユーザ1304の視点が向いている方向とは異なる方向において何かが起きていることをユーザ1304に知らせることができる。さらに、予告行動は、音声出力に加えて、あるいは音声出力に代えて、画像、動画の表示などを含んでもよい。また、音声の内容は、仮想空間内のユーザ1304の視点の方向とイベントの方向との間の乖離の度合いに応じて異なってもよい。例えば、当該乖離の度合いが大きい場合、音声は、厳しい言葉、厳しい口調などをもって提供されてもよい。乖離の度合いが小さい場合、音声は、穏やかな言葉、穏やかな口調などをもって提供されてもよい。一例として、ステップ1110及び1112において図12の処理が実行される場合、乖離の度合いの大きさは、視界内のオブジェクトの数が所定数Jと比較してどの程度少ないかに応じて決定されてもよい。なお、ステップ1114の処理は、処理1100において必須ではなく、オプションの処理である。しかし、ステップ1114の処理により、ユーザ1304は、自身の視点が何らかの手法で変更され得ることを察知することができる。したがって、ステップ1114の処理を実行することにより、当該処理が実行されない場合と比較して、ユーザ1304のVR酔いをさらに低減することができる。 When the advance notice action is an output of voice, the voice may include various contents depending on the contents of the event. For example, in the case of a tourist information event that occurs in a travel-related application, voices such as "Look at your right hand" and "Look at the front left" may be output. In the case of a shopping event, a voice such as "Please look at the shelf on the right" may be output. In the case of an event such as a class or lesson, a voice such as "Please see the board on the right" may be output. By outputting such voice in advance, it is possible to inform the user 1304 that something is happening in a direction different from the direction in which the viewpoint of the user 1304 in the virtual space is facing. Further, the advance notice action may include the display of an image, a moving image, or the like in addition to or in place of the audio output. Further, the content of the audio may differ depending on the degree of dissociation between the direction of the viewpoint of the user 1304 in the virtual space and the direction of the event. For example, if the degree of dissociation is large, the voice may be provided with harsh words, harsh tones, and the like. If the degree of dissociation is small, the audio may be provided with gentle language, gentle tone, and so on. As an example, when the process of FIG. 12 is executed in steps 1110 and 1112, the degree of dissociation is determined according to how small the number of objects in the field of view is compared to the predetermined number J. May be good. The process of step 1114 is not essential in process 1100, but is an optional process. However, by the process of step 1114, the user 1304 can detect that his or her viewpoint can be changed in some way. Therefore, by executing the process of step 1114, it is possible to further reduce the VR sickness of the user 1304 as compared with the case where the process is not executed.

処理はステップ1116に進み、オブジェクト制御部923は、キャラクタオブジェクトに誘導行動を行わせる。誘導行動は、ユーザに見て欲しいイベントへとユーザの注意を向けるための行動である。誘導行動は、発生しているイベントに含まれない仮想空間内の1つ又は複数のキャラクタオブジェクトにより行われてもよい。誘導行動はまた、発生しているイベントに含まれる1つ又は複数のキャラクタオブジェクトによって行われてもよい。これらのキャラクタオブジェクトは、例えば、他のプレイヤーに関連付けられるアバター、NPC(ノンプレイヤーキャラクタ)などであってもよい。 The process proceeds to step 1116, and the object control unit 923 causes the character object to perform a guiding action. Guidance behavior is an action to draw the user's attention to an event that the user wants to see. The guided action may be performed by one or more character objects in the virtual space that are not included in the event that is occurring. The guided action may also be performed by one or more character objects included in the event being generated. These character objects may be, for example, avatars, NPCs (non-player characters), etc. associated with other players.

図15は、ステップ1116において実行される処理の具体例を示すフローチャートである。一例において、誘導行動は、1つ又は複数のキャラクタオブジェクトがユーザの視界を覆う第1の行動と、イベントの視認度合いが条件を満たすように仮想カメラ1302(又は、仮想視点)を動かす(仮想視点からの視界を制御する)ための契機となる第2の行動とを含む。誘導行動は上記の行動に限定されず、他の行動を含んでもよい。 FIG. 15 is a flowchart showing a specific example of the process executed in step 1116. In one example, the guided action moves the virtual camera 1302 (or virtual viewpoint) so that the first action in which one or more character objects cover the user's field of view and the degree of visibility of the event satisfy the conditions (virtual viewpoint). Includes a second action that triggers (controlling the field of vision from). The guided behavior is not limited to the above behavior and may include other behaviors.

ステップ1502において、オブジェクト制御部923は、キャラクタオブジェクトに第1の行動を行わせる。例えば、オブジェクト制御部923は、行動データ936に含まれるデータに基づいて、ユーザの視界を覆う動作をキャラクタオブジェクトに行わせる。当該動作は、例えば、キャラクタオブジェクトがキャラクタオブジェクトの手でアバター1306の顔、目等を覆う動作、キャラクタオブジェクトが手以外の何らかの手段を用いてアバター1306の顔、目等を覆う動作を含んでもよい。 In step 1502, the object control unit 923 causes the character object to perform the first action. For example, the object control unit 923 causes the character object to perform an operation of covering the user's field of view based on the data included in the action data 936. The operation may include, for example, an operation in which the character object covers the face, eyes, etc. of the avatar 1306 with the hand of the character object, and an operation in which the character object covers the face, eyes, etc. of the avatar 1306 using some means other than the hand. ..

図16A〜図16Cは、ステップ1502において行われる処理の様子を模式的に示す。ここでは、一例として、当初はユーザの視界内に存在しなかったキャラクタオブジェクトが、第1の行動として、当該キャラクタオブジェクトの両手を用いてアバター1306の顔を覆うことを想定する。視界画像1410の外側は実際にはユーザには見えないが、図16A〜図16Cにおいては、実施形態を説明し易くするために、視界画像1410の外部の一部も図示されている。 16A to 16C schematically show the state of the processing performed in step 1502. Here, as an example, it is assumed that a character object that does not initially exist in the user's field of view covers the face of the avatar 1306 with both hands of the character object as the first action. Although the outside of the field of view image 1410 is not actually visible to the user, in FIGS. 16A to 16C, a part of the outside of the field of view image 1410 is also shown for ease of explaining the embodiment.

既に説明された図13及び図14を再度参照しつつ、図16A〜図16Cの例について説明する。この例において、キャラクタオブジェクト1602は、図13及び図14に示されるシーン1318内に登場しないキャラクタオブジェクトである。第1の行動の最初の段階においては、図16Aに示すように、キャラクタオブジェクト1602を視界(ここでは、視界画像1410)の外側の、アバター1306から離れた位置に配置してもよい。図示されるように、オブジェクト制御部923は、ユーザの顔を覆うために両手1604を揃えて前に突き出すようにキャラクタオブジェクト1602を制御してもよい。次に、オブジェクト制御部923は、キャラクタオブジェクト1602をアバター1306に接近させながら向かって左方向へ移動させて、視界内に両手1604が入るようにする。オブジェクト制御部923は、さらに、アバター1306に対するキャラクタオブジェクト1602の接近及び左方向への移動を続ける。その結果、図16Cに示すように、両手1604の中央部分が視界の大部分を覆う。すなわち、このとき、仮想カメラ1302の視界を覆う場所に両手1604が位置することになる。したがって、ユーザ1304は、キャラクタオブジェクト1602によって仮想空間内で目隠しをされたような体験をする。図16Cの例では、視界は両手1604によって完全には覆われず、背景部分1610が見えている。別の例において、視界を完全に覆うようにキャラクタオブジェクト1602を制御してもよい。 The examples of FIGS. 16A to 16C will be described with reference to FIGS. 13 and 14 which have already been described. In this example, the character object 1602 is a character object that does not appear in the scene 1318 shown in FIGS. 13 and 14. In the first stage of the first action, the character object 1602 may be placed outside the field of view (here, the field of view image 1410), away from the avatar 1306, as shown in FIG. 16A. As shown, the object control unit 923 may control the character object 1602 so that both hands 1604 are aligned and protrude forward in order to cover the user's face. Next, the object control unit 923 moves the character object 1602 to the left while approaching the avatar 1306 so that both hands 1604 are in the field of view. The object control unit 923 further keeps the character object 1602 approaching and moving to the left with respect to the avatar 1306. As a result, as shown in FIG. 16C, the central portion of both hands 1604 covers most of the field of view. That is, at this time, both hands 1604 are located at a place that covers the field of view of the virtual camera 1302. Therefore, the user 1304 has the experience of being blindfolded in the virtual space by the character object 1602. In the example of FIG. 16C, the field of view is not completely covered by both hands 1604, and the background portion 1610 is visible. In another example, the character object 1602 may be controlled to completely cover the field of view.

視界画像を用いる上述の処理は、一例として、2次元の視界画像を用いて実行されるように説明された。しかし、当該処理は、3次元の仮想空間内で上述した手法で実行されてもよい。 The above process using a field of view image has been described as being performed using a two-dimensional field of view image as an example. However, the process may be executed by the method described above in the three-dimensional virtual space.

図16A〜図16Cに示した例とは異なり、第1の行動はキャラクタオブジェクト1602の片手により行われてもよい。また、他のプレイヤーのアバターなどの任意のキャラクタオブジェクトに第1の行動を行わせてもよい。第1の行動を含む誘導行動は、イベントに登場する1つ又は複数のキャラクタオブジェクトのうちの少なくとも1つにより行われてもよい。この場合、当該1つ又は複数のキャラクタオブジェクトのうち誘導行動を行うキャラクタオブジェクトは、当該1つ又は複数のキャラクタオブジェクトのうちの他のキャラクタオブジェクトと共通の属性を有してもよい。これにより、実行されているゲーム等におけるユーザの没入感が損なわれることを防止できる。誘導行動は、複数のキャラクタオブジェクトによって行われてもよい。例えば、2人のキャラクタオブジェクトが手でアバター1306の顔、目等を覆ってもよい。 Unlike the examples shown in FIGS. 16A to 16C, the first action may be performed by one hand of the character object 1602. Further, any character object such as another player's avatar may be made to perform the first action. The guided action, including the first action, may be performed by at least one of one or more character objects appearing in the event. In this case, the character object that performs the guiding action among the one or more character objects may have the same attributes as the other character objects of the one or more character objects. This makes it possible to prevent the user's immersive feeling in the game being executed or the like from being impaired. The guided action may be performed by a plurality of character objects. For example, two character objects may cover the face, eyes, etc. of the avatar 1306 with their hands.

上記の共通の属性の例は、性別、服装、所属集団及び大きさのうちの少なくとも1つを含んでもよい。所属集団の例は、女の子1310の家族、女の子1310が属しているグループやチームなどを含んでもよい。所属集団が女の子1310の家族である場合、キャラクタオブジェクト1602は女の子1310の母親であってもよい。この場合、ステップ1114において出力される音声は、「うちの子はあっちよ。犬の散歩の付き添いよろしくね。」という内容を含んでもよい。服装の例は、学校の制服、企業の制服、音楽バンド又は芸能グループなどにおける共通のスタイルの服装などを含み得る。 Examples of common attributes described above may include at least one of gender, attire, group of affiliations and size. Examples of the affiliation group may include a family of girl 1310, a group or team to which the girl 1310 belongs, and the like. If the affiliation group is a family of girl 1310, the character object 1602 may be the mother of girl 1310. In this case, the voice output in step 1114 may include the content "My child is over there. Please accompany the dog for a walk." Examples of clothing may include school uniforms, corporate uniforms, common style clothing such as in music bands or entertainment groups.

処理はステップ1504に進み、オブジェクト制御部923は、キャラクタオブジェクトに第2の行動を行わせる。例えば、オブジェクト制御部923は、行動データ936に含まれるデータに基づいて、両手1604でアバター1306の顔をつかんで回転させる動作をキャラクタオブジェクトに行わせてもよい。この第2の行動は、イベントの視認度合いが所定の条件を満たすように仮想視点からの視界を制御するための契機として使用される。 The process proceeds to step 1504, and the object control unit 923 causes the character object to perform the second action. For example, the object control unit 923 may cause the character object to perform an operation of grasping and rotating the face of the avatar 1306 with both hands 1604 based on the data included in the action data 936. This second action is used as an opportunity to control the field of view from the virtual viewpoint so that the degree of visibility of the event satisfies a predetermined condition.

図17A〜図17Cは、ステップ1504において行われる処理の様子を模式的に示す。視界画像1410の外側は、実際にはユーザ1304には見えないが、ここでは説明を分かりやすくするため図示されている。図17Aは、図16Cとほぼ同じ図であり、第1の行動の結果としてキャラクタオブジェクトが両手1604でユーザの顔を覆っている状態を示す。図17Bは、キャラクタオブジェクトがアバター1306の顔を左方向に回転させるときの様子を示す。詳細には、仮想カメラ1302をY軸の反時計周りに回転させるときの様子を示す。図示されるように、オブジェクト制御部923は、両手1604を左方向に移動させる。このとき、オブジェクト制御部923は、アバター1306の顔をつかむために両手1604の形態を変化させてもよい。この第2の行動により、自分の視線の向きが左方向に移動又は回転させられるという示唆をユーザ1304に与えることができる。図17Cは、別の例として、キャラクタオブジェクトがアバター1306の顔を上方向へ回転させるときの様子を示す。詳細には、仮想カメラ1302をX軸の反時計周りに回転させるときの様子を示す。図17A〜図17Cにおいては背景のごく一部が視認できるが、両手1604が視界を完全に覆うようにキャラクタオブジェクトを制御してもよい。本実施形態によれば、背景のわずかな一部が見える状態でアバター1306の視点が動かされるので、視界の変化をユーザ1304に対して過度に感じさせることなく、自分の視線の向きが移動又は回転させられているという感覚をユーザに与えることができる。これにより、ゲームに対するユーザの没入感を保ったまま、VR酔いを低減させることができる。加えて、第2の行動の間、ほぼ同じ状態の両手1604の画像が視界画像1410の大部分を占めるので、視界画像1410の生成に必要なデータ量を低減することができる。 17A to 17C schematically show the state of the processing performed in step 1504. The outside of the field of view image 1410 is not actually visible to user 1304, but is shown here for clarity. FIG. 17A is substantially the same as FIG. 16C, showing a state in which the character object covers the user's face with both hands 1604 as a result of the first action. FIG. 17B shows how the character object rotates the face of the avatar 1306 to the left. In detail, the state when the virtual camera 1302 is rotated counterclockwise on the Y axis is shown. As shown, the object control unit 923 moves both hands 1604 to the left. At this time, the object control unit 923 may change the form of both hands 1604 in order to grab the face of the avatar 1306. This second action can give the user 1304 a suggestion that the direction of his line of sight can be moved or rotated to the left. As another example, FIG. 17C shows how the character object rotates the face of the avatar 1306 upward. In detail, a state when the virtual camera 1302 is rotated counterclockwise on the X-axis is shown. Although a small part of the background is visible in FIGS. 17A to 17C, the character object may be controlled so that both hands 1604 completely cover the field of view. According to the present embodiment, since the viewpoint of the avatar 1306 is moved in a state where a small part of the background can be seen, the direction of one's line of sight is moved or the direction of one's line of sight is moved without making the user 1304 excessively feel the change in the field of view. It is possible to give the user the feeling of being rotated. As a result, VR sickness can be reduced while maintaining the user's immersive feeling in the game. In addition, since the images of both hands 1604 in substantially the same state occupy most of the field of view image 1410 during the second action, the amount of data required to generate the field of view image 1410 can be reduced.

第2の行動は、図17B及び図17Cに示すような動作の結果、両手1604によるアバター1306の顔の回転が完了したときに終了してもよい。別の例において、アバター1306の顔の回転が完了した後、オブジェクト制御部923は、仮想空間内の別の場所へ移動するようにキャラクタオブジェクト1602を制御してもよい。例えば、図17Bに示される回転が終了した後、キャラクタオブジェクト1602は、図16Aに示される位置に移動してもよい。これにより、キャラクタオブジェクト1602に実体験に近い自然な行動をとらせることができ、ゲームへのユーザ1304の没入感をより向上させることができる。 The second action may end when the rotation of the face of the avatar 1306 by both hands 1604 is completed as a result of the actions shown in FIGS. 17B and 17C. In another example, after the face rotation of the avatar 1306 is complete, the object control unit 923 may control the character object 1602 to move to another location in the virtual space. For example, the character object 1602 may move to the position shown in FIG. 16A after the rotation shown in FIG. 17B is completed. As a result, the character object 1602 can be made to take a natural action close to the actual experience, and the immersive feeling of the user 1304 in the game can be further improved.

視界画像を用いる上述の処理は、一例として、2次元の視界画像を用いて実行されるように説明された。しかし、当該処理は、3次元の仮想空間内で上述した手法で実行されてもよい。 The above process using a field of view image has been described as being performed using a two-dimensional field of view image as an example. However, the process may be executed by the method described above in the three-dimensional virtual space.

図11に戻り、処理はステップ1118に進む。ステップ1116において誘導行動(例えば、ステップ1504の第2の行動)が行われている間、仮想カメラ制御部916は、仮想空間データ926、オブジェクトデータ928、イベントデータ932、視認度合い条件934等に基づいて、イベントの視認度合いが所定の条件を満たすように仮想カメラ(又はユーザ1304の仮想視点)を動かす(仮想視点からの視界を制御する)。 Returning to FIG. 11, the process proceeds to step 1118. While the guidance action (for example, the second action of step 1504) is being performed in step 1116, the virtual camera control unit 916 is based on the virtual space data 926, the object data 928, the event data 932, the visibility condition 934, and the like. Then, the virtual camera (or the virtual viewpoint of the user 1304) is moved so that the degree of visibility of the event satisfies a predetermined condition (the view from the virtual viewpoint is controlled).

図18は、ステップ1118において実行される処理の具体例を示すフローチャートである。一例では、ステップ1802において、仮想カメラ制御部916は、視界画像1410の中央に配置すべきシーン1318の基準点を特定する。 FIG. 18 is a flowchart showing a specific example of the process executed in step 1118. In one example, in step 1802, the virtual camera control unit 916 identifies a reference point for the scene 1318 that should be placed in the center of the field of view image 1410.

図19は、図14と同様の図であり、ステップ1118における仮想カメラ1302(ユーザ1304の仮想視点)を動かす(仮想視点からの視界を制御する)処理を説明するための図である。図19において、視界画像1410の中心1902(黒丸で示される)、シーン1318の基準点1904(十字で示される)、基準点1904に基づく所定の角度範囲1906(点線の円で示される)が示されている。これらの情報は、イベントの視認度合いの条件を満たすためのデータとしてイベントごとに設定されてもよく、視認度合い条件934内に予め格納されていてもよい。基準点1904は、イベントに応じて、主要な登場人物(例えば、女の子1310の中心点又はその近傍など)に設定されてもよいし、女の子1310と犬1312との間の位置に設定されてもよい。角度範囲1906は、仮想カメラ1302の基準視線が基準点1904を向いているときの方向と比較した、基準視線の成す許容される角度として設定されてもよい。 FIG. 19 is a diagram similar to FIG. 14, and is a diagram for explaining a process of moving the virtual camera 1302 (virtual viewpoint of the user 1304) (controlling the field of view from the virtual viewpoint) in step 1118. In FIG. 19, the center 1902 of the view image 1410 (indicated by a black circle), the reference point 1904 of the scene 1318 (indicated by a cross), and the predetermined angular range 1906 (indicated by a dotted circle) based on the reference point 1904 are shown. Has been done. These pieces of information may be set for each event as data for satisfying the condition of the degree of visibility of the event, or may be stored in advance in the degree of visibility condition 934. The reference point 1904 may be set to a major character (eg, at or near the center point of the girl 1310) or at a position between the girl 1310 and the dog 1312, depending on the event. good. The angle range 1906 may be set as an allowable angle formed by the reference line of sight as compared with the direction when the reference line of sight of the virtual camera 1302 is facing the reference point 1904.

処理はステップ1804に進み、一例において、仮想カメラ制御部916は、視界画像1410の中心点1902がシーン1318の基準点1904と一致するように仮想カメラ1302を動かす(仮想視点からの視界を制御する)。この場合、仮想カメラ制御部916は、中心点1902の座標から基準点1904の座標へのベクトルを計算し、これに基づいて仮想カメラ1302を移動させてもよい。あるいは、仮想カメラ制御部916は、視界画像1410の中心点1902が角度範囲1906内に含まれるように、仮想カメラ1302を移動させてもよい。 The process proceeds to step 1804, and in one example, the virtual camera control unit 916 moves the virtual camera 1302 so that the center point 1902 of the view image 1410 coincides with the reference point 1904 of the scene 1318 (controls the view from the virtual viewpoint). ). In this case, the virtual camera control unit 916 may calculate a vector from the coordinates of the center point 1902 to the coordinates of the reference point 1904, and move the virtual camera 1302 based on this. Alternatively, the virtual camera control unit 916 may move the virtual camera 1302 so that the center point 1902 of the view image 1410 is included in the angle range 1906.

図20は、視界画像1410の中心点1902が基準点1904に一致するように仮想カメラ1302を移動させたときの視界画像2002を示す。仮想カメラ1302の移動に伴い、ユーザ1304に提供される視界画像は、視界画像1410から視界画像2002へと変化する。図19及び図20においては省略されているが、図17A〜図17Cに関連して説明したように、視界画像1410から視界画像2002への遷移の間、視界の大部分は両手1604などによって覆われることに留意されたい。 FIG. 20 shows the view image 2002 when the virtual camera 1302 is moved so that the center point 1902 of the view image 1410 coincides with the reference point 1904. As the virtual camera 1302 moves, the vision image provided to the user 1304 changes from the vision image 1410 to the vision image 2002. Although omitted in FIGS. 19 and 20, most of the field of view is covered by both hands 1604 or the like during the transition from the field of view image 1410 to the field of view image 2002, as described in connection with FIGS. 17A-17C. Please note that it will be done.

図18、図19及び図20に示した例では、視界画像の中心点1902がシーン1318の基準点に一致するように処理が行われる。しかし、このような処理に代えて、シーン1318に登場する主要キャラクタ(例えば、女の子1310)を囲む所定の領域(例えば、矩形領域1402)、主要キャラクタが占める領域の少なくとも一部、又は当該領域の中央部が視界画像に含まれるように、仮想カメラ1302を移動させてもよい。 In the examples shown in FIGS. 18, 19 and 20, processing is performed so that the center point 1902 of the visual field image coincides with the reference point of the scene 1318. However, instead of such processing, a predetermined area (for example, rectangular area 1402) surrounding the main character (for example, girl 1310) appearing in the scene 1318, at least a part of the area occupied by the main character, or the area concerned. The virtual camera 1302 may be moved so that the central portion is included in the view image.

視界画像を用いる上述の処理は、一例として、2次元の視界画像を用いて実行されるように説明された。しかし、当該処理は、3次元の仮想空間内で上述した手法で実行されてもよい。 The above process using a field of view image has been described as being performed using a two-dimensional field of view image as an example. However, the process may be executed by the method described above in the three-dimensional virtual space.

図11に戻り、処理はステップ1120に進む。ステップ1120において、視界画像生成部914は、ステップ1118において動かされた仮想カメラ1302により取得される視界画像を生成する。視界画像出力部924は、生成された視界画像を、HMD110に関連付けられる表示部112に出力する。この処理によって、イベントの視認度合いの条件を満たす視界画像がユーザ1304に提供されるので、ユーザ1304は、仮想空間内で生じているイベントを十分に見ることができる。 Returning to FIG. 11, the process proceeds to step 1120. In step 1120, the field of view image generation unit 914 generates the field of view image acquired by the virtual camera 1302 moved in step 1118. The field of view image output unit 924 outputs the generated field of view image to the display unit 112 associated with the HMD 110. By this process, the field of view image satisfying the condition of the visibility degree of the event is provided to the user 1304, so that the user 1304 can fully see the event occurring in the virtual space.

このように、本実施形態によれば、ユーザの仮想視点がイベントの方向に向いていないときに、ユーザに不自然さを感じさせない手法で仮想視点からの視界を制御することができる。したがって、ゲームなどへのユーザの没入感を損なうことなく、VR酔いを抑制しながら、仮想視点からの視界を制御してユーザにイベントを見せることができる。 As described above, according to the present embodiment, when the user's virtual viewpoint is not oriented in the direction of the event, the field of view from the virtual viewpoint can be controlled by a method that does not make the user feel unnatural. Therefore, it is possible to show the event to the user by controlling the field of view from the virtual viewpoint while suppressing VR sickness without impairing the user's immersive feeling in the game or the like.

図21は、図11のステップ1110及び1112において実行される処理の具体例を示すフローチャートである。この例では、イベントに登場するオブジェクトに対して設定された特徴点を利用して、視界内のイベントの視認度合いが所定の条件を満たしているか否かが判断される。 FIG. 21 is a flowchart showing a specific example of the processing executed in steps 1110 and 1112 of FIG. In this example, it is determined whether or not the visibility degree of the event in the field of view satisfies a predetermined condition by using the feature points set for the object appearing in the event.

ステップ2102において、視認度合い特定部920は、図11のステップ1106において生成されたイベントに登場するオブジェクトに予め設定された特徴点のうちの、ステップ1108において生成された視界画像内に含まれる特徴点を特定する。 In step 2102, the visibility degree specifying unit 920 includes the feature points included in the field of view image generated in step 1108 among the feature points preset for the object appearing in the event generated in step 1106 of FIG. To identify.

図22は、オブジェクトに設定された特徴点と視界画像との間の関係を説明するための図である。一例において、特徴点は、女の子1310の顔、腰、手及び足に対して設定された特徴点2202、2204、2206及び2208、犬1312の頭に対して設定された特徴点2210、犬小屋1316に対して設定された特徴点2212を含んでもよい。これらの特徴点のデータは、オブジェクトデータ928、イベントデータ932等に格納されていてもよい。なお、各オブジェクトに設定する特徴点の数は様々であってよく、特徴点が設定される位置は必要に応じて変更されてもよい。また、上記のオブジェクト以外の背景に含まれるオブジェクト等に特徴点を設定してもよい。 FIG. 22 is a diagram for explaining the relationship between the feature points set on the object and the field of view image. In one example, the feature points are feature points 2202, 2204, 2206 and 2208 set for the face, waist, hands and feet of the girl 1310, feature points 2210 set for the head of the dog 1312, kennel 1316. It may include the feature point 2212 set for. The data of these feature points may be stored in the object data 928, the event data 932, and the like. The number of feature points set for each object may vary, and the position where the feature points are set may be changed as necessary. In addition, feature points may be set for objects included in the background other than the above objects.

図22に示したシーン1318の例において、視界画像2220の場合、視界内特徴点は存在しない。視界画像2222の場合、視界内特徴点は犬の頭の特徴点2210である。視界画像2224の場合、視界内特徴点は、女の子1310の顔の特徴点2202である。視界画像2226の場合、視界内特徴点は、犬小屋の特徴点2212及び女の子1310の足の特徴点2208である。視界画像2228の場合、視界内特徴点は、女の子1310及び犬1312に設定された全ての特徴点である。 In the example of the scene 1318 shown in FIG. 22, in the case of the field of view image 2220, there are no feature points in the field of view. In the case of the field of view image 2222, the feature point in the field of view is the feature point 2210 of the dog's head. In the case of the field of view image 2224, the feature points in the field of view are the facial feature points 2202 of the girl 1310. In the case of the field of view image 2226, the feature points in the field of view are the feature points 2212 of the kennel and the feature points 2208 of the legs of the girl 1310. In the case of the field of view image 2228, the feature points in the field of view are all the feature points set in the girl 1310 and the dog 1312.

処理はステップ2104に進み、条件判定部922は、ステップ2102で特定された特徴点が所定の特徴点を含むか否かを判定する。ここで、所定の特徴点は、イベントごとに任意に設定されてもよい。例えば、図22の例のイベントにおいて、ユーザに特に見てもらいたいオブジェクトが女の子1310である場合、所定の特徴点は、女の子1310の顔、腰、手及び足の特徴点2202、2204、2206及び2208の少なくとも1つを含んでもよい。この例において、ユーザ1304に視界画像2220又は2222が提供される場合、視界内特徴点が所定の特徴点を含まないので(ステップ2104の「N」)、処理はステップ2106に進む。ステップ2106において、視認度合い特定部920は、イベントの視認度合いが所定の条件を満たしていないと判定する。他方、ユーザ1304に視界画像2224、2226又は2228が提供される場合、視界内特徴点が所定の特徴点を含むので(ステップ2104の「Y」)、処理はステップ2108に進む。ステップ2108において、視認度合い特定部920は、イベントの視認度合いが条件を満たしていると判定する。本実施形態によれば、オブジェクトごとに設定された特徴点がイベントの視認度合いの判定に使用されるので、特徴点の設定の仕方に応じて様々な精度で視認度合いを判定することができる。 The process proceeds to step 2104, and the condition determination unit 922 determines whether or not the feature points specified in step 2102 include a predetermined feature point. Here, the predetermined feature points may be arbitrarily set for each event. For example, in the event of the example of FIG. 22, when the object that the user particularly wants to see is the girl 1310, the predetermined feature points are the face, waist, hands and feet feature points 2202, 2204, 2206 and the girl 1310. It may contain at least one of 2208. In this example, when the field of view image 2220 or 2222 is provided to the user 1304, the process proceeds to step 2106 because the feature points in the field of view do not include the predetermined feature points (“N” in step 2104). In step 2106, the visibility degree specifying unit 920 determines that the visibility degree of the event does not satisfy the predetermined condition. On the other hand, when the field of view image 2224, 2226 or 2228 is provided to the user 1304, the process proceeds to step 2108 because the feature points in the field of view include the predetermined feature points (“Y” in step 2104). In step 2108, the visibility degree specifying unit 920 determines that the visibility degree of the event satisfies the condition. According to the present embodiment, since the feature points set for each object are used for determining the visibility degree of the event, the visibility degree can be determined with various accuracy depending on how the feature points are set.

視界画像を用いる上述の処理は、一例として、2次元の視界画像を用いて実行されるように説明された。しかし、当該処理は、3次元の仮想空間内で上述した手法で実行されてもよい。 The above process using a field of view image has been described as being performed using a two-dimensional field of view image as an example. However, the process may be executed by the method described above in the three-dimensional virtual space.

図23は、図11のステップ1110及び1112において実行される処理の具体例を示すフローチャートである。この例では、所定の期間にわたって特定されたオブジェクトの数に基づく値が視認度合いの判定に利用される。 FIG. 23 is a flowchart showing a specific example of the processing executed in steps 1110 and 1112 of FIG. In this example, a value based on the number of specified objects over a predetermined period is used to determine the degree of visibility.

ステップ2302において、視認度合い特定部920は、図11のステップ1106において生成されたイベントに登場するオブジェクトのうち、ステップ1108において生成された視界画像内に現れるオブジェクトの数OBを算出する。所定期間T(例えば、5秒間)の計測を開始するために、ステップ2302において、タイマーがセットされてもよい。図14に示したシーン1318の例では、視界画像1410の場合OB=0、視界画像1412の場合OB=3、視界画像1416の場合OB=2である。 In step 2302, the visibility degree specifying unit 920 calculates the number OB of the objects appearing in the visual field image generated in step 1108 among the objects appearing in the event generated in step 1106 of FIG. A timer may be set in step 2302 to start the measurement for a predetermined period T (eg, 5 seconds). In the example of the scene 1318 shown in FIG. 14, OB = 0 in the case of the view image 1410, OB = 3 in the case of the view image 1412, and OB = 2 in the case of the view image 1416.

処理はステップ2304に進み、条件判定部922(又は、他のコンポーネント)は、タイマーにより計測される時間に基づいて、所定期間Tが経過したか否かを判定する。所定期間Tが経過していないとき(ステップ2304の「N」)、処理はステップ2302の前に戻る。所定期間Tが経過したとき(ステップ2304の「Y」)、処理はステップ2306に進む。 The process proceeds to step 2304, and the condition determination unit 922 (or another component) determines whether or not the predetermined period T has elapsed based on the time measured by the timer. When the predetermined period T has not elapsed (“N” in step 2304), the process returns to before step 2302. When the predetermined period T has elapsed (“Y” in step 2304), the process proceeds to step 2306.

ステップ2306において、視認度合い特定部920は、所定期間T内に視界内に現れたオブジェクトの数OBに基づく値Vを算出する。一例において、値Vは、所定期間Tに含まれる短い時間期間の各々において視界内に現れたオブジェクトの数OBの平均値であってもよい。 In step 2306, the visibility degree specifying unit 920 calculates a value V based on the number OB of objects appearing in the field of view within the predetermined period T. In one example, the value V may be the average value of the number of objects OB appearing in the field of view in each of the short time periods included in the predetermined period T.

図24は、所定期間T内に得られた視界内オブジェクト数OB及びこれに基づく値Vの例を示す図である。この例では、所定期間T内にn個のOB(OB〜OB)が得られ、その平均値が値Vとして算出されると仮定する。具体的には、図24の例1においては、OB〜OBはいずれも0であり、したがってV=0である。このことは、所定期間Tにわたって、図14の視界画像1410の場合のように、ユーザ1304の仮想視点の方向がイベントの方を向いていないことを意味している。図24の例2において、OB〜OBは、それぞれ、1、2、0、・・・、及び1であり、V=1である。このことは、所定期間T中の少なくともある期間において、ユーザ1304の仮想視点がイベントの方向を向いていること、視界画像1410だけでなく、視界画像1414、1416などがユーザ1304に提供されることを意味する。図24の例3において、OB〜OBは、それぞれ、2、3、3、・・・、及び3であり、V=3である。このことは、所定期間Tの大部分にわたって、ユーザ1304の仮想視点がイベントの方向を向いていること、視界画像1412又はこれに近い領域の視界画像がユーザ1304に提供されることを意味する。 FIG. 24 is a diagram showing an example of the number of objects OB in the field of view obtained within the predetermined period T and the value V based on the number OB. In this example, it is assumed that n OBs (OB 1 to OB n) are obtained within a predetermined period T, and the average value thereof is calculated as the value V. Specifically, in Example 1 of FIG. 24, OB 1 to OB n are all 0, and therefore V = 0. This means that the direction of the virtual viewpoint of the user 1304 does not face the event as in the case of the field of view image 1410 of FIG. 14 over a predetermined period T. In Example 2 of FIG. 24, OB 1 to OB n are 1, 2, 0, ..., And 1, respectively, and V = 1. This means that the virtual viewpoint of the user 1304 is facing the direction of the event at least for a certain period of time during the predetermined period T, and not only the view image 1410 but also the view images 1414, 1416 and the like are provided to the user 1304. Means. In Example 3 of FIG. 24, OBs 1 to OB n are 2, 3, 3, ..., And 3, respectively, and V = 3. This means that the virtual viewpoint of the user 1304 is oriented in the direction of the event for most of the predetermined period T, and the field image 1412 or a field image in a region close thereto is provided to the user 1304.

処理はステップ2308に進み、条件判定部922は、値Vが所定値Kより大きいか否かを判定する。この例において、所定値K=2と設定されてもよい。所定値Kは、イベントの内容に応じて任意の値に設定することができる。値Vが所定値K以上である場合(ステップ2308の「Y」)、処理はステップ2310に進む。ステップ2310において、値Vはクリアされ(例えば、ゼロへと初期化され)、処理はステップ2302の前に戻る。値Vが所定値K未満である場合(ステップ2308の「N」)、処理はステップ2312に進む。ステップ2312において、視認性度合い特定部920は、イベントの視認度合いが所定の条件を満たしていないと判定する。したがって、図11の例において、ステップ1114〜1120の処理が実行される。 The process proceeds to step 2308, and the condition determination unit 922 determines whether or not the value V is larger than the predetermined value K. In this example, the predetermined value K = 2 may be set. The predetermined value K can be set to an arbitrary value according to the content of the event. When the value V is equal to or greater than the predetermined value K (“Y” in step 2308), the process proceeds to step 2310. At step 2310, the value V is cleared (eg, initialized to zero) and processing returns before step 2302. If the value V is less than the predetermined value K (“N” in step 2308), the process proceeds to step 2312. In step 2312, the visibility degree specifying unit 920 determines that the visibility degree of the event does not satisfy the predetermined condition. Therefore, in the example of FIG. 11, the processes of steps 1114 to 1120 are executed.

図23の実施形態によれば、ユーザが一時的にイベントを見ているかどうかではなく、ユーザがある程度の期間の間継続してイベントを見ているかどうかを判定することができる。ユーザ1304の仮想視点が基本的にイベントの方向を向いている場合であっても、ユーザがイベント以外の場所、イベント内の主要キャラクタオブジェクト以外のオブジェクト等を時折見ることがあり得る。このような場合、本実施形態によれば、所定期間Tの間にユーザが短期間のよそ見をしているときに、仮想視点の方向が強制的にイベントの方向へと向けられることを防止できる。したがって、ユーザ1304は、イベントの発生中に当該イベントのみを見ることを強制されず、仮想空間内の様々な場所をより自由に見ることができる。このため、ゲーム等に対するユーザの没入感を向上させることができる。 According to the embodiment of FIG. 23, it is possible to determine whether the user is continuously watching the event for a certain period of time, not whether the user is watching the event temporarily. Even when the virtual viewpoint of user 1304 is basically facing the direction of the event, the user may occasionally see a place other than the event, an object other than the main character object in the event, and the like. In such a case, according to the present embodiment, it is possible to prevent the virtual viewpoint from being forcibly directed toward the event when the user is looking away for a short period of time during the predetermined period T. .. Therefore, the user 1304 is not forced to see only the event during the occurrence of the event, and can see various places in the virtual space more freely. Therefore, it is possible to improve the user's immersive feeling in the game or the like.

図23及び図24の実施形態において、視界内オブジェクト数に代えて、図21及び22の実施例で示したような視界内特徴点を用いて処理が行われてもよい。例えば、図23のステップ2302において、イベントに登場するオブジェクトに設定された特徴点のうち視界内に現れる特徴点の数が算出されてもよい。そして、ステップ2306において、所定期間T内に視界内に現れた特徴点の数に基づいて値Vが算出されてもよい。 In the embodiment of FIGS. 23 and 24, the process may be performed using the feature points in the field of view as shown in the examples of FIGS. 21 and 22 instead of the number of objects in the field of view. For example, in step 2302 of FIG. 23, the number of feature points appearing in the field of view among the feature points set for the object appearing in the event may be calculated. Then, in step 2306, the value V may be calculated based on the number of feature points appearing in the field of view within the predetermined period T.

視界画像を用いる上述の処理は、一例として、2次元の視界画像を用いて実行されるように説明された。しかし、当該処理は、3次元の仮想空間内で上述した手法で実行されてもよい。 The above process using a field of view image has been described as being performed using a two-dimensional field of view image as an example. However, the process may be executed by the method described above in the three-dimensional virtual space.

上述のように、本開示の実施形態によれば、イベントが発生したときにユーザの仮想視点が当該イベントの方向を向いていない場合に、ユーザの仮想体験を損なうことなく、VR酔いを低減しつつ、ユーザの仮想視点を当該イベントへと向けることができる。 As described above, according to the embodiments of the present disclosure, VR sickness is reduced without compromising the user's virtual experience when the user's virtual viewpoint does not point in the direction of the event when the event occurs. At the same time, the user's virtual viewpoint can be directed to the event.

本開示の実施形態を、プロセッサ202(又は、コンピュータ200)、方法1100、プロセッサ202(又は、コンピュータ200)に方法1100を実行させるコンピュータプログラム等として実施することができることは、当業者にとって明らかであろう。 It will be apparent to those skilled in the art that embodiments of the present disclosure can be implemented as a processor 202 (or computer 200), method 1100, computer program causing processor 202 (or computer 200) to execute method 1100, and the like. Let's do it.

上述の実施形態においては、HMD装置によってユーザが没入する仮想空間(VR空間)を例示して説明したが、HMD装置として、透過型のHMD装置を採用してもよい。この場合、透過型のHMD装置を介してユーザが視認する現実空間に仮想空間を構成する画像の一部を合成した視界画像を出力することにより、拡張現実(AR:Augumented Reality)空間又は複合現実(MR:Mixed Reality)空間における仮想体験をユーザに提供してもよい。この場合、手オブジェクトに代えて、ユーザの手の動きに基づいて、仮想空間内における対象オブジェクトへの作用を生じさせてもよい。具体的には、プロセッサは、現実空間におけるユーザの手の位置の座標情報を特定するとともに、仮想空間内における対象オブジェクトの位置を現実空間における座標情報との関係で定義してもよい。これにより、プロセッサは、現実空間におけるユーザの手と仮想空間における対象オブジェクトとの位置関係を把握し、ユーザの手と対象オブジェクトとの間でコリジョン制御等に対応する処理を実行可能となる。その結果、ユーザの手の動きに基づいて対象オブジェクトに作用を与えることが可能となる。 In the above-described embodiment, the virtual space (VR space) in which the user is immersed by the HMD device has been described as an example, but a transmissive HMD device may be adopted as the HMD device. In this case, augmented reality (AR) space or mixed reality is output by outputting a view image obtained by synthesizing a part of the images constituting the virtual space in the real space visually recognized by the user via the transmissive HMD device. A virtual experience in (MR: Mixed Reality) space may be provided to the user. In this case, instead of the hand object, the action on the target object in the virtual space may be generated based on the movement of the user's hand. Specifically, the processor may specify the coordinate information of the position of the user's hand in the real space, and may define the position of the target object in the virtual space in relation to the coordinate information in the real space. As a result, the processor can grasp the positional relationship between the user's hand in the real space and the target object in the virtual space, and can execute a process corresponding to collision control or the like between the user's hand and the target object. As a result, it becomes possible to give an action to the target object based on the movement of the user's hand.

本開示の実施形態が説明されたが、これらが例示にすぎず、本開示の範囲を限定するものではないことが理解されるべきである。本開示の趣旨及び範囲から逸脱することなく、実施形態の変更、追加、改良等を適宜行うことができることが理解されるべきである。本開示の範囲は、上述した実施形態のいずれによっても限定されるべきではなく、特許請求の範囲及びその均等物によって規定されるべきである。 Although embodiments of the present disclosure have been described, it should be understood that these are merely examples and do not limit the scope of the present disclosure. It should be understood that the embodiments can be changed, added, improved, etc. as appropriate without departing from the spirit and scope of the present disclosure. The scope of the present disclosure should not be limited by any of the embodiments described above, but should be defined by the claims and their equivalents.

100…HMDシステム、112…表示部、114…センサ、120…HMDセンサ、130…モーションセンサ、140…注視センサ、150…サーバ、160A、160B…コントローラ、190…頭部、192…ネットワーク、200…コンピュータ、202…プロセッサ、204…メモリ、205…通信制御部、206…ストレージ、208…入出力インターフェース、210…通信インターフェース、212…バス、400…仮想空間、402…仮想空間画像、404…仮想カメラ、406…中心、408…基準視線、410…視界領域、800…右コントローラ、802…グリップ、804…フレーム、806…天面、808、810、814、816…ボタン、812…赤外線LED、818…アナログスティック、820、822…ボタン、824R、824L…アナログスティック、902…仮想空間特定部、904…HMD動作検知部、906…視線検知部、908…基準視線決定部、910…視界領域決定部、912…仮想視点特定部、914…視界画像生成部、916…仮想カメラ制御部、918…イベント生成部、920…視認度合い特定部、922…条件判定部、923…オブジェクト制御部、924…視界画像出力部、926…仮想空間データ、928…オブジェクトデータ、930…アプリケーションデータ、932…イベントデータ、934…視認度合い条件、936…行動データ、938…その他のデータ、1300…仮想空間、1302…仮想カメラ、1304…ユーザ、1306…アバター、1318…シーン、1310…女の子、1312…犬、1314…リード、1316…犬小屋、1402、1404、1406…矩形領域、1410、1412、1414、1416、2220、2222、2224、2226、2228…視界画像、1602…キャラクタオブジェクト、1604…両手、1902、2004…中心点、1904…基準点、1906…角度範囲、2202、2204、2206、2208、2210、2212…特徴点 100 ... HMD system, 112 ... Display, 114 ... Sensor, 120 ... HMD sensor, 130 ... Motion sensor, 140 ... Gaze sensor, 150 ... Server, 160A, 160B ... Controller, 190 ... Head, 192 ... Network, 200 ... Computer, 202 ... Processor, 204 ... Memory, 205 ... Communication control unit, 206 ... Storage, 208 ... Input / output interface, 210 ... Communication interface, 212 ... Bus, 400 ... Virtual space, 402 ... Virtual space image, 404 ... Virtual camera , 406 ... center, 408 ... reference line of sight, 410 ... view area, 800 ... right controller, 802 ... grip, 804 ... frame, 806 ... top surface, 808, 810, 814, 816 ... button, 812 ... infrared LED, 818 ... Analog stick, 820, 822 ... button, 824R, 824L ... analog stick, 902 ... virtual space identification unit, 904 ... HMD motion detection unit, 906 ... line-of-sight detection unit, 908 ... reference line-of-sight determination unit, 910 ... view area determination unit, 912 ... Virtual viewpoint identification unit, 914 ... Visibility image generation unit, 916 ... Virtual camera control unit, 918 ... Event generation unit, 920 ... Visibility identification unit, 922 ... Condition determination unit, 923 ... Object control unit, 924 ... Visibility image Output unit, 926 ... virtual space data, 928 ... object data, 930 ... application data, 932 ... event data, 934 ... visibility condition, 936 ... behavior data, 938 ... other data, 1300 ... virtual space, 1302 ... virtual camera , 1304 ... user, 1306 ... avatar, 1318 ... scene, 1310 ... girl, 1312 ... dog, 1314 ... lead, 1316 ... kennel, 1402, 1404, 1406 ... rectangular area, 1410, 1412, 1414, 1416, 2220, 2222 , 2224, 2226, 2228 ... Visibility image, 1602 ... Character object, 1604 ... Both hands, 1902, 2004 ... Center point, 1904 ... Reference point, 1906 ... Angle range 2202, 2204, 2206, 2208, 2210, 2212 ... Feature points

Claims (9)

ユーザの頭部に関連付けられる画像表示装置を介して当該ユーザに仮想体験を提供するためのコンピュータに、
前記仮想体験を提供するための仮想空間を規定する仮想空間データを特定するステップと、
前記画像表示装置の動きに基づいて、前記仮想空間内で仮想視点からの視界を制御するステップと、
前記仮想空間内でイベントを生じさせるステップと、
前記仮想視点からの視界内における前記イベントの視認度合いが条件を満たさない場合に、前記ユーザの注意を前記イベントに向けるための行動を、前記仮想空間内に存在する1つ又は複数のキャラクタオブジェクトに行わせる処理を実行するステップと、
前記行動が行われている間に、前記視界内における前記イベントの視認度合いが条件を満たすように前記視界を制御するステップと
を実行させるためのプログラム。
To a computer for providing a virtual experience to the user via an image display device associated with the user's head.
The step of identifying the virtual space data that defines the virtual space for providing the virtual experience, and
A step of controlling the field of view from a virtual viewpoint in the virtual space based on the movement of the image display device,
The step of causing an event in the virtual space and
When the degree of visibility of the event in the field of view from the virtual viewpoint does not satisfy the condition, an action for directing the user's attention to the event is given to one or a plurality of character objects existing in the virtual space. The steps to perform the processing to be performed and
A program for executing a step of controlling the field of view so that the degree of visibility of the event in the field of view satisfies the condition while the action is being performed.
前記処理を実行するステップが、
前記行動が行われることを示唆する音声を出力するステップを含み、
前記1つ又は複数のキャラクタオブジェクトが、前記音声に関連付けられる1つ又は複数のキャラクタオブジェクトである、請求項1に記載のプログラム。
The step of executing the process is
Including the step of outputting a voice suggesting that the action is performed.
The program according to claim 1, wherein the one or more character objects are one or more character objects associated with the voice.
前記処理を実行するステップが、
前記行動として、前記1つ又は複数のキャラクタオブジェクトによって前記視界を覆わせる第1の行動と、前記イベントの視認度合いが条件を満たすように前記視界が制御される契機となる第2の行動とを、前記1つ又は複数のキャラクタオブジェクトに行わせる処理を実行する、請求項1又は2に記載のプログラム。
The step of executing the process is
As the action, a first action of covering the view with the one or more character objects and a second action of triggering the view to be controlled so that the degree of visibility of the event is satisfied. The program according to claim 1 or 2, wherein the process of causing the one or more character objects to be performed is executed.
前記イベントは、1つ又は複数のオブジェクトが登場するイベントであり、
前記1つ又は複数のオブジェクトのうち所定の数以上のオブジェクトが前記視界内に含まれていない場合に、前記視界内における前記イベントの視認度合いが前記条件を満たしていないと判断するステップを前記コンピュータに更に実行させるための、請求項1から3のいずれか1項に記載のプログラム。
The event is an event in which one or more objects appear.
When a predetermined number or more of the one or more objects are not included in the field of view, the computer determines that the degree of visibility of the event in the field of view does not satisfy the condition. The program according to any one of claims 1 to 3, which is to be further executed by the computer.
前記イベントは、1つ又は複数のオブジェクトが登場するイベントであり、
前記1つ又は複数のオブジェクトについて予め設定された1つ又は複数の特徴点のうち所定の特徴点が前記視界内に含まれていない場合に、前記視界内における前記イベントの視認度合いが前記条件を満たしていないと判断するステップを前記コンピュータに更に実行させるための、請求項1から3のいずれか1項に記載のプログラム。
The event is an event in which one or more objects appear.
When a predetermined feature point among the one or more feature points preset for the one or more objects is not included in the field of view, the degree of visibility of the event in the field of view determines the condition. The program according to any one of claims 1 to 3, for causing the computer to further perform a step of determining that the condition is not satisfied.
前記イベントは、1つ又は複数のオブジェクトが登場するイベントであり、
前記判断するステップは、所定の期間内に前記視界内に現れる前記1つ又は複数のオブジェクトの数に基づく値が所定の数未満である場合に、前記視界内における前記イベントの視認度合いが前記条件を満たしていないと判断するステップを含む、請求項4又は5に記載のプログラム。
The event is an event in which one or more objects appear.
In the determination step, when the value based on the number of the one or more objects appearing in the field of view within a predetermined period is less than the predetermined number, the degree of visibility of the event in the field of view is the condition. The program according to claim 4 or 5 , which comprises a step of determining that the above is not satisfied.
前記イベントは、前記1つ又は複数のキャラクタオブジェクトのうちの少なくとも1つが登場するイベントであり、
前記1つ又は複数のキャラクタオブジェクトのうち前記行動を行うキャラクタオブジェクトと、前記1つ又は複数のキャラクタオブジェクトのうち前記イベントに登場するキャラクタオブジェクトとが、共通の属性を有し、
前記共通の属性が、性別、服装、所属集団及び大きさのうちの少なくとも1つを含む、
請求項1から6のいずれか1項に記載のプログラム。
The event is an event in which at least one of the one or more character objects appears.
The character object that performs the action among the one or more character objects and the character object that appears in the event among the one or more character objects have common attributes.
The common attribute comprises at least one of gender, attire, affiliation and size.
The program according to any one of claims 1 to 6.
コンピュータであって、
前記コンピュータが備えるプロセッサによる、ユーザの頭部に関連付けられる画像表示装置を介して当該ユーザに仮想体験を提供するための制御により、
前記仮想体験を提供するための仮想空間を規定する仮想空間データを特定するステップと、
前記画像表示装置の動きに基づいて、前記仮想空間内で仮想視点からの視界を制御するステップと、
前記仮想空間内でイベントを生じさせるステップと、
前記仮想視点からの視界内における前記イベントの視認度合いが条件を満たさない場合に、前記ユーザの注意を前記イベントに向けるための行動を、前記仮想空間内に存在する1つ又は複数のキャラクタオブジェクトに行わせる処理を実行するステップと、
前記行動が行われている間に、前記視界内における前記イベントの視認度合いが条件を満たすように前記視界を制御するステップと
が実行されるコンピュータ。
It ’s a computer,
Controlled by a processor included in the computer to provide a virtual experience to the user via an image display device associated with the user's head.
The step of identifying the virtual space data that defines the virtual space for providing the virtual experience, and
A step of controlling the field of view from a virtual viewpoint in the virtual space based on the movement of the image display device,
The step of causing an event in the virtual space and
When the degree of visibility of the event in the field of view from the virtual viewpoint does not satisfy the condition, an action for directing the user's attention to the event is given to one or a plurality of character objects existing in the virtual space. The steps to perform the processing to be performed and
A computer that performs a step of controlling the field of view so that the degree of visibility of the event in the field of view satisfies the condition while the action is being performed.
ユーザの頭部に関連付けられる画像表示装置を介して当該ユーザに仮想体験を提供するためのコンピュータにより実行される方法であって、
前記仮想体験を提供するための仮想空間を規定する仮想空間データを特定するステップと、
前記画像表示装置の動きに基づいて、前記仮想空間内で仮想視点からの視界を制御するステップと、
前記仮想空間内でイベントを生じさせるステップと、
前記仮想視点からの視界内における前記イベントの視認度合いが条件を満たさない場合に、前記ユーザの注意を前記イベントに向けるための行動を、前記仮想空間内に存在する1つ又は複数のキャラクタオブジェクトに行わせる処理を実行するステップと、
前記行動が行われている間に、前記視界内における前記イベントの視認度合いが条件を満たすように前記視界を制御するステップと
を含む、方法。
A method performed by a computer to provide a virtual experience to a user via an image display device associated with the user's head.
The step of identifying the virtual space data that defines the virtual space for providing the virtual experience, and
A step of controlling the field of view from a virtual viewpoint in the virtual space based on the movement of the image display device,
The step of causing an event in the virtual space and
When the degree of visibility of the event in the field of view from the virtual viewpoint does not satisfy the condition, an action for directing the user's attention to the event is given to one or a plurality of character objects existing in the virtual space. The steps to perform the processing to be performed and
A method comprising the step of controlling the field of view so that the degree of visibility of the event in the field of view satisfies the condition while the action is being performed.
JP2017201003A 2017-10-17 2017-10-17 Methods, programs and computers for providing virtual experiences to users Active JP6948220B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017201003A JP6948220B2 (en) 2017-10-17 2017-10-17 Methods, programs and computers for providing virtual experiences to users

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017201003A JP6948220B2 (en) 2017-10-17 2017-10-17 Methods, programs and computers for providing virtual experiences to users

Publications (2)

Publication Number Publication Date
JP2019074953A JP2019074953A (en) 2019-05-16
JP6948220B2 true JP6948220B2 (en) 2021-10-13

Family

ID=66544155

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017201003A Active JP6948220B2 (en) 2017-10-17 2017-10-17 Methods, programs and computers for providing virtual experiences to users

Country Status (1)

Country Link
JP (1) JP6948220B2 (en)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001312460A (en) * 2000-04-28 2001-11-09 Ing:Kk Method for providing digital information, terminal device, transmitting device, and recording medium
JP5675470B2 (en) * 2011-04-01 2015-02-25 オリンパス株式会社 Image generation system, program, and information storage medium
JP5834464B2 (en) * 2011-04-22 2015-12-24 国立大学法人佐賀大学 Guidance instruction apparatus, guidance instruction method and program thereof
JP5981006B1 (en) * 2015-09-14 2016-08-31 株式会社コロプラ Computer program for gaze guidance
JP6727807B2 (en) * 2015-12-29 2020-07-22 株式会社バンダイナムコアミューズメント Game device and program
JP6087453B1 (en) * 2016-02-04 2017-03-01 株式会社コロプラ Method and program for providing virtual space
JP6159455B1 (en) * 2016-09-02 2017-07-05 株式会社コロプラ Method, program, and recording medium for providing virtual space

Also Published As

Publication number Publication date
JP2019074953A (en) 2019-05-16

Similar Documents

Publication Publication Date Title
JP6263252B1 (en) Information processing method, apparatus, and program for causing computer to execute information processing method
JP6201028B1 (en) Information processing method, apparatus, and program for causing computer to execute information processing method
JP6248219B1 (en) Information processing method, computer, and program for causing computer to execute information processing method
JP2020161168A (en) Program, information processing method, and information processing device
JP7043449B2 (en) Programs and methods and information processing equipment run on a computer to provide virtual space through headmount devices.
JP2018147465A (en) Information processing method, device, and program for causing computer to execute the method
JP7005406B2 (en) Programs, information processing devices, and information processing methods
JP2022020686A (en) Information processing method, program, and computer
JP6513241B1 (en) PROGRAM, INFORMATION PROCESSING DEVICE, AND INFORMATION PROCESSING METHOD
JP2021184272A (en) Information processing method, program, and computer
JP2019016071A (en) Information processing method, program and computer
JP7030669B2 (en) An information processing method, a device, and a program for causing a computer to execute the information processing method.
JP6966336B2 (en) An information processing method, a device, and a program for causing a computer to execute the information processing method.
JP2018101291A (en) Computer-executed method for presenting object in virtual space, program for executing thereof by computer, and computer device
JP6263292B1 (en) Information processing method, computer, and program for causing computer to execute information processing method
JP6839046B2 (en) Information processing methods, devices, information processing systems, and programs that allow computers to execute the information processing methods.
JP6419268B1 (en) Information processing method, apparatus, and program for causing computer to execute information processing method
JP7192151B2 (en) Program, information processing device, and information processing method
JP2019048045A (en) Information processing method device, and program for causing computer to execute the information processing method
JP2019030638A (en) Information processing method, device, and program for causing computer to execute information processing method
JP2018092635A (en) Information processing method, device, and program for implementing that information processing method on computer
JP6965304B2 (en) Programs, information processing devices, and information processing methods
JP2018092592A (en) Information processing method, apparatus, and program for implementing that information processing method on computer
JP6856572B2 (en) An information processing method, a device, and a program for causing a computer to execute the information processing method.
JP6948220B2 (en) Methods, programs and computers for providing virtual experiences to users

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200929

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210727

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210730

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210819

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210917

R150 Certificate of patent or registration of utility model

Ref document number: 6948220

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250