JP7104539B2 - Simulation system and program - Google Patents

Simulation system and program Download PDF

Info

Publication number
JP7104539B2
JP7104539B2 JP2018065395A JP2018065395A JP7104539B2 JP 7104539 B2 JP7104539 B2 JP 7104539B2 JP 2018065395 A JP2018065395 A JP 2018065395A JP 2018065395 A JP2018065395 A JP 2018065395A JP 7104539 B2 JP7104539 B2 JP 7104539B2
Authority
JP
Japan
Prior art keywords
user
virtual space
moving body
event
virtual
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
JP2018065395A
Other languages
Japanese (ja)
Other versions
JP2019175322A (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.)
Namco Ltd
Bandai Namco Entertainment Inc
Original Assignee
Namco Ltd
Bandai Namco Entertainment 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 Namco Ltd, Bandai Namco Entertainment Inc filed Critical Namco Ltd
Priority to JP2018065395A priority Critical patent/JP7104539B2/en
Publication of JP2019175322A publication Critical patent/JP2019175322A/en
Application granted granted Critical
Publication of JP7104539B2 publication Critical patent/JP7104539B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、シミュレーションシステム及びプログラム等に関する。 The present invention relates to a simulation system, a program, and the like.

従来より、仮想空間において仮想カメラから見える画像を生成するシミュレーションシステムが知られている。例えば仮想カメラから見える画像をHMD(頭部装着型表示装置)に表示して、バーチャルリアリティ(VR)を実現するシミュレーションシステムの従来技術としては、特許文献1等に開示される技術がある。 Conventionally, a simulation system that generates an image that can be seen from a virtual camera in a virtual space has been known. For example, as a conventional technique of a simulation system that realizes virtual reality (VR) by displaying an image seen from a virtual camera on an HMD (head-mounted display device), there is a technique disclosed in Patent Document 1 and the like.

特開平11-309269号公報Japanese Unexamined Patent Publication No. 11-309269

このようなシミュレーションシステムでは、あたかも仮想空間の世界に入り込んだかのような仮想現実をユーザに感じさせるために、実空間のユーザに対応するユーザ移動体を仮想空間に登場させる。具体的には実空間のユーザの視点に対応する仮想カメラを仮想空間内に設定し、当該仮想カメラから見える画像をHMDに表示する。この仮想カメラは仮想空間のユーザ移動体の視点に対応している。そして、これまでのシミュレーションシステムでは、実空間のユーザの視点と仮想空間のユーザ移動体の視点(仮想カメラ)は、対応した視点になっており、例えば実空間と同じ視点状態での画像がHMDに表示される。このため、仮想空間において見える画像は、実空間と同じ見え方の画像にしかならず、ユーザ移動体の状態の変化を反映させた仮想空間の画像を表示することはできなかった。 In such a simulation system, in order to make the user feel the virtual reality as if he / she entered the world of the virtual space, a user moving body corresponding to the user in the real space appears in the virtual space. Specifically, a virtual camera corresponding to the viewpoint of the user in the real space is set in the virtual space, and the image seen from the virtual camera is displayed on the HMD. This virtual camera corresponds to the viewpoint of the user moving body in the virtual space. In the conventional simulation system, the viewpoint of the user in the real space and the viewpoint of the user moving body in the virtual space (virtual camera) correspond to each other. For example, the image in the same viewpoint state as the real space is HMD. Is displayed in. Therefore, the image that can be seen in the virtual space is only an image that looks the same as the real space, and it is not possible to display the image of the virtual space that reflects the change in the state of the user moving body.

本発明の幾つかの態様によれば、イベントの発生によるユーザ移動体の状態の変化を仮想空間の画像に反映させることができるシミュレーションシステム及びプログラム等を提供できる。 According to some aspects of the present invention, it is possible to provide a simulation system and a program that can reflect a change in the state of a user moving body due to the occurrence of an event in an image of a virtual space.

本発明の一態様は、仮想空間の設定処理を行う仮想空間設定部と、ユーザが移動可能な実空間の前記ユーザに対応する前記仮想空間のユーザ移動体を、前記仮想空間において移動させる処理を行う移動体処理部と、イベントの処理を行うイベント処理部と、前記仮想空間において仮想カメラから見える画像として、前記ユーザが視界を覆うように装着する頭部装着型表示装置の表示画像を生成する表示処理部と、を含み、前記イベント処理部は、前記ユーザ移動体の状態が所与の状態へと変化するイベントが発生したか否かを判断し、前記仮想空間設定部は、前記イベントが発生すると判断された場合に、前記実空間での座標のスケールと前記仮想空間での座標のスケールとの対応関係を切り替える切り替え処理を行うシミュレーションシステムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラム、又は該プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体に関係する。 One aspect of the present invention is a process of moving a virtual space setting unit that performs a virtual space setting process and a user moving body of the virtual space corresponding to the user in a real space that the user can move in the virtual space. A moving body processing unit to perform the operation, an event processing unit to process the event, and a display image of the head-mounted display device worn by the user so as to cover the field of view are generated as an image seen from the virtual camera in the virtual space. The event processing unit includes a display processing unit, the event processing unit determines whether or not an event has occurred in which the state of the user moving body changes to a given state, and the virtual space setting unit determines whether or not the event has occurred. It relates to a simulation system that performs a switching process for switching the correspondence between the coordinate scale in the real space and the coordinate scale in the virtual space when it is determined to occur. The present invention also relates to a program that causes a computer to function as each of the above parts, or a computer-readable information storage medium that stores the program.

本発明の一態様によれば、仮想空間が設定され、ユーザ移動体が移動する仮想空間において仮想カメラから見える画像が、頭部装着型表示装置の表示画像として生成される。そしてユーザ移動体の状態が所与の状態へと変化するイベントが発生すると判断されると、実空間での座標のスケールと仮想空間での座標のスケールとの対応関係を切り替える処理が実行される。このようにすれば、イベントの発生によりユーザ移動体の状態が変化したことを、座標のスケールの対応関係を切り替えるという処理により、頭部装着型表示装置の表示画像に反映させることが可能になる。従って、イベントの発生によるユーザ移動体の状態の変化を仮想空間の画像に反映させることができるシミュレーションシステム等の提供が可能になる。 According to one aspect of the present invention, a virtual space is set, and an image seen from the virtual camera in the virtual space in which the user moving body moves is generated as a display image of the head-mounted display device. Then, when it is determined that an event that changes the state of the user moving body to a given state occurs, a process of switching the correspondence between the coordinate scale in the real space and the coordinate scale in the virtual space is executed. .. In this way, it is possible to reflect the change in the state of the user moving body due to the occurrence of the event in the display image of the head-mounted display device by the process of switching the correspondence of the coordinate scales. .. Therefore, it is possible to provide a simulation system or the like that can reflect the change in the state of the user moving body due to the occurrence of the event in the image of the virtual space.

また本発明の一態様では、前記仮想空間設定部は、前記イベントが発生すると判断された場合は、前記ユーザ移動体のローカル座標系から前記仮想空間のワールド座標系への座標変換の際に縮小又は拡大のスケール変換を行ってもよい。 Further, in one aspect of the present invention, when it is determined that the event occurs, the virtual space setting unit is reduced when the coordinates are converted from the local coordinate system of the user moving body to the world coordinate system of the virtual space. Alternatively, scale conversion of enlargement may be performed.

このようにすれば、ワールド座標系への座標変換の際に縮小又は拡大のスケール変換を行うという簡素な処理で、イベントの発生によるユーザ移動体の状態の変化を、頭部装着型表示装置の表示画像に反映させることが可能になる。 In this way, the change in the state of the user moving body due to the occurrence of an event can be detected by the head-mounted display device by a simple process of reducing or enlarging the scale when converting the coordinates to the world coordinate system. It can be reflected in the display image.

また本発明の一態様では、前記仮想空間設定部は、前記イベントが発生すると判断された場合は、前記ユーザ移動体が移動する前記仮想空間を、第1の仮想空間から、前記第1の仮想空間とは座標軸のスケールが異なる第2の仮想空間に切り替えてもよい。 Further, in one aspect of the present invention, when it is determined that the event occurs, the virtual space setting unit moves the virtual space to which the user moving body moves from the first virtual space to the first virtual space. You may switch to a second virtual space whose coordinate axis scale is different from that of space.

このようにすれば、ユーザ移動体が移動する仮想空間を第1の仮想空間から第2の仮想空間に切り替える処理により、イベントの発生によるユーザ移動体の状態の変化を、頭部装着型表示装置の表示画像に反映させることが可能になる。 In this way, by switching the virtual space in which the user moving body moves from the first virtual space to the second virtual space, the change in the state of the user moving body due to the occurrence of an event can be displayed on the head-mounted display device. It becomes possible to reflect it in the display image of.

また本発明の一態様では、前記仮想空間設定部は、前記イベントとして、前記ユーザ移動体のサイズを変化させるイベントが発生した場合に、前記切り替え処理を行ってもよい。 Further, in one aspect of the present invention, the virtual space setting unit may perform the switching process when an event for changing the size of the user moving body occurs as the event.

このようにすれば、ユーザ移動体のサイズが小さくなったり或いは大きくなったりする仮想現実を、ユーザに体験させることが可能になる。 In this way, it becomes possible for the user to experience the virtual reality in which the size of the user moving body becomes smaller or larger.

また本発明の一態様では、前記イベント処理部は、前記ユーザの行動情報、他のユーザの行動情報、及びゲーム状況の少なくとも1つに基づいて、前記イベントが発生したか否かを判断してもよい。 Further, in one aspect of the present invention, the event processing unit determines whether or not the event has occurred based on at least one of the behavior information of the user, the behavior information of another user, and the game situation. May be good.

このようにすれば、ユーザの行動、他のユーザの行動、或いはゲーム状況に応じて、ユーザ移動体を所与の状態に変化させるイベントを発生し、そのイベントの発生によるユーザ移動体の状態の変化をユーザに仮想体験させることが可能になる。 In this way, an event that changes the user moving body to a given state is generated according to the user's behavior, the behavior of another user, or the game situation, and the state of the user moving body due to the occurrence of the event is generated. It is possible to let the user experience the change virtually.

また本発明の一態様では、前記イベント処理部は、前記イベントの発生により、前記仮想空間での前記ユーザ移動体の位置と、前記実空間での前記ユーザの対応位置との間にズレが生じると判定した場合に、前記仮想空間での前記ユーザ移動体の位置を修正しながら、前記ユーザ移動体の状態を前記所与の状態に変化させてもよい。 Further, in one aspect of the present invention, the event processing unit causes a deviation between the position of the user moving body in the virtual space and the corresponding position of the user in the real space due to the occurrence of the event. When it is determined, the state of the user moving body may be changed to the given state while modifying the position of the user moving body in the virtual space.

このようにすれば、イベントの発生によりユーザの位置とユーザ移動体の位置にズレが生じるような事態が発生した場合にも、ユーザ移動体の位置を修正することで、このような事態の発生を防止できるようになる。 In this way, even if a situation occurs in which the position of the user and the position of the user moving body are deviated due to the occurrence of an event, the position of the user moving body can be corrected to cause such a situation. Can be prevented.

また本発明の一態様では、前記表示処理部は、前記ユーザ移動体の位置を修正する際に、前記表示画像を変化させる処理を行ってもよい。 Further, in one aspect of the present invention, the display processing unit may perform a process of changing the display image when correcting the position of the user moving body.

このようにすれば、位置修正によるユーザ移動体の移動に対して、ユーザが不自然さを感じてしまうなどの事態の発生を防止できるようになる。 In this way, it is possible to prevent the occurrence of a situation in which the user feels unnatural with respect to the movement of the user moving body due to the position correction.

また本発明の一態様では、前記表示処理部は、前記表示画像を変化させる処理として、前記表示画像をフェードアウトさせる処理を行ってもよい。 Further, in one aspect of the present invention, the display processing unit may perform a process of fading out the display image as a process of changing the display image.

このようにすれば、ユーザ移動体の位置の修正の際に表示画像がフェードアウトするようになり、位置修正によるユーザ移動体の移動に対してユーザが不自然さを感じてしまうなどの事態の発生を防止できるようになる。 In this way, the displayed image fades out when the position of the user moving body is corrected, and the user feels unnatural about the movement of the user moving body due to the position correction. Can be prevented.

また本発明の一態様では、前記表示処理部は、前記表示画像を変化させる処理として、前記仮想空間のオブジェクトを、前記仮想カメラを覆う位置に表示する処理を行ってもよい。 Further, in one aspect of the present invention, the display processing unit may perform a process of displaying an object in the virtual space at a position covering the virtual camera as a process of changing the display image.

このようにすれば、ユーザ移動体の位置の修正の際に、オブジェクトにより視界が覆われた画像が表示されるようになり、位置修正によるユーザ移動体の移動に対してユーザが不自然さを感じてしまうなどの事態の発生を防止できるようになる。 In this way, when the position of the user moving body is corrected, an image whose field of view is covered by the object is displayed, and the user feels unnatural with respect to the movement of the user moving body due to the position correction. It will be possible to prevent the occurrence of situations such as feeling.

また本発明の一態様では、前記実空間での前記ユーザの視点情報のトラッキング情報を取得する情報取得部を含み(情報取得部としてコンピュータを機能させ)、前記表示処理部は、前記視点情報の前記トラッキング情報に基づき前記ユーザの視点変化に追従するように制御される前記仮想カメラから見える画像を、前記頭部装着型表示装置の表示画像として生成してもよい。 Further, in one aspect of the present invention, an information acquisition unit that acquires tracking information of the user's viewpoint information in the real space is included (a computer functions as an information acquisition unit), and the display processing unit is the viewpoint information. An image seen from the virtual camera, which is controlled to follow a change in the viewpoint of the user based on the tracking information, may be generated as a display image of the head-mounted display device.

このようにすれば、実空間でのユーザの視点変化を反映させた仮想カメラの制御が可能になり、仮想空間の世界に入り込んだかのような仮想現実感をユーザに与えることが可能になる。 In this way, it is possible to control the virtual camera that reflects the change in the user's viewpoint in the real space, and it is possible to give the user a virtual reality feeling as if he / she has entered the world of the virtual space.

本実施形態のシミュレーションシステムの構成例を示すブロック図。The block diagram which shows the configuration example of the simulation system of this embodiment. 図2(A)、図2(B)は本実施形態に用いられるHMDの一例。2 (A) and 2 (B) are examples of the HMD used in this embodiment. 図3(A)、図3(B)は本実施形態に用いられるHMDの他の例。3 (A) and 3 (B) are other examples of the HMD used in this embodiment. シミュレーションシステムのプレイフィールドを説明する斜視図。A perspective view illustrating a playfield of a simulation system. 本実施形態により生成される仮想空間画像の例。An example of a virtual space image generated by this embodiment. ユーザキャラクタのサイズ変化イベントの説明図。Explanatory drawing of the size change event of a user character. ユーザキャラクタのサイズ変化イベントの説明図。Explanatory drawing of the size change event of a user character. ユーザキャラクタのサイズ変化イベントの説明図。Explanatory drawing of the size change event of a user character. イベント発生時にHMDに表示される画像の例。An example of an image displayed on the HMD when an event occurs. イベント発生時にHMDに表示される画像の例。An example of an image displayed on the HMD when an event occurs. イベント発生時にHMDに表示される画像の例。An example of an image displayed on the HMD when an event occurs. 座標のスケールの切り替え処理の説明図。Explanatory drawing of the coordinate scale switching process. 座標のスケールの切り替え処理の説明図。Explanatory drawing of the coordinate scale switching process. 座標のスケールの切り替え処理の説明図。Explanatory drawing of the coordinate scale switching process. 座標のスケールの切り替え処理の他の例の説明図。Explanatory drawing of another example of the coordinate scale switching process. 図16(A)、図16(B)はユーザの行動又は他のユーザの行動に基づきイベントを発生する処理の説明図。16 (A) and 16 (B) are explanatory views of a process of generating an event based on a user's behavior or another user's behavior. 図17(A)~図17(C)はイベント発生時にユーザキャラクタの位置を修正する処理の説明図。17 (A) to 17 (C) are explanatory views of a process of correcting the position of the user character when an event occurs. 図18(A)、図18(B)はユーザキャラクタの位置の修正時に表示画像を変化させる処理の説明図。18 (A) and 18 (B) are explanatory views of a process of changing the display image when the position of the user character is corrected. 図19(A)、図19(B)はユーザキャラクタの位置の修正時にオブジェクトで視界を覆う処理の説明図。19 (A) and 19 (B) are explanatory views of a process of covering the field of view with an object when the position of the user character is corrected. 本実施形態の詳細な処理例を示すフローチャート。The flowchart which shows the detailed processing example of this embodiment.

以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。 Hereinafter, this embodiment will be described. The present embodiment described below does not unreasonably limit the content of the present invention described in the claims. Moreover, not all of the configurations described in the present embodiment are essential constituent requirements of the present invention.

1.シミュレーションシステム
図1は、本実施形態のシミュレーションシステム(シミュレータ、ゲームシステム、画像生成システム)の構成例を示すブロック図である。本実施形態のシミュレーションシステムは例えばバーチャルリアリティ(VR)をシミュレートするシステムであり、ゲームコンテンツを提供するゲームシステム、スポーツ競技シミュレータや運転シミュレータなどのリアルタイムシミュレーションシステム、SNSのサービスを提供するシステム、映像等のコンテンツを提供するコンテンツ提供システム、或いは遠隔作業を実現するオペレーティングシステムなどの種々のシステムに適用可能である。なお、本実施形態のシミュレーションシステムは図1の構成に限定されず、その構成要素(各部)の一部を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。
1. 1. Simulation system FIG. 1 is a block diagram showing a configuration example of a simulation system (simulator, game system, image generation system) of the present embodiment. The simulation system of this embodiment is, for example, a system that simulates virtual reality (VR), a game system that provides game content, a real-time simulation system such as a sports competition simulator or a driving simulator, a system that provides SNS services, and an image. It can be applied to various systems such as a content providing system that provides such contents or an operating system that realizes remote work. The simulation system of the present embodiment is not limited to the configuration shown in FIG. 1, and various modifications such as omitting a part of its constituent elements (each part) or adding other constituent elements are possible.

操作部160は、ユーザ(プレーヤ)が種々の操作情報(入力情報)を入力するためのものである。操作部160は、例えば操作ボタン、方向指示キー、ジョイスティック、ハンドル、ペダル、レバー又は音声入力装置等の種々の操作デバイスにより実現できる。 The operation unit 160 is for the user (player) to input various operation information (input information). The operation unit 160 can be realized by various operation devices such as an operation button, a direction instruction key, a joystick, a handle, a pedal, a lever, or a voice input device.

記憶部170は各種の情報を記憶する。記憶部170は、処理部100や通信部196などのワーク領域として機能する。ゲームプログラムや、ゲームプログラムの実行に必要なゲームデータは、この記憶部170に保持される。記憶部170の機能は、半導体メモリ(DRAM、VRAM)、HDD(ハードディスクドライブ)、SSD、光ディスク装置などにより実現できる。記憶部170は、オブジェクト情報記憶部172、描画バッファ178を含む。 The storage unit 170 stores various types of information. The storage unit 170 functions as a work area such as the processing unit 100 and the communication unit 196. The game program and game data necessary for executing the game program are stored in the storage unit 170. The function of the storage unit 170 can be realized by a semiconductor memory (DRAM, VRAM), an HDD (hard disk drive), an SSD, an optical disk device, or the like. The storage unit 170 includes an object information storage unit 172 and a drawing buffer 178.

情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(DVD、BD、CD)、HDD、或いは半導体メモリ(ROM)などにより実現できる。処理部100は、情報記憶媒体180に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体180には、本実施形態の各部としてコンピュータ(入力装置、処理部、記憶部、出力部を備える装置)を機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶される。 The information storage medium 180 (a medium that can be read by a computer) stores programs, data, and the like, and its function can be realized by an optical disk (DVD, BD, CD), an HDD, a semiconductor memory (ROM), or the like. .. The processing unit 100 performs various processes of the present embodiment based on the program (data) stored in the information storage medium 180. That is, the information storage medium 180 is a program for causing a computer (a device including an input device, a processing unit, a storage unit, and an output unit) to function as each part of the present embodiment (a program for causing the computer to execute the processing of each part). Is memorized.

HMD200(頭部装着型表示装置)は、ユーザの頭部に装着されて、ユーザの眼前に画像を表示する装置である。HMD200は非透過型であることが望ましいが、透過型であってもよい。またHMD200は、いわゆるメガネタイプのHMDであってもよい。 The HMD200 (head-mounted display device) is a device that is worn on the user's head and displays an image in front of the user's eyes. The HMD 200 is preferably a non-transparent type, but may be a transparent type. Further, the HMD 200 may be a so-called eyeglass type HMD.

HMD200は、センサ部210、表示部220、処理部240を含む。なおHMD200に発光素子を設ける変形実施も可能である。センサ部210は、例えばヘッドトラッキングなどのトラッキング処理を実現するためものである。例えばセンサ部210を用いたトラッキング処理により、HMD200の位置、方向を特定する。HMD200の位置、方向が特定されることで、ユーザの視点位置、視線方向を特定できる。 The HMD 200 includes a sensor unit 210, a display unit 220, and a processing unit 240. It is also possible to modify the HMD 200 by providing a light emitting element. The sensor unit 210 is for realizing tracking processing such as head tracking. For example, the position and direction of the HMD 200 are specified by a tracking process using the sensor unit 210. By specifying the position and direction of the HMD 200, the user's viewpoint position and line-of-sight direction can be specified.

トラッキング方式としては種々の方式を採用できる。トラッキング方式の一例である第1のトラッキング方式では、後述の図2(A)、図2(B)で詳細に説明するように、センサ部210として複数の受光素子(フォトダイオード等)を設ける。そして外部に設けられた発光素子(LED等)からの光(レーザー等)をこれらの複数の受光素子により受光することで、現実世界の3次元空間でのHMD200(ユーザの頭部)の位置、方向を特定する。第2のトラッキング方式では、後述の図3(A)、図3(B)で詳細に説明するように、複数の発光素子(LED)をHMD200に設ける。そして、これらの複数の発光素子からの光を、外部に設けられた撮像部で撮像することで、HMD200の位置、方向を特定する。第3の方式では、センサ部210としてモーションセンサを設け、このモーションセンサを用いてHMD200の位置、方向を特定する。モーションセンサは例えば加速度センサやジャイロセンサなどにより実現できる。例えば3軸の加速度センサと3軸のジャイロセンサを用いた6軸のモーションセンサを用いることで、現実世界の3次元空間でのHMD200の位置、方向を特定できる。なお、第1のトラッキング方式と第2のトラッキング方式の組合わせ、或いは第1のトラッキング方式と第3のトラッキング方式の組合わせなどにより、HMD200の位置、方向を特定してもよい。またHMD200の位置、方向を特定することでユーザの視点位置、視線方向を特定するのではなく、ユーザの視点位置、視線方向を直接に特定するトラッキング処理を採用してもよい。 Various methods can be adopted as the tracking method. In the first tracking method, which is an example of the tracking method, a plurality of light receiving elements (photodiodes, etc.) are provided as the sensor unit 210, as will be described in detail in FIGS. 2 (A) and 2 (B) described later. Then, by receiving the light (laser, etc.) from the light emitting element (LED, etc.) provided outside by these plurality of light receiving elements, the position of the HMD200 (user's head) in the three-dimensional space in the real world, Specify the direction. In the second tracking method, a plurality of light emitting elements (LEDs) are provided in the HMD 200 as described in detail in FIGS. 3 (A) and 3 (B) described later. Then, the position and direction of the HMD 200 are specified by capturing the light from these plurality of light emitting elements with an imaging unit provided outside. In the third method, a motion sensor is provided as the sensor unit 210, and the position and direction of the HMD 200 are specified using this motion sensor. The motion sensor can be realized by, for example, an acceleration sensor or a gyro sensor. For example, by using a 6-axis motion sensor using a 3-axis acceleration sensor and a 3-axis gyro sensor, the position and direction of the HMD200 in a three-dimensional space in the real world can be specified. The position and direction of the HMD 200 may be specified by a combination of the first tracking method and the second tracking method, or a combination of the first tracking method and the third tracking method. Further, instead of specifying the user's viewpoint position and line-of-sight direction by specifying the position and direction of the HMD 200, a tracking process that directly specifies the user's viewpoint position and line-of-sight direction may be adopted.

HMD200の表示部220は例えば有機ELディスプレイ(OEL)や液晶ディスプレイ(LCD)などにより実現できる。例えばHMD200の表示部220には、ユーザの左眼の前に設定される第1のディスプレイ又は第1の表示領域と、右眼の前に設定される第2のディスプレイ又は第2の表示領域が設けられており、立体視表示が可能になっている。立体視表示を行う場合には、例えば視差が異なる左眼用画像と右眼用画像を生成し、第1のディスプレイに左眼用画像を表示し、第2のディスプレイに右眼用画像を表示する。或いは1つのディスプレイの第1の表示領域に左眼用画像を表示し、第2の表示領域に右眼用画像を表示する。またHMD200には左眼用、右眼用の2つの接眼レンズ(魚眼レンズ)が設けられており、これによりユーザの視界の全周囲に亘って広がるVR空間が表現される。そして接眼レンズ等の光学系で生じる歪みを補正するための補正処理が、左眼用画像、右眼用画像に対して行われる。この補正処理は表示処理部120が行う。 The display unit 220 of the HMD 200 can be realized by, for example, an organic EL display (OEL) or a liquid crystal display (LCD). For example, the display unit 220 of the HMD 200 includes a first display or a first display area set in front of the left eye of the user and a second display or a second display area set in front of the right eye. It is provided so that a stereoscopic display is possible. In the case of stereoscopic display, for example, an image for the left eye and an image for the right eye having different parallax are generated, the image for the left eye is displayed on the first display, and the image for the right eye is displayed on the second display. do. Alternatively, the image for the left eye is displayed in the first display area of one display, and the image for the right eye is displayed in the second display area. Further, the HMD 200 is provided with two eyepieces (fisheye lens) for the left eye and the right eye, thereby expressing a VR space that extends over the entire circumference of the user's field of view. Then, a correction process for correcting the distortion generated in the optical system such as the eyepiece is performed on the left eye image and the right eye image. This correction process is performed by the display processing unit 120.

HMD200の処理部240は、HMD200において必要な各種の処理を行う。例えば処理部240は、センサ部210の制御処理や表示部220の表示制御処理などを行う。また処理部240が、3次元音響(立体音響)処理を行って、3次元的な音の方向や距離や広がりの再現を実現してもよい。 The processing unit 240 of the HMD 200 performs various processes necessary for the HMD 200. For example, the processing unit 240 performs control processing of the sensor unit 210, display control processing of the display unit 220, and the like. Further, the processing unit 240 may perform three-dimensional sound (stereophonic sound) processing to reproduce the three-dimensional sound direction, distance, and spread.

音出力部192は、本実施形態により生成された音を出力するものであり、例えばスピーカ又はヘッドホン等により実現できる。 The sound output unit 192 outputs the sound generated by the present embodiment, and can be realized by, for example, a speaker or headphones.

I/F(インターフェース)部194は、携帯型情報記憶媒体195とのインターフェース処理を行うものであり、その機能はI/F処理用のASICなどにより実現できる。携帯型情報記憶媒体195は、ユーザが各種の情報を保存するためのものであり、電源が非供給になった場合にもこれらの情報の記憶を保持する記憶装置である。携帯型情報記憶媒体195は、ICカード(メモリカード)、USBメモリ、或いは磁気カードなどにより実現できる。 The I / F (interface) unit 194 performs interface processing with the portable information storage medium 195, and the function can be realized by an ASIC or the like for I / F processing. The portable information storage medium 195 is for the user to store various types of information, and is a storage device that retains the storage of such information even when the power is not supplied. The portable information storage medium 195 can be realized by an IC card (memory card), a USB memory, a magnetic card, or the like.

通信部196は、有線や無線のネットワークを介して外部(他の装置)との間で通信を行うものであり、その機能は、通信用ASIC又は通信用プロセッサなどのハードウェアや、通信用ファームウェアにより実現できる。 The communication unit 196 communicates with an external device (another device) via a wired or wireless network, and its functions include hardware such as a communication ASIC or a communication processor, and communication firmware. Can be realized by.

なお本実施形態の各部としてコンピュータを機能させるためのプログラム(データ)は、サーバ(ホスト装置)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180(あるいは記憶部170)に配信してもよい。このようなサーバ(ホスト装置)による情報記憶媒体の使用も本発明の範囲内に含めることができる。 The program (data) for operating the computer as each part of the present embodiment is distributed from the information storage medium of the server (host device) to the information storage medium 180 (or storage unit 170) via the network and the communication unit 196. You may. The use of information storage media by such a server (host device) can also be included within the scope of the present invention.

処理部100(プロセッサ)は、操作部160からの操作情報や、HMD200でのトラッキング情報(HMDの位置及び方向の少なくとも一方の情報。視点位置及び視線方向の少なくとも一方の情報)や、プログラムなどに基づいて、ゲーム処理(シミュレーション処理)、仮想空間設定処理、移動体処理、仮想カメラ制御処理、表示処理、或いは音処理などを行う。 The processing unit 100 (processor) provides operation information from the operation unit 160, tracking information in the HMD 200 (information on at least one of the position and direction of the HMD, information on at least one of the viewpoint position and the line-of-sight direction), a program, and the like. Based on this, game processing (simulation processing), virtual space setting processing, moving object processing, virtual camera control processing, display processing, sound processing, and the like are performed.

処理部100の各部が行う本実施形態の各処理(各機能)はプロセッサ(ハードウェアを含むプロセッサ)により実現できる。例えば本実施形態の各処理は、プログラム等の情報に基づき動作するプロセッサと、プログラム等の情報を記憶するメモリにより実現できる。プロセッサは、例えば各部の機能が個別のハードウェアで実現されてもよいし、或いは各部の機能が一体のハードウェアで実現されてもよい。例えば、プロセッサはハードウェアを含み、そのハードウェアは、デジタル信号を処理する回路及びアナログ信号を処理する回路の少なくとも一方を含むことができる。例えば、プロセッサは、回路基板に実装された1又は複数の回路装置(例えばIC等)や、1又は複数の回路素子(例えば抵抗、キャパシター等)で構成することもできる。プロセッサは、例えばCPU(Central Processing Unit)であってもよい。但し、プロセッサはCPUに限定されるものではなく、GPU(Graphics Processing Unit)、或いはDSP(Digital Signal Processor)等、各種のプロセッサを用いることが可能である。またプロセッサはASICによるハードウェア回路であってもよい。またプロセッサは、アナログ信号を処理するアンプ回路やフィルター回路等を含んでもよい。メモリ(記憶部170)は、SRAM、DRAM等の半導体メモリであってもよいし、レジスターであってもよい。或いはハードディスク装置(HDD)等の磁気記憶装置であってもよいし、光学ディスク装置等の光学式記憶装置であってもよい。例えば、メモリはコンピュータにより読み取り可能な命令を格納しており、当該命令がプロセッサにより実行されることで、処理部100の各部の処理(機能)が実現されることになる。ここでの命令は、プログラムを構成する命令セットでもよいし、プロセッサのハードウェア回路に対して動作を指示する命令であってもよい。 Each process (each function) of the present embodiment performed by each unit of the processing unit 100 can be realized by a processor (a processor including hardware). For example, each process of the present embodiment can be realized by a processor that operates based on information such as a program and a memory that stores information such as a program. In the processor, for example, the functions of each part may be realized by individual hardware, or the functions of each part may be realized by integrated hardware. For example, a processor includes hardware, which hardware can include at least one of a circuit that processes a digital signal and a circuit that processes an analog signal. For example, the processor may be composed of one or more circuit devices (for example, ICs, etc.) mounted on a circuit board, or one or more circuit elements (for example, resistors, capacitors, etc.). The processor may be, for example, a CPU (Central Processing Unit). However, the processor is not limited to the CPU, and various processors such as GPU (Graphics Processing Unit) and DSP (Digital Signal Processor) can be used. Further, the processor may be a hardware circuit by ASIC. Further, the processor may include an amplifier circuit, a filter circuit, and the like for processing an analog signal. The memory (storage unit 170) may be a semiconductor memory such as SRAM or DRAM, or may be a register. Alternatively, it may be a magnetic storage device such as a hard disk device (HDD), or an optical storage device such as an optical disk device. For example, the memory stores instructions that can be read by a computer, and when the instructions are executed by the processor, the processing (function) of each part of the processing unit 100 is realized. The instruction here may be an instruction set that constitutes a program, or may be an instruction that instructs the hardware circuit of the processor to operate.

処理部100は、入力処理部102、演算処理部110、出力処理部140を含む。演算処理部110は、情報取得部111、仮想空間設定部112、移動体処理部113、仮想カメラ制御部114、ゲーム処理部115、イベント処理部116、報知処理部117、表示処理部120、音処理部130を含む。上述したように、これらの各部により実行される本実施形態の各処理は、プロセッサ(或いはプロセッサ及びメモリ)により実現できる。なお、これらの構成要素(各部)の一部を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。 The processing unit 100 includes an input processing unit 102, an arithmetic processing unit 110, and an output processing unit 140. The arithmetic processing unit 110 includes an information acquisition unit 111, a virtual space setting unit 112, a moving body processing unit 113, a virtual camera control unit 114, a game processing unit 115, an event processing unit 116, a notification processing unit 117, a display processing unit 120, and a sound. The processing unit 130 is included. As described above, each process of the present embodiment executed by each of these parts can be realized by a processor (or a processor and a memory). It is possible to carry out various modifications such as omitting a part of these components (each part) or adding other components.

入力処理部102は、操作情報やトラッキング情報を受け付ける処理や、記憶部170から情報を読み出す処理や、通信部196を介して情報を受信する処理を、入力処理として行う。例えば入力処理部102は、操作部160を用いてユーザが入力した操作情報やHMD200のセンサ部210等により検出されたトラッキング情報を取得する処理や、読み出し命令で指定された情報を、記憶部170から読み出す処理や、外部装置(サーバ等)からネットワークを介して情報を受信する処理を、入力処理として行う。ここで受信処理は、通信部196に情報の受信を指示したり、通信部196が受信した情報を取得して記憶部170に書き込む処理などである。 The input processing unit 102 performs a process of receiving operation information and tracking information, a process of reading information from the storage unit 170, and a process of receiving information via the communication unit 196 as input processing. For example, the input processing unit 102 stores the operation information input by the user using the operation unit 160, the processing of acquiring the tracking information detected by the sensor unit 210 of the HMD 200, and the information specified by the read command in the storage unit 170. The process of reading from the computer and the process of receiving information from an external device (server, etc.) via the network are performed as input processes. Here, the reception process is a process of instructing the communication unit 196 to receive information, a process of acquiring the received information by the communication unit 196 and writing it to the storage unit 170, and the like.

演算処理部110は、各種の演算処理を行う。例えば情報取得処理、仮想空間設定処理、移動体処理、仮想カメラ制御処理、ゲーム処理(シミュレーション処理)、イベント処理、報知処理、表示処理、或いは音処理などの演算処理を行う。 The arithmetic processing unit 110 performs various arithmetic processing. For example, arithmetic processing such as information acquisition processing, virtual space setting processing, moving object processing, virtual camera control processing, game processing (simulation processing), event processing, notification processing, display processing, or sound processing is performed.

情報取得部111(情報取得処理のプログラムモジュール)は種々の情報の取得処理を行う。例えば情報取得部111は、HMD200を装着するユーザの位置情報などを取得する。情報取得部111はユーザの方向情報などを取得してもよい。 The information acquisition unit 111 (program module for information acquisition processing) performs various information acquisition processing. For example, the information acquisition unit 111 acquires the position information of the user who wears the HMD 200. The information acquisition unit 111 may acquire user's direction information and the like.

仮想空間設定部112(仮想空間設定処理のプログラムモジュール)は、オブジェクトが配置される仮想空間(オブジェクト空間)の設定処理を行う。例えば、移動体(人、ロボット、車、電車、飛行機、船、モンスター又は動物等)、マップ(地形)、建物、観客席、コース(道路)、樹木、壁、水面などの表示物を表す各種オブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェイスなどのプリミティブ面で構成されるオブジェクト)を仮想空間に配置設定する処理を行う。即ちワールド座標系でのオブジェクトの位置や回転角度(向き、方向と同義)を決定し、その位置(X、Y、Z)にその回転角度(X、Y、Z軸回りでの回転角度)でオブジェクトを配置する。具体的には、記憶部170のオブジェクト情報記憶部172には、仮想空間でのオブジェクト(パーツオブジェクト)の位置、回転角度、移動速度、移動方向等の情報であるオブジェクト情報がオブジェクト番号に対応づけて記憶される。仮想空間設定部112は、例えば各フレーム毎にこのオブジェクト情報を更新する処理などを行う。 The virtual space setting unit 112 (program module of the virtual space setting process) performs the setting process of the virtual space (object space) in which the object is arranged. For example, various display objects such as moving objects (people, robots, cars, trains, airplanes, ships, monsters or animals), maps (topography), buildings, spectator seats, courses (roads), trees, walls, water surfaces, etc. Performs a process of arranging and setting an object (an object composed of primitive surfaces such as polygons, free curved surfaces, or subdivision surfaces) in a virtual space. That is, the position and rotation angle (synonymous with direction and direction) of the object in the world coordinate system are determined, and the rotation angle (rotation angle around the X, Y, Z axis) is used for the position (X, Y, Z). Place the object. Specifically, in the object information storage unit 172 of the storage unit 170, object information, which is information such as the position, rotation angle, movement speed, and movement direction of an object (part object) in the virtual space, is associated with the object number. Is remembered. The virtual space setting unit 112 performs, for example, a process of updating this object information for each frame.

移動体処理部113(移動体処理のプログラムモジュール)は、仮想空間内で移動する移動体についての種々の処理を行う。例えば仮想空間(オブジェクト空間、ゲーム空間)において移動体を移動させる処理や、移動体を動作させる処理を行う。例えば移動体処理部113は、操作部160によりユーザが入力した操作情報や、取得されたトラッキング情報や、プログラム(移動・動作アルゴリズム)や、各種データ(モーションデータ)などに基づいて、移動体(モデルオブジェクト)を仮想空間内で移動させたり、移動体を動作(モーション、アニメーション)させる制御処理を行う。具体的には、移動体の移動情報(位置、回転角度、速度、或いは加速度)や動作情報(パーツオブジェクトの位置、或いは回転角度)を、1フレーム(例えば1/60秒)毎に順次求めるシミュレーション処理を行う。なおフレームは、移動体の移動・動作処理(シミュレーション処理)や画像生成処理を行う時間の単位である。移動体は、例えば実空間のユーザ(プレーヤ)に対応するユーザ移動体である。ユーザ移動体は、仮想空間の仮想ユーザ(仮想プレーヤ、アバター)や、或いは当該仮想ユーザが搭乗(操作)する搭乗移動体(操作移動体)などである。 The moving body processing unit 113 (program module for moving body processing) performs various processing on the moving body moving in the virtual space. For example, a process of moving a moving body or a process of operating a moving body is performed in a virtual space (object space, game space). For example, the moving body processing unit 113 is based on the operation information input by the user by the operation unit 160, the tracking information acquired, the program (movement / motion algorithm), various data (motion data), and the like. Performs control processing to move a model object) in a virtual space or to move a moving body (motion, animation). Specifically, a simulation in which movement information (position, rotation angle, velocity, or acceleration) and motion information (position or rotation angle of a part object) of a moving body are sequentially obtained for each frame (for example, 1/60 second). Perform processing. A frame is a unit of time for performing movement / motion processing (simulation processing) and image generation processing of a moving body. The moving body is, for example, a user moving body corresponding to a user (player) in the real space. The user moving body is a virtual user (virtual player, avatar) in the virtual space, or a boarding moving body (operating moving body) on which the virtual user is boarding (operating).

仮想カメラ制御部114(仮想カメラ制御処理のプログラムモジュール)は、仮想カメラの制御を行う。例えば、操作部160により入力されたユーザの操作情報やトラッキング情報などに基づいて、仮想カメラを制御する処理を行う。 The virtual camera control unit 114 (program module for virtual camera control processing) controls the virtual camera. For example, the process of controlling the virtual camera is performed based on the user's operation information, tracking information, and the like input by the operation unit 160.

例えば仮想カメラ制御部114は、ユーザの一人称視点又は三人称視点として設定される仮想カメラの制御を行う。例えば仮想空間において移動するユーザ移動体の視点(一人称視点)に対応する位置に、仮想カメラを設定して、仮想カメラの視点位置や視線方向を設定することで、仮想カメラの位置(位置座標)や姿勢(回転軸回りでの回転角度)を制御する。或いは、ユーザ移動体に追従する視点(三人称視点)の位置に、仮想カメラを設定して、仮想カメラの視点位置や視線方向を設定することで、仮想カメラの位置や姿勢を制御する。 For example, the virtual camera control unit 114 controls the virtual camera set as the user's first-person viewpoint or third-person viewpoint. For example, by setting a virtual camera at a position corresponding to the viewpoint (first-person viewpoint) of a moving user moving body in a virtual space and setting the viewpoint position and line-of-sight direction of the virtual camera, the position (position coordinates) of the virtual camera can be set. And posture (rotation angle around the rotation axis). Alternatively, the position and orientation of the virtual camera are controlled by setting the virtual camera at the position of the viewpoint (third person viewpoint) following the moving body of the user and setting the viewpoint position and the line-of-sight direction of the virtual camera.

例えば仮想カメラ制御部114は、視点トラッキングにより取得されたユーザの視点情報のトラッキング情報に基づいて、ユーザの視点変化に追従するように仮想カメラを制御する。例えば本実施形態では、ユーザの視点位置、視線方向の少なくとも1つである視点情報のトラッキング情報(視点トラッキング情報)が取得される。このトラッキング情報は、例えばHMD200のトラッキング処理を行うことで取得できる。そして仮想カメラ制御部114は、取得されたトラッキング情報(ユーザの視点位置及び視線方向の少なくとも一方の情報)に基づいて仮想カメラの視点位置、視線方向を変化させる。例えば、仮想カメラ制御部114は、実空間でのユーザの視点位置、視線方向の変化に応じて、仮想空間での仮想カメラの視点位置、視線方向(位置、姿勢)が変化するように、仮想カメラを設定する。このようにすることで、ユーザの視点情報のトラッキング情報に基づいて、ユーザの視点変化に追従するように仮想カメラを制御できる。 For example, the virtual camera control unit 114 controls the virtual camera so as to follow the change in the user's viewpoint based on the tracking information of the user's viewpoint information acquired by the viewpoint tracking. For example, in the present embodiment, tracking information (viewpoint tracking information) of viewpoint information that is at least one of the user's viewpoint position and line-of-sight direction is acquired. This tracking information can be obtained, for example, by performing tracking processing of HMD200. Then, the virtual camera control unit 114 changes the viewpoint position and the line-of-sight direction of the virtual camera based on the acquired tracking information (information on at least one of the user's viewpoint position and the line-of-sight direction). For example, the virtual camera control unit 114 virtually changes the viewpoint position and line-of-sight direction (position, posture) of the virtual camera in the virtual space according to changes in the user's viewpoint position and line-of-sight direction in the real space. Set the camera. By doing so, the virtual camera can be controlled so as to follow the change in the viewpoint of the user based on the tracking information of the viewpoint information of the user.

ゲーム処理部115(ゲーム処理のプログラムモジュール)は、ユーザがゲームをプレイするための種々のゲーム処理を行う。別の言い方をすれば、ゲーム処理部115(シミュレーション処理部)は、ユーザが仮想現実(バーチャルリアリティ)を体験するための種々のシミュレーション処理を実行する。ゲーム処理は、例えば、ゲーム開始条件が満たされた場合にゲームを開始する処理、開始したゲームを進行させる処理、ゲーム終了条件が満たされた場合にゲームを終了する処理、或いはゲーム成績を演算する処理などである。 The game processing unit 115 (game processing program module) performs various game processing for the user to play the game. In other words, the game processing unit 115 (simulation processing unit) executes various simulation processes for the user to experience virtual reality (virtual reality). The game process calculates, for example, a process of starting a game when the game start condition is satisfied, a process of advancing the started game, a process of ending the game when the game end condition is satisfied, or a game result. Processing etc.

イベント処理部116(イベント処理のプログラムモジュール)はイベントに関する各種の処理を行う。報知処理部117(報知処理のプログラムモジュール)は各種の報知処理を行う。例えばユーザに対する警告の報知処理などを行う。報知処理は、例えば画像や音による報知処理であってもよいし、振動デバイスや音響や空気砲などの体感装置を用いた報知処理であってもよい。 The event processing unit 116 (event processing program module) performs various processes related to the event. The notification processing unit 117 (program module for notification processing) performs various notification processes. For example, it performs warning processing for the user. The notification process may be, for example, a notification process using an image or sound, or may be a notification process using a vibration device or a sensory device such as a sound or an air cannon.

表示処理部120(表示処理のプログラムモジュール)は、ゲーム画像(シミュレーション画像)の表示処理を行う。例えば処理部100で行われる種々の処理(ゲーム処理、シミュレーション処理)の結果に基づいて描画処理を行い、これにより画像を生成し、表示部220に表示する。具体的には、座標変換(ワールド座標変換、カメラ座標変換)、クリッピング処理、透視変換、或いは光源処理等のジオメトリ処理が行われ、その処理結果に基づいて、描画データ(プリミティブ面の頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)が作成される。そして、この描画データ(プリミティブ面データ)に基づいて、透視変換後(ジオメトリ処理後)のオブジェクト(1又は複数プリミティブ面)を、描画バッファ178(フレームバッファ、ワークバッファ等のピクセル単位で画像情報を記憶できるバッファ)に描画する。これにより、仮想空間において仮想カメラ(所与の視点。左眼用、右眼用の第1、第2の視点)から見える画像が生成される。なお、表示処理部120で行われる描画処理は、頂点シェーダ処理やピクセルシェーダ処理等により実現することができる。 The display processing unit 120 (display processing program module) performs display processing of a game image (simulation image). For example, drawing processing is performed based on the results of various processing (game processing, simulation processing) performed by the processing unit 100, an image is generated by this, and the image is displayed on the display unit 220. Specifically, geometry processing such as coordinate conversion (world coordinate conversion, camera coordinate conversion), clipping processing, perspective conversion, or light source processing is performed, and drawing data (positions of vertices on the primitive surface) is performed based on the processing results. Coordinates, texture coordinates, color data, normal vector or α value, etc.) are created. Then, based on this drawing data (primitive surface data), the object (one or a plurality of primitive surfaces) after perspective transformation (after geometry processing) is subjected to image information in pixel units such as a drawing buffer 178 (frame buffer, work buffer, etc.). Draw in a memorable buffer). As a result, an image seen from a virtual camera (given viewpoint. First and second viewpoints for the left eye and the right eye) is generated in the virtual space. The drawing process performed by the display processing unit 120 can be realized by a vertex shader process, a pixel shader process, or the like.

音処理部130(音処理のプログラムモジュール)は、処理部100で行われる種々の処理の結果に基づいて音処理を行う。具体的には、楽曲(音楽、BGM)、効果音、又は音声などのゲーム音を生成し、ゲーム音を音出力部192に出力させる。なお音処理部130の音処理の一部(例えば3次元音響処理)を、HMD200の処理部240により実現してもよい。 The sound processing unit 130 (sound processing program module) performs sound processing based on the results of various processing performed by the processing unit 100. Specifically, a game sound such as a musical piece (music, BGM), a sound effect, or a voice is generated, and the game sound is output to the sound output unit 192. A part of the sound processing of the sound processing unit 130 (for example, three-dimensional sound processing) may be realized by the processing unit 240 of the HMD 200.

出力処理部140は各種の情報の出力処理を行う。例えば出力処理部140は、記憶部170に情報を書き込む処理や、通信部196を介して情報を送信する処理を、出力処理として行う。例えば出力処理部140は、書き込み命令で指定された情報を、記憶部170に書き込む処理や、外部の装置(サーバ等)に対してネットワークを介して情報を送信する処理を行う。送信処理は、通信部196に情報の送信を指示したり、送信する情報を通信部196に指示する処理などである。 The output processing unit 140 performs output processing of various information. For example, the output processing unit 140 performs a process of writing information to the storage unit 170 and a process of transmitting information via the communication unit 196 as an output process. For example, the output processing unit 140 performs a process of writing the information specified by the write command to the storage unit 170 and a process of transmitting the information to an external device (server or the like) via the network. The transmission process is a process of instructing the communication unit 196 to transmit information, instructing the communication unit 196 to transmit information, and the like.

そして本実施形態のシミュレーションシステムは、図1に示すように、仮想空間設定部112と、移動体処理部113と、イベント処理部116と、表示処理部120を含む。 As shown in FIG. 1, the simulation system of the present embodiment includes a virtual space setting unit 112, a moving body processing unit 113, an event processing unit 116, and a display processing unit 120.

仮想空間設定部112は、仮想空間の設定処理を行う。例えばユーザに対応するユーザ移動体のオブジェクトや、敵等の相手の移動体のオブジェクトや、マップや背景を構成するオブジェクトを、仮想空間に配置設定する処理を行う。ユーザに対応するユーザ移動体は、例えばユーザが操作部160により操作する移動体や、実空間でのユーザの移動に追従して仮想空間において移動する移動体である。このユーザ移動体は、例えばキャラクタやアバターと呼ばれるものである。ユーザ移動体は、ユーザが搭乗するロボット等の搭乗移動体であってもよい。またユーザ移動体は、その画像が表示される表示物であってもよいし、画像が表示されない仮想的なものであってもよい。例えば仮想空間の画像として一人称視点の画像が表示される場合等には、ユーザ移動体は非表示であってもよいし、ユーザ移動体の一部の部位(例えば手、胸又は顔等)だけが表示されるものであってもよい。 The virtual space setting unit 112 performs the virtual space setting process. For example, a process is performed in which an object of a user moving body corresponding to a user, an object of an opponent's moving body such as an enemy, and an object constituting a map or a background are arranged and set in a virtual space. The user moving body corresponding to the user is, for example, a moving body operated by the user by the operation unit 160 or a moving body that moves in the virtual space following the movement of the user in the real space. This user moving body is called, for example, a character or an avatar. The user moving body may be a boarding moving body such as a robot on which the user is boarding. Further, the user moving body may be a display object on which the image is displayed, or a virtual object on which the image is not displayed. For example, when the image of the first person viewpoint is displayed as the image of the virtual space, the user moving body may be hidden, or only a part of the user moving body (for example, hand, chest, face, etc.). May be displayed.

移動体処理部113は、ユーザが移動可能な実空間のユーザに対応する仮想空間のユーザ移動体(仮想カメラ)を、仮想空間において移動させる処理を行う。例えば、ユーザが操作部160により入力した操作情報に基づいて、仮想空間においてユーザ移動体を移動させる。或いは、情報取得部111が、実空間でのユーザの位置情報を取得する場合には、移動体処理部113は、取得された位置情報(視点トラッキング情報)に基づいて、仮想空間においてユーザ移動体を移動させる処理を行う。例えば、実空間でのユーザの移動に追従して移動するように、仮想空間においてユーザ移動体を移動させる。例えばユーザ移動体の移動速度や移動加速度に基づいて、ユーザ移動体の位置等をフレーム毎に更新する処理を行って、ユーザ移動体を仮想空間(仮想フィールド)において移動させる。 The moving body processing unit 113 performs a process of moving a user moving body (virtual camera) in the virtual space corresponding to the user in the real space in which the user can move in the virtual space. For example, the user moving body is moved in the virtual space based on the operation information input by the user by the operation unit 160. Alternatively, when the information acquisition unit 111 acquires the user's position information in the real space, the moving body processing unit 113 uses the acquired position information (viewpoint tracking information) to obtain the user moving object in the virtual space. Performs the process of moving. For example, the user moving body is moved in the virtual space so as to follow the movement of the user in the real space. For example, the position of the user moving body is updated for each frame based on the moving speed and the moving acceleration of the user moving body, and the user moving body is moved in the virtual space (virtual field).

イベント処理部116はイベントの処理を行う。例えばユーザに対応する仮想空間のユーザ移動体について発生する各種のイベントの処理を行う。 The event processing unit 116 processes the event. For example, it processes various events that occur in a user moving body in a virtual space corresponding to a user.

表示処理部120(描画処理部)は、仮想空間の画像(オブジェクト)の描画処理を行う。例えば表示処理部120は、仮想空間において仮想カメラ(所与の視点)から見える画像として、ユーザが視界を覆うように装着するHMD200の表示画像を生成する。例えばユーザキャラクタ(アバター)等のユーザ移動体の視点(一人称視点)に設定された仮想カメラから見える画像の描画処理を行う。或いは、ユーザ移動体に追従する視点(三人称視点)に設定された仮想カメラから見える画像の描画処理を行う。生成される画像は、例えば左眼用画像、右眼用画像などの立体視用の画像であることが望ましい。 The display processing unit 120 (drawing processing unit) performs drawing processing of an image (object) in the virtual space. For example, the display processing unit 120 generates a display image of the HMD 200 that the user wears so as to cover the field of view as an image that can be seen from a virtual camera (given viewpoint) in the virtual space. For example, the drawing process of the image seen from the virtual camera set to the viewpoint (first person viewpoint) of the user moving body such as the user character (avatar) is performed. Alternatively, the drawing process of the image seen from the virtual camera set to the viewpoint (third person viewpoint) following the moving body of the user is performed. It is desirable that the generated image is an image for stereoscopic viewing such as an image for the left eye and an image for the right eye.

そしてイベント処理部116は、ユーザ移動体の状態が所与の状態へと変化するイベントが発生したか否かを判断する。ユーザ移動体の状態は例えばユーザ移動体のサイズの状態であり、別の言い方をすればユーザ移動体の視点(視点位置、視線方向)の状態である。この場合には、発生するイベントは、ユーザ移動体のサイズが所与のサイズに変化するサイズ変化イベント(視点状態変化イベント)である。例えばイベントは、ユーザ移動体のサイズが小さくなったり、或いは大きくなったりするイベントである。なお、イベントは、ユーザ移動体の形状や外観などが変化するイベントや、ユーザ移動体の周囲の環境状況が変化するイベントであってもよい。 Then, the event processing unit 116 determines whether or not an event has occurred in which the state of the user moving body changes to a given state. The state of the user moving body is, for example, the state of the size of the user moving body, in other words, the state of the viewpoint (viewpoint position, line-of-sight direction) of the user moving body. In this case, the event that occurs is a size change event (viewpoint state change event) in which the size of the user moving body changes to a given size. For example, an event is an event in which the size of a user moving body becomes smaller or larger. The event may be an event in which the shape or appearance of the user moving body changes, or an event in which the environmental condition around the user moving body changes.

そして仮想空間設定部112は、イベントが発生すると判断された場合に、実空間での座標のスケールと仮想空間での座標のスケールとの対応関係を切り替える切り替え処理を行う。例えば実空間の座標系と仮想空間の座標系を対応づける際に縮小又は拡大のスケール変換を行う。具体的には仮想空間設定部112は、イベントが発生すると判断された場合に、実空間での位置座標についてのスケールと仮想空間での位置座標についてのスケールとの対応関係を切り替える。或いは実空間の座標軸のスケールと仮想空間の座標軸のスケールとの対応関係を切り替える。座標のスケールは、例えば座標空間(実空間、仮想空間)での長さ(位置座標又は座標軸)の尺度(目盛り)を表すものである。実空間での座標のスケールと仮想空間での座標のスケールとの対応関係は、例えば実空間での1mの長さが、仮想空間においてどのような長さに対応するかについての関係である。例えば座標のスケールの第1の対応関係(通常の対応関係)では、実空間での1mの長さが、仮想空間においても1m(略1m)になる。一方、座標のスケールの第2の対応関係では、実空間での1mの長さが、仮想空間では1mよりも短くなる(例えば10cm)。座標のスケールの第3の対応関係では、実空間での1mの長さが、仮想空間では1mよりも長くなる(例えば10m)。仮想空間設定部112は、ユーザ移動体の状態が所与の状態へと変化するイベントが発生すると、実空間での座標のスケールと仮想空間での座標のスケールとの対応関係を、例えば第1の対応関係から第2の対応関係に切り替えたり、第1の対応関係から第3の対応関係に切り替えたり、第2の対応関係から第3の対応関係に切り替える。 Then, when it is determined that an event occurs, the virtual space setting unit 112 performs a switching process for switching the correspondence between the coordinate scale in the real space and the coordinate scale in the virtual space. For example, when associating the coordinate system of the real space with the coordinate system of the virtual space, the scale conversion of reduction or enlargement is performed. Specifically, when it is determined that an event occurs, the virtual space setting unit 112 switches the correspondence between the scale for the position coordinates in the real space and the scale for the position coordinates in the virtual space. Alternatively, the correspondence between the scale of the axis in the real space and the scale of the axis in the virtual space is switched. The coordinate scale represents, for example, a scale (scale) of a length (positional coordinate or coordinate axis) in a coordinate space (real space, virtual space). The correspondence between the coordinate scale in the real space and the coordinate scale in the virtual space is, for example, the relationship between the length of 1 m in the real space and the length in the virtual space. For example, in the first correspondence (normal correspondence) of the coordinate scale, the length of 1 m in the real space becomes 1 m (approximately 1 m) in the virtual space. On the other hand, in the second correspondence of the coordinate scales, the length of 1 m in the real space is shorter than 1 m in the virtual space (for example, 10 cm). In the third correspondence of the coordinate scales, the length of 1 m in real space is longer than 1 m in virtual space (eg 10 m). When an event occurs in which the state of the user moving body changes to a given state, the virtual space setting unit 112 sets the correspondence between the coordinate scale in the real space and the coordinate scale in the virtual space, for example, first. The correspondence is switched from the second correspondence to the second correspondence, the first correspondence is switched to the third correspondence, and the second correspondence is switched to the third correspondence.

具体的には仮想空間設定部112は、イベントが発生すると判断された場合は、ユーザ移動体のローカル座標系から仮想空間のワールド座標系への座標変換の際に縮小又は拡大のスケール変換を行う。例えばユーザ移動体のローカル座標系を仮想空間のワールド座標系に対応づける際に縮小又は拡大のスケール変換を行う。これによりユーザ移動体に対応するオブジェクト(キャラクタオブジェクト、HMDオブジェクト)を縮小又は拡大するスケール変換を行ったり、当該オブジェクトの移動距離を縮小又は拡大するスケール変換を行うことが可能になる。ローカル座標系からワールド座標系への座標変換(モデリング変換)を行うことで、ユーザ移動体に対応するオブジェクトについての位置座標をローカル座標系の位置座標からワールド座標系への位置座標に変換できる。スケール変換は、例えば位置座標にスケール係数を乗算する変換処理である。 Specifically, when it is determined that an event occurs, the virtual space setting unit 112 performs scale conversion of reduction or enlargement at the time of coordinate conversion from the local coordinate system of the user moving body to the world coordinate system of the virtual space. .. For example, when the local coordinate system of the user moving body is associated with the world coordinate system of the virtual space, the scale conversion of reduction or enlargement is performed. This makes it possible to perform scale conversion for reducing or enlarging the object (character object, HMD object) corresponding to the user moving object, or performing scale conversion for reducing or enlarging the moving distance of the object. By performing coordinate conversion (modeling conversion) from the local coordinate system to the world coordinate system, the position coordinates of the object corresponding to the user moving object can be converted from the position coordinates of the local coordinate system to the position coordinates to the world coordinate system. The scale conversion is, for example, a conversion process in which the position coordinates are multiplied by the scale coefficient.

例えば仮想空間設定部112は、ユーザの左眼の視点に対応する左眼用の仮想カメラと、ユーザの右眼の視点に対応する右眼用の仮想カメラを、仮想空間に配置設定する。実空間のHMD200に対応する仮想空間のHMDオブジェクトは、これらの左眼用の仮想カメラと右眼用の仮想カメラにより構成されるオブジェクトである。このHMDオブジェクトは、上述したユーザ移動体に対応するオブジェクトである。仮想空間設定部112は、このHMDオブジェクトを縮小又は拡大するスケーリング変換を行う。これによりHMD200を装着したユーザは、あたかも自分自身のサイズが小さくなったり或いは大きくなったかのような仮想現実を体験できるようになる。例えば仮想空間設定部112は、上述のスケール変換により、実空間のユーザの左眼、右眼の視点の位置座標のスケールと、仮想空間の左眼用、右眼用の仮想カメラの位置座標のスケールとの対応関係を切り替える。例えば通常の対応関係である第1の対応関係では、ユーザの左眼、右眼の視点の位置座標のスケールと、左眼用、右眼用の仮想カメラの位置座標のスケールは同じになっている。そして仮想空間設定部112は、イベントが発生すると、この第1の対応関係から、左眼用、右眼用の仮想カメラの位置が低くなり、左眼用、右眼用の仮想カメラ間の距離が短くなる第2の対応関係に切り替える。こうすることで、ユーザ移動体のサイズが小さくなったときに見える画像を、HMD200の表示画像として生成できるようになる。或いは、仮想空間設定部112は、イベントが発生すると、この第1の対応関係から、左眼用、右眼用の仮想カメラの位置が高くなり、左眼用、右眼用の仮想カメラ間の距離が長くなる第3の対応関係に切り替える。こうすることで、ユーザ移動体のサイズが大きくなったときに見える画像を、HMD200の表示画像として生成できるようになる。 For example, the virtual space setting unit 112 arranges and sets a virtual camera for the left eye corresponding to the viewpoint of the user's left eye and a virtual camera for the right eye corresponding to the viewpoint of the user's right eye in the virtual space. The HMD object in the virtual space corresponding to the HMD 200 in the real space is an object composed of the virtual camera for the left eye and the virtual camera for the right eye. This HMD object is an object corresponding to the above-mentioned user moving body. The virtual space setting unit 112 performs a scaling conversion that reduces or enlarges the HMD object. As a result, the user wearing the HMD200 can experience virtual reality as if his / her own size became smaller or larger. For example, the virtual space setting unit 112 uses the scale conversion described above to scale the position coordinates of the viewpoints of the user's left eye and right eye in the real space, and the position coordinates of the virtual cameras for the left eye and the right eye in the virtual space. Switch the correspondence with the scale. For example, in the first correspondence, which is a normal correspondence, the scale of the position coordinates of the viewpoints of the user's left eye and right eye and the scale of the position coordinates of the virtual cameras for the left eye and the right eye are the same. There is. Then, when an event occurs, the virtual space setting unit 112 lowers the positions of the virtual cameras for the left eye and the right eye due to this first correspondence, and the distance between the virtual cameras for the left eye and the right eye. Switch to the second correspondence that shortens. By doing so, an image that can be seen when the size of the user moving body is reduced can be generated as a display image of the HMD 200. Alternatively, when an event occurs, the virtual space setting unit 112 raises the positions of the virtual cameras for the left eye and the right eye due to this first correspondence relationship, and the virtual cameras for the left eye and the right eye are located between the virtual cameras. Switch to the third correspondence, which increases the distance. By doing so, an image that can be seen when the size of the user moving body is increased can be generated as a display image of the HMD 200.

或いは仮想空間設定部112は、イベントが発生すると判断された場合は、ユーザ移動体が移動する仮想空間を、第1の仮想空間から、第1の仮想空間とは座標軸のスケールが異なる第2の仮想空間に切り替える。第1の仮想空間は、例えば実空間と同じ広さの座標空間となっている。一方、第2の仮想空間は、実空間よりも広い座標空間であったり、或いは実空間よりも狭い座標空間になる。例えば仮想空間設定部112は、イベントが発生すると判断された場合に、第1の仮想空間から、実空間よりも広い座標空間である第2の仮想空間に切り替える。この際にユーザ移動体のサイズについては変化させない。こうすることで、第2の仮想空間に対するユーザ移動体の相対的なサイズが小さくなるため、ユーザ移動体のサイズが小さくなったときに見える画像を、HMD200の表示画像として生成できるようになる。或いは、仮想空間設定部112は、イベントが発生すると判断された場合に、第1の仮想空間から、実空間よりも狭い座標空間である第2の仮想空間に切り替える。この際にユーザ移動体のサイズについては変化させない。こうすることで、第2の仮想空間に対するユーザ移動体の相対的なサイズが大きくなるため、ユーザ移動体のサイズが大きくなったときに見える画像を、HMD200の表示画像として生成できるようになる。 Alternatively, when the virtual space setting unit 112 determines that an event occurs, the virtual space in which the user moving body moves is moved from the first virtual space to a second virtual space whose coordinate axis scale is different from that of the first virtual space. Switch to virtual space. The first virtual space is, for example, a coordinate space having the same size as the real space. On the other hand, the second virtual space is a coordinate space wider than the real space or a coordinate space narrower than the real space. For example, when it is determined that an event occurs, the virtual space setting unit 112 switches from the first virtual space to the second virtual space, which is a coordinate space wider than the real space. At this time, the size of the user moving body is not changed. By doing so, the relative size of the user moving body with respect to the second virtual space becomes small, so that an image that can be seen when the size of the user moving body becomes small can be generated as a display image of the HMD 200. Alternatively, when it is determined that an event occurs, the virtual space setting unit 112 switches from the first virtual space to the second virtual space, which is a coordinate space narrower than the real space. At this time, the size of the user moving body is not changed. By doing so, the relative size of the user moving body with respect to the second virtual space becomes large, so that an image that can be seen when the size of the user moving body becomes large can be generated as a display image of the HMD 200.

また仮想空間設定部112は、イベントとして、ユーザ移動体のサイズを変化させるイベントが発生した場合に、上記の切り替え処理を行う。例えば仮想空間設定部112は、ユーザ移動体のサイズを小さいサイズに変化させるイベントが発生した場合に、実空間での座標のスケールと仮想空間での座標のスケールとの対応関係を切り替える処理を行う。例えば実空間での座標のスケールと仮想空間での座標のスケールとの対応関係を、上述の第1の対応関係から第2の対応関係に切り替える。或いは仮想空間設定部112は、ユーザ移動体のサイズを大きいサイズに変化させるイベントが発生した場合に、実空間での座標のスケールと仮想空間での座標のスケールとの対応関係を切り替える処理を行う。例えば実空間での座標のスケールと仮想空間での座標のスケールとの対応関係を、上述の第1の対応関係から第3の対応関係に切り替える。 Further, the virtual space setting unit 112 performs the above switching process when an event that changes the size of the user moving body occurs as an event. For example, the virtual space setting unit 112 performs a process of switching the correspondence between the coordinate scale in the real space and the coordinate scale in the virtual space when an event that changes the size of the user moving body to a small size occurs. .. For example, the correspondence between the coordinate scale in the real space and the coordinate scale in the virtual space is switched from the above-mentioned first correspondence to the second correspondence. Alternatively, the virtual space setting unit 112 performs a process of switching the correspondence between the coordinate scale in the real space and the coordinate scale in the virtual space when an event that changes the size of the user moving body to a large size occurs. .. For example, the correspondence between the coordinate scale in the real space and the coordinate scale in the virtual space is switched from the above-mentioned first correspondence to the third correspondence.

なおユーザ移動体の状態が所与の状態へと変化するイベントとしては、ユーザ移動体のサイズの変更イベント、ユーザ移動体の変形イベント、異なる種類の移動体への変更イベント(変身)、或いはユーザ移動体の視点や視線の変更イベントなどがある。 The event in which the state of the user moving body changes to a given state includes a changing event of the size of the user moving body, a transformation event of the user moving body, a changing event (transformation) to a different type of moving body, or a user. There are events such as changing the viewpoint and line of sight of moving objects.

またイベント処理部116は、ユーザの行動情報、他のユーザの行動情報、及びゲームの状況の少なくとも1つに基づいて、イベントが発生したか否かを判断する。ユーザや他のユーザの行動情報は、例えばユーザや他のユーザが操作部160を操作することによる操作情報や、ユーザや他のユーザの部位の動きを検出するセンサからの検出情報などに基づき取得できる。例えばイベント処理部116は、ユーザが、操作部160であるゲームコントローラや手等の部位を、自身の方に向けたり、他のユーザが、ゲームコントローラや手等の部位を、ユーザの方に向けたことが検出された場合に、イベントが発生したと判断する。或いは、イベント処理部116は、ゲーム状況に基づいてイベントが発生したか否かを判断する。ゲーム状況は、例えばユーザ移動体の行動の状況、ユーザ移動体の環境の状況(ユーザ移動体が移動するマップの状況、ユーザ移動体の周囲の状況、或いは時刻等の時間情報の状況)、或いはゲームの進行状況などである。例えばイベント処理部116は、ユーザ移動体のサイズを第1のサイズから第2のサイズに変化させた後、実空間でのユーザの位置と仮想空間でのユーザ移動体の対応位置との間にズレが生じると判定した場合に、ユーザ移動体のサイズを第2のサイズから元の第1のサイズに戻すイベントを発生させる。 Further, the event processing unit 116 determines whether or not an event has occurred based on at least one of the user's behavior information, the behavior information of another user, and the situation of the game. The behavior information of the user or another user is acquired based on, for example, the operation information when the user or another user operates the operation unit 160, or the detection information from the sensor which detects the movement of the user or another user's part. can. For example, in the event processing unit 116, the user points a part such as a game controller or a hand, which is an operation unit 160, toward himself, or another user points a part such as a game controller or a hand toward the user. If it is detected, it is determined that an event has occurred. Alternatively, the event processing unit 116 determines whether or not an event has occurred based on the game situation. The game status is, for example, the behavior of the user moving body, the environment of the user moving body (the situation of the map on which the user moving body moves, the situation around the user moving body, or the situation of time information such as time), or The progress of the game, etc. For example, the event processing unit 116 changes the size of the user moving body from the first size to the second size, and then between the user's position in the real space and the corresponding position of the user moving body in the virtual space. When it is determined that the deviation occurs, an event is generated to return the size of the user moving body from the second size to the original first size.

またイベント処理部116は、イベントの発生により、仮想空間でのユーザ移動体の位置と、実空間でのユーザの対応位置との間にズレが生じると判定した場合に、仮想空間でのユーザ移動体の位置を修正しながら、ユーザ移動体の状態を所与の状態に変化させる。実空間でのユーザの対応位置は、仮想空間でのユーザ移動体の位置に対応する位置(一対一に対応する位置)である。例えばユーザ移動体のサイズ等を変化させるイベントを発生すると、仮想空間でのユーザ移動体の位置と、実空間でのユーザの対応位置との間にズレが生じてしまう場合がある。イベント処理部116は、このようなズレが生じると判定した場合に、仮想空間でのユーザ移動体の位置を修正する。例えばユーザ移動体の位置が実空間でのユーザの対応位置に一致するように、ユーザ移動体の位置を修正する。例えばズレの所定しきい値以上である場合に、ユーザ移動体の位置の修正処理を行う。そして、このようにユーザ移動体の位置を修正して、ユーザ移動体の状態を所与の状態に変化させる。例えばユーザ移動体のサイズ等を変化させる。 Further, when the event processing unit 116 determines that the position of the user moving body in the virtual space and the corresponding position of the user in the real space are deviated due to the occurrence of the event, the user moving in the virtual space The state of the user moving body is changed to a given state while modifying the position of the body. The corresponding position of the user in the real space is a position corresponding to the position of the user moving body in the virtual space (a position corresponding to one-to-one). For example, when an event that changes the size of the user moving body is generated, a deviation may occur between the position of the user moving body in the virtual space and the corresponding position of the user in the real space. When it is determined that such a deviation occurs, the event processing unit 116 corrects the position of the user moving body in the virtual space. For example, the position of the user moving body is modified so that the position of the user moving body matches the corresponding position of the user in the real space. For example, when the deviation is equal to or greater than a predetermined threshold value, the position of the user moving body is corrected. Then, the position of the user moving body is corrected in this way to change the state of the user moving body to a given state. For example, the size of the user moving body is changed.

また表示処理部120は、ユーザ移動体の位置を修正する際に、表示画像を変化させる処理を行う。例えばユーザ移動体の位置の修正の際に、特別な画像がHMD200の表示画像として表示されるようにする。この特別な画像は、位置修正時用に用意された画像であり、仮想空間の画像に代えて表示される画像である。 Further, the display processing unit 120 performs a process of changing the display image when correcting the position of the user moving body. For example, when the position of the user moving body is corrected, a special image is displayed as a display image of the HMD 200. This special image is an image prepared for position correction, and is an image displayed in place of the image in the virtual space.

具体的には表示処理部120は、表示画像を変化させる処理として、表示画像をフェードアウトさせる処理を行う。フェードアウト処理は、表示画像である仮想空間の画像を、所定色の画像に変化させる処理である。例えばユーザ移動体の位置を修正する際に、仮想空間の画像から、所定色のフェードアウト画像に徐々に変化させる。具体的には表示処理部120は、表示画像をホワイトアウトさせる処理を行い、仮想空間の画像をホワイトアウト画像に変化させる。なおフェードアウト画像としてブラックアウト画像などの他の色の画像を用いてもよい。また表示画像をフェードアウトした後に、元の表示画像を復帰表示する際には、表示画像のフェードイン処理を行うことが望ましい。 Specifically, the display processing unit 120 performs a process of fading out the display image as a process of changing the display image. The fade-out process is a process of changing an image in virtual space, which is a display image, into an image of a predetermined color. For example, when the position of the moving body of the user is corrected, the image in the virtual space is gradually changed to a fade-out image of a predetermined color. Specifically, the display processing unit 120 performs a process of whitening out the displayed image, and changes the image in the virtual space into a whiteout image. An image of another color such as a blackout image may be used as the fade-out image. Further, when the original display image is restored and displayed after the display image is faded out, it is desirable to perform the fade-in process of the display image.

また表示処理部120は、表示画像を変化させる処理として、仮想空間のオブジェクトを、仮想カメラを覆う位置に表示する処理を行ってもよい。例えば位置修正時用に用意されたオブジェクトを、ユーザ移動体(ユーザ)の視点に対応する仮想カメラを覆う位置に配置して表示する。そして仮想空間の画像に代えて、当該オブジェクトの画像がHMD200に表示されるようにする。このオブジェクトは、仮想カメラの少なくとも前方方向において視界を覆うものであればよい。またオブジェクトは例えば半透明のオブジェクトであってもよい。例えばユーザ移動体の位置を修正する際に、オブジェクトを透明から徐々に半透明度を上げて、透明オブジェクトから半透明オブジェクト又は不透明オブジェクトに変化させてもよい。 Further, the display processing unit 120 may perform a process of displaying an object in the virtual space at a position covering the virtual camera as a process of changing the display image. For example, an object prepared for position correction is arranged and displayed at a position covering the virtual camera corresponding to the viewpoint of the user moving object (user). Then, instead of the image in the virtual space, the image of the object is displayed on the HMD 200. This object may cover the field of view at least in the forward direction of the virtual camera. The object may be, for example, a translucent object. For example, when modifying the position of the user moving object, the object may be changed from a transparent object to a semi-transparent object or an opaque object by gradually increasing the translucency from the transparent object.

また図1に示すように本実施形態のシミュレーションシステムは情報取得部111を含む。情報取得部111は、実空間でのユーザの視点情報(視点位置や視線方向)のトラッキング情報を取得する。そして表示処理部120は、視点情報のトラッキング情報に基づきユーザの視点変化に追従するように制御される仮想カメラから見える画像を、HMD200の表示画像として生成する。例えば情報取得部111は、ユーザの視点位置、視線方向の少なくとも1つである視点情報のトラッキング情報(視点トラッキング情報)を取得する。このトラッキング情報は、例えばHMD200のトラッキング処理を行うことで取得できる。なおトラッキング処理によりユーザの視点位置、視線方向を直接に取得するようにしてもよい。一例としては、トラッキング情報は、ユーザの初期視点位置からの視点位置の変化情報(視点位置の座標の変化値)、及び、ユーザの初期視線方向からの視線方向の変化情報(視線方向の回転軸回りでの回転角度の変化値)の少なくとも一方を含むことができる。このようなトラッキング情報が含む視点情報の変化情報に基づいて、ユーザの視点位置や視線方向(ユーザの頭部の位置、姿勢の情報)を特定できる。 Further, as shown in FIG. 1, the simulation system of the present embodiment includes the information acquisition unit 111. The information acquisition unit 111 acquires tracking information of the user's viewpoint information (viewpoint position and line-of-sight direction) in the real space. Then, the display processing unit 120 generates an image that can be seen from the virtual camera that is controlled to follow the change of the viewpoint of the user based on the tracking information of the viewpoint information as the display image of the HMD 200. For example, the information acquisition unit 111 acquires tracking information (viewpoint tracking information) of viewpoint information that is at least one of the user's viewpoint position and line-of-sight direction. This tracking information can be obtained, for example, by performing tracking processing of HMD200. The user's viewpoint position and line-of-sight direction may be directly acquired by the tracking process. As an example, the tracking information includes change information of the viewpoint position from the initial viewpoint position of the user (change value of the coordinates of the viewpoint position) and change information of the line-of-sight direction from the initial line-of-sight direction of the user (rotation axis in the line-of-sight direction). It can include at least one of (changes in rotation angle around). The user's viewpoint position and line-of-sight direction (information on the position of the user's head and posture) can be specified based on the change information of the viewpoint information included in such tracking information.

そして仮想カメラ制御部114は、取得された視点情報のトラッキング情報に基づいて仮想カメラを制御する。即ち仮想カメラ制御部114は、ユーザの視点情報のトラッキング情報に基づいて、ユーザの視点変化に追従するように仮想カメラを制御する。そして表示処理部120は、視点情報のトラッキング情報に基づき制御される仮想カメラから見える画像を、HMD200の表示画像として生成する。そして上述したように仮想空間設定部112は、イベントが発生すると判断された場合に、実空間のユーザの視点の位置座標のスケールと、仮想空間のユーザ移動体の視点に対応する仮想カメラの位置座標のスケールとの対応関係を切り替える処理を行う。そして、この切り替え処理において、視点情報のトラッキング情報に基づき求められた実空間のユーザの視点の位置座標の変換処理を行って、仮想カメラの位置座標を求めることになる。例えば実空間のユーザの視点の位置座標を小さくしたり、大きくする変換処理を行って、仮想カメラの位置座標を求める。 Then, the virtual camera control unit 114 controls the virtual camera based on the tracking information of the acquired viewpoint information. That is, the virtual camera control unit 114 controls the virtual camera so as to follow the change in the viewpoint of the user based on the tracking information of the viewpoint information of the user. Then, the display processing unit 120 generates an image that can be seen from the virtual camera controlled based on the tracking information of the viewpoint information as a display image of the HMD 200. Then, as described above, when it is determined that an event occurs, the virtual space setting unit 112 scales the position coordinates of the user's viewpoint in the real space and the position of the virtual camera corresponding to the viewpoint of the user moving body in the virtual space. Performs the process of switching the correspondence with the scale of the coordinates. Then, in this switching process, the position coordinates of the user's viewpoint in the real space obtained based on the tracking information of the viewpoint information are converted, and the position coordinates of the virtual camera are obtained. For example, the position coordinates of the virtual camera are obtained by performing a conversion process of reducing or increasing the position coordinates of the user's viewpoint in the real space.

また本実施形態では、ユーザがプレイするゲームのゲーム処理として、仮想現実のシミュレーション処理を行う。仮想現実のシミュレーション処理は、実空間での事象を仮想空間で模擬するためのシミュレーション処理であり、当該事象をユーザに仮想体験させるための処理である。例えば実空間のユーザに対応する仮想ユーザやその搭乗移動体などのユーザ移動体を、仮想空間で移動させたり、移動に伴う環境や周囲の変化をユーザに体感させるための処理を行う。 Further, in the present embodiment, virtual reality simulation processing is performed as game processing of the game played by the user. The virtual reality simulation process is a simulation process for simulating an event in a real space in a virtual space, and is a process for allowing a user to experience the event virtually. For example, a virtual user corresponding to a user in the real space and a user moving body such as a boarding moving body thereof are moved in the virtual space, and processing is performed to allow the user to experience changes in the environment and surroundings due to the movement.

なお図1の本実施形態のシミュレーションシステムの処理は、施設に設置されるPC等の処理装置、ユーザが装着する処理装置(PC)、或いはこれらの処理装置の分散処理などにより実現できる。或いは、本実施形態のシミュレーションシステムの処理を、サーバシステムと端末装置により実現してもよい。例えばサーバシステムと端末装置の分散処理などにより実現してもよい。 The processing of the simulation system of the present embodiment of FIG. 1 can be realized by a processing device such as a PC installed in a facility, a processing device (PC) worn by a user, or distributed processing of these processing devices. Alternatively, the processing of the simulation system of the present embodiment may be realized by the server system and the terminal device. For example, it may be realized by distributed processing of the server system and the terminal device.

2.トラッキング処理
次にトラッキング処理の例について説明する。図2(A)に本実施形態のシミュレーションシステムに用いられるHMD200の一例を示す。図2(A)に示すようにHMD200には複数の受光素子201、202、203(フォトダイオード)が設けられている。受光素子201、202はHMD200の前面側に設けられ、受光素子203はHMD200の右側面に設けられている。またHMDの左側面、上面等にも不図示の受光素子が設けられている。
2. Tracking process Next, an example of tracking process will be described. FIG. 2A shows an example of the HMD200 used in the simulation system of the present embodiment. As shown in FIG. 2A, the HMD 200 is provided with a plurality of light receiving elements 201, 202, 203 (photodiodes). The light receiving elements 201 and 202 are provided on the front surface side of the HMD 200, and the light receiving elements 203 are provided on the right side surface of the HMD 200. Further, a light receiving element (not shown) is also provided on the left side surface, the upper surface, and the like of the HMD.

またユーザUSは、ゲームコントローラ290を所持しており、このゲームコントローラ290にも、受光素子204、205、206(フォトダイオード)が設けられている。これらの受光素子204、205、206を用いることで、ゲームコントローラ290の位置や方向を特定できる。なお、ユーザUSの手や指の動きを、いわゆるリープモーションと呼ばれる処理により検出してもよい。例えば不図示のコントローラがHMD200等に取り付けられており、このコントローラに基づいて、手や指の動きの検出処理を実現する。このコントローラは、例えば赤外線を照射するLED等の発光部と、赤外線に照らされた手や指を撮影する複数台の赤外線カメラを有する。そして赤外線カメラの撮影画像の画像解析結果に基づいて、手や指の動きを検出する。 Further, the user US possesses a game controller 290, and the game controller 290 is also provided with light receiving elements 204, 205, 206 (photodiodes). By using these light receiving elements 204, 205, 206, the position and direction of the game controller 290 can be specified. The movement of the hand or finger of the user US may be detected by a process called so-called leap motion. For example, a controller (not shown) is attached to the HMD200 or the like, and based on this controller, a process of detecting the movement of a hand or a finger is realized. This controller has, for example, a light emitting unit such as an LED that irradiates infrared rays, and a plurality of infrared cameras that photograph hands and fingers illuminated by infrared rays. Then, the movement of the hand or finger is detected based on the image analysis result of the image taken by the infrared camera.

またHMD200には、HMD200を装着するためのヘッドバンド260や、ヘッドホン270を接続するためのヘッドホン端子が設けられている。これにより例えば3次元音響(3次元オーディオ)の処理が施されたゲーム音を、ユーザUSは聴くことが可能になる。なお、ユーザUSの頭部の頷き動作や首振り動作をHMD200のセンサ部210等により検出することで、ユーザUSの操作情報を入力できるようにしてもよい。 Further, the HMD 200 is provided with a headband 260 for mounting the HMD 200 and a headphone terminal for connecting the headphone 270. As a result, the user US can listen to, for example, a game sound processed by three-dimensional sound (three-dimensional audio). The operation information of the user US may be input by detecting the nodding motion and the swinging motion of the head of the user US by the sensor unit 210 or the like of the HMD 200.

またユーザUSは、不図示の処理装置(バックパックPC)を例えば背中に装着している。例えばユーザUSはジャケットを着ており、このジャケットの背面側に処理装置が取り付けられている。処理装置は例えばノート型PC等の情報処理装置により実現される。そしてこの処理装置とHMD200は不図示のケーブルにより接続されている。例えば処理装置は、HMD200に表示される画像(ゲーム画像等)の生成処理を行い、生成された画像のデータがケーブルを介してHMD200に送られ、HMD200に表示される。この処理装置は、このような画像の生成処理以外にも、本実施形態の各処理(情報取得処理、仮想空間設定処理、移動体処理、仮想カメラ制御処理、ゲーム処理、イベント処理、報知処理、表示処理又は音処理等)を行うことが可能になっている。なお、本実施形態の各処理を、施設に設置されたPC等の処理装置(不図示)により実現したり、当該処理装置と、ユーザUSが装着する処理装置の分散処理により実現してもよい。 Further, the user US wears a processing device (backpack PC) (not shown) on the back, for example. For example, the user US wears a jacket, and a processing device is attached to the back side of the jacket. The processing device is realized by an information processing device such as a notebook PC. The processing device and the HMD 200 are connected by a cable (not shown). For example, the processing device performs a process of generating an image (game image, etc.) to be displayed on the HMD 200, and the data of the generated image is sent to the HMD 200 via a cable and displayed on the HMD 200. In addition to such image generation processing, this processing device includes various processing (information acquisition processing, virtual space setting processing, moving object processing, virtual camera control processing, game processing, event processing, notification processing, etc.) of the present embodiment. Display processing, sound processing, etc.) can be performed. Each process of the present embodiment may be realized by a processing device (not shown) such as a PC installed in the facility, or may be realized by distributed processing of the processing device and the processing device worn by the user US. ..

図2(B)に示すように、シミュレーションシステムの周辺には、ベースステーション280、284が設置されている。ベースステーション280には発光素子281、282が設けられ、ベースステーション284には発光素子285、286が設けられている。発光素子281、282、285、286は、例えばレーザー(赤外線レーザー等)を出射するLEDにより実現される。ベースステーション280、284は、これら発光素子281、282、285、286を用いて、例えばレーザーを放射状に出射する。そして図2(A)のHMD200に設けられた受光素子201、202、203が、ベースステーション280、284からのレーザーを受光することで、HMD200のトラッキングが実現され、ユーザUSの頭の位置や向く方向(視点位置、視線方向)を検出できるようになる。またゲームコントローラ290に設けられた受光素子204、205、206がベースステーション280、284からのレーザーを受光することで、ゲームコントローラ290のトラッキングが実現され、ゲームコントローラ290の位置や向く方向を検出できるようになる。 As shown in FIG. 2B, base stations 280 and 284 are installed around the simulation system. The base station 280 is provided with light emitting elements 281 and 282, and the base station 284 is provided with light emitting elements 285 and 286. The light emitting elements 281, 282, 285, and 286 are realized by, for example, an LED that emits a laser (infrared laser or the like). The base stations 280 and 284 use these light emitting elements 281, 282, 285 and 286 to emit, for example, a laser radially. Then, the light receiving elements 201, 202, and 203 provided in the HMD 200 of FIG. 2A receive the laser from the base stations 280 and 284, so that the tracking of the HMD 200 is realized and the head position and the head of the user US are oriented. The direction (viewpoint position, line-of-sight direction) can be detected. Further, the light receiving elements 204, 205, and 206 provided in the game controller 290 receive the laser from the base stations 280 and 284, so that the tracking of the game controller 290 is realized and the position and the direction in which the game controller 290 is facing can be detected. Will be.

図3(A)にHMD200の他の例を示す。図3(A)では、HMD200に対して複数の発光素子231~236が設けられている。これらの発光素子231~236は例えばLEDなどにより実現される。発光素子231~234は、HMD200の前面側に設けられ、発光素子235や不図示の発光素子236は、背面側に設けられる。これらの発光素子231~236は、例えば可視光の帯域の光を出射(発光)する。具体的には発光素子231~236は、互いに異なる色の光を出射する。 FIG. 3A shows another example of the HMD200. In FIG. 3A, a plurality of light emitting elements 231 to 236 are provided for the HMD 200. These light emitting elements 231 to 236 are realized by, for example, LEDs. The light emitting elements 231 to 234 are provided on the front side of the HMD 200, and the light emitting element 235 and the light emitting element 236 (not shown) are provided on the back side. These light emitting elements 231 to 236 emit (emit) light in the visible light band, for example. Specifically, the light emitting elements 231 to 236 emit light of different colors from each other.

そして図3(B)に示す撮像部150を、ユーザUSの周囲の少なくとも1つの場所(例えば前方側、或いは前方側及び後方側など)に設置し、この撮像部150により、HMD200の発光素子231~236の光を撮像する。即ち、撮像部150の撮像画像には、これらの発光素子231~236のスポット光が映る。そして、この撮像画像の画像処理を行うことで、ユーザUSの頭部(HMD)のトラッキングを実現する。即ちユーザUSの頭部の3次元位置や向く方向(視点位置、視線方向)を検出する。 Then, the image pickup unit 150 shown in FIG. 3B is installed at at least one place (for example, the front side, the front side, the rear side, etc.) around the user US, and the light emitting element 231 of the HMD 200 is provided by the image pickup unit 150. The light of ~ 236 is imaged. That is, the spot light of these light emitting elements 231 to 236 is reflected in the image captured by the imaging unit 150. Then, by performing image processing of this captured image, tracking of the head (HMD) of the user US is realized. That is, the three-dimensional position and the direction (viewpoint position, line-of-sight direction) of the head of the user US are detected.

例えば図3(B)に示すように撮像部150には第1、第2のカメラ151、152が設けられており、これらの第1、第2のカメラ151、152の第1、第2の撮像画像を用いることで、ユーザUSの頭部の奥行き方向での位置等が検出可能になる。またHMD200に設けられたモーションセンサのモーション検出情報に基づいて、ユーザUSの頭部の回転角度(視線)も検出可能になっている。従って、このようなHMD200を用いることで、ユーザUSが、周囲の360度の全方向うちのどの方向を向いた場合にも、それに対応する仮想空間(仮想3次元空間)での画像(ユーザの視点に対応する仮想カメラから見える画像)を、HMD200の表示部220に表示することが可能になる。 For example, as shown in FIG. 3B, the imaging unit 150 is provided with the first and second cameras 151 and 152, and the first and second cameras 151 and 152 of these first and second cameras 151 and 152 are provided. By using the captured image, the position of the head of the user US in the depth direction can be detected. Further, the rotation angle (line of sight) of the head of the user US can be detected based on the motion detection information of the motion sensor provided in the HMD 200. Therefore, by using such an HMD200, no matter which direction the user US faces in all directions of 360 degrees around it, the image (user's) in the corresponding virtual space (virtual three-dimensional space) is used. The image seen from the virtual camera corresponding to the viewpoint) can be displayed on the display unit 220 of the HMD 200.

なお、発光素子231~236として、可視光ではなく赤外線のLEDを用いてもよい。また、例えばデプスカメラ等を用いるなどの他の手法で、ユーザの頭部の位置や動き等を検出するようにしてもよい。 Infrared LEDs may be used as the light emitting elements 231 to 236 instead of visible light. Further, the position and movement of the user's head may be detected by another method such as using a depth camera or the like.

また、ユーザの視点位置、視線方向(ユーザの位置、方向)を検出するトラッキング処理の手法は、図2(A)~図3(B)で説明した手法には限定されない。例えばHMD200に設けられたモーションセンサ等を用いて、HMD200の単体でトラッキング処理を実現してもよい。即ち、図2(B)のベースステーション280、284、図3(B)の撮像部150などの外部装置を設けることなく、トラッキング処理を実現する。或いは、公知のアイトラッキング、フェイストラッキング又はヘッドトラッキングなどの種々の視点トラッキング手法により、ユーザの視点位置、視線方向などの視点情報等を検出してもよい。 Further, the tracking processing method for detecting the user's viewpoint position and line-of-sight direction (user's position and direction) is not limited to the methods described in FIGS. 2A to 3B. For example, the tracking process may be realized by the HMD 200 alone by using a motion sensor or the like provided in the HMD 200. That is, the tracking process is realized without providing an external device such as the base station 280 and 284 of FIG. 2 (B) and the image pickup unit 150 of FIG. 3 (B). Alternatively, the viewpoint information such as the user's viewpoint position and line-of-sight direction may be detected by various viewpoint tracking methods such as known eye tracking, face tracking, and head tracking.

またHMD200として、いわゆるスマートフォンVR又はVRゴーグルと呼ばれるタイプのものを用いてもよい。このタイプのHMD200では、スマートフォンの表示部がユーザの目に対向するように、HMD200のゴーグル部の中にスマートフォンを収納する。ゴーグル部(VRゴーグル)の内側には、左眼用接眼レンズ、右眼用接眼レンズが内蔵されている。ユーザは、スマートフォンの表示部に表示された左眼用画像、右眼用画像を、各々、左眼用接眼レンズ、右眼用接眼レンズを介して見ることで、VRの立体視画像を鑑賞することができる。そしてユーザの視点位置、視線方向を特定するトラッキング処理は、スマートフォンに内蔵されるモーションセンサ(加速度センサ、ジャイロセンサ)などに基づいて実現できる。 Further, as the HMD200, a type of so-called smartphone VR or VR goggles may be used. In this type of HMD200, the smartphone is housed in the goggles portion of the HMD200 so that the display portion of the smartphone faces the user's eyes. Inside the goggles portion (VR goggles), an eyepiece for the left eye and an eyepiece for the right eye are built. The user appreciates the VR stereoscopic image by viewing the left eye image and the right eye image displayed on the display unit of the smartphone through the left eye eyepiece and the right eye eyepiece, respectively. be able to. The tracking process for specifying the user's viewpoint position and line-of-sight direction can be realized based on a motion sensor (accelerometer, gyro sensor) or the like built in the smartphone.

3.本実施形態の手法
次に本実施形態の手法について詳細に説明する。なお、以下では、ユーザに対応するユーザ移動体を、ユーザキャラクタと記載して説明を行う。また本実施形態の手法は、種々のゲーム(仮想体験ゲーム、対戦ゲーム、RPG、アクションゲーム、競争ゲーム、スポーツゲーム、ホラー体験ゲーム、電車や飛行機等の乗り物のシミュレーションゲーム、パズルゲーム、コミュニケーションゲーム、或いは音楽ゲーム等)に適用でき、ゲーム以外にも適用可能である。
3. 3. Method of this Embodiment Next, the method of this embodiment will be described in detail. In the following, the user moving body corresponding to the user will be described as a user character. Further, the methods of the present embodiment include various games (virtual experience games, battle games, RPGs, action games, competition games, sports games, horror experience games, vehicle simulation games such as trains and airplanes, puzzle games, communication games, etc. Alternatively, it can be applied to music games, etc.), and can be applied to other than games.

3.1 ゲームの説明
まず本実施形態により実現されるVR(バーチャルリアリティ)のゲームについて説明する。このゲームは、仮想空間(仮想世界)を移動可能な仮想現実の体験ゲームである。図4は本実施形態のシミュレーションシステムで用いられる部屋のプレイフィールドFLの説明図である。
3.1 Description of the game First, a VR (virtual reality) game realized by the present embodiment will be described. This game is a virtual reality experience game that allows you to move in a virtual space (virtual world). FIG. 4 is an explanatory diagram of a play field FL of a room used in the simulation system of the present embodiment.

部屋を模したプレイフィールドFL(プレイエリア、プレイ空間)には、ドアDR、机DK、本棚BSなどが配置され、壁には窓WD1、WD2が設けられている。なお本棚BS、窓WD1、WD2等は例えば壁に本棚や窓の画像を印刷することで表現してもよい。ユーザは、この部屋を模したプレイフィールドFLに入室して、VRのゲームを楽しむ。図4では、複数のユーザUS1、US2が入室しており、これらの2人のユーザUS1、US2によりVRのゲームを楽しめるようになっている。 A door DR, a desk DK, a bookshelf BS, and the like are arranged in a play field FL (play area, play space) that imitates a room, and windows WD1 and WD2 are provided on the wall. The bookshelf BS, windows WD1, WD2, etc. may be expressed by printing an image of the bookshelf or window on the wall, for example. The user enters the play field FL that imitates this room and enjoys the VR game. In FIG. 4, a plurality of users US1 and US2 are in the room, and these two users US1 and US2 can enjoy the VR game.

各ユーザUS1、US2は、例えば処理装置(バックパックPC)を背中に装着しており、この処理装置により生成された画像がHMD1、HMD2(頭部装着型表示装置)に表示される。具体的にはユーザUS1、US2はジャケットを装着しており、このジャケットに処理装置(バックパックPC)が取り付けられている。またプレイフィールドFLには、不図示の管理用の処理装置が配置されており、この管理用の処理装置により、ユーザUS1、US2が装着する処理装置間のデータの同期処理(通信処理)などが行われる。例えばユーザUS1のHMD1にユーザUS2に対応するユーザキャラクタ(広義にはユーザ移動体)を表示し、ユーザUS2のHMD2にユーザUS1に対応するユーザキャラクタを表示するための同期処理などが行われる。また部屋にはオペレータが待機しており、管理用の処理装置の操作や、ユーザUS1、US2のHMD1、HMD2やジャケットの装着の手伝いや、ゲーム進行のためのオペレーション作業や誘導作業などを行う。 Each user US1 and US2 wears, for example, a processing device (backpack PC) on their backs, and the image generated by this processing device is displayed on the HMD1 and HMD2 (head-mounted display device). Specifically, users US1 and US2 are wearing a jacket, and a processing device (backpack PC) is attached to the jacket. Further, a management processing device (not shown) is arranged in the play field FL, and the management processing device performs data synchronization processing (communication processing) between the processing devices worn by the users US1 and US2. Will be done. For example, a synchronization process for displaying a user character (in a broad sense, a user moving body) corresponding to the user US2 on the HMD1 of the user US1 and displaying the user character corresponding to the user US1 on the HMD2 of the user US2 is performed. In addition, an operator is waiting in the room to operate a processing device for management, help users US1 and US2 to attach HMD1, HMD2 and jackets, and perform operation work and guidance work for game progress.

またプレイフィールドFLの部屋には、図2(B)で説明したベースステーション280、284が設置されており、これらのベースステーション280、284を用いて、ユーザUS1、US2の位置情報(視点位置情報)や方向情報(視線方向情報)の取得が可能になっている。 Further, in the room of the play field FL, the base stations 280 and 284 described with reference to FIG. 2 (B) are installed, and the position information (viewpoint position information) of the users US1 and US2 is used by using these base stations 280 and 284. ) And direction information (line-of-sight direction information) can be acquired.

また図3のドアDRは別世界に通じるドアとなっている。例えばドアDRを開いたときに、そのドアDRの向こう側に別世界(部屋の風景とは異なる世界)が広がる。そしてドアDRをくぐって当該別世界に行くことができる仮想現実を、ユーザは体験できる。 The door DR in FIG. 3 is a door leading to another world. For example, when the door DR is opened, another world (a world different from the scenery of the room) spreads beyond the door DR. Then, the user can experience the virtual reality that can go through the door DR to the other world.

例えば図4においてユーザUS1、US2のHMD1、HMD2には、部屋に対応する仮想空間の画像が表示されている。具体的には、部屋に対応する仮想空間に、部屋に配置・設置される物体に対応するオブジェクトを配置する。例えばドアDR、机DK、本棚BS、窓WD1、WD2に対応するオブジェクトを配置する。そして、この部屋の仮想空間において、ユーザUS1、US2の視点(第1、第2の視点)に対応する仮想カメラ(第1、第2の仮想カメラ)から見える画像を生成して、HMD1、HMD2(第1、第2の表示部)に表示する。このようにすれば、HMD1、HMD2を装着して移動するユーザUS1、US2は、あたかも本物の部屋を歩き回っているような仮想現実を体験できる。 For example, in FIG. 4, the images of the virtual space corresponding to the room are displayed on the HMD1 and HMD2 of the users US1 and US2. Specifically, the object corresponding to the object arranged / installed in the room is arranged in the virtual space corresponding to the room. For example, objects corresponding to the door DR, the desk DK, the bookshelf BS, the windows WD1 and WD2 are arranged. Then, in the virtual space of this room, an image that can be seen from the virtual cameras (first and second virtual cameras) corresponding to the viewpoints (first and second viewpoints) of the users US1 and US2 is generated, and the HMD1 and HMD2 are generated. It is displayed on (first and second display units). In this way, the users US1 and US2 who move while wearing the HMD1 and HMD2 can experience the virtual reality as if they were walking around in a real room.

そして、1回目にユーザ(US1、US2)がドアDRを開いた場合には、ドアDRの向こう側は部屋のままであり、ドアDRの領域(特異点に対応する領域)には、部屋の画像が表示される。そしてユーザがドアDRを閉めた後、再度、ドアDRを開くと、ドアDRの向こう側は氷の国に変化する。即ち図5に示すように、ドアDRの領域(ドアの開口領域)には、氷の国の仮想空間(VS2)の画像が表示される。このとき、図5に示すように、ドアDRの回りには、本棚BS、窓WD1、WD2などの部屋の仮想空間(VS1)の画像が表示される。 Then, when the user (US1, US2) opens the door DR for the first time, the other side of the door DR remains a room, and the area of the door DR (the area corresponding to the singular point) is the area of the room. The image is displayed. Then, when the user closes the door DR and then opens the door DR again, the other side of the door DR changes to an ice country. That is, as shown in FIG. 5, an image of the virtual space (VS2) of the ice country is displayed in the area of the door DR (door opening area). At this time, as shown in FIG. 5, an image of a virtual space (VS1) of a room such as a bookshelf BS, windows WD1 and WD2 is displayed around the door DR.

そして例えばユーザがドアDRを通過して(特異点に対応する場所を通過して)、ドアDRの向こう側に移動すると、ユーザに対応するユーザキャラクタ(ユーザ移動体)は、部屋の仮想空間から、氷の国の仮想空間へと移動することになる。ここで、ユーザキャラクタは、実空間でのユーザの移動に伴って仮想空間で移動するキャラクタ(表示物)であり、アバターとも呼ばれる。 Then, for example, when the user passes through the door DR (passes through the place corresponding to the singular point) and moves to the other side of the door DR, the user character (user moving body) corresponding to the user moves from the virtual space of the room. , Will move to the virtual space of the land of ice. Here, the user character is a character (display object) that moves in the virtual space as the user moves in the real space, and is also called an avatar.

本実施形態では、HMDを装着するユーザの視界の全周囲に亘って、広大なVR空間が広がるようになるため、ユーザの仮想現実感を格段に向上できる。即ち、ユーザは、あたかも現実世界の部屋や氷の国にいるような仮想現実を感じることができる。そしてユーザに対応するユーザキャラクタは、仮想空間である部屋や氷の国を自由に歩き回ることができる。 In the present embodiment, since the vast VR space spreads over the entire circumference of the field of view of the user who wears the HMD, the virtual reality of the user can be remarkably improved. That is, the user can feel the virtual reality as if he / she is in a room in the real world or in an ice country. Then, the user character corresponding to the user can freely roam the room or the land of ice, which is a virtual space.

なお、本実施形態では、ユーザの実空間での位置情報を取得し、取得された位置情報に基づいてユーザキャラクタを仮想空間で移動させる場合について主に説明するが、本実施形態はこれに限定されない。例えば図1の操作部160(ゲームコントローラ等)からの操作情報等に基づいて、ユーザキャラクタを仮想空間で移動させてもよい。また、ユーザの手や指の動きは、例えばリープモーションの処理により検出される。そして、この検出結果に基づいて、ユーザに対応するユーザキャラクタの手や指の部位(パーツオブジェクト)を動かすモーション処理が行われる。これにより、ユーザは、例えばドアDRを開けるときに、自身の手や指の動きを、ユーザキャラクタの手や指の部位の動きを見ることで視覚的に認識できるようになる。 In the present embodiment, a case where the position information of the user in the real space is acquired and the user character is moved in the virtual space based on the acquired position information will be mainly described, but the present embodiment is limited to this. Not done. For example, the user character may be moved in the virtual space based on the operation information or the like from the operation unit 160 (game controller or the like) of FIG. Further, the movement of the user's hand or finger is detected by, for example, a leap motion process. Then, based on this detection result, motion processing for moving the hand or finger parts (part objects) of the user character corresponding to the user is performed. As a result, the user can visually recognize the movement of his / her hand or finger when opening the door DR, for example, by observing the movement of the part of the hand or finger of the user character.

そして本実施形態では、一方のユーザが他方のユーザに対してゲームコントローラ290を向けて所定の操作を行うことで、他方のユーザに対応する仮想空間のユーザキャラクタを小さなサイズにして、こびとのようにすることが可能になっている。例えば図6ではユーザUS2がゲームコントローラ290の先端をユーザUS1の方に向けて、ゲームコントローラ290の操作ボタン(不図示)を押している。これによりユーザUS1に対応する仮想空間のユーザキャラクタUC1(図12~図15)のサイズが縮小する。 Then, in the present embodiment, one user points the game controller 290 at the other user and performs a predetermined operation to reduce the size of the user character in the virtual space corresponding to the other user, like a dwarf. It is possible to. For example, in FIG. 6, the user US2 points the tip of the game controller 290 toward the user US1 and presses an operation button (not shown) of the game controller 290. As a result, the size of the user character UC1 (FIGS. 12 to 15) in the virtual space corresponding to the user US1 is reduced.

図9はユーザキャラクタUC1のサイズが小さくなる前において、ユーザUS1のHMD1に表示される画像の例である。ユーザUS1のHMD1には、ユーザUS2に対応するユーザキャラクタUC2やその背後のドアDRが表示されている。なお説明の簡略化のために実空間のドアと仮想空間のドアを同じ符号によりドアDRと表記する。ユーザキャラクタUC2は、ゲームコントローラ290に対応したライトLTを手に持っており、ライトLTから光RYが照射されている。この光RYを浴びるとサイズが小さくなるというゲーム設定になっている。 FIG. 9 is an example of an image displayed on the HMD1 of the user US1 before the size of the user character UC1 becomes smaller. The HMD1 of the user US1 displays the user character UC2 corresponding to the user US2 and the door DR behind the user character UC2. For the sake of simplification of the explanation, the door in the real space and the door in the virtual space are referred to as door DR by the same code. The user character UC2 has a light LT corresponding to the game controller 290 in his hand, and the light RY is emitted from the light LT. The game is set so that the size becomes smaller when exposed to this light RY.

図10はユーザキャラクタUC1のサイズが小さくなった後に、ユーザUS1のHMD1に表示される画像の例である。図10ではユーザキャラクタUC2やドアDRが図9に比べて大きく表示される。例えばユーザキャラクタUC2を、小さくなったユーザキャラクタUC1の視点から見た場合の画像が、ユーザUS1のHMD1に表示される。これにより、あたかも巨人のように見えるユーザキャラクタUC2が迫ってくるような画像を、ユーザUS1のHMD1に表示できるようになる。そして、ユーザUS1は、自身が小さくなるという不思議感と、大きさの違う相手とのやり取りを楽しめるようになる。 FIG. 10 is an example of an image displayed on the HMD1 of the user US1 after the size of the user character UC1 is reduced. In FIG. 10, the user character UC2 and the door DR are displayed larger than those in FIG. For example, an image of the user character UC2 viewed from the viewpoint of the reduced user character UC1 is displayed on the HMD1 of the user US1. As a result, an image in which the user character UC2, which looks like a giant, is approaching can be displayed on the HMD1 of the user US1. Then, the user US1 will be able to enjoy the mystery that he / she becomes smaller and the interaction with the other party of different sizes.

例えば図7は、ユーザキャラクタUC1のサイズが小さくなった後におけるユーザUS1の挙動を示す図である。ユーザUS1は、自身の視点の上側方向から迫ってくる巨大なユーザキャラクタUC2を見上げるような視線になっており、それを避けるかのように手を上方に上げている。このように本実施形態によれば迫力のある仮想現実をユーザは体験できるようになる。 For example, FIG. 7 is a diagram showing the behavior of the user US1 after the size of the user character UC1 is reduced. The user US1 has a line of sight looking up at the huge user character UC2 approaching from the upper side of his / her viewpoint, and raises his / her hand upward as if avoiding it. In this way, according to the present embodiment, the user can experience a powerful virtual reality.

図8、図11では、ユーザUS2に対応するユーザキャラクタUC2が、仮想空間のハンバーガーPAを手に持って、ユーザキャラクタUC1の方に突き出している。図11の画像に示すように、巨人のようなユーザキャラクタUC2が、大きなハンバーガーPAをユーザUS1の方に突き出して来る様子が、ユーザUS1のHMD1に表示されるようになる。例えばライトLTの光RYを照射することで、このハンバーガーPAも小さくすることができる。このように本実施形態のシミュレーションシステムによれば、ユーザUS1、US2は、一方のユーザが小さくなって、他方のユーザがそれに対して色々なイタズラをするというような、これまでにない遊びを楽しむことが可能になる。 In FIGS. 8 and 11, the user character UC2 corresponding to the user US2 holds the hamburger PA in the virtual space in his hand and protrudes toward the user character UC1. As shown in the image of FIG. 11, the appearance of the giant-like user character UC2 protruding the large hamburger PA toward the user US1 is displayed on the HMD1 of the user US1. For example, this hamburger PA can also be reduced by irradiating the light RY of the light LT. As described above, according to the simulation system of the present embodiment, the users US1 and US2 enjoy unprecedented play such that one user becomes smaller and the other user makes various mischief against it. Will be possible.

3.2 座標のスケールの切り替え処理
本実施形態では、HMDを装着したユーザが、実空間(現実世界)のフィールドを移動して行なうゲームにおいて、実空間のフィールドに対応した仮想空間を設定する。そして仮想空間内のユーザキャラクタ(アバター)の状態(環境状態)が、所与の状態(小さくなる、大きくなる)へと変化するイベント(トリガー)が発動した際に、仮想空間の座標のスケール(座標尺度、座標目盛)を切り替えるシステムを実現する。これによりライト等のアイテムを用いて物が小さくなったり大きくなったりする世界観を、分かりやすく且つ破綻なく体験できるシステムの提供が可能になる。
3.2 Coordinate scale switching process In this embodiment, in a game in which a user wearing an HMD moves a field in the real space (real world), a virtual space corresponding to the field in the real space is set. Then, when an event (trigger) that changes the state (environmental state) of the user character (avatar) in the virtual space to a given state (smaller, larger) is activated, the scale of the coordinates of the virtual space ( Realize a system to switch the coordinate scale (coordinate scale, coordinate scale). This makes it possible to provide a system that allows you to experience the world view of things becoming smaller and larger using items such as lights in an easy-to-understand manner without failure.

具体的には本実施形態では、図5、図9~図11のような仮想空間を設定し、図4、図6~図8の実空間のユーザ(US1、US2)に対応する仮想空間のユーザキャラクタ(UC1、UC2)を仮想空間において移動させる。また、この仮想空間において仮想カメラ(左眼用、右眼用の仮想カメラ)から見える画像として、ユーザが視界を覆うように装着するHMDの表示画像を生成する。そしてユーザキャラクタ(ユーザ移動体)の状態が所与の状態へと変化するイベントが発生したか否かを判断する。そしてイベント(所与の状態へと変化させるトリガー)が発生すると判断された場合に、実空間での座標のスケールと仮想空間での座標のスケールとの対応関係を切り替える処理を行う。例えば実空間の1mの座標のスケールを、仮想空間では、1mよりも小さい座標のスケールに切り替えたり、1mよりも大きい座標のスケールに切り替える。 Specifically, in the present embodiment, the virtual space as shown in FIGS. 5 and 9 to 11 is set, and the virtual space corresponding to the user (US1 and US2) in the real space shown in FIGS. 4 and 6 to 8 is set. The user characters (UC1, UC2) are moved in the virtual space. Further, as an image that can be seen from the virtual cameras (virtual cameras for the left eye and the right eye) in this virtual space, a display image of the HMD that the user wears so as to cover the field of view is generated. Then, it is determined whether or not an event has occurred in which the state of the user character (user moving body) changes to a given state. Then, when it is determined that an event (trigger to change to a given state) occurs, a process of switching the correspondence between the coordinate scale in the real space and the coordinate scale in the virtual space is performed. For example, in the virtual space, the scale of the coordinates of 1 m in the real space is switched to the scale of the coordinates smaller than 1 m, or the scale of the coordinates larger than 1 m is switched.

このようにすれば、イベントの発生によるユーザキャラクタの視点状態等の状態の変化(視点位置の変化等)を、座標のスケールの対応関係を切り替えるという簡素な処理で実現できる。そして図10、図11に示すように、ユーザキャラクタのサイズ等の状態が変化したことが反映された表示画像を、HMDに表示できるようになる。従って、イベントの発生によるユーザキャラクタの状態の変化を仮想空間の画像に反映させることができるシミュレーションシステムの提供が可能になる。 In this way, changes in the state of the user character such as the viewpoint state (changes in the viewpoint position, etc.) due to the occurrence of an event can be realized by a simple process of switching the correspondence of the coordinate scales. Then, as shown in FIGS. 10 and 11, a display image reflecting the change in the state such as the size of the user character can be displayed on the HMD. Therefore, it is possible to provide a simulation system that can reflect the change in the state of the user character due to the occurrence of an event in the image of the virtual space.

座標のスケールの対応関係の切り替え処理としては種々の処理が考えられる。例えば図12~図14では、ユーザキャラクタの状態が変化するイベントが発生すると判断された場合は、ユーザキャラクタのローカル座標系から仮想空間のワールド座標系への座標変換の際に縮小又は拡大のスケール変換を行っている。例えば、実空間のユーザの視点の位置座標のスケールと、仮想カメラの位置座標のスケールとの対応関係を切り替えている。 Various processes can be considered as the process of switching the correspondence between the scales of the coordinates. For example, in FIGS. 12 to 14, when it is determined that an event that changes the state of the user character occurs, the scale of reduction or expansion is performed when the coordinates are converted from the local coordinate system of the user character to the world coordinate system of the virtual space. The conversion is being performed. For example, the correspondence between the scale of the position coordinates of the user's viewpoint in the real space and the scale of the position coordinates of the virtual camera is switched.

図12では実空間のユーザUS1はHMD1を装着しており、その左眼の視点をVPLとし、右眼の視点をVPRとする。また仮想空間のユーザキャラクタUC1の左眼の視点に対応する左眼用の仮想カメラをVCLとし、右眼の視点に対応する右眼用の仮想カメラをVCRとする。オブジェクトHMDVは、実空間のHMD1に対応する仮想空間のHMDオブジェクト(HMDコンポーネントオブジェクト)である。オブジェクトHMDVは、左眼用の仮想カメラVCLと右眼用の仮想カメラVCRにより構成されるオブジェクトであり、ユーザキャラクタUC1に対応するオブジェクトである。本実施形態では、実空間のHMD1に対応するオブジェクトHMDVを仮想空間に配置することで、仮想カメラVCL、VCRから見える仮想空間の画像を生成している。 In FIG. 12, the user US1 in the real space is wearing the HMD1, and the viewpoint of the left eye is VPL and the viewpoint of the right eye is VPR. Further, the virtual camera for the left eye corresponding to the viewpoint of the left eye of the user character UC1 in the virtual space is referred to as a VCL, and the virtual camera for the right eye corresponding to the viewpoint of the right eye is referred to as a VCR. The object HMDV is an HMD object (HMD component object) in a virtual space corresponding to HMD1 in the real space. The object HMDV is an object composed of a virtual camera VCL for the left eye and a virtual camera VCR for the right eye, and is an object corresponding to the user character UC1. In the present embodiment, by arranging the object HMDV corresponding to the HMD1 in the real space in the virtual space, an image of the virtual space seen from the virtual cameras VCL and VCR is generated.

図12では、仮想空間の仮想カメラVCL、VCRの位置座標は、実空間の視点VPL、VPRの位置座標に対応しており、両者は例えば同じ座標になっている。また実空間のユーザUS1が距離LDだけ移動すると、仮想空間のユーザキャラクタUC1も対応する距離LDVだけ移動し、例えばLDV=LDになっている。なお、視点VPL、VPRの位置座標と仮想カメラVCL、VCRの位置座標は完全に一致している必要は必ずしもなく、ゲーム設定の調整の範囲で両者の位置座標に多少の差異(例えば10%程度の差異)があってもよい。即ち、両者の位置座標は実質的に同じであればよい。 In FIG. 12, the position coordinates of the virtual cameras VCL and VCR in the virtual space correspond to the position coordinates of the viewpoint VPL and VPR in the real space, and both have the same coordinates, for example. Further, when the user US1 in the real space moves by the distance LD, the user character UC1 in the virtual space also moves by the corresponding distance LDV, for example, LDV = LD. It should be noted that the position coordinates of the viewpoint VPL and VPR and the position coordinates of the virtual cameras VCL and VCR do not necessarily have to completely match, and there is a slight difference (for example, about 10%) between the position coordinates of the two within the adjustment range of the game settings. Difference). That is, the position coordinates of both may be substantially the same.

一方、図13ではユーザキャラクタUC1のサイズが小さくなるイベントが発生している。このようなイベントの発生時に、本実施形態では、ユーザキャラクタUC1のローカル座標系(XL、YL、ZL)から仮想空間のワールド座標系(XW、YW、ZW)への座標変換の際に縮小のスケール変換を行う。これにより、ユーザキャラクタUC1に対応するオブジェクトであるオブジェクトHMDVに対して、縮小のスケール変換が行われるようになる。即ち、図13では、図12に比べて、オブジェクトHMDVの位置が低くなり(Y座標が小さくなり)、オブジェクトHMDVを構成する仮想カメラVCL、VCR間の距離(カメラ間距離)も短くなる。オブジェクトHMDV(VCR、VCL)の位置が低くなることで、図10に示すように、下方の視点からユーザキャラクタUC2を見ているような画像が、ユーザUS1のHMD1に表示されるようになる。また仮想カメラVCL、VCR間の距離が短くなることで、実空間とは異なった奥行き感になり、小さなサイズのユーザキャラクタUC1から見える奥行き感になる。また、このようなスケール変換が行われることで、実空間のユーザUS1が距離LDだけ移動した場合に、仮想空間のユーザキャラクタUC1は、距離LDよりも短い距離LDVだけ移動し、LDV<LDになる。即ち、縮小のスケール変換が行われることで、ユーザキャラクタUC1(オブジェクトHMDV)の移動の距離LDVについても縮小されて短くなる。 On the other hand, in FIG. 13, an event occurs in which the size of the user character UC1 becomes smaller. When such an event occurs, in the present embodiment, the coordinate conversion of the user character UC1 from the local coordinate system (XL, YL, ZL) to the virtual space world coordinate system (XW, YW, ZW) is reduced. Perform scale conversion. As a result, the scale conversion of reduction is performed on the object HMDV, which is an object corresponding to the user character UC1. That is, in FIG. 13, the position of the object HMDV is lower (the Y coordinate is smaller) and the distance between the virtual cameras VCL and VCR constituting the object HMDV (distance between cameras) is also shorter than in FIG. By lowering the position of the object HMDV (VCR, VCL), as shown in FIG. 10, an image as if the user character UC2 is viewed from a lower viewpoint is displayed on the HMD1 of the user US1. Further, by shortening the distance between the virtual cameras VCL and VCR, a sense of depth different from that in the real space is obtained, and a sense of depth that can be seen from the small-sized user character UC1 is obtained. Further, by performing such scale conversion, when the user US1 in the real space moves by the distance LD, the user character UC1 in the virtual space moves by the distance LDV shorter than the distance LD, and LDV <LD. Become. That is, by performing the reduction scale conversion, the movement distance LDV of the user character UC1 (object HMDV) is also reduced and shortened.

図14ではユーザキャラクタUC1のサイズが大きくなるイベントが発生している。このようなイベントの発生時に、本実施形態では、ユーザキャラクタUC1のローカル座標系(XL、YL、ZL)から仮想空間のワールド座標系(XW、YW、ZW)への座標変換の際に拡大のスケール変換を行う。これにより、オブジェクトHMDVに対して、拡大のスケール変換が行われるようになる。即ち、図14では、図12に比べて、オブジェクトHMDVの位置が高くなり(Y座標が大きくなり)、オブジェクトHMDVを構成する仮想カメラVCL、VCR間の距離も長くなる。オブジェクトHMDV(VCR、VCL)の位置が高くなることで、上方の視点からユーザキャラクタUC2を見ているような画像が、ユーザUS1のHMD1に表示されるようになる。また仮想カメラVCL、VCR間の距離が長くなることで、実空間とは異なった奥行き感になり、大きなサイズのユーザキャラクタUC1から見える奥行き感になる。また、このようなスケール変換が行われることで、実空間のユーザUS1が距離LDだけ移動した場合に、仮想空間のユーザキャラクタUC1は、距離LDよりも長い距離LDVだけ移動し、LDV>LDになる。即ち、拡大のスケール変換が行われることで、ユーザキャラクタUC1(オブジェクトHMDV)の移動の距離LDVについても拡大されて長くなる。 In FIG. 14, an event occurs in which the size of the user character UC1 becomes large. When such an event occurs, in the present embodiment, the coordinate conversion of the user character UC1 from the local coordinate system (XL, YL, ZL) to the virtual space world coordinate system (XW, YW, ZW) is expanded. Perform scale conversion. As a result, the scale conversion of the enlargement is performed on the object HMDV. That is, in FIG. 14, the position of the object HMDV is higher (the Y coordinate is larger) and the distance between the virtual cameras VCL and VCR constituting the object HMDV is longer than that in FIG. By raising the position of the object HMDV (VCR, VCL), an image as if the user character UC2 is viewed from an upper viewpoint is displayed on the HMD1 of the user US1. Further, by increasing the distance between the virtual cameras VCL and VCR, a sense of depth different from that in the real space is obtained, and a sense of depth that can be seen from the large-sized user character UC1 is obtained. Further, by performing such scale conversion, when the user US1 in the real space moves by the distance LD, the user character UC1 in the virtual space moves by the distance LDV longer than the distance LD, and LDV> LD. Become. That is, by performing the scale conversion of the expansion, the movement distance LDV of the user character UC1 (object HMDV) is also expanded and lengthened.

このように本実施形態では、ユーザキャラクタUC1のサイズが小さくなるイベントの発生時には、ワールド座標系への座標変換の際に縮小のスケール変換を行う。例えば視点VPL、VPRの位置座標のスケールと仮想カメラVCL、VCRの位置座標のスケールの対応関係を、図12の対応関係から図13の対応関係に切り替える。一方、ユーザキャラクタUC1のサイズが大きくなるイベントの発生時には、ワールド座標系への座標変換の際に拡大のスケール変換を行う。例えば視点VPL、VPRの位置座標のスケールと仮想カメラVCL、VCRの位置座標のスケールの対応関係を、図12の対応関係から図14の対応関係に切り替える。このようにすることで、座標のスケールの対応関係の切り替え処理を、縮小又は拡大のスケール変換を行うという簡素な処理で実現して、イベントの発生によるユーザキャラクタの状態の変化をユーザに仮想体験させることが可能になる。 As described above, in the present embodiment, when an event occurs in which the size of the user character UC1 becomes small, the scale conversion of reduction is performed at the time of coordinate conversion to the world coordinate system. For example, the correspondence between the scale of the position coordinates of the viewpoint VPL and VPR and the scale of the scale of the position coordinates of the virtual camera VCL and VCR is switched from the correspondence of FIG. 12 to the correspondence of FIG. On the other hand, when an event occurs in which the size of the user character UC1 becomes large, the scale conversion of expansion is performed at the time of coordinate conversion to the world coordinate system. For example, the correspondence between the scale of the position coordinates of the viewpoint VPL and VPR and the scale of the scale of the position coordinates of the virtual camera VCL and VCR is switched from the correspondence of FIG. 12 to the correspondence of FIG. By doing so, the process of switching the correspondence between the scales of the coordinates is realized by a simple process of performing scale conversion of reduction or enlargement, and the user can virtually experience the change in the state of the user character due to the occurrence of an event. It becomes possible to make it.

図15は、座標のスケールの切り替え処理の他の例の説明図である。図15では、ユーザキャラクタの状態が変化するイベントが発生すると判断された場合に、ユーザキャラクタが移動する仮想空間を、第1の仮想空間から、第1の仮想空間とは座標軸のスケールが異なる第2の仮想空間に切り替えている。 FIG. 15 is an explanatory diagram of another example of the coordinate scale switching process. In FIG. 15, when it is determined that an event that changes the state of the user character occurs, the virtual space in which the user character moves is changed from the first virtual space to a third virtual space whose coordinate axis scale is different from that of the first virtual space. Switching to 2 virtual spaces.

具体的には図15では、イベント発生時に、第1の仮想空間VSP1から、第1の仮想空間VSP1とは座標軸のスケールが異なる第2の仮想空間VSP2に切り替えている。第1の仮想空間VSP1は、実空間RSPに対応する仮想空間であり、第1の仮想空間VSP1の座標軸のスケールは、実空間RSPの座標軸のスケールに対応しており、両者の座標軸のスケールは例えば同じになっている。これに対して第2の仮想空間VSP2の座標軸のスケールは、実空間RSPや第1の仮想空間VSP1の座標軸のスケールとは異なっており、第2の仮想空間VSP2は第1の仮想空間VSP1よりも広い仮想空間となっている。例えば第1の仮想空間VSP1のXV1軸、YV1軸、ZV1軸のスケールは、実空間RSPのX軸、Y軸、Z軸のスケールと同じになっている。これに対して、第2の仮想空間VSP2のXV2軸、YV2軸、ZV2軸のスケールは、実空間RSPのX軸、Y軸、Z軸のスケールとは異なっており、より広い座標空間を規定する座標のスケールになっている。例えば第2の仮想空間VSP2の各座標軸での1mのスケールは、第1の仮想空間VSP1の各座標軸での1mのスケールよりも長くなっている。そして第2の仮想空間VSP2に配置されるユーザキャラクタUC1以外のオブジェクトのサイズは、例えば第1の仮想空間VSP1に配置されるユーザキャラクタUC1以外のオブジェクトのサイズよりも大きくなっている。一方、ユーザキャラクタUC1のサイズは第1の仮想空間VSP1と第2の仮想空間VSP2とで同じになっている。このように第2の仮想空間VSP2を広い仮想空間にすることで、仮想空間に対するユーザキャラクタUC2のサイズが相対的に小さくなり、ユーザキャラクタUC2のサイズを小さくするイベントの実現が可能になる。 Specifically, in FIG. 15, when an event occurs, the first virtual space VSP1 is switched to the second virtual space VSP2 whose coordinate axis scale is different from that of the first virtual space VSP1. The first virtual space VSP1 is a virtual space corresponding to the real space RSP, the scale of the coordinate axes of the first virtual space VSP1 corresponds to the scale of the coordinate axes of the real space RSP, and the scales of both coordinate axes are For example, they are the same. On the other hand, the scale of the coordinate axes of the second virtual space VSP2 is different from the scale of the coordinate axes of the real space RSP and the first virtual space VSP1, and the second virtual space VSP2 is more than the first virtual space VSP1. Is also a large virtual space. For example, the scales of the XV1, YV1, and ZV1 axes of the first virtual space VSP1 are the same as the scales of the X-axis, Y-axis, and Z-axis of the real space RSP. On the other hand, the scales of the XV2 axis, YV2 axis, and ZV2 axis of the second virtual space VSP2 are different from the scales of the X-axis, Y-axis, and Z-axis of the real space RSP, and define a wider coordinate space. It is a scale of coordinates to be used. For example, the scale of 1 m at each coordinate axis of the second virtual space VSP2 is longer than the scale of 1 m at each coordinate axis of the first virtual space VSP1. The size of the object other than the user character UC1 arranged in the second virtual space VSS2 is larger than the size of the object other than the user character UC1 arranged in the first virtual space VSS1, for example. On the other hand, the size of the user character UC1 is the same in the first virtual space VSP1 and the second virtual space VSP2. By making the second virtual space VSP2 a wide virtual space in this way, the size of the user character UC2 with respect to the virtual space becomes relatively small, and it becomes possible to realize an event in which the size of the user character UC2 is reduced.

なお、ユーザキャラクタUC2のサイズを大きくするイベントの発生時には、第1の仮想空間VSP1から、第1の仮想空間VSP1よりも狭い第2の仮想空間VSP2に切り替えればよい。例えば第2の仮想空間VSP2の各座標軸での1mのスケールを、第1の仮想空間VSP1の各座標軸での1mのスケールよりも短くする。また第2の仮想空間VSP2では、第1の仮想空間VSP1に比べて、ユーザキャラクタUC2のサイズについては同じにしながら、他のオブジェクトのサイズを小さくする。 When an event that increases the size of the user character UC2 occurs, the first virtual space VSP1 may be switched to the second virtual space VSP2 that is narrower than the first virtual space VSP1. For example, the scale of 1 m at each coordinate axis of the second virtual space VSP2 is made shorter than the scale of 1 m at each coordinate axis of the first virtual space VSP1. Further, in the second virtual space VSP2, the size of the user character UC2 is the same as that of the first virtual space VSP1, but the size of other objects is reduced.

このようにすれば、座標のスケールの対応関係の切り替え処理を、仮想空間の広狭を切り替えることで実現して、イベントの発生によるユーザキャラクタの状態の変化をユーザに仮想体験させることが可能になる。 In this way, the process of switching the correspondence of the coordinate scales can be realized by switching the width of the virtual space, and the user can virtually experience the change in the state of the user character due to the occurrence of an event. ..

また本実施形態では、ユーザキャラクタのサイズを変化させるイベントが発生した場合に、図12~図15に示すような座標のスケールの対応関係の切り替え処理を行っている。これにより、ユーザキャラクタのサイズが小さくなったり大きくなったりする仮想現実を、ユーザに体感させることが可能になる。但し、座標のスケールの対応関係の切り替え処理を行うイベントとしては種々のイベントを考えることができる。例えば人間のユーザキャラクタが、変身の動作を行うことで、違う外観の超人などのキャラクタに変身するようなイベントであってもよい。或いはユーザ移動体であるロボットのキャラクタが、違う形状のロボットのキャラクタに変形するようなイベントであってもよい。或いはロボットなどの搭乗移動体に対して、仮想ユーザが搭乗することで、ユーザの目線がロボットの目線になるようなイベントであってもよい。このようにユーザ移動体の状態が所与の状態へと変化するイベントとしては種々のイベントを想定できる。 Further, in the present embodiment, when an event that changes the size of the user character occurs, the processing of switching the correspondence between the scales of the coordinates as shown in FIGS. 12 to 15 is performed. This makes it possible for the user to experience the virtual reality in which the size of the user character becomes smaller or larger. However, various events can be considered as events for switching the correspondence between the scales of the coordinates. For example, it may be an event in which a human user character transforms into a character such as a superhuman having a different appearance by performing a transformation operation. Alternatively, the event may be such that the robot character, which is a user moving body, is transformed into a robot character having a different shape. Alternatively, the event may be such that the user's line of sight becomes the robot's line of sight when the virtual user boarded the boarding moving body such as a robot. Various events can be assumed as events in which the state of the user moving body changes to a given state in this way.

また本実施形態では、ユーザの行動情報、他のユーザの行動情報、或いはゲーム状況などに基づいて、イベントが発生したか否かを判断する。 Further, in the present embodiment, it is determined whether or not an event has occurred based on the behavior information of the user, the behavior information of another user, the game situation, and the like.

例えば図16(A)では、ユーザUS1がゲームコントローラ290を自身の方に向けて、サイズ縮小のための操作ボタンを押している。ユーザUS1がこのような操作の行動を行うことで、ユーザUS1に対応するユーザキャラクタUC1のサイズが変化するイベントが発生する。つまり図16(A)では、ユーザUS1の行動情報に基づいて、イベントが発生したか否かを判断している。また図16(B)では、他のユーザUS2がユーザUS1に対してゲームコントローラ290を向けて、サイズ縮小のための操作ボタンを押している。他のユーザUS2がこのような操作の行動を行うことで、ユーザUS1に対応するユーザキャラクタUC1のサイズが変化するイベントが発生する。つまり図16(B)では、他のユーザUS2の行動情報に基づいて、イベントが発生したか否かを判断している。 For example, in FIG. 16A, the user US1 points the game controller 290 toward himself and presses an operation button for reducing the size. When the user US1 performs such an operation, an event in which the size of the user character UC1 corresponding to the user US1 changes occurs. That is, in FIG. 16A, it is determined whether or not an event has occurred based on the behavior information of the user US1. Further, in FIG. 16B, another user US2 points the game controller 290 at the user US1 and presses an operation button for reducing the size. When another user US2 performs such an operation, an event in which the size of the user character UC1 corresponding to the user US1 changes occurs. That is, in FIG. 16B, it is determined whether or not an event has occurred based on the behavior information of another user US2.

なお、イベントを発生させるユーザや他のユーザの行動は、図16(A)、図16(B)に示すようなゲームコントローラ290を用いた操作には限定されない。例えばユーザ又は他のユーザが手や顔や足などの部位を動かす行動を行ったことを、部位検出センサにより検出して、イベントを発生させる。或いは、ユーザ又は他のユーザが姿勢を変化させる行動を行ったことを、姿勢検出センサにより検出して、イベントを発生させる。或いは、ユーザや他のユーザが発話の行動を行ったことを、マイクにより検出することにより、イベントを発生させる。 The actions of the user and other users who generate the event are not limited to the operations using the game controller 290 as shown in FIGS. 16A and 16B. For example, a site detection sensor detects that a user or another user has performed an action to move a part such as a hand, face, or foot, and generates an event. Alternatively, the posture detection sensor detects that the user or another user has performed an action to change the posture, and an event is generated. Alternatively, an event is generated by detecting with the microphone that the user or another user has performed an utterance action.

また本実施形態では、ユーザキャラクタの行動状況、ユーザキャラクタの環境状況、或いはゲームの進行状況などのゲーム状況に基づいて、イベントが発生したか否かを判断してもよい。例えばユーザキャラクタが変身などの所定の行動を行った場合や、ユーザキャラクタがゲームのマップの所定の場所に来た場合に、イベントを発生させる。或いは、ユーザキャラクタの周囲が所定の状況になった場合や、ゲームの進行状況が所定の状況になった場合(例えばボス戦になった場合)に、イベントを発生させる。このように、ユーザキャラクタを所与の状態に変化させるイベントのトリガーは、ユーザ自身によるものであってもよいし、他のユーザの行動やゲーム状況(ゲーム進行上の演出)に基づく自動的なものであってもよい。 Further, in the present embodiment, it may be determined whether or not an event has occurred based on the behavioral status of the user character, the environmental status of the user character, or the game status such as the progress status of the game. For example, when the user character performs a predetermined action such as transformation, or when the user character comes to a predetermined place on the map of the game, an event is generated. Alternatively, an event is generated when the surroundings of the user character are in a predetermined situation, or when the progress of the game is in a predetermined situation (for example, in a boss battle). In this way, the trigger of the event that changes the user character to a given state may be by the user himself or herself, or automatically based on the behavior of another user or the game situation (effect in the progress of the game). It may be a thing.

このようにすれば、ユーザや他のユーザの行動やゲーム状況に応じて、ユーザキャラクタを所与の状態に変化させるイベントを発生し、そのイベントの発生によるユーザキャラクタの状態の変化を、ユーザに仮想体験させることが可能になる。 In this way, an event that changes the user character to a given state is generated according to the behavior of the user or another user or the game situation, and the change in the state of the user character due to the occurrence of the event is notified to the user. It will be possible to have a virtual experience.

3.3 位置の修正処理
また本実施形態では、イベントの発生により、仮想空間でのユーザキャラクタの位置と、実空間でのユーザの対応位置との間にズレが生じると判定した場合に、仮想空間でのユーザキャラクタの位置を修正する。そして、例えばユーザキャラクタの位置を修正しながら、ユーザキャラクタの状態を所与の状態に変化させる。
3.3 Position correction processing In addition, in the present embodiment, when it is determined that a deviation occurs between the position of the user character in the virtual space and the corresponding position of the user in the real space due to the occurrence of an event, it is virtual. Correct the position of the user character in space. Then, for example, while modifying the position of the user character, the state of the user character is changed to a given state.

例えば図17(A)では、実空間のユーザUS1がドアDRの方へと移動している。即ちユーザUS1が、位置P1から位置P2へと距離LDだけ移動している。この場合に、ユーザUS1に対応する仮想空間のユーザキャラクタUC1のサイズが変化するイベントが発生しており、ユーザキャラクタUC1は小さなサイズに変化している。そして図17(B)に示すように、実空間のユーザUS1の移動に伴って、仮想空間のユーザキャラクタUC1も位置PV1から位置PV2Eへと距離LDVだけ移動している。ところが、ユーザキャラクタUC1のサイズが小さくなるイベントが発生していると、図13で説明したように、実空間でのユーザUS1の移動の距離LDに比べて、仮想空間でのユーザキャラクタUC1の移動の距離LDVは短くなる。そして、ユーザキャラクタUC1が、短い距離LDVだけ移動して、位置PV2Eに位置している状態において、ユーザキャラクタUC1が元のサイズに戻るイベントが発生したとする。すると、図17(B)の仮想空間でのユーザキャラクタUC1の位置PV2Eは、実空間でのユーザUS1の位置P2に対応しなくなってしまい、両者の位置にズレが生じてしまう。つまり、実空間のユーザUS1は距離LDだけ移動するのに、サイズが小さくなった仮想空間のユーザキャラクタUC1は、距離LDよりも短い距離LDVしか移動しないため、このような位置のズレが生じてしまう。 For example, in FIG. 17 (A), the user US1 in the real space is moving toward the door DR. That is, the user US1 is moving from the position P1 to the position P2 by the distance LD. In this case, an event occurs in which the size of the user character UC1 in the virtual space corresponding to the user US1 changes, and the user character UC1 changes to a small size. Then, as shown in FIG. 17B, as the user US1 in the real space moves, the user character UC1 in the virtual space also moves from the position PV1 to the position PV2E by the distance LDV. However, when an event occurs in which the size of the user character UC1 becomes smaller, as described with reference to FIG. 13, the movement of the user character UC1 in the virtual space is compared with the distance LD of the movement of the user US1 in the real space. Distance LDV becomes shorter. Then, it is assumed that an event occurs in which the user character UC1 moves by a short distance LDV and is located at the position PV2E, and the user character UC1 returns to the original size. Then, the position PV2E of the user character UC1 in the virtual space of FIG. 17B does not correspond to the position P2 of the user US1 in the real space, and the positions of the two are displaced from each other. That is, the user US1 in the real space moves by the distance LD, but the user character UC1 in the virtual space, which has become smaller in size, moves only the distance LDV shorter than the distance LD. It ends up.

そこで本実施形態では、仮想空間でのユーザキャラクタUC1の位置PV2Eと、実空間でのユーザUS1の対応する位置P2との間にズレが生じると判定した場合に、図17(C)に示すように、仮想空間でのユーザキャラクタUC1の位置PV2Eを修正する。具体的には、位置PV2Eから、実空間の位置P2に対応する位置PV2へと、ユーザキャラクタUC1を移動させることで、ユーザキャラクタUC1が居る位置の修正を行う。 Therefore, in the present embodiment, when it is determined that a deviation occurs between the position PV2E of the user character UC1 in the virtual space and the corresponding position P2 of the user US1 in the real space, as shown in FIG. 17 (C). In addition, the position PV2E of the user character UC1 in the virtual space is modified. Specifically, the position where the user character UC1 is present is corrected by moving the user character UC1 from the position PV2E to the position PV2 corresponding to the position P2 in the real space.

このようにすれば、イベントの発生によりユーザの位置とユーザキャラクタの位置にズレが生じるような事態が発生した場合にも、ユーザキャラクタの位置を修正することで、このような不自然な事態が発生するのを防止できるようになる。 By doing so, even if a situation occurs in which the position of the user and the position of the user character are deviated due to the occurrence of an event, such an unnatural situation can be caused by correcting the position of the user character. It will be possible to prevent it from occurring.

特に図17(A)に示すように実空間のユーザUS1がドアDRなどの物体に近づいている場合には、このような位置の修正処理は重要である。即ち、図17(A)のように実空間でユーザUS1が長い距離LDを移動してドアDRに近づいていても、図17(B)に示すように仮想空間ではユーザキャラクタUC1は短い距離LDVしか移動していない。このためHMD1の表示画像を見ているユーザUS1は、ドアDRが直ぐ手前にあることに気づかず、ドアDRにぶつかってしまうおそれがある。この点、図17(C)のような位置の修正処理を行えば、ユーザキャラクタUC1が元のサイズに戻った際に、ドアDRが直ぐ近くにあることをユーザUS1に適切に報知できるようになる。 In particular, when the user US1 in the real space is approaching an object such as a door DR as shown in FIG. 17A, such a position correction process is important. That is, even if the user US1 moves a long distance LD and approaches the door DR in the real space as shown in FIG. 17 (A), the user character UC1 is a short distance LDV in the virtual space as shown in FIG. 17 (B). Only moving. Therefore, the user US1 who is viewing the display image of the HMD1 may not notice that the door DR is immediately in front of the user and may hit the door DR. In this regard, if the position correction process as shown in FIG. 17C is performed, when the user character UC1 returns to its original size, the user US1 can be appropriately notified that the door DR is in the immediate vicinity. Become.

さて、このような位置の修正処理を行うと、ユーザキャラクタUC1が元のサイズに戻るイベントの発生時に、位置PV2Eから位置PV2に瞬間的に移動したような画像が、ユーザUS1のHMD1に表示されてしまう。このため、ユーザUS1が、このような瞬間的な移動に不自然さを感じてしまったり、場合によっては、ユーザUS1の3D酔いを引き起こしてしまうおそれがある。例えば実空間と仮想空間の間の立体感や見え方の違いで、乗り物酔いのようなものを感じてしまう。 By the way, when such a position correction process is performed, an image that momentarily moves from the position PV2E to the position PV2 is displayed on the HMD1 of the user US1 when the event that the user character UC1 returns to the original size occurs. It ends up. Therefore, the user US1 may feel unnatural in such a momentary movement, and in some cases, the user US1 may cause 3D sickness. For example, the difference in the three-dimensional appearance and appearance between the real space and the virtual space makes you feel something like motion sickness.

そこで本実施形態では、図18(A)のようにユーザキャラクタUC1の位置を修正する際に、図18(B)に示すように表示画像を変化させる処理を行う。例えばユーザUS1のHMD1に対して、位置修正時用の特別な画像を表示する。具体的には表示画像を変化させる処理として、表示画像をフェードアウトさせる処理を行う。例えば表示画像のフェードアウト処理として、表示画像の全画素の色を徐々に白色に近づけるホワイトアウト処理を行う。具体的には位置の修正処理の開始タイミングでは、通常の仮想空間画像をHMD1に表示し、所定フレーム数(1フレームは1/60秒)の経過後にホワイトアウト処理(広義には表示画像を変化させる処理)を開始する。そしてユーザキャラクタUC1が位置PV2に移動する前までに、例えば全画面をホワイトアウトする。そして、ユーザキャラクタUC1が位置PV2に移動した後に、ホワイトアウトを解除して、通常の仮想空間画像をHMD1に表示する。即ち、通常の仮想空間画像のフェードイン処理を行って、HMD1に表示する。 Therefore, in the present embodiment, when the position of the user character UC1 is corrected as shown in FIG. 18A, a process of changing the displayed image is performed as shown in FIG. 18B. For example, a special image for position correction is displayed on the HMD1 of the user US1. Specifically, as a process of changing the displayed image, a process of fading out the displayed image is performed. For example, as a fade-out process of the display image, a white-out process is performed in which the colors of all the pixels of the display image are gradually brought closer to white. Specifically, at the start timing of the position correction process, a normal virtual space image is displayed on the HMD1, and after a predetermined number of frames (1 frame is 1/60 second), a whiteout process (in a broad sense, the display image is changed). Process to make) start. Then, for example, the entire screen is whitened out before the user character UC1 moves to the position PV2. Then, after the user character UC1 moves to the position PV2, the whiteout is canceled and a normal virtual space image is displayed on the HMD1. That is, the normal virtual space image is faded in and displayed on the HMD1.

このようにすることで、ユーザUS1が瞬間的な移動に対して不自然さを感じたり、3D酔いを引き起こしてしまうような事態を防止できる。例えば位置の修正処理の開始タイミングでは通常の仮想空間画像を表示することで、位置の移動が発生したことを、ある程度、ユーザUS1に知らせることができる。そして、その後に表示画像がホワイトアウトすることで、速い速度での瞬間的な移動については、ユーザUS1に感じさせないようにすることができ、3D酔い等の発生を防止できるようになる。 By doing so, it is possible to prevent the user US1 from feeling unnatural for momentary movement or causing 3D sickness. For example, by displaying a normal virtual space image at the start timing of the position correction process, it is possible to notify the user US1 to some extent that the position has moved. Then, by whitening out the displayed image after that, it is possible to prevent the user US1 from feeling the momentary movement at a high speed, and it becomes possible to prevent the occurrence of 3D sickness or the like.

なお、位置修正時に表示画像を変化させる処理は、このようなホワイトアウト処理等のフェードアウト処理には限定されない。例えば表示画像を徐々にぼかす処理を行ったり、表示画像を徐々に半透明画像に変化させる処理を行ってもよい。或いは表示画像の輝度を徐々に低下させる処理を行ってもよい。 The process of changing the displayed image at the time of position correction is not limited to the fade-out process such as the whiteout process. For example, a process of gradually blurring the displayed image or a process of gradually changing the displayed image to a translucent image may be performed. Alternatively, a process of gradually reducing the brightness of the displayed image may be performed.

また表示画像を変化させる処理として、仮想空間のオブジェクトを、仮想カメラを覆う位置に表示する処理を行ってもよい。例えば図19(A)のようにユーザキャラクタUC1の位置を修正する際に、図19(B)に示すように、ユーザキャラクタUC1の視点に対応する仮想カメラVCL、VCRを覆う位置に、オブジェクトOBSを配置して表示する。例えばロボットの手の形のようなオブジェクトを登場させ、ユーザキャラクタUC1の視界を覆う位置に配置する。こうすることで、ユーザキャラクタUC1の位置の修正の際に、実空間のユーザUS1のHMD1には、オブジェクトOBSに覆われたような画像が表示されるようになる。従って、ユーザキャラクタUC1が瞬間的に移動してしまうような画像が表示されてしまうのを抑制でき、ユーザUS1が不自然さを感じたり、3D酔い等が発生するのを防止できるようになる。 Further, as a process of changing the displayed image, a process of displaying an object in the virtual space at a position covering the virtual camera may be performed. For example, when the position of the user character UC1 is corrected as shown in FIG. 19A, the object OBS is placed at a position covering the virtual cameras VCL and VCR corresponding to the viewpoint of the user character UC1 as shown in FIG. 19B. Is placed and displayed. For example, an object such as the shape of a robot's hand appears and is placed at a position that covers the field of view of the user character UC1. By doing so, when the position of the user character UC1 is corrected, the HMD1 of the user US1 in the real space will display an image as if it is covered with the object OBS. Therefore, it is possible to suppress the display of an image in which the user character UC1 moves momentarily, and it is possible to prevent the user US1 from feeling unnatural or causing 3D sickness.

なお、視界を覆うように配置するオブジェクトとしては、ゲーム設定やゲーム進行においてユーザUS1が不自然さを感じないようなオブジェクトを選定して、出現させればよい。但し、視界を覆うように配置するオブジェクトは、このようなオブジェクトに限定されるものではない。また、完全に不透明なオブジェクトではなく、半透明のオブジェクトをユーザキャラクタの視界を覆う位置に配置してもよい。 As the object to be arranged so as to cover the field of view, an object may be selected and made to appear so that the user US1 does not feel unnatural in the game setting or the game progress. However, the objects arranged so as to cover the field of view are not limited to such objects. Further, instead of a completely opaque object, a translucent object may be placed at a position that covers the field of view of the user character.

なお、上述のような表示画像の変化処理は、例えば図18(A)、図19(A)の位置修正処理における位置PV2EとPV2の差分が所与のしきい値を越えた場合に行えばよい。例えば位置PV2EとPV2の差分が小さい場合にも、ホワイトアウト処理等の表示画像の変化処理を行うと、頻繁にこのような表示画像の変化処理が行われてしまい、ユーザが不自然さを感じるなどの事態が生じる。この点、位置PV2EとPV2の差分が所与のしきい値を越えた場合にだけ、表示画像の変化処理を行えば、このような事態の発生を防止できる。 The change processing of the display image as described above may be performed, for example, when the difference between the positions PV2E and PV2 in the position correction processing of FIGS. 18A and 19A exceeds a given threshold value. good. For example, even when the difference between the positions PV2E and PV2 is small, if the display image change processing such as whiteout processing is performed, such display image change processing is frequently performed, and the user feels unnatural. Such a situation occurs. In this respect, the occurrence of such a situation can be prevented by performing the display image change processing only when the difference between the positions PV2E and PV2 exceeds a given threshold value.

4.詳細な処理
次に本実施形態の詳細な処理例について図20のフローチャートを用いて説明する。
4. Detailed processing Next, a detailed processing example of the present embodiment will be described with reference to the flowchart of FIG.

まず仮想空間の設定処理を行う(ステップS1)。そして設定された仮想空間において、ユーザキャラクタを移動させる処理を行う(ステップS2)。例えば実空間でのユーザの移動に連動するように仮想空間のユーザキャラクタを移動させる。 First, the virtual space setting process is performed (step S1). Then, in the set virtual space, a process of moving the user character is performed (step S2). For example, the user character in the virtual space is moved so as to be linked to the movement of the user in the real space.

次に、ユーザキャラクタの状態が変化するイベントが発生するか否かを判断する(ステップS3)。例えばユーザキャラクタのサイズを変化させるイベントが発生するか否かを判断する。そしてイベントが発生する場合(イベントのトリガーが発生した場合)には、ユーザキャラクタの位置と実空間のユーザの対応位置との間にズレが生じるか否かを判断する(ステップS4)。例えばユーザキャラクタの位置と実空間のユーザの対応位置との間のズレが、所与のしきい値を越えたか否かを判断する。そして、ズレが生じると判断した場合には、ユーザキャラクタの位置の修正処理を行う(ステップS5)。例えば図17(C)に示すようにユーザキャラクタの位置を修正する処理を開始する。そして座標のスケールの切り替え処理を行う(ステップS6)。例えばユーザキャラクタのサイズを元のサイズに戻すための座標のスケールの切り替え処理を実行する。これにより、ユーザキャラクタの位置の修正処理の際に、ユーザが不自然さを感じたり、3D酔いが発生するなどの事態を防止できるようになる。 Next, it is determined whether or not an event that changes the state of the user character occurs (step S3). For example, it is determined whether or not an event that changes the size of the user character occurs. Then, when an event occurs (when an event trigger occurs), it is determined whether or not a deviation occurs between the position of the user character and the corresponding position of the user in the real space (step S4). For example, it is determined whether or not the deviation between the position of the user character and the corresponding position of the user in the real space exceeds a given threshold value. Then, when it is determined that the deviation occurs, the position of the user character is corrected (step S5). For example, as shown in FIG. 17C, the process of correcting the position of the user character is started. Then, the coordinate scale switching process is performed (step S6). For example, the coordinate scale switching process for returning the size of the user character to the original size is executed. This makes it possible to prevent the user from feeling unnatural or causing 3D sickness during the process of correcting the position of the user character.

なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語(ユーザ移動体、表示画像の変化処理等)と共に記載された用語(ユーザキャラクタ、フェードアウト処理・ホワイトアウト処理等)は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また位置情報の取得処理、仮想空間の設定処理、移動体の移動処理、イベント処理、表示処理、ゲーム処理、報知処理、対応関係の切り替え処理等も、本実施形態で説明したものに限定されず、これらと均等な手法・処理・構成も本発明の範囲に含まれる。また本発明は種々のゲームに適用できる。また本発明は、業務用ゲーム装置、家庭用ゲーム装置、又は多数のユーザが参加する大型アトラクションシステム等の種々のシミュレーションシステムに適用できる。 Although the present embodiment has been described in detail as described above, those skilled in the art will easily understand that many modifications that do not substantially deviate from the novel matters and effects of the present invention are possible. Therefore, all such modifications are included in the scope of the present invention. For example, in the specification or drawings, terms (user character, fade-out processing, white-out processing, etc.) described at least once together with different terms (user moving body, display image change processing, etc.) in a broader sense or synonymous are described in the specification. It can be replaced with the different term anywhere in the book or drawing. Further, the position information acquisition process, the virtual space setting process, the moving body movement process, the event process, the display process, the game process, the notification process, the correspondence relationship switching process, and the like are not limited to those described in the present embodiment. , The methods, processes, and configurations equivalent to these are also included in the scope of the present invention. The present invention can also be applied to various games. The present invention can also be applied to various simulation systems such as arcade game machines, home game machines, and large-scale attraction systems in which a large number of users participate.

US1、US2、US ユーザ、UC1、UC2 ユーザキャラクタ(ユーザ移動体)、
VPL、VPR 視点、VCL、VCR 仮想カメラ、
RSP 実空間、VSP1 第1の仮想空間、VSP2 第2の仮想空間、
FL プレイフィールド、DR ドア、DK 机、BS 本棚、WD1、WD2 窓、
LT ライト、RY 光線、LD、LDV 距離、OBS オブジェクト、
P1、P2、PV1、PV2E、PV2 位置、
100 処理部、102 入力処理部、110 演算処理部、111 情報取得部、
112 仮想空間設定部、113 移動体処理部、114 仮想カメラ制御部、
115 ゲーム処理部、116 イベント処理部、117 報知処理部、
120 表示処理部、130 音処理部、140 出力処理部、
150 撮像部、151 第1のカメラ、152 第2のカメラ、160 操作部、
170 記憶部、172 オブジェクト情報記憶部、178 描画バッファ、
180 情報記憶媒体、192 音出力部、194 I/F部、
195 携帯型情報記憶媒体、196 通信部、
200 HMD(頭部装着型表示装置)、201~206 受光素子、210 センサ部、
220 表示部、231~236 発光素子、240 処理部、
260 ヘッドバンド、270 ヘッドホン、280、284 ベースステーション、
281、282、285、286 発光素子、290 ゲームコントローラ
US1, US2, US user, UC1, UC2 user character (user moving body),
VPL, VPR viewpoint, VCL, VCR virtual camera,
RSP real space, VSP1 first virtual space, VSP2 second virtual space,
FL playfield, DR door, DK desk, BS bookshelf, WD1, WD2 window,
LT light, RY ray, LD, LDV distance, OBS object,
P1, P2, PV1, PV2E, PV2 position,
100 processing unit, 102 input processing unit, 110 arithmetic processing unit, 111 information acquisition unit,
112 virtual space setting unit, 113 moving object processing unit, 114 virtual camera control unit,
115 game processing unit, 116 event processing unit, 117 notification processing unit,
120 display processing unit, 130 sound processing unit, 140 output processing unit,
150 image pickup unit, 151 first camera, 152 second camera, 160 operation unit,
170 storage, 172 object information storage, 178 drawing buffer,
180 Information storage medium, 192 sound output section, 194 I / F section,
195 Portable information storage medium, 196 Communication unit,
200 HMD (Head-mounted display), 201-206 light receiving element, 210 sensor unit,
220 display unit, 231 to 236 light emitting element, 240 processing unit,
260 headbands, 270 headphones, 280, 284 base stations,
281, 282, 285, 286 light emitting elements, 290 game controllers

Claims (10)

仮想空間の設定処理を行う仮想空間設定部と、
ユーザが移動可能な実空間の前記ユーザに対応する前記仮想空間のユーザ移動体を、前記仮想空間において移動させる処理を行う移動体処理部と、
イベントの処理を行うイベント処理部と、
前記仮想空間において仮想カメラから見える示画像を生成する表示処理部と、
を含み、
前記イベント処理部は、
前記ユーザ移動体の状態が所与の状態へと変化するイベントが発生したか否かを判断し、
前記仮想空間設定部は、
前記イベントが発生すると判断された場合に、前記実空間での座標のスケールと前記仮想空間での座標のスケールとの対応関係を切り替える切り替え処理を行い、
前記イベント処理部は、
前記ユーザが前記実空間での位置P1から位置P2に移動することにより、前記ユーザ移動体が前記仮想空間での位置PV1から位置PV2Eに移動した状態において、前記イベントが発生することで、前記実空間での前記ユーザの位置P2と、前記仮想空間での前記ユーザ移動体の位置PV2Eとの間にズレが生じると判定した場合に、前記仮想空間での前記ユーザ移動体の位置を位置PV2Eから位置PV2に修正しながら、前記ユーザ移動体の状態を前記所与の状態に変化させることを特徴とするシミュレーションシステム。
A virtual space setting unit that performs virtual space setting processing, and
A moving body processing unit that performs a process of moving a user moving body in the virtual space corresponding to the user in the real space in which the user can move in the virtual space.
The event processing unit that processes events and
A display processing unit that generates a display image that can be seen from a virtual camera in the virtual space,
Including
The event processing unit
It is determined whether or not an event has occurred in which the state of the user moving body changes to a given state.
The virtual space setting unit
When it is determined that the event occurs, a switching process is performed to switch the correspondence between the coordinate scale in the real space and the coordinate scale in the virtual space.
The event processing unit
When the user moves from the position P1 to the position P2 in the real space, the event occurs in a state where the user moving body moves from the position PV1 to the position PV2E in the virtual space. When it is determined that a deviation occurs between the position P2 of the user in the space and the position PV2E of the user moving body in the virtual space, the position of the user moving body in the virtual space is moved from the position PV2E. A simulation system characterized in that the state of the user moving body is changed to the given state while being modified to the position PV2 .
請求項1において、
前記仮想空間設定部は、
前記イベントが発生すると判断された場合は、前記ユーザ移動体のローカル座標系から前記仮想空間のワールド座標系への座標変換の際に縮小又は拡大のスケール変換を行うことを特徴とするシミュレーションシステム。
In claim 1,
The virtual space setting unit
A simulation system characterized in that when it is determined that the event occurs, scale conversion of reduction or enlargement is performed at the time of coordinate conversion from the local coordinate system of the user moving body to the world coordinate system of the virtual space.
請求項1において、
前記仮想空間設定部は、
前記イベントが発生すると判断された場合は、前記ユーザ移動体が移動する前記仮想空間を、第1の仮想空間から、前記第1の仮想空間とは座標軸のスケールが異なる第2の仮想空間に切り替えることを特徴とするシミュレーションシステム。
In claim 1,
The virtual space setting unit
When it is determined that the event occurs, the virtual space in which the user moving body moves is switched from the first virtual space to the second virtual space whose coordinate axis scale is different from that of the first virtual space. A simulation system characterized by this.
請求項1乃至3のいずれかにおいて、
前記仮想空間設定部は、
前記イベントとして、前記ユーザ移動体のサイズを変化させるイベントが発生した場合に、前記切り替え処理を行うことを特徴とするシミュレーションシステム。
In any of claims 1 to 3,
The virtual space setting unit
A simulation system characterized in that the switching process is performed when an event that changes the size of the user moving body occurs as the event.
請求項1乃至4のいずれかにおいて、
前記イベント処理部は、
前記ユーザの行動情報、他のユーザの行動情報、及びゲーム状況の少なくとも1つに基づいて、前記イベントが発生したか否かを判断することを特徴とするシミュレーションシステム。
In any of claims 1 to 4,
The event processing unit
A simulation system for determining whether or not an event has occurred based on at least one of the user's behavior information, another user's behavior information, and a game situation.
請求項1乃至5のいずれかにおいて、
前記表示処理部は、
前記ユーザ移動体の位置を修正する際に、前記表示画像を変化させる処理を行うことを
特徴とするシミュレーションシステム。
In any of claims 1 to 5 ,
The display processing unit
A simulation system characterized in that a process of changing the displayed image is performed when the position of the user moving body is corrected.
請求項において、
前記表示処理部は、
前記表示画像を変化させる処理として、前記表示画像をフェードアウトさせる処理を行うことを特徴とするシミュレーションシステム。
In claim 6 ,
The display processing unit
A simulation system characterized in that, as a process of changing the displayed image, a process of fading out the displayed image is performed.
請求項において、
前記表示処理部は、
前記表示画像を変化させる処理として、前記仮想空間のオブジェクトを、前記仮想カメラを覆う位置に表示する処理を行うことを特徴とするシミュレーションシステム。
In claim 6 ,
The display processing unit
A simulation system characterized in that, as a process of changing the displayed image, a process of displaying an object in the virtual space at a position covering the virtual camera is performed.
請求項1乃至のいずれかにおいて、
前記実空間での前記ユーザの視点情報のトラッキング情報を取得する情報取得部を含み、
前記表示処理部は、
前記視点情報の前記トラッキング情報に基づき前記ユーザの視点変化に追従するように制御される前記仮想カメラから見える画像を、前記示画像として生成することを特徴とするシミュレーションシステム。
In any of claims 1 to 8 ,
Includes an information acquisition unit that acquires tracking information of the user's viewpoint information in the real space.
The display processing unit
A simulation system characterized in that an image seen from the virtual camera, which is controlled to follow a change in the viewpoint of the user based on the tracking information of the viewpoint information, is generated as the display image.
仮想空間の設定処理を行う仮想空間設定部と、
ユーザが移動可能な実空間の前記ユーザに対応する前記仮想空間のユーザ移動体を、前記仮想空間において移動させる処理を行う移動体処理部と、
イベントの処理を行うイベント処理部と、
前記仮想空間において仮想カメラから見える画像として、前記ユーザが視界を覆うように装着する頭部装着型表示装置の表示画像を生成する表示処理部として、
コンピュータを機能させ、
前記イベント処理部は、
前記ユーザ移動体の状態が所与の状態へと変化するイベントが発生したか否かを判断し、
前記仮想空間設定部は、
前記イベントが発生すると判断された場合に、前記実空間での座標のスケールと前記仮想空間での座標のスケールとの対応関係を切り替える切り替え処理を行い、
前記イベント処理部は、
前記ユーザが前記実空間での位置P1から位置P2に移動することにより、前記ユーザ移動体が前記仮想空間での位置PV1から位置PV2Eに移動した状態において、前記イベントが発生することで、前記実空間での前記ユーザの位置P2と、前記仮想空間での前記ユーザ移動体の位置PV2Eとの間にズレが生じると判定した場合に、前記仮想空間での前記ユーザ移動体の位置を位置PV2Eから位置PV2に修正しながら、前記ユーザ移動体の状態を前記所与の状態に変化させることを特徴とするプログラム。
A virtual space setting unit that performs virtual space setting processing, and
A moving body processing unit that performs a process of moving a user moving body in the virtual space corresponding to the user in the real space in which the user can move in the virtual space.
The event processing unit that processes events and
As a display processing unit that generates a display image of a head-mounted display device worn by the user so as to cover the field of view as an image that can be seen from a virtual camera in the virtual space.
Make your computer work
The event processing unit
It is determined whether or not an event has occurred in which the state of the user moving body changes to a given state.
The virtual space setting unit
When it is determined that the event occurs, a switching process is performed to switch the correspondence between the coordinate scale in the real space and the coordinate scale in the virtual space.
The event processing unit
When the user moves from the position P1 to the position P2 in the real space, the event occurs in a state where the user moving body moves from the position PV1 to the position PV2E in the virtual space. When it is determined that a deviation occurs between the position P2 of the user in the space and the position PV2E of the user moving body in the virtual space, the position of the user moving body in the virtual space is moved from the position PV2E. A program characterized by changing the state of the user moving body to the given state while modifying the position PV2 .
JP2018065395A 2018-03-29 2018-03-29 Simulation system and program Active JP7104539B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018065395A JP7104539B2 (en) 2018-03-29 2018-03-29 Simulation system and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018065395A JP7104539B2 (en) 2018-03-29 2018-03-29 Simulation system and program

Publications (2)

Publication Number Publication Date
JP2019175322A JP2019175322A (en) 2019-10-10
JP7104539B2 true JP7104539B2 (en) 2022-07-21

Family

ID=68170448

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018065395A Active JP7104539B2 (en) 2018-03-29 2018-03-29 Simulation system and program

Country Status (1)

Country Link
JP (1) JP7104539B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023013114A1 (en) * 2021-08-02 2023-02-09 ソニーグループ株式会社 Information processing device, information processing method, and program
CN116320364B (en) * 2023-05-25 2023-08-01 四川中绳矩阵技术发展有限公司 Virtual reality shooting method and display method based on multi-layer display

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017047173A1 (en) 2015-09-14 2017-03-23 ソニー株式会社 Information processing device and information processing method
JP2017084215A (en) 2015-10-30 2017-05-18 キヤノンマーケティングジャパン株式会社 Information processing system, control method thereof, and program
JP2018010487A (en) 2016-07-13 2018-01-18 株式会社バンダイナムコエンターテインメント Simulation system and program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017047173A1 (en) 2015-09-14 2017-03-23 ソニー株式会社 Information processing device and information processing method
JP2017084215A (en) 2015-10-30 2017-05-18 キヤノンマーケティングジャパン株式会社 Information processing system, control method thereof, and program
JP2018010487A (en) 2016-07-13 2018-01-18 株式会社バンダイナムコエンターテインメント Simulation system and program

Also Published As

Publication number Publication date
JP2019175322A (en) 2019-10-10

Similar Documents

Publication Publication Date Title
JP7366196B2 (en) Widespread simultaneous remote digital presentation world
US11094106B2 (en) Simulation system, processing method, and information storage medium for changing a display object in response to a movement of a field of view
JP6754678B2 (en) Simulation system and program
JP6761340B2 (en) Simulation system and program
CN109716397B (en) Simulation system, processing method, and information storage medium
US11738270B2 (en) Simulation system, processing method, and information storage medium
JP2019175323A (en) Simulation system and program
JP2011258160A (en) Program, information storage medium and image generation system
JP2011258159A (en) Program, information storage medium and image generation system
JP2019152899A (en) Simulation system and program
JP2019139424A (en) Simulation system and program
JP6794390B2 (en) Simulation system and program
JP7104539B2 (en) Simulation system and program
JP2020107251A (en) Image generation system and program
JP5649846B2 (en) Program and image generation system
JP6918189B2 (en) Simulation system and program
JP2009061159A (en) Program, information storage medium and game system
JP6820299B2 (en) Programs, information processing equipment, and methods
JP7111848B2 (en) Program, Information Processing Apparatus, and Method
WO2022107294A1 (en) Vr image space generation system
JP2020107252A (en) Image generation system and program
JP2018112885A (en) Program and image generation system
JP2012173822A (en) Program, information storage medium, image generation system, and server system

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210322

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211207

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220203

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220708

R150 Certificate of patent or registration of utility model

Ref document number: 7104539

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150