JP2020110376A - Game program, method, and information processing device - Google Patents
Game program, method, and information processing device Download PDFInfo
- Publication number
- JP2020110376A JP2020110376A JP2019003899A JP2019003899A JP2020110376A JP 2020110376 A JP2020110376 A JP 2020110376A JP 2019003899 A JP2019003899 A JP 2019003899A JP 2019003899 A JP2019003899 A JP 2019003899A JP 2020110376 A JP2020110376 A JP 2020110376A
- Authority
- JP
- Japan
- Prior art keywords
- game
- user
- virtual space
- virtual
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims description 112
- 230000010365 information processing Effects 0.000 title claims description 16
- 230000000007 visual effect Effects 0.000 claims abstract description 153
- 230000004044 response Effects 0.000 claims abstract description 41
- 230000033001 locomotion Effects 0.000 claims description 296
- 230000008569 process Effects 0.000 claims description 94
- 230000015654 memory Effects 0.000 claims description 79
- 238000009826 distribution Methods 0.000 claims description 59
- 238000012545 processing Methods 0.000 claims description 57
- 230000007704 transition Effects 0.000 claims description 38
- 230000002250 progressing effect Effects 0.000 abstract description 28
- 238000010521 absorption reaction Methods 0.000 abstract 1
- 230000009471 action Effects 0.000 description 91
- 238000003860 storage Methods 0.000 description 70
- 238000010586 diagram Methods 0.000 description 65
- 238000004891 communication Methods 0.000 description 54
- 230000006870 function Effects 0.000 description 39
- 238000001514 detection method Methods 0.000 description 38
- 210000001508 eye Anatomy 0.000 description 35
- 210000003811 finger Anatomy 0.000 description 15
- 230000006399 behavior Effects 0.000 description 11
- 238000003825 pressing Methods 0.000 description 11
- 210000003128 head Anatomy 0.000 description 10
- 238000009877 rendering Methods 0.000 description 10
- 230000008859 change Effects 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 7
- 210000000056 organ Anatomy 0.000 description 6
- 230000001133 acceleration Effects 0.000 description 5
- 239000000470 constituent Substances 0.000 description 5
- 238000005401 electroluminescence Methods 0.000 description 5
- 230000001360 synchronised effect Effects 0.000 description 5
- 230000008685 targeting Effects 0.000 description 5
- 239000004973 liquid crystal related substance Substances 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000008450 motivation Effects 0.000 description 4
- 230000002123 temporal effect Effects 0.000 description 4
- 241001465754 Metazoa Species 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000001815 facial effect Effects 0.000 description 3
- 238000007654 immersion Methods 0.000 description 3
- 230000014759 maintenance of location Effects 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 210000004709 eyebrow Anatomy 0.000 description 2
- 208000013057 hereditary mucoepithelial dysplasia Diseases 0.000 description 2
- 238000010191 image analysis Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000005096 rolling process Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 238000002834 transmittance Methods 0.000 description 2
- 229930091051 Arenine Natural products 0.000 description 1
- 241000556720 Manga Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 210000005252 bulbus oculi Anatomy 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 210000004087 cornea Anatomy 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000008921 facial expression Effects 0.000 description 1
- 210000005224 forefinger Anatomy 0.000 description 1
- 210000004247 hand Anatomy 0.000 description 1
- 238000007562 laser obscuration time method Methods 0.000 description 1
- 210000004932 little finger Anatomy 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000003550 marker Substances 0.000 description 1
- 210000000214 mouth Anatomy 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000001454 recorded image Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Images
Landscapes
- Processing Or Creating Images (AREA)
- User Interface Of Digital Computer (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
本開示はゲームプログラム、ゲームプログラムを実行する方法および情報処理装置に関する。 The present disclosure relates to a game program, a method for executing the game program, and an information processing device.
従来、ユーザが選択した選択肢に応じて結末が異なるように物語が進行するゲームが広く知られている。例えば、非特許文献1には、女の子のキャラクタと仮想的に親睦を深めることを主たる目的とする恋愛シミュレーションゲームが開示されている。ユーザは、提示された選択肢の中からキャラクタに対する働きかけとして最適と思うものを選択し、その働きかけに対して該キャラクタが反応することを繰り返すことで物語が進行する。
2. Description of the Related Art Conventionally, a game in which a story progresses with a different ending depending on the option selected by the user is widely known. For example, Non-Patent
非特許文献1に開示されているゲームでは、キャラクタの応答パターンが予め用意されている。そして、ユーザの入力操作に応じて、該キャラクタの応答が、該応答パターンの中から決定されて出力され、ゲームが進行する。したがって、キャラクタの動作のバリエーションは、予め用意されたデータの内容を超えて広がることがない。そのため、ユーザは、キャラクタとの関わり合いに対して、該キャラクタがまるで現実の世界にいるかのような現実感を覚えることができず、いずれ飽きるという問題がある。一般に、ユーザに長くプレイさせることを意図して開発されたゲームにおいては、ユーザがゲームに飽きるという問題に如何に対処するかが重要である。ゲームには、常に、ユーザにプレイを動機付けるような魅力的なコンテンツを提供することが求められる。例えば、ゲームに登場するキャラクタが、高い現実感を備えていれば、ユーザは、ゲームの世界に没入しやすくなり、キャラクタとの関わり合いにより興趣性を見出すと考えられる 。
In the game disclosed in Non-Patent
本開示の一態様は、ゲームの世界への没入感を高め、該ゲームの興趣性を向上させることを目的とする。 One aspect of the present disclosure aims to enhance the immersive feeling of the game world and improve the fun of the game.
本開示に係るゲームプログラムは、プロセッサおよびメモリを備えるユーザ端末により実行される。ゲームプログラムは、プロセッサに、第1配信者がリアルタイム配信を行うための第1配信端末と、視聴端末を含む複数の視聴端末との間で共有される第1仮想空間に、第1配信者に対応する第1アバターオブジェクトと、第1仮想カメラとを配置するステップと、リアルタイム配信が行われる間、第1仮想カメラの視野領域を示す第1視野画像を表示部に表示するステップと、ゲームプログラムに基づくゲームに含まれる、複数の状態間を遷移しながら進行する第1ゲームパートの状態ごとに、1つの状態におけるゲームを、第1配信者の身体の動き及び視聴者の操作に基づき進行させるゲーム処理を行うステップと、を実行させ、各状態におけるゲーム処理は、第1配信端末が第1配信者の身体の動きを検出して生成した、第1アバターオブジェクトの動作を示す第1動作情報を受信するステップと、第1動作情報が受信されたことに応答して、当該第1動作情報が示す動きを第1アバターオブジェクトが行うことを含むよう、第1視野画像を更新するステップと、第1動作情報が受信されたことに応答して、第1動作情報が示す動きが状態を遷移させるための動きであるか否かを判定するステップと、第1動作情報が示す動きが遷移させるための動きである場合に、第1ゲームパートの進行を、現在の状態から他の状態に遷移させるステップと、を含む。 The game program according to the present disclosure is executed by a user terminal including a processor and a memory. The game program is provided to the processor in a first virtual space shared between a first distribution terminal for the first distributor to perform real-time distribution and a plurality of viewing terminals including the viewing terminal. Arranging a corresponding first avatar object and a first virtual camera, displaying a first view image showing a view area of the first virtual camera on a display unit during real-time distribution, and a game program The game in one state is advanced based on the movement of the body of the first distributor and the operation of the viewer for each state of the first game part that progresses while transitioning between a plurality of states included in the game based on. And a step of performing a game process, wherein the game process in each state is performed by the first distribution terminal that detects a motion of the body of the first distributor and generates first motion information indicating a motion of the first avatar object. And a step of updating the first view image so as to include the first avatar object performing a motion indicated by the first motion information in response to the reception of the first motion information. A step of determining whether or not the motion indicated by the first motion information is a motion for causing a state transition in response to the reception of the first motion information; and the motion indicated by the first motion information causes a transition. The movement of the first game part, the step of transitioning the progress of the first game part from the current state to another state.
本開示に係る方法は、プロセッサ及びメモリを備えるコンピュータがゲームプログラムを実行する方法である。方法は、プロセッサが、上述した各ステップを実行することを含む。 The method according to the present disclosure is a method in which a computer including a processor and a memory executes a game program. The method includes a processor performing the steps described above.
本開示に係る情報処理装置は、上述したゲームプログラムを記憶するメモリと、ゲームプログラムを実行することにより、情報処理装置の動作を制御するプロセッサと、を備えている。 An information processing device according to the present disclosure includes a memory that stores the above-described game program, and a processor that controls the operation of the information processing device by executing the game program.
本開示の一態様によれば、ゲームの世界への没入感を高め、該ゲームの興趣性を向上させる効果を奏する。 According to one aspect of the present disclosure, it is possible to enhance the immersive feeling in the game world and to enhance the interest of the game.
以下、この技術的思想の実施の形態について図面を参照しながら詳細に説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。本開示において示される1以上の実施形態において、各実施形態が含む要素を互いに組み合わせることができ、かつ、当該組み合わせられた結果物も本開示が示す実施形態の一部をなすものとする。 Hereinafter, embodiments of this technical idea will be described in detail with reference to the drawings. In the following description, the same parts are designated by the same reference numerals. Their names and functions are also the same. Therefore, detailed description thereof will not be repeated. In one or more embodiments shown in the present disclosure, elements included in each embodiment can be combined with each other, and the resultant product is also a part of the embodiment shown in the present disclosure.
[HMDシステムの構成]
図1を参照して、HMD(Head-Mounted Device)システム100の構成について説明する。図1は、本実施の形態に従うHMDシステム100の構成の概略を表す図である。HMDシステム100は、家庭用のシステムとしてあるいは業務用のシステムとして提供される。
[Configuration of HMD system]
The configuration of an HMD (Head-Mounted Device)
HMDシステム100は、サーバ600と、HMDセット110A,110B,110C,110Dと、外部機器700と、ネットワーク2とを含む。HMDセット110A,110B,110C,110Dの各々は、ネットワーク2を介してサーバ600や外部機器700と通信可能に構成される。以下、HMDセット110A,110B,110C,110Dを総称して、HMDセット110とも言う。HMDシステム100を構成するHMDセット110の数は、4つに限られず、3つ以下でも、5つ以上でもよい。HMDセット110は、HMD120と、コンピュータ200と、HMDセンサ410と、ディスプレイ430と、コントローラ300とを備える。HMD120は、モニタ130と、注視センサ140と、第1カメラ150と、第2カメラ160と、マイク170と、スピーカ180とを含む。コントローラ300は、モーションセンサ420を含み得る。
The
ある局面において、コンピュータ200は、インターネットその他のネットワーク2に接続可能であり、ネットワーク2に接続されているサーバ600その他のコンピュータと通信可能である。その他のコンピュータとしては、例えば、他のHMDセット110のコンピュータや外部機器700が挙げられる。別の局面において、HMD120は、HMDセンサ410の代わりに、センサ190を含み得る。
In one aspect, the
HMD120は、ユーザ5の頭部に装着され、動作中に仮想空間をユーザ5に提供し得る。より具体的には、HMD120は、右目用の画像および左目用の画像をモニタ130にそれぞれ表示する。ユーザ5の各目がそれぞれの画像を視認すると、ユーザ5は、両目の視差に基づき当該画像を3次元画像として認識し得る。HMD120は、モニタを備える所謂ヘッドマウントディスプレイと、スマートフォンその他のモニタを有する端末を装着可能なヘッドマウント機器のいずれをも含み得る。
The
モニタ130は、例えば、非透過型の表示装置として実現される。ある局面において、モニタ130は、ユーザ5の両目の前方に位置するようにHMD120の本体に配置されている。したがって、ユーザ5は、モニタ130に表示される3次元画像を視認すると、仮想空間に没入することができる。ある局面において、仮想空間は、例えば、背景、ユーザ5が操作可能なオブジェクト、ユーザ5が選択可能なメニューの画像を含む。ある局面において、モニタ130は、所謂スマートフォンその他の情報表示端末が備える液晶モニタまたは有機EL(Electro Luminescence)モニタとして実現され得る。
The
別の局面において、モニタ130は、透過型の表示装置として実現され得る。この場合、HMD120は、図1に示されるようにユーザ5の目を覆う密閉型ではなく、メガネ型のような開放型であり得る。透過型のモニタ130は、その透過率を調整することにより、一時的に非透過型の表示装置として構成可能であってもよい。モニタ130は、仮想空間を構成する画像の一部と、現実空間とを同時に表示する構成を含んでいてもよい。例えば、モニタ130は、HMD120に搭載されたカメラで撮影した現実空間の画像を表示してもよいし、一部の透過率を高く設定することにより現実空間を視認可能にしてもよい。
In another aspect, the
ある局面において、モニタ130は、右目用の画像を表示するためのサブモニタと、左目用の画像を表示するためのサブモニタとを含み得る。別の局面において、モニタ130は、右目用の画像と左目用の画像とを一体として表示する構成であってもよい。この場合、モニタ130は、高速シャッタを含む。高速シャッタは、画像がいずれか一方の目にのみ認識されるように、右目用の画像と左目用の画像とを交互に表示可能に作動する。
In one aspect, monitor 130 may include a sub-monitor for displaying an image for the right eye and a sub-monitor for displaying an image for the left eye. In another aspect, the
ある局面において、HMD120は、図示せぬ複数の光源を含む。各光源は例えば、赤外線を発するLED(Light Emitting Diode)により実現される。HMDセンサ410は、HMD120の動きを検出するためのポジショントラッキング機能を有する。より具体的には、HMDセンサ410は、HMD120が発する複数の赤外線を読み取り、現実空間内におけるHMD120の位置および傾きを検出する。
In one aspect, the
別の局面において、HMDセンサ410は、カメラにより実現されてもよい。この場合、HMDセンサ410は、カメラから出力されるHMD120の画像情報を用いて、画像解析処理を実行することにより、HMD120の位置および傾きを検出することができる。
In another aspect, the
別の局面において、HMD120は、位置検出器として、HMDセンサ410の代わりに、あるいはHMDセンサ410に加えてセンサ190を備えてもよい。HMD120は、センサ190を用いて、HMD120自身の位置および傾きを検出し得る。例えば、センサ190が角速度センサ、地磁気センサ、あるいは加速度センサである場合、HMD120は、HMDセンサ410の代わりに、これらの各センサのいずれかを用いて、自身の位置および傾きを検出し得る。一例として、センサ190が角速度センサである場合、角速度センサは、現実空間におけるHMD120の3軸周りの角速度を経時的に検出する。HMD120は、各角速度に基づいて、HMD120の3軸周りの角度の時間的変化を算出し、さらに、角度の時間的変化に基づいて、HMD120の傾きを算出する。
In another aspect, the
注視センサ140は、ユーザ5の右目および左目の視線が向けられる方向を検出する。つまり、注視センサ140は、ユーザ5の視線を検出する。視線の方向の検出は、例えば、公知のアイトラッキング機能によって実現される。注視センサ140は、当該アイトラッキング機能を有するセンサにより実現される。ある局面において、注視センサ140は、右目用のセンサおよび左目用のセンサを含むことが好ましい。注視センサ140は、例えば、ユーザ5の右目および左目に赤外光を照射するとともに、照射光に対する角膜および虹彩からの反射光を受けることにより各眼球の回転角を検出するセンサであってもよい。注視センサ140は、検出した各回転角に基づいて、ユーザ5の視線を検知することができる。
The
第1カメラ150は、ユーザ5の顔の下部を撮影する。より具体的には、第1カメラ150は、ユーザ5の鼻および口などを撮影する。第2カメラ160は、ユーザ5の目および眉などを撮影する。HMD120のユーザ5側の筐体をHMD120の内側、HMD120のユーザ5とは逆側の筐体をHMD120の外側と定義する。ある局面において、第1カメラ150は、HMD120の外側に配置され、第2カメラ160は、HMD120の内側に配置され得る。第1カメラ150および第2カメラ160が生成した画像は、コンピュータ200に入力される。別の局面において、第1カメラ150と第2カメラ160とを1台のカメラとして実現し、この1台のカメラでユーザ5の顔を撮影するようにしてもよい。
The
マイク170は、ユーザ5の発話を音声信号(電気信号)に変換してコンピュータ200に出力する。スピーカ180は、音声信号を音声に変換してユーザ5に出力する。別の局面において、HMD120は、スピーカ180に替えてイヤホンを含み得る。
The
コントローラ300は、有線または無線によりコンピュータ200に接続されている。コントローラ300は、ユーザ5からコンピュータ200への命令の入力を受け付ける。ある局面において、コントローラ300は、ユーザ5によって把持可能に構成される。別の局面において、コントローラ300は、ユーザ5の身体あるいは衣類の一部に装着可能に構成される。さらに別の局面において、コントローラ300は、コンピュータ200から送信される信号に基づいて、振動、音、光のうちの少なくともいずれかを出力するように構成されてもよい。さらに別の局面において、コントローラ300は、ユーザ5から、仮想空間に配置されるオブジェクトの位置や動きを制御するための操作を受け付ける。
The
ある局面において、コントローラ300は、複数の光源を含む。各光源は例えば、赤外線を発するLEDにより実現される。HMDセンサ410は、ポジショントラッキング機能を有する。この場合、HMDセンサ410は、コントローラ300が発する複数の赤外線を読み取り、現実空間内におけるコントローラ300の位置および傾きを検出する。別の局面において、HMDセンサ410は、カメラにより実現されてもよい。この場合、HMDセンサ410は、カメラから出力されるコントローラ300の画像情報を用いて、画像解析処理を実行することにより、コントローラ300の位置および傾きを検出することができる。
In one aspect, the
モーションセンサ420は、ある局面において、ユーザ5の手に取り付けられて、ユーザ5の手の動きを検出する。例えば、モーションセンサ420は、手の回転速度、回転数等を検出する。検出された信号は、コンピュータ200に送られる。モーションセンサ420は、例えば、コントローラ300に設けられている。ある局面において、モーションセンサ420は、例えば、ユーザ5に把持可能に構成されたコントローラ300に設けられている。別の局面において、現実空間における安全のため、コントローラ300は、手袋型のようにユーザ5の手に装着されることにより容易に飛んで行かないものに装着される。さらに別の局面において、ユーザ5に装着されないセンサがユーザ5の手の動きを検出してもよい。例えば、ユーザ5を撮影するカメラの信号が、ユーザ5の動作を表わす信号として、コンピュータ200に入力されてもよい。モーションセンサ420とコンピュータ200とは、一例として、無線により互いに接続される。無線の場合、通信形態は特に限られず、例えば、Bluetooth(登録商標)その他の公知の通信手法が用いられる。
The
ディスプレイ430は、モニタ130に表示されている画像と同様の画像を表示する。これにより、HMD120を装着しているユーザ5以外のユーザにも当該ユーザ5と同様の画像を視聴させることができる。ディスプレイ430に表示される画像は、3次元画像である必要はなく、右目用の画像や左目用の画像であってもよい。ディスプレイ430としては、例えば、液晶ディスプレイや有機ELモニタなどが挙げられる。
The
サーバ600は、コンピュータ200にプログラムを送信し得る。別の局面において、サーバ600は、他のユーザによって使用されるHMD120に仮想現実を提供するための他のコンピュータ200と通信し得る。例えば、アミューズメント施設において、複数のユーザが参加型のゲームを行なう場合、各コンピュータ200は、各ユーザの動作に基づく信号をサーバ600を介して他のコンピュータ200と通信して、同じ仮想空間において複数のユーザが共通のゲームを楽しむことを可能にする。各コンピュータ200は、各ユーザの動作に基づく信号をサーバ600を介さずに他のコンピュータ200と通信するようにしてもよい。
The
外部機器700は、コンピュータ200と通信可能な機器であればどのような機器であってもよい。外部機器700は、例えば、ネットワーク2を介してコンピュータ200と通信可能な機器であってもよいし、近距離無線通信や有線接続によりコンピュータ200と直接通信可能な機器であってもよい。外部機器700としては、例えば、スマートデバイス、PC(Personal Computer)、及びコンピュータ200の周辺機器などが挙げられるが、これらに限定されるものではない。
The
[コンピュータのハードウェア構成]
図2を参照して、本実施の形態に係るコンピュータ200について説明する。図2は、本実施の形態に従うコンピュータ200のハードウェア構成の一例を表すブロック図である。コンピュータ200は、主たる構成要素として、プロセッサ210と、メモリ220と、ストレージ230と、入出力インターフェイス240と、通信インターフェイス250とを備える。各構成要素は、それぞれ、バス260に接続されている。
[Computer hardware configuration]
The
プロセッサ210は、コンピュータ200に与えられる信号に基づいて、あるいは、予め定められた条件が成立したことに基づいて、メモリ220またはストレージ230に格納されているプログラムに含まれる一連の命令を実行する。ある局面において、プロセッサ210は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、MPU(Micro Processor Unit)、FPGA(Field-ProgrammaBle Gate Array)その他のデバイスとして実現される。
The
メモリ220は、プログラムおよびデータを一時的に保存する。プログラムは、例えば、ストレージ230からロードされる。データは、コンピュータ200に入力されたデータと、プロセッサ210によって生成されたデータとを含む。ある局面において、メモリ220は、RAM(Random Access Memory)その他の揮発メモリとして実現される。
The
ストレージ230は、プログラムおよびデータを永続的に保持する。ストレージ230は、例えば、ROM(Read-Only Memory)、ハードディスク装置、フラッシュメモリ、その他の不揮発記憶装置として実現される。ストレージ230に格納されるプログラムは、HMDシステム100において仮想空間を提供するためのプログラム、シミュレーションプログラム、ゲームプログラム、ユーザ認証プログラム、他のコンピュータ200との通信を実現するためのプログラムを含む。ストレージ230に格納されるデータは、仮想空間を規定するためのデータおよびオブジェクト等を含む。
The
別の局面において、ストレージ230は、メモリカードのように着脱可能な記憶装置として実現されてもよい。さらに別の局面において、コンピュータ200に内蔵されたストレージ230の代わりに、外部の記憶装置に保存されているプログラムおよびデータを使用する構成が使用されてもよい。このような構成によれば、例えば、アミューズメント施設のように複数のHMDシステム100が使用される場面において、プログラムやデータの更新を一括して行なうことが可能になる。
In another aspect, the
入出力インターフェイス240は、HMD120、HMDセンサ410、モーションセンサ420およびディスプレイ430との間で信号を通信する。HMD120に含まれるモニタ130,注視センサ140,第1カメラ150,第2カメラ160,マイク170およびスピーカ180は、HMD120の入出力インターフェイス240を介してコンピュータ200との通信を行ない得る。ある局面において、入出力インターフェイス240は、USB(Universal Serial Bus)、DVI(Digital Visual Interface)、HDMI(登録商標)(High-Definition Multimedia Interface)その他の端子を用いて実現される。入出力インターフェイス240は上述のものに限られない。
The input/
ある局面において、入出力インターフェイス240は、さらに、コントローラ300と通信し得る。例えば、入出力インターフェイス240は、コントローラ300およびモーションセンサ420から出力された信号の入力を受ける。別の局面において、入出力インターフェイス240は、プロセッサ210から出力された命令を、コントローラ300に送る。当該命令は、振動、音声出力、発光等をコントローラ300に指示する。コントローラ300は、当該命令を受信すると、その命令に応じて、振動、音声出力または発光のいずれかを実行する。
In certain aspects, the input/
通信インターフェイス250は、ネットワーク2に接続されて、ネットワーク2に接続されている他のコンピュータ(例えば、サーバ600)と通信する。ある局面において、通信インターフェイス250は、例えば、LAN(Local Area Network)その他の有線通信インターフェイス、あるいは、WiFi(Wireless Fidelity)、Bluetooth(登録商標)、NFC(Near Field Communication)その他の無線通信インターフェイスとして実現される。通信インターフェイス250は上述のものに限られない。
The
ある局面において、プロセッサ210は、ストレージ230にアクセスし、ストレージ230に格納されている1つ以上のプログラムをメモリ220にロードし、当該プログラムに含まれる一連の命令を実行する。当該1つ以上のプログラムは、コンピュータ200のオペレーティングシステム、仮想空間を提供するためのアプリケーションプログラム、仮想空間で実行可能なゲームソフトウェア等を含み得る。プロセッサ210は、入出力インターフェイス240を介して、仮想空間を提供するための信号をHMD120に送る。HMD120は、その信号に基づいてモニタ130に映像を表示する。
In one aspect, the
図2に示される例では、コンピュータ200は、HMD120の外部に設けられる構成が示されているが、別の局面において、コンピュータ200は、HMD120に内蔵されてもよい。一例として、モニタ130を含む携帯型の情報通信端末(例えば、スマートフォン)がコンピュータ200として機能してもよい。
In the example shown in FIG. 2, the
コンピュータ200は、複数のHMD120に共通して用いられる構成であってもよい。このような構成によれば、例えば、複数のユーザに同一の仮想空間を提供することもできるので、各ユーザは同一の仮想空間で他のユーザと同一のアプリケーションを楽しむことができる。
The
ある実施の形態において、HMDシステム100では、現実空間における座標系である実座標系が予め設定されている。実座標系は、現実空間における鉛直方向、鉛直方向に直交する水平方向、並びに、鉛直方向および水平方向の双方に直交する前後方向にそれぞれ平行な、3つの基準方向(軸)を有する。実座標系における水平方向、鉛直方向(上下方向)、および前後方向は、それぞれ、x軸、y軸、z軸と規定される。より具体的には、実座標系において、x軸は現実空間の水平方向に平行である。y軸は、現実空間の鉛直方向に平行である。z軸は現実空間の前後方向に平行である。
In one embodiment, in the
ある局面において、HMDセンサ410は、赤外線センサを含む。赤外線センサが、HMD120の各光源から発せられた赤外線をそれぞれ検出すると、HMD120の存在を検出する。HMDセンサ410は、さらに、各点の値(実座標系における各座標値)に基づいて、HMD120を装着したユーザ5の動きに応じた、現実空間内におけるHMD120の位置および傾き(向き)を検出する。より詳しくは、HMDセンサ410は、経時的に検出された各値を用いて、HMD120の位置および傾きの時間的変化を検出できる。
In one aspect,
HMDセンサ410によって検出されたHMD120の各傾きは、実座標系におけるHMD120の3軸周りの各傾きに相当する。HMDセンサ410は、実座標系におけるHMD120の傾きに基づき、uvw視野座標系をHMD120に設定する。HMD120に設定されるuvw視野座標系は、HMD120を装着したユーザ5が仮想空間において物体を見る際の視点座標系に対応する。
Each inclination of the
[uvw視野座標系]
図3を参照して、uvw視野座標系について説明する。図3は、ある実施の形態に従うHMD120に設定されるuvw視野座標系を概念的に表す図である。HMDセンサ410は、HMD120の起動時に、実座標系におけるHMD120の位置および傾きを検出する。プロセッサ210は、検出された値に基づいて、uvw視野座標系をHMD120に設定する。
[Uvw view 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
図3に示されるように、HMD120は、HMD120を装着したユーザ5の頭部を中心(原点)とした3次元のuvw視野座標系を設定する。より具体的には、HMD120は、実座標系を規定する水平方向、鉛直方向、および前後方向(x軸、y軸、z軸)を、実座標系内においてHMD120の各軸周りの傾きだけ各軸周りにそれぞれ傾けることによって新たに得られる3つの方向を、HMD120におけるuvw視野座標系のピッチ軸(u軸)、ヨー軸(v軸)、およびロール軸(w軸)として設定する。
As shown in FIG. 3, the
ある局面において、HMD120を装着したユーザ5が直立し、かつ、正面を視認している場合、プロセッサ210は、実座標系に平行なuvw視野座標系をHMD120に設定する。この場合、実座標系における水平方向(x軸)、鉛直方向(y軸)、および前後方向(z軸)は、HMD120におけるuvw視野座標系のピッチ軸(u軸)、ヨー軸(v軸)、およびロール軸(w軸)に一致する。
In a certain aspect, when the
uvw視野座標系がHMD120に設定された後、HMDセンサ410は、HMD120の動きに基づいて、設定されたuvw視野座標系におけるHMD120の傾きを検出できる。この場合、HMDセンサ410は、HMD120の傾きとして、uvw視野座標系におけるHMD120のピッチ角(θu)、ヨー角(θv)、およびロール角(θw)をそれぞれ検出する。ピッチ角(θu)は、uvw視野座標系におけるピッチ軸周りのHMD120の傾き角度を表す。ヨー角(θv)は、uvw視野座標系におけるヨー軸周りのHMD120の傾き角度を表す。ロール角(θw)は、uvw視野座標系におけるロール軸周りのHMD120の傾き角度を表す。
After the uvw visual field coordinate system is set in the
HMDセンサ410は、検出されたHMD120の傾きに基づいて、HMD120が動いた後のHMD120におけるuvw視野座標系を、HMD120に設定する。HMD120と、HMD120のuvw視野座標系との関係は、HMD120の位置および傾きに関わらず、常に一定である。HMD120の位置および傾きが変わると、当該位置および傾きの変化に連動して、実座標系におけるHMD120のuvw視野座標系の位置および傾きが変化する。
The
ある局面において、HMDセンサ410は、赤外線センサからの出力に基づいて取得される赤外線の光強度および複数の点間の相対的な位置関係(例えば、各点間の距離など)に基づいて、HMD120の現実空間内における位置を、HMDセンサ410に対する相対位置として特定してもよい。プロセッサ210は、特定された相対位置に基づいて、現実空間内(実座標系)におけるHMD120のuvw視野座標系の原点を決定してもよい。
In one aspect, the
[仮想空間]
図4を参照して、仮想空間についてさらに説明する。図4は、ある実施の形態に従う仮想空間11を表現する一態様を概念的に表す図である。仮想空間11は、中心12の360度方向の全体を覆う全天球状の構造を有する。図4では、説明を複雑にしないために、仮想空間11のうちの上半分の天球が例示されている。仮想空間11では各メッシュが規定される。各メッシュの位置は、仮想空間11に規定されるグローバル座標系であるXYZ座標系における座標値として予め規定されている。コンピュータ200は、仮想空間11に展開可能なパノラマ画像13(静止画、動画等)を構成する各部分画像を、仮想空間11において対応する各メッシュにそれぞれ対応付ける。
[Virtual space]
The virtual space will be further described with reference to FIG. FIG. 4 is a diagram conceptually showing one aspect of expressing
ある局面において、仮想空間11では、中心12を原点とするXYZ座標系が規定される。XYZ座標系は、例えば、実座標系に平行である。XYZ座標系における水平方向、鉛直方向(上下方向)、および前後方向は、それぞれX軸、Y軸、Z軸として規定される。したがって、XYZ座標系のX軸(水平方向)が実座標系のx軸と平行であり、XYZ座標系のY軸(鉛直方向)が実座標系のy軸と平行であり、XYZ座標系のZ軸(前後方向)が実座標系のz軸と平行である。
In a certain aspect, in the
HMD120の起動時、すなわちHMD120の初期状態において、仮想カメラ14が、仮想空間11の中心12に配置される。ある局面において、プロセッサ210は、仮想カメラ14が撮影する画像をHMD120のモニタ130に表示する。仮想カメラ14は、現実空間におけるHMD120の動きに連動して、仮想空間11を同様に移動する。これにより、現実空間におけるHMD120の位置および傾きの変化が、仮想空間11において同様に再現され得る。
When the
仮想カメラ14には、HMD120の場合と同様に、uvw視野座標系が規定される。仮想空間11における仮想カメラ14のuvw視野座標系は、現実空間(実座標系)におけるHMD120のuvw視野座標系に連動するように規定されている。したがって、HMD120の傾きが変化すると、それに応じて、仮想カメラ14の傾きも変化する。仮想カメラ14は、HMD120を装着したユーザ5の現実空間における移動に連動して、仮想空間11において移動することもできる。
The uvw visual field coordinate system is defined for the
コンピュータ200のプロセッサ210は、仮想カメラ14の位置と傾き(基準視線16)とに基づいて、仮想空間11における視界領域15を規定する。視界領域15は、仮想空間11のうち、HMD120を装着したユーザ5が視認する領域に対応する。つまり、仮想カメラ14の位置は、仮想空間11におけるユーザ5の視点と言える。
The
注視センサ140によって検出されるユーザ5の視線は、ユーザ5が物体を視認する際の視点座標系における方向である。HMD120のuvw視野座標系は、ユーザ5がモニタ130を視認する際の視点座標系に等しい。仮想カメラ14のuvw視野座標系は、HMD120のuvw視野座標系に連動している。したがって、ある局面に従うHMDシステム100は、注視センサ140によって検出されたユーザ5の視線を、仮想カメラ14のuvw視野座標系におけるユーザ5の視線とみなすことができる。
The line of sight of the
[ユーザの視線]
図5を参照して、ユーザ5の視線の決定について説明する。図5は、ある実施の形態に従うHMD120を装着するユーザ5の頭部を上から表した図である。
[User's line of sight]
The determination of the line of sight of the
ある局面において、注視センサ140は、ユーザ5の右目および左目の各視線を検出する。ある局面において、ユーザ5が近くを見ている場合、注視センサ140は、視線R1およびL1を検出する。別の局面において、ユーザ5が遠くを見ている場合、注視センサ140は、視線R2およびL2を検出する。この場合、ロール軸wに対して視線R2およびL2が成す角度は、ロール軸wに対して視線R1およびL1が成す角度よりも小さい。注視センサ140は、検出結果をコンピュータ200に送信する。
In an aspect, the
コンピュータ200が、視線の検出結果として、視線R1およびL1の検出値を注視センサ140から受信した場合には、その検出値に基づいて、視線R1およびL1の交点である注視点N1を特定する。一方、コンピュータ200は、視線R2およびL2の検出値を注視センサ140から受信した場合には、視線R2およびL2の交点を注視点として特定する。コンピュータ200は、特定した注視点N1の位置に基づき、ユーザ5の視線N0を特定する。コンピュータ200は、例えば、ユーザ5の右目Rと左目Lとを結ぶ直線の中点と、注視点N1とを通る直線の延びる方向を、視線N0として検出する。視線N0は、ユーザ5が両目により実際に視線を向けている方向である。視線N0は、視界領域15に対してユーザ5が実際に視線を向けている方向に相当する。
When the
別の局面において、HMDシステム100は、テレビジョン放送受信チューナを備えてもよい。このような構成によれば、HMDシステム100は、仮想空間11においてテレビ番組を表示することができる。
In another aspect, the
さらに別の局面において、HMDシステム100は、インターネットに接続するための通信回路、あるいは、電話回線に接続するための通話機能を備えていてもよい。
In still another aspect, the
[視界領域]
図6および図7を参照して、視界領域15について説明する。図6は、仮想空間11において視界領域15をX方向から見たYZ断面を表す図である。図7は、仮想空間11において視界領域15をY方向から見たXZ断面を表す図である。
[Field of view]
The
図6に示されるように、YZ断面における視界領域15は、領域18を含む。領域18は、仮想カメラ14の位置と基準視線16と仮想空間11のYZ断面とによって定義される。プロセッサ210は、仮想空間における基準視線16を中心として極角αを含む範囲を、領域18として規定する。
As shown in FIG. 6, the
図7に示されるように、XZ断面における視界領域15は、領域19を含む。領域19は、仮想カメラ14の位置と基準視線16と仮想空間11のXZ断面とによって定義される。プロセッサ210は、仮想空間11における基準視線16を中心とした方位角βを含む範囲を、領域19として規定する。極角αおよびβは、仮想カメラ14の位置と仮想カメラ14の傾き(向き)とに応じて定まる。
As shown in FIG. 7, the
ある局面において、HMDシステム100は、コンピュータ200からの信号に基づいて、視界画像17をモニタ130に表示させることにより、ユーザ5に仮想空間11における視界を提供する。視界画像17は、パノラマ画像13のうち視界領域15に対応する部分に相当する画像である。ユーザ5が、頭に装着したHMD120を動かすと、その動きに連動して仮想カメラ14も動く。その結果、仮想空間11における視界領域15の位置が変化する。これにより、モニタ130に表示される視界画像17は、パノラマ画像13のうち、仮想空間11においてユーザ5が向いた方向の視界領域15に重畳する画像に更新される。ユーザ5は、仮想空間11における所望の方向を視認することができる。
In one aspect, the
このように、仮想カメラ14の傾きは仮想空間11におけるユーザ5の視線(基準視線16)に相当し、仮想カメラ14が配置される位置は、仮想空間11におけるユーザ5の視点に相当する。したがって、仮想カメラ14の位置または傾きを変更することにより、モニタ130に表示される画像が更新され、ユーザ5の視界が移動される。
Thus, the inclination of the
ユーザ5は、HMD120を装着している間、現実世界を視認することなく、仮想空間11に展開されるパノラマ画像13のみを視認できる。そのため、HMDシステム100は、仮想空間11への高い没入感覚をユーザ5に与えることができる。
While wearing the
ある局面において、プロセッサ210は、HMD120を装着したユーザ5の現実空間における移動に連動して、仮想空間11において仮想カメラ14を移動し得る。この場合、プロセッサ210は、仮想空間11における仮想カメラ14の位置および傾きに基づいて、HMD120のモニタ130に投影される画像領域(視界領域15)を特定する。
In an aspect, the
ある局面において、仮想カメラ14は、2つの仮想カメラ、すなわち、右目用の画像を提供するための仮想カメラと、左目用の画像を提供するための仮想カメラとを含み得る。ユーザ5が3次元の仮想空間11を認識できるように、適切な視差が、2つの仮想カメラに設定される。別の局面において、仮想カメラ14を1つの仮想カメラにより実現してもよい。この場合、1つの仮想カメラにより得られた画像から、右目用の画像と左目用の画像とを生成するようにしてもよい。本実施の形態においては、仮想カメラ14が2つの仮想カメラを含み、2つの仮想カメラのロール軸が合成されることによって生成されるロール軸(w)がHMD120のロール軸(w)に適合されるように構成されているものとして、本開示に係る技術思想を例示する。
In one aspect,
[コントローラ]
図8を参照して、コントローラ300の一例について説明する。図8は、ある実施の形態に従うコントローラ300の概略構成を表す図である。
[controller]
An example of the
図8に示されるように、ある局面において、コントローラ300は、右コントローラ300Rと図示せぬ左コントローラとを含み得る。右コントローラ300Rは、ユーザ5の右手で操作される。左コントローラは、ユーザ5の左手で操作される。ある局面において、右コントローラ300Rと左コントローラとは、別個の装置として対称に構成される。したがって、ユーザ5は、右コントローラ300Rを把持した右手と、左コントローラを把持した左手とをそれぞれ自由に動かすことができる。別の局面において、コントローラ300は両手の操作を受け付ける一体型のコントローラであってもよい。以下、右コントローラ300Rについて説明する。
As shown in FIG. 8, in one aspect, the
右コントローラ300Rは、グリップ310と、フレーム320と、天面330とを備える。グリップ310は、ユーザ5の右手によって把持されるように構成されている。たとえば、グリップ310は、ユーザ5の右手の掌と3本の指(中指、薬指、小指)とによって保持され得る。
The
グリップ310は、ボタン340,350と、モーションセンサ420とを含む。ボタン340は、グリップ310の側面に配置され、右手の中指による操作を受け付ける。ボタン350は、グリップ310の前面に配置され、右手の人差し指による操作を受け付ける。ある局面において、ボタン340,350は、トリガー式のボタンとして構成される。モーションセンサ420は、グリップ310の筐体に内蔵されている。ユーザ5の動作がカメラその他の装置によってユーザ5の周りから検出可能である場合には、グリップ310は、モーションセンサ420を備えなくてもよい。
The
フレーム320は、その円周方向に沿って配置された複数の赤外線LED360を含む。赤外線LED360は、コントローラ300を使用するプログラムの実行中に、当該プログラムの進行に合わせて赤外線を発光する。赤外線LED360から発せられた赤外線は、右コントローラ300Rと左コントローラとの各位置や姿勢(傾き、向き)を検出するために使用され得る。図8に示される例では、二列に配置された赤外線LED360が示されているが、配列の数は図8に示されるものに限られない。一列あるいは3列以上の配列が使用されてもよい。
The
天面330は、ボタン370,380と、アナログスティック390とを備える。ボタン370,380は、プッシュ式ボタンとして構成される。ボタン370,380は、ユーザ5の右手の親指による操作を受け付ける。アナログスティック390は、ある局面において、初期位置(ニュートラルの位置)から360度任意の方向への操作を受け付ける。当該操作は、たとえば、仮想空11に配置されるオブジェクトを移動するための操作を含む。
The
ある局面において、右コントローラ300Rおよび左コントローラは、赤外線LED360その他の部材を駆動するための電池を含む。電池は、充電式、ボタン型、乾電池型などを含むが、これらに限定されない。別の局面において、右コントローラ300Rと左コントローラは、たとえば、コンピュータ200のUSBインターフェースに接続され得る。この場合、右コントローラ300Rおよび左コントローラは、電池を必要としない。
In one aspect, the
[サーバのハードウェア構成]
図9を参照して、本実施の形態に係るサーバ10について説明する。図9は、ある実施の形態に従うサーバ600のハードウェア構成の一例を表すブロック図である。サーバ600は、主たる構成要素として、プロセッサ610と、メモリ620と、ストレージ630と、入出力インターフェイス640と、通信インターフェイス650とを備える。各構成要素は、それぞれ、バス660に接続されている。
[Server hardware configuration]
The server 10 according to the present embodiment will be described with reference to FIG. FIG. 9 is a block diagram showing an example of a hardware configuration of
プロセッサ610は、サーバ600に与えられる信号に基づいて、あるいは、予め定められた条件が成立したことに基づいて、メモリ620またはストレージ630に格納されているプログラムに含まれる一連の命令を実行する。ある局面において、プロセッサ610は、CPU)、GPU、MPU、FPGAその他のデバイスとして実現される。
メモリ620は、プログラムおよびデータを一時的に保存する。プログラムは、例えば、ストレージ630からロードされる。データは、サーバ600に入力されたデータと、プロセッサ610によって生成されたデータとを含む。ある局面において、メモリ620は、RAMその他の揮発メモリとして実現される。
The
ストレージ630は、プログラムおよびデータを永続的に保持する。ストレージ630は、例えば、ROM、ハードディスク装置、フラッシュメモリ、その他の不揮発記憶装置として実現される。ストレージ630に格納されるプログラムは、HMDシステム100において仮想空間を提供するためのプログラム、シミュレーションプログラム、ゲームプログラム、ユーザ認証プログラム、コンピュータ200との通信を実現するためのプログラムを含んでもよい。ストレージ630に格納されるデータは、仮想空間を規定するためのデータおよびオブジェクト等を含んでもよい。
The
別の局面において、ストレージ630は、メモリカードのように着脱可能な記憶装置として実現されてもよい。さらに別の局面において、サーバ600に内蔵されたストレージ630の代わりに、外部の記憶装置に保存されているプログラムおよびデータを使用する構成が使用されてもよい。このような構成によれば、例えば、アミューズメント施設のように複数のHMDシステム100が使用される場面において、プログラムやデータの更新を一括して行なうことが可能になる。
In another aspect, the
入出力インターフェイス640は、入出力機器との間で信号を通信する。ある局面において、入出力インターフェイス640は、USB、DVI、HDMIその他の端子を用いて実現される。入出力インターフェイス640は上述のものに限られない。
The input/
通信インターフェイス650は、ネットワーク2に接続されて、ネットワーク2に接続されているコンピュータ200と通信する。ある局面において、通信インターフェイス650は、例えば、LANその他の有線通信インターフェイス、あるいは、WiFi、Bluetooth、NFCその他の無線通信インターフェイスとして実現される。通信インターフェイス650は上述のものに限られない。
The
ある局面において、プロセッサ610は、ストレージ630にアクセスし、ストレージ630に格納されている1つ以上のプログラムをメモリ620にロードし、当該プログラムに含まれる一連の命令を実行する。当該1つ以上のプログラムは、サーバ610のオペレーティングシステム、仮想空間を提供するためのアプリケーションプログラム、仮想空間で実行可能なゲームソフトウェア等を含み得る。プロセッサ610は、入出力インターフェイス640を介して、仮想空間を提供するための信号をコンピュータ200に送ってもよい。
In an aspect, the
[HMDの制御装置]
図10を参照して、HMD21の制御装置について説明する。ある実施の形態において、制御装置は周知の構成を有するコンピュータ200によって実現される。図10は、ある実施の形態に従うコンピュータ200をモジュール構成として表わすブロック図である。
[HMD controller]
The control device of the HMD 21 will be described with reference to FIG. 10. In one embodiment, the control device is realized by
図10に示されるように、コンピュータ200は、コントロールモジュール510と、レンダリングモジュール520と、メモリモジュール530と、通信制御モジュール540とを備える。ある局面において、コントロールモジュール510とレンダリングモジュール520とは、プロセッサ210によって実現される。別の局面において、複数のプロセッサ210がコントロールモジュール510とレンダリングモジュール520として作動してもよい。メモリモジュール530は、メモリ220またはストレージ230によって実現される。通信制御モジュール540は、通信インターフェイス250によって実現される。
As shown in FIG. 10, the
コントロールモジュール510は、ユーザ5に提供される仮想空間11を制御する。コントロールモジュール510は、仮想空間11を表す仮想空間データを用いて、HMDシステム100における仮想空間11を規定する。仮想空間データは、例えば、メモリモジュール530に記憶されている。コントロールモジュール510が、仮想空間データを生成したり、サーバ600などから仮想空間データを取得するようにしたりしてもよい。
The
コントロールモジュール510は、オブジェクトを表すオブジェクトデータを用いて、仮想空間11にオブジェクトを配置する。オブジェクトデータは、例えば、メモリモジュール530に記憶されている。コントロールモジュール510が、オブジェクトデータを生成したり、サーバ600などからオブジェクトデータを取得するようにしたりしてもよい。オブジェクトは、例えば、ユーザ5の分身であるアバターオブジェクト、キャラクタオブジェクト、コントローラ300によって操作される仮想手などの操作オブジェクト、ゲームのストーリーの進行に従って配置される森、山その他を含む風景、街並み、動物等を含み得る。
The
コントロールモジュール510は、ネットワーク2を介して接続される他のコンピュータ200のユーザ5のアバターオブジェクトを仮想空間11に配置する。ある局面において、コントロールモジュール510は、ユーザ5のアバターオブジェクトを仮想空間11に配置する。ある局面において、コントロールモジュール510は、ユーザ5を含む画像に基づいて、ユーザ5を模したアバターオブジェクトを仮想空間11に配置する。別の局面において、コントロールモジュール510は、複数種類のアバターオブジェクト(例えば、動物を模したオブジェクトや、デフォルメされた人のオブジェクト)の中からユーザ5による選択を受け付けたアバターオブジェクトを仮想空間2に配置する。
The
コントロールモジュール510は、HMDセンサ410の出力に基づいてHMD120の傾きを特定する。別の局面において、コントロールモジュール510は、モーションセンサとして機能するセンサ190の出力に基づいてHMD120の傾きを特定する。コントロールモジュール510は、第1カメラ150および第2カメラ160が生成するユーザ5の顔の画像から、ユーザ5の顔を構成する器官(例えば、口,目,眉)を検出する。コントロールモジュール510は、検出した各器官の動き(形状)を検出する。
The
コントロールモジュール510は、注視センサ140からの信号に基づいて、ユーザ5の仮想空間11における視線を検出する。コントロールモジュール510は、検出したユーザ5の視線と仮想空間11の天球とが交わる視点位置(XYZ座標系における座標値)を検出する。より具体的には、コントロールモジュール510は、uvw座標系で規定されるユーザ5の視線と、仮想カメラ14の位置および傾きとに基づいて、視点位置を検出する。コントロールモジュール510は、検出した視点位置をサーバ600に送信する。別の局面において、コントロールモジュール510は、ユーザ5の視線を表す視線情報をサーバ600に送信するように構成されてもよい。係る場合、サーバ600が受信した視線情報に基づいて視点位置を算出し得る。
The
コントロールモジュール510は、HMDセンサ410が検出するHMD120の動きをアバターオブジェクトに反映する。例えば、コントロールモジュール510は、HMD120が傾いたことを検知して、アバターオブジェクトを傾けて配置する。コントロールモジュール510は、検出した顔器官の動作を、仮想空間11に配置されるアバターオブジェクトの顔に反映させる。コントロールモジュール510は、サーバ600から他のユーザ5の視線情報を受信し、当該他のユーザ5のアバターオブジェクトの視線に反映させる。ある局面において、コントロールモジュール510は、コントローラ300の動きをアバターオブジェクトや操作オブジェクトに反映する。この場合、コントローラ300は、コントローラ300の動きを検知するためのモーションセンサ、加速度センサ、または複数の発光素子(例えば、赤外線LED)などを備える。
The
コントロールモジュール510は、仮想空間11においてユーザ5の操作を受け付けるための操作オブジェクトを仮想空間11に配置する。ユーザ5は、操作オブジェクトを操作することにより、例えば、仮想空間11に配置されるオブジェクトを操作する。ある局面において、操作オブジェクトは、例えば、ユーザ5の手に相当する仮想手である手オブジェクト等を含み得る。ある局面において、コントロールモジュール510は、モーションセンサ420の出力に基づいて現実空間におけるユーザ5の手の動きに連動するように仮想空間11において手オブジェクトを動かす。ある局面において、操作オブジェクトは、アバターオブジェクトの手の部分に相当し得る。
The
コントロールモジュール510は、仮想空間11に配置されるオブジェクトのそれぞれが、他のオブジェクトと衝突した場合に、当該衝突を検出する。コントロールモジュール510は、例えば、あるオブジェクトのコリジョンエリアと、別のオブジェクトのコリジョンエリアとが触れたタイミングを検出することができ、当該検出がされたときに、予め定められた処理を行なう。コントロールモジュール510は、オブジェクトとオブジェクトとが触れている状態から離れたタイミングを検出することができ、当該検出がされたときに、予め定められた処理を行なう。コントロールモジュール510は、オブジェクトとオブジェクトとが触れている状態であることを検出することができる。例えば、コントロールモジュール510は、操作オブジェクトと、他のオブジェクトとが触れたときに、これら操作オブジェクトと他のオブジェクトとが触れたことを検出して、予め定められた処理を行なう。
When each of the objects arranged in the
ある局面において、コントロールモジュール510は、HMD120のモニタ130における画像表示を制御する。例えば、コントロールモジュール510は、仮想空間11に仮想カメラ14を配置する。コントロールモジュール510は、仮想空間11における仮想カメラ14の位置と、仮想カメラ14の傾き(向き)を制御する。コントロールモジュール510は、HMD120を装着したユーザ5の頭の傾きと、仮想カメラ14の位置に応じて、視界領域15を規定する。レンダリングモジュール510は、決定された視界領域15に基づいて、モニタ130に表示される視界画像17を生成する。レンダリングモジュール520により生成された視界画像17は、通信制御モジュール540によってHMD120に出力される。
In one aspect,
コントロールモジュール510は、HMD120から、ユーザ5のマイク170を用いた発話を検出すると、当該発話に対応する音声データの送信対象のコンピュータ200を特定する。音声データは、コントロールモジュール510によって特定されたコンピュータ200に送信される。コントロールモジュール510は、ネットワーク2を介して他のユーザのコンピュータ200から音声データを受信すると、当該音声データに対応する音声(発話)をスピーカ180から出力する。
When the
メモリモジュール530は、コンピュータ200が仮想空間11をユーザ5に提供するために使用されるデータを保持している。ある局面において、メモリモジュール540は、空間情報と、オブジェクト情報と、ユーザ情報とを保持している。
The
空間情報は、仮想空間11を提供するために規定された1つ以上のテンプレートを保持している。
The spatial information holds one or more templates defined to provide the
オブジェクト情報は、仮想空間11を構成する複数のパノラマ画像13、仮想空間11にオブジェクトを配置するためのオブジェクトデータを含む。パノラマ画像13は、静止画像および動画像を含み得る。パノラマ画像13は、非現実空間の画像と現実空間の画像とを含み得る。非現実空間の画像としては、例えば、コンピュータグラフィックスで生成された画像が挙げられる。
The object information includes a plurality of
ユーザ情報は、ユーザ5を識別するユーザIDを保持する。ユーザIDは、例えば、ユーザが使用するコンピュータ200に設定されるIP(Internet Protocol)アドレスまたはMAC(Media Access Control)アドレスであり得る。別の局面において、ユーザIDはユーザによって設定され得る。ユーザ情報は、HMDシステム100の制御装置としてコンピュータ200を機能させるためのプログラム等を含む。
The user information holds a user ID that identifies the
メモリモジュール530に格納されているデータおよびプログラムは、HMD120のユーザ5によって入力される。あるいは、プロセッサ210が、当該コンテンツを提供する事業者が運営するコンピュータ(例えば、サーバ600)からプログラムあるいはデータをダウンロードして、ダウンロードされたプログラムあるいはデータをメモリモジュール530に格納する。
The data and programs stored in the
通信制御モジュール540は、ネットワーク2を介して、サーバ600その他の情報通信装置と通信し得る。
The
ある局面において、コントロールモジュール510及びレンダリングモジュール520は、例えば、ユニティテクノロジーズ社によって提供されるUnity(登録商標)を用いて実現され得る。別の局面において、コントロールモジュール510及びレンダリングモジュール520は、各処理を実現する回路素子の組み合わせとしても実現され得る。
In one aspect, the
コンピュータ200における処理は、ハードウェアと、プロセッサ410により実行されるソフトウェアとによって実現される。このようなソフトウェアは、ハードディスクその他のメモリモジュール530に予め格納されている場合がある。ソフトウェアは、CD−ROMその他のコンピュータ読み取り可能な不揮発性のデータ記録媒体に格納されて、プログラム製品として流通している場合もある。あるいは、当該ソフトウェアは、インターネットその他のネットワークに接続されている情報提供事業者によってダウンロード可能なプログラム製品として提供される場合もある。このようなソフトウェアは、光ディスク駆動装置その他のデータ読取装置によってデータ記録媒体から読み取られて、あるいは、通信制御モジュール540を介してサーバ600その他のコンピュータからダウンロードされた後、記憶モジュールに一旦格納される。そのソフトウェアは、プロセッサ210によって記憶モジュールから読み出され、実行可能なプログラムの形式でRAMに格納される。プロセッサ210は、そのプログラムを実行する。
The processing in the
[HMDシステムの制御構造]
図11を参照して、HMDセット110の制御構造について説明する。図11は、ある実施の形態に従うHMDセット110において実行される処理の一部を表すシーケンスチャートである。
[Control structure of HMD system]
The control structure of the HMD set 110 will be described with reference to FIG. 11. FIG. 11 is a sequence chart showing a part of the processing executed in HMD set 110 according to an embodiment.
図11に示されるように、ステップS1110にて、コンピュータ200のプロセッサ210は、コントロールモジュール510として、仮想空間データを特定し、仮想空間11を定義する。
As shown in FIG. 11, in step S1110, the
ステップS1120にて、プロセッサ210は、仮想カメラ14を初期化する。たとえば、プロセッサ210は、メモリのワーク領域において、仮想カメラ14を仮想空間11において予め規定された中心点12に配置し、仮想カメラ14の視線をユーザ5が向いている方向に向ける。
In step S1120,
ステップS1130にて、プロセッサ210は、レンダリングモジュール520として、初期の視界画像を表示するための視界画像データを生成する。生成された視界画像データは、通信制御モジュール540によってHMD120に出力される。
In step S1130,
ステップS1132にて、HMD120のモニタ130は、コンピュータ200から受信した視界画像データに基づいて、視界画像を表示する。HMD120を装着したユーザ5は、視界画像を視認すると仮想空間11を認識し得る。
In step S1132, monitor 130 of
ステップS1134にて、HMDセンサ410は、HMD120から発信される複数の赤外線光に基づいて、HMD120の位置と傾きを検知する。検知結果は、動き検知データとして、コンピュータ200に出力される。
In step S1134,
ステップS1140にて、プロセッサ210は、HMD120の動き検知データに含まれる位置と傾きとに基づいて、HMD120を装着したユーザ5の視界方向を特定する。
In step S1140,
ステップS1150にて、プロセッサ210は、アプリケーションプログラムを実行し、アプリケーションプログラムに含まれる命令に基づいて、仮想空間11にオブジェクトを配置する。
In step S1150,
ステップS1160にて、コントローラ300は、モーションセンサ420から出力される信号に基づいて、ユーザ5の操作を検出し、その検出された操作を表す検出データをコンピュータ200に出力する。別の局面において、ユーザ5によるコントローラ300の操作は、ユーザ5の周囲に配置されたカメラからの画像に基づいて検出されてもよい。
In step S1160,
ステップS1170にて、プロセッサ210は、コントローラ300から取得した検出データに基づいて、ユーザ5によるコントローラ300の操作を検出する。
In step S1170,
ステップS1180にて、プロセッサ210は、ユーザ5によるコントローラ300の操作に基づく視界画像データを生成する。生成された視界画像データは、通信制御モジュール540によってHMD120に出力される。
In step S1180,
ステップS1190にて、HMD120は、受信した視界画像データに基づいて視界画像を更新し、更新後の視界画像をモニタ130に表示する。
In step S1190,
[アバターオブジェクト]
図12(A)、(B)を参照して、本実施の形態に従うアバターオブジェクトについて説明する。以下、HMDセット110A,110Bの各ユーザ5のアバターオブジェクトを説明する図である。以下、HMDセット110Aのユーザをユーザ5A、HMDセット110Bのユーザをユーザ5B、HMDセット110Cのユーザをユーザ5C、HMDセット110Dのユーザをユーザ5Dと表す。HMDセット110Aに関する各構成要素の参照符号にAが付され、HMDセット110Bに関する各構成要素の参照符号にBが付され、HMDセット110Cに関する各構成要素の参照符号にCが付され、HMDセット110Dに関する各構成要素の参照符号にDが付される。例えば、HMD120Aは、HMDセット110Aに含まれる。
[Avatar object]
An avatar object according to the present embodiment will be described with reference to FIGS. 12(A) and 12(B). Hereinafter, it is a figure explaining the avatar object of each
図12(A)は、ネットワーク2において、各HMD120がユーザ5に仮想空間11を提供する状況を表す模式図である。コンピュータ200A〜200Dは、HMD120A〜120Dを介して、ユーザ5A〜5Dに、仮想空間11A〜11Dをそれぞれ提供する。図12(A)に示される例において、仮想空間11Aおよび仮想空間11Bは同じデータによって構成されている。換言すれば、コンピュータ200Aとコンピュータ200Bとは同じ仮想空間を共有していることになる。仮想空間11Aおよび仮想空間11Bには、ユーザ5Aのアバターオブジェクト6Aと、ユーザ5Bのアバターオブジェクト6Bとが存在する。仮想空間11Aにおけるアバターオブジェクト6Aおよび仮想空間11Bにおけるアバターオブジェクト6BがそれぞれHMD120を装着しているが、これは説明を分かりやすくするためのものであって、実際にはこれらのオブジェクトはHMD120を装着していない。
FIG. 12A is a schematic diagram showing a situation in which each
ある局面において、プロセッサ210Aは、ユーザ5Aの視界画像17Aを撮影する仮想カメラ14Aを、アバターオブジェクト6Aの目の位置に配置し得る。
In an aspect, the processor 210A may arrange the virtual camera 14A that captures the
図12(B)は、図12(A)におけるユーザ5Aの視界画像17Aを示す図である。視界画像17Aは、HMD120Aのモニタ130Aに表示される画像である。この視界画像17Aは、仮想カメラ14Aにより生成された画像である。視界画像17Aには、ユーザ5Bのアバターオブジェクト6Bが表示されている。特に図示はしていないが、ユーザ5Bの視界画像にも同様に、ユーザ5Aのアバターオブジェクト6Aが表示されている。
FIG. 12B is a diagram showing a
図12(B)の状態において、ユーザ5Aは仮想空間11Aを介してユーザ5Bと対話による通信(コミュニケーション)を図ることができる。より具体的には、マイク170Aにより取得されたユーザ5Aの音声は、サーバ600を介してユーザ5BのHMD17120Bに送信され、HMD120Bに設けられたスピーカ180Bから出力される。ユーザ5Bの音声は、サーバ600を介してユーザ5AのHMD120Aに送信され、HMD120Aに設けられたスピーカ180Aから出力される。
In the state of FIG. 12B, the user 5A can communicate with the
ユーザ5Bの動作(HMD120Bの動作およびコントローラ300Bの動作)は、プロセッサ210Aにより仮想空間11Aに配置されるアバターオブジェクト6Bに反映される。これにより、ユーザ5Aは、ユーザ5Bの動作を、アバターオブジェクト6Bを通じて認識できる。
The action of the
図13は、本実施の形態に従うHMDシステム100において実行される処理の一部を表すシーケンスチャートである。図13においては、HMDセット110Dを図示していないが、HMDセット110Dについても、HMDセット110A、110B、110Cと同様に動作する。以下の説明でも、HMDセット110Aに関する各構成要素の参照符号にAが付され、HMDセット110Bに関する各構成要素の参照符号にBが付され、HMDセット110Cに関する各構成要素の参照符号にCが付され、HMDセット110Dに関する各構成要素の参照符号にDが付されるものとする。
FIG. 13 is a sequence chart showing a part of the processing executed in
ステップS1310Aにおいて、HMDセット110Aにおけるプロセッサ210Aは、仮想空間11Aにおけるアバターオブジェクト6Aの動作を決定するためのアバター情報を取得する。このアバター情報は、例えば、動き情報、フェイストラッキングデータ、および音声データ等のアバターに関する情報を含む。動き情報は、HMD120Aの位置および傾きの時間的変化を示す情報や、モーションセンサ420A等により検出されたユーザ5Aの手の動きを示す情報などを含む。フェイストラッキングデータは、ユーザ5Aの顔の各パーツの位置および大きさを特定するデータが挙げられる。フェイストラッキングデータは、ユーザ5Aの顔を構成する各器官の動きを示すデータや視線データが挙げられる。音声データは、HMD120Aのマイク170Aによって取得されたユーザ5Aの音声を示すデータが挙げられる。アバター情報には、アバターオブジェクト6A、あるいはアバターオブジェクト6Aに関連付けられるユーザ5Aを特定する情報や、アバターオブジェクト6Aが存在する仮想空間11Aを特定する情報等が含まれてもよい。アバターオブジェクト6Aやユーザ5Aを特定する情報としては、ユーザIDが挙げられる。アバターオブジェクト6Aが存在する仮想空間11Aを特定する情報としては、ルームIDが挙げられる。プロセッサ210Aは、上述のように取得されたアバター情報を、ネットワーク2を介してサーバ600に送信する。
In step S1310A, the processor 210A in the HMD set 110A acquires avatar information for determining the action of the
ステップS1310Bにおいて、HMDセット110Bにおけるプロセッサ210Bは、ステップS1310Aにおける処理と同様に、仮想空間11Bにおけるアバターオブジェクト6Bの動作を決定するためのアバター情報を取得し、サーバ600に送信する。同様に、ステップS1310Cにおいて、HMDセット110Bにおけるプロセッサ210Bは、仮想空間11Cにおけるアバターオブジェクト6Cの動作を決定するためのアバター情報を取得し、サーバ600に送信する。
In step S1310B, the processor 210B in the HMD set 110B acquires avatar information for determining the action of the
ステップS1320において、サーバ600は、HMDセット110A、HMDセット110B、およびHMDセット110Cのそれぞれから受信したプレイヤ情報を一旦記憶する。サーバ600は、各アバター情報に含まれるユーザIDおよびルームID等に基づいて、共通の仮想空間11に関連付けられた全ユーザ(この例では、ユーザ5A〜5C)のアバター情報を統合する。そして、サーバ600は、予め定められたタイミングで、統合したアバター情報を当該仮想空間11に関連付けられた全ユーザに送信する。これにより、同期処理が実行される。このような同期処理により、HMDセット110A、HMDセット110B、およびHMD11020Cは、互いのアバター情報をほぼ同じタイミングで共有することができる。
In step S1320,
続いて、サーバ600から各HMDセット110A〜110Cに送信されたアバター情報に基づいて、各HMDセット110A〜110Cは、ステップS1330A〜S1330Cの処理を実行する。ステップS1330Aの処理は、図11におけるステップS1180の処理に相当する。
Then, each HMD set 110A-110C performs the process of step S1330A-S1330C based on the avatar information transmitted from the
ステップS1330Aにおいて、HMDセット110Aにおけるプロセッサ210Aは、仮想空間11Aにおける他のユーザ5B,5Cのアバターオブジェクト6B、アバターオブジェクト6Cの情報を更新する。具体的には、プロセッサ210Aは、HMDセット110Bから送信されたアバター情報に含まれる動き情報に基づいて、仮想空間11におけるアバターオブジェクト6Bの位置および向き等を更新する。例えば、プロセッサ210Aは、メモリモジュール540に格納されたオブジェクト情報に含まれるアバターオブジェクト6Bの情報(位置および向き等)を更新する。同様に、プロセッサ210Aは、HMDセット110Cから送信されたアバター情報に含まれる動き情報に基づいて、仮想空間11におけるアバターオブジェクト6Cの情報(位置および向き等)を更新する。
In step S1330A, the processor 210A in the HMD set 110A updates the information of the avatar objects 6B and 6C of the
ステップS1330Bにおいて、HMDセット110Bにおけるプロセッサ210Bは、ステップS1330Aにおける処理と同様に、仮想空間11Bにおけるユーザ5A,5Cのアバターオブジェクト6A,6Cの情報を更新する。同様に、ステップS1330Cにおいて、HMDセット110Cにおけるプロセッサ210Cは、仮想空間11Cにおけるユーザ5A,5Bのアバターオブジェクト6A,6Bの情報を更新する。
In step S1330B, the processor 210B in the HMD set 110B updates the information of the avatar objects 6A and 6C of the users 5A and 5C in the
[コンピュータ200のモジュールの詳細構成]
図14を参照して、コンピュータ200のモジュール構成の詳細について説明する。図14は、ある実施の形態に従うコンピュータ200のモジュールの詳細構成を表わすブロック図である。図14に示されるように、コントロールモジュール510は、仮想オブジェクト生成モジュール1421、仮想カメラ制御モジュール1422、操作オブジェクト制御モジュール1423、アバターオブジェクト制御モジュール1424、動き検出モジュール1425、衝突検出モジュール1426、および仮想オブジェクト制御モジュール1427を備えている。
[Detailed Configuration of Modules of Computer 200]
The module configuration of the
仮想オブジェクト生成モジュール1421は、各種の仮想オブジェクトを仮想空間11に生成する。ある局面において、仮想オブジェクトは、例えば、ゲームのストーリーの進行に従って配置される森、山その他を含む風景、動物等を含み得る。ある局面において、仮想オブジェクトは、アバターオブジェクト、操作オブジェクト、およびステージオブジェクト、UI(User Interface)オブジェクトを含み得る。
The virtual
仮想カメラ制御モジュール1422は、仮想空間11における仮想カメラ14の挙動を制御する。仮想カメラ制御モジュール1422は、例えば、仮想空間11における仮想カメラ14の配置位置と、仮想カメラ14の向き(傾き)とを制御する。
The virtual
操作オブジェクト制御モジュール1423は、仮想空間11においてユーザ5の操作を受け付けるための操作オブジェクトを制御する。ユーザ5は、操作オブジェクトを操作することによって、例えば、仮想空間11に配置される仮想オブジェクトを操作する。ある局面において、操作オブジェクトは、例えば、HMD120を装着したユーザ5の手に相当する手オブジェクト(仮想手)等を含み得る。ある局面において、操作オブジェクトは、後述するアバターオブジェクトの手の部分に相当し得る。
The operation
アバターオブジェクト制御モジュール1424は、HMDセンサ410が検出するHMD120の動きをアバターオブジェクトに反映する。例えば、アバターオブジェクト制御モジュール1424は、HMD120が傾いたことを検知して、アバターオブジェクトを傾けて配置するためのデータを生成する。ある局面において、アバターオブジェクト制御モジュール1424は、コントローラ300の動きをアバターオブジェクトに反映する。この場合、コントローラ300は、コントローラ300の動きを検知するためのモーションセンサ、加速度センサ、または複数の発光素子(例えば、赤外線LED)などを備える。例えば、アバターオブジェクト制御モジュール1424は、動き検出モジュール1425が検出した手の動きを、仮想空間11に配置される操作オブジェクト(アバターオブジェクトの手の一部である仮想手)の動きに反映させる。アバターオブジェクト制御モジュール1424は、動き検出モジュール1425が検出した顔器官の動作を、仮想空間11に配置されるアバターオブジェクトの顔に反映させる。つまり、アバターオブジェクト制御モジュール1424は、ユーザ5の顔の動作をアバターオブジェクトに反映する。
The avatar
動き検出モジュール1425は、ユーザ5の動きを検出する。動き検出モジュール1425は、例えば、コントローラ300の出力に応じて、ユーザ5の手の動きを検出する。動き検出モジュール1425は、例えば、ユーザ5の身体に装着されるモーションセンサの出力に応じて、ユーザ5の身体の動きを検出する。動き検出モジュール1425は、ユーザ5の顔器官の動作を検出することもできる。
The
衝突検出モジュール1426は、仮想空間11に配置される仮想オブジェクトのそれぞれが、他の仮想オブジェクトと衝突した場合に、当該衝突を検出する。衝突検出モジュール1426は、例えば、ある仮想オブジェクトと、別の仮想オブジェクトとが触れたタイミングを検出することができる。衝突検出モジュール1426は、ある仮想オブジェクトと他の仮想オブジェクトとが触れている状態から離れたタイミングを検出することができる。衝突検出モジュール1426は、ある仮想オブジェクトと他の仮想オブジェクトとが触れている状態であることを検出することもできる。衝突検出モジュール1426は、例えば、操作オブジェクトと、他の仮想オブジェクトとが触れたときに、これら操作オブジェクトと他のオブジェクトとが触れたことを検出する。衝突検出モジュール1426は、これらの検出結果に基づいて、予め定められた処理を実行する。
The
仮想オブジェクト制御モジュール1427は、仮想空間11において、アバターオブジェクトを除く仮想オブジェクトの挙動を制御する。一例として、仮想オブジェクト制御モジュール1427は、仮想オブジェクトを変形させる。別の例として、仮想オブジェクト制御モジュール1427は、仮想オブジェクトの配置位置を変更する。別の例として、仮想オブジェクト制御モジュール1427は、仮想オブジェクトを移動させる。
The virtual
さらに別の例として、仮想オブジェクト制御モジュール1427は、衝突検出モジュール1426によって仮想オブジェクトと操作オブジェクト(仮想手)とが触れていることが検出された状態において、コントローラ300が有する所定ボタンの押下が検出されると、当該仮想オブジェクトと操作オブジェクトとを関連付ける。このとき、アバターオブジェクト制御モジュール1424は、操作オブジェクト(仮想手)に、仮想オブジェクトを対象とする動作をさせるよう制御してもよい。対象とする動作の一例としては、例えば、持つ、握る、掴む、手の平に乗せる、つまむ等の動作であってもよい。
As still another example, the virtual
また、仮想オブジェクト制御モジュール1427は、仮想オブジェクトと操作オブジェクトとが関連付けられた状態において、動き検出モジュール1425によってユーザ5の手の動きが検出されると、操作オブジェクトの移動とともに、当該仮想オブジェクトを移動させるよう制御する。
In addition, when the
また、仮想オブジェクト制御モジュール1427は、仮想オブジェクトと操作オブジェクトとが関連付けられた状態において、コントローラ300が有する所定ボタンの押下が検出されると、当該仮想オブジェクトと操作オブジェクトとを関連付けを解除する。このとき、アバターオブジェクト制御モジュール1424は、操作オブジェクト(仮想手)に、仮想オブジェクトを放す動作をさせるよう制御してもよい。
Further, the virtual
[ゲームシステムの構成]
図15は、本実施の形態に従うゲームシステム1500の構成の概略を表す図である。ゲームシステム1500は、複数のユーザにゲームを提供するためのシステムである。ゲームシステム1500は、サーバ600と、HMDセット110Bと、ユーザ端末800A,800C,800Dと、ネットワーク2とを含む。HMDセット110Bと、ユーザ端末800A,800C,800Dの各々とは、ネットワーク2を介してサーバ600と通信可能に構成される。以下、ユーザ端末800A,800C,800Dを総称して、ユーザ端末800とも言う。ゲームシステム1500を構成するユーザ端末800の数は、3つに限られず、2つ以下でも、4つ以上でもよい。
[Game system configuration]
FIG. 15 is a diagram showing a schematic configuration of a
HMDセット110Bは、本発明におけるキャラクタ制御装置の一実施形態を構成する。以降、HMDセット110Bを、キャラクタ制御装置110Bとも記載する。キャラクタ制御装置110Bは、ゲームシステム1500に少なくとも1台設けられている。キャラクタ制御装置110Bは、サーバ600が提供するサービスを利用するユーザ端末800の数に応じて、複数台設けられていてもよい。1台のユーザ端末800に対して、1台のキャラクタ制御装置110Bが設けられていてもよい。複数台のユーザ端末800に対して、1台のキャラクタ制御装置110Bが設けられていてもよい。
The HMD set 110B constitutes an embodiment of the character control device in the present invention. Hereinafter, the HMD set 110B will also be referred to as a
なお、本実施形態では、本発明における第1キャラクタ制御装置及び第2キャラクタ制御装置として、同一のキャラクタ制御装置110Bを適用する例について説明する。
In the present embodiment, an example in which the same
以下、HMDセット110Bのユーザをユーザ5Bと表す。また、ユーザ端末800Aのユーザをユーザ8A、ユーザ端末800Cのユーザをユーザ8C、ユーザ端末800Dのユーザをユーザ8Dと表す。ユーザ8A、8C、8Dを、総称してユーザ8とも記載する。ユーザ端末800Aに関する各構成要素の参照符号にAが付され、HMDセット110Bに関する各構成要素の参照符号にBが付され、ユーザ端末800Cに関する各構成要素の参照符号にCが付され、ユーザ端末800Dに関する各構成要素の参照符号にDが付される。
Hereinafter, a user of the HMD set 110B will be referred to as a
ゲームシステム1500は、ユーザ5Bに関連付けられるアバターオブジェクト6Bが仮想空間11Bにおいて実演する番組を、キャラクタ制御装置110Bから各ユーザ端末800にストリーミング配信するためのシステムである。なお、アバターオブジェクト6Bは、本発明における第1キャラクタ及び第2キャラクタの一例である。仮想空間11Bは、キャラクタ制御装置110B及び複数のユーザ端末800間で共有される。換言すると、仮想空間11A、11C、11Dは、それぞれ、仮想空間11Bに同期する。以降、仮想空間11A、B、C、Dを特に区別する必要がない場合は、単に「仮想空間11」とも記載する。ユーザ5Bは、キャラクタ制御装置110Bにおいてアバターオブジェクト6Bを制御することによって、アバターオブジェクト6Bの番組を進行させる。ユーザ8Aは、配信されるアバターオブジェクト6Bの番組を、ユーザ端末800Aを通じて視聴する。ユーザ8Cは、配信されるアバターオブジェクト6Bの番組を、ユーザ端末800Cを通じて視聴する。ユーザ8Dは、配信されるアバターオブジェクト6Bの番組を、ユーザ端末800Dを通じて視聴する。
The
<ゲームシステム1500を構成する各装置のハードウェア構成>
ゲームシステム1500を構成する各装置のハードウェア構成について説明する。サーバ600(コンピュータ、情報処理装置)は、ワークステーションまたはパーソナルコンピュータ等の汎用コンピュータであってよい。サーバ600のハードウェア構成については、図9を参照して説明した通りである。
<Hardware configuration of each device constituting
The hardware configuration of each device constituting the
キャラクタ制御装置110Bは、サーバ、デスクトップパソコン、ノートパソコン、または、タブレットなどのコンピュータ、および、これらを組み合わせたコンピュータ群であってもよい。キャラクタ制御装置110Bのハードウェア構成については、図2を参照して説明した通りである。ゲームシステム1500を構成する各装置が接続するネットワーク2は、インターネットおよび図示しない無線基地局によって構築される各種移動通信システム等で構成される。この移動通信システムとしては、例えば、所謂3G、4G移動通信システム、LTE(Long Term Evolution)、および所定のアクセスポイントによってインターネットに接続可能な無線ネットワーク(例えばWi-Fi(登録商標))等が挙げられる。
The
図16は、ユーザ端末800のハードウェア構成を示す図である。ユーザ端末800(コンピュータ、情報処理装置)は、スマートフォン、フィーチャーフォン、PDA(Personal Digital Assistant)、またはタブレット型コンピュータ等の携帯端末であってよい。ユーザ端末800は、ゲームプレイに適したゲーム装置であってもよい。ユーザ端末800は図示の通り、プロセッサ810と、メモリ820と、ストレージ830と、通信インターフェース(IF)13と、入出力IF840と、タッチスクリーン870(表示部)と、カメラ860と、測距センサ880とを備える。ユーザ端末800が備えるこれらの構成は、通信バスによって互いに電気的に接続される。なお、ユーザ端末800は、タッチスクリーン870に代えて、または、加えて、ユーザ端末800本体とは別に構成されたディスプレイ(表示部)を接続可能な入出力IF840を備えていてもよい。
FIG. 16 is a diagram showing a hardware configuration of the
また、図16に示すように、ユーザ端末800は、1つ以上のコントローラ1020と通信可能に構成されることとしてもよい。コントローラ1020は、例えば、Bluetooth(登録商標)等の通信規格に従って、ユーザ端末800と通信を確立する。コントローラ1020は、1つ以上のボタン等を有していてもよく、該ボタン等に対するユーザ8の入力操作に基づく出力値をユーザ端末800へ送信する。また、コントローラ1020は、加速度センサ、および、角速度センサ等の各種センサを有していてもよく、該各種センサの出力値をユーザ端末800へ送信する。
Further, as shown in FIG. 16, the
なお、ユーザ端末800がカメラ860および測距センサ880を備えることに代えて、または、加えて、コントローラ1020がカメラ860および測距センサ880を有していてもよい。
Note that instead of or in addition to the
ユーザ端末800は、例えばゲーム開始時に、コントローラ1020を使用するユーザ8に、該ユーザ8の名前またはログインID等のユーザ識別情報を、該コントローラ1020を介して入力させることが望ましい。これにより、ユーザ端末800は、コントローラ1020とユーザ8とを紐付けることが可能となり、受信した出力値の送信元(コントローラ1020)に基づいて、該出力値がどのユーザ8のものであるかを特定することができる。
The
ユーザ端末800が複数のコントローラ1020と通信する場合、各コントローラ1020を各ユーザ8が把持することで、ネットワーク2を介してサーバ600などの他の装置と通信せずに、該1台のユーザ端末800でマルチプレイを実現することができる。また、各ユーザ端末800が無線LAN(Local Area Network)規格等の無線規格により互いに通信接続する(サーバ600を介さずに通信接続する)ことで、複数台のユーザ端末800によりローカルでマルチプレイを実現することもできる。1台のユーザ端末800によりローカルで上述のマルチプレイを実現する場合、ユーザ端末800は、さらに、サーバ600が備える後述する種々の機能の少なくとも一部を備えていてもよい。また、複数のユーザ端末800によりローカルで上述のマルチプレイを実現する場合、複数のユーザ端末800は、サーバ600が備える後述する種々の機能を分散して備えていてもよい。
When the
なお、ローカルで上述のマルチプレイを実現する場合であっても、ユーザ端末800はサーバ600と通信を行ってもよい。例えば、あるゲームにおける成績または勝敗等のプレイ結果を示す情報と、ユーザ識別情報とを対応付けてサーバ600に送信してもよい。
Note that the
また、コントローラ1020は、ユーザ端末800に着脱可能な構成であるとしてもよい。この場合、ユーザ端末800の筐体における少なくともいずれかの面に、コントローラ1020との結合部が設けられていてもよい。該結合部を介して有線によりユーザ端末800とコントローラ1020とが結合している場合は、ユーザ端末800とコントローラ1020とは、有線を介して信号を送受信する。
Moreover, the
図16に示すように、ユーザ端末800は、外部のメモリカード等の記憶媒体1030の装着を、入出力IF840を介して受け付けてもよい。これにより、ユーザ端末800は、記憶媒体1030に記録されるプログラム及びデータを読み込むことができる。記憶媒体1030に記録されるプログラムは、例えばゲームプログラムである。
As shown in FIG. 16, the
ユーザ端末800は、サーバ600等の外部の装置と通信することにより取得したゲームプログラムをユーザ端末800のメモリ820に記憶してもよいし、記憶媒体1030から読み込むことにより取得したゲームプログラムをメモリ820に記憶してもよい。
The
以上で説明したとおり、ユーザ端末800は、該ユーザ端末800に対して情報を入力する機構の一例として、通信IF850、入出力IF840、タッチスクリーン870、カメラ860、測距センサ880、およびスピーカ890を備える。入力する機構としての上述の各部は、ユーザ8の入力操作を受け付けるように構成された操作部と捉えることができる。
As described above, the
例えば、操作部が、カメラ860および測距センサ880の少なくともいずれか一方で構成される場合、該操作部が、ユーザ端末800の近傍の物体1010を検出し、当該物体の検出結果から入力操作を特定する。一例として、物体1010としてのユーザ8の手、予め定められた形状のマーカーなどが検出され、検出結果として得られた物体1010の色、形状、動き、または、種類などに基づいて入力操作が特定される。より具体的には、ユーザ端末800は、カメラ860の撮影画像からユーザ8の手が検出された場合、該撮影画像に基づき検出されるジェスチャ(ユーザ8の手の一連の動き)を、ユーザ8の入力操作として特定し、受け付ける。なお、撮影画像は静止画であっても動画であってもよい。
For example, when the operation unit is configured by at least one of the
あるいは、操作部がタッチスクリーン870で構成される場合、ユーザ端末800は、タッチスクリーン870の入力部8701に対して実施されたユーザ8の操作をユーザ8の入力操作として特定し、受け付ける。あるいは、操作部が通信IF850で構成される場合、ユーザ端末800は、コントローラ1020から送信される信号(例えば、出力値)をユーザ8の入力操作として特定し、受け付ける。あるいは、操作部が入出力IF840で構成される場合、該入出力IF840と接続されるコントローラ1020とは異なる入力装置(図示せず)から出力される信号をユーザ8の入力操作として特定し、受け付ける。
Alternatively, when the operation unit includes the
<各装置のハードウェア構成要素>
プロセッサ810は、ユーザ端末800全体の動作を制御する。プロセッサ610は、サーバ600全体の動作を制御する。プロセッサ210は、キャラクタ制御装置110B全体の動作を制御する。プロセッサ810、20および30は、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、およびGPU(Graphics Processing Unit)を含む。
<Hardware components of each device>
The
プロセッサ810はストレージ830からプログラムを読み出し、メモリ820に展開する。プロセッサ610はストレージ630からプログラムを読み出し、メモリ620に展開する。プロセッサ210は後述するストレージ230からプログラムを読み出し、後述するメモリ220に展開する。プロセッサ810、プロセッサ610およびプロセッサ210は展開したプログラムを実行する。
The
メモリ820、620および220は主記憶装置である。メモリ820、620および220は、ROM(Read Only Memory)およびRAM(Random Access Memory)等の記憶装置で構成される。メモリ820は、プロセッサ810が後述するストレージ830から読み出したプログラムおよび各種データを一時的に記憶することにより、プロセッサ810に作業領域を提供する。メモリ820は、プロセッサ810がプログラムに従って動作している間に生成した各種データも一時的に記憶する。メモリ620は、プロセッサ610がストレージ630から読み出した各種プログラムおよびデータを一時的に記憶することにより、プロセッサ610に作業領域を提供する。メモリ620は、プロセッサ610がプログラムに従って動作している間に生成した各種データも一時的に記憶する。メモリ220は、プロセッサ210がストレージ230から読み出した各種プログラムおよびデータを一時的に記憶することにより、プロセッサ210に作業領域を提供する。メモリ220は、プロセッサ210がプログラムに従って動作している間に生成した各種データも一時的に記憶する。
本実施形態においてプログラムとは、ゲームをユーザ端末800により実現するためのゲームプログラムであってもよい。あるいは、該プログラムは、該ゲームをユーザ端末800とサーバ600との協働により実現するためのゲームプログラムであってもよい。
あるいは、該プログラムは、該ゲームをユーザ端末800とサーバ600とキャラクタ制御装置110Bとの協働により実現するためのゲームプログラムであってもよい。なお、ユーザ端末800とサーバ600との協働により実現されるゲームおよびユーザ端末800とサーバ600とキャラクタ制御装置110Bとの協働により実現されるゲームは、一例として、ユーザ端末800において起動されたブラウザ上で実行されるゲームであってもよい。あるいは、該プログラムは、該ゲームを複数のユーザ端末800の協働により実現するためのゲームプログラムであってもよい。また、各種データとは、ユーザ情報およびゲーム情報などのゲームに関するデータ、ならびに、ゲームシステム1500の各装置間で送受信する指示または通知を含んでいる。
In the present embodiment, the program may be a game program for realizing the game on the
Alternatively, the program may be a game program for realizing the game in cooperation with the
ストレージ830、630および230は補助記憶装置である。ストレージ830、630および230は、フラッシュメモリまたはHDD(Hard Disk Drive)等の記憶装置で構成される。ストレージ830、630および230には、ゲームに関する各種データが格納される。
The
通信IF850は、ユーザ端末800における各種データの送受信を制御する。通信IF650は、サーバ600における各種データの送受信を制御する。通信IF250は、キャラクタ制御装置110Bにおける各種データの送受信を制御する。通信IF850、650および250は、例えば、無線LAN(Local Area Network)を介する通信、有線LAN、無線LAN、または携帯電話回線網を介したインターネット通信、ならびに近距離無線通信等を用いた通信を制御する。
The communication IF 850 controls transmission/reception of various data in the
入出力IF840は、ユーザ端末800がデータの入力を受け付けるためのインターフェースであり、またユーザ端末800がデータを出力するためのインターフェースである。入出力IF840は、USB(Universal Serial Bus)等を介してデータの入出力を行ってもよい。入出力IF840は、例えば、ユーザ端末800の物理ボタン、カメラ、マイク、または、スピーカ等を含み得る。サーバ600の入出力IF640は、サーバ600がデータの入力を受け付けるためのインターフェースであり、またサーバ600がデータを出力するためのインターフェースである。入出力IF640は、例えば、マウスまたはキーボード等の情報入力機器である入力部と、画像を表示出力する機器である表示部とを含み得る。キャラクタ制御装置110Bの入出力IF240は、キャラクタ制御装置110Bがデータの入力を受け付けるためのインターフェースであり、またキャラクタ制御装置110Bがデータを出力するためのインターフェースである。入出力IF240は、例えば、マウス、キーボード、スティック、レバー等の情報入力機器、液晶ディスプレイなどの画像を表示出力するディスプレイ430、および、周辺機器(HMD120、HMDセンサ410、モーションセンサ420、コントローラ300等)との間でデータを送受信するための接続部を含み得る。
The input/output IF 840 is an interface for the
ユーザ端末800のタッチスクリーン870は、入力部8701と表示部8702とを組み合わせた電子部品である入力部8701は、例えばタッチセンシティブなデバイスであり、例えばタッチパッドによって構成される。表示部8702は、例えば液晶ディスプレイ、または有機EL(Electro-Luminescence)ディスプレイ等によって構成される。
In the
入力部8701は、入力面に対しユーザ8の操作(主にタッチ操作、スライド操作、スワイプ操作、およびタップ操作等の物理的接触操作)が入力された位置を検知して、位置を示す情報を入力信号として送信する機能を備える。入力部8701は、図示しないタッチセンシング部を備えていればよい。タッチセンシング部は、静電容量方式または抵抗膜方式等のどのような方式を採用したものであってもよい。
The
キャラクタ制御装置110Bのディスプレイ430は、ユーザ端末800のタッチスクリーン870と同様に、入力部と表示部とを組み合わせたタッチスクリーンによって構成されていてもよい。
Like the
図示していないが、ユーザ端末800は、該ユーザ端末800の保持姿勢を特定するための1以上のセンサを備えていてもよい。このセンサは、例えば、加速度センサ、または、角速度センサ等であってもよい。ユーザ端末800がセンサを備えている場合、プロセッサ810は、センサの出力からユーザ端末800の保持姿勢を特定して、保持姿勢に応じた処理を行うことも可能になる。例えば、プロセッサ810は、ユーザ端末800が縦向きに保持されているときには、縦長の画像を表示部8702に表示させる縦画面表示としてもよい。一方、ユーザ端末800が横向きに保持されているときには、横長の画像を表示部に表示させる横画面表示としてもよい。このように、プロセッサ810は、ユーザ端末800の保持姿勢に応じて縦画面表示と横画面表示とを切り替え可能であってもよい。
Although not shown, the
スピーカ890は、音声データに基づき音声を出力する。カメラ860は、イメージセンサ等を含み、レンズから入射する入射光を電気信号に変換することで撮影画像を生成する。
The speaker 890 outputs a sound based on the sound data. The
測距センサ880は、測定対象物までの距離を測定するセンサである。測距センサ880は、例えば、パルス変換した光を発する光源と、光を受ける受光素子とを含む。測距センサ880は、光源からの発光タイミングと、該光源から発せられた光が測定対象物にあたって反射されて生じる反射光の受光タイミングとにより、測定対象物までの距離を測定する。測距センサ880は、指向性を有する光を発する光源を有することとしてもよい。 The distance measuring sensor 880 is a sensor that measures the distance to the measurement target. The distance measuring sensor 880 includes, for example, a light source that emits pulse-converted light and a light receiving element that receives the light. The distance measuring sensor 880 measures the distance to the measurement object by the light emission timing from the light source and the light reception timing of the reflected light generated by the light emitted from the light source reflected on the measurement object. The distance measuring sensor 880 may include a light source that emits light having directivity.
ここで、ユーザ端末800が、カメラ860と測距センサ880とを用いて、ユーザ端末800の近傍の物体1010を検出した検出結果を、ユーザ8の入力操作として受け付ける例をさらに説明する。カメラ860および測距センサ880は、例えば、ユーザ端末800の筐体の側面に設けられてもよい。カメラ860の近傍に測距センサ880が設けられてもよい。カメラ860としては、例えば赤外線カメラを用いることができる。この場合、赤外線を照射する照明装置および可視光を遮断するフィルタ等が、カメラ860に設けられてもよい。これにより、屋外か屋内かにかかわらず、カメラ860の撮影画像に基づく物体の検出精度をいっそう向上させることができる。
Here, an example in which the
プロセッサ810は、カメラ860の撮影画像に対して、例えば以下の(1)〜(5)に示す処理のうち1つ以上の処理を行ってもよい。(1)プロセッサ810は、カメラ860の撮影画像に対し画像認識処理を行うことで、該撮影画像にユーザ8の手が含まれているか否かを特定する。プロセッサ810は、上述の画像認識処理において採用する解析技術として、例えばパターンマッチング等の技術を用いてよい。(2)また、プロセッサ810は、ユーザ8の手の形状から、ユーザ8のジェスチャを検出する。プロセッサ810は、例えば、撮影画像から検出されるユーザ8の手の形状から、ユーザ8の指の本数(伸びている指の本数)を特定する。プロセッサ810はさらに、特定した指の本数から、ユーザ8が行ったジェスチャを特定する。例えば、プロセッサ810は、指の本数が5本である場合、ユーザ8が「パー」のジェスチャを行ったと判定する。また、プロセッサ810は、指の本数が0本である(指が検出されなかった)場合、ユーザ8が「グー」のジェスチャを行ったと判定する。また、プロセッサ810は、指の本数が2本である場合、ユーザ8が「チョキ」のジェスチャを行ったと判定する。(3)プロセッサ810は、カメラ860の撮影画像に対し、画像認識処理を行うことにより、ユーザ8の指が人差し指のみ立てた状態であるか、ユーザ8の指がはじくような動きをしたかを検出する。(4)プロセッサ810は、カメラ860の撮影画像の画像認識結果、および、測距センサ880の出力値等の少なくともいずれか1つに基づいて、ユーザ端末800の近傍の物体1010(ユーザ8の手など)とユーザ端末800との距離を検出する。例えば、プロセッサ810は、カメラ860の撮影画像から特定されるユーザ8の手の形状の大小により、ユーザ8の手がユーザ端末800の近傍(例えば所定値未満の距離)にあるのか、遠く(例えば所定値以上の距離)にあるのかを検出する。なお、撮影画像が動画の場合、プロセッサ810は、ユーザ8の手がユーザ端末800に接近しているのか遠ざかっているのかを検出してもよい。(5)カメラ860の撮影画像の画像認識結果等に基づいて、ユーザ8の手が検出されている状態で、ユーザ端末800とユーザ8の手との距離が変化していることが判明した場合、プロセッサ810は、ユーザ8が手をカメラ860の撮影方向において振っていると認識する。カメラ860の撮影範囲よりも指向性が強い測距センサ880において、物体が検出されたりされなかったりする場合に、プロセッサ810は、ユーザ8が手をカメラの撮影方向に直交する方向に振っていると認識する。
The
このように、プロセッサ810は、カメラ860の撮影画像に対する画像認識により、ユーザ8が手を握りこんでいるか否か(「グー」のジェスチャであるか、それ以外のジェスチャ(例えば「パー」)であるか)を検出する。また、プロセッサ810は、ユーザ8の手の形状とともに、ユーザ8がこの手をどのように移動させているかを検出する。また、プロセッサ810は、ユーザ8がこの手をユーザ端末800に対して接近させているのか遠ざけているのかを検出する。このような操作は、例えば、マウスまたはタッチパネルなどのポインティングデバイスを用いた操作に対応させることができる。ユーザ端末800は、例えば、ユーザ8の手の移動に応じて、タッチスクリーン870においてポインタを移動させ、ユーザ8のジェスチャ「グー」を検出する。この場合、ユーザ端末800は、ユーザ8が選択操作を継続中であると認識する。選択操作の継続とは、例えば、マウスがクリックされて押し込まれた状態が維持されること、または、タッチパネルに対してタッチダウン操作がなされた後タッチされた状態が維持されることに対応する。また、ユーザ端末800は、ユーザ8のジェスチャ「グー」が検出されている状態で、さらにユーザ8が手を移動させると、このような一連のジェスチャを、スワイプ操作(またはドラッグ操作)に対応する操作として認識することもできる。また、ユーザ端末800は、カメラ860の撮影画像によるユーザ8の手の検出結果に基づいて、ユーザ8が指をはじくようなジェスチャを検出した場合に、当該ジェスチャを、マウスのクリックまたはタッチパネルへのタップ操作に対応する操作として認識してもよい。
In this way, the
<ゲーム概要>
実施形態1に係るゲームシステム1500が実行するゲーム(以下、本ゲーム)は、一例として、1以上のキャラクタを登場させて、そのキャラクタの少なくとも1つを動作させるゲームパートを含む。該ゲームに登場するキャラクタは、プレイヤキャラクタ(以下、PC)であってもよいし、ノンプレイヤキャラクタ(以下、NPC)であってもよい。PCは、ユーザ8が直接操作可能なキャラクタである。NPCは、ゲームプログラムおよび動作指図データにしたがって動作する、すなわち、ユーザ8が直接操作できないキャラクタである。以下では、両者を特に区別する必要がない場合には、総称として、“キャラクタ”を用いる。
<Game outline>
The game executed by the
本ゲームは、キャラクタ制御装置110B及び複数のユーザ端末800の間で仮想空間11を共有し、キャラクタ制御装置110Bのユーザ5Bの操作に応じてアバターオブジェクト6Bが動作するライブ配信パートを含む。ここで、ユーザ5Bの操作とは、ユーザ5Bの動きに応じてHMD120、HMDセンサ410、モーションセンサ420、コントローラ300を介して入力される情報を含む。また、ユーザ5Bの操作とは、ユーザ5Bによるコントローラ300が有するボタンに対する操作を含む。その他、ユーザ5Bの操作とは、コンピュータ200に接続された各種の入力装置(図示せず)を介して入力される操作を含んでいてもよい。
This game includes a live distribution part in which the
本ゲームでは、仮想空間11として、第1仮想空間11_1、及び、第1仮想空間11_1とは異なる第2仮想空間11_2が提供される。第1仮想空間11_1及び第2仮想空間11_2の詳細については後述する。
In this game, as the
ライブ配信パートでは、例えば、キャラクタの動作を表す動作指図データが、ユーザ5Bの操作に応じてキャラクタ制御装置110Bで生成される。また、当該動作指図データが、本ゲームを実行中のユーザ端末800に対して、該ユーザ端末800以外の他の装置から、任意のタイミングで供給される。当該動作指図データは、例えば、キャラクタ制御装置110Bからサーバ600を介してユーザ端末800に供給されてもよい。ユーザ端末800は、該動作指図データを受信したことをトリガにして、該動作指図データを解析する(レンダリングする)。ライブ配信パートとは、ユーザ端末800が、上述の解析された動作指図データにしたがって動作するキャラクタを、ユーザ8にリアルタイムに提示するパートである。これにより、ユーザ8は、キャラクタが本当に存在するかのような現実感を覚えることができ、より一層ゲームの世界に没入して本ゲームに興じることができる。
In the live distribution part, for example, motion instruction data representing the motion of the character is generated by the
本ゲームは、複数のプレイパートで構成されていてもよい。この場合、1つのキャラクタが、あるパートでは、PCであって、別のパートでは、NPCである、というように、パートごとにキャラクタの性質が異なっていてもよい。 This game may be composed of a plurality of play parts. In this case, one character may be a PC in one part and an NPC in another part, and the character characteristics may be different for each part.
ゲームシステム1500において実行されるゲームのジャンルは、特定のジャンルに限られない。ゲームシステム1500は、あらゆるジャンルのゲームを実行し得る。例えば、テニス、卓球、ドッジボール、野球、サッカーおよびホッケーなどのスポーツを題材としたゲーム、パズルゲーム、クイズゲーム、RPG(Role-Playing Game)、アドベンチャーゲーム、シューティングゲーム、シミュレーションゲーム、育成ゲーム、ならびに、アクションゲームなどであってもよい。
The genre of the game executed in the
また、本ゲームのプレイ形態は、特定のプレイ形態に限られない。ゲームシステム1500は、あらゆるプレイ形態のゲームを実行し得る。例えば、単一のユーザ8によるシングルプレイゲーム、および、複数のユーザ8によるマルチプレイゲーム、また、マルチプレイゲームの中でも、複数のユーザ8が対戦する対戦ゲーム、および、複数のユーザ8が協力する協力プレイゲームなどであってもよい。
Further, the play mode of this game is not limited to a specific play mode. The
なお、以下の説明において、本発明における配信端末、第1配信端末、第2配信端末を、一例として、キャラクタ制御装置、第1キャラクタ制御装置、第2キャラクタ制御装置とも記載している。また、本発明における配信者の一例としてユーザ5Bを適用し、本発明における第1配信者、第2配信者を、一例として、第1ユーザ、第2ユーザとも記載している。また、本発明における視聴端末を、一例として、ユーザ端末とも記載している。また、本発明における視聴者の一例としてユーザ8を適用している。また、本発明におけるアバターオブジェクト、第1アバターオブジェクト、第2アバターオブジェクトを、一例として、キャラクタ、第1キャラクタ、第2キャラクタとも記載している。また、本発明における第1ゲームパートを、一例として、ライブゲーム進行パートとも記載している。また、本発明における第2ゲームパートを、一例として、第3プレイパートとも記載している。また、本発明における第3ゲームパートを、一例として、ライブ配信パートとも記載している。また、本発明における動作情報を、一例として、動作指図データとも記載している。また、本発明における第1動作情報の一例として、ライブゲーム進行パートにおいて送受信される動作指図データを適用している。また、本発明における第1動作情報が示す動作を、一例として、第1動作又は第2動作とも記載している。また、本発明における第2動作情報の一例として、ライブ配信パートにおいて送受信される動作指図データを適用している。また、本発明における「現在の状態に関連付けられた第1条件」の一例として、第1ミニゲームにおける第1条件及び第2ミニゲームにおける第2条件を適用している。また、本発明における「視聴者の操作に基づく第2条件」の一例として、第3プレイパートにおける第3課題を適用している。また、本発明における「前記選択済みであることが認識可能な状態の前記第1UIオブジェクトの組み合わせが第1条件」の一例として、第2ミニゲームの一例としてのビンゴゲームにおいてビンゴが成立するとの条件を適用している。また、本発明における「前記特定した選択肢オブジェクトと、前記視聴者によって選択された第1UIオブジェクトとの組み合わせが第2条件」の一例として、第1ミニゲームの一例としてのジャンケンゲームにおけるジャンケンの勝敗に関わる条件を適用している。また、本発明における第1オブジェクトを、一例として、所定のオブジェクト又は進行ボタンオブジェクトとも記載している。また、本発明における第2オブジェクトを、一例として、「第1状態に応じた第1オブジェクト」、又は、「第2状態に応じた第2オブジェクト」とも記載している。また、本発明における第3オブジェクトを、一例として、第3オブジェクト又は第4オブジェクトとも記載している。
In the following description, the distribution terminal, the first distribution terminal, and the second distribution terminal according to the present invention are also described as a character control device, a first character control device, and a second character control device, as an example. Further, the
<ゲームシステム1500の機能的構成>
図17は、ゲームシステム1500に含まれるユーザ端末800、サーバ600およびキャラクタ制御装置110Bの機能的構成を示すブロック図である。ユーザ端末800、サーバ600およびキャラクタ制御装置110Bのそれぞれは、図示しない、一般的なコンピュータとして機能する場合に必要な機能的構成、および、ゲームにおける公知の機能を実現するために必要な機能的構成を含み得る。
<Functional configuration of
FIG. 17 is a block diagram showing the functional configurations of the
ユーザ端末800は、ユーザ8の入力操作を受け付ける入力装置としての機能と、ゲームの画像や音声を出力する出力装置としての機能を有する。ユーザ端末800は、プロセッサ810、メモリ820、ストレージ830、通信IF850、および入出力IF840等の協働によって、制御部8100および記憶部8200として機能する。
The
サーバ600は、各ユーザ端末800と通信して、ユーザ端末800がゲームを進行させるのを支援する機能を有する。例えば、ユーザ端末800が本ゲームに係るアプリケーションを始めてダウンロードするときには、初回ゲーム開始時にユーザ端末800に記憶させておくべきデータをユーザ端末800に提供する。例えば、サーバ600は、キャラクタを動作させるための動作指図データをユーザ端末800に送信する。動作指図データは、予め、モデルなどのアクターの動きを取り込んだモーションキャプチャデータを含んでいてもよいし、声優などのアクターの音声を録音した音声データを含んでいてもよいし、キャラクタを動作させるための入力操作の履歴を示す操作履歴データを含んでいてもよいし、上述の一連の入力操作に対応付けられたコマンドを時系列に並べたモーションコマンド群を含んでいてもよい。本ゲームがマルチプレイゲームである場合には、サーバ600は、ゲームに参加する各ユーザ端末800と通信して、ユーザ端末800同士のやりとりを仲介する機能および同期制御機能を有していてもよい。また、サーバ600は、ユーザ端末800とキャラクタ制御装置110Bとを仲介する機能を備えている。これにより、キャラクタ制御装置110Bは、適時に、宛先を誤ることなく、ユーザ端末800または複数のユーザ端末800のグループに対して動作指図データを供給することが可能となる。サーバ600は、プロセッサ610、メモリ620、ストレージ630、通信IF650、および入出力IF640等の協働によって、制御部6100および記憶部6200として機能する。
The
キャラクタ制御装置110Bは、ユーザ端末800におけるキャラクタの動作を指示するための動作指図データを生成し、ユーザ端末800に供給する機能を有する。キャラクタ制御装置110Bは、プロセッサ210、メモリ220、ストレージ230、通信IF250、および入出力IF240等の協働によって、制御部2100(コントロールモジュール510、レンダリングモジュール520)および記憶部2200(メモリモジュール530)として機能する。
The
記憶部8200は、ゲームプログラム831を格納する。記憶部6200は、ゲームプログラム631を格納する。記憶部2200は、ゲームプログラム231を格納する。ゲームプログラム831は、ユーザ端末800が実行するゲームプログラムである。ゲームプログラム631は、サーバ600が実行するゲームプログラムである。ゲームプログラム231は、キャラクタ制御装置110Bが実行するゲームプログラムである。ゲームプログラム831、631、231に基づいて各装置が協同して動作することにより、ゲームシステム1500に係るゲームが実現される。なお、ゲームプログラム831、231は、記憶部6200に格納され、記憶部8200、2200にそれぞれダウンロードされる構成でもよい。
The
また、記憶部8200、6200および2200は、それぞれ、ゲーム情報132およびユーザ情報133を格納する。ゲーム情報132は、制御部8100、6100および2100が、ゲームプログラム831、631、231をそれぞれ実行する際に参照するデータである。ユーザ情報133は、ユーザ8のアカウントに関するデータである。記憶部6200および2200において、ゲーム情報132およびユーザ情報133は、ユーザ端末800ごとに格納されている。
The
(サーバ600の機能的構成)
制御部6100は、記憶部6200に格納されたゲームプログラム631を実行することにより、サーバ600を統括的に制御する。例えば、制御部6100は、ユーザ端末800に各種データおよびプログラム等を送信する。制御部6100は、ゲーム情報もしくはユーザ情報の一部または全部をユーザ端末800から受信する。ゲームがマルチプレイゲームである場合には、制御部6100は、ユーザ端末800からマルチプレイの同期の要求を受信して、同期のためのデータをユーザ端末800に送信してもよい。また、制御部6100は、必要に応じて、ユーザ端末800およびキャラクタ制御装置110Bと通信して、情報の送受信を行う。
(Functional configuration of server 600)
The
制御部6100は、ゲームプログラム631の記述に応じて、進行支援部6101および共有支援部6102として機能する。制御部6100は、実行するゲームの性質に応じて、ユーザ端末800におけるゲームの進行を支援するために、図示しないその他の機能ブロックとしても機能することができる。
The
進行支援部6101は、ユーザ端末800と通信し、ユーザ端末800が、本ゲームに含まれる各種パートを進行するための支援を行う。例えば、進行支援部6101は、ユーザ端末800が、ゲームを進行させるとき、該ゲームを進行させるために必要な情報をユーザ端末800に提供する。
The
共有支援部6102は、複数のユーザ端末800及びキャラクタ制御装置110Bと通信し、これらの装置間でゲームの進行及び仮想空間11を共有するための支援を行う。また、共有支援部6102は、オンラインのユーザ端末800とキャラクタ制御装置110Bとをマッチングする機能を有していてもよい。これにより、ユーザ端末800とキャラクタ制御装置110Bとの間の情報の送受信が円滑に実施される。
The
(ユーザ端末800の機能的構成)
制御部8100は、記憶部8200に格納されたゲームプログラム831を実行することにより、ユーザ端末800を統括的に制御する。例えば、制御部8100は、ゲームプログラム831およびユーザ8の操作にしたがって、ゲームを進行させる。また、制御部8100は、ゲームを進行させている間、必要に応じて、サーバ600およびキャラクタ制御装置110Bと通信して、情報の送受信を行う。
(Functional configuration of user terminal 800)
The
制御部8100は、ゲームプログラム831の記述に応じて、操作受付部8101、表示制御部8102、ユーザインターフェース(以下、UI)制御部113、アニメーション生成部8104、ゲーム進行部8105、仮想空間制御部8106、および進捗情報生成部8107として機能する。制御部8100は、実行するゲームの性質に応じて、ゲームを進行させるために、図示しないその他の機能ブロックとしても機能することができる。
The
操作受付部8101は、入力部8701に対するユーザ8の入力操作を検知し受け付ける。操作受付部8101は、タッチスクリーン870およびその他の入出力IF14を介したコンソールに対してユーザ8が及ぼした作用から、いかなる入力操作がなされたかを判別し、その結果を制御部8100の各要素に出力する。
The
例えば、操作受付部8101は、入力部8701に対する入力操作を受け付け、該入力操作の入力位置の座標を検出し、該入力操作の種類を特定する。操作受付部8101は、入力操作の種類として、例えばタッチ操作、スライド操作、スワイプ操作、およびタップ操作等を特定する。また、操作受付部8101は、連続して検知されていた入力が途切れると、タッチスクリーン870から接触入力が解除されたことを検知する。
For example, the
UI制御部8103は、UIを構築するために表示部8702に表示させるUIオブジェクトを制御する。UIオブジェクトは、ユーザ8が、ゲームの進行上必要な入力をユーザ端末800に対して行うためのツール、または、ゲームの進行中に出力される情報をユーザ端末800から得るためのツールである。UIオブジェクトは、これには限定されないが、例えば、アイコン、ボタン、リスト、メニュー画面などである。
The
アニメーション生成部8104は、各種オブジェクトの制御態様に基づいて、各種オブジェクトのモーションを示すアニメーションを生成する。例えば、アニメーション生成部8104は、キャラクタがまるでそこにいるかのように動いたり、口を動かしたり、表情を変えたりする様子を表現したアニメーション等を生成してもよい。
The
表示制御部8102は、タッチスクリーン870の表示部8702に対して、上述の各要素によって実行された処理結果が反映されたゲーム画面を出力する。表示制御部8102は、アニメーション生成部8104によって生成されたアニメーションを含むゲーム画面を表示部8702に表示してもよい。また、表示制御部8102は、UI制御部8103によって制御される上述のUIオブジェクトを、該ゲーム画面に重畳して描画してもよい。
The
仮想空間制御部8106は、キャラクタ制御装置110Bとの間で仮想空間11を共有するための各種の制御を行う。図18は、仮想空間制御部8106の詳細な構成を示す図である。図18に示すように、仮想空間制御部8106は、仮想オブジェクト生成モジュール8121と、仮想カメラ制御モジュール8122と、アバターオブジェクト制御モジュール8124と、仮想オブジェクト制御モジュール8127とを含む。
The virtual
仮想オブジェクト生成モジュール8121は、図14を参照して説明した仮想オブジェクト生成モジュール1421と同様に構成される。ここで、ユーザ端末800において生成される仮想オブジェクトは、キャラクタ制御装置110Bにおいて生成される仮想オブジェクトに同期する。ただし、各仮想オブジェクトを同期するか否かは、仮想オブジェクト毎に定められていてもよい。例えば、キャラクタ制御装置110Bで生成された仮想オブジェクトのうち、ユーザ端末800では生成されないものがあってもよい。また、キャラクタ制御装置110Bで生成された仮想オブジェクトのうち、ユーザ端末800において異なる表示形態で生成されるものがあってもよい。表示形態とは、例えば、色、透明度等であってもよいが、これらに限られない。
The virtual
仮想カメラ制御モジュール8122は、図14を参照して説明した仮想カメラ制御モジュール1422と同様に構成される。ここで、ユーザ端末800A、800C、800Dにおいて実現される仮想空間11A、11C、11Dに配置される仮想カメラ14A、14C、14Dは、キャラクタ制御装置110Bにおいて実現される仮想空間11Bに配置される仮想カメラ14Bとは異なるものである。つまり、キャラクタ制御装置110B及びユーザ端末800間で共有される仮想空間11の視野画像は、キャラクタ制御装置110B及びユーザ端末800間で異なり得る。
The virtual
ユーザ端末800A、800C、800Dにおいて、仮想カメラ14A、14C、14Dの位置及び方向は、ユーザ8A、8C、8Dによって操作可能であってもよいし、操作不能であってもよい。また、操作不能である場合、仮想カメラ14A、14C、14Dの位置及び方向は、同一であってもよい。この場合、複数のユーザ8は、各ユーザ端末800を通して、共通の視野画像を視聴することになる。つまり、この場合、複数のユーザ8は、共通の仮想カメラで撮影された視野画像(ライブ映像)を視聴することができる。本実施形態では、仮想カメラ14A、14C、14Dの位置及び方向がユーザ8A、8C、8Dによって操作不能であり、複数のユーザ8が共通の視野画像を視聴する例を中心に説明する。
In the
以降、キャラクタ制御装置110Bにおいて第1仮想空間11_1に配置される仮想カメラ14を、仮想カメラ14_B1と記載し、第2仮想空間11_2に配置される仮想カメラ14を、仮想カメラ14_B2と記載する。また、ユーザ端末800A、800C、800Dにおいて第1仮想空間11_1に配置される仮想カメラ14を、仮想カメラ14_A1と記載し、第2仮想空間11_2に配置される仮想カメラ14を、仮想カメラ14_A2と記載する。また、仮想カメラ14_B1、14_B2、14_A1、14_A2それぞれに基づく視野画像を、視野画像1400_B1、1400_B2、1400_A1、1400_A2と記載する。
Hereinafter, the
アバターオブジェクト制御モジュール8124は、図14を参照して説明したアバターオブジェクト制御モジュール1424に対して、HMD120の動き又はコントローラ300の動きに応じて動作することに替えて、動作指図データに応じて動作する点が異なる他は、同様に構成される。動作指図データは、キャラクタ制御装置110BにおいてHMD120の動き又はコントローラ300の動きに応じて生成され、ユーザ端末800に配信される。
The avatar
仮想オブジェクト制御モジュール8127は、図14を参照して説明した仮想オブジェクト制御モジュール1427に対して、動作指図データに応じて動作する点が異なる他は、同様に構成される。動作指図データは、キャラクタ制御装置110Bにおける仮想オブジェクトの挙動を表すようキャラクタ制御装置110Bにおいて生成され、ユーザ端末800に配信される。
The virtual
このように、仮想空間制御部8106は、動作指図データを解析して(レンダリングして)、解析結果に基づいてアバターオブジェクト6B(第1キャラクタ、第2キャラクタ)又は仮想オブジェクトを動作させる。本実施形態では、仮想空間制御部8106は、キャラクタ制御装置110Bによって供給された動作指図データが通信IF33を介して受信されたことをトリガにして、該データに基づいてアバターオブジェクト6B又は仮想オブジェクトを動作させる。これにより、リアルタイムで動作するキャラクタ及び仮想オブジェクトを、ユーザ8に見せることが可能となる。
In this way, the virtual
また、仮想空間制御部8106は、当該ユーザ端末800を含む複数のユーザ端末800及びキャラクタ制御装置110Bの間で共有される第1仮想空間11_1に、アバターオブジェクト6Bと、仮想カメラ14_A1と、複数の選択肢を表す仮想オブジェクトとを配置する。
In addition, the virtual
また、仮想空間制御部8106は、複数のユーザ端末800のうち所定条件が満たされたユーザ端末800及びキャラクタ制御装置110Bの間で共有される第2仮想空間11_2に、アバターオブジェクト6Bと、仮想カメラ14_A2とを配置する。本実施形態では、本発明において第2仮想空間11_2に配置される第2キャラクタの一例として、第1空間に配置される第1キャラクタと同じアバターオブジェクト6Bを適用する例について説明する。なお、当該ユーザ端末800が第2仮想空間11_2を共有するのは、当該ユーザ端末800において所定条件が満たされた場合である。所定条件の詳細については後述する。
In addition, the virtual
また、仮想空間制御部8106は、第1仮想空間11_1に配置された仮想カメラ14_A1の設定に従った視野画像1400_A1(第1視野画像)を、表示部8702に表示する。
Further, the virtual
また、仮想空間制御部8106は、第2仮想空間11_2に配置された仮想カメラ14_A2の設定に従った視野画像1400_A2(第2視野画像)を、表示部8702に表示する。なお、当該ユーザ端末800において、第2視野画像が表示されるのは、当該ユーザ端末800において所定条件が満たされた場合である。
In addition, the virtual
つまり、第1仮想空間11_1の第1視野画像は、複数のユーザ端末800のユーザ8によって視聴可能であるのに対して、第2仮想空間11_2の第2視野画像は、所定条件が満たされたユーザ端末800のユーザ8によってのみ視聴可能である。
That is, the first view image of the first virtual space 11_1 can be viewed by the
以降、第1仮想空間11_1の第1視野画像を視聴することを、第1仮想空間11_1に参加する、とも記載する。また、第2仮想空間11_2の第2視野画像を視聴することを、第2仮想空間11_2に参加する、とも記載する。 Hereinafter, viewing the first view image of the first virtual space 11_1 is also referred to as participating in the first virtual space 11_1. Further, viewing the second view image of the second virtual space 11_2 is also referred to as participating in the second virtual space 11_2.
また、仮想空間制御部8106は、キャラクタ制御装置110Bのユーザ5Bの操作に基づいて、複数の選択肢の何れかを選択する動作をアバターオブジェクト6Bに行わせる。
In addition, the virtual
ゲーム進行部8105は、操作受付部8101を介して入力されるユーザ8の入力操作、及び、キャラクタ制御装置110Bのユーザ5Bによる入力操作の何れか又は両方に応じて、ゲームを進行させる。ゲーム進行部8105は、ゲームの進行中、1以上のキャラクタを登場させ、該キャラクタを動作させる。ゲーム進行部8105は、キャラクタを、ゲームプログラム831にしたがって動作させてもよいし、ユーザ8の入力操作にしたがって動作させてもよいし、キャラクタ制御装置110Bのユーザ5Bの操作に応じて生成される動作指図データにしたがって動作させてもよい。
The
また、ゲーム進行部8105は、キャラクタ制御装置110Bのユーザ5Bの操作に応じて第1仮想空間11_1においてアバターオブジェクト6Bが行う第1動作に基づいて、ゲームを第1状態で進行させる。第1動作及び第1状態の詳細については後述する。
In addition, the
また、ゲーム進行部8105は、ユーザ5Bの操作に応じて第1仮想空間11_1においてアバターオブジェクト6Bが行う所定の動作に基づいて、ゲームの進行を、第1状態から、当該第1状態と異なる第2状態に遷移させる。第2状態の詳細については後述する。
In addition, the
所定の動作とは、例えば、所定の仮想オブジェクトを対象とする動作であってもよい。対象とする動作とは、例えば、押す、持つ、指し示す、回す、足で踏む等の動作であってもよいが、これに限られない。所定の仮想オブジェクトとは、例えば、押す動作の対象となるボタン型オブジェクト、回す動作の対象となるダイヤル型オブジェクト等であってもよいが、これらに限られない。 The predetermined motion may be, for example, a motion targeting a predetermined virtual object. The target motion may be, for example, a push, a holding, a pointing, a turning, or a stepping on a foot, but is not limited to this. The predetermined virtual object may be, for example, a button-type object that is a target of a pushing operation, a dial-type object that is a target of a turning operation, or the like, but is not limited to these.
また、ゲーム進行部8105は、ユーザ5Bの操作に応じて第1仮想空間11_1においてアバターオブジェクト6Bが行う第2動作に基づいて、ゲームを第2状態で進行させる。第2動作の詳細については後述する。
Further, the
ここで、第1状態及び第2状態とは、例えば、進行しているゲームの種類に応じた状態であってもよい。例えば、第1状態及び第2状態とは、仮想空間11の状態、表示部8702の状態、実行されるべきゲーム処理の適用状態等を含んでいてもよい。具体的には、仮想空間11は、ゲームの種類に応じた仮想オブジェクトが配置された状態を有する。また、表示部8702は、ゲームの種類に応じたUIオブジェクトが表示された状態を有する。また、アバターオブジェクト6Bの動作又はUIオブジェクトに対する操作に応じて、ゲームの種類に応じたゲーム処理が適用される状態を有する。また、第1状態及び第2状態は、ゲームの進行に係るその他の状態を含んでいてもよい。
Here, the first state and the second state may be, for example, states according to the type of game in progress. For example, the first state and the second state may include the state of the
以降、第1状態で進行するゲームを、第1ミニゲームとも記載し、第2状態で進行するゲームを、第2ミニゲームとも記載する。なお、本ゲームを進行させ得る状態の種類は、2つに限らず、3つ以上であってもよい。換言すると、本ゲームには、第1ミニゲーム、第2ミニゲームの他に、ミニゲームが含まれていてもよい。なお、第2ミニゲームは、本発明における第1プレイパートの一例に相当する。また、第1ミニゲームは、本発明における第2プレイパートの一例に相当する。 Hereinafter, the game progressing in the first state is also referred to as a first mini game, and the game progressing in the second state is also referred to as a second mini game. Note that the types of states in which this game can progress are not limited to two, and may be three or more. In other words, this game may include a mini game in addition to the first mini game and the second mini game. The second mini game corresponds to an example of the first play part in the present invention. The first mini game corresponds to an example of the second play part in the present invention.
第1ミニゲームには、ユーザ8のプレイによって満たすことが可能な第1条件が設定される。第1条件は、本発明における第2課題の一例に相当する。第2ミニゲームには、ユーザ8のプレイによって満たすことが可能な第2条件が設定される。第2条件は、本発明における第1課題の一例に相当する。各ミニゲームは、アバターオブジェクト6Bの動作と、ユーザ8の操作とに応じて進行する。
The first condition that can be satisfied by the play of the
また、第1動作及び第2動作とは、例えば、進行しているゲームの種類に応じたアバターオブジェクト6Bの動作であってもよい。例えば、第1ミニゲームがジャンケンゲームであれば、第1動作は、アバターオブジェクト6Bがグー・チョキ・パーに対応する仮想オブジェクトを選択する動作であってもよい。また、第2ミニゲームがビンゴゲームであれば、第2動作は、アバターオブジェクト6Bがビンゴボールに対応する仮想オブジェクトを選択する動作であってもよい。
Further, the first motion and the second motion may be, for example, the motion of the
また、第1状態において、ゲームの種類に応じた第1動作は、複数種類あってもよい。例えば、第1状態において、仮想オブジェクトを選択するアバターオブジェクト6Bの動作と、勝敗を判定するための仮想ボタンを押すアバターオブジェクト6Bの動作とが、それぞれ第1動作とみなされてもよい。また、第2状態においても、ゲームの種類に応じた第2動作は、複数種類あってもよい。また、第1動作の何れかと、第2動作の何れかとが、同一の動作であってもよいし、異なる動作であってもよい。例えば、第1状態において、ゲームの勝敗を判定するための仮想ボタンを押す第1動作があり、第2状態において、ゲームの勝敗を判定するための仮想ボタンを押す第2動作があってもよい。
Further, in the first state, there may be a plurality of types of the first action according to the type of game. For example, in the first state, the action of the
また、ゲーム進行部8105は、アバターオブジェクト6Bが複数の選択肢の何れかを選択する動作に応じて、当該選択する動作による選択の結果に応じたゲーム処理を実行する。ここで、仮想空間11には、複数の選択肢を表す仮想オブジェクトが配置されている。
In addition, the
また、ゲーム進行部8105は、上述した所定条件が満たされなかった場合に、当該ユーザ端末800のユーザ8によって入力される情報と、当該所定条件が満たされなかった他のユーザ端末800のユーザ8によって入力された情報とを、第1視野画像と共に表示部8702に表示する。所定条件が満たされなかったユーザ端末800の各ユーザ8によって入力される情報が表示されるパートを、以降、チャットパートとも記載する。
In addition, the
進捗情報生成部8017は、ゲーム進行部8105が実行しているゲームの進捗を示す進捗情報を生成し、適時、サーバ600またはキャラクタ制御装置110Bに送信する。進捗情報は、例えば、現在表示されているゲーム画面を指定する情報を含んでいてもよいし、ゲームの進捗を、時系列で文字および記号等によって示した進行ログを含んでいてもよい。ゲームシステム1500において、サーバ600およびキャラクタ制御装置110Bが進捗情報を必要としない実施形態では、進捗情報生成部8017は省略されてもよい。
The progress information generation unit 8017 generates progress information indicating the progress of the game executed by the
(キャラクタ制御装置110Bの機能的構成)
制御部2100は、記憶部2200に格納されたゲームプログラム231を実行することにより、キャラクタ制御装置110Bを統括的に制御する。例えば、制御部2100は、ゲームプログラム231およびユーザ5Bの操作にしたがって、動作指図データを生成し、ユーザ端末800に供給する。制御部2100は、必要に応じて、さらにゲームプログラム231を実行してもよい。また、制御部2100は、サーバ600および本ゲームを実行中のユーザ端末800と通信して、情報の送受信を行う。
(Functional configuration of
The
制御部2100は、ゲームプログラム231の記述に応じて、操作受付部2101、表示制御部2102、UI制御部2103、アニメーション生成部2104、ゲーム進行部2105、仮想空間制御部2106、および反応処理部2107として機能する。制御部2100は、ゲームシステム1500において実行されるゲームの性質に応じて、該ゲームに登場するキャラクタを制御するために、図示しないその他の機能ブロックとしても機能することができる。
The
操作受付部2101は、ユーザ5Bの入力操作を検知し受け付ける。入力操作は、例えば、HMD120、モーションセンサ420、ディスプレイ430がタッチスクリーンである場合に表示部と一体に形成された入力部、マウス(図示せず)、キーボード(図示せず)等の各種の入力装置から、入出力IF34を介して入力される。操作受付部2101は、ユーザ5Bが及ぼした作用から、いかなる入力操作がなされたかを判別し、その結果を制御部2100の各要素に出力する。操作受付部2101の機能の詳細は、ユーザ端末800における操作受付部8101のそれとほぼ同様である。
The
UI制御部2103は、HMD120又はディスプレイ430に表示させるUIオブジェクトを制御する。
The
アニメーション生成部2104は、各種オブジェクトの制御態様に基づいて、各種オブジェクトのモーションを示すアニメーションを生成する。例えば、アニメーション生成部2104は、通信相手となるユーザ端末800上実際に表示されているゲーム画面を再現したアニメーション等を生成してもよい。
The
表示制御部2102は、HMD120又はディスプレイ430に対して、上述の各要素によって実行された処理結果が反映された画像を出力する。
The
ゲーム進行部2105は、ユーザ5Bによる入力操作に応じたアバターオブジェクト6Bと、ユーザ端末800のユーザ8の操作とに基づいて、ゲームを進行する。例えば、ゲーム進行部2105は、アバターオブジェクト6Bが所定の動作を行った場合に、所定のゲーム処理を行う。また、例えば、ゲーム進行部2105は、ユーザ端末800におけるユーザ8の操作を表す情報を受信し、当該ユーザ8の操作に基づいてゲーム処理を行う。
The
また、ゲーム進行部2105は、ユーザ端末800から受信するゲームの進捗を示す進捗情報に基づいて、ユーザ端末800におけるゲームの進捗を把握する。そして、ゲーム進行部2105は、該ユーザ端末800の挙動をキャラクタ制御装置110Bにおいて模擬的に再現することで、ユーザ5Bに対して、ユーザ端末800の進捗を提示する。
In addition, the
例えば、ゲーム進行部2105は、ユーザ端末800で表示されているゲーム画面を再現したものを自装置の表示部352に表示してもよい。また、ゲーム進行部2105は、ユーザ端末800において、ゲームの進捗を上述の進行ログとして表示部352に表示してもよい。
For example, the
また、ゲーム進行部2105の機能の一部は、制御部2100がゲームプログラム231を実行することにより実現されてもよい。例えば、まずゲーム進行部2105は、進捗情報に基づいて、ユーザ端末800のゲームの進捗を把握する。そして、ゲーム進行部2105は、ユーザ端末800においてゲームプログラム831に基づき現在表示されている、ゲーム画面を、完全にまたは簡略化して自装置の表示部352に再現してもよい。あるいは、ゲーム進行部2105は、現時点のゲームの進捗を把握し、ゲームプログラム231に基づいて現時点以降のゲーム進行を予測し、予測結果を表示部352に出力してもよい。
Further, a part of the function of the
仮想空間制御部2106は、図14を参照して説明したコントロールモジュール510のモジュール1421〜1427を含む。これらの詳細については、既に説明した通りである。
The virtual
仮想空間制御部2106は、ユーザ端末800との間で仮想空間11を共有するための各種の制御を行う。図19は、仮想空間制御部2106の詳細な構成を示す図である。図19に示すように、仮想空間制御部2106は、図14を参照して説明したモジュール1421〜1427を含む。仮想空間制御部2106は、これらのモジュール1421〜1427の動作により、当該キャラクタ制御装置110Bにおいて、アバターオブジェクト6Bを動作させるとともに仮想オブジェクトの挙動を制御する。また、仮想空間制御部2106は、モジュール1421〜1427の動作に基づいて、ユーザ端末800においてアバターオブジェクト6Bを動作させるための動作指図データ、各仮想オブジェクトの挙動を制御するための動作指図データを生成する。これらの動作指図データは、サーバ600を介してユーザ端末800に供給される。例えば、仮想空間制御部2106は、ユーザ5B(声優など)が、マイク170を介して入力した音声データに基づいて、制御対象のキャラクタに発言させることを指示する動作指図データを生成する。このようにして生成された動作指図データには、上述の音声データが少なくとも含まれる。また、例えば、ユーザ5B(モデルなど)が、モーションセンサ420を介して入力したモーションキャプチャデータに基づく動きを、制御対象のキャラクタに行わせることを指示する動作指図データを生成する。このようにして生成された動作指図データには、上述のモーションキャプチャデータが少なくとも含まれる。また、例えば、ユーザ5Bが、コントローラ300などの入力機構またはタッチスクリーン、マウス、キーボード等の操作部を介して入力した入力操作の履歴、すなわち、操作履歴データに基づいて、制御対象のキャラクタを動作させることを指示する動作指図データを生成する。このようにして生成された動作指図データには、上述の操作履歴データが少なくとも含まれる。操作履歴データは、例えば、HMD120にどの画面が表示されているときに、ユーザ5Bが、コントローラ300のどのボタンをどのタイミングで押したのかを示す操作ログが時系列で整理されている情報である。あるいは、仮想空間制御部2106は、ユーザ5Bが上述の入力機構または操作部を介して入力した入力操作に対応付けられた、キャラクタの動作を指示するコマンドを特定する。そして、仮想空間制御部2106は、該コマンドを入力された順に並べてキャラクタの一連の動作を示すモーションコマンド群を生成し、該モーションコマンド群にしたがってキャラクタを動作させることを指示する動作指図データを生成してもよい。このようにして生成された動作指図データには、上述のモーションコマンド群が少なくとも含まれる。
The virtual
反応処理部2107は、ユーザ端末800からユーザ8の反応についてフィードバックを受け付けて、これをキャラクタ制御装置110Bのユーザ5Bに対して出力する。本実施形態では、例えば、ユーザ端末800は、上述の動作指図データにしたがってキャラクタを動作させている間、該キャラクタに宛てて、ユーザ8がコメントを作成することができる。反応処理部2107は、該コメントのコメントデータを受け付けて、これを、出力する。反応処理部2107は、ユーザ8のコメントに対応するテキストデータを、表示部352に表示してもよいし、ユーザ8のコメントに対応する音声データを、図示しないスピーカから出力してもよい。
The
なお、図17に示すユーザ端末800、サーバ600およびキャラクタ制御装置110Bの機能は一例にすぎない。ユーザ端末800、サーバ600およびキャラクタ制御装置110Bの各装置は、他の装置が備える機能の少なくとも一部を備えていてもよい。さらに、ユーザ端末800、サーバ600およびキャラクタ制御装置110B以外のさらに別の装置をゲームシステム1500の構成要素とし、該別の装置にゲームシステム1500における処理の一部を実行させてもよい。すなわち、本実施形態においてゲームプログラムを実行するコンピュータは、ユーザ端末800、サーバ600、キャラクタ制御装置110Bおよびそれ以外の別の装置の何れであってもよいし、これらの複数の装置の組み合わせにより実現されてもよい。
The functions of the
なお、図17に示すサーバ600およびユーザ端末800の機能は一例にすぎない。サーバ600は、ユーザ端末800が備える機能の少なくとも一部を備えていてもよい。また、ユーザ端末800は、サーバ600が備える機能の少なくとも一部を備えていてもよい。さらに、ユーザ端末800およびサーバ600以外の他の装置をゲームシステム1500の構成要素とし、該他の装置にゲームシステム1500における処理の一部を実行させてもよい。すなわち、本実施形態においてゲームプログラムを実行するコンピュータは、ユーザ端末800、サーバ600、および他の装置の何れであってもよいし、これらの複数の装置の組み合わせにより実現されてもよい。
Note that the functions of the
<ゲームの構成>
図20は、本ゲームの基本的なゲーム進行についてその一例を示すフローチャートである。本ゲームは、3つのパートを含む。一例として、1つ目は、複数のユーザ端末800によって参加可能なライブゲーム進行パートである。2つ目は、ライブゲーム進行パートに参加したユーザ端末800のうち、所定条件を満たしたユーザ端末800に配信されるライブ配信パートである。3つ目は、ライブゲーム進行パートに参加したユーザ端末800のうち、所定条件を満たさないユーザ端末800に提供されるチャットパートである。また、ライブゲーム進行パートは、上述した第1ミニゲーム(第1状態で進行するゲーム)及び第2ミニゲーム(第2状態で進行するゲーム)を含む。
<Game structure>
FIG. 20 is a flowchart showing an example of basic game progress of this game. The game includes three parts. As an example, the first is a live game progression part that can be participated by a plurality of
ステップS1において、ゲームシステム1500は、ライブゲーム進行パートを進行する。ライブゲーム進行パートは、第1仮想空間11_1において進行する。
In step S1, the
ステップS2において、ゲームシステム1500は、ライブゲーム進行パートにおいて、第1ミニゲームを進行する。第1ミニゲームは、第1仮想空間11_1におけるアバターオブジェクト6Bの動作と、ユーザ端末800のユーザ8の操作とに基づいて進行する。第1ミニゲームでは、仮想オブジェクトが表す複数の選択肢の何れかを、アバターオブジェクト6Bが選択する第1動作に基づいて、当該第1動作による選択の結果に応じたゲーム処理が実行される。
In step S2, the
ステップS3において、ゲームシステム1500は、第1仮想空間11_1においてアバターオブジェクト6Bが所定の動作を行うと、第1ミニゲームを終了し、第2ミニゲームを開始する。つまり、ゲームの進行が、第1状態から第2状態に遷移する。
In step S3, when the
ステップS4において、ゲームシステム1500は、ライブゲーム進行パートにおいて、第2ミニゲームを進行する。第2ミニゲームは、第1仮想空間11_1におけるアバターオブジェクト6Bの動作と、ユーザ端末800のユーザ8の操作とに基づいて進行する。第2ミニゲームでは、仮想オブジェクトが表す複数の選択肢の何れかを、アバターオブジェクト6Bが選択する第2動作に基づいて、当該第2動作による選択の結果に応じたゲーム処理が実行される。
In step S4, the
ステップS5において、ゲームシステム1500は、ライブゲーム進行パートで所定条件が満たされたか否かを判断する。具体的には、ゲーム進行部8105は、第2ミニゲームにおいて第2条件が満たされたか否かを判断してもよい。
In step S5, the
ステップS5でYesの場合、ステップS6において、ゲームシステム1500は、第2仮想空間11_2において、ライブ配信パートを進行する。第2仮想空間11_2には、アバターオブジェクト6B(第2キャラクタ)が配置される。換言すると、ユーザ5Bの操作に応じて動作するアバターオブジェクト6Bが、第1仮想空間11_1から第2仮想空間11_2に移動して動作する。
If Yes in step S5, in step S6, the
ステップS5でNoの場合、ステップS7において、ゲームシステム1500は、ユーザ端末800においてチャットパートを進行する。チャットパートは、キャラクタ制御装置110Bのユーザ5Bの操作によらずに進行するパートである。換言すると、チャットパートは、アバターオブジェクト6Bの動作によらずに進行する。チャットパートは、第1仮想空間11_1の第1視野画像がユーザ端末800に表示された状態で進行してもよい。
In the case of No in step S5, in step S7, the
<処理概要>
本実施形態では、ユーザ端末800は、ゲームプログラム831に基づいて、以下のステップを実行するように構成されている。具体的には、第1配信者(ユーザ5B)がリアルタイム配信を行うための第1配信端末(キャラクタ制御装置110B)と、視聴端末(ユーザ端末800)を含む複数の視聴端末との間で共有される第1仮想空間(第1仮想空間11_1)に、第1配信者に対応する第1アバターオブジェクトと、第1仮想カメラとを配置するステップと、リアルタイム配信が行われる間、第1仮想カメラの視野領域を示す第1視野画像を表示部に表示するステップと、ゲームプログラムに基づくゲームに含まれる、複数の状態間を遷移しながら進行する第1ゲームパート(ライブゲーム進行パート)の状態ごとに、1つの状態におけるゲーム(第1ミニゲーム、第2ミニゲーム)を、第1配信者の身体の動き及び視聴者の操作に基づき進行させるゲーム処理を行うステップと、を実行させ、各状態におけるゲーム処理は、第1配信端末が第1配信者の身体の動きを検出して生成した、第1アバターオブジェクトの動作を示す第1動作情報を受信するステップと、第1動作情報が受信されたことに応答して、当該第1動作情報が示す動きを第1アバターオブジェクトが行うことを含むよう、第1視野画像を更新するステップと、第1動作情報が受信されたことに応答して、第1動作情報が示す動きが状態を遷移させるための動きであるか否かを判定するステップと、第1動作情報が示す動きが遷移させるための動きである場合に、第1ゲームパートの進行を、現在の状態から他の状態に遷移させるステップと、を含む。
<Outline of processing>
In the present embodiment, the
これにより、第1配信者の身体の動き及び前記視聴者の操作に基づき各状態が進行する第1ゲームパートにおいて、視聴者は、ゲームを進行させる第1アバターオブジェクトの遷移させるための動作によって、第1ゲームパートの状態が切り替わることを認識できる。したがって、臨場感が増し、ゲームへの没入感が高まる。 As a result, in the first game part in which each state progresses based on the movement of the body of the first distributor and the operation of the viewer, the viewer performs an action for transition of the first avatar object that advances the game, It can be recognized that the state of the first game part is switched. Therefore, the sense of presence is increased, and the sense of immersion in the game is enhanced.
また、ユーザ端末800は、配信者(ユーザ5B)がリアルタイム配信を行うための配信端末(キャラクタ制御装置110B)と、視聴端末(ユーザ端末800)を含む複数の視聴端末との間で共有される仮想空間に、配信者に対応するアバターオブジェクト(アバターオブジェクト6B)と、仮想カメラと、複数の選択肢オブジェクトとを配置するステップと、リアルタイム配信が行われる間、仮想カメラの視野領域を示す視野画像(視野画像1400_A1)を表示部に表示するステップと、リアルタイム配信が行われる間、視聴者の入力操作を受け付けるユーザインタフェース(UI)オブジェクトを、表示部に表示するステップと、配信端末が配信者の操作を検出して生成した、仮想空間に配置された複数の選択肢オブジェクトから一部を選択する、アバターオブジェクトの動作を示す動作情報を受信するステップと、動作情報が受信されたことに応答して、仮想空間に配置された複数の選択肢オブジェクトから一部を選択するアバターオブジェクトの動作を含むよう、視野画像を更新するステップと、動作情報が受信されたことに応答して、アバターオブジェクトにより選択された選択肢オブジェクトを特定するステップと、特定した選択肢オブジェクトに応じて、UIオブジェクトの状態を変化させるステップと、を実行する。
Further, the
これにより、アバターオブジェクトが選択した選択肢に基づいて、視聴者のためのUIオブジェクトの状態が変化するので、アバターオブジェクトおよび視聴者の相互作用でゲームが進行していることを実感でき、臨場感が増す。したがって、臨場感が増し、ゲームへの没入感が高まる。 As a result, the state of the UI object for the viewer changes based on the options selected by the avatar object, so that the interaction between the avatar object and the viewer can give a sense of the progress of the game, giving a realistic feeling. Increase. Therefore, the sense of presence is increased, and the sense of immersion in the game is enhanced.
なお、ユーザ端末800は、配信者の動作に応じて、視聴端末の表示部に表示されたUIオブジェクトの状態を変化させるステップを実行してもよい。UIオブジェクトの状態を変化させるとは、例えば、UIオブジェクトを、操作可能状態及び操作不可能状態との間で変化させることであってもよいし、表示されていたUIオブジェクトを表示部から消去したり、表示されていなかったUIオブジェクトを表示部に新たに表示したりすることであってもよい。
The
<ライブゲーム配信パートの処理フロー>
図21は、ゲームシステム1500を構成する各装置によって実行される、ライブゲーム進行パートにおける処理の流れを表すフローチャートである。なお、以降の図面に示すフローチャートにおいて、左図は、キャラクタ制御装置110Bの動作を表し、右図は、ユーザ端末800Aの動作を表し、左右を結ぶ破線の矢印は、データの流れを表す。なお、キャラクタ制御装置110B及びユーザ端末800A間で送受信されるデータは、サーバ600を介して行われるものとする。以降、キャラクタ制御装置110Bがサーバ600を介してユーザ端末800Aに情報を送信することを、単に、キャラクタ制御装置110Bがユーザ端末800Aに情報を送信する、と記載する。また、ユーザ端末800Aがサーバ600を介してキャラクタ制御装置110Bに情報を送信することを、単に、ユーザ端末800Aがキャラクタ制御装置110Bに情報を送信する、と記載する。また、以降の説明において、ユーザ端末800C、800Dに係る説明は、ユーザ端末800Aに係る記載において各参照符号の末尾のAをC、Dと読み替えることにより、同様に説明される。
<Processing flow of live game distribution part>
FIG. 21 is a flowchart showing the flow of processing in the live game progression part, which is executed by each device constituting the
ステップS101において、キャラクタ制御装置110Bの仮想空間制御部2106は、第1仮想空間11_1を表す第1仮想空間データに基づいて、第1仮想空間11_1Bを規定する。第1仮想空間11_1Bは、キャラクタ制御装置110Bにおいて実現される仮想空間である。第1仮想空間データは、例えば、サーバ600から供給される。ステップS101は、所定の配信開始時刻以降に、ユーザ5Bによる配信開始を指示する操作に応じて実行されてもよい。
In step S101, the virtual
ステップS201において、ユーザ端末800Aの仮想空間制御部8106は、第1仮想空間11_1を表す第1仮想空間データに基づいて、第1仮想空間11_1Aを規定する。第1仮想空間11_1Aは、ユーザ端末800Aにおいて実現される仮想空間である。第1仮想空間データは、例えば、サーバ600から供給される。ステップS201は、所定の配信開始時刻に、ユーザ8Aによる視聴開始を指示する操作に基づいて実行されてもよい。
In step S201, the virtual
なお、所定の配信開始時刻は、あらかじめ、サーバ600からキャラクタ制御装置110B及びユーザ端末800Aに通知されていてもよい。また、所定の配信開始時刻は、キャラクタ制御装置110Bからユーザ端末800Aに通知されていてもよい。
The predetermined distribution start time may be notified to the
ステップS102において、仮想空間制御部2106は、第1仮想空間11_1Bに、仮想カメラ14_B1を配置する。仮想カメラ14_B1による視野画像1400_B1は、アバターオブジェクト6Bから見た第1仮想空間11_1Bの視野画像である。
In step S102, the virtual
ステップS202において、仮想空間制御部8106は、第1仮想空間11_1Aに、仮想カメラ14_A1を配置する。仮想カメラ14_A1は、第1仮想空間11_1Aにおいてアバターオブジェクト6Bが存在し得る領域を視認可能な位置及び方向に配置される。例えば、第1仮想空間11_1において前方と規定された領域にアバターオブジェクト6Bが存在し得るとすると、仮想カメラ14_A1は、第1仮想空間11_1の後方に、前方に向かう方向で配置されてもよい。仮想カメラ14_A1による視野画像1400_A1は、第1仮想空間11_1Aにおいてアバターオブジェクト6Bの動作を視聴するのに好適な視野画像であり、本発明における第1視野画像の一例に相当する。
In step S202, the virtual
ステップS103において、仮想空間制御部2106は、第1仮想空間11_1Bに、アバターオブジェクト6B及び所定のオブジェクト(進行ボタンオブジェクト)を配置する。進行ボタンオブジェクトは、上述した所定の仮想オブジェクトの一例である。
In step S103, the virtual
ステップS104において、仮想空間制御部2106は、ユーザ端末800Aに対して、アバターオブジェクト6B及び進行ボタンオブジェクトを表す情報を送信する。
In step S104, the virtual
ステップS203において、仮想空間制御部8106は、受信した情報に基づいて、第1仮想空間11_1Aに、アバターオブジェクト6B及び所定の仮想オブジェクトを配置する。ここでは、所定の仮想オブジェクトとして、押下する動作の対象となる進行ボタンオブジェクトが配置されるものとする。これにより、ユーザ端末800A及びキャラクタ制御装置110B間で、アバターオブジェクト6B及び進行ボタンオブジェクトが同期して配置される。
In step S203, the virtual
ステップS105において、仮想空間制御部2106は、HMD120の動きに応じて変化する仮想カメラ14_B1の位置及び方向に基づいて、視野画像1400_B1を表示し、更新する。以降のステップにおいて、視野画像1400_B1の更新は、HMD120の動きに応じて継続して実行されるものとする。
In step S105, the virtual
ステップS204において、仮想空間制御部8106は、仮想カメラ14_A1の位置及び方向に基づいて、視野画像1400_A1を表示し、更新する。以降のステップにおいても、視野画像1400_A1の更新は、アバターオブジェクト6Bの動作及び各仮想オブジェクトの挙動に応じて継続して実行されるものとする。
In step S204, the virtual
ステップS106において、仮想空間制御部2106は、ユーザ5Bの動きに応じてアバターオブジェクト6Bの動作を制御する。
In step S106, the virtual
ステップS107において、仮想空間制御部2106は、アバターオブジェクト6Bの動作を表す動作指図データを、ユーザ端末800Aに送信する。
In step S107, the virtual
ステップS205において、仮想空間制御部8106は、受信した動作指図データに基づいて、アバターオブジェクト6Bの動作を制御する。
In step S205, the virtual
なお、ステップS106、S107、S205の一連の処理は、以降のステップにおいても、継続して実行されるものとする。 Note that the series of processes of steps S106, S107, and S205 are continuously executed in the subsequent steps.
ステップS108及びステップS206において、ゲーム進行部2105及びゲーム進行部8105は、互いに必要となる情報を送受信しながら、第1ミニゲームを進行する。第1ミニゲームを進行する処理の流れの詳細については後述する。
In step S108 and step S206, the
ステップS109において、ゲーム進行部2105は、ユーザ5Bの動きに応じてアバターオブジェクト6Bが所定の動作を行ったか否かを判断する。所定の動作とは、上述したように、仮想オブジェクトを対象とする動作であり、ここでは、操作オブジェクトを進行ボタンオブジェクトに接触させる動作である。例えば、進行ボタンオブジェクトを押下する動作であってもよい。当該ステップは、Yesと判断されるまで繰り返し実行される。ステップS109でYesの場合、次のステップS110の処理が実行される。
In step S109, the
ステップS110において、仮想空間制御部2106は、所定の動作を表す動作指図データを、ユーザ端末800Aに送信する。
In step S110, the virtual
ステップS207において、仮想空間制御部8106は、受信した動作指図データに基づいて、アバターオブジェクト6Bに所定の動作をさせる。ここでは、アバターオブジェクト6Bは、進行ボタンオブジェクトを押す動作を行う。
In step S207, the virtual
これにより、アバターオブジェクト6Bの所定の動作に応じて、ゲームの進行は、第1ミニゲームから第2ミニゲームに遷移する。
As a result, the progress of the game transitions from the first mini-game to the second mini-game according to a predetermined action of the
ステップS112及びS208において、ゲーム進行部2105及びゲーム進行部8105は、互いに必要となる情報を送受信しながら、第2ミニゲームを進行する。第2ミニゲームを進行する処理の流れの詳細については後述する。
In steps S112 and S208, the
<キャラクタ制御装置110Bにおける第1仮想空間11_1B>
図22は、キャラクタ制御装置110Bにおいて、ステップS101〜S107が実行されることにより実現される第1仮想空間11_1B及び視野画像1400_B1の一例を模式的に示す図である。図22(A)では、第1仮想空間11_1に、アバターオブジェクト6B、仮想カメラ14_B1、および進行ボタンオブジェクト2241が少なくとも配置される。ユーザ5B(第1ユーザ)は、頭部にHMD120を装着している。ユーザ5Bは、ユーザ5Bの身体の右側の一部を構成する右手(第1部位)で右コントローラ300Rを把持し、ユーザ5Bの身体の左側の一部を構成する左手(第2部位)で左コントローラ300Lを把持している。
<First virtual space 11_1B in
FIG. 22 is a diagram schematically showing an example of the first virtual space 11_1B and the visual field image 1400_B1 realized by executing steps S101 to S107 in the
HMD120は、モーションセンサとして機能するセンサ190を備える。右コントローラ300RBおよび左コントローラ300LBは、モーションセンサ420を備える。ユーザ5Bは、さらに、モーションセンサ1841〜1843を装着している。モーションセンサ1841は、ベルト1844によってユーザ5Bの腰部に装着されている。モーションセンサ1842は、ユーザ5Bの右足の甲に装着されている。モーションセンサ1843は、ユーザ5Bのユーザ5Bの左足の甲に装着されている。モーションセンサ1841〜1843は、有線または無線によってコンピュータ200に接続されている。
The
ある局面において、ユーザ5Bに装着されるモーションセンサは、ベースステーション(図示しない)から照射される信号(例えば赤外線レーザ)の到達時間と角度とを検出する。コンピュータ200のプロセッサ210(以下、単にプロセッサ210)は、モーションセンサの検出結果に基づいて、ベースステーションに対するモーションセンサの位置を検出する。プロセッサ210は、さらに、ベースステーションに対するモーションセンサの位置を、所定点(例えば頭部に装着されたセンサ190の位置)を基準として規格化してもよい。
In one aspect, the motion sensor attached to the
アバターオブジェクト6Bは、仮想右手1831RBおよび仮想左手1831LBを含む。仮想右手1831RBは操作オブジェクトの一種であり、ユーザ5Bの右手の動きに応じて第1仮想空間11_1Bにおいて動くことができる。仮想左手1831LBは操作オブジェクトの一種であり、ユーザ5Bの左手の動きに応じて第1仮想空間11_1Bにおいて動くことができる。
The avatar object 6B includes a virtual right hand 1831RB and a virtual left hand 1831LB. The virtual right hand 1831RB is a kind of operation object, and can move in the first virtual space 11_1B according to the movement of the right hand of the
図22(A)に示す第1仮想空間11_1は、コンピュータ200において番組コンテンツが再生されることによって、構築される。ユーザ5Bは、アバターオブジェクト6Bにパフォーマンスを実行させるために、自身の身体を動かす。コンピュータ200は、ユーザ5Bに装着される各種のモーションセンサの出力に基づいて、ユーザ5Bの動きを検出する。第1仮想空間11_1において、アバターオブジェクト6Bは、特定されたユーザ5Bの動きに応じて、現実空間におけるユーザ5Bの動きが反映されたパフォーマンスを実行する。第1仮想空間11_1においてアバターオブジェクト6Bがユーザ5Bに動きに応じたパフォーマンスを実行すると、ユーザ端末800Aにおいて実現される第1仮想空間11_1Aにおいても、アバターオブジェクト6Bが同期して同じパフォーマンスを実行する。このように、ユーザ5Bは、アバターオブジェクト6Bによる番組として、複数のユーザ端末800Aのユーザ8Aにライブゲーム進行パートをそれぞれ配信する配信者としての役割を有する。
The first virtual space 11_1 shown in FIG. 22(A) is constructed by playing back program content on the
図22(A)において、仮想カメラ14_B1は、アバターオブジェクト6Bの頭部に配置される。仮想カメラ14_B1は、仮想カメラ14_B1の位置および向きに応じた視界領域15_11を規定する。仮想カメラ14_B1は、視界領域15Bに対応する視界画像1400_B1を生成して、図21(B)に示すようにHMD120に表示させる。ユーザ5Bは、視界画像1400_B1を視認することによって、アバターオブジェクト6Bの視点で第1仮想空間11_1Bの一部を視認する。これにより、ユーザ5Bは、あたかもユーザ5B自身がアバターオブジェクト6Bであるかのような仮想体験を、得ることができる。視界画像1400_B1には、進行ボタンオブジェクト2241が含まれる。したがって、ユーザ5Bは、ライブゲーム進行パートにおいて進行を進めるために必要な進行ボタンオブジェクトを視認できる。
In FIG. 22A, the virtual camera 14_B1 is arranged on the head of the
<ユーザ端末800における第1仮想空間11_1A>
図23は、ユーザ端末800において、ステップS201〜S205が実行されることにより実現される第1仮想空間11_1A及び視野画像1400_A1の一例を模式的に示す図である。図23(A)では、第1仮想空間11_1Aに、アバターオブジェクト6B、仮想カメラ14_A1、および進行ボタンオブジェクト2241が少なくとも配置される。第1仮想空間11_1Aは、図22に示した第1仮想空間11_1Bに同期している。ユーザ8Aは、左手にユーザ端末800Aを把持している。図23の例では、ユーザ8は、アバターオブジェクト6Bが実演する番組であるライブゲーム進行パートを、ユーザ端末800Aの画面を視認しながら視聴する。
<First virtual space 11_1A in
FIG. 23 is a diagram schematically showing an example of the first virtual space 11_1A and the visual field image 1400_A1 realized by executing steps S201 to S205 in the
図23(A)に示す第1仮想空間11_1Aは、ユーザ端末800Aにおいて番組コンテンツが再生されることによって、構築される。第1仮想空間11_1Aにおいて、アバターオブジェクト6Bは、ユーザ5Bの動きに基づいて、ライブゲーム進行パートの配信者としてパフォーマンスを実行する。ユーザ8Aは、ユーザ端末800Aの画面を通じて、ライブゲーム進行パートの参加者としてアバターオブジェクト6Bのパフォーマンスを視聴する。また、ユーザ8C、8Dは、ユーザ端末800C、800Dの画面を通じて、ライブゲーム進行パートの参加者としてアバターオブジェクト6Bのパフォーマンスを視聴する。このように、アバターオブジェクト6Bによって進行するライブゲーム進行パートは、複数のユーザ8に対して同時にストリーミング配信される。
The first virtual space 11_1A shown in FIG. 23A is constructed by reproducing the program content on the
図23(A)において、第1仮想空間11_1Aの後方に、仮想カメラ14_A1が配置される。仮想カメラ14_A1は、仮想カメラ14_A1の位置および向きに応じた視界領域15Aを規定する。プロセッサ810は、視界領域15Aに対応する視界画像1400_A1を生成して、図23(B)に示すように、タッチスクリーン870の表示部8702に表示する。視界画像1400_A1には、パフォーマンスを実行するアバターオブジェクト6Bが少なくとも含まれる。ユーザ8Aは、視界画像1400_A1を視認することによって、アバターオブジェクト6Bと、アバターオブジェクト6Bが登場する第1仮想空間11_1Aの一部とを、視認する。これにより、ユーザ8Aは、あたかもアバターオブジェクト6Bが実際の配信者であるかのような仮想体験を、得ることができる。
In FIG. 23A, a virtual camera 14_A1 is arranged behind the first virtual space 11_1A. The virtual camera 14_A1 defines a
<第1ミニゲームの処理フロー>
図24は、ゲームシステム1500を構成する各装置によって実行される、第1ミニゲームにおける処理の流れを表すフローチャートである。図24に示す処理の流れは、図21に示したステップS108及びS206における処理の詳細に相当する。
<Processing flow of the first mini game>
FIG. 24 is a flowchart showing the flow of processing in the first mini game, which is executed by each device constituting the
ここでは、第1ミニゲームとして、ジャンケンゲームが適用されていることを想定する。また、第1ミニゲームでは、第1条件が設定されている。第1条件とは、ユーザ8Aが、アバターオブジェクト6Bにジャンケンで勝利することである。
Here, it is assumed that the rock-paper-scissors game is applied as the first mini game. Further, in the first mini game, the first condition is set. The first condition is that the
なお、以下に説明するように、第1条件(第2課題)が設定された第1ミニゲーム(第2プレイパート)は、後述する第2ミニゲーム(第1プレイパート)が開始する前に、キャラクタ制御装置110Bのユーザ5Bの操作に応じてアバターオブジェクト6Bが行う動作に基づいて進行する。
As described below, the first mini game (second play part) in which the first condition (second task) is set is before the start of the second mini game (first play part) described later. , A
ステップS301において、キャラクタ制御装置110Bの仮想空間制御部2106は、第1仮想空間11_1Bに、本発明における第3オブジェクトと、複数の選択肢を表す仮想オブジェクトとを配置する。
In step S301, the virtual
ここで、第3オブジェクトは、第1状態に関する情報を表す仮想オブジェクトである。例えば、第3オブジェクトは、当該情報を表示可能な仮想パネル、仮想ディスプレイ、仮想黒板、仮想電光掲示板等であってもよいが、これらに限られない。本実施形態では、第3オブジェクトとして、仮想パネルを表すパネルオブジェクトが配置されるものとする。 Here, the third object is a virtual object that represents information about the first state. For example, the third object may be a virtual panel capable of displaying the information, a virtual display, a virtual blackboard, a virtual electronic bulletin board, or the like, but is not limited to these. In the present embodiment, a panel object representing a virtual panel is arranged as the third object.
パネルオブジェクトには、第1状態に関する情報として、第1ミニゲームに関する情報が表示される。第1ミニゲームに関する情報とは、例えば、第1ミニゲームのルール説明、第1ミニゲームで設定される第1条件、第1条件を満たすことにより得られる報酬等に関する情報を含んでいてもよいが、これらに限られない。 On the panel object, information about the first mini game is displayed as information about the first state. The information on the first mini game may include, for example, information on the rule of the first mini game, the first condition set in the first mini game, information about a reward obtained by satisfying the first condition, and the like. However, it is not limited to these.
また、ここでは、複数の選択肢を表す仮想オブジェクトとして、選択肢の各々を表す仮想オブジェクトが配置される。具体的には、ジャンケンのグー・チョキ・パーのそれぞれに対応する選択肢オブジェクトが配置される。この例では、1つの選択肢オブジェクトが1つの選択肢に対応し、選択肢の個数(ここでは3個)の選択肢オブジェクトが配置される。 Also, here, virtual objects representing each of the options are arranged as virtual objects representing the plurality of options. Specifically, the choice objects corresponding to each of the rock-paper-scissors goo, choki, and par are arranged. In this example, one option object corresponds to one option, and as many option objects as the number of options (here, three) are arranged.
ステップS302において、仮想空間制御部2106は、パネルオブジェクト及び3個の選択肢オブジェクトの情報を、ユーザ端末800Aに送信する。
In step S302, the virtual
ステップS401において、ユーザ端末800Aの仮想空間制御部8106は、受信した情報に基づいて、第1状態に応じた第1オブジェクト(ここでは、パネルオブジェクト及び3個の選択肢オブジェクト)を、第1仮想空間11_1Aに配置する。また、仮想空間制御部8106は、第1オブジェクトを対象とするアバターオブジェクト6Bの動作を、第1動作として適用する。
In step S401, the virtual
ステップS402において、ゲーム進行部8105は、第1UIオブジェクトを、表示部8702に表示する。
In step S402, the
ここで、第1UIオブジェクトは、第1状態に応じたUIオブジェクトである。具体的には、第1UIオブジェクトは、第1ミニゲームにおいてユーザ8Aからの操作を受け付けるユーザインタフェースオブジェクトである。ここでは、ジャンケンのグー・チョキ・パーの選択肢のそれぞれに対応する3個のUIボタンが表示される。3個のUIボタンは、操作可能な状態と、操作不能な状態とを有し、初期状態では、操作不能な状態であってもよい。ただし、第1UIオブジェクトは、UIボタンに限らず、その他のUIオブジェクトであってよい。
Here, the first UI object is a UI object corresponding to the first state. Specifically, the first UI object is a user interface object that receives an operation from the
ステップS303において、仮想空間制御部2106は、ユーザ5Bの動きに応じて、アバターオブジェクト6Bに、第1UIオブジェクトの操作をユーザ8Aに対して促す動作をさせる。
In step S303, the virtual
ステップS304において、仮想空間制御部2106は、アバターオブジェクト6Bの動作を表す動作指図データを、ユーザ端末800Aに送信する。
In step S304, the virtual
ステップS403において、仮想空間制御部8106は、受信した動作指図データに基づいて、アバターオブジェクト6Bに当該促す動作をさせる。
In step S403, the virtual
ステップS404において、ゲーム進行部8105は、アバターオブジェクト6Bの第1動作に基づいて、第1条件の少なくとも一部を満たすための第1処理を実行する。
In step S404, the
ここでは、ゲーム進行部8105は、アバターオブジェクト6Bの促す動作に応じて、第1UIオブジェクトを操作可能な状態にするとの第1処理を実行する。ジャンケンに勝利するとの第1条件を満たすためには、少なくとも第1UIオブジェクトである3個のUIボタンが操作可能となる必要があるため、当該第1処理が実行される。そして、ゲーム進行部8105は、第1UIオブジェクトに対するユーザの操作を受け付ける。ここでは、3個のUIボタンの何れかに対する操作が受け付けられる。
Here, the
ステップS305において、仮想空間制御部2106は、ユーザ5Bの動きに応じて、アバターオブジェクト6Bに、3個の選択肢オブジェクトの何れかを選択する動作をさせる。選択する動作とは、例えば、選択肢オブジェクトを持つ、指差す、回転させる、又はこれらの動作を含む各種動作を組み合わせた動作であってもよい。
In step S305, the virtual
ステップS306において、仮想空間制御部2106は、アバターオブジェクト6Bの動作を表す動作指図データを、ユーザ端末800Aに送信する。
In step S306, the virtual
ステップS405において、仮想空間制御部8106は、受信した動作指図データに基づいて、アバターオブジェクト6Bに当該選択する動作をさせる。
In step S405, the virtual
ステップS406において、ゲーム進行部8105は、アバターオブジェクト6Bの選択する動作に応じて、第1UIオブジェクトを操作不能な状態にする処理を実行する。本ステップは、「後出し」となる操作を受け付けないための処理である。
In step S406, the
ステップS407において、ゲーム進行部8105は、第1ミニゲームの結果を判定する。本実施形態では、ゲーム進行部8105は、ユーザ5Bとユーザ8との間でジャンケンの勝敗を判定する。ここでは、ユーザ8によって操作されたUIボタンが示す選択肢と、アバターオブジェクト6Bによって選択された選択肢オブジェクトが示す選択肢とが比較されて、勝敗が判定される。
In step S407, the
ステップS407において、負けたと判定された場合、次のステップS408の処理が省略され、後述のステップS409の処理が実行される。ステップS407において、勝ったと判定された場合、次のステップS408の処理が実行される。 When it is determined in step S407 that the player has lost, the process of the next step S408 is omitted and the process of step S409 described below is executed. If it is determined in step S407 that the player has won, the process of step S408 is performed.
ステップS408において、ゲーム進行部8105は、第1ミニゲーム(第2プレイパート)における第1条件(第2課題)の達成度が大きいほど、ゲーム処理として、第2ミニゲーム(第1プレイパート)における第2条件(第1課題)を満たす上でより有利な処理を実行する。
In step S408, the
具体的には、ゲーム進行部8105は、第2ミニゲームを有利に進める権利を表す情報をユーザに関連付けてメモリ820に記憶させる。
Specifically, the
ステップS409において、ゲーム進行部8105は、第1ミニゲームの結果を、キャラクタ制御装置110Bに送信する。ここでは、ジャンケンの結果が送信される。
In step S409, the
ステップS307において、キャラクタ制御装置110Bのゲーム進行部2105は、各ユーザ8Aの第1ミニゲームの結果を表す情報を、HMD120に表示する。結果を表す情報は、例えば、視野画像1400_B1に重畳して表示されてもよい。ここでは、各ユーザのジャンケンの結果を表す情報が表示される。各ユーザのジャンケンの結果を表す情報は、勝った人数、負けた人数、アイコの人数等を表す集計情報であってもよいし、各ユーザの勝敗の一覧情報であってもよい。また、ジャンケンの結果を表す情報は、ユーザ名を含んでいてもよい。
In step S307, the
<第1ミニゲーム進行中における第1仮想空間11_1A、11B>
図25は、第1ミニゲームが進行中における第1仮想空間11_1を模式的に示す図である。図25(A)は、キャラクタ制御装置110Bにおいて実現される第1仮想空間11_1Bの斜視図である。図25(B)は、ユーザ端末800Aにおいて実現される第1仮想空間11_1Aの上面図である。これらの第1仮想空間11_1A及び11_Bは、同期している。
<First virtual spaces 11_1A and 11B while the first mini game is in progress>
FIG. 25 is a diagram schematically showing the first virtual space 11_1 during the progress of the first mini game. FIG. 25A is a perspective view of the first virtual space 11_1B realized in the
図25(A)及び(B)において、第1仮想空間11_1A及び11_Bには、アバターオブジェクト6Bと、進行ボタンオブジェクト2241と、パネルオブジェクト2551と、選択肢オブジェクト2552_1〜2552_3とが配置されている。また、第1仮想空間11_Bには、仮想カメラ14_B1が配置されている。また、第1仮想空間11_Aには、仮想カメラ14_A1が配置されている。
In FIGS. 25A and 25B, an
仮想カメラ14_B1は、アバターオブジェクト6Bの頭部に、アバターオブジェクト6Bの向いている方向に向かって配置されている。なお、仮想カメラ14_B1は、第1仮想空間11_1Aには配置されないので、ユーザ端末800Aにおいて表示される視野画像1400_A1には含まれない。
The virtual camera 14_B1 is placed on the head of the
仮想カメラ14_A1は、第1仮想空間11_1の後方に、前方の領域に向かって配置される。前方とは、ここでは、紙面の左方向であるものとする。なお、仮想カメラ14_A1は、第1仮想空間11_1Bには配置されないので、キャラクタ制御装置110Bにおいて表示される視野画像1400_B1には含まれない。
The virtual camera 14_A1 is arranged behind the first virtual space 11_1 toward the front area. Here, the front side means the left direction on the paper surface. Since the virtual camera 14_A1 is not arranged in the first virtual space 11_1B, it is not included in the visual field image 1400_B1 displayed on the
アバターオブジェクト6Bは、仮想カメラ14_B1と同一の方向を向いて配置される。仮想カメラ14_B1の方向は、ユーザ8Aが仮想的に存在する方向である。以降、仮想カメラ14_B1の方向を、単に、ユーザ8Aの方向とも記載する。
The
3個の選択肢オブジェクト2552_1〜2552_3は、先端にある円板部の一方の面に、グー・チョキ・パーを表すイラストが描かれている。これらの円板部の他方の面には、イラストが描かれていない。3個の選択肢オブジェクト2552_1〜2552_3は、イラストが描かれていない面がユーザ8Aの方を向くように配置されている。
The three option objects 2552_1 to 2552_3 have an illustration showing goo choki per on one surface of the disk portion at the tip. No illustration is drawn on the other side of these discs. The three option objects 2552_1 to 2552_3 are arranged so that the surface on which the illustration is not drawn faces the
パネルオブジェクト2551は、アバターオブジェクト6Bよりも前方の領域、換言すると、アバターオブジェクト6Bの背後に配置されている。ここでは、パネルオブジェクト2551は、板状であり、ユーザ8Aの方向側の面に、第1ミニゲームに関する情報が表示されている。
The
進行ボタンオブジェクト2241は、アバターオブジェクト6Bの向かう方向に対して左側の領域(図25(B)に示した第1仮想空間11_1Aにおける紙面に対して上側の領域)に配置されているものとする。
It is assumed that the
<第1ミニゲーム進行中における視野画像及びゲーム画面>
図26〜図29は、第1ミニゲーム進行中における視野画像及びゲーム画面の遷移例を示す図である。図26〜図29の各図において、(A)は、ステップS301〜S307が実行されることによりキャラクタ制御装置110BのHMD120に表示される視野画像1400_B1を表す。(B)は、S401〜410が実行されることによりユーザ端末800Aの表示部8702に表示されるゲーム画面を表す。
<Field-of-view image and game screen during the first mini game>
26 to 29 are diagrams showing transition examples of the visual field image and the game screen during the progress of the first mini game. 26 to 29, (A) represents a visual field image 1400_B1 displayed on the
図26は、ジャンケンゲームの開始時における視野画像及びゲーム画面を示す図である。 FIG. 26 is a diagram showing a view image and a game screen at the start of the rock-paper-scissors game.
図26(A)において、キャラクタ制御装置110Bにおける視野画像1400_B1は、進行ボタンオブジェクト2241と、選択肢オブジェクト2552_1〜2552_3と、アバターオブジェクト6Bの手の部分である仮想右手1831RB及び仮想左手1831LBと、情報2651とを含む。パネルオブジェクト2551は、アバターオブジェクト6Bの背後にあるため、視野画像1400_B1に含まれない。
In FIG. 26A, the visual field image 1400_B1 in the
進行ボタンオブジェクト2241は、アバターオブジェクト6Bから見て向かって左側に配置されている。
The
選択肢オブジェクト2552_1〜2552_3は、アバターオブジェクト6Bから見て、グー・チョキ・パーのイラストが描かれた面が見えるように配置されている。
The option objects 2552_1 to 2552_3 are arranged so that the surface on which the illustration of Goo Choki Par is drawn can be seen when viewed from the
また、アバターオブジェクト6B自身の仮想右手1831RB及び仮想左手1831LBが視野画像1400_B1に含まれる。これにより、ユーザ5Bは、仮想右手1831RB及び仮想左手1831LBに、選択肢オブジェクト2552_1〜2552_3又は進行ボタンオブジェクト2241を選択させるよう、容易に動くことができる。
Further, the virtual right hand 1831RB and the virtual left hand 1831LB of the
情報2651は、視野画像1400_B1に重畳して表示される情報である。情報2651は、現在、当該第1ミニゲームを含むライブゲーム進行パートを視聴しているユーザ8の数を表している。ここでは、ユーザ端末800A、800C、800Dを含む132台のユーザ端末800によって仮想空間11_1が共有されており、視聴しているユーザ8の数(視聴者数)が132人であることが表示されている。情報2651は、例えば、サーバ600から送信されることにより重畳表示されてもよい。
The
ここで、ユーザ5Bが、第1ミニゲームを開始することをユーザ8Aに対して通知する動作として「ジャンケンゲームを始めるよ」との音声2671を発声する動作を行うと、アバターオブジェクト6Bが、音声2671を発声するよう制御される。なお、第1ミニゲームを開始することを通知する動作は、発声に限らず、手振り等であってもよいし、各種の動作の組み合わせであってもよい。
Here, when the
また、ユーザ5Bが、ユーザ8Aに対して第1UIオブジェクトの操作を促す動作として、「グー・チョキ・パーボタンのどれかを押してね」との音声2672を発声する動作を行うと、アバターオブジェクト6Bが、音声2672を発声するよう制御される。なお、第1UIオブジェクトの操作を促す動作は、発声に限らず、手振り等であってもよいし、各種の動作の組み合わせであってもよい。
Further, when the
図26(B)において、ユーザ端末800Aの表示部8702に表示されるゲーム画面は、視野画像1400_A1と、UI領域2661とを含む。視野画像1400_A1は、アバターオブジェクト6Bと、進行ボタンオブジェクト2241と、選択肢オブジェクト2552_1〜2552_3と、パネルオブジェクト2551とを含む。
In FIG. 26B, the game screen displayed on the
アバターオブジェクト6Bは、ユーザ8Aの方向を向いているので、正面を向いている。また、アバターオブジェクト6Bの仮想右手1831RB及び仮想左手1831LBが視野画像1400_A1に含まれている。ここれにより、ユーザ8Aは、仮想右手1831RB及び仮想左手1831LBが何れの選択肢オブジェクトを選択する動作を行うかに注目することができる。
Since the
進行ボタンオブジェクト2241は、アバターオブジェクト6Bから見て左側、すなわち、視野画像1400_A1の右側の領域に配置されている。
The
選択肢オブジェクト2552_1〜2552_3は、ユーザ8Aから見て、グー・チョキ・パーのイラストが描かれた面が見えないように配置されている。
The option objects 2552_1 to 2552_3 are arranged so that the surface on which the illustration of Goo Choki Par is drawn cannot be seen from the
パネルオブジェクト2551は、アバターオブジェクト6Bの背後に、情報が表示される面をユーザ8Aの方向に向けて配置されている。ここでは、パネルオブジェクト2551には、第1ミニゲームに関する情報として、ジャンケンゲームの説明を表す情報が表示されている。また、当該情報には、ジャンケンゲームに勝利したときの報酬(ここでは、第2ミニゲームで有利になる権利が付与されること)を表す情報が含まれていてもよい。
The
UI領域2661は、UIボタン2661_1〜2661_3を含む。UIボタン2661_1〜2661_3のそれぞれは、グー・チョキ・パーのイラストを含んでいる。UIボタン2661_1に対する操作が受け付けられると、グーを選択したことがメモリ820に記憶される処理が実行される。UIボタン2661_2に対する操作が受け付けられると、パーを選択したことがメモリ820に記憶される処理が実行される。UIボタン2661_1に対する操作が受け付けられると、チョキを選択したことがメモリ820に記憶される処理が実行される。UIボタン2661_1〜2661_3は、初期状態で操作不能である。
The
ここで、キャラクタ制御装置110Bから、音声2671、2672を発声する動作を表す動作指図データが受信されると、視野画像1400_A1に含まれるアバターオブジェクト6Bが、音声2671、2672を発声するよう制御される。
Here, when the action instruction data representing the action of uttering the
これにより、ユーザ8Aは、アバターオブジェクト6Bが音声2671を発声する動作に応じてジャンケンゲームが開始することを認識する。また、ユーザ8Aは、ジャンケンゲームのルール、報酬等を、パネルオブジェクト2551を視認することにより認識することができる。
As a result, the
また、アバターオブジェクト6Bが音声2672を発声する動作に応じて、UIボタン2661_1〜2661_3が、操作不能な状態から操作可能な状態に変化する。UIボタン2661_1〜2661_3は、操作可能な状態に変化したことを表す態様で表示されてもよい。ユーザ8Aは、アバターオブジェクト6Bが音声2672を発声する動作に応じて、UIボタン2661_1〜2661_3の何れかを押すことを動機付けられる。
Further, the UI buttons 2661_1 to 2661_3 change from the inoperable state to the operable state in response to the action of the
また、アバターオブジェクト6Bが音声2672を発声する動作に応じて、新たなUIボタンが表示されたり、表示されていたUIボタンが非表示になったりしてもよい。
In addition, a new UI button may be displayed or the displayed UI button may be hidden according to the action of the
図27は、ユーザ8Aによってボタン2661_1〜2661_3の何れかが押下された後の視野画像及びゲーム画面を示す図である。
FIG. 27 is a diagram showing a visual field image and a game screen after any of the buttons 2661_1 to 2661_3 is pressed by the
図27(A)において、キャラクタ制御装置110Bにおける視野画像1400_B1は、図26(A)に示した視野画像1400_B1に対して、情報2651の代わりに、情報2751及び情報2752が重畳されている点が異なる。
In FIG. 27A, the visual field image 1400_B1 in the
情報2751は、情報2651と同様、現在、当該第1ミニゲームを含むライブゲーム進行パートを視聴しているユーザ8の数を表している。ここでは、第1ミニゲームが開始した時点以降に、視聴者数が2人増加して134人になっている。このように、情報2751は、ユーザ端末800Aから送信される情報に基づいて、リアルタイムに内容が更新される。
Like the
情報2752は、第1仮想空間11_1を共有する複数のユーザ端末800のユーザ8のうち、第1UIオブジェクトに対する操作を行ったユーザ8の数を表している。ここでは、ユーザ8Aを含む132人が、操作を行ったことが表されている。情報2752は、ユーザ端末800Aから送信される情報に基づいて、リアルタイムに内容が更新される。
The
図27(B)において、ユーザ端末800Aの表示部8702に表示されるゲーム画面は、図26(B)に示したゲーム画面と同様に、視野画像1400_A1と、UI領域2661とを含む。ただし、UI領域2661におけるUIボタン2661_1の態様が変化している。UIボタン2661_1は、当該ボタンに対する操作が受け付けられた状態を表す態様で表示される。当該態様とは、例えば、当該UIボタンの色が変化した態様であってもよいし、押し込まれている様子に変化した態様であってもよいが、これらに限られない。
In FIG. 27B, the game screen displayed on the
図28は、アバターオブジェクト6Bにより選択肢オブジェクト2552_1〜2552_3の何れかが選択された後の視野画像及びゲーム画面を示す図である。
FIG. 28 is a diagram showing a view image and a game screen after any of the choice objects 2552_1 to 2552_3 is selected by the
図28(A)において、キャラクタ制御装置110Bにおける視野画像1400_B1は、図26(A)に示した視野画像1400_B1に対して、アバターオブジェクト6Bが選択肢オブジェクト2552_3を選択した様子を含む点と、情報2752の代わりに情報2852が重畳されている点とが異なる。
In FIG. 28A, the visual field image 1400_B1 in the
アバターオブジェクト6Bは、ユーザ5Bの動作に応じて、仮想右手1831RBによって選択肢オブジェクト2552_3を選択する。具体的には、ここでは、仮想空間制御部2106によって、仮想右手1831RBと、選択肢オブジェクト2552_3とが接触していると判定され、かつ、コントローラ300が有する所定ボタンの押下が検出されたとする。これにより、仮想右手1831RBと、選択肢オブジェクト2552_3とが関連付けられ、選択肢オブジェクト2552_3は、仮想右手1831RBと共に移動する。ここでは、アバターオブジェクト6Bは、選択肢オブジェクト2552_3を把持し、持ち上げて、選択肢の1つである「チョキ」のイラストが描かれている面をユーザ8の方向に向けるように選択肢オブジェクト2552_3を回転させたものとする。把持されている状態での選択肢オブジェクト2552_3の回転は、例えば、コントローラ300が有する他の所定ボタンが押下されたことに応じて実行されるように定められていてもよい。また、把持されている状態での選択肢オブジェクト2552_3の回転は、仮想右手1831RBについて定められた所定の動きに応じて実行されるよう定められていてもよい。
The
また、ユーザ5Bは、アバターオブジェクト6Bに選択肢オブジェクト2552_1〜2552_3の何れかを選択させるための動作を行うと共に、「ジャンケンポン」との音声2871を発声する動作を行う。これにより、アバターオブジェクト6Bは、選択肢オブジェクト2552_3を選択するとともに、音声2871を発声するよう制御される。
Further, the
情報2852は、複数のユーザ端末800における第1UIオブジェクトに対する操作結果を表している。ここでは、情報2852は、UIボタン2661_1〜2661_3の各々に対する操作を行ったユーザ8の数を表している。情報2852によれば、ユーザ8Aを含む43人が、UIボタン2661_1を押下してグーを選択し、他の46人のユーザ8が、UIボタン2661_2を押下してパーを選択し、他の45人のユーザ8が、2661_1を押下してチョキを選択している。情報2852は、アバターオブジェクト6Bが選択肢オブジェクト2552_3を選択する動作を行った後に、ユーザ端末800Aから送信される情報に基づいて表示されることが望ましい。
The
なお、情報2852を含む領域に対するアバターオブジェクト6Bの動作が受け付けられることにより、複数のユーザ端末800における操作結果の詳細が表示されてもよい。例えば、操作結果の詳細とは、各選択肢を選択したユーザ8の識別情報の一覧情報であってもよい。例えば、「グーの人:43人」の表示領域に対して仮想右手1831RB又は仮想左手1831LBが接触する動作が受け付けられると、グーを選択した「ユーザA、ユーザX、ユーザY・・・」といった一覧情報が重畳表示されてもよい。ただし、操作結果の詳細は、これに限られない。
The details of the operation result on the plurality of
また、情報2852は、図示のような選択肢別の集計情報に限られない。例えば、情報2852は、複数のユーザ8の各々の識別情報と、当該ユーザ8によって押下されたUIボタン2661_1〜2661_3の何れかの識別情報とを一覧として含んでいてもよい。この場合、情報2852は、スクロール可能に表示されてもよい。また、この場合、情報2852は、複数のユーザ端末800の何れかにおいてUIボタン2661_1〜2661_3の何れかが押下される度に、当該ユーザ8の識別情報と、押下されたUIボタン2661_1〜2661_3の何れかの識別情報とを追加して含むよう更新されてもよい。この場合、情報2852は、自動でスクロールして表示されてもよい。
Further, the
また、ユーザ5Bは、アバターオブジェクト6Bに選択肢オブジェクト2552_3を選択させた後、複数のユーザ端末800におけるジャンケンゲームの結果に応じた動作を行う。ここでは、例えば、「グーで勝った43人、おめでとう!」といった音声2872を発声する。これにより、アバターオブジェクト6Bは、音声2872を発声するよう制御される。
In addition, the
図28(B)において、ユーザ端末800Aの表示部8702に表示されるゲーム画面は、視野画像1400_A1と、UI領域2661と、情報2865とを含む。
28B, the game screen displayed on the
ここでは、キャラクタ制御装置110Bから、音声2871を発声する動作を表す動作指図データが受信されると、視野画像1400_A1に含まれるアバターオブジェクト6Bが、音声2871を発声するよう制御される。この音声2871の発声を契機に、ユーザ8Aは、自身が選択した「グー」によって勝つことのできる「チョキ」が選択されることを所望しながら、アバターオブジェクト6Bの動作に注目することができ、臨場感が増す。
Here, when the action instruction data representing the action of uttering the
また、キャラクタ制御装置110Bから送信された動作指図データに基づいて、視野画像1400_A1に含まれるアバターオブジェクト6Bは、選択肢オブジェクト2552_3を選択する動作を行うよう制御される。ここで、アバターオブジェクト6Bによって選択された選択肢オブジェクト2552_3は、「チョキ」が描かれた面がユーザ8Aの方向に向けられる。これにより、ユーザ8Aは、アバターオブジェクト6Bによって、自身が勝つことになる「チョキ」が選択されたことを認識することができる。
Further, based on the action instruction data transmitted from the
また、キャラクタ制御装置110Bから、音声2872を発声する動作を表す動作指図データが受信されると、視野画像1400_A1に含まれるアバターオブジェクト6Bが、音声2872を発声するよう制御される。これにより、ユーザ8Aは、自分と同様にジャンケンゲームに勝利した人が43人いることを認識でき、他のユーザ8と共にジャンケンゲームに参加していることの臨場感が増す。
Further, when the operation instruction data indicating the operation of uttering
情報2865は、ユーザ8Aによるジャンケンゲームの結果を表す。ここでは、情報2865は、「勝ち」との内容を含む吹き出しの態様で表示されている。ただし、情報2865の内容及び態様は、これに限られない。
The
図29は、ジャンケンゲームが終了し、次のミニゲームに遷移するときの視野画像及びゲーム画面の一例を示す図である。 FIG. 29 is a diagram showing an example of a field-of-view image and a game screen when the rock-paper-scissors game ends and a transition is made to the next mini game.
図29(A)において、キャラクタ制御装置110Bにおける視野画像1400_B1は、進行ボタンオブジェクト2241と、選択肢オブジェクト2552_1〜2552_3と、仮想左手1831LBと、情報2751とを含む。
In FIG. 29A, the visual field image 1400_B1 in the
ここでは、アバターオブジェクト6Bが、自身の左側に存在する進行ボタンオブジェクト2241に対して近づくよう移動したことを想定している。そのため、進行ボタンオブジェクト2241が、視野画像1400_B1の中央付近の領域に含まれている。また、選択肢オブジェクト2552_1〜2552_3は、視野画像1400_B1の右下方の領域に含まれている。
Here, it is assumed that the
ここで、ユーザ5Bが、第1ミニゲームから第2ミニゲームに遷移することを通知する動作として、「次のゲームに行くよ」との音声2971を発声する動作を行うと、アバターオブジェクト6Bが、音声2971を発声するよう制御される。なお、第2ミニゲームに遷移することを通知する動作は、発声に限らず、手振り等であってもよいし、各種の動作の組み合わせであってもよい。
Here, when the
また、ユーザ5Bが、音声2971を発声すると同時に、アバターオブジェクト6Bに進行ボタンオブジェクト2241を押下させる動作を行うと、アバターオブジェクト6Bが、当該動作を行うよう制御される。
Further, when the
図29(B)において、ユーザ端末800Aの表示部8702に表示されるゲーム画面は、視野画像1400_A1と、UI領域2661と、情報2981とを含む。
In FIG. 29B, the game screen displayed on the
ここで、キャラクタ制御装置110Bから、音声2971を発声する動作を表す動作指図データが受信されると、視野画像1400_A1に含まれるアバターオブジェクト6Bが、音声2971を発声するよう制御される。
Here, when the motion instruction data representing the motion of uttering the
また、キャラクタ制御装置110Bから、進行ボタンオブジェクト2241を押下する動作を表す動作指図データが受信されると、視野画像1400_A1に含まれるアバターオブジェクト6Bが、当該動作を行うよう制御される。
Further, when the operation instruction data representing the operation of pressing the
これにより、ユーザ8Aは、アバターオブジェクト6Bが音声2971を発声すると共に進行ボタンオブジェクト2241を押下する動作に応じて、第2ミニゲームに遷移することを認識する。このように、ユーザ8Aは、アバターオブジェクト6Bの動作に応じて、ミニゲームが切り替わることを、臨場感を持って認識できる。
Thus, the
情報2981は、ジャンケンゲームに勝利したことにより、次の第2ミニゲームを有利に進める権利が付与されたことを表している。これにより、ユーザは、次の第2ミニゲームが有利になったことを認識できる。
The
<第2ミニゲームの処理フロー>
図30は、ゲームシステム1500を構成する各装置によって実行される、第2ミニゲームにおける処理の流れを表すフローチャートである。図30に示す処理の流れは、図21に示したステップS112及びS208における処理の詳細に相当する。
<Processing flow of the second mini game>
FIG. 30 is a flow chart showing the flow of processing in the second mini game, which is executed by each device constituting the
ここでは、第2ミニゲームとして、ビンゴゲームが適用されていることを想定する。また、第2ミニゲームでは、第2条件が設定されている。第2条件とは、ユーザ8Aに付与されたビンゴカードにおいてビンゴが成立することである。
Here, it is assumed that a bingo game is applied as the second mini game. The second condition is set in the second mini game. The second condition is that bingo is established in the bingo card given to the
ステップS501において、キャラクタ制御装置110Bの仮想空間制御部2106は、第1仮想空間11_1Bに、本発明における第4オブジェクトと、複数の選択肢を表す仮想オブジェクトとを配置する。
In step S501, the virtual
ここで、第4オブジェクトは、第2状態に関する情報を表す仮想オブジェクトである。例えば、第4オブジェクトは、当該情報を表示可能な仮想パネル、仮想ディスプレイ、仮想黒板、仮想電光掲示板等であってもよいが、これらに限られない。本実施形態では、第4オブジェクトとして、第3オブジェクトと同様の仮想パネルを表すパネルオブジェクトが配置されるものとする。換言すると、第1ミニゲームから第2ミニゲームに切り替わると、パネルオブジェクトに表示される情報が変化する。 Here, the fourth object is a virtual object that represents information regarding the second state. For example, the fourth object may be a virtual panel capable of displaying the information, a virtual display, a virtual blackboard, a virtual electronic bulletin board, or the like, but is not limited thereto. In the present embodiment, a panel object representing a virtual panel similar to the third object is arranged as the fourth object. In other words, when the first mini game is switched to the second mini game, the information displayed on the panel object changes.
また、複数の選択肢を表す仮想オブジェクトとして、ビンゴボールの箱オブジェクトが配置される。ビンゴボールの箱オブジェクトは、それぞれ表面に数字が描かれた複数のビンゴボールオブジェクトを内部に含み、ビンゴボールオブジェクトを取り出すことができる開口部を表面に有するものとする。 Also, a bingo ball box object is arranged as a virtual object representing a plurality of options. The bingo ball box object includes a plurality of bingo ball objects each having a number drawn on its surface, and has an opening on the surface through which the bingo ball object can be taken out.
ステップS502において、仮想空間制御部2106は、パネルオブジェクト及び箱オブジェクトの情報を、ユーザ端末800Aに送信する。
In step S502, the virtual
ステップS601において、ユーザ端末800Aの仮想空間制御部8106は、受信した情報に基づいて、第1仮想空間11_1Aに、第2状態に応じた第2オブジェクト(ここでは、パネルオブジェクト及び箱オブジェクト)を配置する。また、仮想空間制御部8106は、第2オブジェクトを対象とするアバターオブジェクト6Bの動作を、第2動作として適用する。なお、第1仮想空間11_1Aから、第1状態に応じた第1オブジェクトは消去される。
In step S601, the virtual
ステップS602において、ゲーム進行部8105は、第2ミニゲームを有利に進める権利を表す情報がメモリ820に記憶されているか否かを判断する。ステップS602でNoの場合、ステップS603の処理が実行される。ステップS602でYesの場合、ステップS604の処理が実行される。
In step S602, the
ステップS603又はS604において、ゲーム進行部8105は、第2UIオブジェクトを、表示部8702に表示する。
In step S603 or S604, the
ここで、第2UIオブジェクトは、第2状態に応じたUIオブジェクトである。具体的には、第2UIオブジェクトは、第2ミニゲームにおいてユーザ8Aからの操作を受け付けるユーザインタフェースオブジェクトである。
Here, the second UI object is a UI object corresponding to the second state. Specifically, the second UI object is a user interface object that receives an operation from the
ステップS603では、第2UIオブジェクトとして、通常のビンゴカードが表示される。ステップS604では、第2UIオブジェクトとして、有利なビンゴカードを表示部8702に表示する。
In step S603, a normal bingo card is displayed as the second UI object. In step S604, an advantageous bingo card is displayed on the
通常のビンゴカード及び有利なビンゴカードとは、それぞれ、複数列かつ複数行に並んだマスのそれぞれに、任意の数値を含むカードである。また、各マスは、操作可能な状態及び操作不能な状態を有し、初期状態では、操作不能な状態である。また、各マスは、開いた状態及び開いていない状態を有し、初期状態では、開いていない状態である。各マスは、操作可能な状態のときに操作されることにより、開いた状態となるものとする。また、上述した第2条件であるビンゴの成立とは、開いたマスが縦、横、斜めの何れかに所定個数並ぶことであるものとする。 The normal bingo card and the advantageous bingo card are cards each including an arbitrary numerical value in each of the squares arranged in a plurality of columns and a plurality of rows. Further, each mass has an operable state and an inoperable state, and is inoperable in the initial state. Further, each mass has an open state and an unopened state, and is in an unopened state in the initial state. It is assumed that each mass is brought into an open state by being operated when it is in an operable state. The establishment of bingo, which is the second condition described above, means that a predetermined number of open squares are arranged vertically, horizontally, or diagonally.
ここで、有利なビンゴカードとは、通常のビンゴカードよりも、第2ミニゲームを有利に進めることが可能なカードである。例えば、有利なビンゴカードとは、複数枚の通常のビンゴカードを含んでいてもよい。また、例えば、通常のビンゴカード及び有利なビンゴカードが、1つのマスに複数の数値を含み得るとき、有利なビンゴカードとは、通常のビンゴカードよりも1つのマスに含まれる数値の個数が多いものであってもよい。ただし、第2UIオブジェクトは、上述したようなビンゴカードに限らず、その他のUIオブジェクトであってよい。 Here, the advantageous bingo card is a card that can advance the second mini game more favorably than the normal bingo card. For example, the advantageous bingo card may include a plurality of normal bingo cards. In addition, for example, when the normal bingo card and the advantageous bingo card can include a plurality of numerical values in one square, the advantageous bingo card is the number of numerical values included in one square than the normal bingo card. It may be many. However, the second UI object is not limited to the bingo card as described above, and may be another UI object.
なお、本ステップにおいて表示されるビンゴカードの各マスに含まれる数値は、第1仮想空間11_1を共有する複数のユーザ端末800毎に決定されるものとする。例えば、本ステップの実行時に、各マスに描かれる数値が、任意の範囲の数値からランダムに選択されて決定されてもよい。
In addition, the numerical value included in each box of the bingo card displayed in this step is determined for each of the plurality of
ステップS504において、仮想空間制御部2106は、ユーザ5Bの動きに応じて、アバターオブジェクト6Bに、ビンゴボールオブジェクトを選択する動作をさせる。複数のビンゴボールオブジェクトのそれぞれは、それぞれ異なる識別情報(番号など)が関連付けられている。
In step S504, the virtual
ステップS505において、仮想空間制御部2106は、アバターオブジェクト6Bの動作を表す動作指図データを、ユーザ端末800Aに送信する。
In step S505, the virtual
ステップS605において、仮想空間制御部8106は、受信した動作指図データに基づいて、アバターオブジェクト6Bにビンゴボールオブジェクトを選択する動作をさせる。
In step S605, the virtual
ステップS606において、ゲーム進行部8105は、アバターオブジェクト6Bによって選択されたビンゴボールオブジェクトに描かれた数値が、表示されているビンゴカードのマスの何れかに含まれる数値であるか否かを判断する。ステップS606でNoの場合、後述するステップS612が実行される。ステップS606でYesの場合、次のステップS607が実行される。
In step S606, the
ステップS607において、ゲーム進行部8105は、アバターオブジェクト6Bの第2動作に基づいて、第2条件の少なくとも一部を満たすための第2処理を実行する。換言すると、ゲーム進行部8105は、アバターオブジェクト6Bの選択する動作に応じて、第2条件(本発明における第1課題)の少なくとも一部を達成するためのゲーム処理を実行する。
In step S607, the
ここでは、ゲーム進行部8105は、アバターオブジェクト6Bの選択する動作に応じて、該当する数値を含むマスを操作可能な状態にするという第2処理を実行する。ビンゴを成立させるとの第2条件を満たすためには、少なくとも第2UIオブジェクトの一部であるマスが操作可能となる必要があるため、当該第2処理が実行される。
Here, the
ステップS608において、ゲーム進行部8105は、該当する数値を含むマスに対する操作を受け付け、当該マスを開いた状態に変化させる。
In step S608, the
ステップS609において、ゲーム進行部8105は、該当する数値を含むマスが開いたことを、キャラクタ制御装置110Bに通知する。
In step S609, the
ステップS505において、ゲーム進行部2105は、該当する数値を含むマスが開いたユーザ8Aに関する情報を、HMD120に表示する。
In step S505, the
ステップS610において、ユーザ端末800Aのゲーム進行部8105は、ステップS608でマスが開けられたことにより、ビンゴが成立したか否かを判断する。ステップS610でNoの場合、後述するステップS612が実行される。ステップS610でYesの場合、次のステップS611が実行される。
In step S610, the
ステップS611において、ゲーム進行部8105は、ビンゴが成立したことを、キャラクタ制御装置110Bに通知する。
In step S611, the
ステップS506において、ゲーム進行部2105は、ビンゴが成立したユーザ8Aに関する情報を、HMD120に表示する。
In step S506, the
ステップS507において、ゲーム進行部2105は、ゲームが終了したか否かを判断する。例えば、ゲームの終了条件は、アバターオブジェクト6Bによってビンゴボールオブジェクトが所定回数選択されたことであってもよい。また、例えば、ゲームの終了条件は、最初のビンゴボールオブジェクトの選択から所定時間が経過したことであってもよい。また、例えば、ゲームの終了条件は、ビンゴが成立したユーザ8の数が所定数を超えたことであってもよい。ただし、ゲームの終了条件は、これらに限られない。
In step S507, the
ステップS507においてNoの場合、ステップS503からの処理が実行される。ステップS507においてYesの場合、ステップS508の処理が実行される。 If No in step S507, the processes from step S503 are executed. If Yes in step S507, the process of step S508 is executed.
ステップS508において、ゲーム進行部2105は、ゲームが終了したことを、ユーザ端末800Aに通知する。
In step S508, the
ステップS612において、ゲーム進行部8105は、ゲームの終了が通知されたか否かを判断する。本ステップは、ステップS606又はS610でNoの場合にも実行される。ステップS612でNoの場合、ステップS605からの処理が実行される。ステップS612でYesの場合、ステップS613の処理が実行される。
In step S612, the
ステップS613において、ゲーム進行部8105は、ビンゴゲームの結果を表す情報を、表示部8702に表示する。
In step S613, the
<第2ミニゲーム進行中における第1仮想空間11_1A、11B>
図31は、第2ミニゲームが進行中における第1仮想空間11_1を模式的に示す図である。図31(A)は、キャラクタ制御装置110Bにおいて実現される第1仮想空間11_1Bの斜視図である。図31(B)は、ユーザ端末800Aにおいて実現される第1仮想空間11_1Aの上面図である。これらの第1仮想空間11_1A及び11_Bは、同期している。
<First virtual spaces 11_1A and 11B while the second mini game is in progress>
FIG. 31 is a diagram schematically showing the first virtual space 11_1 during the progress of the second mini game. FIG. 31A is a perspective view of the first virtual space 11_1B realized in the
図31(A)及び(B)において、第1仮想空間11_1A及び11_Bには、アバターオブジェクト6Bと、特別ボタンオブジェクト3141と、パネルオブジェクト3151と、箱オブジェクト3142とが配置されている。また、第1仮想空間11_1Bには、仮想カメラ14_B1が配置されている。また、第1仮想空間11_1Aには、仮想カメラ14_A1が配置されている。アバターオブジェクト6B、仮想カメラ14_A1、14_B1については、図25を参照して説明した通りである。
31A and 31B, an
箱オブジェクト3142は、内部に複数のビンゴボールオブジェクト3144が配置された直方体状のオブジェクトである。箱オブジェクト3142の上面は、開口部3143を含む。アバターオブジェクト6Bは、開口部3143から仮想右手1831RB又は仮想左手1831LBを箱オブジェクト3142の内部に挿入することにより、複数のビンゴボールオブジェクト3144の何れかを選択する動作を行うことができる。
The
複数のビンゴボールオブジェクト3144の各々は、球状のオブジェクトであり、表面に数値が描かれている。数値は、第2UIオブジェクトとしてのビンゴカードのマスに表示され得る範囲の数値の何れかであることが望ましい。ただし、範囲外の数値が描かれたビンゴボールオブジェクトがあってもよい。また、複数のビンゴボールオブジェクトに描かれた数値は、互いに異なるものであってもよい。あるいは、一部の複数のビンゴボールオブジェクトに描かれた数値が同一であってもよい。 Each of the plurality of bingo ball objects 3144 is a spherical object, and a numerical value is drawn on the surface. It is desirable that the numerical value be any of the numerical values in the range that can be displayed on the square of the bingo card as the second UI object. However, there may be a bingo ball object in which a numerical value outside the range is drawn. Further, the numerical values drawn on the plurality of bingo ball objects may be different from each other. Alternatively, the numerical values drawn on some of the plurality of bingo ball objects may be the same.
パネルオブジェクト3151は、パネルオブジェクト2551と同様に構成されるが、ユーザ8Aの方向側の面に、第1ミニゲームに関する情報の代わりに、第2ミニゲームに関する情報が表示されている。
The
特別ボタンオブジェクト3141は、アバターオブジェクト6Bの向かう方向に対して左側の領域に配置されているものとする。「左側」については、図25において説明した通りである。
The
<第2ミニゲーム進行中における視野画像及びゲーム画面>
図32〜図36は、第2ミニゲーム進行中において視野画像及び表示部の一例を示す図である。図32〜図36の各図において、(A)は、ステップS501〜S508が実行されることによりキャラクタ制御装置110BのHMD120に表示される視野画像1400_B1を表す。(B)は、S601〜613が実行されることによりユーザ端末800Aの表示部8702に表示されるゲーム画面を表す。
<Field-of-view image and game screen during the second mini game>
32 to 36 are diagrams showing an example of the visual field image and the display unit during the progress of the second mini game. In each of FIGS. 32 to 36, (A) represents a visual field image 1400_B1 displayed on the
図32は、ビンゴゲームの開始時における視野画像及びゲーム画面を示す図である。 FIG. 32 is a diagram showing a visual field image and a game screen at the start of the bingo game.
図32(A)において、キャラクタ制御装置110Bにおける視野画像1400_B1
は、特別ボタンオブジェクト3141と、箱オブジェクト3142と、仮想右手1831RB及び仮想左手1831LBと、情報2751とを含む。情報2751については、図26を参照して説明した通りである。
In FIG. 32A, the visual field image 1400_B1 in the
Includes a
特別ボタンオブジェクト3141は、アバターオブジェクト6Bから見て向かって左側に配置されている。
The
箱オブジェクト3142は、アバターオブジェクト6Bから見て、開口部3143が見えるように配置されている。
The
また、アバターオブジェクト6B自身の仮想右手1831RB及び仮想左手1831LBが視野画像1400_B1に含まれる。これにより、ユーザ5Bは、仮想右手1831RB及び仮想左手1831LBに、箱オブジェクト3142の開口部3143を通って複数のビンゴボールオブジェクト3144の何れかを選択させるよう、容易に動作することができる。
Further, the virtual right hand 1831RB and the virtual left hand 1831LB of the
ここで、ユーザ5Bが、第2ミニゲームを開始することを通知する動作として、「ビンゴゲームを始めるよ」との音声3271を発声する動作を行うと、アバターオブジェクト6Bが、音声3271を発声するよう制御される。なお、第2ミニゲームを開始することを通知する動作は、発声に限らず、手振り等であってもよいし、各種の動作の組み合わせであってもよい。
Here, when the
図32(B)において、ユーザ端末800Aの表示部8702に表示されるゲーム画面は、視野画像1400_A1と、UI領域3261とを含む。視野画像1400_A1は、アバターオブジェクト6Bと、特別ボタンオブジェクト3141と、箱オブジェクト3142と、パネルオブジェクト3151とを含む。
In FIG. 32B, the game screen displayed on the
アバターオブジェクト6Bは、ユーザ8Aの方向を向いているので、正面を向いている。また、アバターオブジェクト6Bの仮想右手1831RB及び仮想左手1831LBが視野画像1400_A1に含まれている。これにより、ユーザ8Aは、仮想右手1831RB及び仮想左手1831LBが何れのビンゴボールオブジェクト3144を選択する動作を行うかに注目することができる。
Since the
特別ボタンオブジェクト3141は、アバターオブジェクト6Bから見て左側、すなわち、視野画像1400_A1の右側の領域に配置されている。
The
この例では、箱オブジェクト3142は、各面が不透明な状態で表示され、内部のビンゴボールオブジェクトが見えないように表示されている。ただし、複数のビンゴボールオブジェクトには、それぞれ、第1仮想空間11_1Aにおける位置が定められている。これにより、当該ビンゴボールオブジェクト3144と、仮想右手1831RB又は仮想左手1831LBとの接触判定が可能となり、当該ビンゴボールオブジェクト3144が選択され得る。
In this example, the
パネルオブジェクト3251は、アバターオブジェクト6Bの背後に、情報が表示される面をユーザ8Aの方向に向けて配置されている。ここでは、パネルオブジェクト2551には、第2ミニゲームに関する情報として、ビンゴゲームの説明を表す情報が表示されている。また、当該情報には、ビンゴゲームのルール、設定されている第2条件(例えば、ビンゴの成立)、ビンゴが成立したときの報酬(ここでは、第2仮想空間に参加できること)を表す情報が含まれていてもよいが、これらに限られない。
The panel object 3251 is arranged behind the
UI領域3261は、通常のビンゴカード3262を含む。通常のビンゴカード3262は、3列3行に配置された9個のマス3263を含む。各マス3263は、1〜100までの範囲の何れかの整数を含んでいる。各マス3263に対する操作が受け付けられると、当該マス3263が開いた状態であることを表す情報がメモリ820に記憶される処理が実行される。各マス3263は、初期状態で操作不能であり、開いていない状態である。
The
ここで、キャラクタ制御装置110Bから、音声3271を発声する動作を表す動作指図データが受信されると、視野画像1400_A1に含まれるアバターオブジェクト6Bが、音声3271を発声するよう制御される。
Here, when the motion instruction data representing the motion of uttering the
これにより、ユーザ8Aは、アバターオブジェクト6Bが音声3271を発声する動作に応じてビンゴゲームが開始することを認識する。
Accordingly, the
図33は、ビンゴゲームの開始時におけるゲーム画面の他の例を示す図である。 FIG. 33 is a diagram showing another example of the game screen at the start of the bingo game.
図33において、ユーザ端末800Aの表示部8702に表示されるゲーム画面は、図32(B)に示したゲーム画面に対して、通常のビンゴカード3262の代わりに、有利なビンゴカード3362を含む点が異なる。有利なビンゴカード3362は、3列3行に配置された9個のマス3363を含む。各マス3363は、1〜100までの範囲の何れかの整数を2つずつ含んでいる。マス3363は、2つずつの整数を含むことにより、マス3263よりも開いた状態となりやすいので、有利である。それ以外の点については、各マス3363は、通常のビンゴカード3262の各マス3263と同様に構成される。以下では、ユーザ端末800Aには、通常のビンゴカード3262が表示されているものとして説明する。
In FIG. 33, the game screen displayed on the
図34は、ユーザ5Bの動作に応じて、アバターオブジェクト6Bが複数のビンゴボールオブジェクト3144の何れかを選択する動作が行われる際の視野画像及びゲーム画面を示す図である。
FIG. 34 is a diagram showing a field-of-view image and a game screen when the
図34(A)において、キャラクタ制御装置110Bにおける視野画像1400_B1は、図32(A)に示した視野画像1400_B1に対して、アバターオブジェクト6Bが1つのビンゴボールオブジェクト3144を選択した様子を含む点と、情報3452及び3453がさらに重畳されている点とが異なる。
In FIG. 34(A), the visual field image 1400_B1 in the
アバターオブジェクト6Bは、ユーザ5Bの動作に応じて、仮想右手1831RBによって、箱オブジェクト3142の内部から複数のビンゴボールオブジェクト3144の何れかを選択して取り出す動作を行う。視野画像1400_B1では、箱オブジェクト3142の内部にあるビンゴボールオブジェクト3144が表示されていないため、ユーザ5Bにとって、何れの数値が描かれたビンゴボールオブジェクト3144を選択したかは、取り出すまで認識できないものとする。
The avatar object 6B performs an operation of selecting any one of the plurality of bingo ball objects 3144 from the inside of the
ここでは、仮想右手1831RBによって選択されたビンゴボールオブジェクト3144には、「54」と描かれていたとする。以下、「54」と描かれたビンゴボールオブジェクト3144を、ビンゴボールオブジェクト3144「54」とも記載する。仮想右手1831RBによってビンゴボールオブジェクト3144「54」が選択される処理の詳細については、図28(A)において、仮想右手1831RBによって選択肢オブジェクト2552_3が選択される処理と同様であるため、詳細な説明を繰り返さない。なお、仮想空間制御部2106は、仮想右手1831RBとビンゴボールオブジェクト3144とが接触したと判定した時点で、接触していることを表す情報をHMD120等の出力装置に出力してもよい。この場合、ユーザ5Bは、当該出力に応じて、コントローラ300が有する所定ボタンを押下すればよい。これにより、ユーザ5Bは、視野画像1400_B1にビンゴボールオブジェクト3144が表示されていなくても、仮想右手1831RBにビンゴボールオブジェクト3144を選択させる動作を容易に行うことができる。
Here, it is assumed that "54" is drawn on the
あるいは、視野画像1400_B1において、箱オブジェクト3142の内部にある複数のビンゴボールオブジェクト3144が、表面の数値を含まない態様で表示されていてもよい。例えば、ビンゴボールオブジェクト3144は、輪郭だけの態様で表示されてもよい。この場合、ユーザ5Bは、各ビンゴボールオブジェクト3144の位置を視認できるので、仮想右手1831RBにビンゴボールオブジェクト3144を選択させる動作を容易に行うことができる。
Alternatively, in the view image 1400_B1, a plurality of bingo ball objects 3144 inside the
また、ユーザ5Bは、アバターオブジェクト6Bに複数のビンゴボールオブジェクト3144の何れかを選択させるための動作を行った後、選択したビンゴボールオブジェクト3144に描かれた数値「54」を音声3471として発声する動作を行う。これにより、アバターオブジェクト6Bは、ビンゴボールオブジェクト3144「54」を選択するとともに、音声3471を発声するよう制御される。
Further, the
情報3452は、第2ミニゲームの進行状況を表している。ここでは、情報3452は、アバターオブジェクト6Bがビンゴボールオブジェクト3144を選択した回数を表している。情報3452は、アバターオブジェクト6Bが複数のビンゴボールオブジェクト3144の何れかを選択する動作を行う度に更新される。
情報3453は、複数のユーザ端末800における第2UIオブジェクトに対する操作結果を含んでいる。ここでは、情報3453は、アバターオブジェクト6Bが直近に選択したビンゴボールオブジェクト3144によって、ビンゴカードのマスが開いたユーザ8の人数と、ビンゴが成立したユーザ8の人数とを含んでいる。情報3453によれば、14人のユーザ8が「54」のマス3263又は3363を開ける操作を行い、1人のユーザ8がビンゴを成立させている。
The
なお、情報3453を含む領域に対するアバターオブジェクト6Bの動作に応じて、第2UIオブジェクトに対する操作結果の詳細な情報が表示されてもよい。例えば、操作結果の詳細とは、当該マス3263又は3363が開いた状態となったユーザ8の識別情報の一覧情報であってもよい。例えば、「54のマスを開けた人:14人」の表示領域に対して仮想右手1831RB又は仮想左手1831LBが接触する動作が受け付けられると、54のマスを開けた「ユーザA、ユーザX、ユーザY・・・」といった一覧情報が重畳表示されてもよい。ただし、操作結果の詳細は、これに限られない。
It should be noted that detailed information of the operation result for the second UI object may be displayed in accordance with the action of the
また、情報3453は、図示のような操作結果の集計情報に限られない。例えば、情報3453は、当該マス3263又は3363が開いた状態となった複数のユーザ端末800各々のユーザ8の識別情報を、一覧として含んでいてもよい。この場合、情報3453は、スクロール可能に表示されてもよい。また、この場合、情報3453は、複数のユーザ端末800の何れかにおいて当該マス3263又は3363が開いた状態となる度に、当該ユーザ8の識別情報を追加して含むよう更新されてもよい。この場合、情報3453は、自動でスクロールして表示されてもよい。
Further, the
また、ユーザ5Bは、情報3453の表示に応じて、アバターオブジェクト6Bに、複数のユーザ端末800における操作結果に応じた動作を行う。ここでは、例えば、「ビンゴの人1人出ました」といった音声3472を発声する。また、情報3453に、ビンゴを成立させたユーザ8の識別情報が含まれる場合、音声3472は、当該ユーザ8の識別情報をさらに含んで「ユーザ8Aさん、ビンゴになりました!」といった内容であってもよい。これにより、アバターオブジェクト6Bは、音声3472を発声するよう制御される。
In addition, the
図34(B)において、ユーザ端末800Aの表示部8702に表示されるゲーム画面は、視野画像1400_A1と、UI領域3261とを含む。
In FIG. 34B, the game screen displayed on the
ここでは、キャラクタ制御装置110Bから、ビンゴボールオブジェクト3144「54」を選択する動作を表す動作指図データが受信されると、視野画像1400_A1に含まれるアバターオブジェクト6Bは、ビンゴボールオブジェクト3144「54」を選択する動作を行う。ここで、アバターオブジェクト6Bによって選択されたビンゴボールオブジェクト3144「54」は、「54」が描かれた面がユーザ8の方向に向けられる。
Here, when the motion instruction data representing the motion of selecting the
また、キャラクタ制御装置110Bから、音声3471を発声する動作を表す動作指図データが受信されると、視野画像1400_A1に含まれるアバターオブジェクト6Bが、音声3471を発声するよう制御される。
Further, when the operation instruction data representing the operation of uttering
これにより、ユーザ8Aは、アバターオブジェクト6Bによって、自身のビンゴカードに含まれる数値「54」が描かれたビンゴボールオブジェクト3144が選択されたことを認識することができる。
As a result, the
また、アバターオブジェクト6Bがビンゴボールオブジェクト3144「54」を選択したことに応じて、「54」を含むマス3263が操作可能な状態に変化する。操作可能な状態に変化したマス3263は、操作可能であることを表す態様に変化して表示されてもよい。ユーザ8Aは、「54」を含むマス3263に対する操作を行うことにより、当該マス3263を開いた状態にすることができる。これにより、「54」を含むマス3263は、開いた状態を表す態様で表示される。開いた状態を表す態様とは、例えば、開いた状態を表す色に変化した態様、当該マスの領域に穴があけられた様子を表す態様等であってもよいが、これらに限られない。
Further, in response to the
このように、ユーザ8Aは、自身のビンゴカード3262に含まれる数値が描かれたビンゴボールオブジェクト3144が選択されることを所望しながら、アバターオブジェクト6Bの動作に注目することができ、臨場感が増す。
In this way, the
また、キャラクタ制御装置110Bから、音声3472を発声する動作を表す動作指図データが受信されると、視野画像1400_A1に含まれるアバターオブジェクト6Bが、音声3472を発声するよう制御される。これにより、ユーザ8Aは、他のユーザ8がビンゴを成立させたことを認識でき、他のユーザ8と共にビンゴゲームに参加していることの臨場感が増す。また、音声3472に、ビンゴを成立させたユーザ8、又は、マスを開けたユーザ8として、当該ユーザ8Aの識別情報等が含まれる場合、ユーザ8Aは、複数のユーザ8の中で特別感を感じることができる。
Further, when motion instruction data representing a motion of uttering
図35は、ユーザ5Bの動作に応じて、アバターオブジェクト6Bが複数のビンゴボールオブジェクト3144の何れかを選択する際のゲーム画面の他の例を示す図である。
FIG. 35 is a diagram showing another example of the game screen when the
図35に示すゲーム画面は、図34(B)に示したゲーム画面に対して、視野画像1400_A1において、複数のビンゴボールオブジェクト3144が表示されている点が異なる。この場合も、キャラクタ制御装置110Bにおいて表示される視野画像1400_B1では、図34(A)と同様に、複数のビンゴボールオブジェクト3144が表示されていないものとする。これにより、ユーザ8Aは、自身のビンゴカード3262に含まれる数値が描かれたビンゴボールオブジェクト3144の位置を認識できる。その結果、当該ビンゴボールオブジェクト3144をアバターオブジェクト6Bが選択するか否かを、さらなる臨場感を持って注目することができる。
The game screen shown in FIG. 35 differs from the game screen shown in FIG. 34B in that a plurality of bingo ball objects 3144 are displayed in the view image 1400_A1. Also in this case, it is assumed that the plurality of bingo ball objects 3144 are not displayed in the view image 1400_B1 displayed on the
図36は、ユーザ5Bの動作に応じて、アバターオブジェクト6Bの選択する動作に応じてビンゴが成立する際の視野画像及びゲーム画面を示す図である。
FIG. 36 is a diagram showing a field-of-view image and a game screen when a bingo is established according to the action selected by the
図36(A)において、キャラクタ制御装置110Bにおける視野画像1400_B1は、図34(A)に示した視野画像1400_B1に対して、アバターオブジェクト6Bが選択したビンゴボールオブジェクト3144に描かれた数値が異なる。また、情報3452、3453の代わりに、情報3652、3653が表示される点も異なる。
In FIG. 36(A), the visual field image 1400_B1 in the
アバターオブジェクト6Bは、ユーザ5Bの動作に応じて、箱オブジェクト3142の内部からビンゴボールオブジェクト3144「25」を選択して取り出したものとする。ビンゴボールオブジェクト3144「25」を選択する動作の詳細については、図34(A)を参照して説明したビンゴボールオブジェクト3144「54」を選択する動作と同様である。
It is assumed that the
また、ユーザ5Bは、選択したビンゴボールオブジェクト3144に描かれた数値「25」を、音声3671として発声する動作を行う。これにより、アバターオブジェクト6Bは、ビンゴボールオブジェクト3144「25」を選択するとともに、音声3471を発声するよう制御される。
In addition, the
情報3652は、情報3452が示す第2ミニゲームの進行状況が更新されたものである。情報3652によれば、ビンゴボールオブジェクト3144の選択回数が30回となっている。ここでは、ビンゴゲームの終了条件として、選択回数が30回に到達することが定められているとする。
情報3653は、情報3453に示した複数のユーザ端末800における第2UIオブジェクトに対する操作結果が更新されたものである。情報3653によれば、14人のユーザ8が「25」のマス3263又は3363を開け、合計9人のユーザ8がビンゴを成立させている。
The
また、ユーザ5Bは、情報3452、3453の表示に応じて、アバターオブジェクト6Bに、第2ミニゲームの進捗状況、及び、複数のユーザ端末800における操作結果に応じた動作を行わせる。ここでは、例えば、「ビンゴ終了!ビンゴの人合計9人です。おめでとう」といった音声3672を発声する。また、情報3653に、ビンゴを成立したユーザ8の識別情報が含まれる場合については、情報3453について説明した場合と同様である。
In addition, the
図36(B)において、ユーザ端末800Aの表示部8702に表示されるゲーム画面は、視野画像1400_A1と、UI領域3261と、情報3665とを含む。
In FIG. 36B, the game screen displayed on the
ここでは、キャラクタ制御装置110Bから送信された動作指図データに基づいて、視野画像1400_A1に含まれるアバターオブジェクト6Bは、ビンゴボールオブジェクト3144「25」を選択する動作を行うとともに、音声3671を発声するよう制御される。
Here, based on the action instruction data transmitted from the
また、アバターオブジェクト6Bがビンゴボールオブジェクト3144「25」を選択したことに応じて、「25」を含むマス3263が操作可能な状態に変化する。ユーザ8Aは、「25」を含むマス3263に対する操作を行うことにより、当該マス3263を開いた状態にして、ビンゴを成立させることができる。
Further, in response to the
情報3655は、当該ユーザ端末800Aにおいて、ビンゴが成立したことを表す情報である。情報3655は、「25」を含むマス3263が開いた状態に変化したことに応じて表示される。
The information 3655 is information indicating that bingo has been established in the
これにより、ユーザ8Aは、自身がビンゴを成立させたことを認識することができる。
Thereby, the
また、キャラクタ制御装置110Bから、音声3672を発声する動作を表す動作指図データが受信されると、視野画像1400_A1に含まれるアバターオブジェクト6Bが、音声3672を発声するよう制御される。これにより、ユーザ8Aは、自身を含む9人のユーザ8がビンゴを成立させたことを認識でき、複数のユーザ8の中での特別感を感じることができる。また、音声3672に、ビンゴを成立させた当該ユーザ8Aの識別情報等が含まれる場合、ユーザ8Aは、さらなる特別感を感じることができる。
Further, when the motion instruction data representing the motion of uttering
<ライブ配信パートの処理フロー>
図37は、ゲームシステム1500を構成する各装置によって実行される、ライブ配信パートにおける処理の流れを表すフローチャートである。図37に示す処理の流れは、図21に示した処理に続いて実行される。
<Processing flow of live distribution part>
FIG. 37 is a flowchart showing the flow of processing in the live distribution part, which is executed by each device constituting the
ステップS701において、キャラクタ制御装置110Bの仮想空間制御部2106は、第2仮想空間11_2に移動する操作を受け付ける。第2仮想空間11_2に移動する操作とは、アバターオブジェクト6Bによる所定の仮想オブジェクト(例えば、特別ボタンオブジェクト)を対象とする動作であってもよい。また、第2仮想空間11_2に移動する操作とは、第1仮想空間11_1Bにおける所定領域内(例えば、仮想ドアの付近)にアバターオブジェクト6Bが移動することであってもよい。また、第2仮想空間11_2に移動する操作とは、コントローラ300が有する所定ボタンに対する操作であってもよい。ただし、第2仮想空間11_2Bに移動する操作は、これらに限られない。
In step S701, the virtual
ステップS702において、仮想空間制御部2106は、第2仮想空間11_2を表す第2仮想空間データに基づいて、第2仮想空間11_2Bを規定する。第2仮想空間データは、例えば、サーバ600から供給される。
In step S702, the virtual
ステップS703において、仮想空間制御部2106は、第2仮想空間11_2Bに、仮想カメラ14_B2を配置する。仮想カメラ14_B2による視野画像は、アバターオブジェクト6Bから見た第2仮想空間11_2Bの視野画像である。
In step S703, the virtual
ステップS704において、仮想空間制御部2106は、第2仮想空間11_2Bに、アバターオブジェクト6Bを配置する。また、第1仮想空間11_1Bから、アバターオブジェクト6Bを削除する。
In step S704, the virtual
一方、ステップS801において、ユーザ端末800Aのゲーム進行部8105は、所定条件が満たされたか否かを判断する。所定条件とは、第2ミニゲームに設定された第2条件が満たされたか否かであってもよい。ステップS801においてYesの場合、後述するステップS804が実行される。ステップS801でNoの場合、次のステップS802の処理が実行される。
On the other hand, in step S801, the
ステップS802において、ゲーム進行部8105は、ユーザ8Aによる対価の支払い又は対価の支払いに基づきユーザ8Aに付与された有価アイテムを消費することを指示するユーザ操作が受け付けられたか否かを判断する。有価アイテムとは、例えば、仮想通貨であってもよい。
In step S802, the
ステップS802においてNoの場合については後述する。ステップS802においてYesの場合、次のステップS803の処理が実行される。 The case of No in step S802 will be described later. If Yes in step S802, the process of next step S803 is executed.
ステップS803において、ゲーム進行部8105は、課金処理又は有価アイテムを消費する処理を実行し、ステップS804の処理を実行する。
In step S803, the
ステップS804において、ゲーム進行部8105は、第2仮想空間11_2Aへの参加を指示する操作を受け付け、当該操作が受け付けられたか否かを判断する。ステップS804においてNoの場合、ユーザ端末800Aにおける処理が終了する。ステップS804においてYesの場合、次のステップS805の処理が実行される。
In step S804, the
ステップS805において、ゲーム進行部8105は、第2仮想空間11_2を表す第2仮想空間データに基づいて、第2仮想空間11_2Aを規定する。第2仮想空間データは、例えば、サーバ600から供給される。
In step S805, the
ステップS806において、仮想空間制御部8106は、第2仮想空間11_2Aに、仮想カメラ14_A2を配置する。ここでは、仮想カメラ14_A2の位置及び方向は、ユーザ8Aによって操作不能であり、複数のユーザ8が共通の視野画像1400_A2を視聴するものとする。
In step S806, the virtual
ステップS705において、仮想空間制御部2106は、ユーザ端末800Aに対して、アバターオブジェクト6Bを表す情報を送信する。
In step S705, the virtual
ステップS807において、仮想空間制御部8106は、受信した情報に基づいて、第2仮想空間11_2Aに、アバターオブジェクト6Bを配置する。また、第1仮想空間11_1Aから、アバターオブジェクト6Bを削除する。
In step S807, the virtual
これにより、所定条件が満たされたユーザ端末800Aと、キャラクタ制御装置110Bとの間で、第2仮想空間11_2が共有される。また、ユーザ端末800A及びキャラクタ制御装置110B間で、アバターオブジェクト6Bが同期して配置される。
As a result, the second virtual space 11_2 is shared between the
ステップS706において、仮想空間制御部2106は、HMD120の動きに応じて変化する仮想カメラ14_B2の位置及び方向に基づいて、視野画像1400_B2を表示し、更新する。
In step S706, the virtual
ステップS808において、仮想空間制御部8106は、仮想カメラ14_A2の位置及び方向に基づいて、視野画像1400_A2を表示し、更新する。
In step S808, the virtual
ステップS707において、仮想空間制御部2106は、ユーザ5Bの動きに応じてアバターオブジェクト6Bの動作を制御する。
In step S707, the virtual
ステップS708において、仮想空間制御部2106は、アバターオブジェクト6Bの動作を表す動作指図データを、ユーザ端末800Aに送信する。
In step S708, the virtual
ステップS809において、仮想空間制御部8106は、受信した動作指図データに基づいて、アバターオブジェクト6Bの動きを制御する。
In step S809, the virtual
これにより、ユーザ端末800Aでは、第2仮想空間11_2Aにおいて、ユーザ5Bの動作に基づいてアバターオブジェクト6Bが動作する。また、第1仮想空間11_1Aから、アバターオブジェクト6Bが消滅する。
Thereby, in the
当該ライブ配信パートにおいて、アバターオブジェクト6Bの動作は、ユーザ8に楽しんでもらうことを目的として配信されるものであってもよい。例えば、アバターオブジェクト6Bの動作は、歌唱、ダンス、スポーツの技等を含むものであってもよいが、これらに限られない。
In the live distribution part, the operation of the
このように、ライブ配信パートは、所定条件を満たしたユーザ8、ここでは、第2ミニゲームにおいて第2条件を満たしたユーザ8のみが視聴できる。したがって、第2ミニゲームにおいて第2条件を満たすことに対するユーザ8の動機付けが向上する。また、第2条件を満たしたユーザ8にとって、ライブ配信パートを視聴できることの特別感が増す。
As described above, the live distribution part can be viewed only by the
<第1仮想空間から第2仮想空間に移動する際の視野画像及びゲーム画面例>
図38〜40は、第1仮想空間11_1から第2仮想空間11_2に移動してライブ配信パートが開始されるまでの視野画像及びゲーム画面の遷移例を示す図である。
<Example of visual field image and game screen when moving from first virtual space to second virtual space>
38 to 40 are diagrams showing transition examples of the visual field image and the game screen until the live distribution part is started by moving from the first virtual space 11_1 to the second virtual space 11_2.
図38(A)は、第1仮想空間11_1から第2仮想空間11_2に移動する際にキャラクタ制御装置110BのHMD120に表示される視野画像1400_B1の一例を示す図である。図38(A)において、キャラクタ制御装置110Bにおける視野画像1400_B1は、特別ボタンオブジェクト3141と、仮想左手1831LBと、情報2751とを含む。情報2751については、既に説明した通りである。
FIG. 38A is a diagram showing an example of a visual field image 1400_B1 displayed on the
ここでは、アバターオブジェクト6Bが、自身の左側に存在する特別ボタンオブジェクト3141に対して近づくよう移動したことを想定している。そのため、特別ボタンオブジェクト3141が、視野画像1400_B1の中央付近の領域に含まれている。また、箱オブジェクト3142は、視野画像1400_B1に含まれていない。
Here, it is assumed that the
ここで、ユーザ5Bが、ビンゴが成立したユーザ8Aのみを対象として、第2仮想空間11_2に参加可能であることを通知する音声3871を発声する動作を行うと、アバターオブジェクト6Bが、音声3871を発声するよう制御される。ここでは、音声3871は、「ビンゴの9人を特別ステージにご招待」との内容である。なお、第2仮想空間11_2に参加可能であることを通知する動作は、発声に限らず、手振り等であってもよいし、各種の動作の組み合わせであってもよい。
Here, when the
また、ユーザ5Bが、音声3871を発声すると同時に、アバターオブジェクト6Bに特別ボタンオブジェクト3141を押下させる動作を行うと、アバターオブジェクト6Bが、当該動作を行うよう制御される。また、アバターオブジェクト6Bは、当該動作に応じて、第1仮想空間11_1Bから消えるように制御される。
Further, when the
図38(B)において、ユーザ端末800Aの表示部8702に表示されるゲーム画面は、視野画像1400_A1と、UI領域3861とを含む。UI領域3861は、UI領域3261に対して、特別UIボタン3864を含む点が異なる。
In FIG. 38B, the game screen displayed on the
ここで、キャラクタ制御装置110Bから、音声3871を発声する動作を表す動作指図データが受信されると、視野画像1400_A1に含まれるアバターオブジェクト6Bが、音声3871を発声するよう制御される。
Here, when the motion instruction data representing the motion of uttering the
また、キャラクタ制御装置110Bから、特別ボタンオブジェクト3141を押下する動作を表す動作指図データが受信されると、視野画像1400_A1に含まれるアバターオブジェクト6Bが、当該動作を行った後、第1仮想空間11_1から消えるよう制御される。
Further, when the operation instruction data representing the operation of pressing the
これにより、ユーザ8Aは、アバターオブジェクト6Bが音声3871を発声すると共に特別ボタンオブジェクト3141を押下する動作に応じて、アバターオブジェクト6Bが第1仮想空間11_1から第2仮想空間11_2に移動したことを認識する。
Accordingly, the
特別UIボタン3864は、ビンゴが成立した場合に表示されるUIオブジェクトの一例である。特別UIボタン3864に対する操作が受け付けられると、第2仮想空間11_2Aを表す視野画像1400_A2が表示される。
The
図39は、アバターオブジェクト6Bが移動した後の第1仮想空間11_1及び第2仮想空間11_2を模式的に示す図である。
FIG. 39 is a diagram schematically showing the first virtual space 11_1 and the second virtual space 11_2 after the
図39(A)は、ユーザ端末800A及びキャラクタ制御装置110B間で共有される第1仮想空間11_1の斜視図である。アバターオブジェクト6Bは、特別ボタンオブジェクト3141を対象とする動作が行われた後、第1仮想空間11_1から消えるよう制御される。したがって、図39(A)に示す第1仮想空間11_1は、パネルオブジェクト3151、特別ボタンオブジェクト3141、箱オブジェクト3142を含むが、アバターオブジェクト6Bを含んでいない。
FIG. 39(A) is a perspective view of the first virtual space 11_1 shared between the
図39(B)は、ユーザ端末800A及びキャラクタ制御装置110B間で共有される第2仮想空間11_2の斜視図である。第2仮想空間11_2は、アバターオブジェクト6Bを含んでいる。当該アバターオブジェクト6Bは、図示のように、第1仮想空間11_1に存在していたときと異なる態様で表示されてもよい。異なる態様とは、例えば、洋服、持ち物(ここでは、マイク)が異なることであってもよいが、これに限られない。アバターオブジェクト6Bが異なる態様で表示されることにより、第2仮想空間11_2において進行するライブ配信パートの特別感が向上する。
FIG. 39B is a perspective view of the second virtual space 11_2 shared between the
図40は、ユーザ端末800Aにおいて表示される視野画像1400_A2の一例を示す図である。図40において、視野画像1400_A2は、第2仮想空間11_2Aにおいて動作するアバターオブジェクト6Bを含んでいる。視野画像1400_A2は、ビンゴを成立させたユーザ8のみが視聴できる。
FIG. 40 is a diagram showing an example of a visual field image 1400_A2 displayed on the
<チャットパートの処理フロー>
図41は、ユーザ端末800Aによって実行される、チャットパートにおける処理の流れを表すフローチャートである。図41に示す処理の流れは、図37のステップS802でNoとなった場合に実行される。
<Process flow of chat part>
FIG. 41 is a flowchart showing the flow of processing in the chat part, which is executed by the
ステップS901において、ゲーム進行部8105は、チャットパートに応じたUIオブジェクトを表示部8702に表示する。UIオブジェクトは、コメントの入力を受け付けるフィールドと、コメントの送信を指示する操作を受け付けるボタンとを含む。
In step S901, the
ステップS902において、ゲーム進行部8105は、ユーザ8Aによって入力されたコメントを表す情報を取得する。
In step S902, the
ステップS903において、ゲーム進行部8105は、コメントを送信することを指示するユーザ8Aの操作に応じて、取得したコメントを表す情報を、サーバ600に対して送信する。
In step S903, the
ステップS904において、ゲーム進行部8105は、取得したコメントを表す情報を、視野画像1400_A1に重畳して表示する。
In step S904, the
ステップS905において、ゲーム進行部8105は、所定条件が満たされなった他のユーザ8によって他のユーザ端末800において入力されたコメントを表す情報を取得する。当該情報は、サーバ600から送信されることにより取得可能である。
In step S905, the
ステップS906において、ゲーム進行部8105は、他のユーザ8によって入力されたコメントを表す情報を、視野画像1400_A1に重畳して表示する。
In step S906, the
ステップS907において、ゲーム進行部8105は、チャットパートを終了するか否かを判断する。例えば、チャットパートは、ユーザ8Aによってチャットパートの終了を指示する操作が受け付けられた場合に、チャットパートを終了すると判断してもよい。
In step S907, the
ステップS907においてNoの場合、ステップS902からの処理が実行される。ステップS907においてYesの場合、処理が終了する。 If No in step S907, the processes from step S902 are executed. If Yes in step S907, the process ends.
このように、ゲーム進行部8105は、ユーザ8Aによって入力されたコメントを表す情報と、他のユーザ8によって入力されたコメントを表す情報とを、視野画像1400_A1に重畳して表示する。
In this way, the
<チャットパートにおけるゲーム画面例>
図42は、チャットパートにおけるゲーム画面例の一例を示す図である。表示部8702は、視野画像1400_A1と、UI領域3261と、フィールド4231と、送信ボタン4232と、コメント4251〜4254とを含む。視野画像1400_A1と、UI領域3261とは、第1ミニゲームから第2ミニゲームに遷移する時点(図38(B))と同様に構成される。
<Game screen example in chat part>
FIG. 42 is a diagram showing an example of a game screen example in the chat part. The
フィールド4231及び送信ボタン4232は、チャットパートに応じたUIオブジェクトの一例である。フィールド4231は、コメントの入力を受け付けるUIオブジェクトである。送信ボタン4232は、コメントの送信指示を受け付けるUIオブジェクトである。フィールド4231に入力された情報は、送信ボタン4232に対する操作が受け付けられることによって、サーバ600に送信される。
The
コメント4251、4254は、他のユーザ端末800において他のユーザ8によって入力されたコメントを表す情報である。これらの情報は、サーバ600を介して他のユーザ端末800から受信される。コメント4252、4253は、当該ユーザ端末800Aにおいてユーザ8Aによって入力されたコメントを表す情報である。これらの情報は、サーバ600を介して他のユーザ端末800に送信される。コメント4251、4254は、当該ユーザ端末800において受信された順に、視野画像1400_A1に重畳されて表示されている。また、他のユーザ8によって入力された情報はゲーム画面の左側に表示され、ユーザ8Aによって入力された情報はゲーム画面の右側に表示される。
The
このように、コメント4251〜4254が視野画像1400_A1に重畳されることにより、所定条件が満たされかったユーザ8間で、第2仮想空間11_2Aに参加できず第1仮想空間11_1Aに取り残された残念感を共有することができる。
In this way, by superimposing the
〔変形例〕
なお、本実施形態において、ゲームシステム1500に係るゲームは、第1プレイパート(第2ミニゲーム)が開始する前に、第1ユーザ(ユーザ5B)の操作によらずに、第3課題が設定された第3プレイパートを進行させてもよい。この場合、ユーザ端末800のゲーム進行部8105は、第3プレイパートにおける第3課題の達成度が大きいほど、第1プレイパート(第2ミニゲーム)におけるアバターオブジェクト6Bの選択する動作による選択の結果に応じて、第1課題を達成する上でより有利な処理を実行してもよい。第3プレイパートは、例えば、ロールプレイングゲーム、クイズゲーム、アクションゲーム、位置情報を使用したゲームその他のゲームジャンルのゲームであるとしてもよい。第3プレイパートにおける第3課題としては、例えば、ゲームプレイにおいてプレイヤーに設定されたゲーム課題であり、所定のゲームアイテムをプレイヤーが獲得すること、所定のプレイ単位(いわゆるクエストなど)のクリア条件を満たすこと、所定のスコアを獲得すること、その他の課題を含む。上記の実施形態の説明では、第1ミニゲーム(ジャンケン)の結果が良好であるほど、第2ミニゲーム(ビンゴゲーム)がプレイヤーに有利になる(ビンゴカードでビンゴになりやすくなるよう、ビンゴカードの各マスに複数の数字が関連付けられる)ものとしたが、このように、第3プレイパートのプレイ結果が良好であるほど、第1ミニゲームまたは第2ミニゲームの進行がプレイヤーに有利になるようにしてもよい。また、これら第1ミニゲームまたは第2ミニゲームの進行中や、進行前において課金処理のための操作をプレイヤーから受け付けることにより、第1ミニゲームまたは第2ミニゲームがプレイヤーに有利になるようにしてもよい。ここで、課金処理のためのプレイヤーの操作とは、ゲームプログラムにおいて有償仮想通貨を購入する操作であってもよいし、プレイヤーが有償仮想通貨を消費して(または課金処理により)ゲームオブジェクトを入手して、当該ゲームオブジェクトを、アバターオブジェクト6Bが配置される仮想空間に対して配置するよう指示する操作(いわゆる投げ銭)などであってもよい。
[Modification]
In the present embodiment, in the game according to the
換言すると、第3プレイパートは、ユーザ5Bの操作に応じたアバターオブジェクト6Bの動作とは無関係に進行するパートとして提供される。また、第3プレイパートは、第2ミニゲームを含むライブゲーム進行パートが開始する前にプレイ可能である。なお、第3プレイパートはユーザ端末800のユーザ8の操作に基づいて進行するシングルプレイパートであってもよい。また、第3プレイパートは、複数のユーザ端末800のユーザ8の操作に基づいて進行するマルチプレイパートであってもよい。また、第3プレイパートは、ユーザ5Bの操作によらずに動作するキャラクタを用いて進行してもよい。
In other words, the third play part is provided as a part that proceeds regardless of the operation of the
また、本実施形態において、ユーザ端末800において実現される第1仮想空間11_1A、第2仮想空間11_2Aに配置される仮想カメラ14_A1、14_A2の位置及び方向は、ユーザ8によって操作可能であってもよい。例えば、ユーザは、視野画像1400_A1、1400_A2が表示された表示部8702に対する操作を行うことにより、仮想カメラ14_A1、14_A2の位置及び方向を制御可能であってもよい。この場合、仮想カメラ14_A1、14_A2は、アバターオブジェクト6Bを含む所定領域には配置できないように制御されていてもよい。例えば、アバターオブジェクト6Bが存在する仮想的なステージの領域を当該所定領域として規定する。この場合、ユーザ8は、ステージ以外の領域であれば自由な位置に移動してアバターオブジェクト6を視聴できるという仮想体験をすることができる。
Further, in the present embodiment, the positions and directions of the virtual cameras 14_A1 and 14_A2 arranged in the first virtual space 11_1A and the second virtual space 11_2A realized in the
また、本実施形態において、第1ミニゲーム及び第2ミニゲームにおける選択肢オブジェクトは、1つの選択肢オブジェクトで複数の選択肢を表すものであってもよい。例えば、サイコロオブジェクトであれば、1つのサイコロオブジェクトで1から6までの6つの選択肢を表す。また、コインオブジェクトであれば、1つのコインオブジェクトで表と裏との2つの選択肢を表す。この場合、アバターオブジェト6Bが選択肢の何れかを選択する動作としては、サイコロオブジェクトを転がす動作、コインオブジェクトを投げる動作といったような、当該選択肢オブジェクトに応じた動作が適用される。この場合、当該選択肢オブジェクトには、仮想手が接触したと判定された状態でコントローラ300が有する所定ボタンの操作が検出された場合の挙動として、転がる挙動、上昇後落下する挙動等、当該選択肢オブジェクトに応じた挙動が定められる。
Further, in the present embodiment, the option objects in the first mini game and the second mini game may represent a plurality of options with one option object. For example, in the case of a dice object, one dice object represents six
また、本実施形態において、アバターオブジェクト6Bによってビンゴボールオブジェクトが選択された後に、当該ビンゴボールオブジェクトの数値が決定されてもよい。この場合、決定された数値が、選択されたビンゴボールオブジェクトの表面に表示されてもよい。また、この場合、箱オブジェクト3142の中には、少なくとも1つのビンゴボールオブジェクトが配置されていればよい。
Further, in the present embodiment, after the bingo ball object is selected by the
また、本実施形態において、第2ミニゲームであるビンゴゲームが有利になる程度が、第1ミニゲームにおいて第1条件が満たされた程度に応じて段階的に決定されてもよい。例えば、ジャンケンゲームにおいて、ジャンケンが複数回行われる場合、ユーザ8が勝った回数に応じた枚数のビンゴカードが、ビンゴゲームにおいてユーザに付与されてもよい。
Further, in the present embodiment, the degree to which the bingo game, which is the second mini game, becomes advantageous may be determined stepwise according to the degree to which the first condition is satisfied in the first mini game. For example, in the rock-paper-scissors game, when the rock-paper-scissors game is performed a plurality of times, the number of bingo cards corresponding to the number of times the
また、本実施形態において、ユーザ端末800は、仮想空間制御部8106を有していなくてもよい。この場合、キャラクタ制御装置110Bは、当該装置においてHMD120に表示する視野画像に加えて、ユーザ端末800用の視野画像を生成してもよい。また、この場合、当該ユーザ端末800用の視野画像は、ユーザ端末800に配信されることにより再生される。例えば、この場合、キャラクタ制御装置110Bにおいて実現される第1仮想空間11_1Bに、仮想カメラ14_B1に加えて仮想カメラ14_A1が配置される。キャラクタ制御装置110Bは、仮想カメラ14_A1に基づく視野画像1400_A1を生成し、ユーザ端末800Aに配信すればよい。第2仮想空間11_2Bに応じた視野画像1400_A2も、同様にキャラクタ制御装置110Bにおいて生成され、配信可能である。この場合、視野画像1400_A1及び1400_A2は、それぞれ、キャラクタ制御装置110Bのユーザ5Bの操作に応じてリアルタイムに生成され、リアルタイムに配信されてもよい。また、視野画像1400_A1及び1400_A2は、それぞれ、あらかじめ生成された録画映像として配信されてもよい。
Further, in the present embodiment, the
また、本実施形態において、本発明における第1キャラクタ及び第2キャラクタとして、異なるキャラクタを適用してもよい。この場合、ライブゲーム進行パートにおいて所定条件を満たしたユーザ8は、ライブゲーム進行パートを進行したアバターオブジェクト6Bとは異なるアバターオブジェクトによるライブ配信パートを視聴することができる。
Further, in the present embodiment, different characters may be applied as the first character and the second character in the present invention. In this case, the
また、本実施形態において、本発明における第1キャラクタ制御装置及び第2キャラクタ制御装置として、異なるキャラクタ制御装置を適用してもよい。例えば、第2キャラクタ制御装置として、HMDセット110Cを適用してもよい。この場合、ライブ配信パートは、ユーザ5C(第2ユーザ)の操作に基づいて進行する。 Further, in the present embodiment, different character control devices may be applied as the first character control device and the second character control device in the present invention. For example, the HMD set 110C may be applied as the second character control device. In this case, the live distribution part proceeds based on the operation of the user 5C (second user).
上記実施形態においては、HMDによってユーザが没入する仮想空間(VR空間)を例示して説明したが、HMDとして、透過型のHMDを採用してもよい。この場合、透過型のHMDを介してユーザが視認する現実空間に仮想空間を構成する画像の一部を合成した視界画像を出力することにより、拡張現実(AR:Augumented Reality)空間または複合現実(MR:Mixed Reality)空間における仮想体験をユーザに提供してもよい。この場合、操作オブジェクトに代えて、ユーザの手の動きに基づいて、仮想空間内における対象オブジェクトへの作用を生じさせてもよい。具体的には、プロセッサは、現実空間におけるユーザの手の位置の座標情報を特定するとともに、仮想空間内における対象オブジェクトの位置を現実空間における座標情報との関係で定義してもよい。これにより、プロセッサは、現実空間におけるユーザの手と仮想空間における対象オブジェクトとの位置関係を把握し、ユーザの手と対象オブジェクトとの間で上述したコリジョン制御等に対応する処理を実行可能となる。その結果、ユーザの手の動きに基づいて対象オブジェクトに作用を与えることが可能となる。 In the above-described embodiment, the virtual space (VR space) in which the user is immersed by the HMD has been described as an example, but a transparent HMD may be adopted as the HMD. In this case, by outputting a view image in which a part of an image forming a virtual space is combined with a real space visually recognized by a user via a transmissive HMD, an augmented reality (AR) space or a mixed reality (AR) is output. The user may be provided with a virtual experience in MR (Mixed Reality) space. In this case, instead of the operation object, the action on the target object in the virtual space may be generated based on the movement of the user's hand. Specifically, the processor may specify the coordinate information of the position of the user's hand in the physical space, and define the position of the target object in the virtual space in relation to the coordinate information in the physical space. As a result, the processor can grasp the positional relationship between the user's hand in the real space and the target object in the virtual space, and can execute the process corresponding to the above-described collision control or the like between the user's hand and the target object. .. As a result, it becomes possible to act on the target object based on the movement of the user's hand.
〔ソフトウェアによる実現例〕
制御部2100の制御ブロック(特に、操作受付部2101、表示制御部2102、UI制御部2103、アニメーション生成部2104、ゲーム進行部2105、仮想空間制御部2106、および反応処理部2107)、制御部6100の制御ブロック(特に、進行支援部6101および共有支援部6102)、ならびに、制御部8100の制御ブロック(特に、操作受付部8101、表示制御部8102、UI制御部113、アニメーション生成部8104、ゲーム進行部8105、仮想空間制御部8106、および進捗情報生成部8107)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェアによって実現してもよい。
[Example of software implementation]
A control block of the control unit 2100 (in particular, an
後者の場合、制御部2100、制御部6100及び制御部8100の一部又は全部を備えた情報処理装置は、各機能を実現するソフトウェアであるプログラムの命令を実行するCPU、上記プログラムおよび各種データがコンピュータ(またはCPU)で読み取り可能に記録されたROM(Read Only Memory)または記憶装置(これらを「記録媒体」と称する)、上記プログラムを展開するRAM(Random Access Memory)などを備えている。そして、コンピュータ(またはCPU)が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明の一態様は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
In the latter case, the information processing apparatus including a part or all of the
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。 The present invention is not limited to the above-described embodiments, but various modifications can be made within the scope of the claims, and embodiments obtained by appropriately combining the technical means disclosed in the different embodiments Is also included in the technical scope of the present invention.
〔付記事項〕
本発明の一側面に係る内容を列記すると以下のとおりである。
[Appendix]
The contents according to one aspect of the present invention are listed below.
(項目1) プロセッサ(810)と、メモリ(820)とを備えるコンピュータ(ユーザ端末800)により実行されるゲームプログラム(831)について説明した。本開示のある局面によると、ゲームプログラムは、プロセッサおよびメモリを備え、配信者が行うリアルタイム配信を視聴者が視聴するための視聴端末としてのコンピュータにより実行されるゲームプログラムである。ゲームプログラムは、プロセッサに、第1配信者がリアルタイム配信を行うための第1配信端末と、視聴端末を含む複数の視聴端末との間で共有される第1仮想空間に、第1配信者に対応する第1アバターオブジェクトと、第1仮想カメラとを配置するステップと、リアルタイム配信が行われる間、第1仮想カメラの視野領域を示す第1視野画像を表示部に表示するステップと、ゲームプログラムに基づくゲームに含まれる、複数の状態間を遷移しながら進行する第1ゲームパートの状態ごとに、1つの状態におけるゲームを、第1配信者の身体の動き及び視聴者の操作に基づき進行させるゲーム処理を行うステップと、を実行させ、各状態におけるゲーム処理は、第1配信端末が第1配信者の身体の動きを検出して生成した、第1アバターオブジェクトの動作を示す第1動作情報を受信するステップと、第1動作情報が受信されたことに応答して、当該第1動作情報が示す動きを第1アバターオブジェクトが行うことを含むよう、第1視野画像を更新するステップと、第1動作情報が受信されたことに応答して、第1動作情報が示す動きが状態を遷移させるための動きであるか否かを判定するステップと、第1動作情報が示す動きが遷移させるための動きである場合に、第1ゲームパートの進行を、現在の状態から他の状態に遷移させるステップと、を含む。上記の構成によれば、第1配信者の身体の動き及び前記視聴者の操作に基づき各状態が進行する第1ゲームパートにおいて、視聴者は、ゲームを進行させる第1アバターオブジェクトの遷移させるための動作によって、第1ゲームパートの状態が切り替わることを認識できるので、臨場感が増し、ゲームへの没入感が高まる。 (Item 1) The game program (831) executed by the computer (user terminal 800) including the processor (810) and the memory (820) has been described. According to an aspect of the present disclosure, a game program is a game program that includes a processor and a memory and that is executed by a computer as a viewing terminal for a viewer to view real-time distribution performed by the distributor. The game program is provided to the processor in a first virtual space shared between a first distribution terminal for the first distributor to perform real-time distribution and a plurality of viewing terminals including the viewing terminal. Arranging a corresponding first avatar object and a first virtual camera, displaying a first view image showing a view area of the first virtual camera on a display unit during real-time distribution, and a game program The game in one state is advanced based on the movement of the body of the first distributor and the operation of the viewer for each state of the first game part that progresses while transitioning between a plurality of states included in the game based on. And a step of performing a game process, wherein the game process in each state is performed by the first distribution terminal that detects a motion of the body of the first distributor and generates first motion information indicating a motion of the first avatar object. And a step of updating the first view image so as to include the first avatar object performing a motion indicated by the first motion information in response to the reception of the first motion information. A step of determining whether or not the motion indicated by the first motion information is a motion for causing a state transition in response to the reception of the first motion information; and the motion indicated by the first motion information causes a transition. The movement of the first game part, the step of transitioning the progress of the first game part from the current state to another state. According to the above configuration, in the first game part in which each state progresses based on the movement of the body of the first distributor and the operation of the viewer, the viewer transitions the first avatar object that advances the game. By this operation, it is possible to recognize that the state of the first game part is switched, so that the sense of presence is increased and the immersive feeling in the game is enhanced.
(項目2) (項目1)において、第1アバターオブジェクト及び第1仮想カメラを配置するステップは、第1仮想空間に第1オブジェクトをさらに配置し、判定するステップは、第1動作情報が示す動きが、第1仮想空間において第1アバターオブジェクトに第1オブジェクトを操作させる動きであるとき、遷移させるための動きであると判定してもよい。これにより、視聴者は、第1アバターオブジェクトが第1オブジェクトを操作する動作に応じて、第1ゲームパートの状態が切り替わることを認識できる。 (Item 2) In (Item 1), the step of disposing the first avatar object and the first virtual camera further disposes the first object in the first virtual space, and the step of determining is the movement indicated by the first motion information. May be determined to be a movement for making a transition when the movement is for causing the first avatar object to operate the first object in the first virtual space. Thereby, the viewer can recognize that the state of the first game part is switched according to the operation of the first avatar object operating the first object.
(項目3) (項目2)において、第1アバターオブジェクト及び第1仮想カメラを配置するステップは、第1アバターオブジェクトの少なくとも一部として、第1アバターオブジェクトの手を表す操作オブジェクトを配置し、判定するステップは、第1動作情報が示す動きが、第1仮想空間において操作オブジェクトを第1オブジェクトに接触させる動きであるとき、遷移させるための動きであると判定してもよい。これにより、視聴者は、第1アバターオブジェクトの手が第1オブジェクトに接触すると、第1ゲームパートの状態が切り替わることを認識できる。 (Item 3) In (Item 2), the step of arranging the first avatar object and the first virtual camera includes arranging an operation object representing the hand of the first avatar object as at least a part of the first avatar object, and determining. The step of performing may determine that the movement indicated by the first motion information is a movement for making a transition when the movement of the operation object to contact the first object in the first virtual space. Accordingly, the viewer can recognize that the state of the first game part is switched when the hand of the first avatar object contacts the first object.
(項目4) (項目1)から(項目3)の何れか1項目において、各状態におけるゲーム処理は、 視聴者の操作を受け付けるためのユーザインタフェース(UI)オブジェクトであって、遷移前の状態に関連付けられたUIオブジェクトを表示部から消去するとともに、現在の状態に関連付けられたUIオブジェクトを第1視野画像と共に表示部に表示するステップをさらに含んでもよい。これにより、視聴者は、第1アバターオブジェクトによって遷移させるための動作が行われた結果、操作性(UIオブジェクト)が切り替わることで、第1ゲームパートの状態が遷移したことを認識できる。 (Item 4) In any one of (Item 1) to (Item 3), the game process in each state is a user interface (UI) object for accepting an operation by a viewer, and is in a state before transition. The method may further include deleting the associated UI object from the display unit and displaying the UI object associated with the current state on the display unit together with the first visual field image. As a result, the viewer can recognize that the state of the first game part has transitioned by switching the operability (UI object) as a result of the action for transition by the first avatar object.
(項目5) (項目1)から(項目4)の何れか1項目において、各状態におけるゲーム処理は、 遷移前の状態に関連付けられた第2オブジェクトを第1仮想空間から消去するとともに、当該遷移前の状態に関連付けられた第2オブジェクトとは態様の異なる、現在の状態に関連付けられた第2オブジェクトを第1仮想空間に配置するステップをさらに含んでもよい。これにより、視聴者は、第1アバターオブジェクトによって遷移させるための動作が行われた結果、第1仮想空間に配置される第2オブジェクトが切り替わることで、第1ゲームパートの状態が遷移したことを認識できる。 (Item 5) In any one of (Item 1) to (Item 4), in the game process in each state, the second object associated with the state before the transition is deleted from the first virtual space, and the transition is performed. The method may further include the step of arranging a second object associated with the current state, which has a different aspect from the second object associated with the previous state, in the first virtual space. As a result, the viewer is notified that the state of the first game part has transitioned due to the switching of the second object arranged in the first virtual space as a result of the action for transition by the first avatar object. Can be recognized.
(項目6) (項目1)から(項目5)の何れか1項目において、第1アバターオブジェクト及び第1仮想カメラを配置するステップは、各状態を示す情報を表示するための第3オブジェクトを第1仮想空間にさらに配置し、各状態におけるゲーム処理は、 第3オブジェクトに表示される情報を、遷移前の状態を示す情報から、現在の状態を示す情報に変更するステップをさらに含んでもよい。これにより、視聴者は、第1アバターオブジェクトによって遷移させるための動作が行われた結果、第1仮想空間に配置された第3オブジェクトの表示が切り替わることで、第1ゲームパートの状態が遷移したことを認識できる。 (Item 6) In the item of any one of (Item 1) to (Item 5), the step of arranging the first avatar object and the first virtual camera may include a third object for displaying information indicating each state. The game process in each state further arranged in one virtual space may further include a step of changing the information displayed on the third object from the information indicating the state before the transition to the information indicating the current state. As a result, the viewer performs the transition operation by the first avatar object, and as a result, the display of the third object arranged in the first virtual space is switched, and the state of the first game part is transited. I can recognize that.
(項目7) (項目1)から(項目6)の何れか1項目において、各状態におけるゲーム処理の少なくとも1つは、現在の状態に遷移する以前の少なくとも1つの状態に関連付けてメモリに記憶された達成度をメモリから取得するステップと、メモリから取得された達成度が高いほど、現在の状態に関連付けられた第1条件の達成度を高める上で視聴者にとって有利な処理を実行するステップと、第1配信者の身体の動き及び視聴者の操作に基づいて、第1条件が達成された達成度を判定するステップと、達成度を現在の状態に関連付けてメモリに記憶させるステップと、をさらに含んでもよい。これにより、ある状態において第1条件の達成度を高めるためには、当該状態に遷移する以前の少なくとも1つの状態において第1条件の達成度を高めることが有効となる。その結果、各状態において第1条件の達成度を高めることに対する視聴者の動機付けが向上する。 (Item 7) In any one of (Item 1) to (Item 6), at least one of the game processes in each state is stored in the memory in association with at least one state before the transition to the current state. The achievement level obtained from the memory, and the higher the achievement level obtained from the memory, the better the achievement of the first condition associated with the current state, and the step of executing a process advantageous to the viewer. , Determining the degree of achievement of the first condition based on the movement of the body of the first distributor and the operation of the viewer, and storing the degree of achievement in a memory in association with the current state. It may further include. Accordingly, in order to increase the achievement level of the first condition in a certain state, it is effective to increase the achievement level of the first condition in at least one state before the transition to the state. As a result, the motivation of the viewer to improve the achievement level of the first condition in each state is improved.
(項目8) (項目1)から(項目7)の何れか1項目において、ゲームプログラムは、プロセッサに、ゲームに含まれる、第1ゲームパートとは異なる第2ゲームパートを、視聴者の操作に応答して進行させるステップと、第2ゲームパートにおいて、視聴者の操作に基づき第2条件が達成された達成度を判定するステップと、第2条件の達成度をメモリに記憶させるステップと、をさらに実行させ、第1ゲームパートの各状態におけるゲーム処理の少なくとも1つは、第2条件の達成度をメモリから取得するステップと、第2条件の達成度が高いほど、現在の状態に関連付けられた第1条件の達成度を高める上で、視聴者にとって有利な処理を実行するステップと、をさらに含んでもよい。これにより、第1ゲームパートの少なくとも何れかの状態においてより有利に第1条件を達成するために、その前に、第2ゲームパートにおいて第2条件の達成度を高めることが有効となる。その結果、第1ゲームパートを視聴する前に、第2ゲームパートをプレイして第2条件の達成度を高めることに対する視聴者の動機付けが向上する。 (Item 8) In any one of (Item 1) to (Item 7), the game program causes the processor to operate a second game part, which is included in the game and is different from the first game part, by a viewer's operation. A step of responding to progress, a step of determining the degree of achievement of the second condition based on an operation by a viewer in the second game part, and a step of storing the degree of achievement of the second condition in a memory. Furthermore, at least one of the game processes in each state of the first game part is associated with the current state as the step of acquiring the achievement level of the second condition from the memory, and the higher the achievement level of the second condition. In order to improve the achievement level of the first condition, a step of executing a process advantageous to the viewer may be further included. Thus, in order to more advantageously achieve the first condition in at least one of the states of the first game part, it is effective to increase the degree of achievement of the second condition in the second game part before that. As a result, the viewer's motivation for playing the second game part and increasing the degree of achievement of the second condition before watching the first game part is improved.
(項目9) (項目7)または(項目8)において、第1ゲームパートの各状態におけるゲーム処理の少なくとも1つは、第1仮想空間に、複数の選択肢オブジェクトをさらに配置するステップと、複数の選択肢オブジェクトの一部または全部の各々に関連付けられた、視聴者の操作を受け付ける複数の第1UIオブジェクトを、第1視野画像と共に表示部に表示するステップと、第1動作情報が示す動きが、第1仮想空間において第1アバターオブジェクトに複数の選択肢オブジェクトの一部を選択させるための動きであるか否かを判定するステップと、第1動作情報が示す動きが選択させるための動きである場合に、第1アバターオブジェクトによって選択された選択肢オブジェクトを特定するステップと、特定した選択肢オブジェクトに関連付けられた第1UIオブジェクトに対する視聴者の操作に応答して、現在の状態に関連付けられた第1条件の少なくとも一部を達成する処理を実行するステップと、をさらに含み、有利な処理を実行するステップは、第1UIオブジェクトを表示するステップにおいて表示部に表示される第1UIオブジェクトの数をより多くする処理を実行してもよい。これにより、より多くの第1UIオブジェクトが表示部に表示されれば、何れかの第1UIオブジェクトに関連付けられた選択肢オブジェクトが第1アバターオブジェクトによって選択される可能性がより高くなるので、視聴者にとって、第1条件が達成しやすくなるという有利な効果がある。 (Item 9) In (Item 7) or (Item 8), at least one of the game processes in each state of the first game part includes a step of further arranging a plurality of option objects in the first virtual space, A step of displaying a plurality of first UI objects, which are associated with a part or all of the option objects and accepts a viewer's operation, on the display unit together with the first visual field image; A step of determining whether or not the first avatar object is a motion for causing the first avatar object to select a part of the plurality of choice objects in one virtual space, and a case where the motion indicated by the first motion information is a motion for selecting , A step of identifying the choice object selected by the first avatar object and at least one of the first conditions associated with the current state in response to a viewer operation on the first UI object associated with the identified choice object. And a step of executing an advantageous process, wherein the step of displaying the first UI object includes a step of increasing the number of the first UI objects displayed on the display unit. You may execute. As a result, if more first UI objects are displayed on the display unit, the selection object associated with any of the first UI objects is more likely to be selected by the first avatar object. There is an advantageous effect that the first condition is easily achieved.
(項目10) (項目1)から(項目9)の何れか1項目において、第1ゲームパートの各状態におけるゲーム処理のうち特定のゲーム処理は、遷移させるための動きであるか否かを判定するステップと、遷移させるステップとに代えて、現在の状態に関連付けられた特定の条件が満たされたか否かを判定するステップと、特定の条件が満たされた場合に、ゲームを第1ゲームパートから、第1ゲームパートとは異なる第3ゲームパートへ移行させるステップと、をさらに含み、ゲームプログラムは、プロセッサに、第3ゲームパートにおいて、複数の視聴端末のうち、特定の条件が満たされた複数の視聴端末と、第2配信者がリアルタイム配信を行うための第2配信端末との間で共有される、第1仮想空間とは異なる第2仮想空間に、第2配信者に対応する第2アバターオブジェクトと、第2仮想カメラとを配置するステップと、第3ゲームパートにおいてリアルタイム配信が行われる間、第2仮想カメラの視野領域を示す第2視野画像を、第1視野画像に代えて表示部に表示するステップと、第2配信端末が第2配信者の身体の動きを検出して生成した、第2アバターオブジェクトの動作を示す第2動作情報を受信するステップと、第2動作情報が受信されたことに応答して、当該第2動作情報が示す動きを第2アバターオブジェクトが行うことを含むよう、第2視野画像を更新するステップと、をさらに実行させてもよい。これにより、第1仮想空間とは異なる第2仮想空間でのリアルタイム配信を視聴するために、第1ゲームパートにおいて特定の条件が満たされるよう、特定の状態を進行することの動機付けが向上する。 (Item 10) In any one of (Item 1) to (Item 9), it is determined whether a specific game process among the game processes in each state of the first game part is a movement for transition. The step of determining whether a specific condition associated with the current state is satisfied, instead of the step of performing the transition and the step of causing the transition, and when the specific condition is satisfied, the game is executed in the first game part. From the first game part to a third game part different from the first game part, the game program causes the processor to satisfy a specific condition among the plurality of viewing terminals in the third game part. A second virtual space different from the first virtual space, which is shared between the plurality of viewing terminals and the second distribution terminal for the second distributor to perform the real-time distribution, corresponds to the second distributor. The step of arranging the 2 avatar object and the second virtual camera, and the second visual field image showing the visual field area of the second virtual camera is replaced with the first visual field image during real-time distribution in the third game part. Displaying on the display unit, receiving second motion information indicating a motion of the second avatar object, which is generated by the second distribution terminal by detecting the movement of the body of the second distributor, and second motion information The step of updating the second visual field image so as to include the second avatar object performing the movement indicated by the second motion information in response to the reception of the. Thereby, in order to view the real-time distribution in the second virtual space different from the first virtual space, the motivation for advancing a specific state is improved so that a specific condition is satisfied in the first game part. ..
(項目11) (項目10)において、ゲームプログラムは、プロセッサに、特定の条件が満たされなかった場合に、視聴者によって入力される第1入力情報を取得するステップと、第1入力情報が取得されたことに応答して、第1入力情報を、複数の視聴端末のうち、特定の条件が満たされなかった他の視聴端末に送信するステップと、特定の条件が満たされなかった他の視聴端末の視聴者によって入力された第2入力情報を受信するステップと、第1入力情報および第2入力情報を、第1視野画像と共に表示部に表示するステップと、をさらに実行させてもよい。これにより、特定の条件が満たされなかった視聴者間で、第2仮想空間に参加できなかった残念感を共有する場を提供できる。 (Item 11) In (Item 10), the game program obtains the first input information input by the viewer when the processor does not meet the specific condition, and the first input information is obtained. In response to the request, the step of transmitting the first input information to another viewing terminal among the plurality of viewing terminals that does not meet the specific condition, and the other viewing terminal that does not meet the specific condition. The step of receiving the second input information input by the viewer of the terminal and the step of displaying the first input information and the second input information on the display unit together with the first view image may be further executed. As a result, it is possible to provide a place where viewers who do not meet the specific condition can share the disappointment that they could not participate in the second virtual space.
(項目12) (項目10)又は(項目11)において、ゲームプログラムは、プロセッサに、特定の条件が満たされなかった場合に、視聴者による対価の支払い、又は、対価の支払いに基づき視聴者に付与されたアイテムの消費を指示する操作を受け付けるステップと、指示する操作に応答して、対価の課金処理またはアイテムを消費する処理を実行するとともに、ゲームを第1ゲームパートから第3ゲームパートへ移行させるステップと、をさらに実行させてもよい。これにより、特定の条件が満たされなくても、第3ゲームパートに参加可能な手段を視聴者に提供できる。 (Item 12) In (Item 10) or (Item 11), the game program causes the processor to pay the consideration by the viewer when the specific condition is not satisfied, or to the viewer based on the payment of the consideration. A step of accepting an operation for instructing consumption of the given item, and in response to the operation for instructing, performing a fee charging process or a process of consuming an item, and moving the game from the first game part to the third game part. The step of shifting may be further executed. As a result, it is possible to provide the viewer with means capable of participating in the third game part even if the specific condition is not satisfied.
(項目13) ゲームプログラムを実行する方法を説明した。本開示のある局面によると、ゲームプログラムは、プロセッサおよびメモリを備えるコンピュータにより実行される。該方法は、プロセッサが(項目1)に記載の各ステップを実行する方法である。(項目13)に係る方法は、(項目1)に係るゲームプログラムと同様の作用効果を奏する。 (Item 13) The method of executing the game program has been described. According to an aspect of the present disclosure, a game program is executed by a computer including a processor and a memory. The method is a method in which the processor executes the steps described in (Item 1). The method according to (Item 13) has the same effects as the game program according to (Item 1).
(項目14) 情報処理装置を説明した。本開示のある局面によると、該情報処理装置は、(項目1)に係るゲームプログラムを記憶するメモリ(820)と、該ゲームプログラムを実行することにより、情報処理装置(ユーザ端末800)の動作を制御するプロセッサ(810)とを備える。(項目14)に係る情報処理装置は、(項目1)に係るゲームプログラムと同様の作用効果を奏する。 (Item 14) The information processing device has been described. According to an aspect of the present disclosure, the information processing apparatus operates the information processing apparatus (user terminal 800) by executing a memory (820) that stores a game program according to (Item 1) and the game program. And a processor (810) for controlling the. The information processing device according to (Item 14) has the same effects as the game program according to (Item 1).
2 ネットワーク、5,5A,5B,5C、5D ユーザ、6,6A,6B,6C,6D アバターオブジェクト、11,11A,11B,11C,11D 仮想空間、12 中心、13 パノラマ画像、14,14A,14B 仮想カメラ、15,15A,15B,15C 視界領域、16 基準視線、17,17A,17B 視界画像、18,19 領域、100 HMDシステム、110,110A,110B,110C,110D HMDセット、120,120A,120B,120C、HMD、130,130A,130B,130C モニタ、140 注視センサ、150 第1カメラ、160 第2カメラ、170,170A,170B マイク、180,180A,180B スピーカ、190 センサ、200,200A,200B コンピュータ、210,210A、210B,210C,210D,610,810,810A プロセッサ、220,620,820 メモリ、230,230A,230B,630,830 ストレージ、240,640,840 入出力インターフェイス、250,650,850 通信インターフェイス、260,660 バス、300,300B コントローラ、300R 右コントローラ、300L 左コントローラ、310 グリップ、320 フレーム、330 天面、340,340,350,370,380 ボタン、360 赤外線LED、390 アナログスティック、410 HMDセンサ、420,420A モーションセンサ、430,430A ディスプレイ、510 コントロールモジュール、520 レンダリングモジュール、530 メモリモジュール、540 通信制御モジュール、600 サーバ、1421、8121 仮想オブジェクト生成モジュール、1422、8122 仮想カメラ制御モジュール、1423 操作オブジェクト制御モジュール、1424、8124 アバターオブジェクト制御モジュール、1425 動き検出モジュール、1426 衝突検出モジュール、1427、8127 仮想オブジェクト制御モジュール、1500 ゲームシステム、810 プロセッサ、820 メモリ、830 ストレージ、840 入出力IF、850 通信IF、870 タッチスクリーン(表示部、操作部)、860 カメラ(操作部)、880 測距センサ(操作部)、800 ユーザ端末(情報処理装置)、2100、6100、8100 制御部、2200、6200、8200 記憶部 2101、8101 操作受付部、2102、8102 表示制御部、2103、8103 UI制御部、2104、8104 アニメーション生成部、2105、8105 仮想空間制御部、2106、8106 仮想空間制御部、2107 反応処理部、8107 進捗情報生成部、6101 進行支援部、6102 共有支援部、231、631、831 ゲームプログラム、132 ゲーム情報、133 ユーザ情報、151 入力部(操作部)、152 表示部、200 サーバ、1010 物体、1020 コントローラ(操作部)、1030 記憶媒体
2 network, 5, 5A, 5B, 5C, 5D user, 6, 6A, 6B, 6C, 6D avatar object, 11, 11A, 11B, 11C, 11D virtual space, 12 center, 13 panoramic image, 14, 14A, 14B Virtual camera, 15, 15A, 15B, 15C view area, 16 reference line of sight, 17, 17A, 17B view image, 18, 19 area, 100 HMD system, 110, 110A, 110B, 110C, 110D HMD set, 120, 120A, 120B, 120C, HMD, 130, 130A, 130B, 130C monitor, 140 gaze sensor, 150 first camera, 160 second camera, 170, 170A, 170B microphone, 180, 180A, 180B speaker, 190 sensor, 200, 200A, 200B computer, 210, 210A, 210B, 210C, 210D, 610, 810, 810A processor, 220, 620, 820 memory, 230, 230A, 230B, 630, 830 storage, 240, 640, 840 input/output interface, 250, 650 , 850 communication interface, 260,660 bus, 300,300B controller, 300R right controller, 300L left controller, 310 grip, 320 frame, 330 top surface, 340,340,350,370,380 button, 360 infrared LED, 390 analog Stick, 410 HMD sensor, 420, 420A motion sensor, 430, 430A display, 510 control module, 520 rendering module, 530 memory module, 540 communication control module, 600 server, 1421, 8121 virtual object generation module, 1422, 8122 virtual camera Control Module, 1423 Operation Object Control Module, 1424, 8124 Avatar Object Control Module, 1425 Motion Detection Module, 1426 Collision Detection Module, 1427, 8127 Virtual Object Control Module, 1500 Game System, 810 Processor, 820 Memory, 830 Storage, 840 Input Output IF, 850 Communication IF, 870 Touch screen (display unit, operation unit), 860 Camera (operation unit), 880 Distance measuring sensor (Operation unit), 800 User terminal (information processing device ) 2100, 6100, 8100 control unit, 2200, 6200, 8200 storage unit 2101, 8101 operation reception unit, 2102, 8102 display control unit, 2103, 8103 UI control unit, 2104, 8104 animation generation unit, 2105, 8105 virtual space Control unit, 2106, 8106 virtual space control unit, 2107 reaction processing unit, 8107 progress information generation unit, 6101 progress support unit, 6102 sharing support unit, 231, 631, 831 game program, 132 game information, 133 user information, 151 input Unit (operation unit), 152 display unit, 200 server, 1010 object, 1020 controller (operation unit), 1030 storage medium
Claims (14)
前記ゲームプログラムは、前記プロセッサに、
第1配信者がリアルタイム配信を行うための第1配信端末と、前記視聴端末を含む複数の視聴端末との間で共有される第1仮想空間に、前記第1配信者に対応する第1アバターオブジェクトと、第1仮想カメラとを配置するステップと、
前記リアルタイム配信が行われる間、前記第1仮想カメラの視野領域を示す第1視野画像を表示部に表示するステップと、
前記ゲームプログラムに基づくゲームに含まれる、複数の状態間を遷移しながら進行する第1ゲームパートの前記状態ごとに、1つの状態におけるゲームを、前記第1配信者の身体の動き及び前記視聴者の操作に基づき進行させるゲーム処理を行うステップと、を実行させ、
前記各状態におけるゲーム処理は、
前記第1配信端末が前記第1配信者の身体の動きを検出して生成した、前記第1アバターオブジェクトの動作を示す第1動作情報を受信するステップと、
前記第1動作情報が受信されたことに応答して、当該第1動作情報が示す動きを前記第1アバターオブジェクトが行うことを含むよう、前記第1視野画像を更新するステップと、
前記第1動作情報が受信されたことに応答して、前記第1動作情報が示す動きが前記状態を遷移させるための動きであるか否かを判定するステップと、
前記第1動作情報が示す動きが前記遷移させるための動きである場合に、前記第1ゲームパートの進行を、現在の状態から他の状態に遷移させるステップと、を含む、ゲームプログラム。 A game program including a processor and a memory, which is executed by a computer as a viewing terminal for a viewer to view real-time distribution performed by the distributor,
The game program, in the processor,
A first avatar corresponding to the first distributor in a first virtual space shared between a first distribution terminal for the first distributor to perform real-time distribution and a plurality of viewing terminals including the viewing terminal. Arranging the object and the first virtual camera,
Displaying a first visual field image showing a visual field area of the first virtual camera on a display unit while the real-time distribution is performed;
For each of the states of the first game part that progresses while transitioning between a plurality of states, which is included in the game based on the game program, the game in one state is defined as the body movement of the first distributor and the viewer. And a step of performing a game process to be advanced based on the operation of
The game process in each state is
Receiving first motion information indicating a motion of the first avatar object, which is generated by the first distribution terminal by detecting a movement of the body of the first distributor, and
Updating the first field-of-view image to include the first avatar object performing a motion indicated by the first motion information in response to receiving the first motion information;
Responsive to receiving the first motion information, determining whether the motion indicated by the first motion information is a motion for transitioning the state,
And a step of transitioning the progress of the first game part from the current state to another state when the movement indicated by the first motion information is the movement for the transition.
前記判定するステップは、前記第1動作情報が示す動きが、前記第1仮想空間において前記第1アバターオブジェクトに前記第1オブジェクトを操作させる動きであるとき、前記遷移させるための動きであると判定する、請求項1に記載のゲームプログラム。 Arranging the first avatar object and the first virtual camera, further disposing a first object in the first virtual space,
In the determining step, when the motion indicated by the first motion information is a motion that causes the first avatar object to operate the first object in the first virtual space, the motion is determined to be the transition. The game program according to claim 1.
前記判定するステップは、前記第1動作情報が示す動きが、前記第1仮想空間において前記操作オブジェクトを前記第1オブジェクトに接触させる動きであるとき、前記遷移させるための動きであると判定する、請求項2に記載のゲームプログラム。 Arranging the first avatar object and the first virtual camera, arranging an operation object representing the hand of the first avatar object as at least a part of the first avatar object,
In the determining step, when the motion indicated by the first motion information is a motion for bringing the operation object into contact with the first object in the first virtual space, it is determined that the motion is for the transition. The game program according to claim 2.
前記視聴者の操作を受け付けるためのユーザインタフェース(UI)オブジェクトであって、遷移前の状態に関連付けられた前記UIオブジェクトを前記表示部から消去するとともに、現在の状態に関連付けられた前記UIオブジェクトを前記第1視野画像と共に前記表示部に表示するステップをさらに含む、請求項1から3の何れか1項に記載のゲームプログラム。 The game process in each state is
A user interface (UI) object for receiving the operation of the viewer, wherein the UI object associated with the state before the transition is deleted from the display unit, and the UI object associated with the current state is displayed. The game program according to any one of claims 1 to 3, further comprising a step of displaying the first visual field image on the display unit.
遷移前の状態に関連付けられた第2オブジェクトを前記第1仮想空間から消去するとともに、当該遷移前の状態に関連付けられた前記第2オブジェクトとは態様の異なる、現在の状態に関連付けられた前記第2オブジェクトを前記第1仮想空間に配置するステップをさらに含む、請求項1から4の何れか1項に記載のゲームプログラム。 The game process in each state is
The second object associated with the state before transition is deleted from the first virtual space, and the second object associated with the current state, which has a different mode from the second object associated with the state before transition, The game program according to claim 1, further comprising arranging two objects in the first virtual space.
前記各状態におけるゲーム処理は、
前記第3オブジェクトに表示される情報を、遷移前の状態を示す情報から、現在の状態を示す情報に変更するステップをさらに含む、請求項1から5の何れか1項に記載のゲームプログラム。 In the step of arranging the first avatar object and the first virtual camera, a third object for displaying information indicating each state is further arranged in the first virtual space,
The game process in each state is
The game program according to claim 1, further comprising a step of changing information displayed on the third object from information indicating a state before transition to information indicating a current state.
現在の状態に遷移する以前の少なくとも1つの状態に関連付けて前記メモリに記憶された達成度を前記メモリから取得するステップと、
前記メモリから取得された達成度が高いほど、現在の状態に関連付けられた第1条件の達成度を高める上で前記視聴者にとって有利な処理を実行するステップと、
前記第1配信者の身体の動き及び前記視聴者の操作に基づいて、前記第1条件が達成された達成度を判定するステップと、
前記達成度を現在の状態に関連付けて前記メモリに記憶させるステップと、をさらに含む、請求項1から6の何れか1項に記載のゲームプログラム。 At least one of the game processes in each state is
Obtaining from the memory the degree of achievement stored in the memory in association with at least one state prior to transitioning to the current state;
The higher the degree of achievement obtained from the memory, the more advantageous the processing for the viewer in increasing the degree of achievement of the first condition associated with the current state;
Determining the degree of achievement of the first condition based on the movement of the body of the first distributor and the operation of the viewer;
The game program according to any one of claims 1 to 6, further comprising: storing the achievement level in the memory in association with a current state.
前記ゲームに含まれる、前記第1ゲームパートとは異なる第2ゲームパートを、前記視聴者の操作に応答して進行させるステップと、
前記第2ゲームパートにおいて、前記視聴者の操作に基づき第2条件が達成された達成度を判定するステップと、
前記第2条件の達成度を前記メモリに記憶させるステップと、をさらに実行させ、
前記第1ゲームパートの前記各状態におけるゲーム処理の少なくとも1つは、
前記第2条件の達成度を前記メモリから取得するステップと、
前記第2条件の達成度が高いほど、現在の状態に関連付けられた第1条件の達成度を高める上で、前記視聴者にとって有利な処理を実行するステップと、をさらに含む、請求項1から7の何れか1項に記載のゲームプログラム。 The game program, in the processor,
Advancing a second game part included in the game, which is different from the first game part, in response to an operation by the viewer,
In the second game part, determining the degree of achievement of the second condition being achieved based on the operation of the viewer;
Storing the degree of achievement of the second condition in the memory,
At least one of the game processes in each of the states of the first game part is
Obtaining the degree of achievement of the second condition from the memory,
The higher the achievement level of the second condition is, the higher the achievement level of the first condition associated with the current state is, and the step of performing a process advantageous to the viewer is further included. 7. The game program according to any one of 7.
前記第1仮想空間に、複数の選択肢オブジェクトをさらに配置するステップと、
前記複数の選択肢オブジェクトの一部または全部の各々に関連付けられた、前記視聴者の操作を受け付ける複数の第1UIオブジェクトを、前記第1視野画像と共に前記表示部に表示するステップと、
前記第1動作情報が示す動きが、前記第1仮想空間において前記第1アバターオブジェクトに前記複数の選択肢オブジェクトの一部を選択させるための動きであるか否かを判定するステップと、
前記第1動作情報が示す動きが前記選択させるための動きである場合に、前記第1アバターオブジェクトによって選択された選択肢オブジェクトを特定するステップと、
前記特定した選択肢オブジェクトに関連付けられた第1UIオブジェクトに対する前記視聴者の操作に応答して、現在の状態に関連付けられた第1条件の少なくとも一部を達成する処理を実行するステップと、をさらに含み、
前記有利な処理を実行するステップは、前記第1UIオブジェクトを表示するステップにおいて前記表示部に表示される第1UIオブジェクトの数をより多くする処理を実行する、請求項7または8に記載のゲームプログラム。 At least one of the game processes in each of the states of the first game part is
Further arranging a plurality of choice objects in the first virtual space,
Displaying a plurality of first UI objects, which are associated with each of a part or all of the plurality of option objects and accept the operation of the viewer, on the display unit together with the first view image.
Determining whether the motion indicated by the first motion information is a motion for causing the first avatar object to select a part of the plurality of choice objects in the first virtual space,
Specifying the option object selected by the first avatar object when the motion indicated by the first motion information is the motion for selecting;
Performing a process of achieving at least a part of the first condition associated with the current state in response to the operation of the viewer with respect to the first UI object associated with the identified option object. ,
9. The game program according to claim 7, wherein the step of executing the advantageous process executes a process of increasing the number of the first UI objects displayed on the display unit in the step of displaying the first UI object. ..
前記遷移させるための動きであるか否かを判定するステップと、前記遷移させるステップとに代えて、
現在の状態に関連付けられた特定の条件が満たされたか否かを判定するステップと、
前記特定の条件が満たされた場合に、前記ゲームを前記第1ゲームパートから、前記第1ゲームパートとは異なる第3ゲームパートへ移行させるステップと、をさらに含み、
前記ゲームプログラムは、前記プロセッサに、
前記第3ゲームパートにおいて、前記複数の視聴端末のうち、前記特定の条件が満たされた複数の視聴端末と、第2配信者がリアルタイム配信を行うための第2配信端末との間で共有される、前記第1仮想空間とは異なる第2仮想空間に、前記第2配信者に対応する第2アバターオブジェクトと、第2仮想カメラとを配置するステップと、
前記第3ゲームパートにおいて前記リアルタイム配信が行われる間、前記第2仮想カメラの視野領域を示す第2視野画像を、前記第1視野画像に代えて前記表示部に表示するステップと、
前記第2配信端末が前記第2配信者の身体の動きを検出して生成した、前記第2アバターオブジェクトの動作を示す第2動作情報を受信するステップと、
前記第2動作情報が受信されたことに応答して、当該第2動作情報が示す動きを前記第2アバターオブジェクトが行うことを含むよう、前記第2視野画像を更新するステップと、をさらに実行させる、請求項1から9の何れか1項に記載のゲームプログラム。 Of the game processing in each state of the first game part, a specific game processing is
In place of the step of determining whether or not it is a movement for making the transition, and the step of making the transition,
Determining whether a particular condition associated with the current state has been met,
Transitioning the game from the first game part to a third game part different from the first game part when the specific condition is satisfied,
The game program, in the processor,
In the third game part, among the plurality of viewing terminals, a plurality of viewing terminals satisfying the specific condition and a second distribution terminal for the second distributor to perform real-time distribution are shared. Arranging a second avatar object corresponding to the second distributor and a second virtual camera in a second virtual space different from the first virtual space,
A step of displaying a second visual field image showing a visual field area of the second virtual camera on the display unit in place of the first visual field image while the real-time distribution is performed in the third game part;
Receiving second motion information indicating a motion of the second avatar object, which is generated by the second distribution terminal by detecting the movement of the body of the second distributor, and
Updating the second visual field image so that the second avatar object performs a motion indicated by the second motion information in response to the reception of the second motion information. The game program according to claim 1, wherein the game program is executed.
前記特定の条件が満たされなかった場合に、前記視聴者によって入力される第1入力情報を取得するステップと、
前記第1入力情報が取得されたことに応答して、前記第1入力情報を、前記複数の視聴端末のうち、前記特定の条件が満たされなかった他の視聴端末に送信するステップと、
前記特定の条件が満たされなかった他の視聴端末の視聴者によって入力された第2入力情報を受信するステップと、
前記第1入力情報および前記第2入力情報を、前記第1視野画像と共に前記表示部に表示するステップと、をさらに実行させる、請求項10に記載のゲームプログラム。 The game program, in the processor,
Acquiring first input information input by the viewer when the specific condition is not satisfied;
Transmitting the first input information to another viewing terminal that does not meet the specific condition among the plurality of viewing terminals in response to the acquisition of the first input information;
Receiving second input information input by a viewer of another viewing terminal whose specific condition is not satisfied;
The game program according to claim 10, further comprising: displaying the first input information and the second input information on the display unit together with the first visual field image.
前記特定の条件が満たされなかった場合に、前記視聴者による対価の支払い、又は、対価の支払いに基づき前記視聴者に付与されたアイテムの消費を指示する操作を受け付けるステップと、
前記指示する操作に応答して、前記対価の課金処理または前記アイテムを消費する処理を実行するとともに、前記ゲームを前記第1ゲームパートから前記第3ゲームパートへ移行させるステップと、をさらに実行させる、請求項10又は11に記載のゲームプログラム。 The game program, in the processor,
When the specific condition is not satisfied, payment of the consideration by the viewer, or a step of accepting an operation for instructing consumption of an item given to the viewer based on the payment of the consideration,
In response to the instructed operation, performing the fee charging process or the item consuming process, and further shifting the game from the first game part to the third game part. The game program according to claim 10 or 11.
前記コンピュータは、プロセッサおよびメモリを備え、
前記プロセッサが請求項1に記載の各ステップを実行する方法。 A method for a computer to execute a game program, the method comprising:
The computer includes a processor and memory,
A method by which the processor performs the steps of claim 1.
前記情報処理装置は、
請求項1に記載のゲームプログラムを記憶するメモリと、
該ゲームプログラムを実行することにより、情報処理装置の動作を制御するプロセッサとを備えている、情報処理装置。 An information processing device,
The information processing device,
A memory for storing the game program according to claim 1;
An information processing apparatus, comprising: a processor that controls the operation of the information processing apparatus by executing the game program.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019003899A JP6726322B1 (en) | 2019-01-11 | 2019-01-11 | Game program, method, and information processing device |
JP2020109636A JP7305599B2 (en) | 2019-01-11 | 2020-06-25 | program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019003899A JP6726322B1 (en) | 2019-01-11 | 2019-01-11 | Game program, method, and information processing device |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020109636A Division JP7305599B2 (en) | 2019-01-11 | 2020-06-25 | program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6726322B1 JP6726322B1 (en) | 2020-07-22 |
JP2020110376A true JP2020110376A (en) | 2020-07-27 |
Family
ID=71663901
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019003899A Active JP6726322B1 (en) | 2019-01-11 | 2019-01-11 | Game program, method, and information processing device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6726322B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022034699A1 (en) * | 2020-08-13 | 2022-02-17 | 株式会社コロプラ | Method, computer-readable medium, and information processing device |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7394337B2 (en) * | 2019-09-06 | 2023-12-08 | The Why How Do Company株式会社 | game server |
CN113453032B (en) * | 2021-06-28 | 2022-09-30 | 广州虎牙科技有限公司 | Gesture interaction method, device, system, server and storage medium |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170282075A1 (en) * | 2014-09-24 | 2017-10-05 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods, system and nodes for handling media streams relating to an online game |
JP2018011138A (en) * | 2016-07-11 | 2018-01-18 | 株式会社サイバーエージェント | Video distribution system and video distribution method |
JP6397595B1 (en) * | 2018-04-12 | 2018-09-26 | 株式会社ドワンゴ | Content distribution server, content distribution system, content distribution method and program |
JP6419916B1 (en) * | 2017-09-04 | 2018-11-07 | 株式会社コロプラ | Program and method for providing virtual space by head mounted device, and information processing apparatus for executing the program |
JP6431233B1 (en) * | 2018-05-08 | 2018-11-28 | グリー株式会社 | Video distribution system that distributes video including messages from viewing users |
JP6437611B1 (en) * | 2017-09-29 | 2018-12-12 | 株式会社ドワンゴ | Content distribution server, content distribution method, and content distribution program |
-
2019
- 2019-01-11 JP JP2019003899A patent/JP6726322B1/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170282075A1 (en) * | 2014-09-24 | 2017-10-05 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods, system and nodes for handling media streams relating to an online game |
JP2018011138A (en) * | 2016-07-11 | 2018-01-18 | 株式会社サイバーエージェント | Video distribution system and video distribution method |
JP6419916B1 (en) * | 2017-09-04 | 2018-11-07 | 株式会社コロプラ | Program and method for providing virtual space by head mounted device, and information processing apparatus for executing the program |
JP6437611B1 (en) * | 2017-09-29 | 2018-12-12 | 株式会社ドワンゴ | Content distribution server, content distribution method, and content distribution program |
JP6397595B1 (en) * | 2018-04-12 | 2018-09-26 | 株式会社ドワンゴ | Content distribution server, content distribution system, content distribution method and program |
JP6431233B1 (en) * | 2018-05-08 | 2018-11-28 | グリー株式会社 | Video distribution system that distributes video including messages from viewing users |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022034699A1 (en) * | 2020-08-13 | 2022-02-17 | 株式会社コロプラ | Method, computer-readable medium, and information processing device |
Also Published As
Publication number | Publication date |
---|---|
JP6726322B1 (en) | 2020-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6785325B2 (en) | Game programs, methods, and information processing equipment | |
JP6770598B2 (en) | Game programs, methods, and information processing equipment | |
US20240013502A1 (en) | Storage medium, method, and information processing apparatus | |
JP7305599B2 (en) | program | |
JP2021020074A (en) | Game program, method, and information processor | |
JP7344948B2 (en) | system | |
JP6726322B1 (en) | Game program, method, and information processing device | |
JP7369674B2 (en) | Programs, methods and viewing devices | |
JP6737941B1 (en) | Program, method, and viewing terminal | |
JP2020044139A (en) | Game program, game method, and information processor | |
JP2020028397A (en) | Game program, game method, and information processing device | |
JP2024109587A (en) | Program, method, and terminal device | |
JP6722320B1 (en) | Game program, game method, and information terminal device | |
JP6479933B1 (en) | Program, information processing apparatus, and method | |
JP6722316B1 (en) | Distribution program, distribution method, computer, and viewing terminal | |
EP3991816A1 (en) | Game program, game method, and information terminal device | |
JP6419268B1 (en) | Information processing method, apparatus, and program for causing computer to execute information processing method | |
JP6263292B1 (en) | Information processing method, computer, and program for causing computer to execute information processing method | |
JP6826626B2 (en) | Viewing program, viewing method, and viewing terminal | |
JP2022000218A (en) | Program, method, information processing device, and system | |
WO2022113335A1 (en) | Method, computer-readable medium, and information processing device | |
WO2022113330A1 (en) | Method, computer-readable medium, and information processing device | |
JP6754859B1 (en) | Programs, methods, and computers | |
JP2021037302A (en) | Game program, method, and information processing device | |
JP2021053182A (en) | Program, method and delivery terminal |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20190125 |
|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20190128 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200219 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20200219 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20200611 |
|
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: 20200623 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200626 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6726322 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |