JP6469752B2 - INFORMATION PROCESSING METHOD, INFORMATION PROCESSING PROGRAM, INFORMATION PROCESSING SYSTEM, AND INFORMATION PROCESSING APPARATUS - Google Patents

INFORMATION PROCESSING METHOD, INFORMATION PROCESSING PROGRAM, INFORMATION PROCESSING SYSTEM, AND INFORMATION PROCESSING APPARATUS Download PDF

Info

Publication number
JP6469752B2
JP6469752B2 JP2017085308A JP2017085308A JP6469752B2 JP 6469752 B2 JP6469752 B2 JP 6469752B2 JP 2017085308 A JP2017085308 A JP 2017085308A JP 2017085308 A JP2017085308 A JP 2017085308A JP 6469752 B2 JP6469752 B2 JP 6469752B2
Authority
JP
Japan
Prior art keywords
information processing
target object
user
virtual space
operation object
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
JP2017085308A
Other languages
Japanese (ja)
Other versions
JP2018185567A (en
Inventor
尚人 佐々木
尚人 佐々木
野口 裕弘
裕弘 野口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Colopl Inc
Original Assignee
Colopl Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Colopl Inc filed Critical Colopl Inc
Priority to JP2017085308A priority Critical patent/JP6469752B2/en
Publication of JP2018185567A publication Critical patent/JP2018185567A/en
Application granted granted Critical
Publication of JP6469752B2 publication Critical patent/JP6469752B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本開示は、情報処理方法、情報処理プログラム、情報処理システムおよび情報処理装置に関する。   The present disclosure relates to an information processing method, an information processing program, an information processing system, and an information processing apparatus.

非特許文献1のように、仮想空間内で仮想手を使って遊ぶゲームが知られている。   As in Non-Patent Document 1, a game played using virtual hands in a virtual space is known.

“Toybox Demo for Oculus Touch”、[online]、平成27年10月13日、Oculus、[平成29年4月11日検索]、インターネット<https://www.youtube.com/watch?v=iFEMiyGMa58&feature=youtu.be>“Toybox Demo for Oculus Touch”, [online], October 13, 2015, Oculus, [search on April 11, 2017], Internet <https://www.youtube.com/watch?v=iFEMiGMa58&feature = youtu.be>

上記の非特許文献1のような仮想手を用いたゲームにおいて、より直感的な仮想体験を提供するためには改善の余地がある。   In the game using virtual hands as described in Non-Patent Document 1, there is room for improvement in order to provide a more intuitive virtual experience.

本開示は、ヘッドマウントデバイスのユーザに対して、より直感的な仮想体験を提供可能な情報処理方法、情報処理プログラム、情報処理システム、および情報処理装置を提供することを目的とする。   An object of the present disclosure is to provide an information processing method, an information processing program, an information processing system, and an information processing apparatus capable of providing a more intuitive virtual experience to a user of a head mounted device.

本開示が示す一態様によれば、情報処理方法であって、
前記情報処理方法は、ヘッドマウントデバイスを備えたシステムにおいて実行され、
(a)操作オブジェクトと、前記操作オブジェクトによって影響が与えられる対象オブジェクトと、を含む仮想空間を定義する仮想空間データを生成するステップと、
(b)前記ヘッドマウントデバイスの動きおよび前記仮想空間データに基づいて、前記ヘッドマウントデバイスに表示される視野画像を示す視野画像データを生成するステップと、
(c)前記ヘッドマウントデバイスを装着したユーザの身体の一部の動きに応じて、前記操作オブジェクトを動かすステップと、
(d)前記操作オブジェクトの動きに応じて前記操作オブジェクトと前記対象オブジェクトとが干渉した場合には、前記操作オブジェクトと前記対象オブジェクトとの干渉量に基づいて、前記対象オブジェクトに与えられる前記影響を特定するステップと、
を含む。
According to one aspect the present disclosure shows, an information processing method comprising
The information processing method is performed in a system comprising a head mount device,
(A) generating virtual space data defining a virtual space including an operation object and a target object affected by the operation object;
(B) generating view image data indicating a view image to be displayed on the head mounted device based on the movement of the head mounted device and the virtual space data;
(C) moving the operation object in response to the movement of a part of the body of the user wearing the head mount device;
(D) When the operation object and the target object interfere with each other according to the movement of the operation object, the influence given to the target object is determined based on the amount of interference between the operation object and the target object. Identifying steps,
including.

本開示によれば、ヘッドマウントデバイスのユーザに対して、より直感的な仮想体験を提供することができる。   According to the present disclosure, a more intuitive virtual experience can be provided to the user of the head mounted device.

本発明の実施形態(以下、単に本実施形態という。)に係る仮想空間配信システムを示す概略図である。FIG. 1 is a schematic view showing a virtual space distribution system according to an embodiment of the present invention (hereinafter simply referred to as the present embodiment). ユーザ端末を示す概略図である。It is the schematic which shows a user terminal. HMDを装着したユーザの頭部を示す図である。It is a figure showing a user's head equipped with HMD. 制御装置のハードウェア構成を示す図である。It is a figure which shows the hardware constitutions of a control apparatus. 外部コントローラの具体的な構成の一例を示す図である。It is a figure which shows an example of a concrete structure of an external controller. 視野画像をHMDに表示する処理を示すフローチャートである。It is a flowchart which shows the process which displays a visual field image on HMD. 仮想空間の一例を示すxyz空間図である。It is a xyz space figure which shows an example of virtual space. 状態(a)は、図7に示す仮想空間のyx平面図である。状態(b)は、図7に示す仮想空間のzx平面図である。The state (a) is a yx plan view of the virtual space shown in FIG. The state (b) is a zx plan view of the virtual space shown in FIG. HMDに表示された視野画像の一例を示す図である。It is a figure which shows an example of the visual field image displayed on HMD. 図1に示すサーバのハードウェア構成を示す図である。It is a figure which shows the hardware constitutions of the server shown in FIG. 状態(a)は、HMDを装着したユーザが存在する現実空間を示す図であり、状態(b)は、仮想カメラと、各種の仮想オブジェクトとを含む仮想空間を示す図である。A state (a) is a view showing a real space in which a user wearing the HMD exists, and a state (b) is a view showing a virtual space including a virtual camera and various virtual objects. 本実施形態に係る情報処理方法を説明するためのフローチャートである。It is a flowchart for demonstrating the information processing method which concerns on this embodiment. 図11の状態での視野画像を示す図である。It is a figure which shows the visual field image in the state of FIG. 操作オブジェクトと対象オブジェクトとが干渉している状態を示す図である。It is a figure which shows the state in which the operation object and the object object are interfering. 図14の状態での視野画像を示す図である。It is a figure which shows the visual field image in the state of FIG. 対象オブジェクトのページをめくった状態での視野画像を示す図である。It is a figure which shows the visual field image in the state which turned over the page of the object object.

[本開示が示す実施形態の説明]
本開示が示す実施形態の概要を説明する。
(1)情報処理方法であって、
前記情報処理方法は、ヘッドマウントデバイスを備えたシステムにおいて実行され、
(a)操作オブジェクトと、前記操作オブジェクトによって影響が与えられる対象オブジェクトと、を含む仮想空間を定義する仮想空間データを生成するステップと、
(b)前記ヘッドマウントデバイスの動きおよび前記仮想空間データに基づいて、前記ヘッドマウントデバイスに表示される視野画像を示す視野画像データを生成するステップと、
(c)前記ヘッドマウントデバイスを装着したユーザの身体の一部の動きに応じて、前記操作オブジェクトを動かすステップと、
(d)前記操作オブジェクトの動きに応じて前記操作オブジェクトと前記対象オブジェクトとが干渉した場合には、前記操作オブジェクトと前記対象オブジェクトとの干渉量に基づいて、前記対象オブジェクトに与えられる前記影響を特定するステップと、
を含む。
[Description of Embodiments Presented by Present Disclosure]
An outline of an embodiment indicated by the present disclosure will be described.
(1) The information processing method
The information processing method is performed in a system comprising a head mount device,
(A) generating virtual space data defining a virtual space including an operation object and a target object affected by the operation object;
(B) generating view image data indicating a view image to be displayed on the head mounted device based on the movement of the head mounted device and the virtual space data;
(C) moving the operation object in response to the movement of a part of the body of the user wearing the head mount device;
(D) When the operation object and the target object interfere with each other according to the movement of the operation object, the influence given to the target object is determined based on the amount of interference between the operation object and the target object. Identifying steps,
including.

この方法によれば、操作オブジェクトの対象オブジェクトに対する干渉量に応じて対象オブジェクトに与えられる影響を異ならせることができ、ユーザに対して、より直感的な仮想体験を提供することができる。   According to this method, the influence given to the target object can be differentiated according to the amount of interference of the operation object with the target object, and a more intuitive virtual experience can be provided to the user.

(2)前記影響は、前記対象オブジェクトにおける視覚的な表示を含んでもよい。   (2) The influence may include visual display on the target object.

この方法によれば、操作オブジェクトを対象オブジェクトに干渉させた場合には、対象オブジェクトの表示が視覚的に変化することで、ユーザは自らが操作する操作オブジェクトにより対象オブジェクトに与えられた影響を直感的に把握することができる。   According to this method, when the operation object interferes with the target object, the display of the target object changes visually, and the user intuitively influences the influence given to the target object by the operation object that he / she operates. Can be grasped.

(3)前記操作オブジェクトと前記対象オブジェクトとが干渉している場合に、前記操作オブジェクトの位置が、前記対象オブジェクトの表面において接触する位置となるように調整されており、
前記操作オブジェクトと前記表面との接触点において前記視覚的な表示が、前記干渉量に基づいて異ならされていてもよい。
(3) When the operation object and the target object interfere with each other, the position of the operation object is adjusted to be in contact with the surface of the target object,
The visual display at the contact point between the operation object and the surface may be differentiated based on the amount of interference.

この方法によれば、操作オブジェクトが対象オブジェクトと干渉する場合でも操作オブジェクトの対象オブジェクトに対する不自然な貫通が発生しないように操作オブジェクトの位置を調整しつつ干渉量に基づいて対象オブジェクトの視覚的な表示態様を変化させることにより、直感的で自然な仮想体験を容易に提供することができる。   According to this method, even when the operation object interferes with the target object, the position of the operation object is adjusted while the unnatural penetration of the target object does not occur, and the visual appearance of the target object is adjusted based on the amount of interference. By changing the display mode, an intuitive and natural virtual experience can be easily provided.

(4)前記対象オブジェクトは、前記接触点を含む前記表面と、前記表面とは反対側の裏面と、を少なくとも含み、
前記視覚的な表示は、前記表面において前記接触点を含む第1部分の面積、前記第1部分の濃淡、および、前記裏面において前記第1部分に対応する部分である第2部分の面積、の少なくとも一つを含んでもよい。
(4) The target object at least includes the surface including the contact point, and a back surface opposite to the surface,
The visual display includes an area of a first portion including the contact point on the surface, a shade of the first portion, and an area of a second portion which is a portion corresponding to the first portion on the back surface It may include at least one.

視覚的な表示の変化パターンとして、これらの方法を用いることが好ましい。   It is preferable to use these methods as a visual display change pattern.

(5)前記影響は、前記対象オブジェクトの少なくとも一部が変形されるか否かが特定されることを含んでもよい。   (5) The influence may include specifying whether at least a part of the target object is deformed.

(6)前記影響は、前記対象オブジェクトに予め関連付けられたパラメータを変動させることを含んでもよい。   (6) The influence may include varying a parameter previously associated with the target object.

(7)(f)前記干渉量または前記影響に応じた触覚的なフィードバックを前記ユーザに与えるステップを、さらに含んでもよい。   (7) (f) The method may further include the step of providing the user with tactile feedback according to the amount of interference or the influence.

これらの方法によっても、より直感的な仮想体験を容易に提供することができる。   These methods can also provide a more intuitive virtual experience easily.

(8)前記干渉量は、前記対象オブジェクトに干渉した前記操作オブジェクトの干渉部分の体積、前記干渉部分の最大深さ、前記対象オブジェクトの表面における前記干渉部分の面積、の少なくとも一つに基づいて規定されてもよい。   (8) The amount of interference is based on at least one of the volume of the interference portion of the operation object that has interfered with the target object, the maximum depth of the interference portion, and the area of the interference portion on the surface of the target object It may be defined.

(9)情報処理プログラムは、上記項目(1)から(8)のいずれかに記載の情報処理方法をコンピュータに実行させるための情報処理プログラムである。   (9) The information processing program is an information processing program for causing a computer to execute the information processing method according to any one of the items (1) to (8).

上記によれば、ヘッドマウントデバイスのユーザに対して、より直感的な仮想体験を提供可能な情報処理プログラムを提供することができる。   According to the above, it is possible to provide an information processing program capable of providing a more intuitive virtual experience to the user of the head mounted device.

(10)ヘッドマウントデバイスを用いた情報処理システムであって、
当該情報処理システムは、項目(1)から(8)のうちいずれかに記載の情報処理方法を実行するように構成された、情報処理システムである。
(10) An information processing system using a head mount device,
The information processing system is an information processing system configured to execute the information processing method according to any one of items (1) to (8).

上記によれば、ヘッドマウントデバイスのユーザに対して、より直感的な仮想体験を提供可能な情報処理システムを提供することができる。   According to the above, it is possible to provide an information processing system capable of providing a more intuitive virtual experience to the user of the head mounted device.

(11)プロセッサと、
コンピュータ可読命令を記憶するメモリと、を備えた情報処理装置であって、
前記コンピュータ可読命令が前記プロセッサにより実行されると、前記情報処理装置は項目(1)から(8)のうちいずれかに記載の情報処理方法を実行する、情報処理装置である。
(11) a processor,
An information processing apparatus comprising: a memory for storing computer readable instructions;
The information processing apparatus is an information processing apparatus that executes the information processing method according to any one of items (1) to (8) when the computer readable instruction is executed by the processor.

上記によれば、ヘッドマウントデバイスのユーザに対して、より直感的な仮想体験を提供可能な情報処理装置を提供することができる。情報処理装置は、ユーザ端末またはサーバのいずれか一方である点に留意されたい。   According to the above, it is possible to provide an information processing apparatus capable of providing a more intuitive virtual experience to the user of the head mounted device. It should be noted that the information processing apparatus is either a user terminal or a server.

[本開示が示す実施形態の詳細]
以下、本開示が示す実施形態について図面を参照しながら説明する。本実施形態の説明において既に説明された要素と同一の参照番号を有する要素については、説明の便宜上、その説明は繰り返さない。
[Details of Embodiment Presented by Present Disclosure]
Hereinafter, embodiments of the present disclosure will be described with reference to the drawings. For the elements having the same reference numerals as the elements already described in the description of the present embodiment, the description thereof will not be repeated for convenience of the description.

最初に、仮想空間配信システム100(情報処理システム)の構成の概略について図1を参照して説明する。図1は、仮想空間配信システム100(以下、単に配信システム100という。)の概略図である。図1に示すように、配信システム100は、ヘッドマウントデバイス(HMD)110(第一HMD)を装着したユーザA(第一ユーザ)によって操作されるユーザ端末1A(第一ユーザ端末)と、HMD110(第二HMD)を装着したユーザB(第二ユーザ)によって操作されるユーザ端末1B(第二ユーザ端末)と、サーバ2とを備える。ユーザ端末1A,1Bは、インターネット等の通信ネットワーク3を介してサーバ2に通信可能に接続されている。以降では、説明の便宜上、各ユーザ端末1A,1Bを単にユーザ端末1と総称する場合がある。各ユーザA,Bを単にユーザUと総称する場合がある。本実施形態では、ユーザ端末1A,1Bは、同一の構成を備えているものとする。仮想空間とは、VR(Virtual Reality)空間と、AR(Argumented Reality)空間と、MR(Mixed Reality)空間を含む。   First, an outline of the configuration of the virtual space distribution system 100 (information processing system) will be described with reference to FIG. FIG. 1 is a schematic view of a virtual space distribution system 100 (hereinafter simply referred to as a distribution system 100). As shown in FIG. 1, the distribution system 100 includes a user terminal 1A (first user terminal) operated by a user A (first user) wearing a head mounted device (HMD) 110 (first HMD), and the HMD 110. A user terminal 1B (second user terminal) operated by a user B (second user) wearing the (second HMD) and the server 2 are provided. The user terminals 1A and 1B are communicably connected to the server 2 via a communication network 3 such as the Internet. Hereinafter, for convenience of description, each of the user terminals 1A and 1B may be simply referred to as the user terminal 1. The users A and B may be simply referred to as the user U. In the present embodiment, the user terminals 1A and 1B are assumed to have the same configuration. The virtual space includes a VR (Virtual Reality) space, an AR (Argumented Reality) space, and an MR (Mixed Reality) space.

次に、図2を参照してユーザ端末1の構成について説明する。図2は、ユーザ端末1を示す概略図である。図2に示すように、ユーザ端末1は、ユーザUの頭部に装着されたヘッドマウントデバイス(HMD)110と、ヘッドフォン116と、位置センサ130と、外部コントローラ320と、制御装置120とを備える。   Next, the configuration of the user terminal 1 will be described with reference to FIG. FIG. 2 is a schematic view showing the user terminal 1. As shown in FIG. 2, the user terminal 1 includes a head mounted device (HMD) 110 mounted on the head of the user U, headphones 116, a position sensor 130, an external controller 320, and a control device 120. .

HMD110は、表示部112と、HMDセンサ114と、注視センサ140とを備える。表示部112は、HMD110を装着したユーザUの視界(視野)を完全に覆うように構成された非透過型の表示装置を備える。これにより、ユーザUは、表示部112に表示された視野画像のみを見ることで仮想空間に没入することができる。表示部112は、ユーザUの左目に画像を提供するように構成された左目用表示部と、ユーザUの右目に画像を提供するように構成された右目用表示部とから構成されてもよい。HMD110は、透過型の表示装置を備えてもよい。この場合、透過型の表示装置は、その透過率を調整することで、一時的に非透過型の表示装置として構成されてもよい。   The HMD 110 includes a display unit 112, an HMD sensor 114, and a gaze sensor 140. The display unit 112 includes a non-transmissive display device configured to completely cover the field of view (field of view) of the user U wearing the HMD 110. Accordingly, the user U can immerse in the virtual space by viewing only the view image displayed on the display unit 112. The display unit 112 may be configured of a display unit for the left eye configured to provide an image to the left eye of the user U, and a display unit for the right eye configured to provide an image to the right eye of the user U . The HMD 110 may include a transmissive display device. In this case, the transmissive display device may be temporarily configured as a non-transmissive display device by adjusting the transmittance thereof.

HMDセンサ114は、HMD110の表示部112の近傍に搭載される。HMDセンサ114は、地磁気センサ、加速度センサ、傾きセンサ(角速度センサやジャイロセンサ等)のうちの少なくとも1つを含み、ユーザUの頭部に装着されたHMD110の各種動き(傾き等)を検出することができる。   The HMD sensor 114 is mounted near the display unit 112 of the HMD 110. The HMD sensor 114 includes at least one of a geomagnetic sensor, an acceleration sensor, and an inclination sensor (such as an angular velocity sensor or a gyro sensor), and detects various movements (such as inclination) of the HMD 110 mounted on the head of the user U be able to.

注視センサ140は、ユーザUの視線を検出するアイトラッキング機能を有する。注視センサ140は、例えば、右目用注視センサと、左目用注視センサを備えてもよい。右目用注視センサは、ユーザUの右目に例えば赤外光を照射して、右目(特に、角膜や虹彩)から反射された反射光を検出することで、右目の眼球の回転角に関する情報を取得してもよい。一方、左目用注視センサは、ユーザUの左目に例えば赤外光を照射して、左目(特に、角膜や虹彩)から反射された反射光を検出することで、左目の眼球の回転角に関する情報を取得してもよい。   The gaze sensor 140 has an eye tracking function of detecting the line of sight of the user U. The gaze sensor 140 may include, for example, a right eye gaze sensor and a left eye gaze sensor. The right eye gaze sensor emits infrared light, for example, to the right eye of the user U, and detects reflected light reflected from the right eye (in particular, the cornea and the iris) to obtain information on the rotation angle of the right eye You may On the other hand, the gaze sensor for the left eye irradiates, for example, infrared light to the left eye of the user U, and detects the reflected light reflected from the left eye (in particular, the cornea and the iris). You may get

ヘッドフォン116(音声出力部)は、ユーザUの左耳と右耳にそれぞれ装着されている。ヘッドフォン116は、制御装置120から音声データ(電気信号)を受信し、当該受信した音声データに基づいて音声を出力するように構成されている。   The headphones 116 (audio output unit) are attached to the left ear and the right ear of the user U, respectively. The headphones 116 are configured to receive audio data (electrical signals) from the control device 120, and to output audio based on the received audio data.

位置センサ130は、例えば、ポジション・トラッキング・カメラにより構成され、HMD110と外部コントローラ320の位置を検出するように構成されている。位置センサ130は、制御装置120に無線または有線により通信可能に接続されており、HMD110に設けられた図示しない複数の検知点の位置、傾きまたは発光強度に関する情報を検出するように構成されている。位置センサ130は、外部コントローラ320に設けられた図示しない複数の検知点の位置、傾きおよび/または発光強度に関する情報を検出するように構成されている。検知点は、例えば、赤外線や可視光を放射する発光部である。位置センサ130は、赤外線センサや複数の光学カメラを含んでもよい。   The position sensor 130 is configured by, for example, a position tracking camera, and is configured to detect the position of the HMD 110 and the external controller 320. The position sensor 130 is communicably connected to the control device 120 wirelessly or by wire, and is configured to detect information on the position, inclination or light emission intensity of a plurality of detection points (not shown) provided on the HMD 110. . The position sensor 130 is configured to detect information on the position, the inclination, and / or the light emission intensity of a plurality of detection points (not shown) provided in the external controller 320. The detection point is, for example, a light emitting unit that emits infrared light or visible light. The position sensor 130 may include an infrared sensor and a plurality of optical cameras.

外部コントローラ320は、ユーザUの手の動きを検知することにより、仮想空間内に表示される手オブジェクトの動作を制御するために使用される。外部コントローラ320は、ユーザUの右手によって操作される右手用外部コントローラ320R(以下、単にコントローラ320Rという。)と、ユーザUの左手によって操作される左手用外部コントローラ320L(以下、単にコントローラ320Lという。)と、を有する。コントローラ320Rは、ユーザUの右手の位置や右手の手指の動きを示す装置である。コントローラ320Lは、ユーザUの左手の位置や左手の手指の動きを示す装置である。コントローラ320R,320Lの動きに応じて仮想空間内に存在する左手オブジェクトおよび右手オブジェクトがそれぞれ動く。   The external controller 320 is used to control the movement of the hand object displayed in the virtual space by detecting the movement of the hand of the user U. The external controller 320 is an external controller 320R for the right operated by the user U's right hand (hereinafter simply referred to as the controller 320R) and an external controller 320L for the left hand operated by the left hand of the user U (hereinafter referred to simply as the controller 320L). And. The controller 320R is a device that indicates the position of the user U's right hand and the movement of the right hand's finger. The controller 320L is a device that indicates the position of the user U's left hand and the movement of fingers of the left hand. The left hand object and the right hand object existing in the virtual space move in response to the movement of the controllers 320R and 320L.

制御装置120は、HMD110を制御するように構成されたコンピュータである。制御装置120は、位置センサ130から取得された情報に基づいて、HMD110の位置情報を特定し、当該特定された位置情報に基づいて、仮想空間における仮想カメラの位置(仮想空間内でのユーザUの位置)と、現実空間におけるHMD110を装着したユーザUの位置を正確に対応付けることができる。制御装置120は、位置センサ130および/または外部コントローラ320に内蔵されたセンサから取得された情報に基づいて、外部コントローラ320の動作を特定し、当該特定された外部コントローラ320の動作に基づいて、仮想空間内に表示される手オブジェクトの動作と現実空間における外部コントローラ320の動作を正確に対応付けることができる。特に、制御装置120は、位置センサ130および/またはコントローラ320Lに内蔵されたセンサから取得された情報に基づいて、コントローラ320Lの動作を特定し、当該特定されたコントローラ320Lの動作に基づいて、仮想空間内に表示される左手オブジェクトの動作と現実空間におけるコントローラ320Lの動作(ユーザUの左手の動作)を正確に対応付けることができる。同様に、制御装置120は、位置センサおよび/コントローラ320Rに内蔵されたセンサから取得された情報に基づいて、コントローラ320Rの動作を特定し、当該特定されたコントローラ320Rの動作に基づいて、仮想空間内に表示される右手オブジェクトの動作と現実空間におけるコントローラ320Rの動作(ユーザUの右手の動作)を正確に対応付けることができる。   Control device 120 is a computer configured to control HMD 110. Control device 120 specifies the position information of HMD 110 based on the information acquired from position sensor 130, and based on the specified position information, the position of the virtual camera in the virtual space (user U in the virtual space And the position of the user U wearing the HMD 110 in the real space can be accurately associated. The controller 120 identifies the operation of the external controller 320 based on the information acquired from the position sensor 130 and / or the sensor incorporated in the external controller 320, and based on the operation of the identified external controller 320, The motion of the hand object displayed in the virtual space can be accurately associated with the motion of the external controller 320 in the real space. In particular, the control device 120 specifies the operation of the controller 320L based on the information acquired from the sensor built in the position sensor 130 and / or the controller 320L, and based on the operation of the specified controller 320L, a virtual The motion of the left-handed object displayed in the space and the motion of the controller 320L in the real space (the motion of the left hand of the user U) can be accurately correlated. Similarly, the control device 120 specifies the operation of the controller 320R based on the information acquired from the position sensor and / or the sensor incorporated in the controller 320R, and based on the operation of the specified controller 320R, the virtual space The motion of the right hand object displayed in the inside and the motion of the controller 320R in the real space (the motion of the right hand of the user U) can be accurately correlated.

制御装置120は、ユーザUの右目の視線と左目の視線をそれぞれ特定し、当該右目の視線と当該左目の視線の交点である注視点を特定することができる。制御装置120は、特定された注視点に基づいて、ユーザUの両目の視線(ユーザUの視線)を特定することができる。ユーザUの視線は、ユーザUの両目の視線であって、ユーザUの右目と左目を結ぶ線分の中点と注視点を通る直線の方向に一致する。制御装置120は、注視センサ140(左目用注視センサと右目用注視センサ)から送信された検出データ(アイトラッキングデータ)に基づいて、ユーザUの右目の黒目の中心位置とユーザUの左目の黒目の中心位置とをそれぞれ特定することができる。   The control device 120 can respectively identify the line of sight of the right eye and the line of sight of the left eye of the user U, and can specify a gaze point which is an intersection of the line of sight of the right eye and the line of sight of the left eye. The control device 120 can identify the line of sight of the user U (the line of sight of the user U) based on the identified fixation point. The line of sight of the user U is the line of sight of the user U and coincides with the direction of the straight line passing through the midpoint of the line connecting the right eye and the left eye of the user U and the point of gaze. Control device 120 is based on detection data (eye tracking data) transmitted from gaze sensor 140 (the gaze sensor for the left eye and the gaze sensor for the right eye), the center position of the right eye of user U and the left eye of user U And the center position of

次に、図3を参照して、HMD110の位置や傾きに関する情報を取得する方法について以下に説明する。図3は、HMD110を装着したユーザUの頭部を示す図である。HMD110を装着したユーザUの頭部の動きに連動したHMD110の位置や傾きに関する情報は、位置センサ130および/またはHMD110に搭載されたHMDセンサ114により検出可能である。図2に示すように、HMD110を装着したユーザUの頭部を中心として、3次元座標(uvw座標)が規定される。ユーザUが直立する垂直方向をv軸として規定し、v軸と直交しHMD110の中心を通る方向をw軸として規定し、v軸およびw軸と直交する方向をu軸として規定する。位置センサ130および/またはHMDセンサ114は、各uvw軸回りの角度(すなわち、v軸を中心とする回転を示すヨー角、u軸を中心とした回転を示すピッチ角、w軸を中心とした回転を示すロール角で決定される傾き)を検出する。制御装置120は、検出された各uvw軸回りの角度変化に基づいて、仮想カメラの視軸を制御するための角度情報を決定する。   Next, with reference to FIG. 3, a method of acquiring information on the position and tilt of the HMD 110 will be described below. FIG. 3 is a view showing the head of the user U wearing the HMD 110. As shown in FIG. Information on the position and tilt of the HMD 110 interlocked with the movement of the head of the user U wearing the HMD 110 can be detected by the position sensor 130 and / or the HMD sensor 114 mounted on the HMD 110. As shown in FIG. 2, three-dimensional coordinates (uvw coordinates) are defined around the head of the user U wearing the HMD 110. A vertical direction in which the user U stands is defined as a v-axis, a direction perpendicular to the v-axis and passing through the center of the HMD 110 as a w-axis, and a direction orthogonal to the v-axis and the w-axis as a u-axis. The position sensor 130 and / or the HMD sensor 114 are angled about each uvw axis (ie yaw angle indicating rotation about v axis, pitch angle indicating rotation about u axis, w axis) The tilt determined by the roll angle indicating rotation is detected. The control device 120 determines angle information for controlling the visual axis of the virtual camera based on the detected angle change around each uvw axis.

次に、図4を参照することで、制御装置120のハードウェア構成について説明する。図4は、制御装置120のハードウェア構成を示す図である。図4に示すように、制御装置120は、制御部121と、記憶部123と、I/O(入出力)インターフェース124と、通信インターフェース125と、バス126とを備える。制御部121と、記憶部123と、I/Oインターフェース124と、通信インターフェース125は、バス126を介して互いに通信可能に接続されている。   Next, the hardware configuration of the control device 120 will be described with reference to FIG. FIG. 4 is a diagram showing a hardware configuration of the control device 120. As shown in FIG. As shown in FIG. 4, the control device 120 includes a control unit 121, a storage unit 123, an I / O (input / output) interface 124, a communication interface 125, and a bus 126. The control unit 121, the storage unit 123, the I / O interface 124, and the communication interface 125 are communicably connected to one another via a bus 126.

制御装置120は、HMD110とは別体に、パーソナルコンピュータ、スマートフォン、ファブレット、タブレットまたはウェアラブルデバイスとして構成されてもよいし、HMD110に内蔵されていてもよい。また、制御装置120の一部の機能がHMD110に搭載されると共に、制御装置120の残りの機能がHMD110とは別体の他の装置に搭載されてもよい。   The control device 120 may be configured as a personal computer, a smartphone, a fablet, a tablet or a wearable device separately from the HMD 110, or may be built in the HMD 110. Moreover, while the one part function of the control apparatus 120 is mounted in HMD110, the remaining function of the control apparatus 120 may be mounted in another apparatus separate from HMD110.

制御部121は、メモリとプロセッサを備えている。メモリは、例えば、各種プログラム等が格納されたROM(Read Only Memory)やプロセッサにより実行される各種プログラム等が格納される複数ワークエリアを有するRAM(Random Access Memory)等から構成される。プロセッサは、例えばCPU(Central Processing Unit)、MPU(Micro Processing Unit)および/またはGPU(Graphics Processing Unit)であって、ROMに組み込まれた各種プログラムから指定されたプログラムをRAM上に展開し、RAMとの協働で各種処理を実行するように構成されている。   The control unit 121 includes a memory and a processor. The memory is configured of, for example, a ROM (Read Only Memory) storing various programs and the like, and a RAM (Random Access Memory) having a plurality of work areas storing various programs and the like executed by the processor. The processor is, for example, a central processing unit (CPU), a micro processing unit (MPU) and / or a graphics processing unit (GPU), and develops a program specified from various programs incorporated in the ROM on the RAM. The system is configured to execute various processes in cooperation with the

特に、プロセッサが制御プログラムをRAM上に展開し、RAMとの協働で制御プログラムを実行することで、制御部121は、制御装置120の各種動作を制御してもよい。制御部121は、視野画像データに基づいてHMD110の表示部112に視野画像を表示する。これにより、ユーザUは、仮想空間に没入することができる。   In particular, the control unit 121 may control various operations of the control device 120 by the processor developing the control program on the RAM and executing the control program in cooperation with the RAM. The control unit 121 displays the view image on the display unit 112 of the HMD 110 based on the view image data. Thereby, the user U can immerse in the virtual space.

記憶部(ストレージ)123は、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、USBフラッシュメモリ等の記憶装置であって、プログラムや各種データを格納するように構成されている。記憶部123は、本実施形態に係る情報処理方法の少なくとも一部をコンピュータに実行させるための制御プログラムや、複数のユーザによる仮想空間の共有を実現するための制御プログラムを格納してもよい。記憶部123には、ユーザUの認証プログラムや各種画像やオブジェクト(例えば、手オブジェクト等)に関するデータが格納されてもよい。記憶部123には、各種データを管理するためのテーブルを含むデータベースが構築されてもよい。   The storage unit (storage) 123 is, for example, a storage device such as a hard disk drive (HDD), a solid state drive (SSD), or a USB flash memory, and is configured to store programs and various data. The storage unit 123 may store a control program for causing a computer to execute at least a part of the information processing method according to the present embodiment, or a control program for realizing sharing of a virtual space by a plurality of users. The storage unit 123 may store an authentication program of the user U and data regarding various images and objects (for example, hand objects and the like). In the storage unit 123, a database including tables for managing various data may be constructed.

I/Oインターフェース124は、HMD110と、位置センサ130と、外部コントローラ320と、ヘッドフォン116と、をそれぞれ制御装置120に通信可能に接続するように構成されており、例えば、USB(Universal Serial Bus)端子、DVI(Digital Visual Interface)端子、HDMI(登録商標)(High―Definition Multimedia Interface)端子等により構成されている。制御装置120は、HMD110と、位置センサ130と、外部コントローラ320と、ヘッドフォン116とのそれぞれと無線接続されていてもよい。   The I / O interface 124 is configured to communicably connect the HMD 110, the position sensor 130, the external controller 320, and the headphone 116 to the control device 120. For example, USB (Universal Serial Bus) A terminal, a DVI (Digital Visual Interface) terminal, an HDMI (registered trademark) (High-Definition Multimedia Interface) terminal, and the like are included. The control device 120 may be wirelessly connected to each of the HMD 110, the position sensor 130, the external controller 320, and the headphones 116.

通信インターフェース125は、制御装置120をLAN(Local Area Network)、WAN(Wide Area Network)またはインターネット等の通信ネットワーク3に接続させるように構成されている。通信インターフェース125は、通信ネットワーク3を介してサーバ2等の外部装置と通信するための各種有線接続端子や、無線接続のための各種処理回路を含んでおり、通信ネットワーク3を介して通信するための通信規格に適合するように構成されている。   The communication interface 125 is configured to connect the control device 120 to a communication network 3 such as a Local Area Network (LAN), a Wide Area Network (WAN), or the Internet. The communication interface 125 includes various wired connection terminals for communicating with an external device such as the server 2 via the communication network 3 and various processing circuits for wireless connection, and communicates via the communication network 3. Are configured to meet the communication standards of

次に、図5を参照して外部コントローラ320の具体的構成の一例について説明する。外部コントローラ320は、ユーザUの身体の一部(頭部以外の部位であり、本実施形態においてはユーザUの手)の動きを検知することにより、仮想空間内に表示される手オブジェクトの動作を制御するために使用される。外部コントローラ320は、ユーザUの右手によって操作される右手用外部コントローラ320R(以下、単にコントローラ320Rという。)と、ユーザUの左手によって操作される左手用外部コントローラ320L(以下、単にコントローラ320Lという。)と、を有する。コントローラ320Rは、ユーザUの右手の位置や右手の手指の動きを示す装置である。また、コントローラ320Rの動きに応じて仮想空間内に存在する右手オブジェクト400R(図11参照)が移動する。コントローラ320Lは、ユーザUの左手の位置や左手の手指の動きを示す装置である。また、コントローラ320Lの動きに応じて仮想空間内に存在する左手オブジェクト400L(図11参照)が移動する。コントローラ320Rとコントローラ320Lは略同一の構成を有するので、以下では、図5を参照してコントローラ320Rの具体的構成についてのみ説明する。以降の説明では、便宜上、コントローラ320L,320Rを単にコントローラ320と総称する場合がある。   Next, an example of a specific configuration of the external controller 320 will be described with reference to FIG. The external controller 320 detects the movement of a part of the user U's body (a part other than the head, and in this embodiment, the user U's hand) to detect the movement of the hand object displayed in the virtual space. Used to control the The external controller 320 is an external controller 320R for the right operated by the user U's right hand (hereinafter simply referred to as the controller 320R) and an external controller 320L for the left hand operated by the left hand of the user U (hereinafter referred to simply as the controller 320L). And. The controller 320R is a device that indicates the position of the user U's right hand and the movement of the right hand's finger. Further, the right hand object 400R (see FIG. 11) existing in the virtual space moves in accordance with the movement of the controller 320R. The controller 320L is a device that indicates the position of the user U's left hand and the movement of fingers of the left hand. Further, in accordance with the movement of the controller 320L, the left hand object 400L (see FIG. 11) existing in the virtual space is moved. The controller 320R and the controller 320L have substantially the same configuration, so only the specific configuration of the controller 320R will be described below with reference to FIG. In the following description, the controllers 320L and 320R may be simply referred to as the controller 320 for convenience.

図5に示すように、コントローラ320Rは、操作ボタン302と、複数の検知点304と、図示しないセンサと、図示しないトランシーバとを備える。検知点304とセンサは、どちらか一方のみが設けられていてもよい。操作ボタン302は、ユーザUからの操作入力を受付けるように構成された複数のボタン群により構成されている。操作ボタン302は、プッシュ式ボタン、トリガー式ボタン及びアナログスティックを含む。プッシュ式ボタンは、親指による押下する動作によって操作されるボタンである。例えば、天面322上に2つのプッシュ式ボタン302a,302bが設けられている。トリガー式ボタンは、人差し指や中指で引き金を引くような動作によって操作されるボタンである。例えば、グリップ324の前面部分にトリガー式ボタン302eが設けられると共に、グリップ324の側面部分にトリガー式ボタン302fが設けられる。トリガー式ボタン302e,302fは、人差し指と中指によってそれぞれ操作されることが想定されている。アナログスティックは、所定のニュートラル位置から360度任意の方向へ傾けて操作されうるスティック型のボタンである。例えば、天面322上にアナログスティック320iが設けられており、親指を用いて操作されることが想定されている。   As shown in FIG. 5, the controller 320R includes an operation button 302, a plurality of detection points 304, a sensor (not shown), and a transceiver (not shown). Only one of the detection point 304 and the sensor may be provided. The operation button 302 is configured of a plurality of button groups configured to receive an operation input from the user U. The operation button 302 includes a push button, a trigger button, and an analog stick. The push-type button is a button operated by an operation of pressing with the thumb. For example, on the top surface 322, two push-type buttons 302a and 302b are provided. The trigger button is a button operated by an operation such as pulling a trigger with the index finger or the middle finger. For example, the front portion of the grip 324 is provided with a trigger button 302e, and the side portion of the grip 324 is provided with a trigger button 302f. The trigger buttons 302 e and 302 f are assumed to be operated by the index finger and the middle finger, respectively. The analog stick is a stick-type button that can be operated by tilting it in any direction 360 degrees from a predetermined neutral position. For example, it is assumed that the analog stick 320i is provided on the top surface 322 and operated using the thumb.

コントローラ320Rは、グリップ324の両側面から天面322とは反対側の方向へ延びて半円状のリングを形成するフレーム326を備える。フレーム326の外側面には、複数の検知点304が埋め込まれている。複数の検知点304は、例えば、フレーム326の円周方向に沿って一列に並んだ複数の赤外線LEDである。位置センサ130は、複数の検知点304の位置、傾きまたは発光強度に関する情報を検出した後に、制御装置120は、位置センサ130によって検出された情報に基づいて、コントローラ320Rの位置や姿勢(傾き・向き)に関する情報を取得する。   The controller 320R includes a frame 326 extending from both sides of the grip 324 in the direction opposite to the top surface 322 to form a semicircular ring. A plurality of sensing points 304 are embedded in the outer surface of the frame 326. The plurality of detection points 304 are, for example, a plurality of infrared LEDs aligned in a row along the circumferential direction of the frame 326. After the position sensor 130 detects information on the positions, inclinations, or light emission intensities of the plurality of detection points 304, the control device 120 detects the position or attitude of the controller 320R based on the information detected by the position sensor 130. Get information on

コントローラ320Rのセンサは、例えば、磁気センサ、角速度センサ、若しくは加速度センサのいずれか、又はこれらの組み合わせであってもよい。センサは、ユーザUがコントローラ320Rを動かしたときに、コントローラ320Rの向きや動きに応じた信号(例えば、磁気、角速度、又は加速度に関する情報を示す信号)を出力する。制御装置120は、センサから出力された信号に基づいて、コントローラ320Rの位置や姿勢に関する情報を取得する。   The sensor of the controller 320R may be, for example, either a magnetic sensor, an angular velocity sensor, or an acceleration sensor, or a combination thereof. When the user U moves the controller 320R, the sensor outputs a signal (for example, a signal indicating information on magnetism, angular velocity, or acceleration) according to the direction or movement of the controller 320R. The control device 120 acquires information on the position and orientation of the controller 320R based on the signal output from the sensor.

コントローラ320Rのトランシーバは、コントローラ320Rと制御装置120との間でデータを送受信するように構成されている。例えば、トランシーバは、ユーザUの操作入力に対応する操作信号を制御装置120に送信してもよい。また、トランシーバは、検知点304の発光をコントローラ320Rに指示する指示信号を制御装置120から受信してもよい。さらに、トランシーバは、センサによって検出された値を示す信号を制御装置120に送信してもよい。   The transceivers of controller 320R are configured to transmit and receive data between controller 320R and controller 120. For example, the transceiver may transmit an operation signal corresponding to the operation input of the user U to the controller 120. The transceiver may also receive an instruction signal from the controller 120 instructing the controller 320R to emit light at the detection point 304. Additionally, the transceiver may transmit a signal to controller 120 indicating the value detected by the sensor.

次に、図6から図9を参照することで視野画像をHMD110に表示するための処理について説明する。図6は、視野画像をHMD110に表示する処理を示すフローチャートである。図7は、仮想空間200の一例を示すxyz空間図である。図8の状態(a)は、図7に示す仮想空間200のyx平面図である。図8の状態(b)は、図7に示す仮想空間200のzx平面図である。図9は、HMD110に表示された視野画像Vの一例を示す図である。   Next, processing for displaying a view image on the HMD 110 will be described with reference to FIGS. 6 to 9. FIG. 6 is a flowchart showing a process of displaying a view image on the HMD 110. FIG. 7 is an xyz space diagram showing an example of the virtual space 200. The state (a) of FIG. 8 is a yx plan view of the virtual space 200 shown in FIG. The state (b) of FIG. 8 is a zx plan view of the virtual space 200 shown in FIG. FIG. 9 is a view showing an example of the view image V displayed on the HMD 110. As shown in FIG.

図6に示すように、ステップS1において、制御部121(図4参照)は、仮想カメラ300と、各種オブジェクトとを含む仮想空間200を示す仮想空間データを生成する。図7に示すように、仮想空間200は、中心位置210を中心とした全天球として規定される(図7では、上半分の天球のみが図示されている)。仮想空間200では、中心位置210を原点とするxyz座標系が設定されている。仮想カメラ300は、HMD110に表示される視野画像V(図9参照)を特定するための視軸Lを規定している。仮想カメラ300の視野を定義するuvw座標系は、現実空間におけるユーザUの頭部を中心として規定されたuvw座標系に連動するように決定される。HMD110を装着したユーザUの現実空間における移動に連動して、制御部121は、仮想カメラ300を仮想空間200内で移動させてもよい。   As shown in FIG. 6, in step S1, the control unit 121 (see FIG. 4) generates virtual space data indicating a virtual space 200 including the virtual camera 300 and various objects. As shown in FIG. 7, the virtual space 200 is defined as an omnidirectional sphere centered on the center position 210 (in FIG. 7, only the upper half celestial sphere is shown). In the virtual space 200, an xyz coordinate system having the center position 210 as an origin is set. The virtual camera 300 defines a viewing axis L for specifying a view image V (see FIG. 9) displayed on the HMD 110. The uvw coordinate system defining the field of view of the virtual camera 300 is determined to interlock with the uvw coordinate system defined around the head of the user U in the real space. The control unit 121 may move the virtual camera 300 in the virtual space 200 in conjunction with the movement of the user U wearing the HMD 110 in the real space.

次に、ステップS2において、制御部121は、仮想カメラ300の視野CV(図8参照)を特定する。具体的には、制御部121は、位置センサ130および/またはHMDセンサ114から送信されたHMD110の状態を示すデータに基づいて、HMD110の位置や傾きに関する情報を取得する。次に、制御部121は、HMD110の位置や傾きに関する情報に基づいて、仮想空間200内における仮想カメラ300の位置や向きを特定する。次に、制御部121は、仮想カメラ300の位置や向きから仮想カメラ300の視軸Lを決定し、決定された視軸Lから仮想カメラ300の視野CVを特定する。仮想カメラ300の視野CVは、HMD110を装着したユーザUが視認可能な仮想空間200の一部の領域に相当する(換言すれば、HMD110に表示される仮想空間200の一部の領域に相当する)。視野CVは、図8の状態(a)に示すxy平面において、視軸Lを中心とした極角αの角度範囲として設定される第一領域CVaと、図8の状態(b)に示すxz平面において、視軸Lを中心とした方位角βの角度範囲として設定される第二領域CVbとを有する。制御部121は、注視センサ140から送信されたユーザUの視線を示すデータに基づいてユーザUの視線を特定し、特定されたユーザUの視線とHMD110の位置や傾きに関する情報に基づいて、仮想カメラ300の向き(仮想カメラの視軸L)を決定してもよい。   Next, in step S2, the control unit 121 specifies the field of view CV (see FIG. 8) of the virtual camera 300. Specifically, based on the data indicating the state of the HMD 110 transmitted from the position sensor 130 and / or the HMD sensor 114, the control unit 121 acquires information on the position and the inclination of the HMD 110. Next, the control unit 121 specifies the position and the orientation of the virtual camera 300 in the virtual space 200 based on the information on the position and the inclination of the HMD 110. Next, the control unit 121 determines the visual axis L of the virtual camera 300 from the position and the orientation of the virtual camera 300, and identifies the visual field CV of the virtual camera 300 from the determined visual axis L. The field of view CV of the virtual camera 300 corresponds to a partial area of the virtual space 200 visible to the user U wearing the HMD 110 (in other words, corresponds to a partial area of the virtual space 200 displayed on the HMD 110 ). The visual field CV is a first area CVa set as an angular range of the polar angle α centered on the visual axis L in the xy plane shown in the state (a) of FIG. 8 and xz shown in the state (b) in FIG. In the plane, it has a second region CVb set as an angular range of the azimuth angle β centered on the visual axis L. The control unit 121 identifies the line of sight of the user U based on the data indicating the line of sight of the user U transmitted from the gaze sensor 140, and based on the identified line of sight of the user U and information regarding the position and inclination of the HMD 110, The orientation of the camera 300 (the visual axis L of the virtual camera) may be determined.

このように、制御部121は、位置センサ130および/またはHMDセンサ114からのデータに基づいて、仮想カメラ300の視野CVを特定することができる。HMD110を装着したユーザUが動くと、制御部121は、位置センサ130および/またはHMDセンサ114から送信されたHMD110の動きを示すデータに基づいて、仮想カメラ300の視野CVを更新することができる。つまり、制御部121は、HMD110の動きに応じて、視野CVを更新することができる。同様に、ユーザUの視線が変化すると、制御部121は、注視センサ140から送信されたユーザUの視線を示すデータに基づいて、仮想カメラ300の視野CVを更新してもよい。つまり、制御部121は、ユーザUの視線の変化に応じて、視野CVを変化させてもよい。   Thus, the control unit 121 can specify the field of view CV of the virtual camera 300 based on the data from the position sensor 130 and / or the HMD sensor 114. When the user U wearing the HMD 110 moves, the control unit 121 can update the field of view CV of the virtual camera 300 based on the data indicating the movement of the HMD 110 transmitted from the position sensor 130 and / or the HMD sensor 114. . That is, the control unit 121 can update the visual field CV according to the movement of the HMD 110. Similarly, when the line of sight of the user U changes, the control unit 121 may update the field of view CV of the virtual camera 300 based on the data indicating the line of sight of the user U transmitted from the gaze sensor 140. That is, the control unit 121 may change the visual field CV in accordance with the change in the line of sight of the user U.

次に、ステップS3において、制御部121は、HMD110の表示部112に表示される視野画像Vを示す視野画像データを生成する。具体的には、制御部121は、仮想空間200を規定する仮想空間データと、仮想カメラ300の視野CVとに基づいて、視野画像データを生成する。   Next, in step S3, the control unit 121 generates view image data indicating the view image V displayed on the display unit 112 of the HMD 110. Specifically, the control unit 121 generates view image data based on virtual space data defining the virtual space 200 and the view CV of the virtual camera 300.

次に、ステップS4において、制御部121は、視野画像データに基づいて、HMD110の表示部112に視野画像Vを表示する(図9参照)。このように、HMD110を装着しているユーザUの動きに応じて、仮想カメラ300の視野CVが変化し、HMD110の表示部112に表示される視野画像Vが変化するので、ユーザUは仮想空間200に没入することができる。   Next, in step S4, the control unit 121 displays the view image V on the display unit 112 of the HMD 110 based on the view image data (see FIG. 9). Thus, according to the movement of the user U wearing the HMD 110, the visual field CV of the virtual camera 300 changes, and the visual field image V displayed on the display unit 112 of the HMD 110 changes. Can be immersed in 200.

仮想カメラ300は、左目用仮想カメラと右目用仮想カメラを含んでもよい。この場合、制御部121は、仮想空間データと左目用仮想カメラの視野に基づいて、左目用の視野画像を示す左目用視野画像データを生成する。さらに、制御部121は、仮想空間データと、右目用仮想カメラの視野に基づいて、右目用の視野画像を示す右目用視野画像データを生成する。その後、制御部121は、左目用視野画像データに基づいて、左目用表示部に左目用の視野画像を表示すると共に、右目用視野画像データに基づいて、右目用表示部に右目用の視野画像を表示する。このようにして、ユーザUは、左目用視野画像と右目用視野画像との間の視差により、視野画像を3次元的に視認することができる。   The virtual camera 300 may include a left-eye virtual camera and a right-eye virtual camera. In this case, the control unit 121 generates left-eye view image data indicating a left-eye view image based on the virtual space data and the view of the left-eye virtual camera. Further, the control unit 121 generates right-eye view image data indicating a right-eye view image based on the virtual space data and the view of the right-eye virtual camera. Thereafter, the control unit 121 displays the left-eye view image on the left-eye display unit based on the left-eye view image data, and the right-eye view image on the right-eye display unit based on the right-eye view image data. Display In this manner, the user U can visually recognize the view image three-dimensionally by the parallax between the left-eye view image and the right-eye view image.

図6に示すステップS1〜S4の処理は1フレーム毎に実行されてもよい。例えば、動画のフレームレートが90fpsである場合、ステップS1〜S4の処理はΔT=1/90(秒)間隔で繰り返し実行されてもよい。このように、ステップS1〜S4の処理が所定間隔ごとに繰り返し実行されるため、HMD110の動作に応じて仮想カメラ300の視野が更新されると共に、HMD110の表示部112に表示される視野画像Vが更新される。   The processes in steps S1 to S4 shown in FIG. 6 may be performed for each frame. For example, when the frame rate of a moving image is 90 fps, the processes of steps S1 to S4 may be repeatedly performed at an interval of ΔT = 1/90 (seconds). As described above, since the processes of steps S1 to S4 are repeatedly executed at predetermined intervals, the visual field V of the virtual camera 300 is updated according to the operation of the HMD 110, and the visual field image V displayed on the display unit 112 of the HMD 110. Is updated.

次に、図1に示すサーバ2のハードウェア構成について図10を参照して説明する。図10は、サーバ2のハードウェア構成を示す図である。図10に示すように、サーバ2は、制御部23と、記憶部22と、通信インターフェース21と、バス24とを備える。制御部23と、記憶部22と、通信インターフェース21は、バス24を介して互いに通信可能に接続されている。制御部23は、メモリとプロセッサを備えており、メモリは、例えば、ROMおよびRAM等から構成されると共に、プロセッサは、例えば、CPU、MPUおよび/またはGPUにより構成される。   Next, the hardware configuration of the server 2 shown in FIG. 1 will be described with reference to FIG. FIG. 10 is a diagram showing a hardware configuration of the server 2. As shown in FIG. 10, the server 2 includes a control unit 23, a storage unit 22, a communication interface 21, and a bus 24. The control unit 23, the storage unit 22, and the communication interface 21 are communicably connected to each other via the bus 24. The control unit 23 includes a memory and a processor, and the memory includes, for example, a ROM and a RAM, and the processor includes, for example, a CPU, an MPU, and / or a GPU.

記憶部(ストレージ)22は、例えば、大容量のHDD等である。記憶部22は、本実施形態に係る情報処理方法の少なくとも一部をコンピュータに実行させるための制御プログラムや、複数のユーザによる仮想空間の共有を実現させるための制御プログラムを格納してもよい。また、記憶部22は、各ユーザを管理するためのユーザ管理情報や各種画像やオブジェクト(例えば、手オブジェクト等)に関するデータを格納してもよい。通信インターフェース21は、サーバ2を通信ネットワーク3に接続させるように構成されている。   The storage unit (storage) 22 is, for example, a large capacity HDD or the like. The storage unit 22 may store a control program for causing a computer to execute at least a part of the information processing method according to the present embodiment, or a control program for realizing sharing of a virtual space by a plurality of users. In addition, the storage unit 22 may store user management information for managing each user, data regarding various images and objects (for example, hand objects and the like). The communication interface 21 is configured to connect the server 2 to the communication network 3.

以下、本実施形態に係る仮想空間配信システム100の処理の流れを図11〜14を参照して詳細に説明する。図11の状態(a)は、HMD110とコントローラ320R,320Lを装着したユーザUが存在する現実空間を示す図である。図11の状態(b)は、仮想カメラ300と、手オブジェクト400と、筆記具オブジェクト500と、ノートオブジェクト600とを含む仮想空間200を示す図である。図12は、本実施形態に係る情報処理方法を説明するためのフローチャートである。図13は、視野画像を示す図である。図14は、筆記具オブジェクト500とノートオブジェクト600とが干渉している状態を示す図である。   Hereinafter, the flow of processing of the virtual space distribution system 100 according to the present embodiment will be described in detail with reference to FIGS. A state (a) of FIG. 11 is a view showing a real space in which the user U wearing the HMD 110 and the controllers 320R and 320L is present. A state (b) of FIG. 11 is a view showing a virtual space 200 including the virtual camera 300, the hand object 400, the writing instrument object 500, and the note object 600. FIG. 12 is a flowchart for explaining the information processing method according to the present embodiment. FIG. 13 shows a view image. FIG. 14 is a view showing a state in which the writing instrument object 500 and the note object 600 interfere with each other.

本実施形態において、仮想空間200は、仮想空間配信システム100により提供されるゲーム空間として構成されている。図11の状態(b)に示すように、仮想空間200は、仮想カメラ300と、手オブジェクト400と、筆記具オブジェクト500(操作オブジェクトの一例)と、ノートオブジェクト600(対象オブジェクトの一例)と、を含む。制御部121は、これらのオブジェクトを含む仮想空間200を規定する仮想空間データを生成する。また、制御部121は、1フレーム毎に仮想空間データを更新してもよい。上記したように、仮想カメラ300は、図11の状態(a)に示すユーザUが装着しているHMD110の動きに連動する。つまり、仮想カメラ300の視野は、HMD110の動きに応じて更新される。仮想カメラ300は、ユーザUの一人称視点に関連付けられた視点を有する。   In the present embodiment, the virtual space 200 is configured as a game space provided by the virtual space distribution system 100. As shown in the state (b) of FIG. 11, the virtual space 200 includes a virtual camera 300, a hand object 400, a writing instrument object 500 (an example of an operation object), and a note object 600 (an example of a target object). Including. The control unit 121 generates virtual space data that defines a virtual space 200 including these objects. Further, the control unit 121 may update virtual space data for each frame. As described above, the virtual camera 300 interlocks with the movement of the HMD 110 worn by the user U shown in the state (a) of FIG. That is, the field of view of the virtual camera 300 is updated according to the movement of the HMD 110. The virtual camera 300 has a viewpoint associated with the first person viewpoint of the user U.

左手オブジェクト400Lは、ユーザUの左手に装着されるコントローラ320Lの動きに連動する。同様に、右手オブジェクト400Rは、ユーザUの右手に装着されるコントローラ320Rの動きに連動する。   The left hand object 400L interlocks with the movement of the controller 320L attached to the left hand of the user U. Similarly, the right hand object 400R interlocks with the movement of the controller 320R attached to the right hand of the user U.

制御部121は、位置センサ130からコントローラ320の位置情報を取得した上で、当該取得された位置情報に基づいて、仮想空間200内の手オブジェクト400L,400Rの位置と現実空間におけるコントローラ320の位置とを対応付ける。このように、制御部121は、ユーザUの手の位置(コントローラ320の位置)に応じて、手オブジェクト400L,400Rの位置を制御する。   The control unit 121 acquires the position information of the controller 320 from the position sensor 130 and then, based on the acquired position information, the positions of the hand objects 400L and 400R in the virtual space 200 and the position of the controller 320 in the real space And Thus, the control unit 121 controls the positions of the hand objects 400L and 400R according to the position of the hand of the user U (the position of the controller 320).

また、ユーザUが操作ボタン302を操作することで、仮想空間200内に配置された手オブジェクト400L,400Rの各指を操作することが可能となる。つまり、制御部121は、操作ボタン302に対する入力操作に対応する操作信号をコントローラ320から取得した上で、当該操作信号に基づいて、手オブジェクト400L,400Rの手指の動作を制御する。例えば、ユーザUが操作ボタン302を操作することで右手オブジェクト400Rは筆記具オブジェクト500を掴むことができる(図13参照)。さらに、右手オブジェクト400Rが筆記具オブジェクト500を掴んだ状態で、コントローラ320の移動に応じて、右手オブジェクト400Rと筆記具オブジェクト500を移動させることが可能となる。このように、制御部121は、ユーザUの手指の動きに応じて、手オブジェクト400L,400Rの動作を制御するように構成されている。   Further, when the user U operates the operation button 302, it becomes possible to operate each finger of the hand objects 400L and 400R arranged in the virtual space 200. That is, the control unit 121 acquires an operation signal corresponding to an input operation on the operation button 302 from the controller 320, and then controls the operation of the finger of the hand objects 400L and 400R based on the operation signal. For example, when the user U operates the operation button 302, the right hand object 400R can grasp the writing instrument object 500 (see FIG. 13). Further, in a state where the right hand object 400R holds the writing tool object 500, it is possible to move the right hand object 400R and the writing tool object 500 according to the movement of the controller 320. As described above, the control unit 121 is configured to control the operation of the hand objects 400L and 400R in accordance with the movement of the finger of the user U.

筆記具オブジェクト500は、ノートオブジェクト600に対して影響を与えるオブジェクトである。筆記具オブジェクト500はコリジョンエリアを有している。本実施形態では、筆記具オブジェクト500のコリジョンエリアは、筆記具オブジェクト500を構成する領域(筆記具オブジェクト500の外形領域)に一致しているものとする。筆記具オブジェクト500がノートオブジェクト600に接触して、筆記具オブジェクト500とノートオブジェクト600とが干渉することで、ノートオブジェクト600に後述の影響が与えられる。なお、図11等に示す例では、筆記具オブジェクト500として例えば万年筆を図示しているが、手オブジェクト400の操作によって、筆記具オブジェクト500の種類を変えることもできる。例えば、コントローラ320を握っているユーザUの手の所定の動作に基づいて、万年筆に代えて、鉛筆や消しゴムなど別の筆記用具を手オブジェクト400に持ち替えさせることができる。   The writing instrument object 500 is an object that affects the note object 600. The writing instrument object 500 has a collision area. In the present embodiment, it is assumed that the collision area of the writing instrument object 500 matches the area (the outer area of the writing instrument object 500) constituting the writing instrument object 500. When the writing instrument object 500 contacts the note object 600 and the writing instrument object 500 and the note object 600 interfere with each other, the note object 600 is influenced as described later. In the example shown in FIG. 11 or the like, for example, a fountain pen is illustrated as the writing instrument object 500, but the type of the writing instrument object 500 can be changed by the operation of the hand object 400. For example, based on a predetermined movement of the hand of the user U holding the controller 320, another writing instrument such as a pencil or an eraser can be held by the hand object 400 instead of the fountain pen.

ノートオブジェクト600は、仮想空間200内の所定の位置に配置されている。ユーザUは、手オブジェクト400L,400Rを動かして、筆記具オブジェクト500を掴み、筆記具オブジェクト500をノートオブジェクト600に接触させることで、ノートオブジェクト600の表面に線(文字や絵など)を描くことができる。ノートオブジェクト600には、各種情報が表示されていてもよい。ノートオブジェクト600は、仮想空間200内の所定の位置に固定的に配置されていてもよいが、ユーザUが操作ボタン302を操作することでノートオブジェクト600を掴んで移動させることができてもよい。なお、対象オブジェクトは、ノート(書籍)型のものに限られず、タブレットやモニタなど筆記具オブジェクト500等の操作オブジェクトによって影響が与えられるものであればよい。   The note object 600 is disposed at a predetermined position in the virtual space 200. The user U can draw lines (such as characters and pictures) on the surface of the note object 600 by moving the hand objects 400L and 400R, grasping the writing tool object 500, and bringing the writing tool object 500 into contact with the note object 600. . Various types of information may be displayed on the note object 600. The note object 600 may be fixedly arranged at a predetermined position in the virtual space 200, but the user U may be able to grasp and move the note object 600 by operating the operation button 302. . The target object is not limited to the notebook (book) type, and may be any object that can be influenced by an operation object such as a writing instrument object 500 such as a tablet or a monitor.

以下、本実施形態に係る仮想空間配信システム100で提供される情報処理方法の流れを、図12〜図15を参照して詳細に説明する。
まず、図12に示すステップS10において、制御部121(図3参照)は、仮想空間200を規定する仮想空間データと仮想カメラ300の視野CVとに基づいて視野画像データを生成し、視野画像データに基づいてHMD110の表示部112に視野画像を表示する。ステップS10は、図6に示すステップS1と同じである。
Hereinafter, the flow of the information processing method provided by the virtual space distribution system 100 according to the present embodiment will be described in detail with reference to FIGS. 12 to 15.
First, in step S10 shown in FIG. 12, the control unit 121 (see FIG. 3) generates view image data based on virtual space data defining the virtual space 200 and the view CV of the virtual camera 300, and the view image data The visual field image is displayed on the display unit 112 of the HMD 110 based on the above. Step S10 is the same as step S1 shown in FIG.

次に、ステップS12において、制御部121は、ユーザUにより操作されるコントローラ320の動きに応じて手オブジェクト400L,400Rを動かす。そして、ステップS14において、制御部121は、ユーザUが操作するコントローラ320L,320Rの少なくとも一方に筆記具オブジェクト500を掴むための所定の操作が入力された否か(具体的には、例えば右手オブジェクト400Rが筆記具オブジェクト500に近づいた状態でコントローラ320Rの操作ボタン302が操作された否か)を判定する。コントローラ320Rに所定の操作が入力されたと判定された場合には(ステップS14のYes)、ステップS16において、制御部121は、右手オブジェクト400Rに筆記具オブジェクト500を掴ませるように制御する。   Next, in step S12, the control unit 121 moves the hand objects 400L and 400R in accordance with the movement of the controller 320 operated by the user U. Then, in step S14, the control unit 121 determines whether a predetermined operation for grasping the writing instrument object 500 is input to at least one of the controllers 320L and 320R operated by the user U (specifically, for example, the right hand object 400R Determines whether or not the operation button 302 of the controller 320R has been operated in a state in which the writing instrument object 500 approaches. If it is determined that a predetermined operation has been input to the controller 320R (Yes in step S14), the control unit 121 controls the right-hand object 400R to grip the writing instrument object 500 in step S16.

次に、ステップS18において、制御部121は、右手オブジェクト400Rが筆記具オブジェクト500を掴んだ状態で右手オブジェクト400Rが移動したかどうかを判定する。ステップS18でYesの場合には、ステップS20において、制御部121は、コントローラ320Rの移動に応じて、右手オブジェクト400と筆記具オブジェクト500とを一緒に移動させる。   Next, in step S18, the control unit 121 determines whether the right hand object 400R has moved in a state in which the right hand object 400R holds the writing instrument object 500. In the case of Yes in step S18, in step S20, the control unit 121 moves the right hand object 400 and the writing instrument object 500 together in accordance with the movement of the controller 320R.

次に、ステップS22において、制御部121は、筆記具オブジェクト500がノートオブジェクト600に干渉したか否かを判定する。図14に示すように筆記具オブジェクト500がノートオブジェクト600に干渉したと判定された場合には(ステップS22のYes)、ステップS24において、制御部121は、筆記具オブジェクト500の位置を調整する。仮想空間200内における筆記具オブジェクト500の位置を調整する際に、実空間でユーザUが操作するコントローラ320Rの位置を直接用いると、筆記具オブジェクト500がノートオブジェクト600と干渉する位置に動かされた場合に、筆記具オブジェクト500がノートオブジェクト600の内部に侵入するかノートオブジェクト600を貫通してしまい、不自然な視野画像が生成されユーザUの没入感を阻害するおそれがある。そのため、本ステップでは、制御部121は、視野画像Vにレンダリングされるべき筆記具オブジェクト500の位置(以下、レンダリング位置と称す。)を、実空間におけるコントローラ320Rの位置(入力値)から特定される仮想空間200内での筆記具オブジェクト500の目標位置(以下、ターゲット位置と称す。)と、ノートオブジェクト600の位置とに基づいて、調整している。具体的には、図14に示すように、1フレーム毎に筆記具オブジェクト500のターゲット位置(図14の破線で示された筆記具オブジェクト500の位置)が特定されたうえで、この筆記具オブジェクト500のターゲット位置がノートオブジェクト600に干渉している場合には、ノートオブジェクト600との衝突が検出された位置、すなわち、筆記具オブジェクト500とノートオブジェクト600との最初の接触点Pで筆記具オブジェクト500が止まるように、筆記具オブジェクト500のレンダリング位置(図14の実線で示された筆記具オブジェクト500の位置)を特定する。このように、筆記具オブジェクト500のターゲット位置がノートオブジェクト600と干渉している場合でも、筆記具オブジェクト500のレンダリング位置がノートオブジェクト600の表面600aにおいて接触する位置となるように調整することにより、視野画像Vにおいて筆記具オブジェクト500のノートオブジェクト600に対する不自然な侵入や貫通が発生することがないため、ユーザUに対して自然な仮想体験を提供することができる。   Next, in step S22, the control unit 121 determines whether the writing instrument object 500 has interfered with the note object 600. As shown in FIG. 14, when it is determined that the writing instrument object 500 has interfered with the note object 600 (Yes in step S22), the control unit 121 adjusts the position of the writing instrument object 500 in step S24. When adjusting the position of the writing instrument object 500 in the virtual space 200, if the position of the controller 320R operated by the user U in the real space is directly used, the writing instrument object 500 is moved to a position interfering with the note object 600. The writing instrument object 500 may enter the inside of the note object 600 or penetrate the note object 600, and an unnatural view image may be generated, which may disturb the immersion of the user U. Therefore, in this step, the control unit 121 specifies the position of the writing tool object 500 to be rendered in the view image V (hereinafter referred to as rendering position) from the position (input value) of the controller 320R in real space. The adjustment is made based on the target position of the writing instrument object 500 in the virtual space 200 (hereinafter referred to as a target position) and the position of the note object 600. Specifically, as shown in FIG. 14, after the target position of the writing instrument object 500 (the position of the writing instrument object 500 shown by the broken line in FIG. 14) is specified for each frame, the target of the writing instrument object 500 When the position interferes with the note object 600, the writing object 500 is stopped at the position where the collision with the note object 600 is detected, that is, the first contact point P between the writing object 500 and the note object 600. The rendering position of the writing instrument object 500 (the position of the writing instrument object 500 indicated by the solid line in FIG. 14) is specified. In this manner, even when the target position of the writing instrument object 500 interferes with the note object 600, the view image is adjusted by adjusting the rendering position of the writing instrument object 500 to be a contact position on the surface 600a of the note object 600. Since an unnatural intrusion or penetration of the writing instrument object 500 with respect to the note object 600 does not occur in V, a natural virtual experience can be provided to the user U.

次に、ステップS26において、制御部121は、筆記具オブジェクト500のターゲット位置とノートオブジェクト600との干渉量を特定する。ステップS26における干渉量の特定処理は、例えば、図14に示すように、ターゲット位置における筆記具オブジェクト500のノートオブジェクト600に干渉した部分(干渉部分)510の最大深さにより規定することができる。なお、干渉部分510の最大深さは、干渉部分510の先端520と、ノートオブジェクト600の表面600aにおいて干渉部分510の先端520から一番近い部分P´との間の距離L1として特定してもよい。また、干渉部分510の最大深さは、筆記具オブジェクト500とノートオブジェクト600の表面600aとの最初の接触点Pと、干渉部分510の先端520との間の距離L2として特定してもよい。干渉量を特定する別の方法として、筆記具オブジェクト500の干渉部分510の体積や、ノートオブジェクト600の表面600aにおける筆記具オブジェクト500の干渉部分510の面積などに基づいて干渉量が規定されてもよい。   Next, in step S26, the control unit 121 specifies the amount of interference between the target position of the writing instrument object 500 and the note object 600. The process of identifying the amount of interference in step S26 can be defined, for example, by the maximum depth of the portion (interference portion) 510 that interferes with the note object 600 of the writing instrument object 500 at the target position, as shown in FIG. Even if the maximum depth of the interference portion 510 is specified as the distance L1 between the tip 520 of the interference portion 510 and the portion P 'closest to the tip 520 of the interference portion 510 on the surface 600a of the note object 600. Good. Also, the maximum depth of the interference portion 510 may be specified as the distance L 2 between the initial contact point P of the writing instrument object 500 and the surface 600 a of the note object 600 and the tip 520 of the interference portion 510. As another method of specifying the amount of interference, the amount of interference may be defined based on the volume of the interference portion 510 of the writing instrument object 500, the area of the interference portion 510 of the writing instrument object 500 on the surface 600a of the note object 600, or the like.

次に、ステップS28において、制御部121は、ステップS26で特定された筆記具オブジェクト500とノートオブジェクト600との干渉量に基づいて、ノートオブジェクト600における視覚的な表示(ノートオブジェクト600に与えられる影響の一例)を特定する。そして、ステップS30において、ステップS28で特定された視覚的な表示に基づいて、視野画像Vを更新して、処理を終了する。具体的には、図15の更新された視野画像Vに示すように、例えば、筆記具オブジェクト500とノートオブジェクト600との干渉量に基づいて、ノートオブジェクト600の表面600aにおいて筆記具オブジェクト500との接触点を含む着色部分710(第一部分の一例)の面積が変更される。例えば、筆記具オブジェクト500とノートオブジェクト600との干渉量が大きくなるにつれて、着色部分710の面積を大きくする。これにより、筆記具オブジェクト500とノートオブジェクト600との干渉量が少ない場合には、筆記具オブジェクト500によりノートオブジェクト600上に描かれる着色部分710の線幅が狭くなり、干渉量が多ければ、着色部分710の線幅が太くなる。このように、実空間で万年筆等の筆記具を用いて筆記する場合と同様に、仮想空間200内で筆記具オブジェクト500を用いてノートオブジェクト600に筆記する場合にも、筆記具オブジェクト500とノートオブジェクト600との干渉量に応じて着色部分710の線幅を変更することで、筆圧の違いやにじみを表現することができる。また、筆圧の違いをより直感的に表現するために、着色部分710の濃淡を干渉量に応じて変更してもよい。例えば、干渉量が少なければ、着色部分710の色を淡くし、干渉量が多ければ着色部分710の色を濃くすることができる。   Next, in step S28, based on the amount of interference between the writing instrument object 500 and the note object 600 identified in step S26, the control unit 121 displays a visual display on the note object 600 (the influence on the note object 600). Identify one example). Then, in step S30, the view image V is updated based on the visual display identified in step S28, and the process is ended. Specifically, as shown in the updated view image V of FIG. 15, for example, the contact point with the writing tool object 500 on the surface 600a of the note object 600 based on the amount of interference between the writing tool object 500 and the note object 600. The area of the colored portion 710 (an example of the first portion) including the For example, as the amount of interference between the writing instrument object 500 and the note object 600 increases, the area of the colored portion 710 is increased. As a result, when the amount of interference between the writing instrument object 500 and the note object 600 is small, the line width of the colored portion 710 drawn on the note object 600 by the writing instrument object 500 narrows, and when the amount of interference is large, the colored portion 710 Line width of the As described above, in the same way as writing using a writing instrument such as a fountain pen in real space, writing tool object 500 and note object 600 together with writing object 500 using writing instrument object 500 in virtual space 200 By changing the line width of the colored portion 710 in accordance with the amount of interference, it is possible to express a difference in pen pressure or a blur. Also, in order to express the difference in writing pressure more intuitively, the density of the colored portion 710 may be changed according to the amount of interference. For example, if the amount of interference is small, the color of the colored portion 710 can be lightened, and if the amount of interference is large, the color of the colored portion 710 can be darkened.

さらに、図16に示すように、ノートオブジェクト600の各ページが手オブジェクト400で捲れるような場合には、裏抜け(紙の上にインクで文字や図形などを記すとき、紙の裏側までインクが浸透してしまう状態)を表現するために、筆記具オブジェクト500とノートオブジェクト600との干渉量に基づいて、ノートオブジェクト600の表面600aの着色部分710に対応する裏面600bの着色部分720(第二部分の一例)の面積を異ならせてもよい。   Furthermore, as shown in FIG. 16, when each page of the note object 600 is twisted by the hand object 400, the strikethrough (when writing characters or figures with ink on the paper, Second portion 600 b corresponding to the colored portion 710 of the surface 600 a of the note object 600 based on the amount of interference between the writing instrument object 500 and the note object 600 (second state The areas of one example of the parts may be different.

以上説明したように、本実施形態によれば、制御部121は、ユーザUの手の動きに応じて筆記具オブジェクト500を動かし、筆記具オブジェクト500の動きに応じて筆記具オブジェクト500とノートオブジェクト600とが干渉した場合には、筆記具オブジェクト500とノートオブジェクト600との干渉量に基づいて、ノートオブジェクト600に与えられる影響(例えば、視覚的な表示)を特定する。筆記具オブジェクト500とノートオブジェクト600とが干渉した場合に、筆記具オブジェクト500とノートオブジェクト600との干渉量に基づいてノートオブジェクト600に与えられる影響を異ならせることで、ユーザUに対して、より直感的な仮想体験を提供することができる。   As described above, according to the present embodiment, the control unit 121 moves the writing instrument object 500 according to the movement of the hand of the user U, and the writing instrument object 500 and the note object 600 correspond to the movement of the writing instrument object 500. In the case of interference, based on the amount of interference between the writing instrument object 500 and the note object 600, the influence (for example, visual display) given to the note object 600 is identified. By making the influence given to the note object 600 different based on the amount of interference between the writing instrument object 500 and the note object 600 when the writing instrument object 500 and the note object 600 interfere, more intuitive to the user U Provide a virtual experience.

なお、筆記具オブジェクト500とノートオブジェクト600とが干渉した場合には、その干渉量に応じてノートオブジェクト600の少なくとも一部が変形されたり、切断されたりするようにしてもよい。この場合、筆記具オブジェクト500とノートオブジェクト600との干渉量だけでなく、ノートオブジェクト600と干渉している状態での筆記具オブジェクト500の移動速度(フレーム毎の筆記具オブジェクト500の移動量)に基づいて、ノートオブジェクト600の変形パターンが決定されてもよい。例えば、筆記具オブジェクト500の移動速度が一定値以下である場合には、ノートオブジェクト600は少し凹むだけである一方で、筆記具オブジェクト500の移動速度が一定値より大きい場合には、ノートオブジェクト600が切断されるように、ノートオブジェクト600の視覚的な表示が異ならされてもよい。   When the writing instrument object 500 and the note object 600 interfere with each other, at least a part of the note object 600 may be deformed or cut in accordance with the interference amount. In this case, not only the interference amount between the writing instrument object 500 and the note object 600 but also the moving speed of the writing instrument object 500 in the state of interference with the note object 600 (the movement amount of the writing instrument object 500 for each frame) A deformation pattern of the note object 600 may be determined. For example, when the moving speed of the writing instrument object 500 is equal to or less than a predetermined value, the note object 600 is only slightly recessed, while when the moving speed of the writing instrument object 500 is larger than a predetermined value, the note object 600 is disconnected. As noted, the visual display of the note object 600 may be different.

また、上記の実施形態では、筆記具オブジェクト500によりノートオブジェクト600に与えられる影響の一例として、ノートオブジェクト600における視覚的な表示を異ならせる方法を採用しているが、この例に限られない。筆記具オブジェクト500とノートオブジェクト600との干渉量に応じて、ノートオブジェクト600に予め関連付けられたパラメータ(例えば、耐久度)を変動させてもよい。例えば、干渉量に応じてノートオブジェクト600の耐久度が減じられ、耐久度がある閾値を下回った場合に、筆記具オブジェクト500によってノートオブジェクト600に穴があけられるようにしても良い。パラメータの変動についても、干渉量だけではなく、筆記具オブジェクト500の移動速度を加味してもよい。   In the above embodiment, as an example of the influence given to the note object 600 by the writing instrument object 500, the method of making the visual display in the note object 600 different is adopted, but the present invention is not limited to this example. Depending on the amount of interference between the writing instrument object 500 and the note object 600, a parameter (for example, the degree of endurance) previously associated with the note object 600 may be changed. For example, the durability of the note object 600 may be reduced according to the amount of interference, and the writing object 500 may be made to have a hole in the note object 600 when the durability falls below a certain threshold. Not only the amount of interference but also the movement speed of the writing instrument object 500 may be added to the variation of the parameter.

さらに、筆記具オブジェクト500とノートオブジェクト600との干渉量や、ノートオブジェクト600に与えられる影響に応じて、制御部121は、コントローラ320を振動させるための入力信号をコントローラ320へ送信してもよい。例えば、干渉量が一定量以上の場合にはコントローラ320を振動させるようにすることで、触覚的なフィードバックをユーザUに与え、より直感的な仮想体験を提供することができる。   Furthermore, in accordance with the amount of interference between the writing instrument object 500 and the note object 600, or the influence given to the note object 600, the control unit 121 may transmit an input signal for vibrating the controller 320 to the controller 320. For example, by causing the controller 320 to vibrate when the amount of interference is a certain amount or more, tactile feedback can be given to the user U, and a more intuitive virtual experience can be provided.

なお、上記実施形態では、操作オブジェクトの一例として筆記具オブジェクト500を用いてノートオブジェクト600に影響を与える方法を採用しているが、筆記具オブジェクト500を用いずに、操作オブジェクトとしての手オブジェクト400とノートオブジェクト600との干渉量に基づいて、ノートオブジェクト600に直接影響を与えることもできる。例えば、手オブジェクト400とノートオブジェクト600が干渉している場合に、手オブジェクト400によってノートオブジェクト600上に表示されている各種メニューを操作したり、ノートオブジェクト600を変形させたり、ページを捲ったりすることも可能である。   In the above embodiment, although the method of affecting the note object 600 using the writing instrument object 500 as an example of the operation object is adopted, the hand object 400 and the note as the operation object are used without using the writing instrument object 500. The note object 600 can also be directly influenced based on the amount of interference with the object 600. For example, when the hand object 400 and the note object 600 interfere with each other, the hand object 400 operates various menus displayed on the note object 600, deforms the note object 600, or turns a page. It is also possible.

以上、本開示の実施形態について説明をしたが、本発明の技術的範囲が本実施形態の説明によって限定的に解釈されるべきではない。本実施形態は一例であって、特許請求の範囲に記載された発明の範囲内において、様々な実施形態の変更が可能であることが当業者によって理解されるところである。本発明の技術的範囲は特許請求の範囲に記載された発明の範囲およびその均等の範囲に基づいて定められるべきである。   Although the embodiments of the present disclosure have been described above, the technical scope of the present invention should not be construed as limited by the description of the present embodiments. It is understood by those skilled in the art that the present embodiment is an example, and that modifications of various embodiments are possible within the scope of the invention described in the claims. The technical scope of the present invention should be determined based on the scope of the invention described in the claims and the scope of equivalents thereof.

本実施形態の説明では、仮想空間200を示す仮想空間データがユーザ端末1側で更新されていることを前提としているが、仮想空間データはサーバ2側で更新されてもよい。さらに、視野画像に対応する視野画像データがユーザ端末1側で更新されていることを前提としているが、視野画像データはサーバ2側で更新されてもよい。この場合、ユーザ端末1は、サーバ2から送信された視野画像データに基づいて、HMD110に視野画像を表示する。   Although the description of the present embodiment assumes that virtual space data indicating the virtual space 200 is updated on the user terminal 1 side, the virtual space data may be updated on the server 2 side. Furthermore, although it is premised that the view image data corresponding to the view image is updated on the user terminal 1 side, the view image data may be updated on the server 2 side. In this case, the user terminal 1 displays the view image on the HMD 110 based on the view image data transmitted from the server 2.

また、ユーザ端末1の制御部121によって実行される各種処理をソフトウェアによって実現するために、各種処理をコンピュータ(プロセッサ)に実行させるための制御プログラムが記憶部123またはメモリに予め組み込まれていてもよい。または、制御プログラムは、磁気ディスク(HDD、フロッピーディスク)、光ディスク(CD−ROM,DVD−ROM、Blu−rayディスク等)、光磁気ディスク(MO等)、フラッシュメモリ(SDカード、USBメモリ、SSD等)等のコンピュータ読取可能な記憶媒体に格納されていてもよい。この場合、記憶媒体が制御装置120に接続されることで、当該記憶媒体に格納された制御プログラムが、記憶部123に組み込まれる。そして、記憶部123に組み込まれた制御プログラムがRAM上にロードされて、プロセッサがロードされた当該プログラムを実行することで、制御部121は各種処理を実行する。   Further, even if a control program for causing a computer (processor) to execute various processes is incorporated in advance in the storage unit 123 or the memory in order to realize various processes executed by the control unit 121 of the user terminal 1 by software. Good. Alternatively, the control program may be a magnetic disk (HDD, floppy disk), an optical disk (CD-ROM, DVD-ROM, Blu-ray disk, etc.), a magneto-optical disk (MO etc.), a flash memory (SD card, USB memory, SSD) Etc.) may be stored in a computer readable storage medium. In this case, by connecting the storage medium to the control device 120, the control program stored in the storage medium is incorporated in the storage unit 123. Then, the control program incorporated in the storage unit 123 is loaded onto the RAM, and the processor executes the loaded program, whereby the control unit 121 executes various processing.

また、制御プログラムは、通信ネットワーク3上のコンピュータから通信インターフェース125を介してダウンロードされてもよい。この場合も同様に、ダウンロードされた当該制御プログラムが記憶部123に組み込まれる。   Also, the control program may be downloaded from a computer on the communication network 3 via the communication interface 125. Also in this case, the downloaded control program is incorporated in the storage unit 123.

本実施形態において、仮想空間は、ユーザにVR(Virtual Reality)、AR(Argumented Reality)およびMR(Mixed Reality)といった、仮想体験を提供するために用いられる。仮想空間がVRを提供する場合、仮想空間の背景にはメモリに保存された背景データが使用される。仮想空間がARまたはMRを提供する場合、背景には現実空間が使用される。この場合、HMD110が透過型の表示装置(光学シースルーまたはビデオシースルー型の表示装置)を備えることにより、現実空間が背景として使用され得る。仮想空間がMRに適用される場合、オブジェクトは、現実空間によって影響を与えられてもよい。このように、仮想空間が背景や仮想オブジェクトといった仮想シーンを少なくとも一部に含むことにより、ユーザには当該仮想シーンとの相互作用が可能な仮想体験が提供され得る。また、仮想空間がARやMRを提供する場合には、手オブジェクト400(400L,400R)に代えて、ユーザUの実際の手(および実際の手が持っている筆記具等)がノートオブジェクト600に影響を与えられる操作オブジェクトとして適用される。   In this embodiment, the virtual space is used to provide the user with a virtual experience such as VR (Virtual Reality), AR (Argumented Reality) and MR (Mixed Reality). When the virtual space provides a VR, background data stored in memory is used as the background of the virtual space. When virtual space provides AR or MR, real space is used as the background. In this case, real space can be used as a background by providing the HMD 110 with a transmissive display (optical see-through or video see-through display). If a virtual space is applied to the MR, the object may be influenced by the real space. In this manner, the virtual space includes at least a virtual scene such as a background or a virtual object, thereby providing the user with a virtual experience capable of interacting with the virtual scene. Also, when the virtual space provides AR or MR, the actual hand of the user U (and the writing instrument etc. held by the actual hand) replaces the hand object 400 (400L, 400R) to the note object 600. Applied as the affected operation object.

1,1A,1B:ユーザ端末
2:サーバ
3:通信ネットワーク
21:通信インターフェース
22:記憶部
23:制御部
24:バス
100:仮想空間配信システム
110:ヘッドマウントデバイス(HMD)
112:表示部
114:HMDセンサ
116:ヘッドフォン
118:マイク
120:制御装置
121:制御部
123:記憶部
124:I/Oインターフェース
125:通信インターフェース
126:バス
130:位置センサ
140:注視センサ
200,200A,200B:仮想空間
210:中心位置
300:仮想カメラ
320:外部コントローラ
320L:左手用外部コントローラ(コントローラ)
320R:右手用外部コントローラ(コントローラ)
400:手オブジェクト
400L:左手オブジェクト
400R:右手オブジェクト
500:筆記具オブジェクト(操作オブジェクトの一例)
510:干渉部分
600:ノートオブジェクト(対象オブジェクトの一例)
600a:表面
600b:裏面
710:表面の着色部分(第一部分の一例)
720:裏面の着色部分(第二部分の一例)
V:視野画像
1, 1A, 1B: user terminal 2: server 3: communication network 21: communication interface 22: storage unit 23: control unit 24: bus 100: virtual space distribution system 110: head mounted device (HMD)
112: display unit 114: HMD sensor 116: headphones 118: microphone 120: control device 121: control unit 123: storage unit 124: I / O interface 125: communication interface 126: bus 130: position sensor 140: gaze sensor 200, 200A , 200B: virtual space 210: center position 300: virtual camera 320: external controller 320L: external controller (controller) for left hand
320R: Right-handed external controller (controller)
400: hand object 400L: left hand object 400R: right hand object 500: writing instrument object (an example of operation object)
510: interference portion 600: note object (an example of target object)
600a: front surface 600b: back surface 710: colored portion of front surface (example of first portion)
720: Colored part on the back side (an example of the second part)
V: View image

Claims (9)

情報処理方法であって、
前記情報処理方法は、ヘッドマウントデバイスを備えたシステムにおいて実行され、
(a)操作オブジェクトと、前記操作オブジェクトによって影響が与えられる対象オブジェクトと、を含む仮想空間を定義する仮想空間データを生成するステップと、
(b)前記ヘッドマウントデバイスの動きおよび前記仮想空間データに基づいて、前記ヘッドマウントデバイスに表示される視野画像を示す視野画像データを生成するステップと、
(c)前記ヘッドマウントデバイスを装着したユーザの身体の一部の動きに応じて、前記操作オブジェクトを動かすステップと、
(d)前記操作オブジェクトの動きに応じて前記操作オブジェクトと前記対象オブジェクトとが干渉した場合には、前記操作オブジェクトと前記対象オブジェクトとの干渉量に基づいて、前記対象オブジェクトに与えられる前記影響を特定するステップと、
を含
前記影響は、前記操作オブジェクトと前記対象オブジェクトとの接触点における前記対象オブジェクトの視覚的な表示を異ならせることを含み、
前記対象オブジェクトは、前記接触点を含む表面と、前記表面とは反対側の裏面と、を少なくとも含み、
前記視覚的な表示は、前記表面において前記接触点を含む着色部分の面積、前記着色部分の濃淡、および、前記裏面において前記着色部分に対応する部分の面積、の少なくとも一つを含む、情報処理方法。
An information processing method,
The information processing method is performed in a system comprising a head mount device,
(A) generating virtual space data defining a virtual space including an operation object and a target object affected by the operation object;
(B) generating view image data indicating a view image to be displayed on the head mounted device based on the movement of the head mounted device and the virtual space data;
(C) moving the operation object in response to the movement of a part of the body of the user wearing the head mount device;
(D) When the operation object and the target object interfere with each other according to the movement of the operation object, the influence given to the target object is determined based on the amount of interference between the operation object and the target object. Identifying steps,
Only including,
The influence includes making the visual display of the target object different at a contact point between the operation object and the target object.
The target object includes at least a surface including the contact point and a back surface opposite to the surface.
The visual display includes information processing including at least one of an area of a colored portion including the contact point on the surface, a shade of the colored portion, and an area of a portion corresponding to the colored portion on the back surface Method.
前記操作オブジェクトと前記対象オブジェクトとが干渉している場合に、前記操作オブジェクトの位置が、前記対象オブジェクトの前記表面において接触する位置となるように調整されている、請求項に記載の情報処理方法。 When said operation object and the target object is interfering, the position of the operation object, the is adjusted to a position in contact at the surface of the target object, the information processing according to claim 1 Method. 前記影響は、前記対象オブジェクトの少なくとも一部が変形されるか否かが特定されることを含む、請求項1に記載の情報処理方法。   The information processing method according to claim 1, wherein the influence includes that whether or not at least a part of the target object is deformed is specified. 前記影響は、前記対象オブジェクトに予め関連付けられたパラメータを変動させることを含む、請求項1に記載の情報処理方法。   The information processing method according to claim 1, wherein the influence includes changing a parameter previously associated with the target object. (f)前記干渉量または前記影響に応じて触覚的なフィードバックを前記ユーザに与えるステップを、さらに含む、請求項1からのいずれか一項に記載の情報処理方法。 The information processing method according to any one of claims 1 to 4 , further comprising: (f) providing tactile feedback to the user according to the amount of interference or the influence. 情報処理方法であって、
前記情報処理方法は、ヘッドマウントデバイスを備えたシステムにおいて実行され、
(a)操作オブジェクトと、前記操作オブジェクトによって影響が与えられる対象オブジェクトと、を含む仮想空間を定義する仮想空間データを生成するステップと、
(b)前記ヘッドマウントデバイスの動きおよび前記仮想空間データに基づいて、前記ヘッドマウントデバイスに表示される視野画像を示す視野画像データを生成するステップと、
(c)前記ヘッドマウントデバイスを装着したユーザの身体の一部の動きに応じて、前記操作オブジェクトを動かすステップと、
(d)前記操作オブジェクトの動きに応じて前記操作オブジェクトと前記対象オブジェクトとが干渉した場合には、前記操作オブジェクトと前記対象オブジェクトとの干渉量に基づいて、前記対象オブジェクトに与えられる前記影響を特定するステップと、
を含み、
前記干渉量は、前記対象オブジェクトに干渉した前記操作オブジェクトの干渉部分の体積、および前記干渉部分の最大深さの少なくとも一つに基づいて規定される、情報処理方法。
An information processing method,
The information processing method is performed in a system comprising a head mount device,
(A) generating virtual space data defining a virtual space including an operation object and a target object affected by the operation object;
(B) generating view image data indicating a view image to be displayed on the head mounted device based on the movement of the head mounted device and the virtual space data;
(C) moving the operation object in response to the movement of a part of the body of the user wearing the head mount device;
(D) When the operation object and the target object interfere with each other according to the movement of the operation object, the influence given to the target object is determined based on the amount of interference between the operation object and the target object. Identifying steps,
Including
The amount of interference, the volume of the interference part of the operation object to interfere with the target object, and is defined based on at least one of the maximum depth of the interference portion, information processing method.
請求項1からのいずれか一項に記載の情報処理方法をコンピュータに実行させるための情報処理プログラム。 An information processing program for causing a computer to execute the information processing method according to any one of claims 1 to 6 . ヘッドマウントデバイスを用いた情報処理システムであって、請求項1からのうちいずれか一項に記載の情報処理方法を実行するように構成された、情報処理システム。 An information processing system using a head mounted device, wherein the information processing system is configured to execute the information processing method according to any one of claims 1 to 6 . プロセッサと、
コンピュータ可読命令を記憶するメモリと、を備えた情報処理装置であって、
前記コンピュータ可読命令が前記プロセッサにより実行されると、前記情報処理装置は請求項1からのうちいずれか一項に記載の情報処理方法を実行する、情報処理装置。
A processor,
An information processing apparatus comprising: a memory for storing computer readable instructions;
An information processing apparatus, wherein the information processing apparatus executes the information processing method according to any one of claims 1 to 6 , when the computer readable instruction is executed by the processor.
JP2017085308A 2017-04-24 2017-04-24 INFORMATION PROCESSING METHOD, INFORMATION PROCESSING PROGRAM, INFORMATION PROCESSING SYSTEM, AND INFORMATION PROCESSING APPARATUS Active JP6469752B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017085308A JP6469752B2 (en) 2017-04-24 2017-04-24 INFORMATION PROCESSING METHOD, INFORMATION PROCESSING PROGRAM, INFORMATION PROCESSING SYSTEM, AND INFORMATION PROCESSING APPARATUS

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017085308A JP6469752B2 (en) 2017-04-24 2017-04-24 INFORMATION PROCESSING METHOD, INFORMATION PROCESSING PROGRAM, INFORMATION PROCESSING SYSTEM, AND INFORMATION PROCESSING APPARATUS

Publications (2)

Publication Number Publication Date
JP2018185567A JP2018185567A (en) 2018-11-22
JP6469752B2 true JP6469752B2 (en) 2019-02-13

Family

ID=64356046

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017085308A Active JP6469752B2 (en) 2017-04-24 2017-04-24 INFORMATION PROCESSING METHOD, INFORMATION PROCESSING PROGRAM, INFORMATION PROCESSING SYSTEM, AND INFORMATION PROCESSING APPARATUS

Country Status (1)

Country Link
JP (1) JP6469752B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7361612B2 (en) * 2019-06-27 2023-10-16 株式会社ドワンゴ Information processing method, information processing device, and program

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4989383B2 (en) * 2007-09-10 2012-08-01 キヤノン株式会社 Information processing apparatus and information processing method
US8947455B2 (en) * 2010-02-22 2015-02-03 Nike, Inc. Augmented reality design system
US20150205351A1 (en) * 2014-01-17 2015-07-23 Osterhout Group, Inc. External user interface for head worn computing

Also Published As

Publication number Publication date
JP2018185567A (en) 2018-11-22

Similar Documents

Publication Publication Date Title
CN109690447B (en) Information processing method, program for causing computer to execute the information processing method, and computer
JP6189497B1 (en) Method for providing virtual space, method for providing virtual experience, program, and recording medium
WO2018020735A1 (en) Information processing method and program for causing computer to execute information processing method
WO2018047384A1 (en) Information processing method, program for causing computer to execute information processing method, and information processing device and information processing system whereupon information processing method is executed
JP6117414B1 (en) Information processing method and program for causing computer to execute information processing method
JP2017187952A (en) Display control method and program for causing computer to execute the method
JP6220937B1 (en) Information processing method, program for causing computer to execute information processing method, and computer
JP6140871B1 (en) Information processing method and program for causing computer to execute information processing method
JP6118444B1 (en) Information processing method and program for causing computer to execute information processing method
JP6113897B1 (en) Method for providing virtual space, method for providing virtual experience, program, and recording medium
JP6469752B2 (en) INFORMATION PROCESSING METHOD, INFORMATION PROCESSING PROGRAM, INFORMATION PROCESSING SYSTEM, AND INFORMATION PROCESSING APPARATUS
JP6416338B1 (en) Information processing method, information processing program, information processing system, and information processing apparatus
JP6159455B1 (en) Method, program, and recording medium for providing virtual space
JP2019036239A (en) Information processing method, information processing program, information processing system, and information processing device
JP2018026105A (en) Information processing method, and program for causing computer to implement information processing method
JP2018195172A (en) Information processing method, information processing program, and information processing device
JP6934374B2 (en) How it is performed by a computer with a processor
JP6403843B1 (en) Information processing method, information processing program, and information processing apparatus
JP6449922B2 (en) Information processing method and program for causing computer to execute information processing method
JP6122194B1 (en) Information processing method and program for causing computer to execute information processing method
JP2018018499A (en) Information processing method and program for causing computer to execute the method
JP2018014109A (en) Method for providing virtual space, method for providing virtual experience, program and recording medium
JP2018026099A (en) Information processing method and program for causing computer to execute the information processing method
JP2018014110A (en) Method for providing virtual space, method for providing virtual experience, program and recording medium
JP2018045338A (en) Information processing method and program for causing computer to execute the information processing method

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181023

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181127

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190116

R150 Certificate of patent or registration of utility model

Ref document number: 6469752

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250