JP2018025955A - Information processing method, and program for causing computer to implement information processing method - Google Patents
Information processing method, and program for causing computer to implement information processing method Download PDFInfo
- Publication number
- JP2018025955A JP2018025955A JP2016157052A JP2016157052A JP2018025955A JP 2018025955 A JP2018025955 A JP 2018025955A JP 2016157052 A JP2016157052 A JP 2016157052A JP 2016157052 A JP2016157052 A JP 2016157052A JP 2018025955 A JP2018025955 A JP 2018025955A
- Authority
- JP
- Japan
- Prior art keywords
- target object
- movement
- user
- operation object
- hmd
- 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.)
- Granted
Links
Landscapes
- Position Input By Displaying (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
Description
本開示は、情報処理方法および当該情報処理方法をコンピュータに実行させるためのプログラムに関する。 The present disclosure relates to an information processing method and a program for causing a computer to execute the information processing method.
非特許文献1は、現実空間におけるユーザの手の状態(位置や傾き等)に応じて、仮想現実(Virtual Reality:VR)空間における手オブジェクトの状態を変化させると共に、当該手オブジェクトを操作することで仮想空間内の所定のオブジェクトに所定の作用を与えることを開示している。 Non-Patent Document 1 changes the state of a hand object in a virtual reality (VR) space and manipulates the hand object according to the state (position, inclination, etc.) of the user's hand in the real space. Discloses that a predetermined action is given to a predetermined object in the virtual space.
非特許文献1では、手オブジェクトによって所定のオブジェクトを操作する上で、改善の余地がある。例えば、ユーザが現実空間における実際の物体を操作する上では体験できないような仮想体験をユーザに提供する上で改善の余地があり、ユーザが所望のタイミングで所望の仮想オブジェクトを操作可能とする必要がある。これにより、VR空間の他、拡張現実(Augmented Reality:AR)空間、複合現実(Mixed Reality:MR)空間といった、ユーザが様々な環境において仮想オブジェクトと相互作用する仮想体験を改善し得る。 In Non-Patent Document 1, there is room for improvement in operating a predetermined object with a hand object. For example, there is room for improvement in providing the user with a virtual experience that cannot be experienced by manipulating actual objects in real space, and the user needs to be able to manipulate the desired virtual object at the desired timing There is. Accordingly, in addition to the VR space, the virtual experience in which the user interacts with the virtual object in various environments such as augmented reality (AR) space and mixed reality (MR) space can be improved.
本開示は、仮想体験を改善し得る情報処理方法及び当該情報処理方法をコンピュータに実現させるためのプログラムを提供することを目的とする。 An object of the present disclosure is to provide an information processing method capable of improving a virtual experience and a program for causing a computer to realize the information processing method.
本開示が示す一態様によれば、ヘッドマウントディスプレイと、前記ヘッドマウントディスプレイの位置とユーザの頭部以外の身体の第1部分と第2部分の位置を検出するように構成された位置センサとを備えたシステムにおける情報処理方法であって、
(a)仮想カメラと、第1操作オブジェクトと、第2操作オブジェクトと、対象オブジェクトとを含む仮想空間を規定する仮想空間データを特定するステップと、
(b)前記ヘッドマウントディスプレイの動きに応じて、前記仮想カメラを動かすステップと、
(c)前記第1部分の動きに応じて、前記第1操作オブジェクトを動かすステップと、
(d)前記第2部分の動きに応じて、前記第2操作オブジェクトを動かすステップと、
(e)前記第1部分の動きに応じて、前記対象オブジェクトを選択するステップと、
(f)前記対象オブジェクトが選択された状態で、前記第2操作オブジェクトの動きに応じて、前記対象オブジェクトを変形させるステップと、
(g)前記仮想カメラの動きに基づいて前記仮想カメラの視野を定義し、前記視野と前記仮想空間データに基づいて、視野画像データを生成するステップと、
(h)前記視野画像データに基づいて、前記ヘッドマウントディスプレイに視野画像を表示させるステップと、を含む、情報処理方法。が提供される。
According to one aspect of the present disclosure, a head-mounted display, a position sensor configured to detect the position of the head-mounted display and the positions of the first and second parts of the body other than the user's head; An information processing method in a system comprising:
(A) identifying virtual space data defining a virtual space including a virtual camera, a first operation object, a second operation object, and a target object;
(B) moving the virtual camera in response to movement of the head mounted display;
(C) moving the first operation object in accordance with the movement of the first part;
(D) moving the second operation object in accordance with the movement of the second portion;
(E) selecting the target object according to the movement of the first part;
(F) With the target object selected, deforming the target object according to the movement of the second operation object;
(G) defining a visual field of the virtual camera based on the movement of the virtual camera, and generating visual field image data based on the visual field and the virtual space data;
(H) displaying a visual field image on the head-mounted display based on the visual field image data. Is provided.
本開示によれば、仮想体験を改善し得る情報処理方法、及び、当該情報処理方法をコンピュータに実現させるためのプログラムを提供することができる。 According to the present disclosure, it is possible to provide an information processing method capable of improving a virtual experience and a program for causing a computer to realize the information processing method.
[本開示が示す実施形態の説明]
本開示が示す実施形態の概要を説明する。
(項目1)
ヘッドマウントディスプレイと、前記ヘッドマウントディスプレイの位置とユーザの頭部以外の身体の第1部分と第2部分の位置を検出するように構成された位置センサとを備えたシステムにおける情報処理方法であって、
(a)仮想カメラと、第1操作オブジェクトと、第2操作オブジェクトと、対象オブジェクトとを含む仮想空間を規定する仮想空間データを特定するステップと、
(b)前記ヘッドマウントディスプレイの動きに応じて、前記仮想カメラを動かすステップと、
(c)前記第1部分の動きに応じて、前記第1操作オブジェクトを動かすステップと、
(d)前記第2部分の動きに応じて、前記第2操作オブジェクトを動かすステップと、
(e)前記第1部分の動きに応じて、前記対象オブジェクトを選択するステップと、
(f)前記対象オブジェクトが選択された状態で、前記第2操作オブジェクトの動きに応じて、前記対象オブジェクトを変形させるステップと、
(g)前記仮想カメラの動きに基づいて前記仮想カメラの視野を定義し、前記視野と前記仮想空間データに基づいて、視野画像データを生成するステップと、
(h)前記視野画像データに基づいて、前記ヘッドマウントディスプレイに視野画像を表示させるステップと、
を含む、情報処理方法。
本項目の情報処理方法によれば、第1操作オブジェクトを動かして対象オブジェクトを選択し、第2操作オブジェクトを動かすことによって対象オブジェクトを変形することができるので、ユーザが対象オブジェクトを意のままに操ることができる仮想体験が提供され得る。
(項目2)
(e)において、前記第1操作オブジェクトと前記対象オブジェクトの接触によって、前記対象オブジェクトが選択され、
(f)において、前記第2操作オブジェクトと前記対象オブジェクトが接触した後に、前記第2操作オブジェクトが移動した方向に基づいて、前記対象オブジェクトを変形させる、項目1の方法。
これにより、第2操作オブジェクトの動きに基づいて容易に対象オブジェクトを変形させることができ、ユーザが対象オブジェクトを意のままに操ることができる仮想体験が提供され得る。
(項目3)
前記対象オブジェクトは前記仮想空間における座標情報を含み、
前記対象オブジェクトの座標情報は、前記第2操作オブジェクトが移動した方向に基づいて更新される、項目2の方法。
これにより、対象オブジェクトの変形により、対象オブジェクトと第1操作オブジェクトの位置関係が不自然になることを防止できる。
(項目4)
前記第2操作オブジェクトが所定方向に所定距離だけ移動した場合、前記座標情報は、所定方向において前記所定距離の2分の1だけ移動するように変更される、項目3の方法。
これにより、対象オブジェクトの変形により、対象オブジェクトと第1操作オブジェクトの位置関係が不自然になることを防止できる。
(項目5)
(e)において、前記対象オブジェクトが選択されると、前記第2操作オブジェクトの動きに応じて前記対象オブジェクトを変形させることが可能な変形方向を示す方向表示を、前記対象オブジェクトに関連付けて表示させる、項目1〜4のいずれかの方法。
これにより、対象オブジェクトの変形ルールを明確にユーザに提示し得る。
(項目6)
(f)において、前記第2操作オブジェクトの動きを検知することにより、前記方向表示を消去させる、項目5の方法。
これにより、方向表示を表示させる時間を減らすことができ、方向表示がユーザの仮想体験を妨げることを防止し得る。
(項目7)
前記仮想カメラは、前記ヘッドマウントディスプレイの動きに応じて移動する視野座標系を定義し、前記視野座標系は上下方向と、水平方向と、奥行き方向を含み、
(e)において、前記対象オブジェクトが選択された時点における、前記対象オブジェクトの上方向および/または下方向、奥行き方向および/または手前方向、前記水平方向のうち前記対象オブジェクトにおける前記第1操作オブジェクトによって選択されていない方向、のうち少なくとも1つが、前記第2操作オブジェクトの動きに応じて前記対象オブジェクトを変形させることが可能な変形方向として特定される、項目1〜6のいずれかの方法。
これにより、対象オブジェクトの変形方向をユーザが操作しやすい次元に限定することができ、ユーザの仮想体験を損なうことなくコンピュータによる処理負荷を低減させることができる。
(項目8)
前記第2操作オブジェクトの動きに応じて前記対象オブジェクトを変形させることが可能な変形方向が特定された後に、前記第1操作オブジェクトが移動されることによって前記対象オブジェクトの向きが変化したとしても、前記変形方向を変化させない、項目7の方法。
これにより、ユーザが所定の変形方向に対象オブジェクトを変形させるために、当該所定の変形方向を視認しやすいように対象オブジェクトの向きを変更したような場合にも変形方向を変更しないことにより、ユーザに一貫性のある操作感を提供し得る。
(項目9)
項目1〜8のいずれかの方法を、前記コンピュータに実行させるプログラム。
[Description of Embodiments Presented by the Present Disclosure]
An overview of an embodiment indicated by the present disclosure will be described.
(Item 1)
An information processing method in a system comprising: a head mounted display; and a position sensor configured to detect a position of the head mounted display and positions of a first part and a second part of a body other than a user's head. And
(A) identifying virtual space data defining a virtual space including a virtual camera, a first operation object, a second operation object, and a target object;
(B) moving the virtual camera in response to movement of the head mounted display;
(C) moving the first operation object in accordance with the movement of the first part;
(D) moving the second operation object in accordance with the movement of the second portion;
(E) selecting the target object according to the movement of the first part;
(F) With the target object selected, deforming the target object according to the movement of the second operation object;
(G) defining a visual field of the virtual camera based on the movement of the virtual camera, and generating visual field image data based on the visual field and the virtual space data;
(H) displaying a field image on the head-mounted display based on the field image data;
Including an information processing method.
According to the information processing method of this item, the target object can be deformed by moving the first operation object, selecting the target object, and moving the second operation object. A virtual experience that can be manipulated can be provided.
(Item 2)
In (e), the target object is selected by contact between the first operation object and the target object,
The method according to item 1, wherein in (f), after the second operation object and the target object are in contact with each other, the target object is deformed based on a direction in which the second operation object has moved.
Thereby, the target object can be easily deformed based on the movement of the second operation object, and a virtual experience that allows the user to manipulate the target object at will can be provided.
(Item 3)
The target object includes coordinate information in the virtual space,
The method according to item 2, wherein the coordinate information of the target object is updated based on a direction in which the second operation object has moved.
Thereby, it is possible to prevent the positional relationship between the target object and the first operation object from becoming unnatural due to the deformation of the target object.
(Item 4)
The method according to item 3, wherein when the second operation object moves in a predetermined direction by a predetermined distance, the coordinate information is changed so as to move by a half of the predetermined distance in the predetermined direction.
Thereby, it is possible to prevent the positional relationship between the target object and the first operation object from becoming unnatural due to the deformation of the target object.
(Item 5)
In (e), when the target object is selected, a direction display indicating a deformation direction in which the target object can be deformed according to the movement of the second operation object is displayed in association with the target object. , Any one of items 1-4.
Thereby, the deformation | transformation rule of a target object can be clearly shown to a user.
(Item 6)
The method of item 5, wherein in (f), the direction display is erased by detecting the movement of the second operation object.
Thereby, the time which displays a direction display can be reduced and it can prevent that a direction display obstructs a user's virtual experience.
(Item 7)
The virtual camera defines a visual field coordinate system that moves according to the movement of the head-mounted display, and the visual field coordinate system includes a vertical direction, a horizontal direction, and a depth direction,
In (e), when the target object is selected, the first operation object in the target object among the upper direction and / or the lower direction, the depth direction and / or the front direction, and the horizontal direction of the target object. The method according to any one of items 1 to 6, wherein at least one of the unselected directions is specified as a deformation direction capable of deforming the target object in accordance with a movement of the second operation object.
Thereby, the deformation direction of the target object can be limited to a dimension that is easy for the user to operate, and the processing load on the computer can be reduced without impairing the virtual experience of the user.
(Item 8)
Even if the direction of the target object is changed by moving the first operation object after the deformation direction capable of deforming the target object according to the movement of the second operation object is specified, The method of item 7, wherein the deformation direction is not changed.
Accordingly, even when the orientation of the target object is changed so that the user can easily view the predetermined deformation direction in order for the user to deform the target object in the predetermined deformation direction, the user does not change the deformation direction. Can provide a consistent feeling of operation.
(Item 9)
A program for causing a computer to execute any one of items 1 to 8.
[本開示が示す実施形態の詳細]
以下、本開示が示す実施形態について図面を参照しながら説明する。尚、本実施形態の説明において既に説明された部材と同一の参照番号を有する部材については、説明の便宜上、その説明は繰り返さない。
[Details of Embodiments Presented by the Present Disclosure]
Hereinafter, embodiments of the present disclosure will be described with reference to the drawings. In addition, about the member which has the same reference number as the member already demonstrated in description of this embodiment, the description is not repeated for convenience of explanation.
最初に、図1を参照してヘッドマウントディスプレイ(HMD)システム1の構成について説明する。図1は、HMDシステム1を示す概略図である。図1に示すように、HMDシステム1は、ユーザUの頭部に装着されたHMD110と、位置センサ130と、制御装置120と、外部コントローラ320とを備える。 First, the configuration of the head mounted display (HMD) system 1 will be described with reference to FIG. FIG. 1 is a schematic diagram showing an HMD system 1. As shown in FIG. 1, the HMD system 1 includes an HMD 110 mounted on the head of the user U, a position sensor 130, a control device 120, and an external controller 320.
HMD110は、表示部112と、HMDセンサ114と、注視センサ140とを備える。表示部112は、HMD110を装着したユーザUの視界(視野)を覆うように構成された非透過型の表示装置を備えている。これにより、ユーザUは、表示部112に表示された視野画像を見ることで仮想空間に没入することができる。尚、表示部112は、ユーザUの左目に画像を提供するように構成された左目用の表示部とユーザUの右目に画像を提供するように構成された右目用の表示部から構成されてもよい。また、HMD110は、透過型表示装置を備えていても良い。この場合、当該透過型表示装置は、その透過率を調整することにより、一時的に非透過型の表示装置として構成可能であってもよい。また、視野画像は仮想空間を構成する画像の一部に、現実空間を提示する構成を含んでいてもよい。例えば、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 cover the field of view (field of view) of the user U wearing the HMD 110. Thereby, the user U can immerse in the virtual space by viewing the visual field image displayed on the display unit 112. The display unit 112 includes 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. Also good. 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. Further, the visual field image may include a configuration for presenting the real space in a part of the image configuring the virtual space. For example, an image captured by a camera mounted on the HMD 110 may be displayed so as to be superimposed on a part of the field-of-view image, or by setting the transmittance of a part of the transmissive display device to be high. Real space may be visible from a part.
HMDセンサ114は、HMD110の表示部112の近傍に搭載される。HMDセンサ114は、地磁気センサ、加速度センサ、傾きセンサ(角速度センサやジャイロセンサ等)のうちの少なくとも1つを含み、ユーザUの頭部に装着されたHMD110の各種動きを検出することができる。 The HMD sensor 114 is mounted in the vicinity of the display unit 112 of the HMD 110. The HMD sensor 114 includes at least one of a geomagnetic sensor, an acceleration sensor, and a tilt sensor (such as an angular velocity sensor and a gyro sensor), and can detect various movements of the HMD 110 mounted on the head of the user U.
注視センサ140は、ユーザUの視線方向を検出するアイトラッキング機能を有する。注視センサ140は、例えば、右目用注視センサと、左目用注視センサを備えてもよい。右目用注視センサは、ユーザUの右目に例えば赤外光を照射して、右目(特に、角膜や虹彩)から反射された反射光を検出することで、右目の眼球の回転角に関する情報を取得してもよい。一方、左目用注視センサは、ユーザUの左目に例えば赤外光を照射して、左目(特に、角膜や虹彩)から反射された反射光を検出することで、左目の眼球の回転角に関する情報を取得してもよい。 The gaze sensor 140 has an eye tracking function that detects the direction of 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 irradiates, for example, infrared light to the right eye of the user U, and detects reflected light reflected from the right eye (particularly the cornea and iris), thereby acquiring information related to the rotation angle of the right eye's eyeball. May be. On the other hand, the left eye gaze sensor irradiates the left eye of the user U with, for example, infrared light, and detects reflected light reflected from the left eye (particularly the cornea and iris), thereby providing information on the rotation angle of the left eye's eyeball. May be obtained.
位置センサ130は、例えば、ポジション・トラッキング・カメラにより構成され、HMD110と外部コントローラ320の位置を検出するように構成されている。位置センサ130は、制御装置120に無線又は有線により通信可能に接続されており、HMD110に設けられた図示しない複数の検知点の位置、傾き又は発光強度に関する情報を検出するように構成されている。さらに、位置センサ130は、外部コントローラ320に設けられた複数の検知点304(図4参照)の位置、傾き及び/又は発光強度に関する情報を検出するように構成されている。検知点は、例えば、赤外線や可視光を放射する発光部である。また、位置センサ130は、赤外線センサや複数の光学カメラを含んでもよい。 The position sensor 130 is configured by, for example, a position tracking camera, and is configured to detect the positions of the HMD 110 and the external controller 320. The position sensor 130 is communicably connected to the control device 120 by wireless or wired communication, and is configured to detect information on the position, inclination, or light emission intensity of a plurality of detection points (not shown) provided in the HMD 110. . Further, the position sensor 130 is configured to detect information on the position, inclination, and / or emission intensity of a plurality of detection points 304 (see FIG. 4) 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.
制御装置120は、HMDセンサ114や位置センサ130から取得された情報に基づいて、HMD110の位置や向きといった動き情報を取得し、当該取得された動き情報に基づいて、仮想空間における仮想視点(仮想カメラ)の位置や向きと、現実空間におけるHMD110を装着したユーザUの位置や向きを正確に対応付けることができる。さらに、制御装置120は、位置センサ130から取得された情報に基づいて、外部コントローラ320の動き情報を取得し、当該取得された動き情報に基づいて、仮想空間内に表示される手指オブジェクト(後述する)の位置や向きと、現実空間における外部コントローラ320とHMD110との間の、位置や向きの相対関係を正確に対応付けることができる。なお、外部コントローラ320の動き情報は、HMDセンサ114と同様に、外部コントローラ320に搭載された地磁気センサ、加速度センサ、傾きセンサ等であってもよい。 The control device 120 acquires motion information such as the position and orientation of the HMD 110 based on information acquired from the HMD sensor 114 and the position sensor 130, and based on the acquired motion information, a virtual viewpoint (virtual The position and orientation of the camera) can be accurately associated with the position and orientation of the user U wearing the HMD 110 in the real space. Further, the control device 120 acquires the movement information of the external controller 320 based on the information acquired from the position sensor 130, and based on the acquired movement information, a finger object (described later) is displayed in the virtual space. Can be accurately associated with the relative relationship between the position and orientation between the external controller 320 and the HMD 110 in the real space. Note that the motion information of the external controller 320 may be a geomagnetic sensor, an acceleration sensor, a tilt sensor, or the like mounted on the external controller 320, as with the HMD sensor 114.
制御装置120は、注視センサ140から送信された情報に基づいて、ユーザUの右目の視線と左目の視線をそれぞれ特定し、当該右目の視線と当該左目の視線の交点である注視点を特定することができる。さらに、制御装置120は、特定された注視点に基づいて、ユーザUの視線方向を特定することができる。ここで、ユーザUの視線方向は、ユーザUの両目の視線方向であって、ユーザUの右目と左目を結ぶ線分の中点と注視点を通る直線の方向に一致する。 Based on the information transmitted from the gaze sensor 140, the control device 120 identifies the gaze of the right eye and the left gaze of the user U, and identifies the gaze point that is the intersection of the gaze of the right eye and the gaze of the left eye. be able to. Furthermore, the control device 120 can specify the line-of-sight direction of the user U based on the specified gaze point. Here, the line-of-sight direction of the user U is the line-of-sight direction of both eyes of the user U and coincides with the direction of a straight line passing through the middle point of the line segment connecting the right eye and the left eye of the user U and the gazing point.
図2を参照して、HMD110の位置や向きに関する情報を取得する方法について説明する。図2は、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軸回りの角度変化に基づいて、仮想視点からの視軸を定義するための角度情報を決定する。 With reference to FIG. 2, a method for acquiring information related to the position and orientation of the HMD 110 will be described. FIG. 2 is a diagram illustrating the head of the user U wearing the HMD 110. Information on the position and orientation of the HMD 110 linked to 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 centering on the head of the user U wearing the HMD 110. The vertical direction in which the user U stands up is defined as the v-axis, the direction orthogonal to the v-axis and passing through the center of the HMD 110 is defined as the w-axis, and the direction orthogonal to the v-axis and the w-axis is defined as the u-axis. The position sensor 130 and / or the HMD sensor 114 is an angle around each uvw axis (that is, a yaw angle indicating rotation around the v axis, a pitch angle indicating rotation around the u axis, and a center around the w axis). The inclination determined by the roll angle indicating rotation) is detected. The control device 120 determines angle information for defining the visual axis from the virtual viewpoint based on the detected angle change around each uvw axis.
図3を参照して、制御装置120のハードウェア構成について説明する。図3は、制御装置120のハードウェア構成を示す図である。制御装置120は、制御部121と、記憶部123と、I/O(入出力)インターフェース124と、通信インターフェース125と、バス126とを備える。制御部121と、記憶部123と、I/Oインターフェース124と、通信インターフェース125は、バス126を介して互いに通信可能に接続されている。 The hardware configuration of the control device 120 will be described with reference to FIG. FIG. 3 is a diagram illustrating a hardware configuration of the control device 120. 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 connected to each other via a bus 126 so as to communicate with each other.
制御装置120は、HMD110とは別体に、パーソナルコンピュータ、タブレット又はウェアラブルデバイスとして構成されてもよいし、HMD110に内蔵されていてもよい。また、制御装置120の一部の機能がHMD110に搭載されると共に、制御装置120の残りの機能がHMD110とは別体の他の装置に搭載されてもよい。 The control device 120 may be configured as a personal computer, a tablet, or a wearable device separately from the HMD 110, or may be built in the HMD 110. In addition, some functions of the control device 120 may be mounted on the HMD 110, and the remaining functions of the control device 120 may be mounted on another device separate from the HMD 110.
制御部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 includes, for example, a ROM (Read Only Memory) in which various programs are stored, a RAM (Random Access Memory) having a plurality of work areas in which various programs executed by the processor are stored, and the like. The processor is, for example, a CPU (Central Processing Unit), an MPU (Micro Processing Unit), and / or a GPU (Graphics Processing Unit), and a program specified from various programs incorporated in the ROM is expanded on the RAM. It is comprised so that various processes may be performed in cooperation with.
プロセッサが本実施形態に係る情報処理方法をコンピュータに実行させるためのプログラム(後述する)をRAM上に展開し、RAMとの協働で当該プログラムを実行することで、制御部121は、制御装置120の各種動作を制御してもよい。制御部121は、メモリや記憶部123に格納された所定のアプリケーションプログラム(ゲームプログラムやインターフェースプログラム等を含む。)を実行することで、HMD110の表示部112に仮想空間(視野画像)を表示する。これにより、ユーザUは、表示部112に表示された仮想空間に没入することができる。 The control unit 121 allows the control unit 121 to execute a program for causing the computer to execute the information processing method according to this embodiment (described later) on the RAM and execute the program in cooperation with the RAM. Various operations of 120 may be controlled. The control unit 121 displays a virtual space (field-of-view image) on the display unit 112 of the HMD 110 by executing predetermined application programs (including game programs and interface programs) stored in the memory and the storage unit 123. . Thereby, the user U can be immersed in the virtual space displayed on the display unit 112.
記憶部(ストレージ)123は、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、USBフラッシュメモリ等の記憶装置であって、プログラムや各種データを格納するように構成されている。記憶部123は、本実施形態に係る情報処理方法をコンピュータに実行させるプログラムを格納してもよい。また、ユーザUの認証プログラムや各種画像やオブジェクトに関するデータを含むゲームプログラム等が格納されてもよい。さらに、記憶部123には、各種データを管理するためのテーブルを含むデータベースが構築されてもよい。 The storage unit (storage) 123 is a storage device such as an HDD (Hard Disk Drive), an SSD (Solid State Drive), or a USB flash memory, and is configured to store programs and various data. The storage unit 123 may store a program that causes a computer to execute the information processing method according to the present embodiment. In addition, a user U authentication program, a game program including data on various images and objects, and the like may be stored. Furthermore, a database including tables for managing various data may be constructed in the storage unit 123.
I/Oインターフェース124は、位置センサ130と、HMD110と、外部コントローラ320とをそれぞれ制御装置120に通信可能に接続するように構成されており、例えば、USB(Universal Serial Bus)端子、DVI(Digital Visual Interface)端子、HDMI(登録商標)(High―Definition Multimedia Interface)端子等により構成されている。尚、制御装置120は、位置センサ130と、HMD110と、外部コントローラ320とのそれぞれと無線接続されていてもよい。 The I / O interface 124 is configured to connect the position sensor 130, the HMD 110, and the external controller 320 to the control device 120 in a communicable manner. For example, a USB (Universal Serial Bus) terminal, a DVI (Digital) The terminal includes a Visual Interface (HDMI) terminal, a High-Definition Multimedia Interface (HDMI) (registered trademark) terminal, and the like. The control device 120 may be wirelessly connected to each of the position sensor 130, the HMD 110, and the external controller 320.
通信インターフェース125は、制御装置120をLAN(Local Area Network)、WAN(Wide Area Network)又はインターネット等の通信ネットワーク3に接続させるように構成されている。通信インターフェース125は、通信ネットワーク3を介してネットワーク上の外部装置と通信するための各種有線接続端子や、無線接続のための各種処理回路を含んでおり、通信ネットワーク3を介して通信するための通信規格に適合するように構成されている。 The communication interface 125 is configured to connect the control device 120 to a communication network 3 such as a LAN (Local Area Network), a WAN (Wide Area Network), or the Internet. The communication interface 125 includes various wired connection terminals for communicating with external devices on the network via the communication network 3 and various processing circuits for wireless connection, and for communicating via the communication network 3. It is configured to conform to the communication standard.
図4を参照して外部コントローラ320の具体的構成の一例について説明する。外部コントローラ320は、ユーザUの身体の一部(頭部以外の部位であり、本実施形態においてはユーザUの手)の動きを検知することにより、仮想空間内に表示される手オブジェクトの動作を制御するために使用される。外部コントローラ320は、ユーザUの右手(身体の第1部分)によって操作される右手用外部コントローラ320R(以下、単にコントローラ320Rという。)と、ユーザUの左手(身体の第2部分)によって操作される左手用外部コントローラ320L(以下、単にコントローラ320Lという。)と、を有する。コントローラ320Rは、ユーザUの右手の位置や右手の手指の動きを示す装置である。また、コントローラ320Rの動きに応じて仮想空間内に存在する右手オブジェクト400R(図9参照)が移動する。コントローラ320Lは、ユーザUの左手の位置や左手の手指の動きを示す装置である。また、コントローラ320Lの動きに応じて仮想空間内に存在する左手オブジェクト400L(図9参照)が移動する。コントローラ320Rとコントローラ320Lは略同一の構成を有するので、以下では、図4を参照してコントローラ320Rの具体的構成についてのみ説明する。尚、以降の説明では、便宜上、コントローラ320L,320Rを単に外部コントローラ320と総称する場合がある。また、左手オブジェクト400L,右手オブジェクト400Rを単に手オブジェクト400と総称する場合がある。また、右手オブジェクト400Rを第1操作オブジェクトの一例として、左手オブジェクト400Lを第2操作オブジェクトの一例として称する場合がある。 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 body of the user U (a part other than the head, which is the user U's hand in the present embodiment), thereby moving the hand object displayed in the virtual space. Used to control. The external controller 320 is operated by a right hand external controller 320R (hereinafter simply referred to as a controller 320R) operated by the right hand (first part of the body) of the user U and a left hand (second part of the body) of the user U. Left-hand external controller 320L (hereinafter simply referred to as controller 320L). The controller 320R is a device that indicates the position of the right hand of the user U and the movement of the finger of the right hand. Further, the right hand object 400R (see FIG. 9) that exists in the virtual space moves according to the movement of the controller 320R. The controller 320L is a device that indicates the position of the left hand of the user U and the movement of the finger of the left hand. Further, the left hand object 400L (see FIG. 9) that exists in the virtual space moves according to the movement of the controller 320L. Since the controller 320R and the controller 320L have substantially the same configuration, 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 external controller 320 for convenience. Further, the left hand object 400L and the right hand object 400R may be simply referred to as the hand object 400 in some cases. Further, the right hand object 400R may be referred to as an example of a first operation object, and the left hand object 400L may be referred to as an example of a second operation object.
図4に示すように、コントローラ320Rは、操作ボタン302と、複数の検知点304と、図示しないセンサと、図示しないトランシーバとを備える。検知点304とセンサは、どちらか一方のみが設けられていてもよい。操作ボタン302は、ユーザUからの操作入力を受付けるように構成された複数のボタン群により構成されている。操作ボタン302は、プッシュ式ボタン、トリガー式ボタン及びアナログスティックを含む。プッシュ式ボタンは、親指による押下する動作によって操作されるボタンである。例えば、天面322上に2つのプッシュ式ボタン302a,302bが設けられている。天面322上に親指が置かれることや、プッシュ式ボタン302a,302bが押下されることに応じて、手オブジェクト400の親指を伸ばした状態から曲げた状態に変化させることが好ましい。トリガー式ボタンは、人差し指や中指で引き金を引くような動作によって操作されるボタンである。例えば、グリップ324の前面部分にトリガー式ボタン302eが設けられると共に、グリップ324の側面部分にトリガー式ボタン302fが設けられる。トリガー式ボタン302eは、人差し指によって操作されることが想定されており、押下されることによって手オブジェクト400における人差し指が伸ばした状態から曲げた状態に変化させることが好ましい。トリガー式ボタン302fは、中指によって操作されることが想定されており、押下されることによって手オブジェクト400における中指、薬指、小指が伸ばした状態から曲げた状態に変化させることが好ましい。アナログスティックは、所定のニュートラル位置から360度任意の方向へ傾けて操作されうるスティック型のボタンである。例えば、天面322上にアナログスティック320iが設けられており、親指を用いて操作されることが想定されている。 As shown in FIG. 4, 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 includes a plurality of button groups configured to accept 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 a thumb. For example, two push buttons 302 a and 302 b are provided on the top surface 322. It is preferable to change the thumb of the hand object 400 from a stretched state to a bent state in response to the thumb placed on the top surface 322 or the push buttons 302a and 302b being pressed. The trigger type button is a button operated by an operation of pulling a trigger with an index finger or a middle finger. For example, a trigger button 302 e is provided on the front surface portion of the grip 324, and a trigger button 302 f is provided on the side surface portion of the grip 324. The trigger type button 302e is assumed to be operated by an index finger, and is preferably changed from a stretched state to a bent state by pushing the index finger of the hand object 400. The trigger button 302f is assumed to be operated by the middle finger, and is preferably changed from a stretched state to a bent state by the middle finger, the ring finger, and the little finger in the hand object 400 when pressed. The analog stick is a stick-type button that can be operated by being tilted 360 degrees from a predetermined neutral position in an arbitrary direction. For example, it is assumed that an analog stick 320i is provided on the top surface 322 and is operated using a thumb.
コントローラ320Rは、グリップ324の両側面から天面322とは反対側の方向へ延びて半円状のリングを形成するフレーム326を備える。フレーム326の外側面には、複数の検知点304が埋め込まれている。複数の検知点304は、例えば、フレーム326の円周方向に沿って一列に並んだ複数の赤外線LEDである。位置センサ130は、複数の検知点304の位置、傾き又は発光強度に関する情報を検出した後に、制御装置120は、位置センサ130によって検出された情報に基づいて、コントローラ320Rの位置や姿勢(傾き・向き)に関する情報を含む動き情報を取得する。 The controller 320R includes a frame 326 that extends from both side surfaces of the grip 324 in a direction opposite to the top surface 322 to form a semicircular ring. A plurality of detection points 304 are embedded on the outer surface of the frame 326. The plurality of detection points 304 are, for example, a plurality of infrared LEDs arranged in a line along the circumferential direction of the frame 326. After the position sensor 130 detects information on the position, inclination, or light emission intensity of the plurality of detection points 304, the control device 120 detects the position or orientation (inclination / posture) of the controller 320R based on the information detected by the position sensor 130. The motion information including information on (direction) is acquired.
コントローラ320Rのセンサは、例えば、磁気センサ、角速度センサ、若しくは加速度センサのいずれか、又はこれらの組み合わせであってもよい。センサは、ユーザUがコントローラ320Rを動かしたときに、コントローラ320Rの向きや動きに応じた信号(例えば、磁気、角速度、又は加速度に関する情報を示す信号)を出力する。制御装置120は、センサから出力された信号に基づいて、コントローラ320Rの位置や姿勢に関する情報を取得する。 The sensor of the controller 320R may be, for example, a magnetic sensor, an angular velocity sensor, 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 related to magnetism, angular velocity, or acceleration) according to the direction or movement of the controller 320R. The control device 120 acquires information related to 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 transceiver of the controller 320R is configured to transmit and receive data between the controller 320R and the control device 120. For example, the transceiver may transmit an operation signal corresponding to the operation input of the user U to the control device 120. The transceiver may receive an instruction signal for instructing the controller 320 </ b> R to emit light at the detection point 304 from the control device 120. Further, the transceiver may send a signal to the controller 120 indicating the value detected by the sensor.
図5から図8を参照することで視野画像をHMD110に表示するための処理について説明する。図5は、視野画像をHMD110に表示する処理を示すフローチャートである。図6は、仮想空間200の一例を示すxyz空間図である。図7における状態(a)は、図6に示す仮想空間200のyx平面図である。図7における状態(b)は、図6に示す仮想空間200のzx平面図である。図8は、HMD110に表示された視野画像Mの一例を示す図である。 A process for displaying the field-of-view image on the HMD 110 will be described with reference to FIGS. FIG. 5 is a flowchart showing a process for displaying the visual field image on the HMD 110. FIG. 6 is an xyz space diagram showing an example of the virtual space 200. The state (a) in FIG. 7 is a yx plan view of the virtual space 200 shown in FIG. The state (b) in FIG. 7 is a zx plan view of the virtual space 200 shown in FIG. FIG. 8 is a diagram illustrating an example of the visual field image M displayed on the HMD 110.
図5に示すように、ステップS1において、制御部121(図3参照)は、仮想カメラ300と、各種オブジェクトとを含む仮想空間200を示す仮想空間データを生成する。図6に示すように、仮想空間200は、中心位置21を中心とした全天球として規定される(図6では、上半分の天球のみが図示されている)。また、仮想空間200では、中心位置21を原点とするxyz座標系が設定されている。仮想カメラ300は、HMD110に表示される視野画像M(図8参照)を特定するための視軸Lを規定している。仮想カメラ300の視野を定義するuvw座標系は、現実空間におけるユーザUの頭部を中心として規定されたuvw座標系に連動するように決定される。また、制御部121は、HMD110を装着したユーザUの現実空間における移動に応じて、仮想カメラ300を仮想空間200内で移動させてもよい。また、仮想空間200内における各種オブジェクトは、例えば、左手オブジェクト400L、右手オブジェクト400R、操作オブジェクト500を含む(図9参照)。 As shown in FIG. 5, in step S1, the control unit 121 (see FIG. 3) generates virtual space data indicating the virtual space 200 including the virtual camera 300 and various objects. As shown in FIG. 6, the virtual space 200 is defined as an omnidirectional sphere with the center position 21 as the center (in FIG. 6, only the upper half celestial sphere is shown). In the virtual space 200, an xyz coordinate system with the center position 21 as the origin is set. The virtual camera 300 defines a visual axis L for specifying a visual field image M (see FIG. 8) displayed on the HMD 110. The uvw coordinate system that defines the visual field of the virtual camera 300 is determined so as to be linked to the uvw coordinate system that is defined around the head of the user U in the real space. Further, the control unit 121 may move the virtual camera 300 in the virtual space 200 according to the movement of the user U wearing the HMD 110 in the real space. The various objects in the virtual space 200 include, for example, a left hand object 400L, a right hand object 400R, and an operation object 500 (see FIG. 9).
ステップS2において、制御部121は、仮想カメラ300の視野CV(図7参照)を特定する。具体的には、制御部121は、位置センサ130及び/又はHMDセンサ114から送信されたHMD110の状態を示すデータに基づいて、HMD110の位置や傾きに関する情報を取得する。次に、制御部121は、HMD110の位置や傾きに関する情報に基づいて、仮想空間200内における仮想カメラ300の位置や向きを特定する。次に、制御部121は、仮想カメラ300の位置や向きから仮想カメラ300の視軸Lを決定し、決定された視軸Lから仮想カメラ300の視野CVを特定する。ここで、仮想カメラ300の視野CVは、HMD110を装着したユーザUが視認可能な仮想空間200の一部の領域に相当する。換言すれば、視野CVは、HMD110に表示される仮想空間200の一部の領域に相当する。また、視野CVは、状態(a)に示すxy平面において、視軸Lを中心とした極角αの角度範囲として設定される第1領域CVaと、状態(b)に示すxz平面において、視軸Lを中心とした方位角βの角度範囲として設定される第2領域CVbとを有する。尚、制御部121は、注視センサ140から送信されたユーザUの視線方向を示すデータに基づいて、ユーザUの視線方向を特定し、ユーザUの視線方向に基づいて仮想カメラ300の向きを決定してもよい。 In step S2, the control unit 121 identifies the field of view CV (see FIG. 7) of the virtual camera 300. Specifically, the control unit 121 acquires information on the position and inclination of the HMD 110 based on data indicating the state of the HMD 110 transmitted from the position sensor 130 and / or the HMD sensor 114. Next, the control unit 121 identifies the position and orientation of the virtual camera 300 in the virtual space 200 based on information regarding the position and tilt of the HMD 110. Next, the control unit 121 determines the visual axis L of the virtual camera 300 from the position and orientation of the virtual camera 300 and specifies the visual field CV of the virtual camera 300 from the determined visual axis L. Here, the visual field CV of the virtual camera 300 corresponds to a partial area of the virtual space 200 that can be viewed by the user U wearing the HMD 110. In other words, the visual field CV corresponds to a partial area of the virtual space 200 displayed on the HMD 110. The visual field CV is viewed in the first region CVa set as an angular range of the polar angle α around the visual axis L in the xy plane shown in the state (a) and in the xz plane shown in the state (b). And a second region CVb set as an angle range of the azimuth angle β around the 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 determines the direction of the virtual camera 300 based on the line of sight of the user U. May be.
制御部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を変化させることができる。 The control unit 121 can identify the visual field CV of the virtual camera 300 based on the data from the position sensor 130 and / or the HMD sensor 114. Here, when the user U wearing the HMD 110 moves, the control unit 121 changes the visual field 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. be able to. That is, the control unit 121 can change the visual field CV according to the movement of the HMD 110. Similarly, when the line-of-sight direction of the user U changes, the control unit 121 can move the visual field CV of the virtual camera 300 based on the data indicating the line-of-sight direction of the user U transmitted from the gaze sensor 140. That is, the control unit 121 can change the visual field CV according to the change in the user U's line-of-sight direction.
ステップS3において、制御部121は、HMD110の表示部112に表示される視野画像Mを示す視野画像データを生成する。具体的には、制御部121は、仮想空間200を規定する仮想空間データと、仮想カメラ300の視野CVとに基づいて、視野画像データを生成する。 In step S <b> 3, the control unit 121 generates visual field image data indicating the visual field image M displayed on the display unit 112 of the HMD 110. Specifically, the control unit 121 generates visual field image data based on virtual space data defining the virtual space 200 and the visual field CV of the virtual camera 300.
ステップS4において、制御部121は、視野画像データに基づいて、HMD110の表示部112に視野画像Mを表示する(図7参照)。このように、HMD110を装着しているユーザUの動きに応じて、仮想カメラ300の視野CVが更新され、HMD110の表示部112に表示される視野画像Mが更新されるので、ユーザUは仮想空間200に没入することができる。 In step S4, the control unit 121 displays the field image M on the display unit 112 of the HMD 110 based on the field image data (see FIG. 7). As described above, the visual field CV of the virtual camera 300 is updated according to the movement of the user U wearing the HMD 110, and the visual field image M displayed on the display unit 112 of the HMD 110 is updated. It is possible to immerse in the space 200.
仮想カメラ300は、左目用仮想カメラと右目用仮想カメラを含んでもよい。この場合、制御部121は、仮想空間データと左目用仮想カメラの視野に基づいて、左目用の視野画像を示す左目用視野画像データを生成する。さらに、制御部121は、仮想空間データと、右目用仮想カメラの視野に基づいて、右目用の視野画像を示す右目用視野画像データを生成する。その後、制御部121は、左目用視野画像データと右目用視野画像データに基づいて、HMD110の表示部112に左目用視野画像と右目用視野画像を表示する。このようにして、ユーザUは、左目用視野画像と右目用視野画像から、視野画像を3次元画像として視認することができる。本開示では、説明の便宜上、仮想カメラ300の数は一つとするが、本開示の実施形態は、仮想カメラの数が2つの場合でも適用可能である。 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 the 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 and the right-eye view image on the display unit 112 of the HMD 110 based on the left-eye view image data and the right-eye view image data. In this way, the user U can visually recognize the visual field image as a three-dimensional image from the left-eye visual field image and the right-eye visual field image. In the present disclosure, for convenience of explanation, the number of virtual cameras 300 is one, but the embodiment of the present disclosure is applicable even when the number of virtual cameras is two.
仮想空間200に含まれる左手オブジェクト400L、右手オブジェクト400R及び操作オブジェクト500について図9を参照して説明する。状態(a)は、HMD110とコントローラ320L,320Rを装着したユーザUを示す。状態(b)は、仮想カメラ300と、右手オブジェクト400R(第1操作オブジェクトの一例)と、左手オブジェクト400L(第2操作オブジェクトの一例)と、対象オブジェクト500とを含む仮想空間200を示す。 The left hand object 400L, the right hand object 400R, and the operation object 500 included in the virtual space 200 will be described with reference to FIG. The state (a) shows the user U wearing the HMD 110 and the controllers 320L and 320R. The state (b) shows the virtual space 200 including the virtual camera 300, the right hand object 400R (an example of the first operation object), the left hand object 400L (an example of the second operation object), and the target object 500.
図9に示すように、仮想空間200は、仮想カメラ300と、左手オブジェクト400Lと、右手オブジェクト400Rと、対象オブジェクト500とを含む。制御部121は、これらのオブジェクトを含む仮想空間200を規定する仮想空間データを生成している。上述したように、仮想カメラ300は、ユーザUが装着しているHMD110の動きに連動する。つまり、仮想カメラ300の視野は、HMD110の動きに応じて更新される。右手オブジェクト400Rは、ユーザUの右手(身体の第1部分)に装着されるコントローラ320Rの動きに応じて移動する第1操作オブジェクトである。左手オブジェクト400Lは、ユーザUの左手(身体の第2部分)に装着されるコントローラ320Lの動きに応じて移動する第2操作オブジェクトである。以降では、説明の便宜上、左手オブジェクト400Lと右手オブジェクト400Rを単に手オブジェクト400と総称する場合がある。また、左手オブジェクト400Lと右手オブジェクト400Rは、それぞれコリジョンエリアCAを有する。コリジョンエリアCAは、手オブジェクト400と対象オブジェクト(例えば、対象オブジェクト500)とのコリジョン判定(当たり判定)に供される。例えば、手オブジェクト400のコリジョンエリアCAと対象オブジェクト500のコリジョンエリアとが接触することで、手オブジェクト400と対象オブジェクト500とが接触したことが判定される。図9に示すように、コリジョンエリアCAは、例えば、手オブジェクト400の中心位置を中心とした直径Rを有する球により規定されてもよい。以下の説明では、コリジョンエリアCAは、オブジェクトの中心位置を中心とした直径Rの球状に形成されているものとする。 As shown in FIG. 9, the virtual space 200 includes a virtual camera 300, a left hand object 400 </ b> L, a right hand object 400 </ b> R, and a target object 500. The control unit 121 generates virtual space data that defines the virtual space 200 including these objects. As described above, the virtual camera 300 is linked to the movement of the HMD 110 worn by the user U. That is, the visual field of the virtual camera 300 is updated according to the movement of the HMD 110. The right hand object 400R is a first operation object that moves according to the movement of the controller 320R attached to the right hand (the first part of the body) of the user U. The left hand object 400L is a second operation object that moves according to the movement of the controller 320L attached to the user U's left hand (second body part). Hereinafter, for convenience of explanation, the left hand object 400L and the right hand object 400R may be simply referred to as the hand object 400 in some cases. The left hand object 400L and the right hand object 400R each have a collision area CA. The collision area CA is used for collision determination (hit determination) between the hand object 400 and a target object (for example, the target object 500). For example, when the collision area CA of the hand object 400 and the collision area of the target object 500 are in contact, it is determined that the hand object 400 and the target object 500 are in contact. As shown in FIG. 9, the collision area CA may be defined by, for example, a sphere having a diameter R with the center position of the hand object 400 as the center. In the following description, it is assumed that the collision area CA is formed in a spherical shape having a diameter R with the center position of the object as the center.
対象オブジェクト500は、左手オブジェクト400L,右手オブジェクト400Rによって移動させることができる。例えば、図8に示す仮想空間200において、キャラクタオブジェクトCOが通路RW上をSTART地点からGOAL地点に向けて自動的に移動されるゲームを例示する。通路RW上には窪み部分が設けられており、キャラクタオブジェクトCOはGOAL地点に向かう途中で当該窪みに落ちてしまい、GOAL地点にたどり着くことができず、ゲームオーバーとなる。ユーザは、手オブジェクト400を操作することによって対象オブジェクト500を操作することにより、上記窪みを対象オブジェクト500でカバーすることにより、キャラクタオブジェクトCOをGOAL地点に導くことができる。 The target object 500 can be moved by the left hand object 400L and the right hand object 400R. For example, in the virtual space 200 shown in FIG. 8, a game is illustrated in which the character object CO is automatically moved on the passage RW from the START point toward the GOAL point. A hollow portion is provided on the passage RW, and the character object CO falls into the hollow on the way to the GOAL point, cannot reach the GOAL point, and the game is over. The user can guide the character object CO to the GOAL point by operating the target object 500 by operating the hand object 400 and covering the depression with the target object 500.
対象オブジェクト500には、後述するようにxyz空間における配置位置を定義する座標情報が設定されている。仮想空間200には、xyz空間座標系に対応するようにグリッドGRが設定されている。ユーザが手オブジェクト400を対象オブジェクト500に接触させる(掴む動作を行ってもよい)ことによって対象オブジェクト500を選択し、この状態で対象オブジェクト500に接触している手オブジェクト400を移動させることによって対象オブジェクト500を移動させ、対象オブジェクト500の座標情報を変更させることができる。ユーザが手オブジェクト400による対象オブジェクト500の選択を解除する(掴んだ手を放すような動作を行ってもよい)と、解除した時点における対象オブジェクト500の座標に最も近いグリッドに対象オブジェクト500が配置される。 The target object 500 is set with coordinate information that defines an arrangement position in the xyz space, as will be described later. In the virtual space 200, a grid GR is set so as to correspond to the xyz space coordinate system. The user selects the target object 500 by bringing the hand object 400 into contact with the target object 500 (may perform a grabbing action), and moves the hand object 400 in contact with the target object 500 in this state to move the target object 500. The coordinate information of the target object 500 can be changed by moving the object 500. When the user cancels the selection of the target object 500 by the hand object 400 (the operation may be performed to release the grasped hand), the target object 500 is arranged in the grid closest to the coordinates of the target object 500 at the time of the cancellation. Is done.
本実施形態においては、単に対象オブジェクト500を通路RWの窪みに移動させるだけでは当該窪みがカバーされないように対象オブジェクト500の初期形状が設定されており、以下に説明するように対象オブジェクト500の形状を変更した上で通路RWの窪みに移動させる必要がある。 In the present embodiment, the initial shape of the target object 500 is set so that the depression is not covered simply by moving the target object 500 to the depression of the passage RW. As described below, the shape of the target object 500 is set. It is necessary to move to the recess of the passage RW.
本実施形態に係る情報処理方法について図10から図15を参照して説明する。図10,図11は、本実施形態に係る情報処理方法を説明するためのフローチャートである。図12,図13は、右手オブジェクト400Rによって選択された対象オブジェクト500を、左手オブジェクト400Lによって変形させる様子を示す。図14は、右手オブジェクト400Rによって対象オブジェクト500を選択した後に、右手オブジェクト400Rを動かすことによって対象オブジェクト500の向きが変更された様子を示す。図15は、対象オブジェクト500の変形前後における、対象オブジェクト500の座標情報の変化を示す。図16は、変形された対象オブジェクト500を用いてキャラクタオブジェクトCOをGOAL地点に導くことに成功した様子を示す。 The information processing method according to the present embodiment will be described with reference to FIGS. 10 and 11 are flowcharts for explaining the information processing method according to the present embodiment. 12 and 13 show a state in which the target object 500 selected by the right hand object 400R is deformed by the left hand object 400L. FIG. 14 illustrates a state in which the orientation of the target object 500 is changed by moving the right hand object 400R after the target object 500 is selected by the right hand object 400R. FIG. 15 shows changes in coordinate information of the target object 500 before and after the deformation of the target object 500. FIG. 16 shows how the character object CO is successfully guided to the GOAL point using the deformed target object 500.
図10に示すように、ステップS10において、HMD110に提示される視野画像を特定する。本実施形態においては、図9の状態(b)に示すように、仮想カメラ300の前方に対象オブジェクト500、および、手オブジェクト400L,400Rが存在している。従って、図8に示すように、視野画像M内には、対象オブジェクト500、および、手オブジェクト400が表示される。その他のキャラクタオブジェクトCOや通路RWといったオブジェクトは、図9および図12〜図15において図示を省略する。 As shown in FIG. 10, in step S <b> 10, the visual field image presented on the HMD 110 is specified. In the present embodiment, as shown in the state (b) of FIG. 9, the target object 500 and the hand objects 400L and 400R exist in front of the virtual camera 300. Therefore, as shown in FIG. 8, the target object 500 and the hand object 400 are displayed in the visual field image M. The other objects such as the character object CO and the passage RW are not shown in FIGS. 9 and 12 to 15.
ステップS11において、制御部121は、コントローラ320によって検知されるユーザUの手の動きに応じて、前述のように手オブジェクト400を動かす。 In step S <b> 11, the control unit 121 moves the hand object 400 as described above according to the hand movement of the user U detected by the controller 320.
ステップS12において、制御部121は、対象オブジェクト500と第1操作オブジェクト400が所定の条件を満たしたか否かを判定する。本実施形態においては、左手オブジェクト400L,右手オブジェクト400Rに設定されたコリジョンエリアCAに基づいて、各手オブジェクト400と対象オブジェクト500が接触したか否かを判定する。接触した場合には、ステップS13へ進む。接触していない場合には、再びユーザの手の動き情報を待ち受け、手オブジェクト400を動かす制御を継続する。 In step S12, the control unit 121 determines whether or not the target object 500 and the first operation object 400 satisfy a predetermined condition. In this embodiment, based on the collision area CA set for the left hand object 400L and the right hand object 400R, it is determined whether or not each hand object 400 and the target object 500 are in contact with each other. If contacted, the process proceeds to step S13. If it is not in contact, the control waits for the user's hand movement information again and continues to move the hand object 400.
ステップS13において、制御部121は、第1操作オブジェクト400と接触した対象オブジェクト500を、選択された状態とする。本実施形態においては、図12の状態(a)に示すように、右手オブジェクト400Rと対象オブジェクト500の接触が判定されるとともに、前述のような操作によって右手オブジェクト400Rの各指が曲げられることにより、対象オブジェクト500が右手オブジェクト400Rによって掴まれることによって選択された状態とされる。 In step S13, the control unit 121 sets the target object 500 in contact with the first operation object 400 to the selected state. In the present embodiment, as shown in the state (a) of FIG. 12, the contact between the right hand object 400R and the target object 500 is determined, and each finger of the right hand object 400R is bent by the operation as described above. The target object 500 is selected by being grasped by the right hand object 400R.
ステップS14において、制御部121は、左手オブジェクト400L(第2操作オブジェクト)の動きに応じて対象オブジェクト500を変形させることが可能な変形方向を特定する。本実施形態においては、図12の状態(a)に示すように、変形方向TDが、対象オブジェクト500の上方向、横方向(左方向)、図示しない奥行き方向に特定されている。ユーザUが右手を操作して右手オブジェクト400Rで対象オブジェクト500を選択した場合には、ユーザUが左手を操作して左手オブジェクト400Lにより後述するように対象オブジェクト500を変形させることとなる。従って、対象オブジェクト500の変形方向TDをユーザが操作しやすい次元に限定することで、ユーザの仮想体験を損なうことなくコンピュータによる処理負荷を低減させることができる。 In step S <b> 14, the control unit 121 specifies a deformation direction in which the target object 500 can be deformed according to the movement of the left hand object 400 </ b> L (second operation object). In the present embodiment, as shown in the state (a) of FIG. 12, the deformation direction TD is specified in the upward direction, the lateral direction (left direction), and the depth direction (not shown) of the target object 500. When the user U operates the right hand and selects the target object 500 with the right hand object 400R, the user U operates the left hand and deforms the target object 500 with the left hand object 400L as described later. Therefore, by limiting the deformation direction TD of the target object 500 to a dimension that is easy for the user to operate, the processing load on the computer can be reduced without impairing the user's virtual experience.
本実施形態においては、対象オブジェクト500が選択された時点における、対象オブジェクト500の上方向および/または下方向、奥行き方向および/または手前方向、水平方向のうち対象オブジェクトにおける右手オブジェクト400R(第1操作オブジェクト)によって選択されていない左方向、のうち少なくとも1つが、変形方向TDとして特定されることが好ましい。図12の状態(a)では、一例として、上方向と、奥行き方向と、選択に用いた右手オブジェクト400Rとは逆の左手オブジェクト400Lが存在する側の方向である左方向が、変形方向TDとして特定されている。なお、変形方向TDを特定するにあたって、対象オブジェクト500の上下方向、横方向、奥行き方向は、視野座標系uvwに基づいて特定されることが好ましい。視野座標系の上下方向であるv軸に最も垂直に近い角度で交差する面(上面/下面)に垂直な方向を対象オブジェクト500の上下方向とし、視野座標系の水平方向であるu軸に最も垂直に近い角度で交差する面(左面/右面)に垂直な方向を対象オブジェクト500の水平方向(横方向)とし、視野座標系の奥行き方向であるw軸に最も垂直に近い角度で交差する面(奥面/手前面)に垂直な方向を対象オブジェクト500の奥行き方向(手前方向)とする。 In the present embodiment, when the target object 500 is selected, the right hand object 400R (first operation) in the target object among the upper direction and / or the lower direction, the depth direction and / or the front direction, and the horizontal direction of the target object 500 is selected. Preferably, at least one of the left directions not selected by the object) is specified as the deformation direction TD. In the state (a) of FIG. 12, as an example, the upper direction, the depth direction, and the left direction that is the direction on the side where the left hand object 400L opposite to the right hand object 400R used for selection is present is the deformation direction TD. Have been identified. In specifying the deformation direction TD, the vertical direction, the horizontal direction, and the depth direction of the target object 500 are preferably specified based on the visual field coordinate system uvw. The vertical direction of the target object 500 is the direction perpendicular to the plane (upper surface / lower surface) that intersects the v axis, which is the vertical direction of the visual field coordinate system, at the angle closest to the vertical, and is the highest in the horizontal direction of the visual coordinate system. The direction perpendicular to the plane (left plane / right plane) intersecting at an angle close to vertical is the horizontal direction (lateral direction) of the target object 500, and the plane intersects at the angle closest to the w axis, which is the depth direction of the visual field coordinate system. A direction perpendicular to (the back surface / the front surface of the hand) is defined as the depth direction (front side) of the target object 500.
ステップS15において、制御部121は、特定された変形方向に基づいて、変形方向をユーザに視認可能に提示するための方向表示ODを、対象オブジェクト500に関連付けて表示させる。図12の状態(a)では、対象オブジェクト500のうち上記のように視野座標系uvwに基づいて特定された上面、左面、および、奥面から、方向表示ODが変形方向TDに向けて延びるように表示されている。これにより、対象オブジェクト500の変形ルールを明確にユーザに提示し得る。 In step S <b> 15, the control unit 121 displays a direction display OD for presenting the deformation direction so as to be visible to the user in association with the target object 500 based on the specified deformation direction. In the state (a) of FIG. 12, the direction display OD extends in the deformation direction TD from the top surface, the left surface, and the back surface specified based on the visual field coordinate system uvw as described above in the target object 500. Is displayed. Thereby, the deformation | transformation rule of the target object 500 can be clearly shown to a user.
図11に示すように、ステップS16において、制御部121は、対象オブジェクト500と第2操作オブジェクト400が所定の条件を満たしたか否かを判定する。本実施形態においては、各手オブジェクト400に設定されたコリジョンエリアCAに基づいて、各手オブジェクト400と対象オブジェクト500が接触したか否かを判定する。接触した場合には、ステップS17へ進む。接触していない場合には、再びユーザの手の動き情報を待ち受け、手オブジェクト400を動かす制御を継続する。 As shown in FIG. 11, in step S16, the control unit 121 determines whether or not the target object 500 and the second operation object 400 satisfy a predetermined condition. In this embodiment, based on the collision area CA set for each hand object 400, it is determined whether or not each hand object 400 and the target object 500 are in contact. If contacted, the process proceeds to step S17. If it is not in contact, the control waits for the user's hand movement information again and continues to move the hand object 400.
ステップS17において、制御部121は、第2操作オブジェクト400と接触した対象オブジェクト500を、選択された状態とする。本実施形態においては、図12の状態(b)に示すように、左手オブジェクト400Lと対象オブジェクト500の接触が判定されるとともに、前述のような操作によって左手オブジェクト400Lの各指が曲げられることにより、対象オブジェクト500が左手オブジェクト400Lによって掴まれることによって選択された状態とされる。 In step S <b> 17, the control unit 121 sets the target object 500 in contact with the second operation object 400 to the selected state. In the present embodiment, as shown in the state (b) of FIG. 12, the contact between the left hand object 400L and the target object 500 is determined, and each finger of the left hand object 400L is bent by the operation as described above. The target object 500 is selected by being grasped by the left hand object 400L.
ステップS18において、制御部121は、対象オブジェクト500が左手オブジェクト400Lによって選択された場合には、図12の状態(b)に示すように方向表示ODを消去する。ユーザUが対象オブジェクト500を左手オブジェクト400Lによって選択した時点ではユーザUは既に対象オブジェクト500を変形させる態様を決めていると想定される。従って、ユーザUの利便性を損なうことなく、方向表示を表示させる時間を減らすことにより、方向表示がユーザの視界内に無用に表示されることによって仮想体験を妨げることを防止し得る。 In step S18, when the target object 500 is selected by the left hand object 400L, the control unit 121 deletes the direction display OD as shown in the state (b) of FIG. When the user U selects the target object 500 with the left-hand object 400L, it is assumed that the user U has already determined a mode for deforming the target object 500. Therefore, by reducing the time for displaying the direction display without impairing the convenience of the user U, it is possible to prevent the virtual experience from being disturbed by the direction display being displayed unnecessarily in the user's field of view.
ステップS19において、制御部121は、左手オブジェクト400Lが対象オブジェクト500を選択した状態で、変形方向TDのいずれかの方向に移動されたか否かを検知する。検知された場合にはステップS20へ進む。検知されなかった場合には、引き続き左手オブジェクト400Lの移動を待ち受ける。 In step S19, the control unit 121 detects whether or not the left hand object 400L is moved in any one of the deformation directions TD in a state where the target object 500 is selected. If detected, the process proceeds to step S20. If it is not detected, it continues to wait for the left hand object 400L to move.
ステップS20において、制御部121は、左手オブジェクト400Lの動きに応じて、対象オブジェクト500を変形させる。具体的には、制御部121は、図12の状態(c)に示すように、左手オブジェクト400Lの移動方向MO、移動量MDに基づいて、対象オブジェクトを変形させる。具体的には、左手オブジェクト400Lが移動された移動方向MOが変形方向TDのうちの左方向に沿っているため、対象オブジェクト500は左方向に沿って拡大される。拡大量は移動量MDに基づいて決定され、移動量MDだけ対象オブジェクト500における拡大される方向の面(左側の面)が左方向に移動するように、対象オブジェクト500は左方向に沿って拡大される。このとき、上記拡大される方向の面に対向する面(右側の面)は、移動されないことが好ましい。これにより、対象オブジェクト500の変形によって、対象オブジェクト500と右手オブジェクト400Rの位置関係が不自然になることを防止できる。 In step S20, the control unit 121 deforms the target object 500 in accordance with the movement of the left hand object 400L. Specifically, as shown in the state (c) of FIG. 12, the control unit 121 deforms the target object based on the movement direction MO and the movement amount MD of the left hand object 400L. Specifically, since the moving direction MO in which the left hand object 400L is moved is along the left direction of the deformation direction TD, the target object 500 is enlarged along the left direction. The enlargement amount is determined based on the movement amount MD, and the target object 500 is enlarged along the left direction so that the surface (left surface) in the enlargement direction of the target object 500 moves to the left by the movement amount MD. Is done. At this time, it is preferable that the surface (right surface) opposite to the surface in the enlarged direction is not moved. Thereby, it is possible to prevent the positional relationship between the target object 500 and the right hand object 400R from becoming unnatural due to the deformation of the target object 500.
ステップS21において、制御部121は、対象オブジェクト500を変形させるとともに、変形される対象オブジェクト500の座標情報を更新する。座標情報は、対象オブジェクトの仮想空間200内における配置位置を特定するための情報であり、仮想空間200における空間座標系xyzに基づいて定義される。 In step S <b> 21, the control unit 121 deforms the target object 500 and updates the coordinate information of the target object 500 to be deformed. The coordinate information is information for specifying the arrangement position of the target object in the virtual space 200 and is defined based on the space coordinate system xyz in the virtual space 200.
本実施形態においては、図15に示すように、左手オブジェクト400Lの移動方向、および、移動量に基づいて、対象オブジェクト500の座標情報が更新される。図15の状態(a)に示すように、変形前の対象オブジェクト500は、その重心に基づいて規定された配置座標O1(L,0,0)を有するものとすると、対象オブジェクト500の横幅は2Lである。図15の状態(b)に示すように、左手オブジェクト400Lの移動方向MOが左側方向、移動量MDを2Dとしたとき、配置座標O1の移動方向MOも左手オブジェクト400Lの移動方向MOと同様に左側方向であり、配置座標O1の移動量はDであることが好ましい。変形後の対象オブジェクト500は、配置座標O2(L+D,0,0)、横幅は2L+2Dとなる。このように、配置座標O1の移動量は左手オブジェクト400Lの移動距離の2分の1であることが好ましい。これにより、対象オブジェクト500を変形させたとしても、右手オブジェクト400Rによって選択された(掴まれた)対象オブジェクト500の右端の位置を変えることなく対象オブジェクト500を拡大することができ、変形後の対象オブジェクト500の配置座標O2を容易に決定することができる。従って、対象オブジェクト500の変形により、対象オブジェクト500と右手オブジェクト400R(第1操作オブジェクト)の位置関係が不自然になることを防止できる。 In the present embodiment, as shown in FIG. 15, the coordinate information of the target object 500 is updated based on the moving direction and moving amount of the left hand object 400L. As shown in the state (a) of FIG. 15, if the target object 500 before deformation has the arrangement coordinates O1 (L, 0, 0) defined based on the center of gravity, the horizontal width of the target object 500 is 2L. As shown in the state (b) of FIG. 15, when the movement direction MO of the left hand object 400L is the left direction and the movement amount MD is 2D, the movement direction MO of the arrangement coordinates O1 is the same as the movement direction MO of the left hand object 400L. It is preferable that the movement amount of the arrangement coordinate O1 is D in the left direction. The deformed target object 500 has arrangement coordinates O2 (L + D, 0, 0) and a horizontal width of 2L + 2D. Thus, it is preferable that the movement amount of the arrangement coordinates O1 is half of the movement distance of the left hand object 400L. As a result, even if the target object 500 is deformed, the target object 500 can be enlarged without changing the position of the right end of the target object 500 selected (gripped) by the right hand object 400R. The arrangement coordinate O2 of the object 500 can be easily determined. Therefore, it is possible to prevent the positional relationship between the target object 500 and the right hand object 400R (first operation object) from becoming unnatural due to the deformation of the target object 500.
ステップS22において、制御部121は、移動された手オブジェクト400、および、変形された対象オブジェクト500に基づいて、視野画像Mを更新し、HMD110に出力する。これにより、ユーザUに対して対象オブジェクト500を意のままに操ることができる仮想体験が提供し得る。 In step S <b> 22, the control unit 121 updates the visual field image M based on the moved hand object 400 and the deformed target object 500, and outputs the visual field image M to the HMD 110. Thereby, a virtual experience that allows the user U to manipulate the target object 500 at will can be provided.
この後、ステップS10に戻って再びユーザUの手の動きを待ち受けることとしてもよい。また、右手オブジェクト400Rによる対象オブジェクト500の選択が継続されている場合には、ステップ16に戻って引き続き左手オブジェクト400Lの動きを受け付けて、さらに対象オブジェクト500を変形させる処理を実行してもよい。 Then, it is good also as returning to step S10 and waiting for the user's U hand movement again. Further, when the selection of the target object 500 by the right hand object 400R is continued, the process of returning to step 16 and continuously accepting the movement of the left hand object 400L and further deforming the target object 500 may be executed.
図13の状態(a)は、上記のように対象オブジェクト500を左方向に拡大した後、左手オブジェクト400Lによる対象オブジェクト500の選択を解除した状態を示す。この状態は図12の状態(a)に対応し、図13の状態(b)に示すように、左手オブジェクト400Lによって対象オブジェクトの上面を選択した後、図13の状態(c)に示すように変形方向である上方に左手オブジェクト400Lを移動させることにより、対象オブジェクト500を上方に向けてさらに拡大することができる。このように、上記のプロセスを繰り返すことにより、ユーザUは手オブジェクト400に基づいて意のままに対象オブジェクト500を変形させることができる。 The state (a) in FIG. 13 shows a state in which the selection of the target object 500 by the left hand object 400L is canceled after the target object 500 is enlarged in the left direction as described above. This state corresponds to the state (a) in FIG. 12, and as shown in the state (b) in FIG. 13, after the upper surface of the target object is selected by the left hand object 400L, as shown in the state (c) in FIG. By moving the left hand object 400L upward in the deformation direction, the target object 500 can be further enlarged upward. In this way, by repeating the above process, the user U can deform the target object 500 at will based on the hand object 400.
本実施形態においては、図14に示すように、右手オブジェクト400Rによって対象オブジェクト500の変形方向が特定された後に、右手オブジェクト400Rが移動されることによって対象オブジェクト500の向きが変化したとしても、変形方向TDを変化させないことが好ましい。ユーザUは、右手オブジェクト400Rによって対象オブジェクト500を選択した後、奥行き方向に対象オブジェクト500を拡大させる場合には、拡大させる長さを微調整するために対象オブジェクト500の奥行き方向を視認可能にするために対象オブジェクト500の向きを変えることが予想される。この場合にも変形方向TDを変更しないことにより、ユーザUは奥行き方向を視認しながら左手オブジェクト400Lによって対象オブジェクト5000を奥行き方向に拡大させることができ、一貫性のある操作感が提供され得る。 In this embodiment, as shown in FIG. 14, even if the direction of the target object 500 is changed by moving the right hand object 400R after the deformation direction of the target object 500 is specified by the right hand object 400R, the deformation is performed. It is preferable not to change the direction TD. When the user U enlarges the target object 500 in the depth direction after selecting the target object 500 with the right hand object 400R, the user U can visually recognize the depth direction of the target object 500 in order to finely adjust the length to be enlarged. Therefore, it is expected that the direction of the target object 500 is changed. Also in this case, by not changing the deformation direction TD, the user U can enlarge the target object 5000 in the depth direction by the left hand object 400L while visually recognizing the depth direction, and a consistent operational feeling can be provided.
図16に示すように、以上の操作を繰り返すことによって、ユーザUは対象オブジェクト500を通路RWの窪みをカバーするのに適した形状に変化させた後、対象オブジェクト500を手オブジェクト400によって窪み内に配置する。これにより、キャラクタオブジェクトCOをGOAL地点に到達させることができ、ゲームをクリアすることができる。 As shown in FIG. 16, by repeating the above operation, the user U changes the target object 500 into a shape suitable for covering the recess of the passage RW, and then the target object 500 is moved into the recess by the hand object 400. To place. Thereby, the character object CO can be made to reach the GOAL point, and the game can be cleared.
以上、本開示の実施形態について説明をしたが、本発明の技術的範囲が本実施形態の説明によって限定的に解釈されるべきではない。本実施形態は一例であって、特許請求の範囲に記載された発明の範囲内において、様々な実施形態の変更が可能であることが当業者によって理解されるところである。本発明の技術的範囲は特許請求の範囲に記載された発明の範囲及びその均等の範囲に基づいて定められるべきである。 As mentioned above, although embodiment of this indication was described, the technical scope of this invention should not be limitedly interpreted by description of this embodiment. This embodiment is an example, and it is understood by those skilled in the art that various modifications can be made 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 equivalents thereof.
本実施形態では、ユーザUの手の動きを示す外部コントローラ320の動きに応じて、手オブジェクトの移動が制御されているが、ユーザUの手自体の移動量に応じて、仮想空間内における手オブジェクトの移動が制御されてもよい。例えば、外部コントローラを用いる代わりに、ユーザの手指に装着されるグローブ型デバイスや指輪型デバイスを用いることで、位置センサ130により、ユーザUの手の位置や移動量を検出することができると共に、ユーザUの手指の動きや状態を検出することができる。また、位置センサ130は、ユーザUの手(手指を含む)を撮像するように構成されたカメラであってもよい。この場合、カメラを用いてユーザの手を撮像することにより、ユーザの手指に直接何らかのデバイスを装着させることなく、ユーザの手が表示された画像データに基づいて、ユーザUの手の位置や移動量を検出することができると共に、ユーザUの手指の動きや状態を検出することができる。 In the present embodiment, the movement of the hand object is controlled according to the movement of the external controller 320 indicating the movement of the user U's hand, but the hand in the virtual space is controlled according to the movement amount of the user U's hand itself. The movement of the object may be controlled. For example, instead of using an external controller, by using a glove-type device or a ring-type device worn on the user's finger, the position sensor 130 can detect the position and movement amount of the user U's hand, The movement and state of the user's U finger can be detected. Further, the position sensor 130 may be a camera configured to image the user U's hand (including fingers). In this case, by capturing the user's hand using a camera, the position and movement of the user's U hand can be determined based on the image data on which the user's hand is displayed without directly attaching any device to the user's finger. The amount can be detected, and the movement and state of the finger of the user U can be detected.
また、本実施形態では、ユーザUの頭部以外の身体の一部である手の位置及び/又は動きに応じて、手オブジェクトが対象オブジェクトに与える影響を規定するコリジョン効果が設定されているが、本実施形態はこれには限定されない。例えば、ユーザUの頭部以外の身体の一部である足の位置及び/又は動きに応じて、ユーザUの足の動きに連動する足オブジェクト(操作オブジェクトの一例)が対象オブジェクトに与える影響を規定するコリジョン効果が設定されてもよい。このように、本実施形態では、HMD110とユーザUの身体の一部との間の相対的な関係(距離及び相対速度)を特定し、特定された相対的な関係に応じて、当該ユーザUの身体の一部と連動する操作オブジェクトが対象オブジェクトに与える影響を規定するコリジョン効果が設定されてもよい。 In the present embodiment, the collision effect that defines the influence of the hand object on the target object is set according to the position and / or movement of the hand that is a part of the body other than the head of the user U. The present embodiment is not limited to this. For example, depending on the position and / or movement of a foot that is a part of the body other than the head of the user U, the influence of a foot object (an example of an operation object) linked to the movement of the user U's foot on the target object A prescribed collision effect may be set. Thus, in this embodiment, the relative relationship (distance and relative speed) between the HMD 110 and a part of the body of the user U is specified, and the user U is determined according to the specified relative relationship. A collision effect may be set that regulates the influence of an operation object linked to a part of the body on the target object.
また、上記説明では右手オブジェクト400Rを第1操作オブジェクト、左手オブジェクト400Lを第2操作オブジェクトとして説明したが、左手オブジェクト400Lで対象オブジェクト500を選択し、右手オブジェクト400Rによって対象オブジェクト500を変形させる場合には、左手オブジェクト400Lが第1操作オブジェクトであり、右手オブジェクト400Rを第2操作オブジェクトとして取り扱うことができる。 In the above description, the right hand object 400R is described as the first operation object and the left hand object 400L is described as the second operation object. However, when the target object 500 is selected by the left hand object 400L and the target object 500 is deformed by the right hand object 400R. Can handle the left hand object 400L as the first operation object and the right hand object 400R as the second operation object.
また、本実施形態においては、HMD110によってユーザが没入する仮想空間(VR空間)を例示して説明したが、HMD110として透過型HMDを採用してもよい。この場合、透過型HMD110を介してユーザUが視認する現実空間に対象オブジェクト500の画像を合成して出力し、AR空間やMR空間としての仮想体験を提供してもよい。そして、第1操作オブジェクト、および、第2操作オブジェクトにかえて、ユーザの身体の第1部分、および、第2部分(ユーザUの両手)の動きに基づいて、対象オブジェクト500の選択、および、変形を行ってもよい。この場合には、現実空間、および、ユーザの身体の第1部分、および、第2部分の座標情報を特定するとともに、対象オブジェクト500の座標情報を現実空間における座標情報との関係で定義することによって、ユーザUの身体の動きに基づいて対象オブジェクト500に作用を与えることができる。 In the present embodiment, the virtual space (VR space) in which the user is immersed by the HMD 110 has been described as an example, but a transmissive HMD may be adopted as the HMD 110. In this case, a virtual experience as an AR space or an MR space may be provided by synthesizing and outputting an image of the target object 500 in a real space visually recognized by the user U via the transmissive HMD 110. Then, instead of the first operation object and the second operation object, the selection of the target object 500 based on the movement of the first part of the user's body and the second part (both hands of the user U), and Deformation may be performed. In this case, the coordinate information of the real space and the first part and the second part of the user's body is specified, and the coordinate information of the target object 500 is defined in relation to the coordinate information in the real space. Thus, an action can be given to the target object 500 based on the movement of the user U's body.
1:HMDシステム
3:通信ネットワーク
21:中心位置
112:表示部
114:HMDセンサ
120:制御装置
121:制御部
123:記憶部
124:I/Oインターフェース
125:通信インターフェース
126:バス
130:位置センサ
140:注視センサ
200:仮想空間
300:仮想カメラ
302:操作ボタン
302a,302b:プッシュ式ボタン
302e,302f:トリガー式ボタン
304:検知点
320:外部コントローラ
320i:アナログスティック
320L:左手用外部コントローラ(コントローラ)
320R:右手用外部コントローラ(コントローラ)
322:天面
324:グリップ
326:フレーム
400:手オブジェクト
400L:左手オブジェクト
400R:右手オブジェクト
500:対象オブジェクト
CA:コリジョンエリア
CV:視野
CVa:第1領域
CVb:第2領域
1: HMD system 3: Communication network 21: Center position 112: Display unit 114: HMD sensor 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: virtual space 300: virtual camera 302: operation buttons 302a, 302b: push buttons 302e, 302f: trigger buttons 304: detection point 320: external controller 320i: analog stick 320L: external controller for left hand (controller)
320R: External controller for right hand (controller)
322: Top surface 324: Grip 326: Frame 400: Hand object 400L: Left hand object 400R: Right hand object 500: Target object CA: Collision area CV: Field of view CVa: First area CVb: Second area
Claims (9)
(a)仮想カメラと、第1操作オブジェクトと、第2操作オブジェクトと、対象オブジェクトとを含む仮想空間を規定する仮想空間データを特定するステップと、
(b)前記ヘッドマウントディスプレイの動きに応じて、前記仮想カメラを動かすステップと、
(c)前記第1部分の動きに応じて、前記第1操作オブジェクトを動かすステップと、
(d)前記第2部分の動きに応じて、前記第2操作オブジェクトを動かすステップと、
(e)前記第1部分の動きに応じて、前記対象オブジェクトを選択するステップと、
(f)前記対象オブジェクトが選択された状態で、前記第2操作オブジェクトの動きに応じて、前記対象オブジェクトを変形させるステップと、
(g)前記仮想カメラの動きに基づいて前記仮想カメラの視野を定義し、前記視野と前記仮想空間データに基づいて、視野画像データを生成するステップと、
(h)前記視野画像データに基づいて、前記ヘッドマウントディスプレイに視野画像を表示させるステップと、
を含む、情報処理方法。 An information processing method in a system comprising: a head mounted display; and a position sensor configured to detect a position of the head mounted display and positions of a first part and a second part of a body other than a user's head. And
(A) identifying virtual space data defining a virtual space including a virtual camera, a first operation object, a second operation object, and a target object;
(B) moving the virtual camera in response to movement of the head mounted display;
(C) moving the first operation object in accordance with the movement of the first part;
(D) moving the second operation object in accordance with the movement of the second portion;
(E) selecting the target object according to the movement of the first part;
(F) With the target object selected, deforming the target object according to the movement of the second operation object;
(G) defining a visual field of the virtual camera based on the movement of the virtual camera, and generating visual field image data based on the visual field and the virtual space data;
(H) displaying a field image on the head-mounted display based on the field image data;
Including an information processing method.
(f)において、前記第2操作オブジェクトと前記対象オブジェクトが接触した後に、前記第2操作オブジェクトが移動した方向に基づいて、前記対象オブジェクトを変形させる、請求項1の方法。 In (e), the target object is selected by contact between the first operation object and the target object,
2. The method according to claim 1, wherein, in (f), after the second operation object contacts the target object, the target object is deformed based on a direction in which the second operation object has moved.
前記対象オブジェクトの座標情報は、前記第2操作オブジェクトが移動した方向に基づいて更新される、請求項2の方法。 The target object includes coordinate information in the virtual space,
The method according to claim 2, wherein the coordinate information of the target object is updated based on a direction in which the second operation object has moved.
(e)において、前記対象オブジェクトが選択された時点における、前記対象オブジェクトの上方向および/または下方向、奥行き方向および/または手前方向、前記水平方向のうち前記対象オブジェクトにおける前記第1操作オブジェクトによって選択されていない方向、のうち少なくとも1つが、前記第2操作オブジェクトの動きに応じて前記対象オブジェクトを変形させることが可能な変形方向として特定される、請求項1〜6のいずれかの方法。 The virtual camera defines a visual field coordinate system that moves according to the movement of the head-mounted display, and the visual field coordinate system includes a vertical direction, a horizontal direction, and a depth direction,
In (e), when the target object is selected, the first operation object in the target object among the upper direction and / or the lower direction, the depth direction and / or the front direction, and the horizontal direction of the target object. The method according to claim 1, wherein at least one of the unselected directions is specified as a deformation direction capable of deforming the target object in accordance with a movement of the second operation object.
The program which makes the said computer perform the method in any one of Claims 1-8.
Priority Applications (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016157052A JP6140871B1 (en) | 2016-08-09 | 2016-08-09 | Information processing method and program for causing computer to execute information processing method |
US15/672,258 US10255658B2 (en) | 2016-08-09 | 2017-08-08 | Information processing method and program for executing the information processing method on computer |
CN201780041636.2A CN109690447B (en) | 2016-08-09 | 2017-08-09 | Information processing method, program for causing computer to execute the information processing method, and computer |
PCT/JP2017/028882 WO2018030453A1 (en) | 2016-08-09 | 2017-08-09 | Information processing method, program for causing computer to execute said information processing method, and computer |
CN202010786107.9A CN111949128A (en) | 2016-08-09 | 2017-08-09 | Information processing method, program for causing computer to execute the information processing method, and computer |
US16/283,820 US10664950B2 (en) | 2016-08-09 | 2019-02-25 | Information processing method and system for executing the information processing method |
US16/283,821 US10719911B2 (en) | 2016-08-09 | 2019-02-25 | Information processing method and system for executing the information processing method |
US16/853,752 US20200250793A1 (en) | 2016-08-09 | 2020-04-21 | Information processing method and system for executing the information processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016157052A JP6140871B1 (en) | 2016-08-09 | 2016-08-09 | Information processing method and program for causing computer to execute information processing method |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017091060A Division JP2018026105A (en) | 2017-05-01 | 2017-05-01 | Information processing method, and program for causing computer to implement information processing method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6140871B1 JP6140871B1 (en) | 2017-05-31 |
JP2018025955A true JP2018025955A (en) | 2018-02-15 |
Family
ID=58794385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016157052A Active JP6140871B1 (en) | 2016-08-09 | 2016-08-09 | Information processing method and program for causing computer to execute information processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6140871B1 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6470796B2 (en) * | 2017-06-12 | 2019-02-13 | 株式会社コロプラ | Information processing method, program, and computer |
JP2019020836A (en) * | 2017-07-12 | 2019-02-07 | 株式会社コロプラ | Information processing method, device, and program for causing computer to execute the method |
JP6368411B1 (en) * | 2017-08-31 | 2018-08-01 | 株式会社コロプラ | Method, program and computer executed on a computer to provide a virtual experience |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07239750A (en) * | 1993-12-28 | 1995-09-12 | Canon Inc | Method and device for modeling |
JPH10334278A (en) * | 1997-05-28 | 1998-12-18 | Fujitsu Ltd | Virtual clay system and its simulation method |
JP2011258161A (en) * | 2010-06-11 | 2011-12-22 | Namco Bandai Games Inc | Program, information storage medium and image generation system |
JP2013009748A (en) * | 2011-06-28 | 2013-01-17 | Kyocera Corp | Display device, control system, and control program |
JP2015118556A (en) * | 2013-12-18 | 2015-06-25 | マイクロソフト コーポレーション | Augmented reality overlay for control devices |
-
2016
- 2016-08-09 JP JP2016157052A patent/JP6140871B1/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07239750A (en) * | 1993-12-28 | 1995-09-12 | Canon Inc | Method and device for modeling |
JPH10334278A (en) * | 1997-05-28 | 1998-12-18 | Fujitsu Ltd | Virtual clay system and its simulation method |
JP2011258161A (en) * | 2010-06-11 | 2011-12-22 | Namco Bandai Games Inc | Program, information storage medium and image generation system |
JP2013009748A (en) * | 2011-06-28 | 2013-01-17 | Kyocera Corp | Display device, control system, and control program |
JP2015118556A (en) * | 2013-12-18 | 2015-06-25 | マイクロソフト コーポレーション | Augmented reality overlay for control devices |
Also Published As
Publication number | Publication date |
---|---|
JP6140871B1 (en) | 2017-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2018030453A1 (en) | Information processing method, program for causing computer to execute said information processing method, and computer | |
JP6093473B1 (en) | Information processing method and program for causing computer to execute information processing method | |
JP6122537B1 (en) | Information processing method and program for causing computer to execute information processing method | |
JP6117414B1 (en) | Information processing method and program for causing computer to execute information processing method | |
WO2018020735A1 (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 | |
JP6113897B1 (en) | Method for providing virtual space, method for providing virtual experience, program, and recording medium | |
JP6157703B1 (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 | |
JP2018026105A (en) | Information processing method, and program for causing computer to implement information processing method | |
JP2018110871A (en) | Information processing method, program enabling computer to execute method and computer | |
JP6535699B2 (en) | INFORMATION PROCESSING METHOD, INFORMATION PROCESSING PROGRAM, AND INFORMATION PROCESSING APPARATUS | |
JP2018026099A (en) | Information processing method and program for causing computer to execute the information processing method | |
JP2018045338A (en) | Information processing method and program for causing computer to execute the information processing method | |
JP6290493B2 (en) | Information processing method, program for causing computer to execute information processing method, and computer | |
JP6122194B1 (en) | Information processing method and program for causing computer to execute information processing method | |
JP6449922B2 (en) | Information processing method and program for causing computer to execute information processing method | |
JP6934374B2 (en) | How it is performed by a computer with a processor | |
JP6403843B1 (en) | Information processing method, information processing program, and information processing apparatus | |
JP6469752B2 (en) | INFORMATION PROCESSING METHOD, INFORMATION PROCESSING PROGRAM, INFORMATION PROCESSING SYSTEM, AND INFORMATION PROCESSING APPARATUS | |
JP6275809B1 (en) | Display control method and program for causing a computer to execute the display control method | |
JP2018018499A (en) | Information processing method and program for causing computer to execute the method | |
JP6941130B2 (en) | Information processing method, information processing program and information processing device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161130 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20161130 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20170110 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170201 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170227 |
|
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: 20170406 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170501 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6140871 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |