JP2019008751A - Information processing method, program, and information processing device - Google Patents

Information processing method, program, and information processing device Download PDF

Info

Publication number
JP2019008751A
JP2019008751A JP2017126809A JP2017126809A JP2019008751A JP 2019008751 A JP2019008751 A JP 2019008751A JP 2017126809 A JP2017126809 A JP 2017126809A JP 2017126809 A JP2017126809 A JP 2017126809A JP 2019008751 A JP2019008751 A JP 2019008751A
Authority
JP
Japan
Prior art keywords
user
moving
virtual space
moving object
collision
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
Application number
JP2017126809A
Other languages
Japanese (ja)
Other versions
JP6509955B2 (en
Inventor
健志 加田
Kenji Kada
健志 加田
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 JP2017126809A priority Critical patent/JP6509955B2/en
Publication of JP2019008751A publication Critical patent/JP2019008751A/en
Application granted granted Critical
Publication of JP6509955B2 publication Critical patent/JP6509955B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

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

Abstract

To improve user's virtual experiences.SOLUTION: An information processing method which is executed on a computer to provide a virtual space via a head-mounted display includes the steps of: specifying a virtual space; arranging an operation object, a mobile object, and a target object in the virtual space; causing the operation object to operate according to a user's motion; moving the mobile object on the basis of the operation of the operation object; determining an influence which the mobile object gives to the target object, on the basis of information on the speed of the mobile object; and giving, when the mobile object and target object have a first positional relation, an influence to the target object.SELECTED DRAWING: Figure 15

Description

本開示は、情報処理方法、プログラム及びコンピュータに関する。   The present disclosure relates to an information processing method, a program, and a computer.

非特許文献1には、手オブジェクト、投てき対象のオブジェクト、及び積み上げられた複数のオブジェクトを含む仮想現実(VR:Virtual Reality)空間において、手オブジェクトで投てき対象のオブジェクトをつかんで投げることにより、積み上げられた複数のオブジェクトを崩すことが開示されている。   In Non-Patent Document 1, in a virtual reality (VR) space including a hand object, an object to be thrown, and a plurality of stacked objects, the object to be thrown is grabbed and thrown and thrown up. It is disclosed that a plurality of given objects are destroyed.

“Toybox Demo for Oculus Touch”、[online]、平成27年10月13日、Oculus、[平成29年6月28日検索]、インターネット<https://www.youtube.com/watch?v=iFEMiyGMa58>“Toybox Demo for Oculus Touch”, [online], October 13, 2015, Oculus, [Search June 28, 2017], Internet <https://www.youtube.com/watch?v=iFEMiyGMa58 >

しかしながら、非特許文献1に開示された技術では、手オブジェクトにより投げられたオブジェクトが他のオブジェクトと衝突(接触)したことにより生じる効果を、投げられたオブジェクトの早さに関する情報で制御するという思想は開示されていない。このため、非特許文献1に開示された技術には、ユーザが仮想的に体験する仮想体験を改善する余地がある。   However, with the technique disclosed in Non-Patent Document 1, the idea that an effect caused by an object thrown by a hand object colliding (contacting) with another object is controlled by information about the speed of the thrown object. Is not disclosed. For this reason, the technology disclosed in Non-Patent Document 1 has room for improving the virtual experience that the user experiences virtually.

本開示は、ユーザの仮想体験を改善することが可能な情報処理方法、プログラム及びコンピュータを提供することを目的とする。   An object of the present disclosure is to provide an information processing method, a program, and a computer capable of improving a user's virtual experience.

本開示が示す一態様によれば、ヘッドマウントディスプレイを介して仮想空間を提供するためにコンピュータで実行される情報処理方法であって、前記仮想空間を規定するステップと、操作オブジェクトと移動オブジェクトと対象オブジェクトとを前記仮想空間に配置するステップと、ユーザの動きに応じて、前記操作オブジェクトを動作させるステップと、前記操作オブジェクトの動作に基づいて、前記移動オブジェクトを動かすステップと、前記移動オブジェクトの早さに関する情報に基づいて、前記移動オブジェクトが前記対象オブジェクトに与える影響を特定するステップと、前記移動オブジェクトと前記対象オブジェクトとが第1の位置関係にある場合に、前記対象オブジェクトに前記影響を与えるステップと、を含む情報処理方法が提供される。   According to one aspect of the present disclosure, an information processing method executed by a computer to provide a virtual space via a head-mounted display, the step of defining the virtual space, an operation object, and a moving object Placing a target object in the virtual space, moving the operation object according to a user's movement, moving the moving object based on the operation object's movement, and The step of identifying the influence of the moving object on the target object based on the information on the speed, and the influence on the target object when the moving object and the target object are in a first positional relationship. An information processing method including a step of giving There is provided.

本開示によれば、ユーザの仮想体験を改善し得る情報処理方法、プログラム及びコンピュータを提供することができる。   According to the present disclosure, it is possible to provide an information processing method, a program, and a computer that can improve a user's virtual experience.

図1は、ある実施の形態に従うHMDシステムの構成の概略を表す図である。FIG. 1 is a diagram showing an outline of a configuration of an HMD system according to an embodiment. 図2は、一局面に従うコンピュータのハードウェア構成の一例を表すブロック図である。FIG. 2 is a block diagram illustrating an example of a hardware configuration of a computer according to one aspect. 図3は、ある実施の形態に従うHMD装置に設定されるuvw視野座標系を概念的に表す図である。FIG. 3 is a diagram conceptually showing the uvw visual field coordinate system set in the HMD device according to an embodiment. 図4は、ある実施の形態に従う仮想空間を表現する一態様を概念的に表す図である。FIG. 4 is a diagram conceptually showing one aspect of expressing a virtual space according to an embodiment. 図5は、ある実施の形態に従うHMD装置を装着するユーザの頭部を上から表した図である。FIG. 5 is a diagram showing the head of the user wearing the HMD device according to an embodiment from above. 図6は、仮想空間において視界領域をX方向から見たYZ断面を表す図である。FIG. 6 is a diagram illustrating a YZ cross section of the visual field region viewed from the X direction in the virtual space. 図7は、仮想空間において視界領域をY方向から見たXZ断面を表す図である。FIG. 7 is a diagram illustrating an XZ cross section of the visual field region viewed from the Y direction in the virtual space. 図8は、ある実施の形態に従うコントローラの概略構成を表す図である。FIG. 8 is a diagram illustrating a schematic configuration of a controller according to an embodiment. 図9は、ある実施の形態に従うコンピュータをモジュール構成として表すブロック図である。FIG. 9 is a block diagram showing a computer according to an embodiment as a module configuration. 図10は、ユーザによって使用されるHMDシステムがユーザに仮想空間を提供するために実行する処理を表すフローチャートである。FIG. 10 is a flowchart showing processing executed by the HMD system used by the user to provide the user with a virtual space. 図11(A)は、HMD装置、及びコントローラを装着したユーザの一例を示す図である。図11(B)は、図11(A)に示す状態における、仮想空間内に配置された仮想カメラ、左手オブジェクト、右手オブジェクト、手榴弾オブジェクト、及び敵キャラクタの一例を示す図である。FIG. 11A illustrates an example of a user wearing an HMD device and a controller. FIG. 11B is a diagram illustrating an example of a virtual camera, a left hand object, a right hand object, a grenade object, and an enemy character arranged in the virtual space in the state illustrated in FIG. 図12は、図11(B)に示す仮想空間内を仮想カメラの視界領域で撮影した視界画像の一例を示す図である。FIG. 12 is a diagram illustrating an example of a visual field image obtained by capturing the inside of the virtual space illustrated in FIG. 11B with the visual field region of the virtual camera. 図13は、本実施形態のコリジョン制御処理の一例を示すフローチャートである。FIG. 13 is a flowchart illustrating an example of the collision control process according to the present embodiment. 図14は、本実施形態のコリジョン制御処理の一例を示すフローチャートである。FIG. 14 is a flowchart illustrating an example of the collision control process according to the present embodiment. 図15は、本実施形態のコリジョン制御処理の一例を示すフローチャートである。FIG. 15 is a flowchart illustrating an example of the collision control process according to the present embodiment. 図16(A)は、手榴弾オブジェクトからピンが抜かれた状態で、ユーザが物を投げる動作を行っている状態の一例を示す図である。図16(B)は、図16(A)が示す状態において、手榴弾オブジェクトの速度が閾値以上の場合のコリジョンエリアの制御例を示す図である。FIG. 16A is a diagram illustrating an example of a state where the user is performing an action of throwing an object in a state where the pin is removed from the grenade object. FIG. 16B is a diagram illustrating a collision area control example when the speed of the grenade object is equal to or higher than a threshold value in the state illustrated in FIG. 図17(A)は、手榴弾オブジェクトからピンが抜かれた状態で、ユーザが物を投げる動作を行っている状態の一例を示す図である。図17(B)は、図17(A)が示す状態において、手榴弾オブジェクトの速度が閾値未満の場合のコリジョンエリアの制御例を示す図である。FIG. 17A is a diagram illustrating an example of a state where the user is performing an action of throwing an object in a state where the pin is removed from the grenade object. FIG. 17B is a diagram illustrating a collision area control example when the speed of the grenade object is less than the threshold value in the state illustrated in FIG. 図18(A)は、手榴弾オブジェクトからピンが抜かれていない状態で、ユーザが物を投げる動作を行っている状態の一例を示す図である。図18(B)は、図18(A)が示す状態において、手榴弾オブジェクトの速度が閾値以上の場合のコリジョン効果の制御例を示す図である。FIG. 18A is a diagram illustrating an example of a state where the user is performing an action of throwing an object in a state where the pin is not removed from the grenade object. FIG. 18B is a diagram illustrating an example of collision effect control when the speed of the grenade object is equal to or higher than the threshold value in the state illustrated in FIG. 図19(A)は、手榴弾オブジェクトからピンが抜かれていない状態で、ユーザが物を投げる動作を行っている状態の一例を示す図である。図19(B)は、図19(A)が示す状態において、手榴弾オブジェクトの速度が閾値未満の場合のコリジョン効果の制御例を示す図である。FIG. 19A is a diagram illustrating an example of a state in which the user is performing an action of throwing an object in a state where the pin is not removed from the grenade object. FIG. 19B is a diagram illustrating an example of collision effect control when the speed of the grenade object is less than the threshold in the state illustrated in FIG. 図20は、変形例1のコリジョン制御処理の一例を示すフローチャートである。FIG. 20 is a flowchart illustrating an example of the collision control process according to the first modification. 図21は、変形例1のコリジョン制御処理の一例を示すフローチャートである。FIG. 21 is a flowchart illustrating an example of the collision control process according to the first modification. 図22(A)は、HMD装置、及びコントローラを装着したユーザの一例を示す図である。図22(B)は、図22(A)に示す状態における、仮想空間内に配置された仮想カメラ、左手オブジェクト、右手オブジェクト、ボールオブジェクト、及び打者キャラクタの一例を示す図である。FIG. 22A is a diagram illustrating an example of a user wearing an HMD device and a controller. FIG. 22B is a diagram illustrating an example of the virtual camera, the left hand object, the right hand object, the ball object, and the batter character arranged in the virtual space in the state illustrated in FIG. 図23は、図22(B)に示す仮想空間内を仮想カメラの視界領域で撮影した視界画像Mの一例を示す図である。FIG. 23 is a diagram illustrating an example of a visual field image M obtained by capturing the virtual space illustrated in FIG. 22B with the visual field region of the virtual camera. 図24は、第2実施形態のコリジョン制御処理の一例を示すフローチャートである。FIG. 24 is a flowchart illustrating an example of a collision control process according to the second embodiment. 図25は、第2実施形態のコリジョン制御処理の一例を示すフローチャートである。FIG. 25 is a flowchart illustrating an example of a collision control process according to the second embodiment. 図26(A)は、ユーザが物を投げる動作を行っている状態の一例を示す図である。図26(B)は、図26(A)が示す状態において、ボールオブジェクトの速度が閾値以上の場合のコリジョンエリアの制御例を示す図である。FIG. 26A is a diagram illustrating an example of a state where the user is performing an action of throwing an object. FIG. 26B is a diagram illustrating a collision area control example when the speed of the ball object is equal to or higher than the threshold value in the state illustrated in FIG. 図27(A)は、ユーザが物を投げる動作を行っている状態の一例を示す図である。図27(B)は、図27(A)が示す状態において、ボールオブジェクトの速度が閾値未満の場合のコリジョンエリアの制御例を示す図である。FIG. 27A is a diagram illustrating an example of a state where the user is performing an action of throwing an object. FIG. 27B is a diagram illustrating a collision area control example when the speed of the ball object is less than the threshold value in the state illustrated in FIG. 図28(A)は、ユーザが物を投げる動作を行っている状態の一例を示す図である。図28(B)は、図28(A)が示す状態において、ボールオブジェクトの速度が閾値以上の場合のコリジョン効果の制御例を示す図である。FIG. 28A is a diagram illustrating an example of a state where the user is performing an action of throwing an object. FIG. 28B is a diagram illustrating an example of collision effect control when the speed of the ball object is equal to or higher than the threshold value in the state illustrated in FIG. 図29(A)は、ユーザが物を投げる動作を行っている状態の一例を示す図である。図29(B)は、図29(A)が示す状態において、ボールオブジェクトの速度が閾値未満の場合のコリジョン効果の制御例を示す図である。FIG. 29A is a diagram illustrating an example of a state where the user is performing an action of throwing an object. FIG. 29B is a diagram illustrating a collision effect control example when the speed of the ball object is less than the threshold value in the state illustrated in FIG. 図30は、コントローラ160の姿勢変化パターン毎に、該当する球種及び当該球種の回転パターン定義した情報例を示す図である。FIG. 30 is a diagram illustrating an example of information in which a corresponding sphere type and a rotation pattern of the sphere type are defined for each posture change pattern of the controller 160. ユーザの手の姿勢の時系列的な変化も考慮してコリジョンエリアを制御する場合の説明図である。It is explanatory drawing in the case of controlling a collision area also considering the time-sequential change of a user's hand attitude | position. ユーザの手の姿勢の時系列的な変化も考慮してコリジョン効果を制御する場合の説明図である。It is explanatory drawing in the case of controlling a collision effect also considering the time-sequential change of a user's hand attitude | position.

<本開示が示す実施形態の詳細>
以下、本開示が示す実施形態の詳細について図面を参照しながら説明する。以下の説明では、基本的に、同一の構成要素には同一の符号を付している。このため、説明済みの構成要素(説明済みの参照番号が付された構成要素)については、必要がある場合を除き、原則、その説明を繰り返さない。
<Details of Embodiments Shown by Present Disclosure>
Hereinafter, details of an embodiment shown in the present disclosure will be described with reference to the drawings. In the following description, basically, the same components are denoted by the same reference numerals. For this reason, in principle, the description of the components already described (components to which the reference numbers already described are assigned) is not repeated unless necessary.

(第1実施形態)
[HMDシステムの構成]
図1を参照して、HMD(Head Mount Device)システム100の構成について説明する。図1は、ある実施の形態に従うHMDシステム100の構成の概略を表す図である。ある局面において、HMDシステム100は、家庭用のシステムとしてあるいは業務用のシステムとして提供される。
(First embodiment)
[Configuration of HMD system]
A configuration of an HMD (Head Mount Device) system 100 will be described with reference to FIG. FIG. 1 is a diagram representing an outline of a configuration of an HMD system 100 according to an embodiment. In one aspect, the HMD system 100 is provided as a home system or a business system.

HMDシステム100は、HMD装置110と、HMDセンサ120と、コントローラ160と、コンピュータ200と、を備える。HMD装置110は、ディスプレイ112と、カメラ116と、マイク118と、注視センサ140と、を含む。コントローラ160は、モーションセンサ130を含み得る。   The HMD system 100 includes an HMD device 110, an HMD sensor 120, a controller 160, and a computer 200. The HMD device 110 includes a display 112, a camera 116, a microphone 118, and a gaze sensor 140. The controller 160 can include a motion sensor 130.

ある局面において、コンピュータ200は、インターネットその他のネットワーク19に接続可能であり、ネットワーク19に接続されているサーバ150その他のコンピュータと通信可能である。別の局面において、HMD装置110は、HMDセンサ120の代わりに、センサ114を含み得る。   In one aspect, the computer 200 can be connected to the Internet and other networks 19, and can communicate with the server 150 and other computers connected to the network 19. In another aspect, the HMD device 110 may include a sensor 114 instead of the HMD sensor 120.

HMD装置110は、ユーザの頭部に装着され、動作中に仮想空間をユーザに提供し得る。より具体的には、HMD装置110は、右目用の画像および左目用の画像をディスプレイ112にそれぞれ表示する。ユーザの各目がそれぞれの画像を視認すると、ユーザは、両目の視差に基づき当該画像を3次元の画像として認識し得る。ディスプレイ112はHMD装置110と一体に構成されていてもよいし、別体であってもよい。   The HMD device 110 may be worn on the user's head and provide a virtual space to the user during operation. More specifically, the HMD device 110 displays a right-eye image and a left-eye image on the display 112, respectively. When each eye of the user visually recognizes each image, the user can recognize the image as a three-dimensional image based on the parallax of both eyes. The display 112 may be configured integrally with the HMD device 110 or may be a separate body.

ディスプレイ112は、例えば、非透過型の表示装置として実現される。ある局面において、ディスプレイ112は、ユーザの両目の前方に位置するようにHMD装置110の本体に配置されている。従って、ユーザは、ディスプレイ112に表示される3次元画像を視認すると、仮想空間に没入することができる。ある実施の形態において、仮想空間は、例えば、背景、オブジェクト、およびユーザが選択可能なメニューの画像等を含む。ある実施の形態において、ディスプレイ112は、所謂スマートフォンその他の情報表示端末が備える液晶ディスプレイまたは有機EL(Electro Luminescence)ディスプレイとして実現され得る。   The display 112 is realized as a non-transmissive display device, for example. In one aspect, the display 112 is disposed on the main body of the HMD device 110 so as to be positioned in front of both eyes of the user. Accordingly, when the user visually recognizes the three-dimensional image displayed on the display 112, the user can be immersed in the virtual space. In one embodiment, the virtual space includes, for example, a background, an object, and a user selectable menu image. In an embodiment, the display 112 may be realized as a liquid crystal display or an organic EL (Electro Luminescence) display included in a so-called smartphone or other information display terminal.

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

カメラ116は、HMD装置110を装着するユーザの顔画像を取得する。カメラ116によって取得された顔画像は、画像解析処理によってユーザの表情を検知するために使用され得る。カメラ116は、例えば、瞳の動き、まぶたの開閉、および眉毛の動き等を検知するために、HMD装置110本体に内蔵された赤外線カメラであってもよい。あるいは、カメラ116は、ユーザの口、頬、および顎等の動きを検知するために、図1に示されるようにHMD装置110の外側に配置された外付けカメラであってもよい。また、カメラ116は、上述した赤外線カメラおよび外付けカメラの両方によって構成されてもよい。   The camera 116 acquires a face image of the user wearing the HMD device 110. The face image acquired by the camera 116 can be used to detect the user's facial expression through image analysis processing. The camera 116 may be, for example, an infrared camera built in the main body of the HMD device 110 in order to detect pupil movement, eyelid opening / closing, eyebrow movement, and the like. Alternatively, the camera 116 may be an external camera disposed outside the HMD device 110 as shown in FIG. 1 in order to detect movements of the user's mouth, cheeks, and jaws. The camera 116 may be configured by both the infrared camera and the external camera described above.

マイク118は、ユーザが発した音声を取得する。マイク118によって取得された音声は、音声解析処理によってユーザの感情を検知するために使用され得る。当該音声は、仮想空間に対して、音声による指示を与えるためにも使用され得る。また、当該音声は、ネットワーク19およびサーバ150等を介して、他のユーザが使用するHMDシステムに送られ、当該HMDシステムに接続されたスピーカ等から出力されてもよい。これにより、仮想空間を共有するユーザ間での会話(チャット)が実現される。   The microphone 118 acquires the voice uttered by the user. The voice acquired by the microphone 118 can be used to detect a user's emotion by voice analysis processing. The voice can also be used to give a voice instruction to the virtual space. Further, the sound may be sent to the HMD system used by another user via the network 19 and the server 150, and output from a speaker or the like connected to the HMD system. Thereby, the conversation (chat) between the users who share a virtual space is implement | achieved.

HMDセンサ120は、複数の光源(図示しない)を含む。各光源は例えば、赤外線を発するLED(Light Emitting Diode)により実現される。HMDセンサ120は、HMD装置110の動きを検出するためのポジショントラッキング機能を有する。HMDセンサ120は、この機能を用いて、現実空間内におけるHMD装置110の位置および傾きを検出する。   The HMD sensor 120 includes a plurality of light sources (not shown). Each light source is realized by, for example, an LED (Light Emitting Diode) that emits infrared rays. The HMD sensor 120 has a position tracking function for detecting the movement of the HMD device 110. The HMD sensor 120 detects the position and inclination of the HMD device 110 in the real space using this function.

なお、別の局面において、HMDセンサ120は、カメラにより実現されてもよい。この場合、HMDセンサ120は、カメラから出力されるHMD装置110の画像情報を用いて、画像解析処理を実行することにより、HMD装置110の位置および傾きを検出することができる。   In another aspect, HMD sensor 120 may be realized by a camera. In this case, the HMD sensor 120 can detect the position and inclination of the HMD device 110 by executing image analysis processing using image information of the HMD device 110 output from the camera.

別の局面において、HMD装置110は、位置検出器として、HMDセンサ120の代わりに、センサ114を備えてもよい。HMD装置110は、センサ114を用いて、HMD装置110自身の位置および傾きを検出し得る。例えば、センサ114が角速度センサ、地磁気センサ、加速度センサ、あるいはジャイロセンサ等である場合、HMD装置110は、HMDセンサ120の代わりに、これらの各センサのいずれかを用いて、自身の位置および傾きを検出し得る。一例として、センサ114が角速度センサである場合、角速度センサは、現実空間におけるHMD装置110の3軸周りの角速度を経時的に検出する。HMD装置110は、各角速度に基づいて、HMD装置110の3軸周りの角度の時間的変化を算出し、さらに、角度の時間的変化に基づいて、HMD装置110の傾きを算出する。また、HMD装置110は、透過型表示装置を備えていてもよい。この場合、該透過型表示装置は、その透過率を調整することにより、一時的に非透過型の表示装置として構成可能であってもよい。また、ディスプレイ112に表示された視界画像上に、現実空間を提示する要素を含ませるようにしてもよい。例えば、HMD装置110に搭載されたカメラで撮影した画像を視界画像の一部に重畳して表示させてもよいし、当該透過型表示装置の一部の透過率を高く設定することにより、視界画像の一部から現実空間を視認可能にしてもよい。   In another aspect, the HMD device 110 may include a sensor 114 instead of the HMD sensor 120 as a position detector. The HMD device 110 can detect the position and inclination of the HMD device 110 itself using the sensor 114. For example, when the sensor 114 is an angular velocity sensor, a geomagnetic sensor, an acceleration sensor, a gyro sensor, or the like, the HMD device 110 uses any one of these sensors instead of the HMD sensor 120 to detect its position and inclination. Can be detected. As an example, when the sensor 114 is an angular velocity sensor, the angular velocity sensor detects angular velocities around the three axes of the HMD device 110 in real space over time. The HMD device 110 calculates the temporal change of the angle around the three axes of the HMD device 110 based on each angular velocity, and further calculates the inclination of the HMD device 110 based on the temporal change of the angle. The HMD device 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. In addition, an element for presenting the real space may be included in the view field image displayed on the display 112. For example, an image captured by a camera mounted on the HMD device 110 may be displayed so as to be superimposed on a part of the field-of-view image, or a part of the transmission-type display device may be set to have a high transmittance. The real space may be visible from a part of the image.

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

サーバ150は、コンピュータ200にプログラムを送信して、ユーザに仮想空間を提供し得る。   The server 150 may send a program to the computer 200 to provide a virtual space to the user.

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

コントローラ160は、ユーザ190からコンピュータ200への命令の入力を受け付ける。ある局面において、コントローラ160は、ユーザ190によって把持可能に構成される。別の局面において、コントローラ160は、ユーザ190の身体あるいは衣類の一部に装着可能に構成される。別の局面において、コントローラ160は、コンピュータ200から送られる信号に基づいて、振動、音、光のうちの少なくともいずれかを出力するように構成されてもよい。別の局面において、コントローラ160は、仮想現実を提供する空間に配置されるオブジェクトの位置および動き等を制御するためにユーザ190によって与えられる操作を受け付ける。   The controller 160 receives input of commands from the user 190 to the computer 200. In one aspect, the controller 160 is configured to be gripped by the user 190. In another aspect, the controller 160 is configured to be attachable to the body of the user 190 or a part of clothing. In another aspect, the controller 160 may be configured to output at least one of vibration, sound, and light based on a signal sent from the computer 200. In another aspect, the controller 160 receives an operation given by the user 190 to control the position and movement of an object arranged in a space that provides virtual reality.

モーションセンサ130は、ある局面において、ユーザの手に取り付けられて、ユーザの手の動きを検出する。例えば、モーションセンサ130は、手の回転速度、回転数等を検出する。検出された信号は、コンピュータ200に送られる。モーションセンサ130は、例えば、手袋型のコントローラ160に設けられている。ある実施の形態において、現実空間における安全のため、コントローラ160は、手袋型のようにユーザ190の手に装着されることにより容易に飛んで行かないものに装着されるのが望ましい。別の局面において、ユーザ190に装着されないセンサがユーザ190の手の動きを検出してもよい。例えば、ユーザ190を撮影するカメラの信号が、ユーザ190の動作を表す信号として、コンピュータ200に入力されてもよい。モーションセンサ130とコンピュータ200とは、有線により、または無線により互いに接続される。無線の場合、通信形態は特に限られず、例えば、Bluetooth(登録商標)その他の公知の通信手法が用いられる。   In one aspect, the motion sensor 130 is attached to the user's hand and detects the movement of the user's hand. For example, the motion sensor 130 detects the rotation speed, rotation speed, etc. of the hand. The detected signal is sent to the computer 200. The motion sensor 130 is provided in a glove-type controller 160, for example. In some embodiments, for safety in real space, it is desirable that the controller 160 be mounted on something that does not fly easily by being mounted on the hand of the user 190, such as a glove shape. In another aspect, a sensor that is not worn by the user 190 may detect the hand movement of the user 190. For example, a signal from a camera that captures the user 190 may be input to the computer 200 as a signal representing the operation of the user 190. The motion sensor 130 and the computer 200 are connected to each other by wire or wirelessly. In the case of wireless communication, the communication form is not particularly limited, and for example, Bluetooth (registered trademark) or other known communication methods are used.

[ハードウェア構成]
図2を参照して、本実施の形態に係るコンピュータ200について説明する。図2は、一局面に従うコンピュータ200のハードウェア構成の一例を表すブロック図である。コンピュータ200は、主たる構成要素として、プロセッサ10と、メモリ11と、ストレージ12と、入出力インターフェース13と、通信インターフェース14とを備える。各構成要素は、それぞれ、バス15に接続されている。
[Hardware configuration]
A computer 200 according to the present embodiment will be described with reference to FIG. FIG. 2 is a block diagram illustrating an example of a hardware configuration of computer 200 according to one aspect. The computer 200 includes a processor 10, a memory 11, a storage 12, an input / output interface 13, and a communication interface 14 as main components. Each component is connected to the bus 15.

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

メモリ11は、プログラムおよびデータを一時的に保存する。プログラムおよびデータの少なくともいずれかは、例えば、ストレージ12からロードされる。メモリ11に保存されるデータは、コンピュータ200に入力されたデータと、プロセッサ10によって生成されたデータとを含む。ある局面において、メモリ11は、RAM(Random Access Memory)その他の揮発性メモリとして実現される。   The memory 11 temporarily stores programs and data. At least one of the program and data is loaded from the storage 12, for example. Data stored in the memory 11 includes data input to the computer 200 and data generated by the processor 10. In one aspect, the memory 11 is realized as a RAM (Random Access Memory) or other volatile memory.

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

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

ある実施の形態において、入出力インターフェース13は、HMD装置110、HMDセンサ120またはモーションセンサ130との間で信号を通信する。ある局面において、入出力インターフェース13は、USB(Universal Serial Bus)インターフェース、DVI(Digital Visual Interface)、HDMI(登録商標)(High-Definition Multimedia Interface)その他の端子を用いて実現される。なお、入出力インターフェース13は上述のものに限られない。   In some embodiments, the input / output interface 13 communicates signals with the HMD device 110, the HMD sensor 120, or the motion sensor 130. In one aspect, the input / output interface 13 is realized using a USB (Universal Serial Bus) interface, a DVI (Digital Visual Interface), an HDMI (registered trademark) (High-Definition Multimedia Interface), or other terminals. The input / output interface 13 is not limited to the above.

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

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

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

サーバ150は、ネットワーク19を介して複数のHMDシステム100の各々の制御装置と接続される。   The server 150 is connected to each control device of the plurality of HMD systems 100 via the network 19.

なお、図2に示される例では、コンピュータ200がHMD装置110の外部に設けられる構成が示されているが、別の局面において、コンピュータ200は、HMD装置110に内蔵されてもよい。一例として、ディスプレイ112を含む携帯型の情報通信端末(例えば、スマートフォン)がコンピュータ200として機能してもよい。   In the example illustrated in FIG. 2, the configuration in which the computer 200 is provided outside the HMD device 110 is illustrated. However, in another aspect, the computer 200 may be incorporated in the HMD device 110. As an example, a portable information communication terminal (for example, a smartphone) including the display 112 may function as the computer 200.

また、コンピュータ200は、複数のHMD装置110に共通して用いられる構成であってもよい。このような構成によれば、例えば、複数のユーザに同一の仮想空間を提供することもできるので、各ユーザは同一の仮想空間で他のユーザと同一のアプリケーションを楽しむことができる。なお、このような場合、本実施形態における複数のHMDシステム100は、入出力インターフェース13により、コンピュータ200に直接接続されてもよい。また、本実施形態におけるサーバ150の各機能は、コンピュータ200に実装されてもよい。   Further, the computer 200 may be configured to be used in common for the plurality of HMD devices 110. According to such a configuration, for example, the same virtual space can be provided to a plurality of users, so that each user can enjoy the same application as other users in the same virtual space. In such a case, the plurality of HMD systems 100 in this embodiment may be directly connected to the computer 200 by the input / output interface 13. In addition, each function of the server 150 in the present embodiment may be implemented in the computer 200.

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

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

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

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

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

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

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

HMDセンサ120は、検出されたHMD装置110の傾き角度に基づいて、HMD装置110が動いた後のHMD装置110におけるuvw視野座標系を、HMD装置110に設定する。HMD装置110と、HMD装置110のuvw視野座標系との関係は、HMD装置110の位置および傾きに関わらず、常に一定である。HMD装置110の位置および傾きが変わると、当該位置および傾きの変化に連動して、グローバル座標系におけるHMD装置110のuvw視野座標系の位置および傾きが変化する。   Based on the detected tilt angle of the HMD device 110, the HMD sensor 120 sets the uvw visual field coordinate system in the HMD device 110 after the HMD device 110 has moved to the HMD device 110. The relationship between the HMD device 110 and the uvw visual field coordinate system of the HMD device 110 is always constant regardless of the position and inclination of the HMD device 110. When the position and inclination of the HMD device 110 change, the position and inclination of the uvw visual field coordinate system of the HMD device 110 in the global coordinate system change in conjunction with the change of the position and inclination.

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

[仮想空間]
図4を参照して、仮想空間についてさらに説明する。図4は、ある実施の形態に従う仮想空間2を表現する一態様を概念的に表す図である。仮想空間2は、中心21の360度方向の全体を覆う全天球状の構造を有する。図4では、説明を複雑にしないために、仮想空間2のうちの上半分の天球が例示されている。仮想空間2では各メッシュが規定される。各メッシュの位置は、仮想空間2に規定されるXYZ座標系における座標値として予め規定されている。コンピュータ200は、仮想空間2に展開(配置)可能な各要素(例えば、オブジェクト、静止画、動画等)を、仮想空間2上の展開位置(配置位置)に対応するメッシュに対応付けることで、ユーザによって視認可能な仮想空間要素が展開される仮想空間2をユーザに提供する。仮想空間要素とは、仮想空間2内に展開される要素であり、例えば、各種オブジェクト(例えば、ユーザが操作可能なオブジェクト、所定のアルゴリズムに基づいて動作するオブジェクト、および動作しないオブジェクトなど)や、各種画像(背景画像、ユーザが選択画像なメニュー画像、写真、動画像など)を含む。
[Virtual space]
The virtual space will be further described with reference to FIG. FIG. 4 is a diagram conceptually showing one aspect of expressing virtual space 2 according to an embodiment. The virtual space 2 has a spherical structure that covers the entire 360 ° direction of the center 21. In FIG. 4, the upper half of the celestial sphere in the virtual space 2 is illustrated in order not to complicate the description. In the virtual space 2, each mesh is defined. The position of each mesh is defined in advance as coordinate values in the XYZ coordinate system defined in the virtual space 2. The computer 200 associates each element (for example, an object, a still image, and a moving image) that can be expanded (arranged) in the virtual space 2 with a mesh corresponding to the expanded position (arranged position) in the virtual space 2. Provides the user with a virtual space 2 in which the visible virtual space elements are developed. The virtual space element is an element developed in the virtual space 2, for example, various objects (for example, an object that can be operated by the user, an object that operates based on a predetermined algorithm, and an object that does not operate), Various images (background images, menu images selected by the user, photos, moving images, etc.) are included.

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

HMD装置110の起動時、すなわちHMD装置110の初期状態において、仮想カメラ1が、仮想空間2の中心21に配置される。仮想カメラ1は、現実空間におけるHMD装置110の動きに連動して、仮想空間2を同様に移動する。これにより、現実空間におけるHMD装置110の位置および向きの変化が、仮想空間2において同様に再現される。   When the HMD device 110 is activated, that is, in the initial state of the HMD device 110, the virtual camera 1 is disposed at the center 21 of the virtual space 2. The virtual camera 1 similarly moves in the virtual space 2 in conjunction with the movement of the HMD device 110 in the real space. Thereby, changes in the position and orientation of the HMD device 110 in the real space are similarly reproduced in the virtual space 2.

仮想カメラ1には、HMD装置110の場合と同様に、uvw視野座標系が規定される。仮想空間2における仮想カメラ1のuvw視野座標系は、現実空間(グローバル座標系)におけるHMD装置110のuvw視野座標系に連動するように規定されている。したがって、HMD装置110の傾きが変化すると、それに応じて、仮想カメラ1の傾きも変化する。また、仮想カメラ1が、HMD装置110を装着したユーザの現実空間における移動に連動して、仮想空間2において移動するようにしてもよいし、コントローラ160により受け付けられたユーザ190による操作に応じて、移動するようにしてもよい。   As in the case of the HMD device 110, the uvw visual field coordinate system is defined for the virtual camera 1. The uvw visual field coordinate system of the virtual camera 1 in the virtual space 2 is defined so as to be linked to the uvw visual field coordinate system of the HMD device 110 in the real space (global coordinate system). Therefore, when the inclination of the HMD device 110 changes, the inclination of the virtual camera 1 also changes accordingly. Further, the virtual camera 1 may be moved in the virtual space 2 in conjunction with the movement of the user wearing the HMD device 110 in the real space, or according to an operation by the user 190 received by the controller 160. , May be moved.

仮想カメラ1の向きは、仮想カメラ1の位置および傾きに応じて決まるので、ユーザが仮想空間要素を視認する際に基準となる視線(基準視線5)は、仮想カメラ1の向きに応じて決まる。但し、仮想カメラ1の向きを注視センサ140により検出されたユーザ190の視線方向に応じて決めるようにしてもよい。コンピュータ200のプロセッサ10は、基準視線5に基づいて、仮想空間2における視界領域23を規定する。視界領域23は、仮想空間2のうち、HMD装置110を装着したユーザの視界に対応する。   Since the orientation of the virtual camera 1 is determined according to the position and inclination of the virtual camera 1, the reference line of sight (reference line of sight 5) when the user visually recognizes the virtual space element is determined according to the orientation of the virtual camera 1. . However, the orientation of the virtual camera 1 may be determined according to the line-of-sight direction of the user 190 detected by the gaze sensor 140. The processor 10 of the computer 200 defines the visual field region 23 in the virtual space 2 based on the reference line of sight 5. The view area 23 corresponds to the view of the user wearing the HMD device 110 in the virtual space 2.

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

[ユーザの視線]
図5を参照して、ユーザの視線方向の決定について説明する。図5は、ある実施の形態に従うHMD装置110を装着するユーザ190の頭部を上から表した図である。
[User's line of sight]
With reference to FIG. 5, determination of the user's line-of-sight direction will be described. FIG. 5 is a diagram showing the head of user 190 wearing HMD device 110 according to an embodiment from above.

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

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

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

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

[視界領域]
図6および図7を参照して、視界領域23について説明する。図6は、仮想空間2において視界領域23をX方向から見たYZ断面を表す図である。図7は、仮想空間2において視界領域23をY方向から見たXZ断面を表す図である。
[Visibility area]
With reference to FIGS. 6 and 7, the visual field region 23 will be described. FIG. 6 is a diagram illustrating a YZ cross section of the visual field region 23 viewed from the X direction in the virtual space 2. FIG. 7 is a diagram illustrating an XZ cross section of the visual field region 23 viewed from the Y direction in the virtual space 2.

図6に示されるように、YZ断面における視界領域23は、領域24を含む。領域24は、仮想カメラ1の基準視線5と仮想空間2のYZ断面とによって定義される。プロセッサ10は、仮想空間2における基準視線5を中心として極角αを含む範囲を、領域24として規定する。   As shown in FIG. 6, the visual field region 23 in the YZ cross section includes a region 24. The region 24 is defined by the reference line of sight 5 of the virtual camera 1 and the YZ cross section of the virtual space 2. The processor 10 defines a range including the polar angle α around the reference line of sight 5 in the virtual space 2 as the region 24.

図7に示されるように、XZ断面における視界領域23は、領域25を含む。領域25は、基準視線5と仮想空間2のXZ断面とによって定義される。プロセッサ10は、仮想空間2における基準視線5を中心とした方位角βを含む範囲を、領域25として規定する。   As shown in FIG. 7, the visual field region 23 in the XZ cross section includes a region 25. The region 25 is defined by the reference line of sight 5 and the XZ cross section of the virtual space 2. The processor 10 defines a range including the azimuth angle β around the reference line of sight 5 in the virtual space 2 as a region 25.

ある局面において、HMDシステム100は、コンピュータ200からの信号に基づいて、視界画像をディスプレイ112に表示させることにより、ユーザ190に仮想空間を提供する。視界画像は、仮想空間2に展開された仮想空間要素のうち視界領域23に相当する空間内の仮想空間要素を表す画像である。ユーザ190が、頭に装着したHMD装置110を動かすと、その動きに連動して仮想カメラ1も動く。その結果、仮想空間2における視界領域23の位置が変化する。これにより、ディスプレイ112に表示される視界画像は、ユーザ190がHMD装置110を動かす前の視界領域23に相当する空間内の仮想空間要素を表す画像から、ユーザ190がHMD装置110を動かした後の視界領域23に相当する空間内の仮想空間要素を表す画像に更新される。ユーザは、仮想空間2における所望の方向を視認することができる。   In one aspect, the HMD system 100 provides a virtual space to the user 190 by causing the display 112 to display a view field image based on a signal from the computer 200. The view image is an image representing a virtual space element in a space corresponding to the view area 23 among the virtual space elements developed in the virtual space 2. When the user 190 moves the HMD device 110 worn on the head, the virtual camera 1 also moves in conjunction with the movement. As a result, the position of the visual field area 23 in the virtual space 2 changes. Thus, the view image displayed on the display 112 is obtained after the user 190 moves the HMD device 110 from an image representing a virtual space element in the space corresponding to the view region 23 before the user 190 moves the HMD device 110. Is updated to an image representing a virtual space element in the space corresponding to the visual field region 23. The user can visually recognize a desired direction in the virtual space 2.

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

ある局面において、プロセッサ10は、HMD装置110を装着したユーザ190の実空間における移動に連動して、仮想空間2において仮想カメラ1を移動し得る。この場合、プロセッサ10は、仮想空間2における仮想カメラ1の位置および向きに基づいて、HMD装置110のディスプレイ112に投影される画像領域(すなわち、仮想空間2における視界領域23)を特定する。すなわち、仮想カメラ1によって、仮想空間2におけるユーザ190の視野が定義される。   In one aspect, the processor 10 can move the virtual camera 1 in the virtual space 2 in conjunction with movement of the user 190 wearing the HMD device 110 in real space. In this case, the processor 10 specifies an image area (that is, the view area 23 in the virtual space 2) projected on the display 112 of the HMD device 110 based on the position and orientation of the virtual camera 1 in the virtual space 2. That is, the visual field of the user 190 in the virtual space 2 is defined by the virtual camera 1.

ある実施の形態に従うと、仮想カメラ1は、二つの仮想カメラ、すなわち、右目用の画像を提供するための仮想カメラと、左目用の画像を提供するための仮想カメラとを含むことが望ましい。また、ユーザ190が3次元の仮想空間2を認識できるように、適切な視差が、二つの仮想カメラに設定されていることが好ましい。本実施の形態においては、仮想カメラ1が二つの仮想カメラを含み、二つの仮想カメラのロール方向が合成されることによって生成されるロール方向(w)がHMD装置110のロール方向(w)に適合されるように構成されているものとして、本開示に係る技術思想を例示する。   According to an embodiment, the virtual camera 1 preferably includes two virtual cameras, that is, a virtual camera for providing an image for the right eye and a virtual camera for providing an image for the left eye. Moreover, it is preferable that appropriate parallax is set in the two virtual cameras so that the user 190 can recognize the three-dimensional virtual space 2. In the present embodiment, the virtual camera 1 includes two virtual cameras, and the roll direction (w) generated by combining the roll directions of the two virtual cameras is the roll direction (w) of the HMD device 110. The technical idea concerning this indication is illustrated as what is constituted so that it may be adapted.

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

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

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

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

フレーム31は、その円周方向に沿って配置された複数の赤外線LED35を含む。赤外線LED35は、コントローラ160を使用するプログラムの実行中に、当該プログラムの進行に合わせて赤外線を発光する。赤外線LED35から発せられた赤外線は、右コントローラ160Rと左コントローラとの各位置および姿勢(傾き、向き)等を検出するために使用され得る。図8に示される例では、二列に配置された赤外線LED35が示されているが、配列の数は図8に示されるものに限られない。一列あるいは3列以上の配列が使用されてもよい。図8に示す例では、コントローラ160は、ユーザが手で把持するコントローラであるため、コントローラ160の位置および姿勢(傾き、向き)を検出することで、ユーザの手の動きを検知できる。なお、コントローラ160が、ユーザ190の身体あるいは衣類の一部に装着可能である場合、コントローラ160の位置および姿勢(傾き、向き)を検出することで、ユーザ190の身体あるいは衣類の一部の動きを検知できる。   The frame 31 includes a plurality of infrared LEDs 35 arranged along the circumferential direction. The infrared LED 35 emits infrared light in accordance with the progress of the program during the execution of the program using the controller 160. The infrared rays emitted from the infrared LED 35 can be used to detect the positions and postures (tilt, orientation), etc., of the right controller 160R and the left controller. In the example shown in FIG. 8, infrared LEDs 35 arranged in two rows are shown, but the number of arrays is not limited to that shown in FIG. An array of one or more columns may be used. In the example illustrated in FIG. 8, the controller 160 is a controller that is gripped by the user's hand, and thus the movement of the user's hand can be detected by detecting the position and posture (tilt and orientation) of the controller 160. When the controller 160 can be attached to the body of the user 190 or a part of clothing, the movement of the body of the user 190 or a part of the clothing is detected by detecting the position and posture (tilt, orientation) of the controller 160. Can be detected.

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

ある局面において、右コントローラ160Rおよび左コントローラは、赤外線LED35その他の部材を駆動するための電池を含む。電池は、充電式、ボタン型、乾電池型等を含むが、これらに限定されない。別の局面において、右コントローラ160Rおよび左コントローラは、例えば、コンピュータ200のUSBインターフェースに接続され得る。この場合、右コントローラ160Rおよび左コントローラは、電池を必要としない。   In one aspect, the right controller 160R and the left controller include a battery for driving the infrared LED 35 and other members. The battery includes, but is not limited to, a rechargeable type, a button type, a dry battery type, and the like. In another aspect, the right controller 160R and the left controller may be connected to a USB interface of the computer 200, for example. In this case, the right controller 160R and the left controller do not require batteries.

図8の状態(A)および状態(B)に示されるように、例えば、ユーザ190の右手810に対して、ヨー、ロール、ピッチの各方向が規定される。ユーザ190が親指と人差し指とを伸ばした場合に、親指の伸びる方向がヨー方向、人差し指の伸びる方向がロール方向、ヨー方向の軸およびロール方向の軸によって規定される平面に垂直な方向がピッチ方向として規定される。
[HMD装置の制御装置]
As shown in the state (A) and the state (B) of FIG. 8, for example, the yaw, roll, and pitch directions are defined for the right hand 810 of the user 190. When the user 190 extends the thumb and index finger, the direction in which the thumb extends is the yaw direction, the direction in which the index finger extends is the roll direction, and the direction perpendicular to the plane defined by the yaw direction axis and the roll direction axis is the pitch direction. Is defined as
[Control device for HMD device]

図9を参照して、HMD装置110の制御装置について説明する。ある実施の形態において、制御装置は周知の構成を有するコンピュータ200によって実現される。図9は、ある実施の形態に従うコンピュータ200をモジュール構成として表すブロック図である。   The control device of the HMD device 110 will be described with reference to FIG. In one embodiment, the control device is realized by a computer 200 having a known configuration. FIG. 9 is a block diagram showing a computer 200 according to an embodiment as a module configuration.

図9に示されるように、コンピュータ200は、主制御モジュール220と、メモリモジュール240と、通信制御モジュール250とを備える。主制御モジュール220は、サブモジュールとして、仮想空間制御モジュール221と、仮想カメラ制御モジュール222と、操作オブジェクト制御モジュール223と、オブジェクト制御モジュール224と、コリジョン制御モジュール225と、コリジョン判定モジュール226と、視界画像生成モジュール227と、表示制御モジュール228と、を含む。但し、主制御モジュール220に、上述した全てのモジュールを含める必要はなく、その一部を含めないようにしてもよい。例えば、本実施形態においては、コリジョン制御モジュール225を主制御モジュール220に含めなくてもよい。   As shown in FIG. 9, the computer 200 includes a main control module 220, a memory module 240, and a communication control module 250. The main control module 220 includes, as sub-modules, a virtual space control module 221, a virtual camera control module 222, an operation object control module 223, an object control module 224, a collision control module 225, a collision determination module 226, a visual field An image generation module 227 and a display control module 228 are included. However, it is not necessary to include all the modules described above in the main control module 220, and some of them may not be included. For example, in the present embodiment, the collision control module 225 may not be included in the main control module 220.

ある実施の形態において、主制御モジュール220は、プロセッサ10によって実現される。別の実施の形態において、複数のプロセッサ10が主制御モジュール220として作動してもよい。メモリモジュール240は、メモリ11またはストレージ12によって実現される。通信制御モジュール250は、通信インターフェース14によって実現される。   In certain embodiments, the main control module 220 is implemented by the processor 10. In another embodiment, multiple processors 10 may operate as the main control module 220. The memory module 240 is realized by the memory 11 or the storage 12. The communication control module 250 is realized by the communication interface 14.

仮想空間制御モジュール221は、ユーザ190に提供される仮想空間2を制御する。本実施形態では、仮想空間制御モジュール221は、仮想空間2を表す仮想空間データを特定することにより、HMDシステム100における仮想空間2を規定する。なお本実施形態では、仮想空間2内への、仮想カメラ1、各種オブジェクト、及び背景画像などの仮想空間要素の配置を仮想空間制御モジュール221以外のモジュールが行う場合を例にとり説明するが、これに限定されず、仮想空間制御モジュール221が行うようにしてもよい。また、仮想空間2内への仮想空間要素の配置は、仮想空間2全体に対して行われてもよいし、後述の仮想カメラ制御モジュール222により決定された視界領域23に限定して行われてもよい。   The virtual space control module 221 controls the virtual space 2 provided to the user 190. In the present embodiment, the virtual space control module 221 specifies the virtual space 2 in the HMD system 100 by specifying virtual space data representing the virtual space 2. In this embodiment, the case where a module other than the virtual space control module 221 performs the placement of virtual space elements such as the virtual camera 1, various objects, and background images in the virtual space 2 will be described as an example. However, the virtual space control module 221 may perform the process. In addition, the placement of the virtual space element in the virtual space 2 may be performed on the entire virtual space 2 or limited to the view field area 23 determined by the virtual camera control module 222 described later. Also good.

仮想カメラ制御モジュール222は、仮想空間2へ仮想カメラ1を配置し、仮想空間2における仮想カメラ1の動作を制御する。本実施形態では、仮想カメラ制御モジュール222は、HMD装置110を装着したユーザの頭の向き(HMD装置110の動き)や、当該ユーザによるコントローラ160のキー操作(ボタン36,37やアナログスティック38の操作)に基づいて、仮想空間2における仮想カメラ1の挙動、向き等を制御できる。つまり、仮想カメラ1の視界領域23は、HMD装置110を装着したユーザの頭の向きに基づいて規定されてもよいし、ユーザによるコントローラ160のキー操作(ボタン36,37やアナログスティック38の操作)に基づいて規定されてもよい。但し、仮想カメラ1の動作制御は、これに限定されるものではない。   The virtual camera control module 222 arranges the virtual camera 1 in the virtual space 2 and controls the operation of the virtual camera 1 in the virtual space 2. In the present embodiment, the virtual camera control module 222 is configured such that the orientation of the head of the user wearing the HMD device 110 (movement of the HMD device 110) and key operations of the controller 160 by the user (the buttons 36 and 37 and the analog stick 38). The behavior, orientation, etc. of the virtual camera 1 in the virtual space 2 can be controlled based on the operation. In other words, the visual field area 23 of the virtual camera 1 may be defined based on the orientation of the head of the user wearing the HMD device 110, or the key operation of the controller 160 by the user (the operation of the buttons 36 and 37 and the analog stick 38). ). However, the operation control of the virtual camera 1 is not limited to this.

操作オブジェクト制御モジュール223は、仮想空間2へ操作オブジェクトを配置し、仮想空間2における操作オブジェクトの動作(移動および状態変化等)を制御する。操作オブジェクトは、HMD装置110を装着したユーザに関連付けられたオブジェクトであり、本実施形態では、手オブジェクトである場合を例にとり説明するが、これに限定されるものではない。なお本実施形態では、プレイヤキャラクタの手オブジェクトは、HMD装置110を装着したユーザの手に相当する。このため操作オブジェクト制御モジュール223は、当該ユーザが手に保持するコントローラ160の動きや当該ユーザによるコントローラ160のキー操作(ボタン36,37やアナログスティック38の操作)に基づいて、プレイヤキャラクタの手オブジェクトを動作させる。なお、手オブジェクトは、仮想空間2に配置されるオブジェクトを操作するための操作オブジェクトとなりうる。   The operation object control module 223 arranges the operation object in the virtual space 2 and controls the operation (movement, state change, etc.) of the operation object in the virtual space 2. The operation object is an object associated with the user wearing the HMD device 110, and in the present embodiment, a case of a hand object will be described as an example, but the present invention is not limited to this. In the present embodiment, the hand object of the player character corresponds to the hand of the user wearing the HMD device 110. For this reason, the operation object control module 223 determines the player character's hand object based on the movement of the controller 160 held by the user's hand and the key operation of the controller 160 by the user (the operation of the buttons 36 and 37 and the analog stick 38). To work. The hand object can be an operation object for operating an object placed in the virtual space 2.

また、操作オブジェクトを手オブジェクトではなく、指オブジェクト(仮想指)、足オブジェクト、及びユーザが使用するスティックに相当するスティックオブジェクト等としてもよい。操作オブジェクトが指オブジェクトの場合、特に、操作オブジェクトは、当該指が指し示す方向(軸方向)の軸の部分に対応している。   Further, the operation object may be a finger object (virtual finger), a foot object, a stick object corresponding to a stick used by the user, or the like instead of a hand object. When the operation object is a finger object, in particular, the operation object corresponds to the axis portion in the direction (axial direction) indicated by the finger.

オブジェクト制御モジュール224は、仮想空間2へ操作オブジェクト以外のオブジェクトを配置し、仮想空間2における操作オブジェクト以外のオブジェクトの動作(移動および状態変化等)を制御する。操作オブジェクト以外のオブジェクトとしては、例えば、移動オブジェクト、対象オブジェクト、及び背景オブジェクトなどが挙げられるが、これらに限定されるものではない。移動オブジェクトは、操作オブジェクトによって直接又は間接的に操作される(扱われる)オブジェクトであればどのようなオブジェクトであってもよい。移動オブジェクトとしては、例えば、操作オブジェクト(手オブジェクト)によって投げられる手榴弾オブジェクトやボールオブジェクトなどが挙げられるが、これらに限定されるものではない。なお、操作オブジェクトによって間接的に操作される移動オブジェクトの例としては、操作オブジェクト(手オブジェクト)によって操作されるバットオブジェクトによって、任意の方向に飛ばされるボールオブジェクトなどが挙げられる、これらに限定されるものではない。   The object control module 224 arranges an object other than the operation object in the virtual space 2 and controls the operation (movement, state change, etc.) of the object other than the operation object in the virtual space 2. Examples of objects other than the operation object include a moving object, a target object, a background object, and the like, but are not limited to these. The moving object may be any object as long as it is an object that is operated (handled) directly or indirectly by the operation object. Examples of the moving object include, but are not limited to, a grenade object and a ball object that are thrown by an operation object (hand object). Examples of the moving object that is indirectly operated by the operation object include a ball object that is thrown in an arbitrary direction by a bat object that is operated by the operation object (hand object), but is not limited thereto. It is not a thing.

対象オブジェクトは、移動オブジェクトからの影響を受けるオブジェクトである。対象オブジェクトとしては、例えば、敵キャラクタや相手キャラクタなどが挙げられるが、これに限定されるものではない。背景オブジェクトは、例えば、ゲームのストーリーの進行に従って配置される森、山その他を含む風景、動物等を含み得る。なお、オブジェクト制御モジュール224は、動作しないオブジェクトについては、固定位置に配置したままに制御しておけばよい。   The target object is an object that is affected by the moving object. Examples of the target object include enemy characters and opponent characters, but are not limited thereto. Background objects may include, for example, forests, mountains and other landscapes, animals, etc. that are arranged according to the progress of the game story. Note that the object control module 224 may control an object that does not move while being placed at a fixed position.

コリジョン制御モジュール225は、移動オブジェクトの動きに基づいて、移動オブジェクトに関連付けられたコリジョンエリアの形状及び大きさの少なくともいずれかを特定(決定)する制御を行う。移動オブジェクトの動きに関する情報は、移動オブジェクトの速さ、速度、加速度、向き、及び姿勢変化など移動オブジェクトの動きから特定可能な情報が挙げられるが、これらに限定されるものではない。またコリジョン判定モジュール226は、移動オブジェクトの早さに関する情報に基づいて、移動オブジェクトが対象オブジェクトに与える影響を特定(決定)する。   The collision control module 225 performs control for specifying (determining) at least one of the shape and size of the collision area associated with the moving object based on the movement of the moving object. Examples of the information related to the movement of the moving object include information that can be specified from the movement of the moving object, such as the speed, speed, acceleration, direction, and posture change of the moving object, but are not limited thereto. Further, the collision determination module 226 specifies (determines) the influence of the moving object on the target object based on the information regarding the speed of the moving object.

コリジョン判定モジュール226は、オブジェクト間のコリジョンエリアの衝突(接触)を判定することで、オブジェクト間の衝突を判定する。コリジョン判定モジュール226は、例えば、あるオブジェクトと、別のオブジェクトとが触れたタイミングを検出することができ、当該検出がされたときに、予め定められた処理を行う。またコリジョン判定モジュール226は、オブジェクトとオブジェクトとが触れている状態から離れたタイミングを検出することができ、当該検出がされたときに、予め定められた処理を行うこともできる。   The collision determination module 226 determines the collision between objects by determining the collision (contact) of the collision area between the objects. The collision determination module 226 can detect, for example, a timing when a certain object and another object touch each other, and performs a predetermined process when the detection is performed. In addition, the collision determination module 226 can detect the timing at which the object is away from the touched state, and can perform a predetermined process when the detection is performed.

本実施形態では、コリジョン判定モジュール226は、移動オブジェクトに関連付けられたコリジョンエリアと対象オブジェクトとの位置関係に基づいて、移動オブジェクトと対象オブジェクトとの衝突を判定する。コリジョン判定モジュール226は、移動オブジェクトと対象オブジェクトとが衝突していると判定した場合、対象オブジェクトに所定の影響を与える。   In the present embodiment, the collision determination module 226 determines a collision between the moving object and the target object based on the positional relationship between the collision area associated with the moving object and the target object. When the collision determination module 226 determines that the moving object and the target object collide, the collision determination module 226 exerts a predetermined influence on the target object.

視界画像生成モジュール227は、仮想カメラ制御モジュール222により決定された視界領域23に基づいて、ディスプレイ112に表示される視界画像データを生成する。具体的には、視界画像生成モジュール227は、仮想カメラ1の動きに基づいて定義される仮想カメラの視界と、仮想空間制御モジュール221により特定された仮想空間データと、コリジョン判定モジュール226の衝突判定結果(対象オブジェクトに所定の影響を与えた結果)と、に基づいて、視界画像データを生成する。   The view image generation module 227 generates view image data displayed on the display 112 based on the view area 23 determined by the virtual camera control module 222. Specifically, the visual field image generation module 227 determines the collision of the virtual camera field of view defined based on the movement of the virtual camera 1, the virtual space data specified by the virtual space control module 221, and the collision determination module 226. Visibility image data is generated based on the result (the result of having a predetermined influence on the target object).

表示制御モジュール228は、視界画像生成モジュール227により生成された視界画像データに基づいて、HMD装置110のディスプレイ112に視界画像を表示させる。例えば、表示制御モジュール228は、視界画像生成モジュール227により生成された視界画像データをHMD装置110に出力することで、視界画像をディスプレイ112に表示させる。   The display control module 228 displays a visual field image on the display 112 of the HMD device 110 based on the visual field image data generated by the visual field image generation module 227. For example, the display control module 228 outputs the visual field image data generated by the visual field image generation module 227 to the HMD device 110 to display the visual field image on the display 112.

メモリモジュール240は、コンピュータ200が仮想空間2をユーザ190に提供するために使用されるデータを保持している。ある局面において、メモリモジュール240は、空間情報241と、オブジェクト情報242と、ユーザ情報243とを保持している。空間情報241には、例えば、仮想空間2を提供するために規定された1つ以上のテンプレートが含まれている。オブジェクト情報242には、例えば、仮想空間2において再生されるコンテンツ、当該コンテンツで使用されるオブジェクトを配置するための情報、そのほかプレイヤキャラクタの描画データやそのサイズ情報などの属性情報等が含まれている。当該コンテンツは、例えば、ゲーム、現実社会と同様の風景を表したコンテンツ等を含み得る。ユーザ情報243には、例えば、HMDシステム100の制御装置としてコンピュータ200を機能させるためのプログラム、オブジェクト情報242に保持される各コンテンツを使用するアプリケーションプログラム等が含まれている。   The memory module 240 holds data used for the computer 200 to provide the virtual space 2 to the user 190. In one aspect, the memory module 240 holds space information 241, object information 242, and user information 243. The space information 241 includes, for example, one or more templates defined for providing the virtual space 2. The object information 242 includes, for example, content reproduced in the virtual space 2, information for arranging objects used in the content, and other attribute information such as drawing data of the player character and size information thereof. Yes. The content can include, for example, content representing a scene similar to a game or a real society. The user information 243 includes, for example, a program for causing the computer 200 to function as a control device of the HMD system 100, an application program that uses each content held in the object information 242, and the like.

メモリモジュール240に格納されているデータおよびプログラムは、HMD装置110のユーザによって入力される。あるいは、プロセッサ10が、当該コンテンツを提供する事業者が運営するコンピュータ(例えば、サーバ150)からプログラムあるいはデータをダウンロードして、ダウンロードされたプログラムあるいはデータをメモリモジュール240に格納する。   Data and programs stored in the memory module 240 are input by the user of the HMD device 110. Alternatively, the processor 10 downloads a program or data from a computer (for example, the server 150) operated by a provider providing the content, and stores the downloaded program or data in the memory module 240.

通信制御モジュール250は、ネットワーク19を介して、サーバ150その他の情報通信装置と通信し得る。   The communication control module 250 can communicate with the server 150 and other information communication devices via the network 19.

ある局面において、主制御モジュール220は、例えば、ユニティテクノロジーズ社によって提供されるUnity(登録商標)を用いて実現され得る。別の局面において、主制御モジュール220は、各処理を実現する回路素子の組み合わせとしても実現され得る。   In one aspect, the main control module 220 can be implemented using, for example, Unity (registered trademark) provided by Unity Technologies. In another aspect, the main control module 220 can also be realized as a combination of circuit elements that realize each process.

コンピュータ200における処理は、ハードウェアと、プロセッサ10により実行されるソフトウェアとによって実現される。このようなソフトウェアは、ハードディスクその他のメモリモジュール240に予め格納されている場合がある。また、ソフトウェアは、CD−ROMその他のコンピュータ読み取り可能な不揮発性のデータ記録媒体に格納されて、プログラム製品として流通している場合もある。あるいは、当該ソフトウェアは、インターネットその他のネットワークに接続されている情報提供事業者によってダウンロード可能なプログラム製品として提供される場合もある。このようなソフトウェアは、光ディスク駆動装置その他のデータ読取装置によってデータ記録媒体から読み取られて、あるいは、通信制御モジュール250を介してサーバ150その他のコンピュータからダウンロードされた後、メモリモジュール240に一旦格納される。そのソフトウェアは、プロセッサ10によってメモリモジュール240から読み出され、実行可能なプログラムの形式でRAMに格納される。プロセッサ10は、そのプログラムを実行する。   Processing in the computer 200 is realized by hardware and software executed by the processor 10. Such software may be stored in advance in a memory module 240 such as a hard disk. The software may be stored in a CD-ROM or other non-volatile computer-readable data recording medium and distributed as a program product. Alternatively, the software may be provided as a program product that can be downloaded by an information provider connected to the Internet or other networks. Such software is read from a data recording medium by an optical disk drive or other data reader, or downloaded from the server 150 or other computer via the communication control module 250 and then temporarily stored in the memory module 240. The The software is read from the memory module 240 by the processor 10 and stored in the RAM in the form of an executable program. The processor 10 executes the program.

図9に示されるコンピュータ200を構成するハードウェアは、一般的なものである。コンピュータ200のハードウェアの動作は周知であるので、詳細な説明は繰り返さない。   The hardware configuring the computer 200 shown in FIG. 9 is general. Since the hardware operation of computer 200 is well known, detailed description will not be repeated.

なお、データ記録媒体としては、CD−ROM、FD(Flexible Disk)、ハードディスクに限られず、磁気テープ、カセットテープ、光ディスク(MO(Magnetic Optical Disc)/MD(Mini Disc)/DVD(Digital Versatile Disc))、IC(Integrated Circuit)カード(メモリカードを含む)、光カード、マスクROM、EPROM(Erasable Programmable Read-Only Memory)、EEPROM(Electrically Erasable Programmable Read-Only Memory)、フラッシュROMなどの半導体メモリ等の固定的にプログラムを担持する不揮発性のデータ記録媒体でもよい。   The data recording medium is not limited to a CD-ROM, FD (Flexible Disk), and hard disk, but is a magnetic tape, cassette tape, optical disk (MO (Magnetic Optical Disc) / MD (Mini Disc) / DVD (Digital Versatile Disc)). ), IC (Integrated Circuit) card (including memory card), optical card, mask ROM, EPROM (Erasable Programmable Read-Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), flash ROM, etc. It may be a non-volatile data recording medium that carries a fixed program.

ここでいうプログラムとは、プロセッサ10により直接実行可能なプログラムだけでなく、ソースプログラム形式のプログラム、圧縮処理されたプログラム、暗号化されたプログラム等を含み得る。   The program here may include not only a program directly executable by the processor 10, but also a program in a source program format, a compressed program, an encrypted program, and the like.

[制御構造]
図10を参照して、本実施の形態に係るコンピュータ200の制御構造について説明する。図10は、ユーザ190によって使用されるHMDシステム100がユーザ190に仮想空間2を提供するために実行する処理を表すフローチャートである。
[Control structure]
With reference to FIG. 10, a control structure of computer 200 according to the present embodiment will be described. FIG. 10 is a flowchart showing processing executed by the HMD system 100 used by the user 190 to provide the virtual space 2 to the user 190.

ステップS1において、コンピュータ200のプロセッサ10は、仮想空間制御モジュール221として、仮想空間データを特定し、仮想空間2を定義する。また、プロセッサ10は、操作オブジェクト制御モジュール223及びオブジェクト制御モジュール224として、この仮想空間2に操作オブジェクトや操作オブジェクト以外のオブジェクトを配置する。仮想空間制御モジュール221は、その動作を仮想空間2内に制御可能に定義する。   In step S <b> 1, the processor 10 of the computer 200 specifies the virtual space data and defines the virtual space 2 as the virtual space control module 221. Further, the processor 10 arranges an operation object and an object other than the operation object in the virtual space 2 as the operation object control module 223 and the object control module 224. The virtual space control module 221 defines the operation to be controllable in the virtual space 2.

ステップS2において、プロセッサ10は、仮想カメラ制御モジュール222として、仮想カメラ1を初期化する。例えば、プロセッサ10は、メモリのワーク領域において、仮想カメラ1を仮想空間2において予め規定された中心点に配置し、仮想カメラ1の視線をユーザ190が向いている方向に向ける。   In step S <b> 2, the processor 10 initializes the virtual camera 1 as the virtual camera control module 222. For example, the processor 10 places the virtual camera 1 at a predetermined center point in the virtual space 2 in the work area of the memory, and directs the line of sight of the virtual camera 1 in the direction in which the user 190 is facing.

ステップS3において、プロセッサ10は、視界画像生成モジュール227として、初期の視界画像を表示するための視界画像データを生成する。表示制御モジュール228は、生成した視界画像データを、通信制御モジュール250を介してHMD装置110に送信(出力)する。   In step S <b> 3, the processor 10 generates view image data for displaying an initial view image as the view image generation module 227. The display control module 228 transmits (outputs) the generated view field image data to the HMD device 110 via the communication control module 250.

ステップS4において、HMD装置110のディスプレイ112は、コンピュータ200から受信した視界画像データに基づいて、視界画像を表示する。HMD装置110を装着したユーザ190は、視界画像を視認すると仮想空間2を認識し得る。   In step S <b> 4, the display 112 of the HMD device 110 displays a view image based on the view image data received from the computer 200. The user 190 wearing the HMD device 110 can recognize the virtual space 2 when viewing the visual field image.

ステップS5において、HMDセンサ120は、HMD装置110から発信される複数の赤外線光に基づいて、HMD装置110の位置と傾きを検知する。検知結果は、動き検知データとして、コンピュータ200に送られる。   In step S <b> 5, the HMD sensor 120 detects the position and inclination of the HMD device 110 based on a plurality of infrared lights transmitted from the HMD device 110. The detection result is sent to the computer 200 as motion detection data.

ステップS6において、プロセッサ10は、仮想カメラ制御モジュール222として、HMD装置110の位置と傾きとに基づいて、HMD装置110を装着したユーザ190の視界方向を特定する。   In step S <b> 6, the processor 10 specifies the visual field direction of the user 190 wearing the HMD device 110 as the virtual camera control module 222 based on the position and inclination of the HMD device 110.

ステップS7において、コントローラ160は、現実空間におけるユーザ190の操作を検出する。例えば、ある局面において、コントローラ160は、ユーザ190によってボタンが押下されたことを検出する。別の局面において、コントローラ160は、ユーザ190の手の動作(例えば、ユーザ190がものを投げる素振りをした際の手の動作等)を検出する。検出内容を示す信号は、コンピュータ200に送られる。   In step S7, the controller 160 detects the operation of the user 190 in the real space. For example, in one aspect, the controller 160 detects that a button has been pressed by the user 190. In another aspect, the controller 160 detects the movement of the hand of the user 190 (for example, the movement of the hand when the user 190 swings to throw things). A signal indicating the detected content is sent to the computer 200.

ステップS8において、プロセッサ10は、操作オブジェクト制御モジュール223、オブジェクト制御モジュール224、コリジョン制御モジュール225、及びコリジョン判定モジュール226として、HMDセンサ120から送られた動き検知データ、コントローラ160から送られた検出内容および各種オブジェクトの制御内容を仮想空間2に反映する。   In step S <b> 8, the processor 10 operates as the operation object control module 223, the object control module 224, the collision control module 225, and the collision determination module 226, the motion detection data sent from the HMD sensor 120, and the detection content sent from the controller 160. The control contents of various objects are reflected in the virtual space 2.

例えば、プロセッサ10は、操作オブジェクト制御モジュール223として、HMD装置110の動き検知データやコントローラ160の検出内容に基づいて、仮想空間2における操作オブジェクト(手オブジェクト)を動かす。また例えば、プロセッサ10は、オブジェクト制御モジュール224として、操作オブジェクトによって操作された移動オブジェクトや対象オブジェクトなどの操作オブジェクト以外のオブジェクトの動作を制御する。また例えば、プロセッサ10は、コリジョン制御モジュール225として、移動オブジェクトの動きに基づいて、移動オブジェクトに関連付けられたコリジョンエリアの形状及び大きさの少なくともいずれかを制御する。また例えば、プロセッサ10は、コリジョン判定モジュール226として、操作オブジェクトのコリジョンエリアと対象オブジェクトのコリジョンエリアとの衝突判定を行う。   For example, the processor 10 moves the operation object (hand object) in the virtual space 2 as the operation object control module 223 based on the motion detection data of the HMD device 110 and the detection content of the controller 160. Further, for example, the processor 10 controls the operation of an object other than the operation object such as a moving object or a target object operated by the operation object as the object control module 224. Further, for example, the processor 10 controls the collision control module 225 to control at least one of the shape and size of the collision area associated with the moving object based on the movement of the moving object. Further, for example, the processor 10 performs the collision determination between the collision area of the operation object and the collision area of the target object as the collision determination module 226.

ステップS9において、プロセッサ10は、視界画像生成モジュール227として、ステップS8における処理の結果に基づく視界画像を表示するための視界画像データを生成する。表示制御モジュール228は、生成した視界画像データをHMD装置110に出力する。   In step S9, the processor 10 generates view image data for displaying a view image based on the result of the process in step S8 as the view image generation module 227. The display control module 228 outputs the generated view field image data to the HMD device 110.

ステップS10において、HMD装置110のディスプレイ112は、受信した視界画像データに基づいて視界画像を更新し、更新後の視界画像を表示する。   In step S10, the display 112 of the HMD device 110 updates the view image based on the received view image data, and displays the updated view image.

次に、図11および図12を参照しながら、ユーザ190の状態と、仮想空間2内に配置された各種オブジェクトとの関係を説明する。図11(A)は、HMD装置110、及びコントローラ160L、160Rを装着したユーザ190の一例を示す図である。図11(B)は、図11(A)に示す状態における、仮想空間2内に配置された仮想カメラ1、左手オブジェクト400L、右手オブジェクト400R、手榴弾オブジェクト500、及び敵キャラクタ600の一例を示す図である。図12は、図11(B)に示す仮想空間2内を仮想カメラ1の視界領域23で撮影した(表した)視界画像Mの一例を示す図である。なお、以下の図面では、説明の関係上、図11(B)に示すように、手オブジェクト400を単なる円で表したり、敵キャラクタ600を単なる直方体として表したりする場合がある。   Next, the relationship between the state of the user 190 and various objects arranged in the virtual space 2 will be described with reference to FIGS. 11 and 12. FIG. 11A is a diagram illustrating an example of a user 190 wearing the HMD device 110 and the controllers 160L and 160R. FIG. 11B shows an example of the virtual camera 1, the left hand object 400L, the right hand object 400R, the grenade object 500, and the enemy character 600 arranged in the virtual space 2 in the state shown in FIG. It is. FIG. 12 is a diagram illustrating an example of a visual field image M captured (represented) by the visual field region 23 of the virtual camera 1 in the virtual space 2 illustrated in FIG. In the following drawings, for the sake of explanation, as shown in FIG. 11B, the hand object 400 may be represented by a simple circle or the enemy character 600 may be represented by a simple rectangular parallelepiped.

本実施形態では、仮想カメラ1は、ユーザ190が装着しているHMD110の動きに連動する。つまり、仮想カメラ1の視野は、HMD110の動きに応じて更新される。また本実施形態では、左手オブジェクト400Lは、ユーザ190の左手に装着されるコントローラ160Lの動きに応じて移動する操作オブジェクトであり、右手オブジェクト400Rは、ユーザ190の右手に装着されるコントローラ160Rの動きに応じて移動する操作オブジェクトである。以下では、左手オブジェクト400Lと右手オブジェクト400Rとを単に「手オブジェクト400」と総称する場合がある。また本実施形態では、手榴弾オブジェクト500は、手オブジェクト400によって操作される移動オブジェクトである。手榴弾オブジェクト500に対する手オブジェクト400による操作としては、例えば、手榴弾オブジェクト500をつかむ、手榴弾オブジェクト500からピン510を外す、つかんだ手榴弾オブジェクト500を対象オブジェクトである敵キャラクタ600に投げるなどが挙げられるが、これに限定されるものではない。なお、図11及び図12に示す例では、手榴弾オブジェクト500は、左手オブジェクト400Lによって保持されている。   In the present embodiment, the virtual camera 1 is interlocked with the movement of the HMD 110 worn by the user 190. That is, the visual field of the virtual camera 1 is updated according to the movement of the HMD 110. In this embodiment, the left hand object 400L is an operation object that moves according to the movement of the controller 160L attached to the left hand of the user 190, and the right hand object 400R is the movement of the controller 160R attached to the right hand of the user 190. It is an operation object that moves in response to. Hereinafter, the left hand object 400L and the right hand object 400R may be simply referred to as a “hand object 400”. In the present embodiment, the grenade object 500 is a moving object operated by the hand object 400. Examples of operations by the hand object 400 for the grenade object 500 include grabbing the grenade object 500, removing the pin 510 from the grenade object 500, and throwing the grabbed grenade object 500 to the enemy character 600 that is the target object. It is not limited to this. In the example shown in FIGS. 11 and 12, the grenade object 500 is held by the left hand object 400L.

また本実施形態では、各オブジェクトには、オブジェクト間の衝突(コリジョン)を判定するためのコリジョンエリアが設定されている。図11(B)に示す例では、左手オブジェクト400LにはコリジョンエリアCALが設定され、右手オブジェクト400RにはコリジョンエリアCARが設定され、手榴弾オブジェクト500にはコリジョンエリアCBが設定され、敵キャラクタ600にはコリジョンエリアCCが設定されている。以下では、コリジョンエリアCALとコリジョンエリアCARとを単に「コリジョンエリアCA」と総称する場合がある。本実施形態では、図11(B)に示すように、コリジョンエリアは、オブジェクトの中心位置を中心に設定されている場合を例にとり説明するが、これに限定されず、オブジェクトの中心位置以外の位置を中心としてもよい。また、コリジョンエリアの形状は、例えば、球状、直方体状、楕円状、及び棒状などどのような形状であってもよく、オブジェクト毎に大きさや形状が異なっていてもよい。   In the present embodiment, a collision area for determining collision (collision) between objects is set for each object. In the example shown in FIG. 11B, a collision area CAL is set for the left hand object 400L, a collision area CAR is set for the right hand object 400R, a collision area CB is set for the grenade object 500, and the enemy character 600 is set. Is a collision area CC. Hereinafter, the collision area CAL and the collision area CAR may be simply referred to as “collision area CA”. In the present embodiment, as shown in FIG. 11B, the case where the collision area is set around the center position of the object will be described as an example. However, the present invention is not limited to this. The position may be the center. Further, the shape of the collision area may be any shape such as a spherical shape, a rectangular parallelepiped shape, an elliptical shape, and a rod shape, and the size and shape may be different for each object.

前述したように、図11及び図12に示す例では、手榴弾オブジェクト500は、左手オブジェクト400Lによって保持されている。手オブジェクト400による手榴弾オブジェクト500の保持は、コリジョンエリアCAとコリジョンエリアCBとの衝突を条件に可能である。例えば、コリジョン判定モジュール226によりコリジョンエリアCAとコリジョンエリアCBとが衝突していると判定されたことを条件に、手オブジェクト400により手榴弾オブジェクト500を保持させるようにしてもよい。また例えば、コリジョン判定モジュール226によりコリジョンエリアCAとコリジョンエリアCBとが衝突していると判定された状態で、ボタン36,37又はアナログスティック38がユーザ190により操作(押下)され続けていることを条件に、手オブジェクト400により手榴弾オブジェクト500を保持させるようにしてもよい。なお、手オブジェクト400による手榴弾オブジェクト500の保持は、どのように実現しても構わないが、例えば、オブジェクト制御モジュール224が、手オブジェクト400の移動(動作)に連動させて手榴弾オブジェクト500を移動させることで実現できる。   As described above, in the example shown in FIGS. 11 and 12, the grenade object 500 is held by the left hand object 400L. The hand grenade object 500 can be held by the hand object 400 on condition that the collision between the collision area CA and the collision area CB. For example, the grenade object 500 may be held by the hand object 400 on condition that the collision determination module 226 determines that the collision area CA and the collision area CB collide. Further, for example, it is confirmed that the buttons 36 and 37 or the analog stick 38 are continuously operated (pressed) by the user 190 in a state where the collision determination module 226 determines that the collision area CA and the collision area CB collide with each other. As a condition, the grenade object 500 may be held by the hand object 400. Note that the holding of the grenade object 500 by the hand object 400 may be realized in any way. For example, the object control module 224 moves the grenade object 500 in conjunction with the movement (motion) of the hand object 400. This can be achieved.

本実施形態では、ユーザ190が、手にコントローラ160が装着された状態で物を投げるような動作を行うことで、手オブジェクト400に、保持中の手榴弾オブジェクト500を敵キャラクタ600に向かって投げさせる。そして、投げられた手榴弾オブジェクト500のコリジョンエリアCBと敵キャラクタ600のコリジョンエリアCCとのコリジョン判定(当たり判定)結果に応じて、敵キャラクタ600に所定の影響が与えられる。   In the present embodiment, the user 190 causes the hand object 400 to throw the held grenade object 500 toward the enemy character 600 by performing an action of throwing an object with the controller 160 attached to the hand. . Then, a predetermined influence is given to the enemy character 600 according to the result of the collision determination (hit determination) between the collision area CB of the thrown grenade object 500 and the collision area CC of the enemy character 600.

なお、手オブジェクト400による手榴弾オブジェクト500の投てきは、どのように実現しても構わない。例えば、ユーザ190が、手にコントローラ160が装着された状態で物を投げるような動作を行っている最中に、手榴弾オブジェクト500を保持させるために操作(押下)中のボタン36,37又はアナログスティック38の操作(押下)を解除することで、オブジェクト制御モジュール224が、コントローラ160の動きに基づく速度を手榴弾オブジェクト500に与え、当該速度に基づいて手榴弾オブジェクト500を移動させることで実現できる。   The throwing of the grenade object 500 by the hand object 400 may be realized in any way. For example, while the user 190 is performing an operation of throwing an object with the controller 160 attached to the hand, the buttons 36 and 37 being operated (pressed) to hold the grenade object 500 or analog By releasing the operation (pressing) of the stick 38, the object control module 224 can provide the grenade object 500 with a speed based on the movement of the controller 160 and move the grenade object 500 based on the speed.

また、敵キャラクタ600に与えられる影響としては、例えば、敵キャラクタ600に関連付けられたパラメータの変動が挙げられる。本実施形態では、敵キャラクタ600に関連付けられたパラメータが体力やライフなどゲームを継続するために必要な要素であり、このパラメータを低下させることを想定しているが、これに限定されるものではない。なお、敵キャラクタ600に与えられる影響は、パラメータの変動ではなく、敵キャラクタ600の挙動の変化などであってもよいし、両者の併用であってもよい。   Moreover, as an influence given to the enemy character 600, the fluctuation | variation of the parameter linked | related with the enemy character 600 is mentioned, for example. In the present embodiment, the parameters associated with the enemy character 600 are elements necessary for continuing the game, such as physical strength and life, and it is assumed that the parameters are reduced. However, the present invention is not limited to this. Absent. Note that the influence given to the enemy character 600 may be a change in the behavior of the enemy character 600 instead of a change in parameters, or a combination of both.

また本実施形態では、手榴弾オブジェクト500を爆発させるため、手榴弾オブジェクト500からピン510を抜いた後に手榴弾オブジェクト500を手オブジェクト400に投げさせることを想定している。しかしながら、仮想空間に没頭しているユーザ190が興奮のあまり手榴弾オブジェクト500からピン510を抜くための操作を忘れて、手榴弾オブジェクト500を手オブジェクト400に投げさせてしまうことが想定される。このため本実施形態では、手榴弾オブジェクト500がピン510を抜いた状態で投げられているかピン510が抜かれずに投げられているかに応じた制御を行う。   Further, in the present embodiment, in order to explode the grenade object 500, it is assumed that the grenade object 500 is thrown to the hand object 400 after the pin 510 is removed from the grenade object 500. However, it is assumed that the user 190 who is immersed in the virtual space forgets the operation for pulling out the pin 510 from the grenade object 500 with excitement and throws the grenade object 500 to the hand object 400. Therefore, in the present embodiment, control is performed according to whether the grenade object 500 is thrown with the pin 510 pulled out or thrown without the pin 510 being pulled out.

なお、手榴弾オブジェクト500からピン510を抜くための操作は、どのように実現しても構わない。例えば、手オブジェクト400に手榴弾オブジェクト500が保持されている状態で、ユーザ190が、コントローラ160のボタン36,37又はアナログスティック38の操作(押下)を行うことで、オブジェクト制御モジュール224が、手榴弾オブジェクト500からピン510を抜くようにしてもよい。また例えば、ピン510にもコリジョンエリアを設定し、このコリジョンエリアと手オブジェクト400のコリジョンエリアCA(主として、手榴弾オブジェクト500を保持していない方の手オブジェクト400のコリジョンエリアCAを想定)との衝突後に、コントローラ160のボタン36,37又はアナログスティック38の操作(押下)が行われたり、上記衝突が解除されたりしたこと(非接触の状態に戻ったこと)を条件に、オブジェクト制御モジュール224が、手榴弾オブジェクト500からピン510を抜くようにしてもよい。   Note that the operation for removing the pin 510 from the grenade object 500 may be realized in any manner. For example, in a state where the grenade object 500 is held in the hand object 400, the user 190 operates (presses) the buttons 36 and 37 or the analog stick 38 of the controller 160, so that the object control module 224 is changed to the grenade object. The pin 510 may be removed from the 500. Also, for example, a collision area is set on the pin 510, and this collision area collides with the collision area CA of the hand object 400 (mainly assuming the collision area CA of the hand object 400 that does not hold the grenade object 500). Subsequently, the object control module 224 is operated on the condition that the operation (pressing) of the buttons 36 and 37 or the analog stick 38 of the controller 160 is performed or the collision is released (returned to the non-contact state). The pin 510 may be removed from the grenade object 500.

次に、図13〜図19を参照しながら、本実施形態に係る情報処理方法、具体的には、コリジョンエリア及びコリジョン効果の制御手法について説明する。図13〜図15は、本実施形態のコリジョン制御処理の一例を示すフローチャートである。なお、図14は、手榴弾オブジェクト500がピン510を抜かれた状態で投げられている場合のコリジョン制御処理を示し、図15は、手榴弾オブジェクト500がピン510を抜かれていない状態で投げられている場合のコリジョン制御処理を示す。図13〜図15に示すコリジョン制御処理は、図10に示すフローチャートのステップS7〜S8の詳細処理の一例に該当する。図16(A)は、手榴弾オブジェクト500からピン510が抜かれた状態で、ユーザ190が物を投げる動作を行っている状態の一例を示す図であり、図16(B)は、図16(A)が示す状態において、手榴弾オブジェクト500の速度が閾値以上の場合のコリジョンエリアCBの制御例を示す図である。図17(A)は、手榴弾オブジェクト500からピン510が抜かれた状態で、ユーザ190が物を投げる動作を行っている状態の一例を示す図であり、図17(B)は、図17(A)が示す状態において、手榴弾オブジェクト500の速度が閾値未満の場合のコリジョンエリアCBの制御例を示す図である。図18(A)は、手榴弾オブジェクト500からピン510が抜かれていない状態で、ユーザ190が物を投げる動作を行っている状態の一例を示す図であり、図18(B)は、図18(A)が示す状態において、手榴弾オブジェクト500の速度が閾値以上の場合のコリジョン効果の制御例を示す図である。図19(A)は、手榴弾オブジェクト500からピン510が抜かれていない状態で、ユーザ190が物を投げる動作を行っている状態の一例を示す図であり、図19(B)は、図19(A)が示す状態において、手榴弾オブジェクト500の速度が閾値未満の場合のコリジョン効果の制御例を示す図である。   Next, an information processing method according to the present embodiment, specifically, a collision area and a collision effect control method will be described with reference to FIGS. 13 to 15 are flowcharts illustrating an example of the collision control process according to the present embodiment. 14 shows a collision control process when the grenade object 500 is thrown with the pin 510 removed, and FIG. 15 shows a case where the grenade object 500 is thrown without the pin 510 removed. The collision control process is shown. The collision control process shown in FIGS. 13 to 15 corresponds to an example of the detailed process of steps S7 to S8 in the flowchart shown in FIG. FIG. 16A is a diagram illustrating an example of a state in which the user 190 is throwing an object with the pin 510 removed from the grenade object 500. FIG. 16B is a diagram illustrating FIG. ) Is a diagram illustrating a control example of the collision area CB when the speed of the grenade object 500 is equal to or higher than a threshold value. FIG. 17A is a diagram illustrating an example of a state in which the user 190 is throwing an object with the pin 510 removed from the grenade object 500, and FIG. ) Is a diagram illustrating a control example of the collision area CB when the speed of the grenade object 500 is less than a threshold value. FIG. 18A is a diagram illustrating an example of a state in which the user 190 is throwing an object in a state where the pin 510 has not been removed from the grenade object 500, and FIG. In the state shown to A), it is a figure which shows the example of control of the collision effect in case the speed of the grenade object 500 is more than a threshold value. FIG. 19A is a diagram illustrating an example of a state in which the user 190 is throwing an object while the pin 510 is not removed from the grenade object 500, and FIG. 19B is a diagram illustrating FIG. In the state shown to A), it is a figure which shows the example of control of the collision effect in case the speed of the grenade object 500 is less than a threshold value.

図13に示すように、まず、ステップS11において、プロセッサ10(オブジェクト制御モジュール224)は、手オブジェクト400により手榴弾オブジェクト500が投げられたか否かを判定する。プロセッサ10(オブジェクト制御モジュール224)は、例えば、ユーザ190が、手榴弾オブジェクト500を保持させるために操作(押下)中のボタン36,37又はアナログスティック38の操作(押下)を解除した場合、手榴弾オブジェクト500が投げられたと判定し、解除されていない場合、手榴弾オブジェクト500が投げられていないと判定する。なお、ステップS11の処理は、手榴弾オブジェクト500が投げられていないと判定されている間(ステップS11でNo)、定期的に行われる。   As shown in FIG. 13, first, in step S <b> 11, the processor 10 (object control module 224) determines whether or not the grenade object 500 has been thrown by the hand object 400. For example, when the user 190 releases the operation (pressing) of the buttons 36 and 37 or the analog stick 38 that are being operated (pressed) to hold the grenade object 500, the processor 10 (the object control module 224) It is determined that 500 has been thrown, and if it is not released, it is determined that the grenade object 500 has not been thrown. Note that the process of step S11 is periodically performed while it is determined that the grenade object 500 is not thrown (No in step S11).

手榴弾オブジェクト500が投げられたと判定された場合(ステップS11でYes)、ステップS12において、プロセッサ10(オブジェクト制御モジュール224)は、投げられた手榴弾オブジェクト500に速度v(速度ベクトル)を設定し、設定した速度vで手榴弾オブジェクト500を移動させる。   When it is determined that the grenade object 500 has been thrown (Yes in step S11), in step S12, the processor 10 (object control module 224) sets and sets the velocity v (speed vector) for the thrown grenade object 500. The grenade object 500 is moved at the speed v.

プロセッサ10(オブジェクト制御モジュール224)は、例えば、手榴弾オブジェクト500を保持させるために操作(押下)中のボタン36,37又はアナログスティック38の操作(押下)が解除されたコントローラ160(ユーザ190が物を投げる動作を行った方の手に装着されているコントローラ160を想定)の絶対速度に基づいて、手榴弾オブジェクト500に速度vを与える。手榴弾オブジェクト500に与えられる速度vは、コントローラ160の絶対速度に基づいて求められた速度であればどのようなものでもよく、コントローラ160の絶対速度そのものであってもよいし、コントローラ160の絶対速度に所定の定数を乗じることで求められた速度であってもよい。   The processor 10 (the object control module 224), for example, the controller 160 (the user 190 is the object 190) in which the operation (pressing) of the buttons 36 and 37 or the analog stick 38 being operated (pressed) is released to hold the grenade object 500. The speed v is given to the grenade object 500 on the basis of the absolute speed of the controller 160 attached to the hand of the person performing the action of throwing. The velocity v given to the grenade object 500 may be any velocity obtained based on the absolute velocity of the controller 160, may be the absolute velocity of the controller 160 itself, or may be the absolute velocity of the controller 160. It may be a speed obtained by multiplying by a predetermined constant.

なお、コントローラ160の絶対速度は、現実空間内における固定位置から観測したHMD110の速度を示す。本実施形態では、コントローラ160の絶対速度は、現実空間内の所定の場所に設置されたHMDセンサ120に対するコントローラ160の速度である場合を例にとり説明するが、これに限定されるものではない。具体的には、プロセッサ10は、HMDセンサ120により検出された情報を取得する毎に、当該情報に基づいてコントローラ160の位置を特定し、特定した位置情報と、前回に特定した位置情報とに基づいて、コントローラ160の移動方向における絶対速度を特定する。例えば、n番目(nは1以上の整数)のフレームにおけるコントローラ160の位置がPn、(n+1)番目のフレームにおけるコントローラ160の位置がPn+1であり、フレーム間の時間間隔がΔTである場合、n番目のフレームにおけるコントローラ160の絶対速度avnは、avn=(位置(Pn+1)−位置Pn)/ΔTとなる。なお、ΔTは、1/フレームレートであり、例えば、フレームレートが90fps(frames per second)であれば、ΔT=1/90である。なお、コントローラ160の絶対速度を特定するモジュールは、例えば、操作オブジェクト制御モジュール223であってもよいし、オブジェクト制御モジュール224であってもよい。   The absolute speed of the controller 160 indicates the speed of the HMD 110 observed from a fixed position in the real space. In the present embodiment, the case where the absolute speed of the controller 160 is the speed of the controller 160 with respect to the HMD sensor 120 installed at a predetermined location in the real space will be described as an example. However, the present invention is not limited to this. Specifically, every time the information detected by the HMD sensor 120 is acquired, the processor 10 identifies the position of the controller 160 based on the information, and identifies the identified position information and the previously identified position information. Based on this, the absolute speed in the moving direction of the controller 160 is specified. For example, if the position of the controller 160 in the nth frame (n is an integer equal to or greater than 1) is Pn, the position of the controller 160 in the (n + 1) th frame is Pn + 1, and the time interval between frames is ΔT, n The absolute speed avn of the controller 160 in the second frame is avn = (position (Pn + 1) −position Pn) / ΔT. ΔT is 1 / frame rate. For example, if the frame rate is 90 fps (frames per second), ΔT = 1/90. The module for specifying the absolute speed of the controller 160 may be, for example, the operation object control module 223 or the object control module 224.

図13に戻り、ステップS13において、プロセッサ10(オブジェクト制御モジュール224)は、手榴弾オブジェクト500からピン510が抜かれているか否かを判定する。プロセッサ10(オブジェクト制御モジュール224)は、例えば、手榴弾オブジェクト500が投げられる以前に、前述した手榴弾オブジェクト500からピン510を抜くための操作を検出している場合には、手榴弾オブジェクト500からピン510が抜かれていると判定し、当該操作を検出していない場合には、手榴弾オブジェクト500からピン510が抜かれていないと判定すればよい。手榴弾オブジェクト500からピン510が抜かれている場合(ステップS13でYes)、A(詳細には、図14のステップS21)に進み、手榴弾オブジェクト500からピン510が抜かれていない場合(ステップS13でNo)、B(詳細には、図15のステップS31)に進む。   Returning to FIG. 13, in step S <b> 13, the processor 10 (object control module 224) determines whether or not the pin 510 is removed from the grenade object 500. For example, when the processor 10 (the object control module 224) detects an operation for removing the pin 510 from the grenade object 500 described above before the grenade object 500 is thrown, the pin 510 is removed from the grenade object 500. If it is determined that the pin is pulled out and the operation is not detected, it may be determined that the pin 510 is not pulled out from the grenade object 500. If the pin 510 has been removed from the grenade object 500 (Yes in step S13), the process proceeds to A (specifically, step S21 in FIG. 14), and if the pin 510 has not been removed from the grenade object 500 (No in step S13). , B (specifically, step S31 in FIG. 15).

ここで、図14を参照し、手榴弾オブジェクト500からピン510が抜かれている場合(図13のステップS13で「A」に進んだ場合)の制御例について説明する。図14のステップS21において、プロセッサ10(オブジェクト制御モジュール224)は、手榴弾オブジェクト500の爆発タイミングか否かを判定する。手榴弾オブジェクト500の爆発タイミングは、例えば、手榴弾オブジェクト500からピン510が抜かれてから所定時間経過後(例えば、5秒後)に設定できる。このため、プロセッサ10(オブジェクト制御モジュール224)は、手榴弾オブジェクト500からピン510が抜かれた時点でタイマーを設定し、このタイマーにより所定時間の計測が完了すれば、手榴弾オブジェクト500の爆発タイミングと判定し、所定時間の計測が完了していなければ、手榴弾オブジェクト500の爆発タイミングでないと判定すればよい。なお、ステップS21の処理は、手榴弾オブジェクト500の爆発タイミングでないと判定されている間(ステップS21でNo)、定期的に行われる。   Here, with reference to FIG. 14, a control example when the pin 510 is removed from the grenade object 500 (when the process proceeds to “A” in step S13 in FIG. 13) will be described. In step S <b> 21 of FIG. 14, the processor 10 (object control module 224) determines whether or not it is an explosion timing of the grenade object 500. The explosion timing of the grenade object 500 can be set, for example, after a predetermined time has elapsed after the pin 510 is removed from the grenade object 500 (for example, after 5 seconds). For this reason, the processor 10 (the object control module 224) sets a timer when the pin 510 is removed from the grenade object 500, and determines that the grenade object 500 has an explosion timing when the measurement of a predetermined time is completed by this timer. If the measurement for the predetermined time is not completed, it may be determined that it is not the explosion timing of the grenade object 500. The process of step S21 is periodically performed while it is determined that it is not the explosion timing of the grenade object 500 (No in step S21).

手榴弾オブジェクト500の爆発タイミングであると判定された場合(ステップS21でYes)、ステップS22において、プロセッサ10(オブジェクト制御モジュール224)は、投げられた手榴弾オブジェクト500の速度vが閾値となる所定速度vth以上かどうかを判定する。なお、所定速度vthは、ゲーム内容に応じて適宜されていてもよいし、ユーザ190の手を動かす速度を予め計測して設定してもよい。   When it is determined that it is the explosion timing of the grenade object 500 (Yes in step S21), in step S22, the processor 10 (object control module 224) determines the predetermined speed vth at which the speed v of the thrown grenade object 500 is a threshold value. Judge whether it is above. The predetermined speed vth may be appropriately set according to the game content, or may be set by measuring in advance the speed at which the user 190 moves his / her hand.

手榴弾オブジェクト500の速度vが所定速度vth以上(v≧vth)である場合(ステップS22でYes)、プロセッサ10(コリジョン制御モジュール225)は、ステップS23において、手榴弾オブジェクト500のコリジョンエリアCBの大きさの直径をR2(R<R1<R2)に特定(設定)し、ステップS25において、手榴弾オブジェクト500を爆発させる演出を行う。   When the speed v of the grenade object 500 is equal to or higher than the predetermined speed vth (v ≧ vth) (Yes in step S22), the processor 10 (collision control module 225) determines the size of the collision area CB of the grenade object 500 in step S23. Is specified (set) as R2 (R <R1 <R2), and in step S25, the grenade object 500 is exploded.

一方、手榴弾オブジェクト500の速度vが所定速度vth未満(v<vth)である場合(ステップS22でNo)、プロセッサ10(コリジョン制御モジュール225)は、ステップS24において、手榴弾オブジェクト500のコリジョンエリアCBの大きさの直径をR1(R<R1<R2)に特定(設定)し、ステップS25において、手榴弾オブジェクト500を爆発させる演出を行う。なお「R」は、コリジョンエリアCBのデフォルトの大きさの直径である。   On the other hand, when the speed v of the grenade object 500 is less than the predetermined speed vth (v <vth) (No in step S22), the processor 10 (collision control module 225) in the collision area CB of the grenade object 500 in step S24. The size diameter is specified (set) as R1 (R <R1 <R2), and in step S25, the grenade object 500 is exploded. “R” is the diameter of the default size of the collision area CB.

ここで、ステップS23やステップS24で設定されたコリジョンエリアCBの大きさは、手榴弾オブジェクト500が爆発した際の爆風の影響が及ぶ範囲に相当する。このため本実施形態では、手榴弾オブジェクト500の速度が遅い場合の爆風550の影響が及ぶ範囲(直径がR1のコリジョンエリアCB)よりも、手榴弾オブジェクト500の速度が速い場合の爆風550の影響が及ぶ範囲(直径がR2のコリジョンエリアCB)の方が大きくなる(図16、図17参照)。   Here, the size of the collision area CB set in step S23 or step S24 corresponds to a range that is affected by the blast when the grenade object 500 explodes. For this reason, in this embodiment, the influence of the blast 550 when the speed of the grenade object 500 is higher than the range (the collision area CB having a diameter R1) where the influence of the blast 550 when the speed of the grenade object 500 is slow affects. The range (collision area CB having a diameter R2) is larger (see FIGS. 16 and 17).

実空間の場合、物理法則の関係上、ものを投げる速度が遅いほど飛距離も短くなり、ものを投げる速度が速いほど飛距離も長くなる傾向にある。このため、実空間において、手榴弾を投げて爆発させる場合を想定すると、遅く投げた場合よりも速く投げた場合の方が遠くまで手榴弾が届き、爆風の影響が目的物に及ぶ(届く)可能性が高いと考えられる。従って上述したような制御を行うことで、爆風の影響が及ぶ範囲にリアリティを持たせることが可能となり、ユーザ190に対する仮想空間への没入感を高めることが可能となる。   In the real space, due to the laws of physics, the slower the throwing speed, the shorter the flying distance, and the faster the throwing speed, the longer the flying distance. For this reason, assuming that a grenade is thrown to explode in real space, the grenade may reach farther when thrown faster than if thrown late, and the impact of the blast may reach the target. Is considered high. Therefore, by performing the control as described above, it is possible to provide reality to the range affected by the blast, and to increase the sense of immersion in the virtual space for the user 190.

なお本実施形態では、コリジョンエリアCBの直径を変更することでコリジョンエリアCBの大きさを変更する場合を例にとり説明した。しかしながら、コリジョンエリアCBの大きさを変更するために用いるコリジョンエリアCBの要素(パラメータ)は、これに限定されず、半径などどのような値を用いてもよい。   In the present embodiment, the case where the size of the collision area CB is changed by changing the diameter of the collision area CB has been described as an example. However, the elements (parameters) of the collision area CB used for changing the size of the collision area CB are not limited to this, and any value such as a radius may be used.

続いて、ステップS26において、プロセッサ10(コリジョン判定モジュール226)は、手榴弾オブジェクト500(爆風550)のコリジョンエリアCBと敵キャラクタ600のコリジョンエリアCCとが衝突(接触)しているか否かを判定する。   Subsequently, in step S26, the processor 10 (collision determination module 226) determines whether or not the collision area CB of the grenade object 500 (blast 550) and the collision area CC of the enemy character 600 collide (contact). .

プロセッサ10(コリジョン判定モジュール226)は、コリジョンエリアCBとコリジョンエリアCCとが衝突していると判定した場合(ステップS26でYes)、敵キャラクタ600に所定の影響を与える(ステップS27)。なお、図16に示す例の場合(手榴弾オブジェクト500の速度が速い場合)、手榴弾オブジェクト500(爆風550)のコリジョンエリアCBが、敵キャラクタ600のコリジョンエリアCCと衝突しているため、プロセッサ10(コリジョン判定モジュール226)は、敵キャラクタ600に関連づけられたパラメータを低下させる。   If the processor 10 (collision determination module 226) determines that the collision area CB and the collision area CC collide (Yes in step S26), the processor 10 (the collision determination module 226) has a predetermined influence on the enemy character 600 (step S27). In the case of the example shown in FIG. 16 (when the speed of the grenade object 500 is high), since the collision area CB of the grenade object 500 (blast 550) collides with the collision area CC of the enemy character 600, the processor 10 ( The collision determination module 226) reduces the parameters associated with the enemy character 600.

一方、プロセッサ10(コリジョン判定モジュール226)は、コリジョンエリアCBとコリジョンエリアCCとが衝突していないと判定した場合(ステップS26でNo)、敵キャラクタ600に所定の影響を与えない(ステップS27を行わない)。なお、図17に示す例の場合(手榴弾オブジェクト500の速度が遅い場合)、手榴弾オブジェクト500(爆風550)のコリジョンエリアCBが、敵キャラクタ600のコリジョンエリアCCと衝突していないため、プロセッサ10(コリジョン判定モジュール226)は、敵キャラクタ600に関連づけられたパラメータを低下させない。   On the other hand, if the processor 10 (collision determination module 226) determines that the collision area CB and the collision area CC do not collide (No in step S26), the processor 10 (collision determination module 226) does not affect the enemy character 600 (step S27). Not performed). In the case of the example shown in FIG. 17 (when the speed of the grenade object 500 is low), the collision area CB of the grenade object 500 (blast 550) does not collide with the collision area CC of the enemy character 600. The collision determination module 226) does not decrease the parameters associated with the enemy character 600.

次に、図15を参照し、手榴弾オブジェクト500からピン510が抜かれていない場合(図13のステップS13で「B」に進んだ場合)の制御例について説明する。図15のステップS31において、プロセッサ10(コリジョン判定モジュール226)は、手榴弾オブジェクト500のコリジョンエリアCBと敵キャラクタ600のコリジョンエリアCCとが衝突(接触)しているか否かを判定する。   Next, a control example when the pin 510 is not removed from the grenade object 500 (when the process proceeds to “B” in step S13 in FIG. 13) will be described with reference to FIG. In step S31 of FIG. 15, the processor 10 (collision determination module 226) determines whether or not the collision area CB of the grenade object 500 and the collision area CC of the enemy character 600 collide (contact).

コリジョンエリアCBとコリジョンエリアCCとが衝突していない場合(ステップS31でNo)、ステップS36へ進む。一方、コリジョンエリアCBとコリジョンエリアCCとが衝突している場合(ステップS31でYes)、ステップS32において、プロセッサ10(オブジェクト制御モジュール224)は、投げられた手榴弾オブジェクト500の速度vが閾値となる所定速度vth以上かどうかを判定する。   If the collision area CB does not collide with the collision area CC (No in step S31), the process proceeds to step S36. On the other hand, when the collision area CB and the collision area CC collide (Yes in step S31), in step S32, the processor 10 (object control module 224) sets the speed v of the thrown grenade object 500 as a threshold value. It is determined whether or not the speed is equal to or greater than a predetermined speed vth.

手榴弾オブジェクト500の速度vが所定速度vth以上(v≧vth)である場合(ステップS32でYes)、ステップS33において、プロセッサ10(コリジョン制御モジュール225)は、敵キャラクタ600に与える影響を第1の影響に設定する。   When the speed v of the grenade object 500 is equal to or higher than the predetermined speed vth (v ≧ vth) (Yes in step S32), in step S33, the processor 10 (collision control module 225) affects the enemy character 600 with the first effect. Set to impact.

一方、手榴弾オブジェクト500の速度vが所定速度vth未満(v<vth)である場合(ステップS32でNo)、ステップS34において、プロセッサ10(コリジョン制御モジュール225)は、敵キャラクタ600に与える影響を第2の影響に設定する。   On the other hand, when the speed v of the grenade object 500 is less than the predetermined speed vth (v <vth) (No in step S32), in step S34, the processor 10 (collision control module 225) has an effect on the enemy character 600. Set to 2 impact.

ここで、ステップS33で設定した第1の影響やステップS34で設定した第2の影響は、いずれも敵キャラクタ600に関連づけられたパラメータを低下させるものであるが、第2の影響よりも第1の影響の方がパラメータの低下量(例えば、敵キャラクタ600が受けるダメージ)が多いものとする。このため本実施形態では、ピン510が抜かれずに手榴弾オブジェクト500が投げられた場合、手榴弾オブジェクト500の速度が遅い場合よりも、手榴弾オブジェクト500の速度が速い場合の方が、敵キャラクタ600が受ける影響(敵キャラクタ600のパラメータ低下量)が大きくなる(図18、図19参照)。   Here, both the first effect set in step S33 and the second effect set in step S34 lower the parameters associated with the enemy character 600, but the first effect is greater than the second effect. , It is assumed that the amount of parameter decrease (for example, damage received by the enemy character 600) is larger. Therefore, in this embodiment, when the grenade object 500 is thrown without the pin 510 being pulled out, the enemy character 600 receives when the grenade object 500 has a higher speed than when the grenade object 500 has a lower speed. The influence (the parameter reduction amount of the enemy character 600) increases (see FIGS. 18 and 19).

前述したように、仮想空間に没頭しているユーザ190が興奮のあまり手榴弾オブジェクト500からピン510を抜くための操作を忘れて、手榴弾オブジェクト500を手オブジェクト400に投げさせてしまうことが想定される。この場合、手榴弾オブジェクト500は爆発しないため、手榴弾オブジェクト500が敵キャラクタ600に衝突しても、敵キャラクタ600に影響を与えない(敵キャラクタ600のパラメータを低下させない)という制御も考えられる。しかしながら、このような制御は、ユーザ190を仮想空間2に没入させるという観点からは好ましくない。また、実体験上においても、手榴弾のような鉄の塊をぶつけられれば通常は痛みを感じ、ぶつけられる速度が速いほど痛みは増すと考えられる。このため本実施形態では、上述したような制御を行うことで、敵キャラクタ600に与える影響にリアリティを持たせることが可能となり、ユーザ190に対する仮想空間への没入感を高めることが可能となる。但し、敵キャラクタ600に与える影響にリアリティを持たせるという観点からは、第1の影響によるパラメータの低下量は、前述した手榴弾オブジェクト500の爆風の影響によるパラメータの低下量よりも少ないことが好ましい。   As described above, it is assumed that the user 190 who is immersed in the virtual space forgets the operation for pulling out the pin 510 from the grenade object 500 with great excitement and throws the grenade object 500 onto the hand object 400. . In this case, since the grenade object 500 does not explode, even if the grenade object 500 collides with the enemy character 600, it can be considered that the enemy character 600 is not affected (the parameter of the enemy character 600 is not reduced). However, such control is not preferable from the viewpoint of immersing the user 190 in the virtual space 2. Also, in actual experience, if you hit a lump of iron like a grenade, you will usually feel pain, and the faster you hit it, the more pain will be. For this reason, in the present embodiment, by performing the control as described above, it is possible to give reality to the influence on the enemy character 600, and it is possible to increase the sense of immersion in the virtual space for the user 190. However, from the viewpoint of giving reality to the influence on the enemy character 600, it is preferable that the amount of parameter decrease due to the first effect is smaller than the amount of parameter decrease due to the blast effect of the grenade object 500 described above.

続いて、ステップS35において、プロセッサ10(コリジョン判定モジュール226)は、手榴弾オブジェクト500を爆発させる演出を行い、設定した影響を敵キャラクタ600に与える。   Subsequently, in step S <b> 35, the processor 10 (collision determination module 226) performs an effect of exploding the grenade object 500 and gives the set influence to the enemy character 600.

このように本実施形態では、移動オブジェクトの移動速度に応じて、対象オブジェクトなどの他のオブジェクトとのコリジョン判定に用いられる移動オブジェクトのコリジョンエリアの大きさを変えたり、移動オブジェクトが対象オブジェクトなどの他のオブジェクトと衝突した場合のコリジョン効果を変えたりする。このため本実施形態によれば、ユーザ190の仮想空間への没入感を向上させることが可能となる。   As described above, according to the present embodiment, the size of the collision area of the moving object used for collision determination with other objects such as the target object is changed according to the moving speed of the moving object, Change the collision effect when colliding with other objects. For this reason, according to this embodiment, it becomes possible to improve the feeling of immersion of the user 190 in the virtual space.

なお本実施形態では、移動オブジェクトの移動速度に応じて、対象オブジェクトなどの他のオブジェクトとのコリジョン判定に用いられる移動オブジェクトのコリジョンエリアの大きさを変えたり、移動オブジェクトが対象オブジェクトなどの他のオブジェクトと衝突した場合のコリジョン効果を変えたりする場合を例にとり説明した。しかしながら、移動オブジェクトの移動速度ではなく、移動オブジェクトの速さ(スカラー量)や加速度などの移動オブジェクトの早さに関する情報を用いて、このような制御を行うようにしてもよい。   In this embodiment, according to the moving speed of the moving object, the size of the collision area of the moving object used for collision determination with another object such as the target object is changed, or the moving object is changed to another object such as the target object. The case of changing the collision effect when colliding with an object has been described as an example. However, such control may be performed using information regarding the speed of the moving object such as the speed (scalar amount) and acceleration of the moving object, not the moving speed of the moving object.

また本実施形態では、移動オブジェクトの移動速度が閾値以上であるか否かに応じて、対象オブジェクトなどの他のオブジェクトとのコリジョン判定に用いられる移動オブジェクトのコリジョンエリアの大きさを変えたり、移動オブジェクトが対象オブジェクトなどの他のオブジェクトと衝突した場合のコリジョン効果を変えたりする場合を例にとり説明した。しかしながら、移動オブジェクトの移動速度を段階分けし、この段階に応じて、対象オブジェクトなどの他のオブジェクトとのコリジョン判定に用いられる移動オブジェクトのコリジョンエリアの大きさを変えたり、移動オブジェクトが対象オブジェクトなどの他のオブジェクトと衝突した場合のコリジョン効果を変えたりするようにしてもよい。このようにすれば、移動オブジェクトのコリジョンエリアの大きさや移動オブジェクトのコリジョン効果をより細かく設定することができる。   In the present embodiment, the size of the collision area of the moving object used for collision determination with other objects such as the target object is changed or moved depending on whether or not the moving speed of the moving object is equal to or higher than the threshold. The case where the collision effect when the object collides with another object such as the target object is changed has been described as an example. However, the moving speed of the moving object is divided into stages, and the size of the collision area of the moving object used for collision determination with other objects such as the target object is changed according to this stage, or the moving object is changed to the target object, etc. You may make it change the collision effect at the time of colliding with other objects. In this way, the size of the collision area of the moving object and the collision effect of the moving object can be set more finely.

(変形例1)
上記第1実施形態では、移動オブジェクトの移動速度が一様である場合を例にとり説明した。しかしながら、移動オブジェクトの移動に、運動の法則などの物理法則を適用することで(詳細には、移動オブジェクトに運動方程式を適用することで)、現実空間同様、移動オブジェクトの移動速度を時間経過とともに変化(減速)させるようにしてもよい。この場合、移動オブジェクトに適用する運動方程式を開発者自らが準備して移動オブジェクトに適用するようにしてもよいし、前述したUnityに実装されている機能を用いて、移動オブジェクトに運動方程式を適用するようにしてもよい。
(Modification 1)
In the first embodiment, the case where the moving speed of the moving object is uniform has been described as an example. However, by applying physical laws such as the law of motion to the movement of moving objects (more specifically, by applying an equation of motion to moving objects), the moving speed of moving objects over time is the same as in real space. You may make it change (decelerate). In this case, the equation of motion to be applied to the moving object may be prepared by the developer himself and applied to the moving object, or the equation of motion is applied to the moving object by using the function implemented in the above-mentioned Unity. You may make it do.

例えば、投げられた手榴弾オブジェクト500に空気抵抗による減速を再現させるため、手榴弾オブジェクト500の速度(速度ベクトル)と逆方向に空気抵抗Rを適用するようにしてもよい。空気抵抗Rは、例えば、R=kvやR=kvなどで表現できる。なお、kは比例定数であり、vは手榴弾オブジェクト500の移動速度である。 For example, the air resistance R may be applied in a direction opposite to the speed (speed vector) of the grenade object 500 in order to cause the thrown grenade object 500 to reproduce deceleration due to air resistance. The air resistance R can be expressed by, for example, R = kv, R = kv 2 or the like. Note that k is a proportional constant, and v is the moving speed of the grenade object 500.

変形例1のように、移動オブジェクトの移動に物理法則を適用し、移動オブジェクトの移動速度を変動させる場合、図14で説明したコリジョン制御処理のフローチャートについては、図20に示すフローチャートのように変形し、図15で説明したコリジョン制御処理のフローチャートについては、図21に示すフローチャートのように変形すればよい。   When the physical law is applied to the movement of the moving object and the moving speed of the moving object is changed as in the first modification, the collision control processing flowchart illustrated in FIG. 14 is modified as in the flowchart illustrated in FIG. However, the collision control process described with reference to FIG. 15 may be modified as shown in the flowchart of FIG.

図20に示すフローチャートの図14に示すフローチャートとの相違点は、ステップS20が追加されている点である。図20に示すフローチャートでは、プロセッサ10(オブジェクト制御モジュール224)は、ステップS21において、手榴弾オブジェクト500の爆発タイミングでないと判定されている間(ステップS21でNoの間)、定期的に移動オブジェクトの速度vに物理法則を適用し、移動オブジェクトの速度vを更新(減速)する。   The difference between the flowchart shown in FIG. 20 and the flowchart shown in FIG. 14 is that step S20 is added. In the flowchart shown in FIG. 20, the processor 10 (object control module 224) periodically determines the speed of the moving object while it is determined in step S21 that it is not the explosion timing of the grenade object 500 (No in step S21). Apply physical laws to v and update (decelerate) the velocity v of the moving object.

また、図21に示すフローチャートの図15に示すフローチャートとの相違点は、ステップS30が追加されている点である。図21に示すフローチャートでは、プロセッサ10(オブジェクト制御モジュール224)は、ステップS30において、コリジョンエリアCBとコリジョンエリアCCとの衝突/非衝突が決定(確定)されるまでの間、定期的に移動オブジェクトの速度vに物理法則を適用し、移動オブジェクトの速度vを更新(減速)する。   21 is different from the flowchart shown in FIG. 15 in that step S30 is added. In the flowchart shown in FIG. 21, the processor 10 (object control module 224) periodically moves the moving object until the collision / non-collision between the collision area CB and the collision area CC is determined (confirmed) in step S30. The physical law is applied to the velocity v of the object to update (decelerate) the velocity v of the moving object.

このように、物理法則を加味して移動オブジェクトの移動速度を更新すれば、移動オブジェクトの移動にリアリティを持たせられ、爆風の影響が及ぶ範囲や敵キャラクタ600に与える影響のリアリティを向上できるので、ユーザ190の仮想空間への没入感を向上させることが可能となる。   Thus, if the moving speed of the moving object is updated in consideration of the laws of physics, the movement of the moving object can be given reality, and the range affected by the blast and the reality of the influence on the enemy character 600 can be improved. It is possible to improve the user 190's feeling of immersion in the virtual space.

(第2実施形態)
上記第1実施形態では、移動オブジェクトが手榴弾オブジェクト500、対象オブジェクトが敵キャラクタ600であり、手榴弾オブジェクト500を敵キャラクタ600に投げることで、敵キャラクタ600に影響を与えるゲームを想定した例について説明した。但し、本開示の適用範囲はこれに限定されず、種々のゲームに適用できる。第2実施形態では、本開示を野球ゲームに適用した場合について説明する。但し、第1実施形態と同様の内容については、説明を繰り返さない。つまり、第2実施形態では、主として、第1実施形態との差異について説明する。
(Second Embodiment)
In the first embodiment, an example has been described in which a moving object is a grenade object 500, a target object is an enemy character 600, and a game that affects the enemy character 600 by throwing the grenade object 500 to the enemy character 600 has been described. . However, the scope of application of the present disclosure is not limited to this, and can be applied to various games. In the second embodiment, a case where the present disclosure is applied to a baseball game will be described. However, the description similar to that of the first embodiment will not be repeated. That is, in the second embodiment, differences from the first embodiment will be mainly described.

図22および図23を参照しながら、ユーザ190の状態と、仮想空間2内に配置された各種オブジェクトとの関係を説明する。図22(A)は、HMD装置110、及びコントローラ160L、160Rを装着したユーザ190の一例を示す図である。図22(B)は、図22(A)に示す状態における、仮想空間2内に配置された仮想カメラ1、左手オブジェクト400L、右手オブジェクト400R、ボールオブジェクト700、及び打者キャラクタ800の一例を示す図である。図23は、図22(B)に示す仮想空間2内を仮想カメラ1の視界領域23で撮影した(表した)視界画像Mの一例を示す図である。なお、図23に描かれている捕手キャラクタ900は、図示の関係上、図22(B)では描いていない。また、以下の図面では、説明の関係上、図22(B)に示すように、手オブジェクト400を単なる円で表す場合がある。   The relationship between the state of the user 190 and the various objects arranged in the virtual space 2 will be described with reference to FIGS. FIG. 22A is a diagram illustrating an example of the user 190 wearing the HMD device 110 and the controllers 160L and 160R. 22B shows an example of the virtual camera 1, the left hand object 400L, the right hand object 400R, the ball object 700, and the batter character 800 arranged in the virtual space 2 in the state shown in FIG. It is. FIG. 23 is a diagram illustrating an example of a visual field image M that is captured (represented) by the visual field region 23 of the virtual camera 1 in the virtual space 2 illustrated in FIG. Note that the catcher character 900 illustrated in FIG. 23 is not illustrated in FIG. In the following drawings, the hand object 400 may be represented by a simple circle as shown in FIG.

第2実施形態では、ボールオブジェクト700は、手オブジェクト400によって操作される移動オブジェクトである。ボールオブジェクト700に対する手オブジェクト400による操作としては、ボールオブジェクト700を対象オブジェクトである打者キャラクタ800に投げるなどが挙げられるが、これに限定されるものではない。また第2実施形態では、ボールオブジェクト700にはコリジョンエリアCDが設定され、打者キャラクタ800が所持する対象オブジェクトであるバットオブジェクト810には、コリジョンエリアCEが設定され、
打者キャラクタ800にはコリジョンエリアCFが設定されている。
In the second embodiment, the ball object 700 is a moving object operated by the hand object 400. Examples of the operation by the hand object 400 for the ball object 700 include throwing the ball object 700 to the batter character 800 that is the target object, but are not limited thereto. In the second embodiment, a collision area CD is set for the ball object 700, and a collision area CE is set for the bat object 810 that is a target object possessed by the batter character 800.
A collision area CF is set for the batter character 800.

第2実施形態でも、ユーザ190が、手にコントローラ160が装着された状態で物を投げるような動作を行うことで、手オブジェクト400に、保持中のボールオブジェクト700を捕手キャラクタ900に向かって投げさせる。そして、投げられたボールオブジェクト700のコリジョンエリアCDとバットオブジェクト810のコリジョンエリアCE又は打者キャラクタ800のコリジョンエリアCFとのコリジョン判定(当たり判定)結果に応じて、ゲームが進行する。   Also in the second embodiment, the user 190 performs an action of throwing an object with the controller 160 attached to the hand, so that the held ball object 700 is thrown toward the catcher character 900 on the hand object 400. Let Then, the game proceeds according to the result of the collision determination (winning determination) between the collision area CD of the thrown ball object 700 and the collision area CE of the bat object 810 or the collision area CF of the batter character 800.

なお、手オブジェクト400によるボールオブジェクト700の投球は、どのように実現しても構わない。例えば、ユーザ190が、手にコントローラ160が装着された状態で物を投げるような動作を行っている最中に、ボタン36,37又はアナログスティック38を操作(押下)することで、オブジェクト制御モジュール224が、コントローラ160の動きに基づく速度をボールオブジェクト700に与え、当該速度に基づいてボールオブジェクト700を移動させることで実現できる。   Note that the pitching of the ball object 700 by the hand object 400 may be realized in any way. For example, the object control module is operated by operating (pressing) the buttons 36 and 37 or the analog stick 38 while the user 190 is performing an operation of throwing an object with the controller 160 attached to the hand. 224 can be realized by giving a speed based on the movement of the controller 160 to the ball object 700 and moving the ball object 700 based on the speed.

次に、図24〜図29を参照しながら、第2実施形態に係る情報処理方法、具体的には、コリジョンエリア及びコリジョン効果の制御手法について説明する。図24〜図25は、第2実施形態のコリジョン制御処理の一例を示すフローチャートである。図24〜図25に示すコリジョン制御処理は、図10に示すフローチャートのステップS7〜S8の詳細処理の一例に該当する。図26(A)は、ユーザ190が物を投げる動作を行っている状態の一例を示す図であり、図26(B)は、図26(A)が示す状態において、ボールオブジェクト700の速度が閾値以上の場合のコリジョンエリアCDの制御例を示す図である。図27(A)は、ユーザ190が物を投げる動作を行っている状態の一例を示す図であり、図27(B)は、図27(A)が示す状態において、ボールオブジェクト700の速度が閾値未満の場合のコリジョンエリアCDの制御例を示す図である。図28(A)は、ユーザ190が物を投げる動作を行っている状態の一例を示す図であり、図28(B)は、図28(A)が示す状態において、ボールオブジェクト700の速度が閾値以上の場合のコリジョン効果の制御例を示す図である。図29(A)は、ユーザ190が物を投げる動作を行っている状態の一例を示す図であり、図29(B)は、図29(A)が示す状態において、ボールオブジェクト700の速度が閾値未満の場合のコリジョン効果の制御例を示す図である。   Next, an information processing method according to the second embodiment, specifically, a collision area and a collision effect control method will be described with reference to FIGS. 24 to 25 are flowcharts illustrating an example of the collision control process according to the second embodiment. The collision control process shown in FIGS. 24 to 25 corresponds to an example of the detailed process of steps S7 to S8 in the flowchart shown in FIG. FIG. 26A is a diagram illustrating an example of a state in which the user 190 is performing an action of throwing an object. FIG. 26B is a diagram illustrating the speed of the ball object 700 in the state illustrated in FIG. It is a figure which shows the example of control of the collision area CD in the case of being more than a threshold value. FIG. 27A is a diagram illustrating an example of a state in which the user 190 is performing an action of throwing an object, and FIG. 27B is a diagram illustrating the speed of the ball object 700 in the state illustrated in FIG. It is a figure which shows the example of control of the collision area CD in the case of being less than a threshold value. FIG. 28A is a diagram illustrating an example of a state in which the user 190 is performing an action of throwing an object, and FIG. 28B is a diagram illustrating the speed of the ball object 700 in the state illustrated in FIG. It is a figure which shows the example of control of the collision effect in the case of being more than a threshold value. FIG. 29A is a diagram illustrating an example of a state in which the user 190 is performing an action of throwing an object, and FIG. 29B is a diagram illustrating the speed of the ball object 700 in the state illustrated in FIG. It is a figure which shows the example of control of the collision effect in the case of less than a threshold value.

図24に示すように、まず、ステップS111において、プロセッサ10(オブジェクト制御モジュール224)は、手オブジェクト400によりボールオブジェクト700が投げられたか否かを判定する。プロセッサ10(オブジェクト制御モジュール224)は、例えば、ユーザ190が、ボタン36,37又はアナログスティック38を操作(押下)した場合、ボールオブジェクト700が投げられたと判定し、操作(押下)していない場合、ボールオブジェクト700が投げられていないと判定する。なお、ステップS111の処理は、ボールオブジェクト700が投げられていないと判定されている間(ステップS111でNo)、定期的に行われる。   As shown in FIG. 24, first, in step S111, the processor 10 (object control module 224) determines whether or not the ball object 700 is thrown by the hand object 400. For example, when the user 190 operates (presses) the buttons 36 and 37 or the analog stick 38, the processor 10 (the object control module 224) determines that the ball object 700 has been thrown and does not operate (press) It is determined that the ball object 700 is not thrown. Note that the process of step S111 is periodically performed while it is determined that the ball object 700 is not thrown (No in step S111).

ボールオブジェクト700が投げられたと判定された場合(ステップS111でYes)、ステップS112において、プロセッサ10(オブジェクト制御モジュール224)は、投げられたボールオブジェクト700に速度v(速度ベクトル)を設定し、設定した速度vでボールオブジェクト700を移動させる。なお、ボールオブジェクト700の速度vの設定手法は、第1実施形態で説明した手榴弾オブジェクト500の速度vの設定手法と同様の手法を採用できる。   If it is determined that the ball object 700 has been thrown (Yes in step S111), in step S112, the processor 10 (object control module 224) sets the velocity v (velocity vector) for the thrown ball object 700 and sets it. The ball object 700 is moved at the speed v. Note that the method for setting the velocity v of the ball object 700 can be the same as the method for setting the velocity v of the grenade object 500 described in the first embodiment.

ステップS113において、プロセッサ10(オブジェクト制御モジュール224)は、投げられたボールオブジェクト700の速度vが閾値となる所定速度vth以上かどうかを判定する。   In step S113, the processor 10 (object control module 224) determines whether or not the speed v of the thrown ball object 700 is equal to or higher than a predetermined speed vth that is a threshold value.

ボールオブジェクト700の速度vが所定速度vth以上(v≧vth)である場合(ステップS113でYes)、図26に示すように、プロセッサ10(コリジョン制御モジュール225)は、ステップS114において、ボールオブジェクト700のコリジョンエリアCDの大きさの直径をR‘1(R‘1<R‘)に特定(設定)する。   When the velocity v of the ball object 700 is equal to or higher than the predetermined velocity vth (v ≧ vth) (Yes in Step S113), as shown in FIG. 26, the processor 10 (collision control module 225), in Step S114, The diameter of the size of the collision area CD is specified (set) as R′1 (R′1 <R ′).

一方、ボールオブジェクト700の速度vが所定速度vth未満(v<vth)である場合(ステップS113でNo)、図27に示すように、プロセッサ10(コリジョン制御モジュール225)は、ステップS115において、ボールオブジェクト700のコリジョンエリアCDの大きさの直径をR‘に特定(設定)する。なお「R‘」は、コリジョンエリアCDのデフォルトの大きさの直径である。   On the other hand, when the velocity v of the ball object 700 is less than the predetermined velocity vth (v <vth) (No in step S113), as shown in FIG. 27, the processor 10 (collision control module 225) The diameter of the size of the collision area CD of the object 700 is specified (set) as R ′. “R ′” is the diameter of the default size of the collision area CD.

実際の野球の場合、一般的に、バッターは、球のスピードが速いほど打ちにくい。このため本実施形態では、ボールオブジェクト700の速度vが遅い場合よりも速い場合の方が、コリジョンエリアCDの大きさが小さくなるように制御し、バットオブジェクト810のコリジョンエリアCEと衝突しにくくする。これにより、打者キャラクタ800にボールオブジェクト700を打たせにくくすることができる。   In actual baseball, batters are generally harder to hit as the speed of the ball increases. For this reason, in the present embodiment, when the speed v of the ball object 700 is higher than when the speed is low, the size of the collision area CD is controlled so as to make it less likely to collide with the collision area CE of the bat object 810. . Thereby, it is possible to make it difficult for the batter character 800 to hit the ball object 700.

続いて、ステップS116において、プロセッサ10(コリジョン判定モジュール226)は、ボールオブジェクト700のコリジョンエリアCDとバットオブジェクト810のコリジョンエリアCEとが衝突(接触)したか否かを判定する。なお、打者キャラクタ800が他のユーザにより操作される場合、当該他のユーザは、コリジョンエリアCDとコリジョンエリアCEとを衝突させるよう、打者キャラクタ800(バットオブジェクト810)を操作する。また、打者キャラクタ800がNPC(Non Player Character)の場合、コリジョンエリアCDとコリジョンエリアCEとを衝突させるよう、打者キャラクタ800(バットオブジェクト810)が動作制御される。   Subsequently, in step S116, the processor 10 (collision determination module 226) determines whether or not the collision area CD of the ball object 700 and the collision area CE of the bat object 810 collide (contact). When the batter character 800 is operated by another user, the other user operates the batter character 800 (bat object 810) so that the collision area CD and the collision area CE collide with each other. When the batter character 800 is an NPC (Non Player Character), the batter character 800 (bat object 810) is controlled to collide with the collision area CD and the collision area CE.

プロセッサ10(コリジョン判定モジュール226)が、コリジョンエリアCDとコリジョンエリアCEとが衝突していると判定した場合(ステップS116でYes)、ステップS117において、プロセッサ10(オブジェクト制御モジュール224)は、バットオブジェクト810でボールオブジェクト700を打ち返させる。   When the processor 10 (collision determination module 226) determines that the collision area CD and the collision area CE have collided (Yes in step S116), in step S117, the processor 10 (object control module 224) At 810, the ball object 700 is hit back.

一方、プロセッサ10(コリジョン判定モジュール226)が、コリジョンエリアCDとコリジョンエリアCEとが衝突していないと判定した場合(ステップS116でNo)、図24および図25の「C」を経由して、図25のステップS118に進む。ステップS118において、プロセッサ10(コリジョン判定モジュール226)は、ボールオブジェクト700のコリジョンエリアCDと打者キャラクタ800のコリジョンエリアCFとが衝突(接触)しているか否かを判定する。   On the other hand, when the processor 10 (collision determination module 226) determines that the collision area CD and the collision area CE do not collide (No in step S116), via “C” in FIG. 24 and FIG. The process proceeds to step S118 in FIG. In step S118, the processor 10 (collision determination module 226) determines whether or not the collision area CD of the ball object 700 and the collision area CF of the batter character 800 collide (contact).

プロセッサ10(コリジョン判定モジュール226)が、コリジョンエリアCDとコリジョンエリアCFとが衝突していると判定した場合(ステップS118でYes)、ステップS119において、プロセッサ10(オブジェクト制御モジュール224)は、投げられたボールオブジェクト700の速度vが閾値となる所定速度vth以上かどうかを判定する。   When the processor 10 (collision determination module 226) determines that the collision area CD and the collision area CF collide (Yes in step S118), the processor 10 (object control module 224) is thrown in step S119. It is determined whether the velocity v of the ball object 700 is equal to or higher than a predetermined velocity vth that is a threshold value.

ボールオブジェクト700の速度vが所定速度vth以上(v≧vth)である場合(ステップS119でYes)、ステップS120において、プロセッサ10(コリジョン制御モジュール225)は、打者キャラクタ800に与える影響を第1の影響に設定する。   When the velocity v of the ball object 700 is equal to or higher than the predetermined velocity vth (v ≧ vth) (Yes in step S119), in step S120, the processor 10 (collision control module 225) affects the batter character 800 with the first effect. Set to impact.

一方、ボールオブジェクト700の速度vが所定速度vth未満(v<vth)である場合(ステップS119でNo)、ステップS121において、プロセッサ10(コリジョン制御モジュール225)は、打者キャラクタ800に与える影響を第2の影響に設定する。   On the other hand, when the velocity v of the ball object 700 is less than the predetermined velocity vth (v <vth) (No in step S119), in step S121, the processor 10 (collision control module 225) determines the effect on the batter character 800. Set to 2 impact.

ここで、ステップS120で設定した第1の影響やステップS121で設定した第2の影響は、いずれも打者キャラクタ800に痛がらせる演出を行わせるものであるが、第2の影響よりも第1の影響の方が痛がり度合いが大きいものとする。つまり本実施形態では、ボールオブジェクト700が打者キャラクタ800にぶつかるデッドボールの場合、ボールオブジェクト700の速度vが遅い場合よりも速い場合の方が、打者キャラクタ800を痛がらせる(図28、図29参照)。このため本実施形態では、打者キャラクタ800の反応にリアリティを持たせることが可能となり、ユーザ190に対する仮想空間への没入感を高めることが可能となる。但し、第1の影響や第2の影響は、上述の例に限定されるものではない。   Here, both the first influence set in step S120 and the second influence set in step S121 cause the batter character 800 to be hurt, but the first influence is more than the second influence. It is assumed that the degree of pain is greater in the influence of. That is, in this embodiment, in the case of a dead ball where the ball object 700 hits the batter character 800, the batter character 800 is more painful when the ball object 700 has a higher speed v than when the ball object 700 has a low speed v (FIGS. 28 and 29). reference). For this reason, in this embodiment, it becomes possible to give reality to the reaction of the batter character 800, and it becomes possible to increase the sense of immersion in the virtual space for the user 190. However, the first influence and the second influence are not limited to the above example.

続いて、ステップS122において、プロセッサ10(コリジョン判定モジュール226)は、設定した影響を打者キャラクタ800に与える。   Subsequently, in step S122, the processor 10 (collision determination module 226) gives the set influence to the batter character 800.

このように第2実施形態においても、移動オブジェクトの移動速度に応じて、対象オブジェクトなどの他のオブジェクトとのコリジョン判定に用いられる移動オブジェクトのコリジョンエリアの大きさを変えたり、移動オブジェクトが対象オブジェクトなどの他のオブジェクトと衝突した場合のコリジョン効果を変えたりする。このため第2実施形態においても、ユーザ190の仮想空間への没入感を向上させることが可能となる。   As described above, also in the second embodiment, the size of the collision area of the moving object used for collision determination with other objects such as the target object is changed according to the moving speed of the moving object, or the moving object is the target object. Change the collision effect when colliding with other objects. For this reason, also in 2nd Embodiment, it becomes possible to improve the immersion feeling of the user 190 to virtual space.

また第2実施形態においても、第1実施形態で説明した変形や変形例1を適用できる。なお、第2実施形態において変形例1を適用する場合、コリジョンエリアCDとコリジョンエリアCE又はコリジョンエリアCFとの衝突/非衝突が決定(確定)されるまでの間、定期的に移動オブジェクト(ボールオブジェクト700)の速度vに物理法則を適用し、移動オブジェクト(ボールオブジェクト700)の速度vを更新(減速)するようにすればよい。例えば、図24および図25に示すフローチャートにおいて、コリジョンエリアCDとコリジョンエリアCE又はコリジョンエリアCFとの衝突/非衝突が決定(確定)されるまでの間、ステップS112〜ステップS115の処理を定期的に繰り返す(但し、2回目以降のステップS112では、前回の速度vに物理法則を適用して速度vを更新するものとする)。このようにすれば、速度vの速度変化に連動して、コリジョンエリアCDの大きさを変動でき、移動オブジェクト(ボールオブジェクト700)の打ちにくさや打ちやすさのリアリティを向上できるので、ユーザ190の仮想空間への没入感を向上させることが可能となる。   Also in the second embodiment, the modifications described in the first embodiment and the first modification can be applied. Note that when the first modification is applied to the second embodiment, the moving object (ball) is periodically used until the collision / non-collision between the collision area CD and the collision area CE or the collision area CF is determined (confirmed). The physical law may be applied to the speed v of the object 700) to update (decelerate) the speed v of the moving object (ball object 700). For example, in the flowcharts shown in FIGS. 24 and 25, the processes in steps S112 to S115 are periodically performed until the collision / non-collision between the collision area CD and the collision area CE or the collision area CF is determined (confirmed). (However, in the second and subsequent steps S112, the speed v is updated by applying the physical law to the previous speed v). In this way, the size of the collision area CD can be changed in conjunction with the speed change of the speed v, and the reality of the difficulty of hitting the moving object (ball object 700) and the ease of hitting can be improved. It becomes possible to improve the feeling of immersion in the virtual space.

(変形例2)
上記第2実施形態において、移動オブジェクトに対して速度だけでなく回転を与えて移動させ、この移動させた移動オブジェクトに、変形例1で説明した物理法則を適用するようにしてもよい。このようにすれば、移動オブジェクトの軌道を変化させながら移動させること、即ち、変化を伴う動きを行う場合の移動オブジェクトの移動軌跡の制御が可能となり、移動オブジェクトの移動によりリアリティを持たせることができる。
(Modification 2)
In the second embodiment, not only the speed but also the rotation may be given to the moving object to be moved, and the physical law described in the first modification may be applied to the moved moving object. In this way, it is possible to control the movement trajectory of the moving object when moving the moving object while changing the trajectory of the moving object, that is, to move the moving object, and to provide reality by moving the moving object. it can.

この場合、移動オブジェクトに速度を与えるためのユーザの手の動き、即ち、移動オブジェクトに速度を与えるために用いられたコントローラ160における姿勢の時系列的な変化に基づいて、移動オブジェクトに回転を与えるようにすればよい。例えば、プロセッサ10(オブジェクト制御モジュール224)は、HMDセンサ120により検出された情報を取得する毎に、当該情報に基づいてコントローラ160の姿勢を特定し、特定した姿勢情報に基づいて、コントローラ160の姿勢変化を特定し、特定したコントローラ160の姿勢変化に基づいて、ボールオブジェクト700に回転を与えるようにすればよい。ボールオブジェクト700に与えられる回転は、コントローラ160の姿勢変化に基づく回転であればどのようなものでもよい。例えば、コントローラ160の姿勢変化方向を回転方向とする回転であってもよい。また例えば、図30に示すように、コントローラ160の姿勢変化パターン毎に、該当する球種(詳細には、コントローラ160の姿勢変化パターンを手の動きとみなした場合に想定される球種)、及び当該球種の回転パターン定義した情報(テーブル)をメモリモジュール240に準備しておき、プロセッサ10(オブジェクト制御モジュール224)は、特定したコントローラ160の姿勢変化パターンに対応付けられた球種の回転パターンをボールオブジェクト700に与えるようにしてもよい。   In this case, based on the movement of the user's hand for giving speed to the moving object, that is, based on the time-series change of the posture in the controller 160 used for giving speed to the moving object, the moving object is rotated. What should I do? For example, each time the processor 10 (the object control module 224) acquires information detected by the HMD sensor 120, the processor 10 identifies the posture of the controller 160 based on the information, and based on the identified posture information, The change in posture may be specified, and the ball object 700 may be rotated based on the specified change in posture of the controller 160. The rotation given to the ball object 700 may be any rotation as long as it is based on the posture change of the controller 160. For example, rotation with the orientation change direction of the controller 160 as the rotation direction may be used. Also, for example, as shown in FIG. 30, for each posture change pattern of the controller 160, the corresponding ball type (specifically, a ball type assumed when the posture change pattern of the controller 160 is regarded as a hand movement), And the information (table) defining the rotation pattern of the ball type is prepared in the memory module 240, and the processor 10 (the object control module 224) rotates the ball type associated with the identified posture change pattern of the controller 160. A pattern may be given to the ball object 700.

また、プロセッサ10(コリジョン制御モジュール225)は、ユーザの手の姿勢(詳細には、コントローラ160)の時系列的な変化も考慮して、コリジョンエリアを制御するようにしてもよい。例えば、プロセッサ10(オブジェクト制御モジュール224)が特定したコントローラ160の姿勢変化パターンが右下方向への回転であり、プロセッサ10(オブジェクト制御モジュール224)は、図31の矢印780が示すように、ボールオブジェクト700が右下に変化するような移動軌跡に制御したとする。この場合、プロセッサ10(コリジョン制御モジュール225)は、図31に示すように、ボールオブジェクト700のコリジョンエリアCDの形状を右下方向(変化方向)が長辺となる楕円形状に特定(決定)するようにしてもよい。なお、図31に示す例では、第2実施形態で説明したコリジョンエリアCDの直径に変えて、楕円形状のコリジョンエリアCDの短辺の大きさをボールオブジェクト700の速度に基づいて特定(決定)することを想定しているが、これに限定されるものではない。   Further, the processor 10 (collision control module 225) may control the collision area in consideration of time-series changes in the posture of the user's hand (specifically, the controller 160). For example, the posture change pattern of the controller 160 specified by the processor 10 (the object control module 224) is a rotation to the lower right direction, and the processor 10 (the object control module 224) has a ball as shown by an arrow 780 in FIG. It is assumed that the object 700 is controlled so as to move to the lower right. In this case, as shown in FIG. 31, the processor 10 (collision control module 225) specifies (determines) the shape of the collision area CD of the ball object 700 as an elliptical shape whose long side is the lower right direction (change direction). You may do it. In the example shown in FIG. 31, instead of the diameter of the collision area CD described in the second embodiment, the size of the short side of the elliptical collision area CD is specified (determined) based on the speed of the ball object 700. However, the present invention is not limited to this.

このようにすれば、ボールオブジェクト700の移動軌跡に合わせてバットオブジェクト810を操作しないと、ボールオブジェクト700のコリジョンエリアCDとバットオブジェクト810のコリジョンエリアCEとを衝突させにくくなるので、移動オブジェクト(ボールオブジェクト700)の打ちにくさや打ちやすさのリアリティをより向上でき、ユーザ190の仮想空間への没入感を向上させることが可能となる。   In this way, if the bat object 810 is not operated in accordance with the movement trajectory of the ball object 700, the collision area CD of the ball object 700 and the collision area CE of the bat object 810 are less likely to collide. The reality of the difficulty of hitting and the ease of hitting of the object 700) can be further improved, and the feeling of immersion in the virtual space of the user 190 can be improved.

なお変形例2では、ボールオブジェクト700の速度でコリジョンエリアCDの大きさ、ユーザの手の姿勢(コントローラ160)の時系列的な変化でコリジョンエリアCDの形状を特定する例について説明したが、これに限定されるものではない。例えば、ボールオブジェクト700の速度でコリジョンエリアCDの形状を特定したり、ユーザの手の姿勢(コントローラ160)の時系列的な変化でコリジョンエリアCDの大きさを特定したり、ボールオブジェクト700の速度及びユーザの手の姿勢(コントローラ160)の時系列的な変化の双方を考慮して、コリジョンエリアCDの形状及び大きさを特定したりするようにしてもよい。また、ユーザの手の姿勢(コントローラ160)の時系列的な変化に変えて、ボールオブジェクト700の移動軌跡を用いて、上述の制御を行うようにしてもよい。   In the second modification, the example in which the size of the collision area CD is determined by the speed of the ball object 700 and the shape of the collision area CD is specified by time-series changes in the posture of the user's hand (controller 160) has been described. It is not limited to. For example, the shape of the collision area CD is specified by the speed of the ball object 700, the size of the collision area CD is specified by a time-series change of the user's hand posture (controller 160), and the speed of the ball object 700 is determined. In addition, the shape and size of the collision area CD may be specified in consideration of both time-series changes in the posture of the user's hand (controller 160). Further, the above-described control may be performed using the movement trajectory of the ball object 700 instead of the time-series change of the user's hand posture (controller 160).

また、プロセッサ10(コリジョン制御モジュール225)は、ユーザの手の姿勢(詳細には、コントローラ160)の時系列的な変化も考慮して、コリジョン効果を制御するようにしてもよい。例えば、プロセッサ10(オブジェクト制御モジュール224)が特定したコントローラ160の姿勢変化パターンが左方向への回転であり、プロセッサ10(オブジェクト制御モジュール224)は、図32の矢印791が示すように、ボールオブジェクト700が左に変化するような移動軌跡に制御したとする。この結果、ボールオブジェクト700のコリジョンエリアCDと打者キャラクタ800のコリジョンエリアCFとが衝突したとする。この場合、プロセッサ10(コリジョン制御モジュール225)は、ユーザの手の姿勢の時系列的な変化を考慮しない場合のボールオブジェクト700の移動軌跡(図32の矢印792)と、ユーザの手の姿勢の時系列的な変化を考慮した場合のボールオブジェクト700の移動軌跡(図32の矢印791)と、の類似度も考慮して、打者キャラクタ800に与える影響を設定するようにいてもよい。   Further, the processor 10 (collision control module 225) may control the collision effect in consideration of time-series changes in the posture of the user's hand (specifically, the controller 160). For example, the posture change pattern of the controller 160 specified by the processor 10 (the object control module 224) is the rotation to the left, and the processor 10 (the object control module 224) indicates that the ball object as shown by the arrow 791 in FIG. Assume that control is performed so that 700 changes to the left. As a result, it is assumed that the collision area CD of the ball object 700 and the collision area CF of the batter character 800 collide. In this case, the processor 10 (collision control module 225) determines the movement trajectory of the ball object 700 (arrow 792 in FIG. 32) and the posture of the user's hand when the time-series change in the posture of the user's hand is not considered. The influence on the batter character 800 may be set in consideration of the similarity between the movement trajectory of the ball object 700 (arrow 791 in FIG. 32) in consideration of time-series changes.

一般的に人間は、同一の速度でものをぶつけられる場合、ものがぶつかることが予測できている場合よりもものがぶつかることが予測できていない場合の方が、痛みを感じる。このため、上述の類似度が低いほど、打者キャラクタ800にボールオブジェクト700がぶつかることが予測しにくい(ボールオブジェクト700の変化の度合いが大きい)と考え、プロセッサ10(コリジョン制御モジュール225)は、打者キャラクタ800に与える影響を大きく設定するようにいてもよい。上述したような制御を行うことで、敵キャラクタ600に与える影響にリアリティを持たせることが可能となり、ユーザ190に対する仮想空間への没入感を高めることが可能となる。   In general, humans feel more pain when hitting things at the same speed when they are unable to predict things than when they are expected to hit. For this reason, it is considered that the lower the similarity is, the harder it is to predict that the ball object 700 will hit the batter character 800 (the degree of change of the ball object 700 is larger), and the processor 10 (collision control module 225) A large influence on the character 800 may be set. By performing the control as described above, it is possible to give reality to the influence on the enemy character 600, and to increase the sense of immersion in the virtual space for the user 190.

なお変形例2では、設定する影響(打者キャラクタ800の痛がり度合い)をパラメータで設定するようにしてもよい。例えば、ボールオブジェクト700の速度vが所定速度vth以上(v≧vth)である場合、プロセッサ10(コリジョン制御モジュール225)は、打者キャラクタ800に与える影響として、痛がり度合いのパラメータに+1を加算する。一方、ボールオブジェクト700の速度vが所定速度vth未満(v<vth)である場合、プロセッサ10(コリジョン制御モジュール225)は、打者キャラクタ800に与える影響として、痛がり度合いのパラメータを加算しない。また例えば、上述の類似度が所定類似度以下の場合、プロセッサ10(コリジョン制御モジュール225)は、打者キャラクタ800に与える影響として、痛がり度合いのパラメータに+1を加算する。一方、上述の類似度が所定類似度を超える場合、プロセッサ10(コリジョン制御モジュール225)は、打者キャラクタ800に与える影響として、痛がり度合いのパラメータを加算しない。そして、プロセッサ10(コリジョン判定モジュール226)は、最終的な痛がり度合いのパラメータの値を打者キャラクタ800に与え、当該パラメータの値に応じた演出(パラメータの値が大きいほど痛がる演出)を打者キャラクタ800に行わせる。   In the second modification, the influence to be set (the degree of pain of the batter character 800) may be set as a parameter. For example, when the velocity v of the ball object 700 is equal to or higher than a predetermined velocity vth (v ≧ vth), the processor 10 (collision control module 225) adds +1 to the parameter of the pain level as an effect on the batter character 800. . On the other hand, when the speed v of the ball object 700 is less than the predetermined speed vth (v <vth), the processor 10 (collision control module 225) does not add the parameter of the pain level as an effect on the batter character 800. Further, for example, when the above-described similarity is equal to or less than the predetermined similarity, the processor 10 (collision control module 225) adds +1 to the parameter of the pain level as an effect on the batter character 800. On the other hand, when the above-described similarity exceeds the predetermined similarity, the processor 10 (collision control module 225) does not add the pain degree parameter as an effect on the batter character 800. Then, the processor 10 (collision determination module 226) gives the parameter value of the final pain level to the batter character 800, and produces an effect corresponding to the value of the parameter (an effect that causes pain as the parameter value increases). The batter character 800 is made to perform.

上述の各実施形態の説明においては、プレイヤキャラクタからの一人称視点で説明したが、これに限るものではない。例えば、プレイヤキャラクタPCの背後からプレイヤキャラクタと敵キャラクタとを撮影するよう仮想カメラを配置し、この仮想カメラから撮影された画像を視界画像としてもよい。この場合、仮想カメラは、プレイヤキャラクタの移動に追尾して、その背後を撮影する。   In the above description of each embodiment, the first-person viewpoint from the player character has been described, but the present invention is not limited to this. For example, a virtual camera may be arranged so that the player character and the enemy character are photographed from behind the player character PC, and an image photographed from the virtual camera may be used as the view image. In this case, the virtual camera tracks the movement of the player character and shoots behind it.

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

以上、本開示の実施形態について説明をしたが、本発明の技術的範囲が本実施形態の説明によって限定的に解釈されるべきではない。本実施形態は一例であって、特許請求の範囲に記載された発明の範囲内において、様々な実施形態の変更が可能であることが当業者によって理解されるところである。本発明の技術的範囲は特許請求の範囲に記載された発明の範囲及びその均等の範囲に基づいて定められるべきである。   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.

本明細書に開示された主題は、例えば以下のような項目として示される。
(項目1)
ヘッドマウントディスプレイ(例えば、HMD110)を介して仮想空間を提供するためにコンピュータ(例えば、コンピュータ200)で実行される情報処理方法であって、
前記仮想空間(例えば、仮想空間2)を規定するステップ(例えば、図10のステップS1)と、
操作オブジェクト(例えば、手オブジェクト400)と移動オブジェクト(例えば、手榴弾オブジェクト500、ボールオブジェクト700)と対象オブジェクト(例えば、敵キャラクタ600、打者キャラクタ800、バットオブジェクト810)とを前記仮想空間に配置するステップ(例えば、図10のステップS1)と、
ユーザ(例えば、ユーザ190)の動きに応じて、前記操作オブジェクトを動作させるステップ(例えば、図10のステップS7)と、
前記操作オブジェクトの動作に基づいて、前記移動オブジェクトを動かすステップ(例えば、図10のステップS8)と、
前記移動オブジェクトの早さに関する情報(例えば、速度)に基づいて、前記移動オブジェクトが前記対象オブジェクトに与える影響を特定するステップ(例えば、図15、図21のステップS33、S34、図25のステップS120、S121)と、
前記移動オブジェクトと前記対象オブジェクトとが第1の位置関係にある場合(例えば、コリジョンエリアCBとコリジョンエリアCCとが衝突している場合、コリジョンエリアCDとコリジョンエリアCFとが衝突している場合)に、前記対象オブジェクトに前記影響を与えるステップ(例えば、図15、図21のステップS35、図25のステップS122)と、
を含む情報処理方法。
本項目の情報処理方法では、移動オブジェクトの移動速度に応じて、移動オブジェクトが対象オブジェクトと衝突した場合のコリジョン効果が変化するので、ユーザの仮想体験を改善し得る。
(項目2)
前記移動オブジェクトを動かすステップでは、更に、物理法則に基づいて、前記移動オブジェクトを動かし(例えば、図20のステップS20、図21のステップS30)、
前記影響を特定するステップでは、更に、前記物理法則に基づいて、前記影響を特定する(例えば、図21のステップS33、S34)項目1に記載の情報処理方法。
本項目の情報処理方法では、移動オブジェクトの移動にリアリティを持たせられ、対象オブジェクトに与える影響のリアリティを向上できるので、ユーザの仮想体験を改善し得る。
(項目3)
前記影響を特定するステップでは、前記移動オブジェクトと前記対象オブジェクトとが前記第1の位置関係にある場合における前記移動オブジェクトの早さに関する情報に基づいて、前記影響を特定する(例えば、図21のステップS33、S34)項目2に記載の情報処理方法。
本項目の情報処理方法では、移動オブジェクトの移動にリアリティを持たせられ、対象オブジェクトに与える影響のリアリティを向上できるので、ユーザの仮想体験を改善し得る。
(項目4)
前記ユーザの動きは、前記ユーザの身体の一部(例えば、ユーザ190の手)の動きであり、
前記移動オブジェクトを動かすステップでは、更に、前記身体の一部の姿勢の時系列的な変化に基づいて、前記移動オブジェクトの移動軌跡(例えば、図32の矢印791が示すボールオブジェクト700の移動軌跡)を制御し、
前記影響を特定するステップでは、前記身体の一部の姿勢の時系列的な変化を考慮しない場合の前記移動オブジェクトの移動軌跡(例えば、図32の矢印792が示すボールオブジェクト700の移動軌跡)と、前記身体の一部の姿勢の時系列的な変化に基づく前記移動オブジェクトの移動軌跡(例えば、図32の矢印791が示すボールオブジェクト700の移動軌跡)と、の類似度に基づいて、前記影響を特定する項目2又は3に記載の情報処理方法。
本項目の情報処理方法では、移動オブジェクトの移動にリアリティを持たせられ、対象オブジェクトに与える影響のリアリティを向上できるので、ユーザの仮想体験を改善し得る。
(項目5)
前記移動オブジェクトの動きに基づいて、前記移動オブジェクトに関連付けられたコリジョンエリアの形状及び大きさの少なくともいずれかを特定するステップ(例えば、図14、図20のステップS23、S24、図24のステップS114、S115)をさらに含み、
前記影響を与えるステップでは、前記コリジョンエリアと前記対象オブジェクトとが第2の位置関係にある場合(例えば、コリジョンエリアCBとコリジョンエリアCCとが衝突している場合、コリジョンエリアCDとコリジョンエリアCEとが衝突している場合)に、前記対象オブジェクトに前記影響を与える(例えば、図14、図20のステップS27、図24のステップS117)項目1〜4のいずれか1つに記載の情報処理方法。
本項目の情報処理方法では、移動オブジェクトの移動速度に応じて、対象オブジェクトとのコリジョン判定に用いられる移動オブジェクトのコリジョンエリアの大きさが変化するので、ユーザの仮想体験を改善し得る。
(項目6)
前記移動オブジェクトを動かすステップでは、更に、物理法則に基づいて、前記移動オブジェクトを動かし、
前記形状及び大きさの少なくともいずれかを特定するステップでは、更に、前記物理法則に基づいて、前記形状及び大きさの少なくともいずれかを特定する(例えば、0169段落、変形例2)項目5に記載の情報処理方法。
本項目の情報処理方法では、移動オブジェクトの移動にリアリティを持たせられ、移動オブジェクトと対象オブジェクトとの衝突のリアリティを向上できるので、ユーザの仮想体験を改善し得る。
(項目7)
前記形状及び大きさの少なくともいずれかを特定するステップでは、前記移動オブジェクトの早さに関する情報に連動するように、前記形状及び大きさの少なくともいずれかを特定(例えば、0169段落)する項目6に記載の情報処理方法。
本項目の情報処理方法では、移動オブジェクトの移動にリアリティを持たせられ、移動オブジェクトと対象オブジェクトとの衝突のリアリティを向上できるので、ユーザの仮想体験を改善し得る。
(項目8)
前記ユーザの動きは、前記ユーザの身体の一部(例えば、ユーザ190の手)の動きであり、
前記移動オブジェクトを動かすステップでは、更に、前記身体の一部の姿勢の時系列的な変化に基づいて、前記移動オブジェクトの移動軌跡(例えば、図31の矢印780が示すボールオブジェクト700の移動軌跡)を制御し、
前記形状及び大きさの少なくともいずれかを特定するステップでは、前記身体の一部の姿勢の時系列的な変化に基づいて、前記形状及び大きさの少なくともいずれかを特定する(例えば、図31のコリジョンエリアCD)項目7に記載の情報処理方法。
本項目の情報処理方法では、移動オブジェクトの移動にリアリティを持たせられ、移動オブジェクトと対象オブジェクトとの衝突のリアリティを向上できるので、ユーザの仮想体験を改善し得る。
(項目9)
項目1〜8のいずれか1項に記載の方法をコンピュータに実行させるためのプログラム。
(項目10)
ヘッドマウントディスプレイを介して仮想空間を提供するためのコンピュータであって、
前記コンピュータが備えるプロセッサの制御により、
前記仮想空間を規定するステップと、
操作オブジェクトと移動オブジェクトと対象オブジェクトとを前記仮想空間に配置するステップと、
ユーザの動きに応じて、前記操作オブジェクトを動作させるステップと、
前記操作オブジェクトの動作に基づいて、前記移動オブジェクトを動かすステップと、
前記移動オブジェクトの早さに関する情報に基づいて、前記移動オブジェクトが前記対象オブジェクトに与える影響を特定するステップと、
前記移動オブジェクトと前記対象オブジェクトとが第1の位置関係にある場合に、前記対象オブジェクトに前記影響を与えるステップと、
が実行されるコンピュータ。
The subject matter disclosed in this specification is indicated as, for example, the following items.
(Item 1)
An information processing method executed by a computer (eg, computer 200) to provide a virtual space via a head-mounted display (eg, HMD 110),
Defining the virtual space (eg, virtual space 2) (eg, step S1 in FIG. 10);
Arranging an operation object (for example, hand object 400), a moving object (for example, grenade object 500, ball object 700) and a target object (for example, enemy character 600, batter character 800, bat object 810) in the virtual space. (For example, step S1 in FIG. 10);
A step (for example, step S7 in FIG. 10) of operating the operation object in accordance with the movement of the user (for example, the user 190);
Moving the moving object based on the action of the operation object (for example, step S8 in FIG. 10);
Steps for specifying the influence of the moving object on the target object based on information about the speed of the moving object (for example, speed) (for example, steps S33 and S34 in FIGS. 15 and 21 and step S120 in FIG. 25). , S121)
When the moving object and the target object are in the first positional relationship (for example, when the collision area CB and the collision area CC collide, the collision area CD and the collision area CF collide). And the step of affecting the target object (for example, step S35 of FIG. 15, FIG. 21, step S122 of FIG. 25),
An information processing method including:
In the information processing method of this item, since the collision effect when the moving object collides with the target object changes according to the moving speed of the moving object, the virtual experience of the user can be improved.
(Item 2)
In the step of moving the moving object, the moving object is further moved based on a physical law (for example, step S20 in FIG. 20, step S30 in FIG. 21),
In the step of specifying the influence, the information processing method according to item 1 further specifies the influence based on the physical law (for example, steps S33 and S34 in FIG. 21).
In the information processing method of this item, since the reality of the movement of the moving object is given and the reality of the influence on the target object can be improved, the virtual experience of the user can be improved.
(Item 3)
In the step of identifying the influence, the influence is identified based on information about the speed of the moving object when the moving object and the target object are in the first positional relationship (for example, FIG. 21 (Steps S33 and S34) The information processing method according to item 2.
In the information processing method of this item, since the reality of the movement of the moving object is given and the reality of the influence on the target object can be improved, the virtual experience of the user can be improved.
(Item 4)
The movement of the user is a movement of a part of the user's body (eg, the hand of the user 190);
In the step of moving the moving object, the moving trajectory of the moving object (for example, the moving trajectory of the ball object 700 indicated by the arrow 791 in FIG. 32) is further based on the time-series change in the posture of the body part. Control
In the step of identifying the influence, the movement trajectory of the moving object (for example, the movement trajectory of the ball object 700 indicated by the arrow 792 in FIG. 32) when the time-series change in the posture of the part of the body is not considered. Based on the degree of similarity between the moving object's movement trajectory based on a time-series change in the posture of the body part (for example, the movement trajectory of the ball object 700 indicated by the arrow 791 in FIG. 32), 4. The information processing method according to item 2 or 3, which specifies
In the information processing method of this item, since the reality of the movement of the moving object is given and the reality of the influence on the target object can be improved, the virtual experience of the user can be improved.
(Item 5)
Identifying at least one of the shape and size of the collision area associated with the moving object based on the movement of the moving object (for example, steps S23 and S24 in FIGS. 14 and 20, and step S114 in FIG. 24) , S115),
In the step of affecting, when the collision area and the target object are in the second positional relationship (for example, when the collision area CB and the collision area CC collide, the collision area CD and the collision area CE The information processing method according to any one of items 1 to 4 that influences the target object (for example, step S27 in FIG. 14, FIG. 20, step S117 in FIG. 24). .
In the information processing method of this item, the size of the collision area of the moving object used for the collision determination with the target object changes according to the moving speed of the moving object, so that the virtual experience of the user can be improved.
(Item 6)
In the step of moving the moving object, the moving object is further moved based on a physical law,
In the step of specifying at least one of the shape and size, at least one of the shape and size is further specified based on the physical law (for example, paragraph 0169, modification 2). Information processing method.
In the information processing method of this item, since the reality of the movement of the moving object is given and the reality of the collision between the moving object and the target object can be improved, the virtual experience of the user can be improved.
(Item 7)
In the step of specifying at least one of the shape and size, item 6 for specifying at least one of the shape and size (for example, paragraph 0169) so as to be linked to information on the speed of the moving object. The information processing method described.
In the information processing method of this item, since the reality of the movement of the moving object is given and the reality of the collision between the moving object and the target object can be improved, the virtual experience of the user can be improved.
(Item 8)
The movement of the user is a movement of a part of the user's body (eg, the hand of the user 190);
In the step of moving the moving object, the moving trajectory of the moving object (for example, the moving trajectory of the ball object 700 indicated by the arrow 780 in FIG. 31) is further based on the time-series change in the posture of the body part. Control
In the step of specifying at least one of the shape and size, at least one of the shape and size is specified based on a time-series change in the posture of the part of the body (for example, FIG. 31). Collision area CD) Information processing method according to item 7.
In the information processing method of this item, since the reality of the movement of the moving object is given and the reality of the collision between the moving object and the target object can be improved, the virtual experience of the user can be improved.
(Item 9)
A program for causing a computer to execute the method according to any one of items 1 to 8.
(Item 10)
A computer for providing a virtual space via a head mounted display,
By control of a processor included in the computer,
Defining the virtual space;
Arranging an operation object, a moving object, and a target object in the virtual space;
Moving the operation object in response to a user's movement;
Moving the moving object based on the action of the operation object;
Identifying the effect of the moving object on the target object based on information about the speed of the moving object;
Influencing the target object when the moving object and the target object are in a first positional relationship;
The computer on which is run.

1…仮想カメラ、2…仮想空間、5…基準視線、10…プロセッサ、11…メモリ、1
2…ストレージ、13…入出力インターフェース、14…通信インターフェース、15…
バス、19…ネットワーク、21…中心、23…視界領域、24,25…領域、31…フ
レーム、32…天面、33,34,36,37…ボタン、35…赤外線LED、38…ア
ナログスティック、100…HMDシステム、110…HMD装置、112…ディスプレ
イ、114…センサ、116…カメラ、118…マイク、120…HMDセンサ、130
…モーションセンサ、140…注視センサ、150…サーバ、160…コントローラ、1
60R…右コントローラ、190…ユーザ、200…コンピュータ、220…主制御モジ
ュール、221…仮想空間制御モジュール、222…仮想カメラ制御モジュール、223
…プレイヤキャラクタ制御モジュール、224…オブジェクト制御モジュール、225…
コリジョン制御モジュール、226…コリジョン判定モジュール、227…視界画像生成
モジュール、228…表示制御モジュール、240…メモリモジュール、241…空間情
報、242…オブジェクト情報、243…ユーザ情報、250…通信制御モジュール、M
…視界画像
DESCRIPTION OF SYMBOLS 1 ... Virtual camera, 2 ... Virtual space, 5 ... Base line of sight, 10 ... Processor, 11 ... Memory, 1
2 ... Storage, 13 ... I / O interface, 14 ... Communication interface, 15 ...
Bus, 19 ... Network, 21 ... Center, 23 ... Field of view, 24, 25 ... Region, 31 ... Frame, 32 ... Top, 33, 34, 36, 37 ... Button, 35 ... Infrared LED, 38 ... Analog stick, DESCRIPTION OF SYMBOLS 100 ... HMD system, 110 ... HMD apparatus, 112 ... Display, 114 ... Sensor, 116 ... Camera, 118 ... Microphone, 120 ... HMD sensor, 130
... motion sensor, 140 ... gaze sensor, 150 ... server, 160 ... controller, 1
60R ... Right controller, 190 ... User, 200 ... Computer, 220 ... Main control module, 221 ... Virtual space control module, 222 ... Virtual camera control module, 223
... Player character control module, 224 ... Object control module, 225 ...
Collision control module, 226 ... collision determination module, 227 ... view image generation module, 228 ... display control module, 240 ... memory module, 241 ... spatial information, 242 ... object information, 243 ... user information, 250 ... communication control module, M
... Visibility image

Claims (10)

ヘッドマウントディスプレイを介して仮想空間を提供するためにコンピュータで実行される情報処理方法であって、
前記仮想空間を規定するステップと、
操作オブジェクトと移動オブジェクトと対象オブジェクトとを前記仮想空間に配置するステップと、
ユーザの動きに応じて、前記操作オブジェクトを動作させるステップと、
前記操作オブジェクトの動作に基づいて、前記移動オブジェクトを動かすステップと、
前記移動オブジェクトの早さに関する情報に基づいて、前記移動オブジェクトが前記対象オブジェクトに与える影響を特定するステップと、
前記移動オブジェクトと前記対象オブジェクトとが第1の位置関係にある場合に、前記対象オブジェクトに前記影響を与えるステップと、
を含む情報処理方法。
An information processing method executed by a computer to provide a virtual space via a head mounted display,
Defining the virtual space;
Arranging an operation object, a moving object, and a target object in the virtual space;
Moving the operation object in response to a user's movement;
Moving the moving object based on the action of the operation object;
Identifying the effect of the moving object on the target object based on information about the speed of the moving object;
Influencing the target object when the moving object and the target object are in a first positional relationship;
An information processing method including:
前記移動オブジェクトを動かすステップでは、更に、物理法則に基づいて、前記移動オブジェクトを動かし、
前記影響を特定するステップでは、更に、前記物理法則に基づいて、前記影響を特定する請求項1に記載の情報処理方法。
In the step of moving the moving object, the moving object is further moved based on a physical law,
The information processing method according to claim 1, wherein in the step of identifying the influence, the influence is further identified based on the physical law.
前記影響を特定するステップでは、前記移動オブジェクトと前記対象オブジェクトとが前記第1の位置関係にある場合における前記移動オブジェクトの早さに関する情報に基づいて、前記影響を特定する請求項2に記載の情報処理方法。   The step of identifying the influence identifies the influence based on information about the speed of the moving object when the moving object and the target object are in the first positional relationship. Information processing method. 前記ユーザの動きは、前記ユーザの身体の一部の動きであり、
前記移動オブジェクトを動かすステップでは、更に、前記身体の一部の姿勢の時系列的な変化に基づいて、前記移動オブジェクトの移動軌跡を制御し、
前記影響を特定するステップでは、前記身体の一部の姿勢の時系列的な変化を考慮しない場合の前記移動オブジェクトの移動軌跡と、前記身体の一部の姿勢の時系列的な変化に基づく前記移動オブジェクトの移動軌跡と、の類似度に基づいて、前記影響を特定する請求項2又は3に記載の情報処理方法。
The user movement is a movement of a part of the user's body;
In the step of moving the moving object, further, the movement trajectory of the moving object is controlled based on a time-series change in the posture of the part of the body,
In the step of identifying the influence, the movement trajectory of the moving object when the time-series change of the posture of the body part is not considered, and the time-series change of the posture of the body part The information processing method according to claim 2 or 3, wherein the influence is specified based on a similarity with a movement trajectory of the moving object.
前記移動オブジェクトの動きに基づいて、前記移動オブジェクトに関連付けられたコリジョンエリアの形状及び大きさの少なくともいずれかを特定するステップをさらに含み、
前記影響を与えるステップでは、前記コリジョンエリアと前記対象オブジェクトとが第2の位置関係にある場合に、前記対象オブジェクトに前記影響を与える請求項1〜4のいずれか1つに記載の情報処理方法。
Further comprising identifying at least one of the shape and size of a collision area associated with the moving object based on the movement of the moving object;
5. The information processing method according to claim 1, wherein, in the step of affecting, when the collision area and the target object are in a second positional relationship, the target object is affected. .
前記移動オブジェクトを動かすステップでは、更に、物理法則に基づいて、前記移動オブジェクトを動かし、
前記形状及び大きさの少なくともいずれかを特定するステップでは、更に、前記物理法則に基づいて、前記形状及び大きさの少なくともいずれかを特定する請求項5に記載の情報処理方法。
In the step of moving the moving object, the moving object is further moved based on a physical law,
The information processing method according to claim 5, wherein in the step of specifying at least one of the shape and size, further, at least one of the shape and size is specified based on the physical law.
前記形状及び大きさの少なくともいずれかを特定するステップでは、前記移動オブジェクトの早さに関する情報に連動するように、前記形状及び大きさの少なくともいずれかを特定する請求項6に記載の情報処理方法。   The information processing method according to claim 6, wherein in the step of specifying at least one of the shape and the size, at least one of the shape and the size is specified so as to be linked to information on the speed of the moving object. . 前記ユーザの動きは、前記ユーザの身体の一部の動きであり、
前記移動オブジェクトを動かすステップでは、更に、前記身体の一部の姿勢の時系列的な変化に基づいて、前記移動オブジェクトの移動軌跡を制御し、
前記形状及び大きさの少なくともいずれかを特定するステップでは、前記身体の一部の姿勢の時系列的な変化に基づいて、前記形状及び大きさの少なくともいずれかを特定する請求項7に記載の情報処理方法。
The user movement is a movement of a part of the user's body;
In the step of moving the moving object, further, the movement trajectory of the moving object is controlled based on a time-series change in the posture of the part of the body,
The step of specifying at least one of the shape and size identifies at least one of the shape and size based on a time-series change in the posture of the part of the body. Information processing method.
請求項1〜8のいずれか1項に記載の方法をコンピュータに実行させるためのプログラム。   The program for making a computer perform the method of any one of Claims 1-8. ヘッドマウントディスプレイを介して仮想空間を提供するためのコンピュータであって、
前記コンピュータが備えるプロセッサの制御により、
前記仮想空間を規定するステップと、
操作オブジェクトと移動オブジェクトと対象オブジェクトとを前記仮想空間に配置するステップと、
ユーザの動きに応じて、前記操作オブジェクトを動作させるステップと、
前記操作オブジェクトの動作に基づいて、前記移動オブジェクトを動かすステップと、
前記移動オブジェクトの早さに関する情報に基づいて、前記移動オブジェクトが前記対象オブジェクトに与える影響を特定するステップと、
前記移動オブジェクトと前記対象オブジェクトとが第1の位置関係にある場合に、前記対象オブジェクトに前記影響を与えるステップと、
が実行されるコンピュータ。

A computer for providing a virtual space via a head mounted display,
By control of a processor included in the computer,
Defining the virtual space;
Arranging an operation object, a moving object, and a target object in the virtual space;
Moving the operation object in response to a user's movement;
Moving the moving object based on the action of the operation object;
Identifying the effect of the moving object on the target object based on information about the speed of the moving object;
Influencing the target object when the moving object and the target object are in a first positional relationship;
The computer on which is run.

JP2017126809A 2017-06-28 2017-06-28 INFORMATION PROCESSING METHOD, PROGRAM, AND INFORMATION PROCESSING DEVICE Active JP6509955B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2017126809A JP6509955B2 (en) 2017-06-28 2017-06-28 INFORMATION PROCESSING METHOD, PROGRAM, AND INFORMATION PROCESSING DEVICE

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017126809A JP6509955B2 (en) 2017-06-28 2017-06-28 INFORMATION PROCESSING METHOD, PROGRAM, AND INFORMATION PROCESSING DEVICE

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2018241146A Division JP2019083028A (en) 2018-12-25 2018-12-25 Information processing method, program, and computer

Publications (2)

Publication Number Publication Date
JP2019008751A true JP2019008751A (en) 2019-01-17
JP6509955B2 JP6509955B2 (en) 2019-05-08

Family

ID=65026040

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017126809A Active JP6509955B2 (en) 2017-06-28 2017-06-28 INFORMATION PROCESSING METHOD, PROGRAM, AND INFORMATION PROCESSING DEVICE

Country Status (1)

Country Link
JP (1) JP6509955B2 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6788756B1 (en) * 2020-01-27 2020-11-25 グリー株式会社 Information processing system, information processing method and computer program
JP2021071942A (en) * 2019-10-31 2021-05-06 グリー株式会社 Moving image processing method, server device, and computer program
JP2021072096A (en) * 2020-08-13 2021-05-06 グリー株式会社 Moving image processing method, server device, and computer program
CN113713393A (en) * 2021-08-27 2021-11-30 腾讯科技(深圳)有限公司 Control method and device of virtual prop, storage medium and electronic equipment
US11682154B2 (en) 2019-10-31 2023-06-20 Gree, Inc. Moving image processing method of a moving image viewed by a viewing user, a server device controlling the moving image, and a computer program thereof
JP7487379B2 (en) 2023-04-20 2024-05-20 任天堂株式会社 GAME PROGRAM, GAME SYSTEM, GAME DEVICE, AND GAME PROCESSING METHOD

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002123840A (en) * 2000-10-17 2002-04-26 Nippon Telegr & Teleph Corp <Ntt> Processing method and processor for providing presence type virtual reality
JP2010158463A (en) * 2009-01-09 2010-07-22 Nintendo Co Ltd Game apparatus and game program
JP2015504259A (en) * 2011-10-25 2015-02-05 アキーモ, リミテッド ライアビリティー カンパニーAquimo, LLC Method and system for analyzing sports motion using motion sensors of mobile devices
WO2016038953A1 (en) * 2014-09-10 2016-03-17 ソニー株式会社 Detection device, detection method, control device, and control method
WO2016057433A1 (en) * 2014-10-07 2016-04-14 Microsoft Technology Licensing, Llc Driving a projector to generate a shared spatial augmented reality experience
JP5996138B1 (en) * 2016-03-18 2016-09-21 株式会社コロプラ GAME PROGRAM, METHOD, AND GAME SYSTEM
WO2016164212A1 (en) * 2015-04-10 2016-10-13 Sony Computer Entertainment Inc. Filtering and parental control methods for restricting visual activity on a head mounted display
JP6118444B1 (en) * 2016-07-28 2017-04-19 株式会社コロプラ Information processing method and program for causing computer to execute information processing method
JP2017107604A (en) * 2013-03-11 2017-06-15 マジック リープ, インコーポレイテッド System and method for augmented and virtual reality

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002123840A (en) * 2000-10-17 2002-04-26 Nippon Telegr & Teleph Corp <Ntt> Processing method and processor for providing presence type virtual reality
JP2010158463A (en) * 2009-01-09 2010-07-22 Nintendo Co Ltd Game apparatus and game program
JP2015504259A (en) * 2011-10-25 2015-02-05 アキーモ, リミテッド ライアビリティー カンパニーAquimo, LLC Method and system for analyzing sports motion using motion sensors of mobile devices
JP2017107604A (en) * 2013-03-11 2017-06-15 マジック リープ, インコーポレイテッド System and method for augmented and virtual reality
WO2016038953A1 (en) * 2014-09-10 2016-03-17 ソニー株式会社 Detection device, detection method, control device, and control method
WO2016057433A1 (en) * 2014-10-07 2016-04-14 Microsoft Technology Licensing, Llc Driving a projector to generate a shared spatial augmented reality experience
WO2016164212A1 (en) * 2015-04-10 2016-10-13 Sony Computer Entertainment Inc. Filtering and parental control methods for restricting visual activity on a head mounted display
JP5996138B1 (en) * 2016-03-18 2016-09-21 株式会社コロプラ GAME PROGRAM, METHOD, AND GAME SYSTEM
JP6118444B1 (en) * 2016-07-28 2017-04-19 株式会社コロプラ Information processing method and program for causing computer to execute information processing method

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
[実況プレイ]部屋でボウリングができる!?VRボウリングWWW, JPN6018039531, 16 January 2017 (2017-01-16), ISSN: 0003894930 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021071942A (en) * 2019-10-31 2021-05-06 グリー株式会社 Moving image processing method, server device, and computer program
US11682154B2 (en) 2019-10-31 2023-06-20 Gree, Inc. Moving image processing method of a moving image viewed by a viewing user, a server device controlling the moving image, and a computer program thereof
JP6788756B1 (en) * 2020-01-27 2020-11-25 グリー株式会社 Information processing system, information processing method and computer program
JP2021117721A (en) * 2020-01-27 2021-08-10 グリー株式会社 Information processing system, information processing method and computer program
JP2021072096A (en) * 2020-08-13 2021-05-06 グリー株式会社 Moving image processing method, server device, and computer program
JP7133590B2 (en) 2020-08-13 2022-09-08 グリー株式会社 Video processing method, server device and computer program
CN113713393A (en) * 2021-08-27 2021-11-30 腾讯科技(深圳)有限公司 Control method and device of virtual prop, storage medium and electronic equipment
CN113713393B (en) * 2021-08-27 2023-05-30 腾讯科技(深圳)有限公司 Virtual prop control method and device, storage medium and electronic equipment
JP7487379B2 (en) 2023-04-20 2024-05-20 任天堂株式会社 GAME PROGRAM, GAME SYSTEM, GAME DEVICE, AND GAME PROCESSING METHOD

Also Published As

Publication number Publication date
JP6509955B2 (en) 2019-05-08

Similar Documents

Publication Publication Date Title
JP6470796B2 (en) Information processing method, program, and computer
JP6509955B2 (en) INFORMATION PROCESSING METHOD, PROGRAM, AND INFORMATION PROCESSING DEVICE
JP6368411B1 (en) Method, program and computer executed on a computer to provide a virtual experience
JP6248219B1 (en) Information processing method, computer, and program for causing computer to execute information processing method
JP2018147465A (en) Information processing method, device, and program for causing computer to execute the method
JP6368404B1 (en) Information processing method, program, and computer
JP6479933B1 (en) Program, information processing apparatus, and method
JP6290490B1 (en) Information processing method, apparatus, and program for causing computer to execute information processing method
US20180129274A1 (en) Information processing method and apparatus, and program for executing the information processing method on computer
JP2018097517A (en) Information processing method, device, and program for causing computer to execute the information processing method
JP6263292B1 (en) Information processing method, computer, and program for causing computer to execute information processing method
JP2019087262A (en) Program, information processing device and method
JP2018067297A (en) Information processing method, apparatus, and program for causing computer to implement information processing method
JP2019083028A (en) Information processing method, program, and computer
JP2019020832A (en) Information processing method, device, and program for causing computer to execute the method
JP6174215B1 (en) Method and system for controlling display contents of head mounted device, and program for causing computer to execute the method
JP6298557B1 (en) Information processing method, apparatus, and program for causing computer to execute information processing method
JP6330072B1 (en) Information processing method, apparatus, and program for causing computer to execute information processing method
JP2019016358A (en) Information processing method, program and computer
JP2018032373A (en) Method and system of controlling display content of head-mounted device and program of causing computer to execute the method
JP6189513B1 (en) Information processing method, apparatus, and program for causing computer to execute information processing method
JP6946084B2 (en) An information processing method, a device, and a program for causing a computer to execute the information processing method.
JP7166813B2 (en) Computer-implemented methods, programs and computers for providing virtual experiences
JP6441517B1 (en) Program, information processing apparatus, and method
JP6318224B1 (en) A method executed by a computer to display content in a virtual space using a head-mounted device, a program for causing a computer to execute the method, and an information processing apparatus

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20181009

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181225

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20190110

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190403

R150 Certificate of patent or registration of utility model

Ref document number: 6509955

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250