(57)【要約】      （修正有）【課題】ゲームの世界への没入感を高め、興趣性を向上させることが可能なゲームプログラムを提供する。【解決手段】ゲームプログラムは、プロセッサに、複数のユーザ端末及びキャラクタ制御装置間で共有される仮想空間に第１キャラクタ及び仮想カメラを配置するステップＳ２０３と、仮想カメラの設定に従った視野画像を表示するステップＳ２０４と、キャラクタ制御装置の第１ユーザの操作に応じて第１キャラクタが行う第１動作に基づいて、ゲームプログラムに基づくゲームを第１状態で進行させるステップＳ２０６と、第１ユーザの操作に応じて第１キャラクタが行う所定の動作に基づいて、ゲームの進行を、第１状態から、当該第１状態と異なる第２状態に遷移させるステップＳ２０７と、第１ユーザの操作に応じて第１キャラクタが行う第２動作に基づいて、ゲームを第２状態で進行させるステップＳ２０８とを実行させる。【選択図】図２１
2020179184.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサおよびメモリを備え、配信者が行うリアルタイム配信を視聴者が視聴するための視聴端末としてのコンピュータにより実行されるゲームプログラムであって、
前記ゲームプログラムは、前記プロセッサに、
第１配信者がリアルタイム配信を行うための第１配信端末と、前記視聴端末を含む複数の視聴端末との間で共有される第１仮想空間に、前記第１配信者に対応する第１アバターオブジェクトと、第１仮想カメラとを配置するステップと、
前記リアルタイム配信が行われる間、前記第１仮想カメラの視野領域を示す第１視野画像を表示部に表示するステップと、
前記ゲームプログラムに基づくゲームに含まれる、複数の状態間を遷移しながら進行する第１ゲームパートの前記状態ごとに、１つの状態におけるゲームを、前記第１配信者の身体の動き及び前記視聴者の操作に基づき進行させるゲーム処理を行うステップと、を実行させ、
前記各状態におけるゲーム処理は、
前記第１配信端末が前記第１配信者の身体の動きを検出して生成した、前記第１アバターオブジェクトの動作を示す第１動作情報を受信するステップと、
前記第１動作情報が受信されたことに応答して、当該第１動作情報が示す動きを前記第１アバターオブジェクトが行うことを含むよう、前記第１視野画像を更新するステップと、
前記第１動作情報が受信されたことに応答して、前記第１動作情報が示す動きが前記状態を遷移させるための動きであるか否かを判定するステップと、
前記第１動作情報が示す動きが前記遷移させるための動きである場合に、前記第１ゲームパートの進行を、現在の状態から他の状態に遷移させるステップと、を含む、ゲームプログラム。
【請求項２】
前記第１アバターオブジェクト及び前記第１仮想カメラを配置するステップは、前記第１仮想空間に第１オブジェクトをさらに配置し、
前記判定するステップは、前記第１動作情報が示す動きが、前記第１仮想空間において前記第１アバターオブジェクトに前記第１オブジェクトを操作させる動きであるとき、前記遷移させるための動きであると判定する、請求項１に記載のゲームプログラム。
【請求項３】
前記第１アバターオブジェクト及び前記第１仮想カメラを配置するステップは、前記第１アバターオブジェクトの少なくとも一部として、前記第１アバターオブジェクトの手を表す操作オブジェクトを配置し、
前記判定するステップは、前記第１動作情報が示す動きが、前記第１仮想空間において前記操作オブジェクトを前記第１オブジェクトに接触させる動きであるとき、前記遷移させるための動きであると判定する、請求項２に記載のゲームプログラム。
【請求項４】
前記各状態におけるゲーム処理は、
前記視聴者の操作を受け付けるためのユーザインタフェース（ＵＩ）オブジェクトであって、遷移前の状態に関連付けられた前記ＵＩオブジェクトを前記表示部から消去するとともに、現在の状態に関連付けられた前記ＵＩオブジェクトを前記第１視野画像と共に前記表示部に表示するステップをさらに含む、請求項１から３の何れか１項に記載のゲームプログラム。
【請求項５】
前記各状態におけるゲーム処理は、
遷移前の状態に関連付けられた第２オブジェクトを前記第１仮想空間から消去するとともに、当該遷移前の状態に関連付けられた前記第２オブジェクトとは態様の異なる、現在の状態に関連付けられた前記第２オブジェクトを前記第１仮想空間に配置するステップをさらに含む、請求項１から４の何れか１項に記載のゲームプログラム。
【請求項６】
前記第１アバターオブジェクト及び前記第１仮想カメラを配置するステップは、前記各状態を示す情報を表示するための第３オブジェクトを前記第１仮想空間にさらに配置し、
前記各状態におけるゲーム処理は、
前記第３オブジェクトに表示される情報を、遷移前の状態を示す情報から、現在の状態を示す情報に変更するステップをさらに含む、請求項１から５の何れか１項に記載のゲームプログラム。
【請求項７】
前記各状態におけるゲーム処理の少なくとも１つは、
現在の状態に遷移する以前の少なくとも１つの状態に関連付けて前記メモリに記憶された達成度を前記メモリから取得するステップと、
前記メモリから取得された達成度が高いほど、現在の状態に関連付けられた第１条件の達成度を高める上で前記視聴者にとって有利な処理を実行するステップと、
前記第１配信者の身体の動き及び前記視聴者の操作に基づいて、前記第１条件が達成された達成度を判定するステップと、
前記達成度を現在の状態に関連付けて前記メモリに記憶させるステップと、をさらに含む、請求項１から６の何れか１項に記載のゲームプログラム。
【請求項８】
前記ゲームプログラムは、前記プロセッサに、
前記ゲームに含まれる、前記第１ゲームパートとは異なる第２ゲームパートを、前記視聴者の操作に応答して進行させるステップと、
前記第２ゲームパートにおいて、前記視聴者の操作に基づき第２条件が達成された達成度を判定するステップと、
前記第２条件の達成度を前記メモリに記憶させるステップと、をさらに実行させ、前記第１ゲームパートの前記各状態におけるゲーム処理の少なくとも１つは、
前記第２条件の達成度を前記メモリから取得するステップと、
前記第２条件の達成度が高いほど、現在の状態に関連付けられた第１条件の達成度を高める上で、前記視聴者にとって有利な処理を実行するステップと、をさらに含む、請求項１から７の何れか１項に記載のゲームプログラム。
【請求項９】
前記第１ゲームパートの前記各状態におけるゲーム処理の少なくとも１つは、前記第１仮想空間に、複数の選択肢オブジェクトをさらに配置するステップと、
前記複数の選択肢オブジェクトの一部または全部の各々に関連付けられた、前記視聴者の操作を受け付ける複数の第１ＵＩオブジェクトを、前記第１視野画像と共に前記表示部に表示するステップと、
前記第１動作情報が示す動きが、前記第１仮想空間において前記第１アバターオブジェクトに前記複数の選択肢オブジェクトの一部を選択させるための動きであるか否かを判定するステップと、
前記第１動作情報が示す動きが前記選択させるための動きである場合に、前記第１アバターオブジェクトによって選択された選択肢オブジェクトを特定するステップと、
前記特定した選択肢オブジェクトに関連付けられた第１ＵＩオブジェクトに対する前記視聴者の操作に応答して、現在の状態に関連付けられた第１条件の少なくとも一部を達成する処理を実行するステップと、をさらに含み、
前記有利な処理を実行するステップは、前記第１ＵＩオブジェクトを表示するステップにおいて前記表示部に表示される第１ＵＩオブジェクトの数をより多くする処理を実行する、請求項７または８に記載のゲームプログラム。
【請求項１０】
前記第１ゲームパートの前記各状態におけるゲーム処理のうち特定のゲーム処理は、前記遷移させるための動きであるか否かを判定するステップと、前記遷移させるステップとに代えて、
現在の状態に関連付けられた特定の条件が満たされたか否かを判定するステップと、前記特定の条件が満たされた場合に、前記ゲームを前記第１ゲームパートから、前記第１ゲームパートとは異なる第３ゲームパートへ移行させるステップと、をさらに含み、前記ゲームプログラムは、前記プロセッサに、
前記第３ゲームパートにおいて、前記複数の視聴端末のうち、前記特定の条件が満たされた複数の視聴端末と、第２配信者がリアルタイム配信を行うための第２配信端末との間で共有される、前記第１仮想空間とは異なる第２仮想空間に、前記第２配信者に対応する第２アバターオブジェクトと、第２仮想カメラとを配置するステップと、
前記第３ゲームパートにおいて前記リアルタイム配信が行われる間、前記第２仮想カメラの視野領域を示す第２視野画像を、前記第１視野画像に代えて前記表示部に表示するステップと、
前記第２配信端末が前記第２配信者の身体の動きを検出して生成した、前記第２アバターオブジェクトの動作を示す第２動作情報を受信するステップと、
前記第２動作情報が受信されたことに応答して、当該第２動作情報が示す動きを前記第２アバターオブジェクトが行うことを含むよう、前記第２視野画像を更新するステップと、をさらに実行させる、請求項１から９の何れか１項に記載のゲームプログラム。
【請求項１１】
前記ゲームプログラムは、前記プロセッサに、
前記特定の条件が満たされなかった場合に、前記視聴者によって入力される第１入力情報を取得するステップと、
前記第１入力情報が取得されたことに応答して、前記第１入力情報を、前記複数の視聴端末のうち、前記特定の条件が満たされなかった他の視聴端末に送信するステップと、
前記特定の条件が満たされなかった他の視聴端末の視聴者によって入力された第２入力情報を受信するステップと、
前記第１入力情報および前記第２入力情報を、前記第１視野画像と共に前記表示部に表示するステップと、をさらに実行させる、請求項１０に記載のゲームプログラム。
【請求項１２】
前記ゲームプログラムは、前記プロセッサに、
前記特定の条件が満たされなかった場合に、前記視聴者による対価の支払い、又は、対価の支払いに基づき前記視聴者に付与されたアイテムの消費を指示する操作を受け付けるステップと、
前記指示する操作に応答して、前記対価の課金処理または前記アイテムを消費する処理を実行するとともに、前記ゲームを前記第１ゲームパートから前記第３ゲームパートへ移行させるステップと、をさらに実行させる、請求項１０又は１１に記載のゲームプログラム。
【請求項１３】
コンピュータがゲームプログラムを実行する方法であって、前記コンピュータは、プロセッサおよびメモリを備え、
前記プロセッサが請求項１に記載の各ステップを実行する方法。
【請求項１４】
情報処理装置であって、前記情報処理装置は、
請求項１に記載のゲームプログラムを記憶するメモリと、
該ゲームプログラムを実行することにより、情報処理装置の動作を制御するプロセッサとを備えている、情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示はゲームプログラム、ゲームプログラムを実行する方法および情報処理装置に関する。
【背景技術】
【０００２】
従来、ユーザが選択した選択肢に応じて結末が異なるように物語が進行するゲームが広く知られている。例えば、非特許文献１には、女の子のキャラクタと仮想的に親睦を深めることを主たる目的とする恋愛シミュレーションゲームが開示されている。ユーザは、提示された選択肢の中からキャラクタに対する働きかけとして最適と思うものを選択し、その働きかけに対して該キャラクタが反応することを繰り返すことで物語が進行する。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】“電撃オンライン-ゲーム・アプリ・漫画・アニメ情報サイト”、[online］、KADOKAWACORPORATION、[２０１８年５月８日検索]、インターネット（ＵＲＬ：http://dengekionline.com/elem/000/000/279/279193/index-2.html）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
非特許文献１に開示されているゲームでは、キャラクタの応答パターンが予め用意されている。そして、ユーザの入力操作に応じて、該キャラクタの応答が、該応答パターンの中から決定されて出力され、ゲームが進行する。したがって、キャラクタの動作のバリエーションは、予め用意されたデータの内容を超えて広がることがない。そのため、ユーザは、キャラクタとの関わり合いに対して、該キャラクタがまるで現実の世界にいるかのような現実感を覚えることができず、いずれ飽きるという問題がある。一般に、ユーザに長くプレイさせることを意図して開発されたゲームにおいては、ユーザがゲームに飽きるという問題に如何に対処するかが重要である。ゲームには、常に、ユーザにプレイを動機付けるような魅力的なコンテンツを提供することが求められる。例えば、ゲームに登場するキャラクタが、高い現実感を備えていれば、ユーザは、ゲームの世界に没入しやすくなり、キャラクタとの関わり合いにより興趣性を見出すと考えられる。
【０００５】
本開示の一態様は、ゲームの世界への没入感を高め、該ゲームの興趣性を向上させることを目的とする。
【課題を解決するための手段】
【０００６】
本開示に係るゲームプログラムは、プロセッサおよびメモリを備えるユーザ端末により実行される。ゲームプログラムは、プロセッサに、第１配信者がリアルタイム配信を行うための第１配信端末と、視聴端末を含む複数の視聴端末との間で共有される第１仮想空間に、第１配信者に対応する第１アバターオブジェクトと、第１仮想カメラとを配置するステップと、リアルタイム配信が行われる間、第１仮想カメラの視野領域を示す第１視野画像を表示部に表示するステップと、ゲームプログラムに基づくゲームに含まれる、複数の状態間を遷移しながら進行する第１ゲームパートの状態ごとに、１つの状態におけるゲームを、第１配信者の身体の動き及び視聴者の操作に基づき進行させるゲーム処理を行うステップと、を実行させ、各状態におけるゲーム処理は、第１配信端末が第１配信者の身体の動きを検出して生成した、第１アバターオブジェクトの動作を示す第１動作情報を受信するステップと、第１動作情報が受信されたことに応答して、当該第１動作情報が示す動きを第１アバターオブジェクトが行うことを含むよう、第１視野画像を更新するステップと、第１動作情報が受信されたことに応答して、第１動作情報が示す動きが状態を遷移させるための動きであるか否かを判定するステップと、第１動作情報が示す動きが遷移さるための動きである場合に、第１ゲームパートの進行を、現在の状態から他の状態に遷移させるステップと、を含む。
【０００７】
本開示に係る方法は、プロセッサ及びメモリを備えるコンピュータがゲームプログラムを実行する方法である。方法は、プロセッサが、上述した各ステップを実行することを含む。
【０００８】
本開示に係る情報処理装置は、上述したゲームプログラムを記憶するメモリと、ゲームプログラムを実行することにより、情報処理装置の動作を制御するプロセッサと、を備えている。
【発明の効果】
【０００９】
本開示の一態様によれば、ゲームの世界への没入感を高め、該ゲームの興趣性を向上させる効果を奏する。
【図面の簡単な説明】
【００１０】
【図１】ある実施の形態に従うＨＭＤシステムの構成の概略を表す図である。
【図２】ある実施の形態に従うコンピュータのハードウェア構成の一例を表すブロック図である。
【図３】ある実施の形態に従うＨＭＤに設定されるｕｖｗ視野座標系を概念的に表す図である。
【図４】ある実施の形態に従う仮想空間を表現する一態様を概念的に表す図である。
【図５】ある実施の形態に従うＨＭＤを装着するユーザの頭部を上から表した図である。
【図６】仮想空間において視界領域をＸ方向から見たＹＺ断面を表す図である。
【図７】仮想空間において視界領域をＹ方向から見たＸＺ断面を表す図である。
【図８（Ａ）】ある実施の形態に従うコントローラの概略構成を表す図である。
【図８（Ｂ）】ある実施の形態に従うユーザの右手に対して規定されるヨー、ロール、ピッチの各方向の一例を示す図である。
【図９】ある実施の形態に従うサーバのハードウェア構成の一例を表すブロック図である。
【図１０】ある実施の形態に従うコンピュータをモジュール構成として表わすブロック図である。
【図１１】ある実施の形態に従うＨＭＤセットにおいて実行される処理の一部を表すシーケンスチャートである。
【図１２（Ａ）】ネットワークにおいて、各ＨＭＤがユーザに仮想空間を提供する状況を表す模式図である。
【図１２（Ｂ）】図１２（Ａ）におけるユーザ５Ａの視界画像を示す図である。
【図１３】ある実施の形態に従うＨＭＤシステムにおいて実行する処理を示すシーケンス図である。
【図１４】ある実施の形態に従うコンピュータのモジュールの詳細構成を表わすブロック図である。
【図１５】ある実施の形態に従うゲームシステムの構成の概略を表す図である。
【図１６】ある実施の形態に従うユーザ端末のハードウェア構成を示す図である。
【図１７】ある実施の形態に従うゲームシステムに含まれるユーザ端末、サーバおよびキャラクタ制御装置の機能的構成を示すブロック図である。
【図１８】ある実施の形態に従うユーザ端末に含まれる仮想空間制御部の詳細な構成を示す図である。
【図１９】ある実施の形態に従うキャラクタ制御装置に含まれる仮想空間制御部の詳細な構成を示す図である。
【図２０】ある実施の形態に従うゲーム進行の概略を示すフローチャートである。
【図２１】ある実施の形態に従うライブゲーム配信パートにおける処理の流れを表すフローチャートである。
【図２２】（Ａ）は、ある実施の形態に従うキャラクタ制御装置において実現される第１仮想空間の一例を示す図である。（Ｂ）は、当該キャラクタ制御装置において表示される視野画像の一例を示す図である。
【図２３】（Ａ）は、ある実施の形態に従うユーザ端末において実現される第１仮想空間の一例を示す図である。（Ｂ）は、当該ユーザ端末において表示される視野画像の一例を示す図である。
【図２４】ある実施の形態に従うゲームシステムによって実行される第１ミニゲームにおける処理の流れを表すフローチャートである。
【図２５】（Ａ）は、ある実施の形態に従うキャラクタ制御装置において第１ミニゲーム進行時に実現される第１仮想空間の一例を示す斜視図である。（Ｂ）は、当該第１仮想空間に同期してユーザ端末において実現される第１仮想空間の一例を示す上面図である。
【図２６】（Ａ）は、ある実施の形態に従うキャラクタ制御装置において第１ミニゲーム進行時に表示される視野画像の一例を示す図である。（Ｂ）は、ユーザ端末において第１ミニゲーム進行時に表示されるゲーム画面の一例を示す図である。
【図２７】（Ａ）は、ある実施の形態に従うキャラクタ制御装置において第１ミニゲーム進行時に表示される視野画像の一例を示す図である。（Ｂ）は、ユーザ端末において第１ミニゲーム進行時に表示されるゲーム画面の一例を示す図である。
【図２８】（Ａ）は、ある実施の形態に従うキャラクタ制御装置において第１ミニゲーム進行時に表示される視野画像の一例を示す図である。（Ｂ）は、ユーザ端末において第１ミニゲーム進行時に表示されるゲーム画面の一例を示す図である。
【図２９】（Ａ）は、ある実施の形態に従うキャラクタ制御装置において第１ミニゲーム進行時に表示される視野画像の一例を示す図である。（Ｂ）は、ユーザ端末において第１ミニゲーム進行時に表示されるゲーム画面の一例を示す図である。
【図３０】ある実施の形態に従うゲームシステムによって実行される第２ミニゲームにおける処理の流れを表すフローチャートである。
【図３１】（Ａ）は、ある実施の形態に従うキャラクタ制御装置において第２ミニゲーム進行時に実現される第１仮想空間の一例を示す斜視図である。（Ｂ）は、当該第１仮想空間に同期してユーザ端末において実現される第１仮想空間の一例を示す上面図である。
【図３２】（Ａ）は、ある実施の形態に従うキャラクタ制御装置において第２ミニゲーム進行時に表示される視野画像の一例を示す図である。（Ｂ）は、ユーザ端末において第２ミニゲーム進行時に表示されるゲーム画面の一例を示す図である。
【図３３】ユーザ端末において第２ミニゲーム進行時に表示されるゲーム画面の一例を示す図である。
【図３４】（Ａ）は、ある実施の形態に従うキャラクタ制御装置において第２ミニゲーム進行時に表示される視野画像の一例を示す図である。（Ｂ）は、ユーザ端末において第２ミニゲーム進行時に表示されるゲーム画面の一例を示す図である。
【図３５】ユーザ端末において第２ミニゲーム進行時に表示されるゲーム画面の一例を示す図である。
【図３６】（Ａ）は、ある実施の形態に従うキャラクタ制御装置において第２ミニゲーム進行時に表示される視野画像の一例を示す図である。（Ｂ）は、ユーザ端末において第２ミニゲーム進行時に表示されるゲーム画面の一例を示す図である。
【図３７】ある実施の形態に従うゲームシステムによって実行されるライブ配信パートにおける処理の流れを表すフローチャートである。
【図３８】（Ａ）は、ある実施の形態に従うキャラクタ制御装置において第２仮想空間に移動する際に表示される視野画像の一例を示す図である。（Ｂ）は、ユーザ端末において第２仮想空間に移動する際に表示されるゲーム画面の一例を示す図である。
【図３９】（Ａ）は、ある実施の形態に従うアバターオブジェクト退出後の第１仮想空間の一例を示す図である。（Ｂ）は、当該アバターオブジェクト登場後の第２仮想空間の一例を示す図である。
【図４０】ユーザ端末において第２仮想空間参加時に表示されるゲーム画面の一例を示す図である。
【図４１】ある実施の形態に従うゲームシステムによって実行されるチャットパートにおける処理の流れを表すフローチャートである。
【図４２】ユーザ端末においてチャットパート進行時に表示されるゲーム画面の一例を示す図である。
【発明を実施するための形態】
【００１１】
以下、この技術的思想の実施の形態について図面を参照しながら詳細に説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。本開示において示される１以上の実施形態において、各実施形態が含む要素を互いに組み合わせることができ、かつ、当該組み合わせられた結果物も本開示が示す実施形態の一部をなすものとする。
【００１２】
［ＨＭＤシステムの構成］
図１を参照して、ＨＭＤ（Head-Mounted Device）システム１００の構成について説明する。図１は、本実施の形態に従うＨＭＤシステム１００の構成の概略を表す図である。ＨＭＤシステム１００は、家庭用のシステムとしてあるいは業務用のシステムとして提供される。
【００１３】
ＨＭＤシステム１００は、サーバ６００と、ＨＭＤセット１１０Ａ，１１０Ｂ，１１０Ｃ，１１０Ｄと、外部機器７００と、ネットワーク２とを含む。ＨＭＤセット１１０Ａ，１１０Ｂ，１１０Ｃ，１１０Ｄの各々は、ネットワーク２を介してサーバ６００や外部機器７００と通信可能に構成される。以下、ＨＭＤセット１１０Ａ，１１０Ｂ，１１０Ｃ，１１０Ｄを総称して、ＨＭＤセット１１０とも言う。ＨＭＤシステム１００を構成するＨＭＤセット１１０の数は、４つに限られず、３つ以下でも、５つ以上でもよい。ＨＭＤセット１１０は、ＨＭＤ１２０と、コンピュータ２００と、ＨＭＤセンサ４１０と、ディスプレイ４３０と、コントローラ３００とを備える。ＨＭＤ１２０は、モニタ１３０と、注視センサ１４０と、第１カメラ１５０と、第２カメラ１６０と、マイク１７０と、スピーカ１８０とを含む。コントローラ３００は、モーションセンサ４２０を含み得る。
【００１４】
ある局面において、コンピュータ２００は、インターネットその他のネットワーク２に接続可能であり、ネットワーク２に接続されているサーバ６００その他のコンピュータと通信可能である。その他のコンピュータとしては、例えば、他のＨＭＤセット１１０のコンピュータや外部機器７００が挙げられる。別の局面において、ＨＭＤ１２０は、ＨＭＤセンサ４１０の代わりに、センサ１９０を含み得る。
【００１５】
ＨＭＤ１２０は、ユーザ５の頭部に装着され、動作中に仮想空間をユーザ５に提供し得る。より具体的には、ＨＭＤ１２０は、右目用の画像および左目用の画像をモニタ１３０にそれぞれ表示する。ユーザ５の各目がそれぞれの画像を視認すると、ユーザ５は、両目の視差に基づき当該画像を３次元画像として認識し得る。ＨＭＤ１２０は、モニタを備える所謂ヘッドマウントディスプレイと、スマートフォンその他のモニタを有する端末を装着可能なヘッドマウント機器のいずれをも含み得る。
【００１６】
モニタ１３０は、例えば、非透過型の表示装置として実現される。ある局面において、モニタ１３０は、ユーザ５の両目の前方に位置するようにＨＭＤ１２０の本体に配置されている。したがって、ユーザ５は、モニタ１３０に表示される３次元画像を視認すると、仮想空間に没入することができる。ある局面において、仮想空間は、例えば、背景、ユーザ５が操作可能なオブジェクト、ユーザ５が選択可能なメニューの画像を含む。ある局面において、モニタ１３０は、所謂スマートフォンその他の情報表示端末が備える液晶モニタまたは有機ＥＬ（Electro Luminescence）モニタとして実現され得る。
【００１７】
別の局面において、モニタ１３０は、透過型の表示装置として実現され得る。この場合、ＨＭＤ１２０は、図１に示されるようにユーザ５の目を覆う密閉型ではなく、メガネ型のような開放型であり得る。透過型のモニタ１３０は、その透過率を調整することにより、一時的に非透過型の表示装置として構成可能であってもよい。モニタ１３０は、仮想空間を構成する画像の一部と、現実空間とを同時に表示する構成を含んでいてもよい。例えば、モニタ１３０は、ＨＭＤ１２０に搭載されたカメラで撮影した現実空間の画像を表示してもよいし、一部の透過率を高く設定することにより現実空間を視認可能にしてもよい。
【００１８】
ある局面において、モニタ１３０は、右目用の画像を表示するためのサブモニタと、左目用の画像を表示するためのサブモニタとを含み得る。別の局面において、モニタ１３０は、右目用の画像と左目用の画像とを一体として表示する構成であってもよい。この場合、モニタ１３０は、高速シャッタを含む。高速シャッタは、画像がいずれか一方の目にのみ認識されるように、右目用の画像と左目用の画像とを交互に表示可能に作動する。
【００１９】
ある局面において、ＨＭＤ１２０は、図示せぬ複数の光源を含む。各光源は例えば、赤外線を発するＬＥＤ（Light Emitting Diode）により実現される。ＨＭＤセンサ４１０は、ＨＭＤ１２０の動きを検出するためのポジショントラッキング機能を有する。より具体的には、ＨＭＤセンサ４１０は、ＨＭＤ１２０が発する複数の赤外線を読み取り、現実空間内におけるＨＭＤ１２０の位置および傾きを検出する。
【００２０】
別の局面において、ＨＭＤセンサ４１０は、カメラにより実現されてもよい。この場合、ＨＭＤセンサ４１０は、カメラから出力されるＨＭＤ１２０の画像情報を用いて、画像解析処理を実行することにより、ＨＭＤ１２０の位置および傾きを検出することができる。
【００２１】
別の局面において、ＨＭＤ１２０は、位置検出器として、ＨＭＤセンサ４１０の代わりに、あるいはＨＭＤセンサ４１０に加えてセンサ１９０を備えてもよい。ＨＭＤ１２０は、センサ１９０を用いて、ＨＭＤ１２０自身の位置および傾きを検出し得る。例えば、センサ１９０が角速度センサ、地磁気センサ、あるいは加速度センサである場合、ＨＭＤ１２０は、ＨＭＤセンサ４１０の代わりに、これらの各センサのいずれかを用いて、自身の位置および傾きを検出し得る。一例として、センサ１９０が角速度センサである場合、角速度センサは、現実空間におけるＨＭＤ１２０の３軸周りの角速度を経時的に検出する。ＨＭＤ１２０は、各角速度に基づいて、ＨＭＤ１２０の３軸周りの角度の時間的変化を算出し、さらに、角度の時間的変化に基づいて、ＨＭＤ１２０の傾きを算出する。
【００２２】
注視センサ１４０は、ユーザ５の右目および左目の視線が向けられる方向を検出する。つまり、注視センサ１４０は、ユーザ５の視線を検出する。視線の方向の検出は、例えば、公知のアイトラッキング機能によって実現される。注視センサ１４０は、当該アイトラッキング機能を有するセンサにより実現される。ある局面において、注視センサ１４０は、右目用のセンサおよび左目用のセンサを含むことが好ましい。注視センサ１４０は、例えば、ユーザ５の右目および左目に赤外光を照射するとともに、照射光に対する角膜および虹彩からの反射光を受けることにより各眼球の回転角を検出するセンサであってもよい。注視センサ１４０は、検出した各回転角に基づいて、ユーザ５の視線を検知することができる。
【００２３】
第１カメラ１５０は、ユーザ５の顔の下部を撮影する。より具体的には、第１カメラ１５０は、ユーザ５の鼻および口などを撮影する。第２カメラ１６０は、ユーザ５の目および眉などを撮影する。ＨＭＤ１２０のユーザ５側の筐体をＨＭＤ１２０の内側、ＨＭＤ１２０のユーザ５とは逆側の筐体をＨＭＤ１２０の外側と定義する。ある局面において、第１カメラ１５０は、ＨＭＤ１２０の外側に配置され、第２カメラ１６０は、ＨＭＤ１２０の内側に配置され得る。第１カメラ１５０および第２カメラ１６０が生成した画像は、コンピュータ２００に入力される。別の局面において、第１カメラ１５０と第２カメラ１６０とを１台のカメラとして実現し、この１台のカメラでユーザ５の顔を撮影するようにしてもよい。
【００２４】
マイク１７０は、ユーザ５の発話を音声信号（電気信号）に変換してコンピュータ２００に出力する。スピーカ１８０は、音声信号を音声に変換してユーザ５に出力する。別の局面において、ＨＭＤ１２０は、スピーカ１８０に替えてイヤホンを含み得る。
【００２５】
コントローラ３００は、有線または無線によりコンピュータ２００に接続されている。コントローラ３００は、ユーザ５からコンピュータ２００への命令の入力を受け付ける。ある局面において、コントローラ３００は、ユーザ５によって把持可能に構成される。別の局面において、コントローラ３００は、ユーザ５の身体あるいは衣類の一部に装着可能に構成される。さらに別の局面において、コントローラ３００は、コンピュータ２００から送信される信号に基づいて、振動、音、光のうちの少なくともいずれかを出力するように構成されてもよい。さらに別の局面において、コントローラ３００は、ユーザ５から、仮想空間に配置されるオブジェクトの位置や動きを制御するための操作を受け付ける。
【００２６】
ある局面において、コントローラ３００は、複数の光源を含む。各光源は例えば、赤外線を発するＬＥＤにより実現される。ＨＭＤセンサ４１０は、ポジショントラッキング機能を有する。この場合、ＨＭＤセンサ４１０は、コントローラ３００が発する複数の赤外線を読み取り、現実空間内におけるコントローラ３００の位置および傾きを検出する。別の局面において、ＨＭＤセンサ４１０は、カメラにより実現されてもよい。この場合、ＨＭＤセンサ４１０は、カメラから出力されるコントローラ３００の画像情報を用いて、画像解析処理を実行することにより、コントローラ３００の位置および傾きを検出することができる。
【００２７】
モーションセンサ４２０は、ある局面において、ユーザ５の手に取り付けられて、ユーザ５の手の動きを検出する。例えば、モーションセンサ４２０は、手の回転速度、回転数等を検出する。検出された信号は、コンピュータ２００に送られる。モーションセンサ４２０は、例えば、コントローラ３００に設けられている。ある局面において、モーションセンサ４２０は、例えば、ユーザ５に把持可能に構成されたコントローラ３００に設けられている。別の局面において、現実空間における安全のため、コントローラ３００は、手袋型のようにユーザ５の手に装着されることにより容易に飛んで行かないものに装着される。さらに別の局面において、ユーザ５に装着されないセンサがユーザ５の手の動きを検出してもよい。例えば、ユーザ５を撮影するカメラの信号が、ユーザ５の動作を表わす信号として、コンピュータ２００に入力されてもよい。モーションセンサ４２０とコンピュータ２００とは、一例として、無線により互いに接続される。無線の場合、通信形態は特に限られず、例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）その他の公知の通信手法が用いられる。
【００２８】
ディスプレイ４３０は、モニタ１３０に表示されている画像と同様の画像を表示する。これにより、ＨＭＤ１２０を装着しているユーザ５以外のユーザにも当該ユーザ５と同様の画像を視聴させることができる。ディスプレイ４３０に表示される画像は、３次元画像である必要はなく、右目用の画像や左目用の画像であってもよい。ディスプレイ４３０としては、例えば、液晶ディスプレイや有機ＥＬモニタなどが挙げられる。
【００２９】
サーバ６００は、コンピュータ２００にプログラムを送信し得る。別の局面において、サーバ６００は、他のユーザによって使用されるＨＭＤ１２０に仮想現実を提供するための他のコンピュータ２００と通信し得る。例えば、アミューズメント施設において、複数のユーザが参加型のゲームを行なう場合、各コンピュータ２００は、各ユーザの動作に基づく信号をサーバ６００を介して他のコンピュータ２００と通信して、同じ仮想空間において複数のユーザが共通のゲームを楽しむことを可能にする。各コンピュータ２００は、各ユーザの動作に基づく信号をサーバ６００を介さずに他のコンピュータ２００と通信するようにしてもよい。
【００３０】
外部機器７００は、コンピュータ２００と通信可能な機器であればどのような機器であってもよい。外部機器７００は、例えば、ネットワーク２を介してコンピュータ２００と通信可能な機器であってもよいし、近距離無線通信や有線接続によりコンピュータ２００と直接通信可能な機器であってもよい。外部機器７００としては、例えば、スマートデバイス、ＰＣ（Personal Computer）、及びコンピュータ２００の周辺機器などが挙げられるが、これらに限定されるものではない。
【００３１】
［コンピュータのハードウェア構成］
図２を参照して、本実施の形態に係るコンピュータ２００について説明する。図２は、本実施の形態に従うコンピュータ２００のハードウェア構成の一例を表すブロック図である。コンピュータ２００は、主たる構成要素として、プロセッサ２１０と、メモリ２２０と、ストレージ２３０と、入出力インターフェイス２４０と、通信インターフェイス２５０とを備える。各構成要素は、それぞれ、バス２６０に接続されている。
【００３２】
プロセッサ２１０は、コンピュータ２００に与えられる信号に基づいて、あるいは、予め定められた条件が成立したことに基づいて、メモリ２２０またはストレージ２３０に格納されているプログラムに含まれる一連の命令を実行する。ある局面において、プロセッサ２１０は、ＣＰＵ（Central Processing Unit）、ＧＰＵ（Graphics Processing Unit）、ＭＰＵ（Micro Processor Unit）、ＦＰＧＡ（Field-Programmable Gate Array）その他のデバイスとして実現される。
【００３３】
メモリ２２０は、プログラムおよびデータを一時的に保存する。プログラムは、例えば、ストレージ２３０からロードされる。データは、コンピュータ２００に入力されたデータと、プロセッサ２１０によって生成されたデータとを含む。ある局面において、メモリ２２０は、ＲＡＭ（Random Access            Memory）その他の揮発メモリとして実現される。
【００３４】
ストレージ２３０は、プログラムおよびデータを永続的に保持する。ストレージ２３０は、例えば、ＲＯＭ（Read-Only Memory）、ハードディスク装置、フラッシュメモリ、その他の不揮発記憶装置として実現される。ストレージ２３０に格納されるプログラムは、ＨＭＤシステム１００において仮想空間を提供するためのプログラム、シミュレーションプログラム、ゲームプログラム、ユーザ認証プログラム、他のコンピュータ２００との通信を実現するためのプログラムを含む。ストレージ２３０に格納されるデータは、仮想空間を規定するためのデータおよびオブジェクト等を含む。
【００３５】
別の局面において、ストレージ２３０は、メモリカードのように着脱可能な記憶装置として実現されてもよい。さらに別の局面において、コンピュータ２００に内蔵されたストレージ２３０の代わりに、外部の記憶装置に保存されているプログラムおよびデータを使用する構成が使用されてもよい。このような構成によれば、例えば、アミューズメント施設のように複数のＨＭＤシステム１００が使用される場面において、プログラムやデータの更新を一括して行なうことが可能になる。
【００３６】
入出力インターフェイス２４０は、ＨＭＤ１２０、ＨＭＤセンサ４１０、モーションセンサ４２０およびディスプレイ４３０との間で信号を通信する。ＨＭＤ１２０に含まれるモニタ１３０，注視センサ１４０，第１カメラ１５０，第２カメラ１６０，マイク１７０およびスピーカ１８０は、ＨＭＤ１２０の入出力インターフェイス２４０を介してコンピュータ２００との通信を行ない得る。ある局面において、入出力インターフェイス２４０は、ＵＳＢ（Universal Serial Ｂus）、ＤＶＩ（Digital Visual Interface）、ＨＤＭＩ（登録商標）（High-Definition Multimedia Interface）その他の端子を用いて実現される。入出力インターフェイス２４０は上述のものに限られない。
【００３７】
ある局面において、入出力インターフェイス２４０は、さらに、コントローラ３００と通信し得る。例えば、入出力インターフェイス２４０は、コントローラ３００およびモーションセンサ４２０から出力された信号の入力を受ける。別の局面において、入出力インターフェイス２４０は、プロセッサ２１０から出力された命令を、コントローラ３００に送る。当該命令は、振動、音声出力、発光等をコントローラ３００に指示する。コントローラ３００は、当該命令を受信すると、その命令に応じて、振動、音声出力または発光のいずれかを実行する。
【００３８】
通信インターフェイス２５０は、ネットワーク２に接続されて、ネットワーク２に接続されている他のコンピュータ（例えば、サーバ６００）と通信する。ある局面において、通信インターフェイス２５０は、例えば、ＬＡＮ（Local Area Network）その他の有線通信インターフェイス、あるいは、ＷｉＦｉ（Wireless Fidelity）、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＮＦＣ（Near Field Communication）その他の無線通信インターフェイスとして実現される。通信インターフェイス２５０は上述のものに限られない。
【００３９】
ある局面において、プロセッサ２１０は、ストレージ２３０にアクセスし、ストレージ２３０に格納されている１つ以上のプログラムをメモリ２２０にロードし、当該プログラムに含まれる一連の命令を実行する。当該１つ以上のプログラムは、コンピュータ２００のオペレーティングシステム、仮想空間を提供するためのアプリケーションプログラム、仮想空間で実行可能なゲームソフトウェア等を含み得る。プロセッサ２１０は、入出力インターフェイス２４０を介して、仮想空間を提供するための信号をＨＭＤ１２０に送る。ＨＭＤ１２０は、その信号に基づいてモニタ１３０に映像を表示する。
【００４０】
図２に示される例では、コンピュータ２００は、ＨＭＤ１２０の外部に設けられる構成が示されているが、別の局面において、コンピュータ２００は、ＨＭＤ１２０に内蔵されてもよい。一例として、モニタ１３０を含む携帯型の情報通信端末（例えば、スマートフォン）がコンピュータ２００として機能してもよい。
【００４１】
コンピュータ２００は、複数のＨＭＤ１２０に共通して用いられる構成であってもよい。このような構成によれば、例えば、複数のユーザに同一の仮想空間を提供することもできるので、各ユーザは同一の仮想空間で他のユーザと同一のアプリケーションを楽しむことができる。
【００４２】
ある実施の形態において、ＨＭＤシステム１００では、現実空間における座標系である実座標系が予め設定されている。実座標系は、現実空間における鉛直方向、鉛直方向に直交する水平方向、並びに、鉛直方向および水平方向の双方に直交する前後方向にそれぞれ平行な、３つの基準方向（軸）を有する。実座標系における水平方向、鉛直方向（上下方向）、および前後方向は、それぞれ、ｘ軸、ｙ軸、ｚ軸と規定される。より具体的には、実座標系において、ｘ軸は現実空間の水平方向に平行である。ｙ軸は、現実空間の鉛直方向に平行である。ｚ軸は現実空間の前後方向に平行である。
【００４３】
ある局面において、ＨＭＤセンサ４１０は、赤外線センサを含む。赤外線センサが、ＨＭＤ１２０の各光源から発せられた赤外線をそれぞれ検出すると、ＨＭＤ１２０の存在を検出する。ＨＭＤセンサ４１０は、さらに、各点の値（実座標系における各座標値）に基づいて、ＨＭＤ１２０を装着したユーザ５の動きに応じた、現実空間内におけるＨＭＤ１２０の位置および傾き（向き）を検出する。より詳しくは、ＨＭＤセンサ４１０は、経時的に検出された各値を用いて、ＨＭＤ１２０の位置および傾きの時間的変化を検出できる。
【００４４】
ＨＭＤセンサ４１０によって検出されたＨＭＤ１２０の各傾きは、実座標系におけるＨＭＤ１２０の３軸周りの各傾きに相当する。ＨＭＤセンサ４１０は、実座標系におけるＨＭＤ１２０の傾きに基づき、ｕｖｗ視野座標系をＨＭＤ１２０に設定する。ＨＭＤ１２０に設定されるｕｖｗ視野座標系は、ＨＭＤ１２０を装着したユーザ５が仮想空間において物体を見る際の視点座標系に対応する。
【００４５】
［ｕｖｗ視野座標系］
図３を参照して、ｕｖｗ視野座標系について説明する。図３は、ある実施の形態に従うＨＭＤ１２０に設定されるｕｖｗ視野座標系を概念的に表す図である。ＨＭＤセンサ４１０は、ＨＭＤ１２０の起動時に、実座標系におけるＨＭＤ１２０の位置および傾きを検出する。プロセッサ２１０は、検出された値に基づいて、ｕｖｗ視野座標系をＨＭＤ１２０に設定する。
【００４６】
図３に示されるように、ＨＭＤ１２０は、ＨＭＤ１２０を装着したユーザ５の頭部を中心（原点）とした３次元のｕｖｗ視野座標系を設定する。より具体的には、ＨＭＤ１２０は、実座標系を規定する水平方向、鉛直方向、および前後方向（ｘ軸、ｙ軸、ｚ軸）を、実座標系内においてＨＭＤ１２０の各軸周りの傾きだけ各軸周りにそれぞれ傾けることによって新たに得られる３つの方向を、ＨＭＤ１２０におけるｕｖｗ視野座標系のピッチ軸（ｕ軸）、ヨー軸（ｖ軸）、およびロール軸（ｗ軸）として設定する。
【００４７】
ある局面において、ＨＭＤ１２０を装着したユーザ５が直立し、かつ、正面を視認している場合、プロセッサ２１０は、実座標系に平行なｕｖｗ視野座標系をＨＭＤ１２０に設定する。この場合、実座標系における水平方向（ｘ軸）、鉛直方向（ｙ軸）、および前後方向（ｚ軸）は、ＨＭＤ１２０におけるｕｖｗ視野座標系のピッチ軸（ｕ軸）、ヨー軸（ｖ軸）、およびロール軸（ｗ軸）に一致する。
【００４８】
ｕｖｗ視野座標系がＨＭＤ１２０に設定された後、ＨＭＤセンサ４１０は、ＨＭＤ１２０の動きに基づいて、設定されたｕｖｗ視野座標系におけるＨＭＤ１２０の傾きを検出できる。この場合、ＨＭＤセンサ４１０は、ＨＭＤ１２０の傾きとして、ｕｖｗ視野座標系におけるＨＭＤ１２０のピッチ角（θｕ）、ヨー角（θｖ）、およびロール角（θｗ）をそれぞれ検出する。ピッチ角（θｕ）は、ｕｖｗ視野座標系におけるピッチ軸周りのＨＭＤ１２０の傾き角度を表す。ヨー角（θｖ）は、ｕｖｗ視野座標系におけるヨー軸周りのＨＭＤ１２０の傾き角度を表す。ロール角（θｗ）は、ｕｖｗ視野座標系におけるロール軸周りのＨＭＤ１２０の傾き角度を表す。
【００４９】
ＨＭＤセンサ４１０は、検出されたＨＭＤ１２０の傾きに基づいて、ＨＭＤ１２０が動いた後のＨＭＤ１２０におけるｕｖｗ視野座標系を、ＨＭＤ１２０に設定する。ＨＭＤ１２０と、ＨＭＤ１２０のｕｖｗ視野座標系との関係は、ＨＭＤ１２０の位置および傾きに関わらず、常に一定である。ＨＭＤ１２０の位置および傾きが変わると、当該位置および傾きの変化に連動して、実座標系におけるＨＭＤ１２０のｕｖｗ視野座標系の位置および傾きが変化する。
【００５０】
ある局面において、ＨＭＤセンサ４１０は、赤外線センサからの出力に基づいて取得される赤外線の光強度および複数の点間の相対的な位置関係（例えば、各点間の距離など）に基づいて、ＨＭＤ１２０の現実空間内における位置を、ＨＭＤセンサ４１０に対する相対位置として特定してもよい。プロセッサ２１０は、特定された相対位置に基づいて、現実空間内（実座標系）におけるＨＭＤ１２０のｕｖｗ視野座標系の原点を決定してもよい。
【００５１】
［仮想空間］
図４を参照して、仮想空間についてさらに説明する。図４は、ある実施の形態に従う仮想空間１１を表現する一態様を概念的に表す図である。仮想空間１１は、中心１２の３６０度方向の全体を覆う全天球状の構造を有する。図４では、説明を複雑にしないために、仮想空間１１のうちの上半分の天球が例示されている。仮想空間１１では各メッシュが規定される。各メッシュの位置は、仮想空間１１に規定されるグローバル座標系であるＸＹＺ座標系における座標値として予め規定されている。コンピュータ２００は、仮想空間１１に展開可能なパノラマ画像１３（静止画、動画等）を構成する各部分画像を、仮想空間１１において対応する各メッシュにそれぞれ対応付ける。
【００５２】
ある局面において、仮想空間１１では、中心１２を原点とするＸＹＺ座標系が規定される。ＸＹＺ座標系は、例えば、実座標系に平行である。ＸＹＺ座標系における水平方向、鉛直方向（上下方向）、および前後方向は、それぞれＸ軸、Ｙ軸、Ｚ軸として規定される。したがって、ＸＹＺ座標系のＸ軸（水平方向）が実座標系のｘ軸と平行であり、ＸＹＺ座標系のＹ軸（鉛直方向）が実座標系のｙ軸と平行であり、ＸＹＺ座標系のＺ軸（前後方向）が実座標系のｚ軸と平行である。
【００５３】
ＨＭＤ１２０の起動時、すなわちＨＭＤ１２０の初期状態において、仮想カメラ１４が、仮想空間１１の中心１２に配置される。ある局面において、プロセッサ２１０は、仮想カメラ１４が撮影する画像をＨＭＤ１２０のモニタ１３０に表示する。仮想カメラ１４は、現実空間におけるＨＭＤ１２０の動きに連動して、仮想空間１１を同様に移動する。これにより、現実空間におけるＨＭＤ１２０の位置および傾きの変化が、仮想空間１１において同様に再現され得る。
【００５４】
仮想カメラ１４には、ＨＭＤ１２０の場合と同様に、ｕｖｗ視野座標系が規定される。仮想空間１１における仮想カメラ１４のｕｖｗ視野座標系は、現実空間（実座標系）におけるＨＭＤ１２０のｕｖｗ視野座標系に連動するように規定されている。したがって、ＨＭＤ１２０の傾きが変化すると、それに応じて、仮想カメラ１４の傾きも変化する。仮想カメラ１４は、ＨＭＤ１２０を装着したユーザ５の現実空間における移動に連動して、仮想空間１１において移動することもできる。
【００５５】
コンピュータ２００のプロセッサ２１０は、仮想カメラ１４の位置と傾き（基準視線１６）とに基づいて、仮想空間１１における視界領域１５を規定する。視界領域１５は、仮想空間１１のうち、ＨＭＤ１２０を装着したユーザ５が視認する領域に対応する。つまり、仮想カメラ１４の位置は、仮想空間１１におけるユーザ５の視点と言える。
【００５６】
注視センサ１４０によって検出されるユーザ５の視線は、ユーザ５が物体を視認する際の視点座標系における方向である。ＨＭＤ１２０のｕｖｗ視野座標系は、ユーザ５がモニタ１３０を視認する際の視点座標系に等しい。仮想カメラ１４のｕｖｗ視野座標系は、ＨＭＤ１２０のｕｖｗ視野座標系に連動している。したがって、ある局面に従うＨＭＤシステム１００は、注視センサ１４０によって検出されたユーザ５の視線を、仮想カメラ１４のｕｖｗ視野座標系におけるユーザ５の視線とみなすことができる。
【００５７】
［ユーザの視線］
図５を参照して、ユーザ５の視線の決定について説明する。図５は、ある実施の形態に従うＨＭＤ１２０を装着するユーザ５の頭部を上から表した図である。
【００５８】
ある局面において、注視センサ１４０は、ユーザ５の右目および左目の各視線を検出する。ある局面において、ユーザ５が近くを見ている場合、注視センサ１４０は、視線Ｒ１およびＬ１を検出する。別の局面において、ユーザ５が遠くを見ている場合、注視センサ１４０は、視線Ｒ２およびＬ２を検出する。この場合、ロール軸ｗに対して視線Ｒ２およびＬ２が成す角度は、ロール軸ｗに対して視線Ｒ１およびＬ１が成す角度よりも小さい。注視センサ１４０は、検出結果をコンピュータ２００に送信する。
【００５９】
コンピュータ２００が、視線の検出結果として、視線Ｒ１およびＬ１の検出値を注視センサ１４０から受信した場合には、その検出値に基づいて、視線Ｒ１およびＬ１の交点である注視点Ｎ１を特定する。一方、コンピュータ２００は、視線Ｒ２およびＬ２の検出値を注視センサ１４０から受信した場合には、視線Ｒ２およびＬ２の交点を注視点として特定する。コンピュータ２００は、特定した注視点Ｎ１の位置に基づき、ユーザ５の視線Ｎ０を特定する。コンピュータ２００は、例えば、ユーザ５の右目Ｒと左目Ｌとを結ぶ直線の中点と、注視点Ｎ１とを通る直線の延びる方向を、視線Ｎ０として検出する。視線Ｎ０は、ユーザ５が両目により実際に視線を向けている方向である。視線Ｎ０は、視界領域１５に対してユーザ５が実際に視線を向けている方向に相当する。
【００６０】
別の局面において、ＨＭＤシステム１００は、テレビジョン放送受信チューナを備えてもよい。このような構成によれば、ＨＭＤシステム１００は、仮想空間１１においてテレビ番組を表示することができる。
【００６１】
さらに別の局面において、ＨＭＤシステム１００は、インターネットに接続するための通信回路、あるいは、電話回線に接続するための通話機能を備えていてもよい。
【００６２】
［視界領域］
図６および図７を参照して、視界領域１５について説明する。図６は、仮想空間１１において視界領域１５をＸ方向から見たＹＺ断面を表す図である。図７は、仮想空間１１において視界領域１５をＹ方向から見たＸＺ断面を表す図である。
【００６３】
図６に示されるように、ＹＺ断面における視界領域１５は、領域１８を含む。領域１８は、仮想カメラ１４の位置と基準視線１６と仮想空間１１のＹＺ断面とによって定義される。プロセッサ２１０は、仮想空間における基準視線１６を中心として極角αを含む範囲を、領域１８として規定する。
【００６４】
図７に示されるように、ＸＺ断面における視界領域１５は、領域１９を含む。領域１９は、仮想カメラ１４の位置と基準視線１６と仮想空間１１のＸＺ断面とによって定義される。プロセッサ２１０は、仮想空間１１における基準視線１６を中心とした方位角βを含む範囲を、領域１９として規定する。極角αおよびβは、仮想カメラ１４の位置と仮想カメラ１４の傾き（向き）とに応じて定まる。
【００６５】
ある局面において、ＨＭＤシステム１００は、コンピュータ２００からの信号に基づいて、視界画像１７をモニタ１３０に表示させることにより、ユーザ５に仮想空間１１における視界を提供する。視界画像１７は、パノラマ画像１３のうち視界領域１５に対応する部分に相当する画像である。ユーザ５が、頭に装着したＨＭＤ１２０を動かすと、その動きに連動して仮想カメラ１４も動く。その結果、仮想空間１１における視界領域１５の位置が変化する。これにより、モニタ１３０に表示される視界画像１７は、パノラマ画像１３のうち、仮想空間１１においてユーザ５が向いた方向の視界領域１５に重畳する画像に更新される。ユーザ５は、仮想空間１１における所望の方向を視認することができる。
【００６６】
このように、仮想カメラ１４の傾きは仮想空間１１におけるユーザ５の視線（基準視線１６）に相当し、仮想カメラ１４が配置される位置は、仮想空間１１におけるユーザ５の視点に相当する。したがって、仮想カメラ１４の位置または傾きを変更することにより、モニタ１３０に表示される画像が更新され、ユーザ５の視界が移動される。
【００６７】
ユーザ５は、ＨＭＤ１２０を装着している間、現実世界を視認することなく、仮想空間
１１に展開されるパノラマ画像１３のみを視認できる。そのため、ＨＭＤシステム１００は、仮想空間１１への高い没入感覚をユーザ５に与えることができる。
【００６８】
ある局面において、プロセッサ２１０は、ＨＭＤ１２０を装着したユーザ５の現実空間における移動に連動して、仮想空間１１において仮想カメラ１４を移動し得る。この場合、プロセッサ２１０は、仮想空間１１における仮想カメラ１４の位置および傾きに基づいて、ＨＭＤ１２０のモニタ１３０に投影される画像領域（視界領域１５）を特定する。
【００６９】
ある局面において、仮想カメラ１４は、２つの仮想カメラ、すなわち、右目用の画像を提供するための仮想カメラと、左目用の画像を提供するための仮想カメラとを含み得る。ユーザ５が３次元の仮想空間１１を認識できるように、適切な視差が、２つの仮想カメラに設定される。別の局面において、仮想カメラ１４を１つの仮想カメラにより実現してもよい。この場合、１つの仮想カメラにより得られた画像から、右目用の画像と左目用の画像とを生成するようにしてもよい。本実施の形態においては、仮想カメラ１４が２つの仮想カメラを含み、２つの仮想カメラのロール軸が合成されることによって生成されるロール軸（ｗ）がＨＭＤ１２０のロール軸（ｗ）に適合されるように構成されているものとして、本開示に係る技術思想を例示する。
【００７０】
［コントローラ］
図８を参照して、コントローラ３００の一例について説明する。図８は、ある実施の形態に従うコントローラ３００の概略構成を表す図である。
【００７１】
図８に示されるように、ある局面において、コントローラ３００は、右コントローラ３００Ｒと図示せぬ左コントローラとを含み得る。右コントローラ３００Ｒは、ユーザ５の右手で操作される。左コントローラは、ユーザ５の左手で操作される。ある局面において、右コントローラ３００Ｒと左コントローラとは、別個の装置として対称に構成される。したがって、ユーザ５は、右コントローラ３００Ｒを把持した右手と、左コントローラを把持した左手とをそれぞれ自由に動かすことができる。別の局面において、コントローラ３００は両手の操作を受け付ける一体型のコントローラであってもよい。以下、右コントローラ３００Ｒについて説明する。
【００７２】
右コントローラ３００Ｒは、グリップ３１０と、フレーム３２０と、天面３３０とを備える。グリップ３１０は、ユーザ５の右手によって把持されるように構成されている。たとえば、グリップ３１０は、ユーザ５の右手の掌と３本の指（中指、薬指、小指）とによって保持され得る。
【００７３】
グリップ３１０は、ボタン３４０，３５０と、モーションセンサ４２０とを含む。ボタン３４０は、グリップ３１０の側面に配置され、右手の中指による操作を受け付ける。ボタン３５０は、グリップ３１０の前面に配置され、右手の人差し指による操作を受け付ける。ある局面において、ボタン３４０，３５０は、トリガー式のボタンとして構成される。モーションセンサ４２０は、グリップ３１０の筐体に内蔵されている。ユーザ５の動作がカメラその他の装置によってユーザ５の周りから検出可能である場合には、グリップ３１０は、モーションセンサ４２０を備えなくてもよい。
【００７４】
フレーム３２０は、その円周方向に沿って配置された複数の赤外線ＬＥＤ３６０を含む。赤外線ＬＥＤ３６０は、コントローラ３００を使用するプログラムの実行中に、当該プログラムの進行に合わせて赤外線を発光する。赤外線ＬＥＤ３６０から発せられた赤外線は、右コントローラ３００Ｒと左コントローラとの各位置や姿勢（傾き、向き）を検出するために使用され得る。図８に示される例では、二列に配置された赤外線ＬＥＤ３６０が示されているが、配列の数は図８に示されるものに限られない。一列あるいは３列以上の配列が使用されてもよい。
【００７５】
天面３３０は、ボタン３７０，３８０と、アナログスティック３９０とを備える。ボタン３７０，３８０は、プッシュ式ボタンとして構成される。ボタン３７０，３８０は、ユーザ５の右手の親指による操作を受け付ける。アナログスティック３９０は、ある局面において、初期位置（ニュートラルの位置）から３６０度任意の方向への操作を受け付ける。当該操作は、たとえば、仮想空１１に配置されるオブジェクトを移動するための操作を含む。
【００７６】
ある局面において、右コントローラ３００Ｒおよび左コントローラは、赤外線ＬＥＤ３６０その他の部材を駆動するための電池を含む。電池は、充電式、ボタン型、乾電池型などを含むが、これらに限定されない。別の局面において、右コントローラ３００Ｒと左コントローラは、たとえば、コンピュータ２００のＵＳＢインターフェースに接続され得る。この場合、右コントローラ３００Ｒおよび左コントローラは、電池を必要としない。
【００７７】
［サーバのハードウェア構成］
図９を参照して、本実施の形態に係るサーバ１０について説明する。図９は、ある実施の形態に従うサーバ６００のハードウェア構成の一例を表すブロック図である。サーバ６００は、主たる構成要素として、プロセッサ６１０と、メモリ６２０と、ストレージ６３０と、入出力インターフェイス６４０と、通信インターフェイス６５０とを備える。各構成要素は、それぞれ、バス６６０に接続されている。
【００７８】
プロセッサ６１０は、サーバ６００に与えられる信号に基づいて、あるいは、予め定められた条件が成立したことに基づいて、メモリ６２０またはストレージ６３０に格納されているプログラムに含まれる一連の命令を実行する。ある局面において、プロセッサ６１０は、ＣＰＵ）、ＧＰＵ、ＭＰＵ、ＦＰＧＡその他のデバイスとして実現される。
【００７９】
メモリ６２０は、プログラムおよびデータを一時的に保存する。プログラムは、例えば、ストレージ６３０からロードされる。データは、サーバ６００に入力されたデータと、プロセッサ６１０によって生成されたデータとを含む。ある局面において、メモリ６２０は、ＲＡＭその他の揮発メモリとして実現される。
【００８０】
ストレージ６３０は、プログラムおよびデータを永続的に保持する。ストレージ６３０は、例えば、ＲＯＭ、ハードディスク装置、フラッシュメモリ、その他の不揮発記憶装置として実現される。ストレージ６３０に格納されるプログラムは、ＨＭＤシステム１００において仮想空間を提供するためのプログラム、シミュレーションプログラム、ゲームプログラム、ユーザ認証プログラム、コンピュータ２００との通信を実現するためのプログラムを含んでもよい。ストレージ６３０に格納されるデータは、仮想空間を規定するためのデータおよびオブジェクト等を含んでもよい。
【００８１】
別の局面において、ストレージ６３０は、メモリカードのように着脱可能な記憶装置として実現されてもよい。さらに別の局面において、サーバ６００に内蔵されたストレージ６３０の代わりに、外部の記憶装置に保存されているプログラムおよびデータを使用する構成が使用されてもよい。このような構成によれば、例えば、アミューズメント施設のように複数のＨＭＤシステム１００が使用される場面において、プログラムやデータの更新を一括して行なうことが可能になる。
【００８２】
入出力インターフェイス６４０は、入出力機器との間で信号を通信する。ある局面において、入出力インターフェイス６４０は、ＵＳＢ、ＤＶＩ、ＨＤＭＩ（登録商標）その他の端子を用いて実現される。入出力インターフェイス６４０は上述のものに限られない。
【００８３】
通信インターフェイス６５０は、ネットワーク２に接続されて、ネットワーク２に接続されているコンピュータ２００と通信する。ある局面において、通信インターフェイス６５０は、例えば、ＬＡＮその他の有線通信インターフェイス、あるいは、ＷｉＦｉ、Ｂｌｕｅｔｏｏｔｈ、ＮＦＣその他の無線通信インターフェイスとして実現される。通信インターフェイス６５０は上述のものに限られない。
【００８４】
ある局面において、プロセッサ６１０は、ストレージ６３０にアクセスし、ストレージ６３０に格納されている１つ以上のプログラムをメモリ６２０にロードし、当該プログラムに含まれる一連の命令を実行する。当該１つ以上のプログラムは、サーバ６１０のオペレーティングシステム、仮想空間を提供するためのアプリケーションプログラム、仮想空間で実行可能なゲームソフトウェア等を含み得る。プロセッサ６１０は、入出力インターフェイス６４０を介して、仮想空間を提供するための信号をコンピュータ２００に送ってもよい。
【００８５】
［ＨＭＤの制御装置］
図１０を参照して、ＨＭＤ２１の制御装置について説明する。ある実施の形態において、制御装置は周知の構成を有するコンピュータ２００によって実現される。図１０は、ある実施の形態に従うコンピュータ２００をモジュール構成として表わすブロック図である。
【００８６】
図１０に示されるように、コンピュータ２００は、コントロールモジュール５１０と、レンダリングモジュール５２０と、メモリモジュール５３０と、通信制御モジュール５４０とを備える。ある局面において、コントロールモジュール５１０とレンダリングモジュール５２０とは、プロセッサ２１０によって実現される。別の局面において、複数のプロセッサ２１０がコントロールモジュール５１０とレンダリングモジュール５２０として作動してもよい。メモリモジュール５３０は、メモリ２２０またはストレージ２３０によって実現される。通信制御モジュール５４０は、通信インターフェイス２５０によって実現される。
【００８７】
コントロールモジュール５１０は、ユーザ５に提供される仮想空間１１を制御する。コントロールモジュール５１０は、仮想空間１１を表す仮想空間データを用いて、ＨＭＤシステム１００における仮想空間１１を規定する。仮想空間データは、例えば、メモリモジュール５３０に記憶されている。コントロールモジュール５１０が、仮想空間データを生成したり、サーバ６００などから仮想空間データを取得するようにしたりしてもよい。
【００８８】
コントロールモジュール５１０は、オブジェクトを表すオブジェクトデータを用いて、仮想空間１１にオブジェクトを配置する。オブジェクトデータは、例えば、メモリモジュール５３０に記憶されている。コントロールモジュール５１０が、オブジェクトデータを生成したり、サーバ６００などからオブジェクトデータを取得するようにしたりしてもよい。オブジェクトは、例えば、ユーザ５の分身であるアバターオブジェクト、キャラクタオブジェクト、コントローラ３００によって操作される仮想手などの操作オブジェクト、ゲームのストーリーの進行に従って配置される森、山その他を含む風景、街並み、動物等を含み得る。
【００８９】
コントロールモジュール５１０は、ネットワーク２を介して接続される他のコンピュータ２００のユーザ５のアバターオブジェクトを仮想空間１１に配置する。ある局面において、コントロールモジュール５１０は、ユーザ５のアバターオブジェクトを仮想空間１１に配置する。ある局面において、コントロールモジュール５１０は、ユーザ５を含む画像に基づいて、ユーザ５を模したアバターオブジェクトを仮想空間１１に配置する。別の局面において、コントロールモジュール５１０は、複数種類のアバターオブジェクト（例えば、動物を模したオブジェクトや、デフォルメされた人のオブジェクト）の中からユーザ５による選択を受け付けたアバターオブジェクトを仮想空間２に配置する。
【００９０】
コントロールモジュール５１０は、ＨＭＤセンサ４１０の出力に基づいてＨＭＤ１２０の傾きを特定する。別の局面において、コントロールモジュール５１０は、モーションセンサとして機能するセンサ１９０の出力に基づいてＨＭＤ１２０の傾きを特定する。コントロールモジュール５１０は、第１カメラ１５０および第２カメラ１６０が生成するユーザ５の顔の画像から、ユーザ５の顔を構成する器官（例えば、口，目，眉）を検出する。コントロールモジュール５１０は、検出した各器官の動き（形状）を検出する。
【００９１】
コントロールモジュール５１０は、注視センサ１４０からの信号に基づいて、ユーザ５の仮想空間１１における視線を検出する。コントロールモジュール５１０は、検出したユーザ５の視線と仮想空間１１の天球とが交わる視点位置（ＸＹＺ座標系における座標値）を検出する。より具体的には、コントロールモジュール５１０は、ｕｖｗ座標系で規定されるユーザ５の視線と、仮想カメラ１４の位置および傾きとに基づいて、視点位置を検出する。コントロールモジュール５１０は、検出した視点位置をサーバ６００に送信する。別の局面において、コントロールモジュール５１０は、ユーザ５の視線を表す視線情報をサーバ６００に送信するように構成されてもよい。係る場合、サーバ６００が受信した視線情報に基づいて視点位置を算出し得る。
【００９２】
コントロールモジュール５１０は、ＨＭＤセンサ４１０が検出するＨＭＤ１２０の動きをアバターオブジェクトに反映する。例えば、コントロールモジュール５１０は、ＨＭＤ１２０が傾いたことを検知して、アバターオブジェクトを傾けて配置する。コントロールモジュール５１０は、検出した顔器官の動作を、仮想空間１１に配置されるアバターオブジェクトの顔に反映させる。コントロールモジュール５１０は、サーバ６００から他のユーザ５の視線情報を受信し、当該他のユーザ５のアバターオブジェクトの視線に反映させる。ある局面において、コントロールモジュール５１０は、コントローラ３００の動きをアバターオブジェクトや操作オブジェクトに反映する。この場合、コントローラ３００は、コントローラ３００の動きを検知するためのモーションセンサ、加速度センサ、または複数の発光素子（例えば、赤外線ＬＥＤ）などを備える。
【００９３】
コントロールモジュール５１０は、仮想空間１１においてユーザ５の操作を受け付けるための操作オブジェクトを仮想空間１１に配置する。ユーザ５は、操作オブジェクトを操作することにより、例えば、仮想空間１１に配置されるオブジェクトを操作する。ある局面において、操作オブジェクトは、例えば、ユーザ５の手に相当する仮想手である手オブジェクト等を含み得る。ある局面において、コントロールモジュール５１０は、モーションセンサ４２０の出力に基づいて現実空間におけるユーザ５の手の動きに連動するように仮想空間１１において手オブジェクトを動かす。ある局面において、操作オブジェクトは、アバターオブジェクトの手の部分に相当し得る。
【００９４】
コントロールモジュール５１０は、仮想空間１１に配置されるオブジェクトのそれぞれが、他のオブジェクトと衝突した場合に、当該衝突を検出する。コントロールモジュール５１０は、例えば、あるオブジェクトのコリジョンエリアと、別のオブジェクトのコリジョンエリアとが触れたタイミングを検出することができ、当該検出がされたときに、予め定められた処理を行なう。コントロールモジュール５１０は、オブジェクトとオブジェクトとが触れている状態から離れたタイミングを検出することができ、当該検出がされたときに、予め定められた処理を行なう。コントロールモジュール５１０は、オブジェクトとオブジェクトとが触れている状態であることを検出することができる。例えば、コントロールモジュール５１０は、操作オブジェクトと、他のオブジェクトとが触れたときに、これら操作オブジェクトと他のオブジェクトとが触れたことを検出して、予め定められた処理を行なう。
【００９５】
ある局面において、コントロールモジュール５１０は、ＨＭＤ１２０のモニタ１３０における画像表示を制御する。例えば、コントロールモジュール５１０は、仮想空間１１に仮想カメラ１４を配置する。コントロールモジュール５１０は、仮想空間１１における仮想カメラ１４の位置と、仮想カメラ１４の傾き（向き）を制御する。コントロールモジュール５１０は、ＨＭＤ１２０を装着したユーザ５の頭の傾きと、仮想カメラ１４の位置に応じて、視界領域１５を規定する。レンダリングモジュール５１０は、決定された視界領域１５に基づいて、モニタ１３０に表示される視界画像１７を生成する。レンダリングモジュール５２０により生成された視界画像１７は、通信制御モジュール５４０によってＨＭＤ１２０に出力される。
【００９６】
コントロールモジュール５１０は、ＨＭＤ１２０から、ユーザ５のマイク１７０を用いた発話を検出すると、当該発話に対応する音声データの送信対象のコンピュータ２００を特定する。音声データは、コントロールモジュール５１０によって特定されたコンピュータ２００に送信される。コントロールモジュール５１０は、ネットワーク２を介して他のユーザのコンピュータ２００から音声データを受信すると、当該音声データに対応する音声（発話）をスピーカ１８０から出力する。
【００９７】
メモリモジュール５３０は、コンピュータ２００が仮想空間１１をユーザ５に提供するために使用されるデータを保持している。ある局面において、メモリモジュール５４０は、空間情報と、オブジェクト情報と、ユーザ情報とを保持している。
【００９８】
空間情報は、仮想空間１１を提供するために規定された１つ以上のテンプレートを保持している。
【００９９】
オブジェクト情報は、仮想空間１１を構成する複数のパノラマ画像１３、仮想空間１１にオブジェクトを配置するためのオブジェクトデータを含む。パノラマ画像１３は、静止画像および動画像を含み得る。パノラマ画像１３は、非現実空間の画像と現実空間の画像とを含み得る。非現実空間の画像としては、例えば、コンピュータグラフィックスで生成された画像が挙げられる。
【０１００】
ユーザ情報は、ユーザ５を識別するユーザＩＤを保持する。ユーザＩＤは、例えば、ユーザが使用するコンピュータ２００に設定されるＩＰ（Internet Protocol）アドレスまたはＭＡＣ（Media Access Control）アドレスであり得る。別の局面において、ユーザＩＤはユーザによって設定され得る。ユーザ情報は、ＨＭＤシステム１００の制御装置としてコンピュータ２００を機能させるためのプログラム等を含む。
【０１０１】
メモリモジュール５３０に格納されているデータおよびプログラムは、ＨＭＤ１２０のユーザ５によって入力される。あるいは、プロセッサ２１０が、当該コンテンツを提供する事業者が運営するコンピュータ（例えば、サーバ６００）からプログラムあるいはデータをダウンロードして、ダウンロードされたプログラムあるいはデータをメモリモジュール５３０に格納する。
【０１０２】
通信制御モジュール５４０は、ネットワーク２を介して、サーバ６００その他の情報通信装置と通信し得る。
【０１０３】
ある局面において、コントロールモジュール５１０及びレンダリングモジュール５２０は、例えば、ユニティテクノロジーズ社によって提供されるＵｎｉｔｙ（登録商標）を用いて実現され得る。別の局面において、コントロールモジュール５１０及びレンダリングモジュール５２０は、各処理を実現する回路素子の組み合わせとしても実現され得る。
【０１０４】
コンピュータ２００における処理は、ハードウェアと、プロセッサ４１０により実行されるソフトウェアとによって実現される。このようなソフトウェアは、ハードディスクその他のメモリモジュール５３０に予め格納されている場合がある。ソフトウェアは、ＣＤ−ＲＯＭその他のコンピュータ読み取り可能な不揮発性のデータ記録媒体に格納されて、プログラム製品として流通している場合もある。あるいは、当該ソフトウェアは、インターネットその他のネットワークに接続されている情報提供事業者によってダウンロード可能なプログラム製品として提供される場合もある。このようなソフトウェアは、光ディスク駆動装置その他のデータ読取装置によってデータ記録媒体から読み取られて、あるいは、通信制御モジュール５４０を介してサーバ６００その他のコンピュータからダウンロードされた後、記憶モジュールに一旦格納される。そのソフトウェアは、プロセッサ２１０によって記憶モジュールから読み出され、実行可能なプログラムの形式でＲＡＭに格納される。プロセッサ２１０は、そのプログラムを実行する。
【０１０５】
［ＨＭＤシステムの制御構造］
図１１を参照して、ＨＭＤセット１１０の制御構造について説明する。図１１は、ある実施の形態に従うＨＭＤセット１１０において実行される処理の一部を表すシーケンスチャートである。
【０１０６】
図１１に示されるように、ステップＳ１１１０にて、コンピュータ２００のプロセッサ２１０は、コントロールモジュール５１０として、仮想空間データを特定し、仮想空間１１を定義する。
【０１０７】
ステップＳ１１２０にて、プロセッサ２１０は、仮想カメラ１４を初期化する。たとえば、プロセッサ２１０は、メモリのワーク領域において、仮想カメラ１４を仮想空間１１において予め規定された中心点１２に配置し、仮想カメラ１４の視線をユーザ５が向いている方向に向ける。
【０１０８】
ステップＳ１１３０にて、プロセッサ２１０は、レンダリングモジュール５２０として、初期の視界画像を表示するための視界画像データを生成する。生成された視界画像データは、通信制御モジュール５４０によってＨＭＤ１２０に出力される。
【０１０９】
ステップＳ１１３２にて、ＨＭＤ１２０のモニタ１３０は、コンピュータ２００から受信した視界画像データに基づいて、視界画像を表示する。ＨＭＤ１２０を装着したユーザ５は、視界画像を視認すると仮想空間１１を認識し得る。
【０１１０】
ステップＳ１１３４にて、ＨＭＤセンサ４１０は、ＨＭＤ１２０から発信される複数の赤外線光に基づいて、ＨＭＤ１２０の位置と傾きを検知する。検知結果は、動き検知データとして、コンピュータ２００に出力される。
【０１１１】
ステップＳ１１４０にて、プロセッサ２１０は、ＨＭＤ１２０の動き検知データに含まれる位置と傾きとに基づいて、ＨＭＤ１２０を装着したユーザ５の視界方向を特定する。
【０１１２】
ステップＳ１１５０にて、プロセッサ２１０は、アプリケーションプログラムを実行し、アプリケーションプログラムに含まれる命令に基づいて、仮想空間１１にオブジェクトを配置する。
【０１１３】
ステップＳ１１６０にて、コントローラ３００は、モーションセンサ４２０から出力される信号に基づいて、ユーザ５の操作を検出し、その検出された操作を表す検出データをコンピュータ２００に出力する。別の局面において、ユーザ５によるコントローラ３００の操作は、ユーザ５の周囲に配置されたカメラからの画像に基づいて検出されてもよい。
【０１１４】
ステップＳ１１７０にて、プロセッサ２１０は、コントローラ３００から取得した検出データに基づいて、ユーザ５によるコントローラ３００の操作を検出する。
【０１１５】
ステップＳ１１８０にて、プロセッサ２１０は、ユーザ５によるコントローラ３００の操作に基づく視界画像データを生成する。生成された視界画像データは、通信制御モジュール５４０によってＨＭＤ１２０に出力される。
【０１１６】
ステップＳ１１９０にて、ＨＭＤ１２０は、受信した視界画像データに基づいて視界画像を更新し、更新後の視界画像をモニタ１３０に表示する。
【０１１７】
［アバターオブジェクト］
図１２（Ａ）、（Ｂ）を参照して、本実施の形態に従うアバターオブジェクトについて説明する。以下、ＨＭＤセット１１０Ａ，１１０Ｂの各ユーザ５のアバターオブジェクトを説明する図である。以下、ＨＭＤセット１１０Ａのユーザをユーザ５Ａ、ＨＭＤセット１１０Ｂのユーザをユーザ５Ｂ、ＨＭＤセット１１０Ｃのユーザをユーザ５Ｃ、ＨＭＤセット１１０Ｄのユーザをユーザ５Ｄと表す。ＨＭＤセット１１０Ａに関する各構成要素の参照符号にＡが付され、ＨＭＤセット１１０Ｂに関する各構成要素の参照符号にＢが付され、ＨＭＤセット１１０Ｃに関する各構成要素の参照符号にＣが付され、ＨＭＤセット１１０Ｄに関する各構成要素の参照符号にＤが付される。例えば、ＨＭＤ１２０Ａは、ＨＭＤセット１１０Ａに含まれる。
【０１１８】
図１２（Ａ）は、ネットワーク２において、各ＨＭＤ１２０がユーザ５に仮想空間１１を提供する状況を表す模式図である。コンピュータ２００Ａ〜２００Ｄは、ＨＭＤ１２０Ａ〜１２０Ｄを介して、ユーザ５Ａ〜５Ｄに、仮想空間１１Ａ〜１１Ｄをそれぞれ提供する。図１２（Ａ）に示される例において、仮想空間１１Ａおよび仮想空間１１Ｂは同じデータによって構成されている。換言すれば、コンピュータ２００Ａとコンピュータ２００Ｂとは同じ仮想空間を共有していることになる。仮想空間１１Ａおよび仮想空間１１Ｂには、ユーザ５Ａのアバターオブジェクト６Ａと、ユーザ５Ｂのアバターオブジェクト６Ｂとが存在する。仮想空間１１Ａにおけるアバターオブジェクト６Ａおよび仮想空間１１Ｂにおけるアバターオブジェクト６ＢがそれぞれＨＭＤ１２０を装着しているが、これは説明を分かりやすくするためのものであって、実際にはこれらのオブジェクトはＨＭＤ１２０を装着していない。
【０１１９】
ある局面において、プロセッサ２１０Ａは、ユーザ５Ａの視界画像１７Ａを撮影する仮想カメラ１４Ａを、アバターオブジェクト６Ａの目の位置に配置し得る。
【０１２０】
図１２（Ｂ）は、図１２（Ａ）におけるユーザ５Ａの視界画像１７Ａを示す図である。視界画像１７Ａは、ＨＭＤ１２０Ａのモニタ１３０Ａに表示される画像である。この視界画像１７Ａは、仮想カメラ１４Ａにより生成された画像である。視界画像１７Ａには、ユーザ５Ｂのアバターオブジェクト６Ｂが表示されている。特に図示はしていないが、ユーザ５Ｂの視界画像にも同様に、ユーザ５Ａのアバターオブジェクト６Ａが表示されている。
【０１２１】
図１２（Ｂ）の状態において、ユーザ５Ａは仮想空間１１Ａを介してユーザ５Ｂと対話による通信（コミュニケーション）を図ることができる。より具体的には、マイク１７０Ａにより取得されたユーザ５Ａの音声は、サーバ６００を介してユーザ５ＢのＨＭＤ１７１２０Ｂに送信され、ＨＭＤ１２０Ｂに設けられたスピーカ１８０Ｂから出力される。ユーザ５Ｂの音声は、サーバ６００を介してユーザ５ＡのＨＭＤ１２０Ａに送信され、ＨＭＤ１２０Ａに設けられたスピーカ１８０Ａから出力される。
【０１２２】
ユーザ５Ｂの動作（ＨＭＤ１２０Ｂの動作およびコントローラ３００Ｂの動作）は、プロセッサ２１０Ａにより仮想空間１１Ａに配置されるアバターオブジェクト６Ｂに反映される。これにより、ユーザ５Ａは、ユーザ５Ｂの動作を、アバターオブジェクト６Ｂを通じて認識できる。
【０１２３】
図１３は、本実施の形態に従うＨＭＤシステム１００において実行される処理の一部を表すシーケンスチャートである。図１３においては、ＨＭＤセット１１０Ｄを図示していないが、ＨＭＤセット１１０Ｄについても、ＨＭＤセット１１０Ａ、１１０Ｂ、１１０Ｃと同様に動作する。以下の説明でも、ＨＭＤセット１１０Ａに関する各構成要素の参照符号にＡが付され、ＨＭＤセット１１０Ｂに関する各構成要素の参照符号にＢが付され、ＨＭＤセット１１０Ｃに関する各構成要素の参照符号にＣが付され、ＨＭＤセット１１０Ｄに関する各構成要素の参照符号にＤが付されるものとする。
【０１２４】
ステップＳ１３１０Ａにおいて、ＨＭＤセット１１０Ａにおけるプロセッサ２１０Ａは、仮想空間１１Ａにおけるアバターオブジェクト６Ａの動作を決定するためのアバター情報を取得する。このアバター情報は、例えば、動き情報、フェイストラッキングデータ、および音声データ等のアバターに関する情報を含む。動き情報は、ＨＭＤ１２０Ａの位置および傾きの時間的変化を示す情報や、モーションセンサ４２０Ａ等により検出されたユーザ５Ａの手の動きを示す情報などを含む。フェイストラッキングデータは、ユーザ５Ａの顔の各パーツの位置および大きさを特定するデータが挙げられる。フェイストラッキングデータは、ユーザ５Ａの顔を構成する各器官の動きを示すデータや視線データが挙げられる。音声データは、ＨＭＤ１２０Ａのマイク１７０Ａによって取得されたユーザ５Ａの音声を示すデータが挙げられる。アバター情報には、アバターオブジェクト６Ａ、あるいはアバターオブジェクト６Ａに関連付けられるユーザ５Ａを特定する情報や、アバターオブジェクト６Ａが存在する仮想空間１１Ａを特定する情報等が含まれてもよい。アバターオブジェクト６Ａやユーザ５Ａを特定する情報としては、ユーザＩＤが挙げられる。アバターオブジェクト６Ａが存在する仮想空間１１Ａを特定する情報としては、ルームＩＤが挙げられる。プロセッサ２１０Ａは、上述のように取得されたアバター情報を、ネットワーク２を介してサーバ６００に送信する。
【０１２５】
ステップＳ１３１０Ｂにおいて、ＨＭＤセット１１０Ｂにおけるプロセッサ２１０Ｂは、ステップＳ１３１０Ａにおける処理と同様に、仮想空間１１Ｂにおけるアバターオブジェクト６Ｂの動作を決定するためのアバター情報を取得し、サーバ６００に送信する。同様に、ステップＳ１３１０Ｃにおいて、ＨＭＤセット１１０Ｂにおけるプロセッサ２１０Ｂは、仮想空間１１Ｃにおけるアバターオブジェクト６Ｃの動作を決定するためのアバター情報を取得し、サーバ６００に送信する。
【０１２６】
ステップＳ１３２０において、サーバ６００は、ＨＭＤセット１１０Ａ、ＨＭＤセット１１０Ｂ、およびＨＭＤセット１１０Ｃのそれぞれから受信したプレイヤ情報を一旦記憶する。サーバ６００は、各アバター情報に含まれるユーザＩＤおよびルームＩＤ等に基づいて、共通の仮想空間１１に関連付けられた全ユーザ（この例では、ユーザ５Ａ〜５Ｃ）のアバター情報を統合する。そして、サーバ６００は、予め定められたタイミングで、統合したアバター情報を当該仮想空間１１に関連付けられた全ユーザに送信する。これにより、同期処理が実行される。このような同期処理により、ＨＭＤセット１１０Ａ、ＨＭＤセット１１０Ｂ、およびＨＭＤ１１０２０Ｃは、互いのアバター情報をほぼ同じタイミングで共有することができる。
【０１２７】
続いて、サーバ６００から各ＨＭＤセット１１０Ａ〜１１０Ｃに送信されたアバター情報に基づいて、各ＨＭＤセット１１０Ａ〜１１０Ｃは、ステップＳ１３３０Ａ〜Ｓ１３３０Ｃの処理を実行する。ステップＳ１３３０Ａの処理は、図１１におけるステップＳ１１８０の処理に相当する。
【０１２８】
ステップＳ１３３０Ａにおいて、ＨＭＤセット１１０Ａにおけるプロセッサ２１０Ａは、仮想空間１１Ａにおける他のユーザ５Ｂ，５Ｃのアバターオブジェクト６Ｂ、アバターオブジェクト６Ｃの情報を更新する。具体的には、プロセッサ２１０Ａは、ＨＭＤセット
１１０Ｂから送信されたアバター情報に含まれる動き情報に基づいて、仮想空間１１におけるアバターオブジェクト６Ｂの位置および向き等を更新する。例えば、プロセッサ２１０Ａは、メモリモジュール５４０に格納されたオブジェクト情報に含まれるアバターオブジェクト６Ｂの情報（位置および向き等）を更新する。同様に、プロセッサ２１０Ａは、ＨＭＤセット１１０Ｃから送信されたアバター情報に含まれる動き情報に基づいて、仮想空間１１におけるアバターオブジェクト６Ｃの情報（位置および向き等）を更新する。
【０１２９】
ステップＳ１３３０Ｂにおいて、ＨＭＤセット１１０Ｂにおけるプロセッサ２１０Ｂは、ステップＳ１３３０Ａにおける処理と同様に、仮想空間１１Ｂにおけるユーザ５Ａ，５Ｃのアバターオブジェクト６Ａ，６Ｃの情報を更新する。同様に、ステップＳ１３３０Ｃにおいて、ＨＭＤセット１１０Ｃにおけるプロセッサ２１０Ｃは、仮想空間１１Ｃにおけるユーザ５Ａ，５Ｂのアバターオブジェクト６Ａ，６Ｂの情報を更新する。
【０１３０】
［コンピュータ２００のモジュールの詳細構成］
図１４を参照して、コンピュータ２００のモジュール構成の詳細について説明する。図１４は、ある実施の形態に従うコンピュータ２００のモジュールの詳細構成を表わすブロック図である。図１４に示されるように、コントロールモジュール５１０は、仮想オブジェクト生成モジュール１４２１、仮想カメラ制御モジュール１４２２、操作オブジェクト制御モジュール１４２３、アバターオブジェクト制御モジュール１４２４、動き検出モジュール１４２５、衝突検出モジュール１４２６、および仮想オブジェクト制御モジュール１４２７を備えている。
【０１３１】
仮想オブジェクト生成モジュール１４２１は、各種の仮想オブジェクトを仮想空間１１に生成する。ある局面において、仮想オブジェクトは、例えば、ゲームのストーリーの進行に従って配置される森、山その他を含む風景、動物等を含み得る。ある局面において、仮想オブジェクトは、アバターオブジェクト、操作オブジェクト、およびステージオブジェクト、ＵＩ（User Interface）オブジェクトを含み得る。
【０１３２】
仮想カメラ制御モジュール１４２２は、仮想空間１１における仮想カメラ１４の挙動を制御する。仮想カメラ制御モジュール１４２２は、例えば、仮想空間１１における仮想カメラ１４の配置位置と、仮想カメラ１４の向き（傾き）とを制御する。
【０１３３】
操作オブジェクト制御モジュール１４２３は、仮想空間１１においてユーザ５の操作を受け付けるための操作オブジェクトを制御する。ユーザ５は、操作オブジェクトを操作することによって、例えば、仮想空間１１に配置される仮想オブジェクトを操作する。ある局面において、操作オブジェクトは、例えば、ＨＭＤ１２０を装着したユーザ５の手に相当する手オブジェクト（仮想手）等を含み得る。ある局面において、操作オブジェクトは、後述するアバターオブジェクトの手の部分に相当し得る。
【０１３４】
アバターオブジェクト制御モジュール１４２４は、ＨＭＤセンサ４１０が検出するＨＭＤ１２０の動きをアバターオブジェクトに反映する。例えば、アバターオブジェクト制御モジュール１４２４は、ＨＭＤ１２０が傾いたことを検知して、アバターオブジェクトを傾けて配置するためのデータを生成する。ある局面において、アバターオブジェクト制御モジュール１４２４は、コントローラ３００の動きをアバターオブジェクトに反映する。この場合、コントローラ３００は、コントローラ３００の動きを検知するためのモーションセンサ、加速度センサ、または複数の発光素子（例えば、赤外線ＬＥＤ）などを備える。例えば、アバターオブジェクト制御モジュール１４２４は、動き検出モジュール１４２５が検出した手の動きを、仮想空間１１に配置される操作オブジェクト（アバターオブジェクトの手の一部である仮想手）の動きに反映させる。アバターオブジェクト制御モジュール１４２４は、動き検出モジュール１４２５が検出した顔器官の動作を、仮想空間１１に配置されるアバターオブジェクトの顔に反映させる。つまり、アバターオブジェクト制御モジュール１４２４は、ユーザ５の顔の動作をアバターオブジェクトに反映する。
【０１３５】
動き検出モジュール１４２５は、ユーザ５の動きを検出する。動き検出モジュール１４２５は、例えば、コントローラ３００の出力に応じて、ユーザ５の手の動きを検出する。動き検出モジュール１４２５は、例えば、ユーザ５の身体に装着されるモーションセンサの出力に応じて、ユーザ５の身体の動きを検出する。動き検出モジュール１４２５は、ユーザ５の顔器官の動作を検出することもできる。
【０１３６】
衝突検出モジュール１４２６は、仮想空間１１に配置される仮想オブジェクトのそれぞれが、他の仮想オブジェクトと衝突した場合に、当該衝突を検出する。衝突検出モジュール１４２６は、例えば、ある仮想オブジェクトと、別の仮想オブジェクトとが触れたタイミングを検出することができる。衝突検出モジュール１４２６は、ある仮想オブジェクトと他の仮想オブジェクトとが触れている状態から離れたタイミングを検出することができる。衝突検出モジュール１４２６は、ある仮想オブジェクトと他の仮想オブジェクトとが触れている状態であることを検出することもできる。衝突検出モジュール１４２６は、例えば、操作オブジェクトと、他の仮想オブジェクトとが触れたときに、これら操作オブジェクトと他のオブジェクトとが触れたことを検出する。衝突検出モジュール１４２６は、これらの検出結果に基づいて、予め定められた処理を実行する。
【０１３７】
仮想オブジェクト制御モジュール１４２７は、仮想空間１１において、アバターオブジェクトを除く仮想オブジェクトの挙動を制御する。一例として、仮想オブジェクト制御モジュール１４２７は、仮想オブジェクトを変形させる。別の例として、仮想オブジェクト制御モジュール１４２７は、仮想オブジェクトの配置位置を変更する。別の例として、仮想オブジェクト制御モジュール１４２７は、仮想オブジェクトを移動させる。
【０１３８】
さらに別の例として、仮想オブジェクト制御モジュール１４２７は、衝突検出モジュール１４２６によって仮想オブジェクトと操作オブジェクト（仮想手）とが触れていることが検出された状態において、コントローラ３００が有する所定ボタンの押下が検出されると、当該仮想オブジェクトと操作オブジェクトとを関連付ける。このとき、アバターオブジェクト制御モジュール１４２４は、操作オブジェクト（仮想手）に、仮想オブジェクトを対象とする動作をさせるよう制御してもよい。対象とする動作の一例としては、例えば、持つ、握る、掴む、手の平に乗せる、つまむ等の動作であってもよい。
【０１３９】
また、仮想オブジェクト制御モジュール１４２７は、仮想オブジェクトと操作オブジェクトとが関連付けられた状態において、動き検出モジュール１４２５によってユーザ５の手の動きが検出されると、操作オブジェクトの移動とともに、当該仮想オブジェクトを移動させるよう制御する。
【０１４０】
また、仮想オブジェクト制御モジュール１４２７は、仮想オブジェクトと操作オブジェクトとが関連付けられた状態において、コントローラ３００が有する所定ボタンの押下が検出されると、当該仮想オブジェクトと操作オブジェクトとを関連付けを解除する。このとき、アバターオブジェクト制御モジュール１４２４は、操作オブジェクト（仮想手）に、仮想オブジェクトを放す動作をさせるよう制御してもよい。
【０１４１】
［ゲームシステムの構成］
図１５は、本実施の形態に従うゲームシステム１５００の構成の概略を表す図である。ゲームシステム１５００は、複数のユーザにゲームを提供するためのシステムである。ゲームシステム１５００は、サーバ６００と、ＨＭＤセット１１０Ｂと、ユーザ端末８００Ａ，８００Ｃ，８００Ｄと、ネットワーク２とを含む。ＨＭＤセット１１０Ｂと、ユーザ端末８００Ａ，８００Ｃ，８００Ｄの各々とは、ネットワーク２を介してサーバ６００と通信可能に構成される。以下、ユーザ端末８００Ａ，８００Ｃ，８００Ｄを総称して、ユーザ端末８００とも言う。ゲームシステム１５００を構成するユーザ端末８００の数は、３つに限られず、２つ以下でも、４つ以上でもよい。
【０１４２】
ＨＭＤセット１１０Ｂは、本発明におけるキャラクタ制御装置の一実施形態を構成する。以降、ＨＭＤセット１１０Ｂを、キャラクタ制御装置１１０Ｂとも記載する。キャラクタ制御装置１１０Ｂは、ゲームシステム１５００に少なくとも１台設けられている。キャラクタ制御装置１１０Ｂは、サーバ６００が提供するサービスを利用するユーザ端末８００の数に応じて、複数台設けられていてもよい。１台のユーザ端末８００に対して、１台のキャラクタ制御装置１１０Ｂが設けられていてもよい。複数台のユーザ端末８００に対して、１台のキャラクタ制御装置１１０Ｂが設けられていてもよい。
【０１４３】
なお、本実施形態では、本発明における第１キャラクタ制御装置及び第２キャラクタ制御装置として、同一のキャラクタ制御装置１１０Ｂを適用する例について説明する。
【０１４４】
以下、ＨＭＤセット１１０Ｂのユーザをユーザ５Ｂと表す。また、ユーザ端末８００Ａのユーザをユーザ８Ａ、ユーザ端末８００Ｃのユーザをユーザ８Ｃ、ユーザ端末８００Ｄのユーザをユーザ８Ｄと表す。ユーザ８Ａ、８Ｃ、８Ｄを、総称してユーザ８とも記載する。ユーザ端末８００Ａに関する各構成要素の参照符号にＡが付され、ＨＭＤセット１１０Ｂに関する各構成要素の参照符号にＢが付され、ユーザ端末８００Ｃに関する各構成要素の参照符号にＣが付され、ユーザ端末８００Ｄに関する各構成要素の参照符号にＤが付される。
【０１４５】
ゲームシステム１５００は、ユーザ５Ｂに関連付けられるアバターオブジェクト６Ｂが仮想空間１１Ｂにおいて実演する番組を、キャラクタ制御装置１１０Ｂから各ユーザ端末８００にストリーミング配信するためのシステムである。なお、アバターオブジェクト６Ｂは、本発明における第１キャラクタ及び第２キャラクタの一例である。仮想空間１１Ｂは、キャラクタ制御装置１１０Ｂ及び複数のユーザ端末８００間で共有される。換言すると、仮想空間１１Ａ、１１Ｃ、１１Ｄは、それぞれ、仮想空間１１Ｂに同期する。以降、仮想空間１１Ａ、Ｂ、Ｃ、Ｄを特に区別する必要がない場合は、単に「仮想空間１１」とも記載する。ユーザ５Ｂは、キャラクタ制御装置１１０Ｂにおいてアバターオブジェクト６Ｂを制御することによって、アバターオブジェクト６Ｂの番組を進行させる。ユーザ８Ａは、配信されるアバターオブジェクト６Ｂの番組を、ユーザ端末８００Ａを通じて視聴する。ユーザ８Ｃは、配信されるアバターオブジェクト６Ｂの番組を、ユーザ端末８００Ｃを通じて視聴する。ユーザ８Ｄは、配信されるアバターオブジェクト６Ｂの番組を、ユーザ端末８００Ｄを通じて視聴する。
【０１４６】
＜ゲームシステム１５００を構成する各装置のハードウェア構成＞
ゲームシステム１５００を構成する各装置のハードウェア構成について説明する。サーバ６００（コンピュータ、情報処理装置）は、ワークステーションまたはパーソナルコンピュータ等の汎用コンピュータであってよい。サーバ６００のハードウェア構成については、図９を参照して説明した通りである。
【０１４７】
キャラクタ制御装置１１０Ｂは、サーバ、デスクトップパソコン、ノートパソコン、または、タブレットなどのコンピュータ、および、これらを組み合わせたコンピュータ群であってもよい。キャラクタ制御装置１１０Ｂのハードウェア構成については、図２を参照して説明した通りである。ゲームシステム１５００を構成する各装置が接続するネットワーク２は、インターネットおよび図示しない無線基地局によって構築される各種移動通信システム等で構成される。この移動通信システムとしては、例えば、所謂３Ｇ、４Ｇ移動通信システム、ＬＴＥ（Long Term Evolution）、および所定のアクセスポイントによってインターネットに接続可能な無線ネットワーク（例えばWi-Fi（登録商標））等が挙げられる。
【０１４８】
図１６は、ユーザ端末８００のハードウェア構成を示す図である。ユーザ端末８００（コンピュータ、情報処理装置）は、スマートフォン、フィーチャーフォン、ＰＤＡ（Personal Digital Assistant）、またはタブレット型コンピュータ等の携帯端末であってよい。ユーザ端末８００は、ゲームプレイに適したゲーム装置であってもよい。ユーザ端末８００は図示の通り、プロセッサ８１０と、メモリ８２０と、ストレージ８３０と、通信インターフェース（ＩＦ）１３と、入出力ＩＦ８４０と、タッチスクリーン８７０（表示部）と、カメラ８６０と、測距センサ８８０とを備える。ユーザ端末８００が備えるこれらの構成は、通信バスによって互いに電気的に接続される。なお、ユーザ端末８００は、タッチスクリーン８７０に代えて、または、加えて、ユーザ端末８００本体とは別に構成されたディスプレイ（表示部）を接続可能な入出力ＩＦ８４０を備えていてもよい。
【０１４９】
また、図１６に示すように、ユーザ端末８００は、１つ以上のコントローラ１０２０と通信可能に構成されることとしてもよい。コントローラ１０２０は、例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）等の通信規格に従って、ユーザ端末８００と通信を確立する。コントローラ１０２０は、１つ以上のボタン等を有していてもよく、該ボタン等に対するユーザ８の入力操作に基づく出力値をユーザ端末８００へ送信する。また、コントローラ１０２０は、加速度センサ、および、角速度センサ等の各種センサを有していてもよく、該各種センサの出力値をユーザ端末８００へ送信する。
【０１５０】
なお、ユーザ端末８００がカメラ８６０および測距センサ８８０を備えることに代えて、または、加えて、コントローラ１０２０がカメラ８６０および測距センサ８８０を有していてもよい。
【０１５１】
ユーザ端末８００は、例えばゲーム開始時に、コントローラ１０２０を使用するユーザ８に、該ユーザ８の名前またはログインＩＤ等のユーザ識別情報を、該コントローラ１０２０を介して入力させることが望ましい。これにより、ユーザ端末８００は、コントローラ１０２０とユーザ８とを紐付けることが可能となり、受信した出力値の送信元（コントローラ１０２０）に基づいて、該出力値がどのユーザ８のものであるかを特定することができる。
【０１５２】
ユーザ端末８００が複数のコントローラ１０２０と通信する場合、各コントローラ１０２０を各ユーザ８が把持することで、ネットワーク２を介してサーバ６００などの他の装置と通信せずに、該１台のユーザ端末８００でマルチプレイを実現することができる。また、各ユーザ端末８００が無線ＬＡＮ（Local Area Network）規格等の無線規格により互いに通信接続する（サーバ６００を介さずに通信接続する）ことで、複数台のユーザ端末８００によりローカルでマルチプレイを実現することもできる。１台のユーザ端末８００によりローカルで上述のマルチプレイを実現する場合、ユーザ端末８００は、さらに、サーバ６００が備える後述する種々の機能の少なくとも一部を備えていてもよい。また、複数のユーザ端末８００によりローカルで上述のマルチプレイを実現する場合、複数のユーザ端末８００は、サーバ６００が備える後述する種々の機能を分散して備えていてもよい。
【０１５３】
なお、ローカルで上述のマルチプレイを実現する場合であっても、ユーザ端末８００はサーバ６００と通信を行ってもよい。例えば、あるゲームにおける成績または勝敗等のプレイ結果を示す情報と、ユーザ識別情報とを対応付けてサーバ６００に送信してもよい。
【０１５４】
また、コントローラ１０２０は、ユーザ端末８００に着脱可能な構成であるとしてもよい。この場合、ユーザ端末８００の筐体における少なくともいずれかの面に、コントローラ１０２０との結合部が設けられていてもよい。該結合部を介して有線によりユーザ端末８００とコントローラ１０２０とが結合している場合は、ユーザ端末８００とコントローラ１０２０とは、有線を介して信号を送受信する。
【０１５５】
図１６に示すように、ユーザ端末８００は、外部のメモリカード等の記憶媒体１０３０の装着を、入出力ＩＦ８４０を介して受け付けてもよい。これにより、ユーザ端末８００は、記憶媒体１０３０に記録されるプログラム及びデータを読み込むことができる。記憶媒体１０３０に記録されるプログラムは、例えばゲームプログラムである。
【０１５６】
ユーザ端末８００は、サーバ６００等の外部の装置と通信することにより取得したゲームプログラムをユーザ端末８００のメモリ８２０に記憶してもよいし、記憶媒体１０３０から読み込むことにより取得したゲームプログラムをメモリ８２０に記憶してもよい。
【０１５７】
以上で説明したとおり、ユーザ端末８００は、該ユーザ端末８００に対して情報を入力する機構の一例として、通信ＩＦ８５０、入出力ＩＦ８４０、タッチスクリーン８７０、カメラ８６０、測距センサ８８０、およびスピーカ８９０を備える。入力する機構としての上述の各部は、ユーザ８の入力操作を受け付けるように構成された操作部と捉えることができる。
【０１５８】
例えば、操作部が、カメラ８６０および測距センサ８８０の少なくともいずれか一方で構成される場合、該操作部が、ユーザ端末８００の近傍の物体１０１０を検出し、当該物体の検出結果から入力操作を特定する。一例として、物体１０１０としてのユーザ８の手、予め定められた形状のマーカーなどが検出され、検出結果として得られた物体１０１０の色、形状、動き、または、種類などに基づいて入力操作が特定される。より具体的には、ユーザ端末８００は、カメラ８６０の撮影画像からユーザ８の手が検出された場合、該撮影画像に基づき検出されるジェスチャ（ユーザ８の手の一連の動き）を、ユーザ８の入力操作として特定し、受け付ける。なお、撮影画像は静止画であっても動画であってもよい。
【０１５９】
あるいは、操作部がタッチスクリーン８７０で構成される場合、ユーザ端末８００は、タッチスクリーン８７０の入力部８７０１に対して実施されたユーザ８の操作をユーザ８の入力操作として特定し、受け付ける。あるいは、操作部が通信ＩＦ８５０で構成される場合、ユーザ端末８００は、コントローラ１０２０から送信される信号（例えば、出力値）をユーザ８の入力操作として特定し、受け付ける。あるいは、操作部が入出力ＩＦ８４０で構成される場合、該入出力ＩＦ８４０と接続されるコントローラ１０２０とは異なる入力装置（図示せず）から出力される信号をユーザ８の入力操作として特定し、受け付ける。
【０１６０】
＜各装置のハードウェア構成要素＞
プロセッサ８１０は、ユーザ端末８００全体の動作を制御する。プロセッサ６１０は、サーバ６００全体の動作を制御する。プロセッサ２１０は、キャラクタ制御装置１１０Ｂ全体の動作を制御する。プロセッサ８１０、２０および３０は、ＣＰＵ（Central Processing Unit）、ＭＰＵ（Micro Processing Unit）、およびＧＰＵ（Graphics Processing Unit）を含む。
【０１６１】
プロセッサ８１０はストレージ８３０からプログラムを読み出し、メモリ８２０に展開する。プロセッサ６１０はストレージ６３０からプログラムを読み出し、メモリ６２０に展開する。プロセッサ２１０は後述するストレージ２３０からプログラムを読み出し、後述するメモリ２２０に展開する。プロセッサ８１０、プロセッサ６１０およびプロセッサ２１０は展開したプログラムを実行する。
【０１６２】
メモリ８２０、６２０および２２０は主記憶装置である。メモリ８２０、６２０および２２０は、ＲＯＭ（Read Only Memory）およびＲＡＭ（Random Access Memory）等の記憶装置で構成される。メモリ８２０は、プロセッサ８１０が後述するストレージ８３０から読み出したプログラムおよび各種データを一時的に記憶することにより、プロセッサ８１０に作業領域を提供する。メモリ８２０は、プロセッサ８１０がプログラムに従って動作している間に生成した各種データも一時的に記憶する。メモリ６２０は、プロセッサ６１０がストレージ６３０から読み出した各種プログラムおよびデータを一時的に記憶することにより、プロセッサ６１０に作業領域を提供する。メモリ６２０は、プロセッサ６１０がプログラムに従って動作している間に生成した各種データも一時的に記憶する。メモリ２２０は、プロセッサ２１０がストレージ２３０から読み出した各種プログラムおよびデータを一時的に記憶することにより、プロセッサ２１０に作業領域を提供する。メモリ２２０は、プロセッサ２１０がプログラムに従って動作している間に生成した各種データも一時的に記憶する。
【０１６３】
本実施形態においてプログラムとは、ゲームをユーザ端末８００により実現するためのゲームプログラムであってもよい。あるいは、該プログラムは、該ゲームをユーザ端末８００とサーバ６００との協働により実現するためのゲームプログラムであってもよい。あるいは、該プログラムは、該ゲームをユーザ端末８００とサーバ６００とキャラクタ制御装置１１０Ｂとの協働により実現するためのゲームプログラムであってもよい。なお、ユーザ端末８００とサーバ６００との協働により実現されるゲームおよびユーザ端末８００とサーバ６００とキャラクタ制御装置１１０Ｂとの協働により実現されるゲームは、一例として、ユーザ端末８００において起動されたブラウザ上で実行されるゲームであってもよい。あるいは、該プログラムは、該ゲームを複数のユーザ端末８００の協働により実現するためのゲームプログラムであってもよい。また、各種データとは、ユーザ情報およびゲーム情報などのゲームに関するデータ、ならびに、ゲームシステム１５００の各装置間で送受信する指示または通知を含んでいる。
【０１６４】
ストレージ８３０、６３０および２３０は補助記憶装置である。ストレージ８３０、６３０および２３０は、フラッシュメモリまたはＨＤＤ（Hard Disk Drive）等の記憶装置で構成される。ストレージ８３０、６３０および２３０には、ゲームに関する各種データが格納される。
【０１６５】
通信ＩＦ８５０は、ユーザ端末８００における各種データの送受信を制御する。通信ＩＦ６５０は、サーバ６００における各種データの送受信を制御する。通信ＩＦ２５０は、キャラクタ制御装置１１０Ｂにおける各種データの送受信を制御する。通信ＩＦ８５０、６５０および２５０は、例えば、無線ＬＡＮ（Local Area Network）を介する通信、有線ＬＡＮ、無線ＬＡＮ、または携帯電話回線網を介したインターネット通信、ならびに近距離無線通信等を用いた通信を制御する。
【０１６６】
入出力ＩＦ８４０は、ユーザ端末８００がデータの入力を受け付けるためのインターフェースであり、またユーザ端末８００がデータを出力するためのインターフェースである。入出力ＩＦ８４０は、ＵＳＢ（Universal Serial Bus）等を介してデータの入出力を行ってもよい。入出力ＩＦ８４０は、例えば、ユーザ端末８００の物理ボタン、カメラ、マイク、または、スピーカ等を含み得る。サーバ６００の入出力ＩＦ６４０は、サーバ６００がデータの入力を受け付けるためのインターフェースであり、またサーバ６００がデータを出力するためのインターフェースである。入出力ＩＦ６４０は、例えば、マウスまたはキーボード等の情報入力機器である入力部と、画像を表示出力する機器である表示部とを含み得る。キャラクタ制御装置１１０Ｂの入出力ＩＦ２４０は、キャラクタ制御装置１１０Ｂがデータの入力を受け付けるためのインターフェースであり、またキャラクタ制御装置１１０Ｂがデータを出力するためのインターフェースである。入出力ＩＦ２４０は、例えば、マウス、キーボード、スティック、レバー等の情報入力機器、液晶ディスプレイなどの画像を表示出力するディスプレイ４３０、および、周辺機器（ＨＭＤ１２０、ＨＭＤセンサ４１０、モーションセンサ４２０、コントローラ３００等）との間でデータを送受信するための接続部を含み得る。
【０１６７】
ユーザ端末８００のタッチスクリーン８７０は、入力部８７０１と表示部８７０２とを組み合わせた電子部品である入力部８７０１は、例えばタッチセンシティブなデバイスであり、例えばタッチパッドによって構成される。表示部８７０２は、例えば液晶ディスプレイ、または有機ＥＬ（Electro-Luminescence）ディスプレイ等によって構成される。
【０１６８】
入力部８７０１は、入力面に対しユーザ８の操作（主にタッチ操作、スライド操作、スワイプ操作、およびタップ操作等の物理的接触操作）が入力された位置を検知して、位置を示す情報を入力信号として送信する機能を備える。入力部８７０１は、図示しないタッチセンシング部を備えていればよい。タッチセンシング部は、静電容量方式または抵抗膜方式等のどのような方式を採用したものであってもよい。
【０１６９】
キャラクタ制御装置１１０Ｂのディスプレイ４３０は、ユーザ端末８００のタッチスクリーン８７０と同様に、入力部と表示部とを組み合わせたタッチスクリーンによって構成されていてもよい。
【０１７０】
図示していないが、ユーザ端末８００は、該ユーザ端末８００の保持姿勢を特定するための１以上のセンサを備えていてもよい。このセンサは、例えば、加速度センサ、または、角速度センサ等であってもよい。ユーザ端末８００がセンサを備えている場合、プロセッサ８１０は、センサの出力からユーザ端末８００の保持姿勢を特定して、保持姿勢に応じた処理を行うことも可能になる。例えば、プロセッサ８１０は、ユーザ端末８００が縦向きに保持されているときには、縦長の画像を表示部８７０２に表示させる縦画面表示としてもよい。一方、ユーザ端末８００が横向きに保持されているときには、横長の画像を表示部に表示させる横画面表示としてもよい。このように、プロセッサ８１０は、ユーザ端末８００の保持姿勢に応じて縦画面表示と横画面表示とを切り替え可能であってもよい。
【０１７１】
スピーカ８９０は、音声データに基づき音声を出力する。カメラ８６０は、イメージセンサ等を含み、レンズから入射する入射光を電気信号に変換することで撮影画像を生成する。
【０１７２】
測距センサ８８０は、測定対象物までの距離を測定するセンサである。測距センサ８８０は、例えば、パルス変換した光を発する光源と、光を受ける受光素子とを含む。測距センサ８８０は、光源からの発光タイミングと、該光源から発せられた光が測定対象物にあたって反射されて生じる反射光の受光タイミングとにより、測定対象物までの距離を測定する。測距センサ８８０は、指向性を有する光を発する光源を有することとしてもよい。
【０１７３】
ここで、ユーザ端末８００が、カメラ８６０と測距センサ８８０とを用いて、ユーザ端末８００の近傍の物体１０１０を検出した検出結果を、ユーザ８の入力操作として受け付ける例をさらに説明する。カメラ８６０および測距センサ８８０は、例えば、ユーザ端末８００の筐体の側面に設けられてもよい。カメラ８６０の近傍に測距センサ８８０が設けられてもよい。カメラ８６０としては、例えば赤外線カメラを用いることができる。この場合、赤外線を照射する照明装置および可視光を遮断するフィルタ等が、カメラ８６０に設けられてもよい。これにより、屋外か屋内かにかかわらず、カメラ８６０の撮影画像に基づく物体の検出精度をいっそう向上させることができる。
【０１７４】
プロセッサ８１０は、カメラ８６０の撮影画像に対して、例えば以下の（１）〜（５）に示す処理のうち１つ以上の処理を行ってもよい。（１）プロセッサ８１０は、カメラ８６０の撮影画像に対し画像認識処理を行うことで、該撮影画像にユーザ８の手が含まれているか否かを特定する。プロセッサ８１０は、上述の画像認識処理において採用する解析技術として、例えばパターンマッチング等の技術を用いてよい。（２）また、プロセッサ８１０は、ユーザ８の手の形状から、ユーザ８のジェスチャを検出する。プロセッサ８１０は、例えば、撮影画像から検出されるユーザ８の手の形状から、ユーザ８の指の本数（伸びている指の本数）を特定する。プロセッサ８１０はさらに、特定した指の本数から、ユーザ８が行ったジェスチャを特定する。例えば、プロセッサ８１０は、指の本数が５本である場合、ユーザ８が「パー」のジェスチャを行ったと判定する。また、プロセッサ８１０は、指の本数が０本である（指が検出されなかった）場合、ユーザ８が「グー」のジェスチャを行ったと判定する。また、プロセッサ８１０は、指の本数が２本である場合、ユーザ８が「チョキ」のジェスチャを行ったと判定する。（３）プロセッサ８１０は、カメラ８６０の撮影画像に対し、画像認識処理を行うことにより、ユーザ８の指が人差し指のみ立てた状態であるか、ユーザ８の指がはじくような動きをしたかを検出する。（４）プロセッサ８１０は、カメラ８６０の撮影画像の画像認識結果、および、測距センサ８８０の出力値等の少なくともいずれか１つに基づいて、ユーザ端末８００の近傍の物体１０１０（ユーザ８の手など）とユーザ端末８００との距離を検出する。例えば、プロセッサ８１０は、カメラ８６０の撮影画像から特定されるユーザ８の手の形状の大小により、ユーザ８の手がユーザ端末８００の近傍（例えば所定値未満の距離）にあるのか、遠く（例えば所定値以上の距離）にあるのかを検出する。なお、撮影画像が動画の場合、プロセッサ８１０は、ユーザ８の手がユーザ端末８００に接近しているのか遠ざかっているのかを検出してもよい。（５）カメラ８６０の撮影画像の画像認識結果等に基づいて、ユーザ８の手が検出されている状態で、ユーザ端末８００とユーザ８の手との距離が変化していることが判明した場合、プロセッサ８１０は、ユーザ８が手をカメラ８６０の撮影方向において振っていると認識する。カメラ８６０の撮影範囲よりも指向性が強い測距センサ８８０において、物体が検出されたりされなかったりする場合に、プロセッサ８１０は、ユーザ８が手をカメラの撮影方向に直交する方向に振っていると認識する。
【０１７５】
このように、プロセッサ８１０は、カメラ８６０の撮影画像に対する画像認識により、ユーザ８が手を握りこんでいるか否か（「グー」のジェスチャであるか、それ以外のジェスチャ（例えば「パー」）であるか）を検出する。また、プロセッサ８１０は、ユーザ８の手の形状とともに、ユーザ８がこの手をどのように移動させているかを検出する。また、プロセッサ８１０は、ユーザ８がこの手をユーザ端末８００に対して接近させているのか遠ざけているのかを検出する。このような操作は、例えば、マウスまたはタッチパネルなどのポインティングデバイスを用いた操作に対応させることができる。ユーザ端末８００は、例えば、ユーザ８の手の移動に応じて、タッチスクリーン８７０においてポインタを移動させ、ユーザ８のジェスチャ「グー」を検出する。この場合、ユーザ端末８００は、ユーザ８が選択操作を継続中であると認識する。選択操作の継続とは、例えば、マウスがクリックされて押し込まれた状態が維持されること、または、タッチパネルに対してタッチダウン操作がなされた後タッチされた状態が維持されることに対応する。また、ユーザ端末８００は、ユーザ８のジェスチャ「グー」が検出されている状態で、さらにユーザ８が手を移動させると、このような一連のジェスチャを、スワイプ操作（またはドラッグ操作）に対応する操作として認識することもできる。また、ユーザ端末８００は、カメラ８６０の撮影画像によるユーザ８の手の検出結果に基づいて、ユーザ８が指をはじくようなジェスチャを検出した場合に、当該ジェスチャを、マウスのクリックまたはタッチパネルへのタップ操作に対応する操作として認識してもよい。
【０１７６】
＜ゲーム概要＞
実施形態１に係るゲームシステム１５００が実行するゲーム（以下、本ゲーム）は、一例として、１以上のキャラクタを登場させて、そのキャラクタの少なくとも１つを動作させるゲームパートを含む。該ゲームに登場するキャラクタは、プレイヤキャラクタ（以下、ＰＣ）であってもよいし、ノンプレイヤキャラクタ（以下、ＮＰＣ）であってもよい。ＰＣは、ユーザ８が直接操作可能なキャラクタである。ＮＰＣは、ゲームプログラムおよび動作指図データにしたがって動作する、すなわち、ユーザ８が直接操作できないキャラクタである。以下では、両者を特に区別する必要がない場合には、総称として、“キャラクタ”を用いる。
【０１７７】
本ゲームは、キャラクタ制御装置１１０Ｂ及び複数のユーザ端末８００の間で仮想空間１１を共有し、キャラクタ制御装置１１０Ｂのユーザ５Ｂの操作に応じてアバターオブジェクト６Ｂが動作するライブ配信パートを含む。ここで、ユーザ５Ｂの操作とは、ユーザ５Ｂの動きに応じてＨＭＤ１２０、ＨＭＤセンサ４１０、モーションセンサ４２０、コントローラ３００を介して入力される情報を含む。また、ユーザ５Ｂの操作とは、ユーザ５Ｂによるコントローラ３００が有するボタンに対する操作を含む。その他、ユーザ５Ｂの操作とは、コンピュータ２００に接続された各種の入力装置（図示せず）を介して入力される操作を含んでいてもよい。
【０１７８】
本ゲームでは、仮想空間１１として、第１仮想空間１１_１、及び、第１仮想空間１１_１とは異なる第２仮想空間１１_２が提供される。第１仮想空間１１_１及び第２仮想空間１１_２の詳細については後述する。
【０１７９】
ライブ配信パートでは、例えば、キャラクタの動作を表す動作指図データが、ユーザ５Ｂの操作に応じてキャラクタ制御装置１１０Ｂで生成される。また、当該動作指図データが、本ゲームを実行中のユーザ端末８００に対して、該ユーザ端末８００以外の他の装置から、任意のタイミングで供給される。当該動作指図データは、例えば、キャラクタ制御装置１１０Ｂからサーバ６００を介してユーザ端末８００に供給されてもよい。ユーザ端末８００は、該動作指図データを受信したことをトリガにして、該動作指図データを解析する（レンダリングする）。ライブ配信パートとは、ユーザ端末８００が、上述の解析された動作指図データにしたがって動作するキャラクタを、ユーザ８にリアルタイムに提示するパートである。これにより、ユーザ８は、キャラクタが本当に存在するかのような現実感を覚えることができ、より一層ゲームの世界に没入して本ゲームに興じることができる。
【０１８０】
本ゲームは、複数のプレイパートで構成されていてもよい。この場合、１つのキャラクタが、あるパートでは、ＰＣであって、別のパートでは、ＮＰＣである、というように、パートごとにキャラクタの性質が異なっていてもよい。
【０１８１】
ゲームシステム１５００において実行されるゲームのジャンルは、特定のジャンルに限られない。ゲームシステム１５００は、あらゆるジャンルのゲームを実行し得る。例えば、テニス、卓球、ドッジボール、野球、サッカーおよびホッケーなどのスポーツを題材としたゲーム、パズルゲーム、クイズゲーム、ＲＰＧ（Role-Playing Game）、アドベンチャーゲーム、シューティングゲーム、シミュレーションゲーム、育成ゲーム、ならびに、アクションゲームなどであってもよい。
【０１８２】
また、本ゲームのプレイ形態は、特定のプレイ形態に限られない。ゲームシステム１５００は、あらゆるプレイ形態のゲームを実行し得る。例えば、単一のユーザ８によるシングルプレイゲーム、および、複数のユーザ８によるマルチプレイゲーム、また、マルチプレイゲームの中でも、複数のユーザ８が対戦する対戦ゲーム、および、複数のユーザ８が協力する協力プレイゲームなどであってもよい。
【０１８３】
なお、以下の説明において、本発明における配信端末、第１配信端末、第２配信端末を、一例として、キャラクタ制御装置、第１キャラクタ制御装置、第２キャラクタ制御装置とも記載している。また、本発明における配信者の一例としてユーザ５Ｂを適用し、本発明における第１配信者、第２配信者を、一例として、第１ユーザ、第２ユーザとも記載している。また、本発明における視聴端末を、一例として、ユーザ端末とも記載している。また、本発明における視聴者の一例としてユーザ８を適用している。また、本発明におけるアバターオブジェクト、第１アバターオブジェクト、第２アバターオブジェクトを、一例として、キャラクタ、第１キャラクタ、第２キャラクタとも記載している。また、本発明における第１ゲームパートを、一例として、ライブゲーム進行パートとも記載している。また、本発明における第２ゲームパートを、一例として、第３プレイパートとも記載している。また、本発明における第３ゲームパートを、一例として、ライブ配信パートとも記載している。また、本発明における動作情報を、一例として、動作指図データとも記載している。また、本発明における第１動作情報の一例として、ライブゲーム進行パートにおいて送受信される動作指図データを適用している。また、本発明における第１動作情報が示す動作を、一例として、第１動作又は第２動作とも記載している。また、本発明における第２動作情報の一例として、ライブ配信パートにおいて送受信される動作指図データを適用している。また、本発明における「現在の状態に関連付けられた第１条件」の一例として、第１ミニゲームにおける第１条件及び第２ミニゲームにおける第２条件を適用している。また、本発明における「視聴者の操作に基づく第２条件」の一例として、第３プレイパートにおける第３課題を適用している。また、本発明における「前記選択済みであることが認識可能な状態の前記第１ＵＩオブジェクトの組み合わせが第１条件」の一例として、第２ミニゲームの一例としてのビンゴゲームにおいてビンゴが成立するとの条件を適用している。また、本発明における「前記特定した選択肢オブジェクトと、前記視聴者によって選択された第１ＵＩオブジェクトとの組み合わせが第２条件」の一例として、第１ミニゲームの一例としてのジャンケンゲームにおけるジャンケンの勝敗に関わる条件を適用している。また、本発明における第１オブジェクトを、一例として、所定のオブジェクト又は進行ボタンオブジェクトとも記載している。また、本発明における第２オブジェクトを、一例として、「第１状態に応じた第１オブジェクト」、又は、「第２状態に応じた第２オブジェクト」とも記載している。また、本発明における第３オブジェクトを、一例として、第３オブジェクト又は第４オブジェクトとも記載している。
【０１８４】
＜ゲームシステム１５００の機能的構成＞
図１７は、ゲームシステム１５００に含まれるユーザ端末８００、サーバ６００およびキャラクタ制御装置１１０Ｂの機能的構成を示すブロック図である。ユーザ端末８００、サーバ６００およびキャラクタ制御装置１１０Ｂのそれぞれは、図示しない、一般的なコンピュータとして機能する場合に必要な機能的構成、および、ゲームにおける公知の機能を実現するために必要な機能的構成を含み得る。
【０１８５】
ユーザ端末８００は、ユーザ８の入力操作を受け付ける入力装置としての機能と、ゲームの画像や音声を出力する出力装置としての機能を有する。ユーザ端末８００は、プロセッサ８１０、メモリ８２０、ストレージ８３０、通信ＩＦ８５０、および入出力ＩＦ８４０等の協働によって、制御部８１００および記憶部８２００として機能する。
【０１８６】
サーバ６００は、各ユーザ端末８００と通信して、ユーザ端末８００がゲームを進行させるのを支援する機能を有する。例えば、ユーザ端末８００が本ゲームに係るアプリケーションを始めてダウンロードするときには、初回ゲーム開始時にユーザ端末８００に記憶させておくべきデータをユーザ端末８００に提供する。例えば、サーバ６００は、キャラクタを動作させるための動作指図データをユーザ端末８００に送信する。動作指図データは、予め、モデルなどのアクターの動きを取り込んだモーションキャプチャデータを含んでいてもよいし、声優などのアクターの音声を録音した音声データを含んでいてもよいし、キャラクタを動作させるための入力操作の履歴を示す操作履歴データを含んでいてもよいし、上述の一連の入力操作に対応付けられたコマンドを時系列に並べたモーションコマンド群を含んでいてもよい。本ゲームがマルチプレイゲームである場合には、サーバ６００は、ゲームに参加する各ユーザ端末８００と通信して、ユーザ端末８００同士のやりとりを仲介する機能および同期制御機能を有していてもよい。また、サーバ６００は、ユーザ端末８００とキャラクタ制御装置１１０Ｂとを仲介する機能を備えている。これにより、キャラクタ制御装置１１０Ｂは、適時に、宛先を誤ることなく、ユーザ端末８００または複数のユーザ端末８００のグループに対して動作指図データを供給することが可能となる。サーバ６００は、プロセッサ６１０、メモリ６２０、ストレージ６３０、通信ＩＦ６５０、および入出力ＩＦ６４０等の協働によって、制御部６１００および記憶部６２００として機能する。
【０１８７】
キャラクタ制御装置１１０Ｂは、ユーザ端末８００におけるキャラクタの動作を指示するための動作指図データを生成し、ユーザ端末８００に供給する機能を有する。キャラクタ制御装置１１０Ｂは、プロセッサ２１０、メモリ２２０、ストレージ２３０、通信ＩＦ２５０、および入出力ＩＦ２４０等の協働によって、制御部２１００（コントロールモジュール５１０、レンダリングモジュール５２０）および記憶部２２００（メモリモジュール５３０）として機能する。
【０１８８】
記憶部８２００は、ゲームプログラム８３１を格納する。記憶部６２００は、ゲームプログラム６３１を格納する。記憶部２２００は、ゲームプログラム２３１を格納する。ゲームプログラム８３１は、ユーザ端末８００が実行するゲームプログラムである。ゲームプログラム６３１は、サーバ６００が実行するゲームプログラムである。ゲームプログラム２３１は、キャラクタ制御装置１１０Ｂが実行するゲームプログラムである。ゲームプログラム８３１、６３１、２３１に基づいて各装置が協同して動作することにより、ゲームシステム１５００に係るゲームが実現される。なお、ゲームプログラム８３１、２３１は、記憶部６２００に格納され、記憶部８２００、２２００にそれぞれダウンロードされる構成でもよい。
【０１８９】
また、記憶部８２００、６２００および２２００は、それぞれ、ゲーム情報１３２およびユーザ情報１３３を格納する。ゲーム情報１３２は、制御部８１００、６１００および２１００が、ゲームプログラム８３１、６３１、２３１をそれぞれ実行する際に参照するデータである。ユーザ情報１３３は、ユーザ８のアカウントに関するデータである。記憶部６２００および２２００において、ゲーム情報１３２およびユーザ情報１３３は、ユーザ端末８００ごとに格納されている。
【０１９０】
（サーバ６００の機能的構成）
制御部６１００は、記憶部６２００に格納されたゲームプログラム６３１を実行することにより、サーバ６００を統括的に制御する。例えば、制御部６１００は、ユーザ端末８００に各種データおよびプログラム等を送信する。制御部６１００は、ゲーム情報もしくはユーザ情報の一部または全部をユーザ端末８００から受信する。ゲームがマルチプレイゲームである場合には、制御部６１００は、ユーザ端末８００からマルチプレイの同期の要求を受信して、同期のためのデータをユーザ端末８００に送信してもよい。また、制御部６１００は、必要に応じて、ユーザ端末８００およびキャラクタ制御装置１１０Ｂと通信して、情報の送受信を行う。
【０１９１】
制御部６１００は、ゲームプログラム６３１の記述に応じて、進行支援部６１０１および共有支援部６１０２として機能する。制御部６１００は、実行するゲームの性質に応じて、ユーザ端末８００におけるゲームの進行を支援するために、図示しないその他の機能ブロックとしても機能することができる。
【０１９２】
進行支援部６１０１は、ユーザ端末８００と通信し、ユーザ端末８００が、本ゲームに含まれる各種パートを進行するための支援を行う。例えば、進行支援部６１０１は、ユーザ端末８００が、ゲームを進行させるとき、該ゲームを進行させるために必要な情報をユーザ端末８００に提供する。
【０１９３】
共有支援部６１０２は、複数のユーザ端末８００及びキャラクタ制御装置１１０Ｂと通信し、これらの装置間でゲームの進行及び仮想空間１１を共有するための支援を行う。また、共有支援部６１０２は、オンラインのユーザ端末８００とキャラクタ制御装置１１０Ｂとをマッチングする機能を有していてもよい。これにより、ユーザ端末８００とキャラクタ制御装置１１０Ｂとの間の情報の送受信が円滑に実施される。
【０１９４】
（ユーザ端末８００の機能的構成）
制御部８１００は、記憶部８２００に格納されたゲームプログラム８３１を実行することにより、ユーザ端末８００を統括的に制御する。例えば、制御部８１００は、ゲームプログラム８３１およびユーザ８の操作にしたがって、ゲームを進行させる。また、制御部８１００は、ゲームを進行させている間、必要に応じて、サーバ６００およびキャラクタ制御装置１１０Ｂと通信して、情報の送受信を行う。
【０１９５】
制御部８１００は、ゲームプログラム８３１の記述に応じて、操作受付部８１０１、表示制御部８１０２、ユーザインターフェース（以下、ＵＩ）制御部１１３、アニメーション生成部８１０４、ゲーム進行部８１０５、仮想空間制御部８１０６、および進捗情報生成部８１０７として機能する。制御部８１００は、実行するゲームの性質に応じて、ゲームを進行させるために、図示しないその他の機能ブロックとしても機能することができる。
【０１９６】
操作受付部８１０１は、入力部８７０１に対するユーザ８の入力操作を検知し受け付ける。操作受付部８１０１は、タッチスクリーン８７０およびその他の入出力ＩＦ１４を介したコンソールに対してユーザ８が及ぼした作用から、いかなる入力操作がなされたかを判別し、その結果を制御部８１００の各要素に出力する。
【０１９７】
例えば、操作受付部８１０１は、入力部８７０１に対する入力操作を受け付け、該入力操作の入力位置の座標を検出し、該入力操作の種類を特定する。操作受付部８１０１は、入力操作の種類として、例えばタッチ操作、スライド操作、スワイプ操作、およびタップ操作等を特定する。また、操作受付部８１０１は、連続して検知されていた入力が途切れると、タッチスクリーン８７０から接触入力が解除されたことを検知する。
【０１９８】
ＵＩ制御部８１０３は、ＵＩを構築するために表示部８７０２に表示させるＵＩオブジェクトを制御する。ＵＩオブジェクトは、ユーザ８が、ゲームの進行上必要な入力をユーザ端末８００に対して行うためのツール、または、ゲームの進行中に出力される情報をユーザ端末８００から得るためのツールである。ＵＩオブジェクトは、これには限定されないが、例えば、アイコン、ボタン、リスト、メニュー画面などである。
【０１９９】
アニメーション生成部８１０４は、各種オブジェクトの制御態様に基づいて、各種オブジェクトのモーションを示すアニメーションを生成する。例えば、アニメーション生成部８１０４は、キャラクタがまるでそこにいるかのように動いたり、口を動かしたり、表情を変えたりする様子を表現したアニメーション等を生成してもよい。
【０２００】
表示制御部８１０２は、タッチスクリーン８７０の表示部８７０２に対して、上述の各要素によって実行された処理結果が反映されたゲーム画面を出力する。表示制御部８１０２は、アニメーション生成部８１０４によって生成されたアニメーションを含むゲーム画面を表示部８７０２に表示してもよい。また、表示制御部８１０２は、ＵＩ制御部８１０３によって制御される上述のＵＩオブジェクトを、該ゲーム画面に重畳して描画してもよい。
【０２０１】
仮想空間制御部８１０６は、キャラクタ制御装置１１０Ｂとの間で仮想空間１１を共有するための各種の制御を行う。図１８は、仮想空間制御部８１０６の詳細な構成を示す図である。図１８に示すように、仮想空間制御部８１０６は、仮想オブジェクト生成モジュール８１２１と、仮想カメラ制御モジュール８１２２と、アバターオブジェクト制御モジュール８１２４と、仮想オブジェクト制御モジュール８１２７とを含む。
【０２０２】
仮想オブジェクト生成モジュール８１２１は、図１４を参照して説明した仮想オブジェクト生成モジュール１４２１と同様に構成される。ここで、ユーザ端末８００において生成される仮想オブジェクトは、キャラクタ制御装置１１０Ｂにおいて生成される仮想オブジェクトに同期する。ただし、各仮想オブジェクトを同期するか否かは、仮想オブジェクト毎に定められていてもよい。例えば、キャラクタ制御装置１１０Ｂで生成された仮想オブジェクトのうち、ユーザ端末８００では生成されないものがあってもよい。また、キャラクタ制御装置１１０Ｂで生成された仮想オブジェクトのうち、ユーザ端末８００において異なる表示形態で生成されるものがあってもよい。表示形態とは、例えば、色、透明度等であってもよいが、これらに限られない。
【０２０３】
仮想カメラ制御モジュール８１２２は、図１４を参照して説明した仮想カメラ制御モジュール１４２２と同様に構成される。ここで、ユーザ端末８００Ａ、８００Ｃ、８００Ｄにおいて実現される仮想空間１１Ａ、１１Ｃ、１１Ｄに配置される仮想カメラ１４Ａ、１４Ｃ、１４Ｄは、キャラクタ制御装置１１０Ｂにおいて実現される仮想空間１１Ｂに配置される仮想カメラ１４Ｂとは異なるものである。つまり、キャラクタ制御装置１１０Ｂ及びユーザ端末８００間で共有される仮想空間１１の視野画像は、キャラクタ制御装置１１０Ｂ及びユーザ端末８００間で異なり得る。
【０２０４】
ユーザ端末８００Ａ、８００Ｃ、８００Ｄにおいて、仮想カメラ１４Ａ、１４Ｃ、１４Ｄの位置及び方向は、ユーザ８Ａ、８Ｃ、８Ｄによって操作可能であってもよいし、操作不能であってもよい。また、操作不能である場合、仮想カメラ１４Ａ、１４Ｃ、１４Ｄの位置及び方向は、同一であってもよい。この場合、複数のユーザ８は、各ユーザ端末８００を通して、共通の視野画像を視聴することになる。つまり、この場合、複数のユーザ８は、共通の仮想カメラで撮影された視野画像（ライブ映像）を視聴することができる。本実施形態では、仮想カメラ１４Ａ、１４Ｃ、１４Ｄの位置及び方向がユーザ８Ａ、８Ｃ、８Ｄによって操作不能であり、複数のユーザ８が共通の視野画像を視聴する例を中心に説明する。
【０２０５】
以降、キャラクタ制御装置１１０Ｂにおいて第１仮想空間１１_１に配置される仮想カメラ１４を、仮想カメラ１４_Ｂ１と記載し、第２仮想空間１１_２に配置される仮想カメラ１４を、仮想カメラ１４_Ｂ２と記載する。また、ユーザ端末８００Ａ、８００Ｃ、８００Ｄにおいて第１仮想空間１１_１に配置される仮想カメラ１４を、仮想カメラ１４_Ａ１と記載し、第２仮想空間１１_２に配置される仮想カメラ１４を、仮想カメラ１４_Ａ２と記載する。また、仮想カメラ１４_Ｂ１、１４_Ｂ２、１４_Ａ１、１４_Ａ２それぞれに基づく視野画像を、視野画像１４００_Ｂ１、１４００_Ｂ２、１４００_Ａ１、１４００_Ａ２と記載する。
【０２０６】
アバターオブジェクト制御モジュール８１２４は、図１４を参照して説明したアバターオブジェクト制御モジュール１４２４に対して、ＨＭＤ１２０の動き又はコントローラ３００の動きに応じて動作することに替えて、動作指図データに応じて動作する点が異なる他は、同様に構成される。動作指図データは、キャラクタ制御装置１１０ＢにおいてＨＭＤ１２０の動き又はコントローラ３００の動きに応じて生成され、ユーザ端末８００に配信される。
【０２０７】
仮想オブジェクト制御モジュール８１２７は、図１４を参照して説明した仮想オブジェクト制御モジュール１４２７に対して、動作指図データに応じて動作する点が異なる他は、同様に構成される。動作指図データは、キャラクタ制御装置１１０Ｂにおける仮想オブジェクトの挙動を表すようキャラクタ制御装置１１０Ｂにおいて生成され、ユーザ端末８００に配信される。
【０２０８】
このように、仮想空間制御部８１０６は、動作指図データを解析して（レンダリングして）、解析結果に基づいてアバターオブジェクト６Ｂ（第１キャラクタ、第２キャラクタ）又は仮想オブジェクトを動作させる。本実施形態では、仮想空間制御部８１０６は、キャラクタ制御装置１１０Ｂによって供給された動作指図データが通信ＩＦ３３を介して受信されたことをトリガにして、該データに基づいてアバターオブジェクト６Ｂ又は仮想オブジェクトを動作させる。これにより、リアルタイムで動作するキャラクタ及び仮想オブジェクトを、ユーザ８に見せることが可能となる。
【０２０９】
また、仮想空間制御部８１０６は、当該ユーザ端末８００を含む複数のユーザ端末８００及びキャラクタ制御装置１１０Ｂの間で共有される第１仮想空間１１_１に、アバターオブジェクト６Ｂと、仮想カメラ１４_Ａ１と、複数の選択肢を表す仮想オブジェクトとを配置する。
【０２１０】
また、仮想空間制御部８１０６は、複数のユーザ端末８００のうち所定条件が満たされたユーザ端末８００及びキャラクタ制御装置１１０Ｂの間で共有される第２仮想空間１１_２に、アバターオブジェクト６Ｂと、仮想カメラ１４_Ａ２とを配置する。本実施形態では、本発明において第２仮想空間１１_２に配置される第２キャラクタの一例として、第１空間に配置される第１キャラクタと同じアバターオブジェクト６Ｂを適用する例について説明する。なお、当該ユーザ端末８００が第２仮想空間１１_２を共有するのは、当該ユーザ端末８００において所定条件が満たされた場合である。所定条件の詳細については後述する。
【０２１１】
また、仮想空間制御部８１０６は、第１仮想空間１１_１に配置された仮想カメラ１４_Ａ１の設定に従った視野画像１４００_Ａ１（第１視野画像）を、表示部８７０２に表示する。
【０２１２】
また、仮想空間制御部８１０６は、第２仮想空間１１_２に配置された仮想カメラ１４_Ａ２の設定に従った視野画像１４００_Ａ２（第２視野画像）を、表示部８７０２に表示する。なお、当該ユーザ端末８００において、第２視野画像が表示されるのは、当該ユーザ端末８００において所定条件が満たされた場合である。
【０２１３】
つまり、第１仮想空間１１_１の第１視野画像は、複数のユーザ端末８００のユーザ８によって視聴可能であるのに対して、第２仮想空間１１_２の第２視野画像は、所定条件が満たされたユーザ端末８００のユーザ８によってのみ視聴可能である。
【０２１４】
以降、第１仮想空間１１_１の第１視野画像を視聴することを、第１仮想空間１１_１に参加する、とも記載する。また、第２仮想空間１１_２の第２視野画像を視聴することを、第２仮想空間１１_２に参加する、とも記載する。
【０２１５】
また、仮想空間制御部８１０６は、キャラクタ制御装置１１０Ｂのユーザ５Ｂの操作に基づいて、複数の選択肢の何れかを選択する動作をアバターオブジェクト６Ｂに行わせる。
【０２１６】
ゲーム進行部８１０５は、操作受付部８１０１を介して入力されるユーザ８の入力操作、及び、キャラクタ制御装置１１０Ｂのユーザ５Ｂによる入力操作の何れか又は両方に応じて、ゲームを進行させる。ゲーム進行部８１０５は、ゲームの進行中、１以上のキャラクタを登場させ、該キャラクタを動作させる。ゲーム進行部８１０５は、キャラクタを、ゲームプログラム８３１にしたがって動作させてもよいし、ユーザ８の入力操作にしたがって動作させてもよいし、キャラクタ制御装置１１０Ｂのユーザ５Ｂの操作に応じて生成される動作指図データにしたがって動作させてもよい。
【０２１７】
また、ゲーム進行部８１０５は、キャラクタ制御装置１１０Ｂのユーザ５Ｂの操作に応じて第１仮想空間１１_１においてアバターオブジェクト６Ｂが行う第１動作に基づいて、ゲームを第１状態で進行させる。第１動作及び第１状態の詳細については後述する。
【０２１８】
また、ゲーム進行部８１０５は、ユーザ５Ｂの操作に応じて第１仮想空間１１_１においてアバターオブジェクト６Ｂが行う所定の動作に基づいて、ゲームの進行を、第１状態から、当該第１状態と異なる第２状態に遷移させる。第２状態の詳細については後述する。
【０２１９】
所定の動作とは、例えば、所定の仮想オブジェクトを対象とする動作であってもよい。対象とする動作とは、例えば、押す、持つ、指し示す、回す、足で踏む等の動作であってもよいが、これに限られない。所定の仮想オブジェクトとは、例えば、押す動作の対象となるボタン型オブジェクト、回す動作の対象となるダイヤル型オブジェクト等であってもよいが、これらに限られない。
【０２２０】
また、ゲーム進行部８１０５は、ユーザ５Ｂの操作に応じて第１仮想空間１１_１においてアバターオブジェクト６Ｂが行う第２動作に基づいて、ゲームを第２状態で進行させる。第２動作の詳細については後述する。
【０２２１】
ここで、第１状態及び第２状態とは、例えば、進行しているゲームの種類に応じた状態であってもよい。例えば、第１状態及び第２状態とは、仮想空間１１の状態、表示部８７０２の状態、実行されるべきゲーム処理の適用状態等を含んでいてもよい。具体的には、仮想空間１１は、ゲームの種類に応じた仮想オブジェクトが配置された状態を有する。また、表示部８７０２は、ゲームの種類に応じたＵＩオブジェクトが表示された状態を有する。また、アバターオブジェクト６Ｂの動作又はＵＩオブジェクトに対する操作に応じて、ゲームの種類に応じたゲーム処理が適用される状態を有する。また、第１状態及び第２状態は、ゲームの進行に係るその他の状態を含んでいてもよい。
【０２２２】
以降、第１状態で進行するゲームを、第１ミニゲームとも記載し、第２状態で進行するゲームを、第２ミニゲームとも記載する。なお、本ゲームを進行させ得る状態の種類は、２つに限らず、３つ以上であってもよい。換言すると、本ゲームには、第１ミニゲーム、第２ミニゲームの他に、ミニゲームが含まれていてもよい。なお、第２ミニゲームは、本発明における第１プレイパートの一例に相当する。また、第１ミニゲームは、本発明における第２プレイパートの一例に相当する。
【０２２３】
第１ミニゲームには、ユーザ８のプレイによって満たすことが可能な第１条件が設定される。第１条件は、本発明における第２課題の一例に相当する。第２ミニゲームには、ユーザ８のプレイによって満たすことが可能な第２条件が設定される。第２条件は、本発明における第１課題の一例に相当する。各ミニゲームは、アバターオブジェクト６Ｂの動作と、ユーザ８の操作とに応じて進行する。
【０２２４】
また、第１動作及び第２動作とは、例えば、進行しているゲームの種類に応じたアバターオブジェクト６Ｂの動作であってもよい。例えば、第１ミニゲームがジャンケンゲームであれば、第１動作は、アバターオブジェクト６Ｂがグー・チョキ・パーに対応する仮想オブジェクトを選択する動作であってもよい。また、第２ミニゲームがビンゴゲームであれば、第２動作は、アバターオブジェクト６Ｂがビンゴボールに対応する仮想オブジェクトを選択する動作であってもよい。
【０２２５】
また、第１状態において、ゲームの種類に応じた第１動作は、複数種類あってもよい。例えば、第１状態において、仮想オブジェクトを選択するアバターオブジェクト６Ｂの動作と、勝敗を判定するための仮想ボタンを押すアバターオブジェクト６Ｂの動作とが、それぞれ第１動作とみなされてもよい。また、第２状態においても、ゲームの種類に応じた第２動作は、複数種類あってもよい。また、第１動作の何れかと、第２動作の何れかとが、同一の動作であってもよいし、異なる動作であってもよい。例えば、第１状態において、ゲームの勝敗を判定するための仮想ボタンを押す第１動作があり、第２状態において、ゲームの勝敗を判定するための仮想ボタンを押す第２動作があってもよい。
【０２２６】
また、ゲーム進行部８１０５は、アバターオブジェクト６Ｂが複数の選択肢の何れかを選択する動作に応じて、当該選択する動作による選択の結果に応じたゲーム処理を実行する。ここで、仮想空間１１には、複数の選択肢を表す仮想オブジェクトが配置されている。
【０２２７】
また、ゲーム進行部８１０５は、上述した所定条件が満たされなかった場合に、当該ユーザ端末８００のユーザ８によって入力される情報と、当該所定条件が満たされなかった他のユーザ端末８００のユーザ８によって入力された情報とを、第１視野画像と共に表示部８７０２に表示する。所定条件が満たされなかったユーザ端末８００の各ユーザ８によって入力される情報が表示されるパートを、以降、チャットパートとも記載する。
【０２２８】
進捗情報生成部８０１７は、ゲーム進行部８１０５が実行しているゲームの進捗を示す進捗情報を生成し、適時、サーバ６００またはキャラクタ制御装置１１０Ｂに送信する。進捗情報は、例えば、現在表示されているゲーム画面を指定する情報を含んでいてもよいし、ゲームの進捗を、時系列で文字および記号等によって示した進行ログを含んでいてもよい。ゲームシステム１５００において、サーバ６００およびキャラクタ制御装置１１０Ｂが進捗情報を必要としない実施形態では、進捗情報生成部８０１７は省略されてもよい。
【０２２９】
（キャラクタ制御装置１１０Ｂの機能的構成）
制御部２１００は、記憶部２２００に格納されたゲームプログラム２３１を実行することにより、キャラクタ制御装置１１０Ｂを統括的に制御する。例えば、制御部２１００は、ゲームプログラム２３１およびユーザ５Ｂの操作にしたがって、動作指図データを生成し、ユーザ端末８００に供給する。制御部２１００は、必要に応じて、さらにゲームプログラム２３１を実行してもよい。また、制御部２１００は、サーバ６００および本ゲームを実行中のユーザ端末８００と通信して、情報の送受信を行う。
【０２３０】
制御部２１００は、ゲームプログラム２３１の記述に応じて、操作受付部２１０１、表示制御部２１０２、ＵＩ制御部２１０３、アニメーション生成部２１０４、ゲーム進行部２１０５、仮想空間制御部２１０６、および反応処理部２１０７として機能する。制御部２１００は、ゲームシステム１５００において実行されるゲームの性質に応じて、該ゲームに登場するキャラクタを制御するために、図示しないその他の機能ブロックとしても機能することができる。
【０２３１】
操作受付部２１０１は、ユーザ５Ｂの入力操作を検知し受け付ける。入力操作は、例えば、ＨＭＤ１２０、モーションセンサ４２０、ディスプレイ４３０がタッチスクリーンである場合に表示部と一体に形成された入力部、マウス（図示せず）、キーボード（図示せず）等の各種の入力装置から、入出力ＩＦ３４を介して入力される。操作受付部２１０１は、ユーザ５Ｂが及ぼした作用から、いかなる入力操作がなされたかを判別し、その結果を制御部２１００の各要素に出力する。操作受付部２１０１の機能の詳細は、ユーザ端末８００における操作受付部８１０１のそれとほぼ同様である。
【０２３２】
ＵＩ制御部２１０３は、ＨＭＤ１２０又はディスプレイ４３０に表示させるＵＩオブジェクトを制御する。
【０２３３】
アニメーション生成部２１０４は、各種オブジェクトの制御態様に基づいて、各種オブジェクトのモーションを示すアニメーションを生成する。例えば、アニメーション生成部２１０４は、通信相手となるユーザ端末８００上実際に表示されているゲーム画面を再現したアニメーション等を生成してもよい。
【０２３４】
表示制御部２１０２は、ＨＭＤ１２０又はディスプレイ４３０に対して、上述の各要素によって実行された処理結果が反映された画像を出力する。
【０２３５】
ゲーム進行部２１０５は、ユーザ５Ｂによる入力操作に応じたアバターオブジェクト６Ｂと、ユーザ端末８００のユーザ８の操作とに基づいて、ゲームを進行する。例えば、ゲーム進行部２１０５は、アバターオブジェクト６Ｂが所定の動作を行った場合に、所定のゲーム処理を行う。また、例えば、ゲーム進行部２１０５は、ユーザ端末８００におけるユーザ８の操作を表す情報を受信し、当該ユーザ８の操作に基づいてゲーム処理を行う。
【０２３６】
また、ゲーム進行部２１０５は、ユーザ端末８００から受信するゲームの進捗を示す進捗情報に基づいて、ユーザ端末８００におけるゲームの進捗を把握する。そして、ゲーム進行部２１０５は、該ユーザ端末８００の挙動をキャラクタ制御装置１１０Ｂにおいて模擬的に再現することで、ユーザ５Ｂに対して、ユーザ端末８００の進捗を提示する。
【０２３７】
例えば、ゲーム進行部２１０５は、ユーザ端末８００で表示されているゲーム画面を再現したものを自装置の表示部３５２に表示してもよい。また、ゲーム進行部２１０５は、ユーザ端末８００において、ゲームの進捗を上述の進行ログとして表示部３５２に表示してもよい。
【０２３８】
また、ゲーム進行部２１０５の機能の一部は、制御部２１００がゲームプログラム２３１を実行することにより実現されてもよい。例えば、まずゲーム進行部２１０５は、進捗情報に基づいて、ユーザ端末８００のゲームの進捗を把握する。そして、ゲーム進行部２１０５は、ユーザ端末８００においてゲームプログラム８３１に基づき現在表示されている、ゲーム画面を、完全にまたは簡略化して自装置の表示部３５２に再現してもよい。あるいは、ゲーム進行部２１０５は、現時点のゲームの進捗を把握し、ゲームプログラム２３１に基づいて現時点以降のゲーム進行を予測し、予測結果を表示部３５２に出力してもよい。
【０２３９】
仮想空間制御部２１０６は、図１４を参照して説明したコントロールモジュール５１０のモジュール１４２１〜１４２７を含む。これらの詳細については、既に説明した通りである。
【０２４０】
仮想空間制御部２１０６は、ユーザ端末８００との間で仮想空間１１を共有するための各種の制御を行う。図１９は、仮想空間制御部２１０６の詳細な構成を示す図である。図１９に示すように、仮想空間制御部２１０６は、図１４を参照して説明したモジュール１４２１〜１４２７を含む。仮想空間制御部２１０６は、これらのモジュール１４２１〜１４２７の動作により、当該キャラクタ制御装置１１０Ｂにおいて、アバターオブジェクト６Ｂを動作させるとともに仮想オブジェクトの挙動を制御する。また、仮想空間制御部２１０６は、モジュール１４２１〜１４２７の動作に基づいて、ユーザ端末８００においてアバターオブジェクト６Ｂを動作させるための動作指図データ、各仮想オブジェクトの挙動を制御するための動作指図データを生成する。これらの動作指図データは、サーバ６００を介してユーザ端末８００に供給される。例えば、仮想空間制御部２１０６は、ユーザ５Ｂ（声優など）が、マイク１７０を介して入力した音声データに基づいて、制御対象のキャラクタに発言させることを指示する動作指図データを生成する。このようにして生成された動作指図データには、上述の音声データが少なくとも含まれる。また、例えば、ユーザ５Ｂ（モデルなど）が、モーションセンサ４２０を介して入力したモーションキャプチャデータに基づく動きを、制御対象のキャラクタに行わせることを指示する動作指図データを生成する。このようにして生成された動作指図データには、上述のモーションキャプチャデータが少なくとも含まれる。また、例えば、ユーザ５Ｂが、コントローラ３００などの入力機構またはタッチスクリーン、マウス、キーボード等の操作部を介して入力した入力操作の履歴、すなわち、操作履歴データに基づいて、制御対象のキャラクタを動作させることを指示する動作指図データを生成する。このようにして生成された動作指図データには、上述の操作履歴データが少なくとも含まれる。操作履歴データは、例えば、ＨＭＤ１２０にどの画面が表示されているときに、ユーザ５Ｂが、コントローラ３００のどのボタンをどのタイミングで押したのかを示す操作ログが時系列で整理されている情報である。あるいは、仮想空間制御部２１０６は、ユーザ５Ｂが上述の入力機構または操作部を介して入力した入力操作に対応付けられた、キャラクタの動作を指示するコマンドを特定する。そして、仮想空間制御部２１０６は、該コマンドを入力された順に並べてキャラクタの一連の動作を示すモーションコマンド群を生成し、該モーションコマンド群にしたがってキャラクタを動作させることを指示する動作指図データを生成してもよい。このようにして生成された動作指図データには、上述のモーションコマンド群が少なくとも含まれる。
【０２４１】
反応処理部２１０７は、ユーザ端末８００からユーザ８の反応についてフィードバックを受け付けて、これをキャラクタ制御装置１１０Ｂのユーザ５Ｂに対して出力する。本実施形態では、例えば、ユーザ端末８００は、上述の動作指図データにしたがってキャラクタを動作させている間、該キャラクタに宛てて、ユーザ８がコメントを作成することができる。反応処理部２１０７は、該コメントのコメントデータを受け付けて、これを、出力する。反応処理部２１０７は、ユーザ８のコメントに対応するテキストデータを、表示部３５２に表示してもよいし、ユーザ８のコメントに対応する音声データを、図示しないスピーカから出力してもよい。
【０２４２】
なお、図１７に示すユーザ端末８００、サーバ６００およびキャラクタ制御装置１１０Ｂの機能は一例にすぎない。ユーザ端末８００、サーバ６００およびキャラクタ制御装置１１０Ｂの各装置は、他の装置が備える機能の少なくとも一部を備えていてもよい。さらに、ユーザ端末８００、サーバ６００およびキャラクタ制御装置１１０Ｂ以外のさらに別の装置をゲームシステム１５００の構成要素とし、該別の装置にゲームシステム１５００における処理の一部を実行させてもよい。すなわち、本実施形態においてゲームプログラムを実行するコンピュータは、ユーザ端末８００、サーバ６００、キャラクタ制御装置１１０Ｂおよびそれ以外の別の装置の何れであってもよいし、これらの複数の装置の組み合わせにより実現されてもよい。
【０２４３】
なお、図１７に示すサーバ６００およびユーザ端末８００の機能は一例にすぎない。サーバ６００は、ユーザ端末８００が備える機能の少なくとも一部を備えていてもよい。また、ユーザ端末８００は、サーバ６００が備える機能の少なくとも一部を備えていてもよい。さらに、ユーザ端末８００およびサーバ６００以外の他の装置をゲームシステム１５００の構成要素とし、該他の装置にゲームシステム１５００における処理の一部を実行させてもよい。すなわち、本実施形態においてゲームプログラムを実行するコンピュータは、ユーザ端末８００、サーバ６００、および他の装置の何れであってもよいし、これらの複数の装置の組み合わせにより実現されてもよい。
【０２４４】
＜ゲームの構成＞
図２０は、本ゲームの基本的なゲーム進行についてその一例を示すフローチャートである。本ゲームは、３つのパートを含む。一例として、１つ目は、複数のユーザ端末８００によって参加可能なライブゲーム進行パートである。２つ目は、ライブゲーム進行パートに参加したユーザ端末８００のうち、所定条件を満たしたユーザ端末８００に配信されるライブ配信パートである。３つ目は、ライブゲーム進行パートに参加したユーザ端末８００のうち、所定条件を満たさないユーザ端末８００に提供されるチャットパートである。また、ライブゲーム進行パートは、上述した第１ミニゲーム（第１状態で進行するゲーム）及び第２ミニゲーム（第２状態で進行するゲーム）を含む。
【０２４５】
ステップＳ１において、ゲームシステム１５００は、ライブゲーム進行パートを進行する。ライブゲーム進行パートは、第１仮想空間１１_１において進行する。
【０２４６】
ステップＳ２において、ゲームシステム１５００は、ライブゲーム進行パートにおいて、第１ミニゲームを進行する。第１ミニゲームは、第１仮想空間１１_１におけるアバターオブジェクト６Ｂの動作と、ユーザ端末８００のユーザ８の操作とに基づいて進行する。第１ミニゲームでは、仮想オブジェクトが表す複数の選択肢の何れかを、アバターオブジェクト６Ｂが選択する第１動作に基づいて、当該第１動作による選択の結果に応じたゲーム処理が実行される。
【０２４７】
ステップＳ３において、ゲームシステム１５００は、第１仮想空間１１_１においてアバターオブジェクト６Ｂが所定の動作を行うと、第１ミニゲームを終了し、第２ミニゲームを開始する。つまり、ゲームの進行が、第１状態から第２状態に遷移する。
【０２４８】
ステップＳ４において、ゲームシステム１５００は、ライブゲーム進行パートにおいて、第２ミニゲームを進行する。第２ミニゲームは、第１仮想空間１１_１におけるアバターオブジェクト６Ｂの動作と、ユーザ端末８００のユーザ８の操作とに基づいて進行する。第２ミニゲームでは、仮想オブジェクトが表す複数の選択肢の何れかを、アバターオブジェクト６Ｂが選択する第２動作に基づいて、当該第２動作による選択の結果に応じたゲーム処理が実行される。
【０２４９】
ステップＳ５において、ゲームシステム１５００は、ライブゲーム進行パートで所定条件が満たされたか否かを判断する。具体的には、ゲーム進行部８１０５は、第２ミニゲームにおいて第２条件が満たされたか否かを判断してもよい。
【０２５０】
ステップＳ５でＹｅｓの場合、ステップＳ６において、ゲームシステム１５００は、第２仮想空間１１_２において、ライブ配信パートを進行する。第２仮想空間１１_２には、アバターオブジェクト６Ｂ（第２キャラクタ）が配置される。換言すると、ユーザ５Ｂの操作に応じて動作するアバターオブジェクト６Ｂが、第１仮想空間１１_１から第２仮想空間１１_２に移動して動作する。
【０２５１】
ステップＳ５でＮｏの場合、ステップＳ７において、ゲームシステム１５００は、ユーザ端末８００においてチャットパートを進行する。チャットパートは、キャラクタ制御装置１１０Ｂのユーザ５Ｂの操作によらずに進行するパートである。換言すると、チャットパートは、アバターオブジェクト６Ｂの動作によらずに進行する。チャットパートは、第１仮想空間１１_１の第１視野画像がユーザ端末８００に表示された状態で進行してもよい。
【０２５２】
＜処理概要＞
本実施形態では、ユーザ端末８００は、ゲームプログラム８３１に基づいて、以下のステップを実行するように構成されている。具体的には、第１配信者（ユーザ５Ｂ）がリアルタイム配信を行うための第１配信端末（キャラクタ制御装置１１０Ｂ）と、視聴端末（ユーザ端末８００）を含む複数の視聴端末との間で共有される第１仮想空間（第１仮想空間１１_１）に、第１配信者に対応する第１アバターオブジェクトと、第１仮想カメラとを配置するステップと、リアルタイム配信が行われる間、第１仮想カメラの視野領域を示す第１視野画像を表示部に表示するステップと、ゲームプログラムに基づくゲームに含まれる、複数の状態間を遷移しながら進行する第１ゲームパート（ライブゲーム進行パート）の状態ごとに、１つの状態におけるゲーム（第１ミニゲーム、第２ミニゲーム）を、第１配信者の身体の動き及び視聴者の操作に基づき進行させるゲーム処理を行うステップと、を実行させ、各状態におけるゲーム処理は、第１配信端末が第１配信者の身体の動きを検出して生成した、第１アバターオブジェクトの動作を示す第１動作情報を受信するステップと、第１動作情報が受信されたことに応答して、当該第１動作情報が示す動きを第１アバターオブジェクトが行うことを含むよう、第１視野画像を更新するステップと、第１動作情報が受信されたことに応答して、第１動作情報が示す動きが状態を遷移させるための動きであるか否かを判定するステップと、第１動作情報が示す動きが遷移させるための動きである場合に、第１ゲームパートの進行を、現在の状態から他の状態に遷移させるステップと、を含む。
【０２５３】
これにより、第１配信者の身体の動き及び前記視聴者の操作に基づき各状態が進行する第１ゲームパートにおいて、視聴者は、ゲームを進行させる第１アバターオブジェクトの遷移させるための動作によって、第１ゲームパートの状態が切り替わることを認識できる。したがって、臨場感が増し、ゲームへの没入感が高まる。
【０２５４】
また、ユーザ端末８００は、配信者（ユーザ５Ｂ）がリアルタイム配信を行うための配信端末（キャラクタ制御装置１１０Ｂ）と、視聴端末（ユーザ端末８００）を含む複数の視聴端末との間で共有される仮想空間に、配信者に対応するアバターオブジェクト（アバターオブジェクト６Ｂ）と、仮想カメラと、複数の選択肢オブジェクトとを配置するステップと、リアルタイム配信が行われる間、仮想カメラの視野領域を示す視野画像（視野画像１４００_Ａ１）を表示部に表示するステップと、リアルタイム配信が行われる間、視聴者の入力操作を受け付けるユーザインタフェース（ＵＩ）オブジェクトを、表示部に表示するステップと、配信端末が配信者の操作を検出して生成した、仮想空間に配置された複数の選択肢オブジェクトから一部を選択する、アバターオブジェクトの動作を示す動作情報を受信するステップと、動作情報が受信されたことに応答して、仮想空間に配置された複数の選択肢オブジェクトから一部を選択するアバターオブジェクトの動作を含むよう、視野画像を更新するステップと、動作情報が受信されたことに応答して、アバターオブジェクトにより選択された選択肢オブジェクトを特定するステップと、特定した選択肢オブジェクトに応じて、ＵＩオブジェクトの状態を変化させるステップと、を実行する。
【０２５５】
これにより、アバターオブジェクトが選択した選択肢に基づいて、視聴者のためのＵＩオブジェクトの状態が変化するので、アバターオブジェクトおよび視聴者の相互作用でゲームが進行していることを実感でき、臨場感が増す。したがって、臨場感が増し、ゲームへの没入感が高まる。
【０２５６】
なお、ユーザ端末８００は、配信者の動作に応じて、視聴端末の表示部に表示されたＵＩオブジェクトの状態を変化させるステップを実行してもよい。ＵＩオブジェクトの状態を変化させるとは、例えば、ＵＩオブジェクトを、操作可能状態及び操作不可能状態との間で変化させることであってもよいし、表示されていたＵＩオブジェクトを表示部から消去したり、表示されていなかったＵＩオブジェクトを表示部に新たに表示したりすることであってもよい。
【０２５７】
＜ライブゲーム配信パートの処理フロー＞
図２１は、ゲームシステム１５００を構成する各装置によって実行される、ライブゲーム進行パートにおける処理の流れを表すフローチャートである。なお、以降の図面に示すフローチャートにおいて、左図は、キャラクタ制御装置１１０Ｂの動作を表し、右図は、ユーザ端末８００Ａの動作を表し、左右を結ぶ破線の矢印は、データの流れを表す。なお、キャラクタ制御装置１１０Ｂ及びユーザ端末８００Ａ間で送受信されるデータは、サーバ６００を介して行われるものとする。以降、キャラクタ制御装置１１０Ｂがサーバ６００を介してユーザ端末８００Ａに情報を送信することを、単に、キャラクタ制御装置１１０Ｂがユーザ端末８００Ａに情報を送信する、と記載する。また、ユーザ端末８００Ａがサーバ６００を介してキャラクタ制御装置１１０Ｂに情報を送信することを、単に、ユーザ端末８００Ａがキャラクタ制御装置１１０Ｂに情報を送信する、と記載する。また、以降の説明において、ユーザ端末８００Ｃ、８００Ｄに係る説明は、ユーザ端末８００Ａに係る記載において各参照符号の末尾のＡをＣ、Ｄと読み替えることにより、同様に説明される。
【０２５８】
ステップＳ１０１において、キャラクタ制御装置１１０Ｂの仮想空間制御部２１０６は、第１仮想空間１１_１を表す第１仮想空間データに基づいて、第１仮想空間１１_１Ｂを規定する。第１仮想空間１１_１Ｂは、キャラクタ制御装置１１０Ｂにおいて実現される仮想空間である。第１仮想空間データは、例えば、サーバ６００から供給される。ステップＳ１０１は、所定の配信開始時刻以降に、ユーザ５Ｂによる配信開始を指示する操作に応じて実行されてもよい。
【０２５９】
ステップＳ２０１において、ユーザ端末８００Ａの仮想空間制御部８１０６は、第１仮想空間１１_１を表す第１仮想空間データに基づいて、第１仮想空間１１_１Ａを規定する。第１仮想空間１１_１Ａは、ユーザ端末８００Ａにおいて実現される仮想空間である。第１仮想空間データは、例えば、サーバ６００から供給される。ステップＳ２０１は、所定の配信開始時刻に、ユーザ８Ａによる視聴開始を指示する操作に基づいて実行されてもよい。
【０２６０】
なお、所定の配信開始時刻は、あらかじめ、サーバ６００からキャラクタ制御装置１１０Ｂ及びユーザ端末８００Ａに通知されていてもよい。また、所定の配信開始時刻は、キャラクタ制御装置１１０Ｂからユーザ端末８００Ａに通知されていてもよい。
【０２６１】
ステップＳ１０２において、仮想空間制御部２１０６は、第１仮想空間１１_１Ｂに、仮想カメラ１４_Ｂ１を配置する。仮想カメラ１４_Ｂ１による視野画像１４００_Ｂ１は、アバターオブジェクト６Ｂから見た第１仮想空間１１_１Ｂの視野画像である。
【０２６２】
ステップＳ２０２において、仮想空間制御部８１０６は、第１仮想空間１１_１Ａに、仮想カメラ１４_Ａ１を配置する。仮想カメラ１４_Ａ１は、第１仮想空間１１_１Ａにおいてアバターオブジェクト６Ｂが存在し得る領域を視認可能な位置及び方向に配置される。例えば、第１仮想空間１１_１において前方と規定された領域にアバターオブジェクト６Ｂが存在し得るとすると、仮想カメラ１４_Ａ１は、第１仮想空間１１_１の後方に、前方に向かう方向で配置されてもよい。仮想カメラ１４_Ａ１による視野画像１４００_Ａ１は、第１仮想空間１１_１Ａにおいてアバターオブジェクト６Ｂの動作を視聴するのに好適な視野画像であり、本発明における第１視野画像の一例に相当する。
【０２６３】
ステップＳ１０３において、仮想空間制御部２１０６は、第１仮想空間１１_１Ｂに、アバターオブジェクト６Ｂ及び所定のオブジェクト（進行ボタンオブジェクト）を配置する。進行ボタンオブジェクトは、上述した所定の仮想オブジェクトの一例である。
【０２６４】
ステップＳ１０４において、仮想空間制御部２１０６は、ユーザ端末８００Ａに対して、アバターオブジェクト６Ｂ及び進行ボタンオブジェクトを表す情報を送信する。
【０２６５】
ステップＳ２０３において、仮想空間制御部８１０６は、受信した情報に基づいて、第１仮想空間１１_１Ａに、アバターオブジェクト６Ｂ及び所定の仮想オブジェクトを配置する。ここでは、所定の仮想オブジェクトとして、押下する動作の対象となる進行ボタンオブジェクトが配置されるものとする。これにより、ユーザ端末８００Ａ及びキャラクタ制御装置１１０Ｂ間で、アバターオブジェクト６Ｂ及び進行ボタンオブジェクトが同期して配置される。
【０２６６】
ステップＳ１０５において、仮想空間制御部２１０６は、ＨＭＤ１２０の動きに応じて変化する仮想カメラ１４_Ｂ１の位置及び方向に基づいて、視野画像１４００_Ｂ１を表示し、更新する。以降のステップにおいて、視野画像１４００_Ｂ１の更新は、ＨＭＤ１２０の動きに応じて継続して実行されるものとする。
【０２６７】
ステップＳ２０４において、仮想空間制御部８１０６は、仮想カメラ１４_Ａ１の位置及び方向に基づいて、視野画像１４００_Ａ１を表示し、更新する。以降のステップにおいても、視野画像１４００_Ａ１の更新は、アバターオブジェクト６Ｂの動作及び各仮想オブジェクトの挙動に応じて継続して実行されるものとする。
【０２６８】
ステップＳ１０６において、仮想空間制御部２１０６は、ユーザ５Ｂの動きに応じてアバターオブジェクト６Ｂの動作を制御する。
【０２６９】
ステップＳ１０７において、仮想空間制御部２１０６は、アバターオブジェクト６Ｂの動作を表す動作指図データを、ユーザ端末８００Ａに送信する。
【０２７０】
ステップＳ２０５において、仮想空間制御部８１０６は、受信した動作指図データに基づいて、アバターオブジェクト６Ｂの動作を制御する。
【０２７１】
なお、ステップＳ１０６、Ｓ１０７、Ｓ２０５の一連の処理は、以降のステップにおいても、継続して実行されるものとする。
【０２７２】
ステップＳ１０８及びステップＳ２０６において、ゲーム進行部２１０５及びゲーム進行部８１０５は、互いに必要となる情報を送受信しながら、第１ミニゲームを進行する。第１ミニゲームを進行する処理の流れの詳細については後述する。
【０２７３】
ステップＳ１０９において、ゲーム進行部２１０５は、ユーザ５Ｂの動きに応じてアバターオブジェクト６Ｂが所定の動作を行ったか否かを判断する。所定の動作とは、上述したように、仮想オブジェクトを対象とする動作であり、ここでは、操作オブジェクトを進行ボタンオブジェクトに接触させる動作である。例えば、進行ボタンオブジェクトを押下する動作であってもよい。当該ステップは、Ｙｅｓと判断されるまで繰り返し実行される。ステップＳ１０９でＹｅｓの場合、次のステップＳ１１０の処理が実行される。
【０２７４】
ステップＳ１１０において、仮想空間制御部２１０６は、所定の動作を表す動作指図データを、ユーザ端末８００Ａに送信する。
【０２７５】
ステップＳ２０７において、仮想空間制御部８１０６は、受信した動作指図データに基づいて、アバターオブジェクト６Ｂに所定の動作をさせる。ここでは、アバターオブジェクト６Ｂは、進行ボタンオブジェクトを押す動作を行う。
【０２７６】
これにより、アバターオブジェクト６Ｂの所定の動作に応じて、ゲームの進行は、第１ミニゲームから第２ミニゲームに遷移する。
【０２７７】
ステップＳ１１２及びＳ２０８において、ゲーム進行部２１０５及びゲーム進行部８１０５は、互いに必要となる情報を送受信しながら、第２ミニゲームを進行する。第２ミニゲームを進行する処理の流れの詳細については後述する。
【０２７８】
＜キャラクタ制御装置１１０Ｂにおける第１仮想空間１１_１Ｂ＞
図２２は、キャラクタ制御装置１１０Ｂにおいて、ステップＳ１０１〜Ｓ１０７が実行されることにより実現される第１仮想空間１１_１Ｂ及び視野画像１４００_Ｂ１の一例を模式的に示す図である。図２２（Ａ）では、第１仮想空間１１_１に、アバターオブジェクト６Ｂ、仮想カメラ１４_Ｂ１、および進行ボタンオブジェクト２２４１が少なくとも配置される。ユーザ５Ｂ（第１ユーザ）は、頭部にＨＭＤ１２０を装着している。ユーザ５Ｂは、ユーザ５Ｂの身体の右側の一部を構成する右手（第１部位）で右コントローラ３００Ｒを把持し、ユーザ５Ｂの身体の左側の一部を構成する左手（第２部位）で左コントローラ３００Ｌを把持している。
【０２７９】
ＨＭＤ１２０は、モーションセンサとして機能するセンサ１９０を備える。右コントローラ３００ＲＢおよび左コントローラ３００ＬＢは、モーションセンサ４２０を備える。ユーザ５Ｂは、さらに、モーションセンサ１８４１〜１８４３を装着している。モーションセンサ１８４１は、ベルト１８４４によってユーザ５Ｂの腰部に装着されている。モーションセンサ１８４２は、ユーザ５Ｂの右足の甲に装着されている。モーションセンサ１８４３は、ユーザ５Ｂのユーザ５Ｂの左足の甲に装着されている。モーションセンサ１８４１〜１８４３は、有線または無線によってコンピュータ２００に接続されている。
【０２８０】
ある局面において、ユーザ５Ｂに装着されるモーションセンサは、ベースステーション（図示しない）から照射される信号（例えば赤外線レーザ）の到達時間と角度とを検出する。コンピュータ２００のプロセッサ２１０（以下、単にプロセッサ２１０）は、モーションセンサの検出結果に基づいて、ベースステーションに対するモーションセンサの位置を検出する。プロセッサ２１０は、さらに、ベースステーションに対するモーションセンサの位置を、所定点（例えば頭部に装着されたセンサ１９０の位置）を基準として規格化してもよい。
【０２８１】
アバターオブジェクト６Ｂは、仮想右手１８３１ＲＢおよび仮想左手１８３１ＬＢを含む。仮想右手１８３１ＲＢは操作オブジェクトの一種であり、ユーザ５Ｂの右手の動きに応じて第１仮想空間１１_１Ｂにおいて動くことができる。仮想左手１８３１ＬＢは操作オブジェクトの一種であり、ユーザ５Ｂの左手の動きに応じて第１仮想空間１１_１Ｂにおいて動くことができる。
【０２８２】
図２２（Ａ）に示す第１仮想空間１１_１は、コンピュータ２００において番組コンテンツが再生されることによって、構築される。ユーザ５Ｂは、アバターオブジェクト６Ｂにパフォーマンスを実行させるために、自身の身体を動かす。コンピュータ２００は、ユーザ５Ｂに装着される各種のモーションセンサの出力に基づいて、ユーザ５Ｂの動きを検出する。第１仮想空間１１_１において、アバターオブジェクト６Ｂは、特定されたユーザ５Ｂの動きに応じて、現実空間におけるユーザ５Ｂの動きが反映されたパフォーマンスを実行する。第１仮想空間１１_１においてアバターオブジェクト６Ｂがユーザ５Ｂに動きに応じたパフォーマンスを実行すると、ユーザ端末８００Ａにおいて実現される第１仮想空間１１_１Ａにおいても、アバターオブジェクト６Ｂが同期して同じパフォーマンスを実行する。このように、ユーザ５Ｂは、アバターオブジェクト６Ｂによる番組として、複数のユーザ端末８００Ａのユーザ８Ａにライブゲーム進行パートをそれぞれ配信する配信者としての役割を有する。
【０２８３】
図２２（Ａ）において、仮想カメラ１４_Ｂ１は、アバターオブジェクト６Ｂの頭部に配置される。仮想カメラ１４_Ｂ１は、仮想カメラ１４_Ｂ１の位置および向きに応じた視界領域１５_１１を規定する。仮想カメラ１４_Ｂ１は、視界領域１５Ｂに対応する視界画像１４００_Ｂ１を生成して、図２１（Ｂ）に示すようにＨＭＤ１２０に表示させる。ユーザ５Ｂは、視界画像１４００_Ｂ１を視認することによって、アバターオブジェクト６Ｂの視点で第１仮想空間１１_１Ｂの一部を視認する。これにより、ユーザ５Ｂは、あたかもユーザ５Ｂ自身がアバターオブジェクト６Ｂであるかのような仮想体験を、得ることができる。視界画像１４００_Ｂ１には、進行ボタンオブジェクト２２４１が含まれる。したがって、ユーザ５Ｂは、ライブゲーム進行パートにおいて進行を進めるために必要な進行ボタンオブジェクトを視認できる。
【０２８４】
＜ユーザ端末８００における第１仮想空間１１_１Ａ＞
図２３は、ユーザ端末８００において、ステップＳ２０１〜Ｓ２０５が実行されることにより実現される第１仮想空間１１_１Ａ及び視野画像１４００_Ａ１の一例を模式的に示す図である。図２３（Ａ）では、第１仮想空間１１_１Ａに、アバターオブジェクト６Ｂ、仮想カメラ１４_Ａ１、および進行ボタンオブジェクト２２４１が少なくとも配置される。第１仮想空間１１_１Ａは、図２２に示した第１仮想空間１１_１Ｂに同期している。ユーザ８Ａは、左手にユーザ端末８００Ａを把持している。図２３の例では、ユーザ８は、アバターオブジェクト６Ｂが実演する番組であるライブゲーム進行パートを、ユーザ端末８００Ａの画面を視認しながら視聴する。
【０２８５】
図２３（Ａ）に示す第１仮想空間１１_１Ａは、ユーザ端末８００Ａにおいて番組コンテンツが再生されることによって、構築される。第１仮想空間１１_１Ａにおいて、アバターオブジェクト６Ｂは、ユーザ５Ｂの動きに基づいて、ライブゲーム進行パートの配信者としてパフォーマンスを実行する。ユーザ８Ａは、ユーザ端末８００Ａの画面を通じて、ライブゲーム進行パートの参加者としてアバターオブジェクト６Ｂのパフォーマンスを視聴する。また、ユーザ８Ｃ、８Ｄは、ユーザ端末８００Ｃ、８００Ｄの画面を通じて、ライブゲーム進行パートの参加者としてアバターオブジェクト６Ｂのパフォーマンスを視聴する。このように、アバターオブジェクト６Ｂによって進行するライブゲーム進行パートは、複数のユーザ８に対して同時にストリーミング配信される。
【０２８６】
図２３（Ａ）において、第１仮想空間１１_１Ａの後方に、仮想カメラ１４_Ａ１が配置される。仮想カメラ１４_Ａ１は、仮想カメラ１４_Ａ１の位置および向きに応じた視界領域１５Ａを規定する。プロセッサ８１０は、視界領域１５Ａに対応する視界画像１４００_Ａ１を生成して、図２３（Ｂ）に示すように、タッチスクリーン８７０の表示部８７０２に表示する。視界画像１４００_Ａ１には、パフォーマンスを実行するアバターオブジェクト６Ｂが少なくとも含まれる。ユーザ８Ａは、視界画像１４００_Ａ１を視認することによって、アバターオブジェクト６Ｂと、アバターオブジェクト６Ｂが登場する第１仮想空間１１_１Ａの一部とを、視認する。これにより、ユーザ８Ａは、あたかもアバターオブジェクト６Ｂが実際の配信者であるかのような仮想体験を、得ることができる。
【０２８７】
＜第１ミニゲームの処理フロー＞
図２４は、ゲームシステム１５００を構成する各装置によって実行される、第１ミニゲームにおける処理の流れを表すフローチャートである。図２４に示す処理の流れは、図２１に示したステップＳ１０８及びＳ２０６における処理の詳細に相当する。
【０２８８】
ここでは、第１ミニゲームとして、ジャンケンゲームが適用されていることを想定する。また、第１ミニゲームでは、第１条件が設定されている。第１条件とは、ユーザ８Ａが、アバターオブジェクト６Ｂにジャンケンで勝利することである。
【０２８９】
なお、以下に説明するように、第１条件（第２課題）が設定された第１ミニゲーム（第２プレイパート）は、後述する第２ミニゲーム（第１プレイパート）が開始する前に、キャラクタ制御装置１１０Ｂのユーザ５Ｂの操作に応じてアバターオブジェクト６Ｂが行う動作に基づいて進行する。
【０２９０】
ステップＳ３０１において、キャラクタ制御装置１１０Ｂの仮想空間制御部２１０６は、第１仮想空間１１_１Ｂに、本発明における第３オブジェクトと、複数の選択肢を表す仮想オブジェクトとを配置する。
【０２９１】
ここで、第３オブジェクトは、第１状態に関する情報を表す仮想オブジェクトである。例えば、第３オブジェクトは、当該情報を表示可能な仮想パネル、仮想ディスプレイ、仮想黒板、仮想電光掲示板等であってもよいが、これらに限られない。本実施形態では、第３オブジェクトとして、仮想パネルを表すパネルオブジェクトが配置されるものとする。
【０２９２】
パネルオブジェクトには、第１状態に関する情報として、第１ミニゲームに関する情報が表示される。第１ミニゲームに関する情報とは、例えば、第１ミニゲームのルール説明、第１ミニゲームで設定される第１条件、第１条件を満たすことにより得られる報酬等に関する情報を含んでいてもよいが、これらに限られない。
【０２９３】
また、ここでは、複数の選択肢を表す仮想オブジェクトとして、選択肢の各々を表す仮想オブジェクトが配置される。具体的には、ジャンケンのグー・チョキ・パーのそれぞれに対応する選択肢オブジェクトが配置される。この例では、１つの選択肢オブジェクトが１つの選択肢に対応し、選択肢の個数（ここでは３個）の選択肢オブジェクトが配置される。
【０２９４】
ステップＳ３０２において、仮想空間制御部２１０６は、パネルオブジェクト及び３個の選択肢オブジェクトの情報を、ユーザ端末８００Ａに送信する。
【０２９５】
ステップＳ４０１において、ユーザ端末８００Ａの仮想空間制御部８１０６は、受信した情報に基づいて、第１状態に応じた第１オブジェクト（ここでは、パネルオブジェクト及び３個の選択肢オブジェクト）を、第１仮想空間１１_１Ａに配置する。また、仮想空間制御部８１０６は、第１オブジェクトを対象とするアバターオブジェクト６Ｂの動作を、第１動作として適用する。
【０２９６】
ステップＳ４０２において、ゲーム進行部８１０５は、第１ＵＩオブジェクトを、表示部８７０２に表示する。
【０２９７】
ここで、第１ＵＩオブジェクトは、第１状態に応じたＵＩオブジェクトである。具体的には、第１ＵＩオブジェクトは、第１ミニゲームにおいてユーザ８Ａからの操作を受け付けるユーザインタフェースオブジェクトである。ここでは、ジャンケンのグー・チョキ・パーの選択肢のそれぞれに対応する３個のＵＩボタンが表示される。３個のＵＩボタンは、操作可能な状態と、操作不能な状態とを有し、初期状態では、操作不能な状態であってもよい。ただし、第１ＵＩオブジェクトは、ＵＩボタンに限らず、その他のＵＩオブジェクトであってよい。
【０２９８】
ステップＳ３０３において、仮想空間制御部２１０６は、ユーザ５Ｂの動きに応じて、アバターオブジェクト６Ｂに、第１ＵＩオブジェクトの操作をユーザ８Ａに対して促す動作をさせる。
【０２９９】
ステップＳ３０４において、仮想空間制御部２１０６は、アバターオブジェクト６Ｂの動作を表す動作指図データを、ユーザ端末８００Ａに送信する。
【０３００】
ステップＳ４０３において、仮想空間制御部８１０６は、受信した動作指図データに基づいて、アバターオブジェクト６Ｂに当該促す動作をさせる。
【０３０１】
ステップＳ４０４において、ゲーム進行部８１０５は、アバターオブジェクト６Ｂの第１動作に基づいて、第１条件の少なくとも一部を満たすための第１処理を実行する。
【０３０２】
ここでは、ゲーム進行部８１０５は、アバターオブジェクト６Ｂの促す動作に応じて、第１ＵＩオブジェクトを操作可能な状態にするとの第１処理を実行する。ジャンケンに勝利するとの第１条件を満たすためには、少なくとも第１ＵＩオブジェクトである３個のＵＩボタンが操作可能となる必要があるため、当該第１処理が実行される。そして、ゲーム進行部８１０５は、第１ＵＩオブジェクトに対するユーザの操作を受け付ける。ここでは、３個のＵＩボタンの何れかに対する操作が受け付けられる。
【０３０３】
ステップＳ３０５において、仮想空間制御部２１０６は、ユーザ５Ｂの動きに応じて、アバターオブジェクト６Ｂに、３個の選択肢オブジェクトの何れかを選択する動作をさせる。選択する動作とは、例えば、選択肢オブジェクトを持つ、指差す、回転させる、又はこれらの動作を含む各種動作を組み合わせた動作であってもよい。
【０３０４】
ステップＳ３０６において、仮想空間制御部２１０６は、アバターオブジェクト６Ｂの動作を表す動作指図データを、ユーザ端末８００Ａに送信する。
【０３０５】
ステップＳ４０５において、仮想空間制御部８１０６は、受信した動作指図データに基づいて、アバターオブジェクト６Ｂに当該選択する動作をさせる。
【０３０６】
ステップＳ４０６において、ゲーム進行部８１０５は、アバターオブジェクト６Ｂの選択する動作に応じて、第１ＵＩオブジェクトを操作不能な状態にする処理を実行する。本ステップは、「後出し」となる操作を受け付けないための処理である。
【０３０７】
ステップＳ４０７において、ゲーム進行部８１０５は、第１ミニゲームの結果を判定する。本実施形態では、ゲーム進行部８１０５は、ユーザ５Ｂとユーザ８との間でジャンケンの勝敗を判定する。ここでは、ユーザ８によって操作されたＵＩボタンが示す選択肢と、アバターオブジェクト６Ｂによって選択された選択肢オブジェクトが示す選択肢とが比較されて、勝敗が判定される。
【０３０８】
ステップＳ４０７において、負けたと判定された場合、次のステップＳ４０８の処理が省略され、後述のステップＳ４０９の処理が実行される。ステップＳ４０７において、勝ったと判定された場合、次のステップＳ４０８の処理が実行される。
【０３０９】
ステップＳ４０８において、ゲーム進行部８１０５は、第１ミニゲーム（第２プレイパート）における第１条件（第２課題）の達成度が大きいほど、ゲーム処理として、第２ミニゲーム（第１プレイパート）における第２条件（第１課題）を満たす上でより有利な処理を実行する。
【０３１０】
具体的には、ゲーム進行部８１０５は、第２ミニゲームを有利に進める権利を表す情報をユーザに関連付けてメモリ８２０に記憶させる。
【０３１１】
ステップＳ４０９において、ゲーム進行部８１０５は、第１ミニゲームの結果を、キャラクタ制御装置１１０Ｂに送信する。ここでは、ジャンケンの結果が送信される。
【０３１２】
ステップＳ３０７において、キャラクタ制御装置１１０Ｂのゲーム進行部２１０５は、各ユーザ８Ａの第１ミニゲームの結果を表す情報を、ＨＭＤ１２０に表示する。結果を表す情報は、例えば、視野画像１４００_Ｂ１に重畳して表示されてもよい。ここでは、各ユーザのジャンケンの結果を表す情報が表示される。各ユーザのジャンケンの結果を表す情報は、勝った人数、負けた人数、アイコの人数等を表す集計情報であってもよいし、各ユーザの勝敗の一覧情報であってもよい。また、ジャンケンの結果を表す情報は、ユーザ名を含んでいてもよい。
【０３１３】
＜第１ミニゲーム進行中における第１仮想空間１１_１Ａ、１１Ｂ＞
図２５は、第１ミニゲームが進行中における第１仮想空間１１_１を模式的に示す図である。図２５（Ａ）は、キャラクタ制御装置１１０Ｂにおいて実現される第１仮想空間１１_１Ｂの斜視図である。図２５（Ｂ）は、ユーザ端末８００Ａにおいて実現される第１仮想空間１１_１Ａの上面図である。これらの第１仮想空間１１_１Ａ及び１１_Ｂは、同期している。
【０３１４】
図２５（Ａ）及び（Ｂ）において、第１仮想空間１１_１Ａ及び１１_Ｂには、アバターオブジェクト６Ｂと、進行ボタンオブジェクト２２４１と、パネルオブジェクト２５５１と、選択肢オブジェクト２５５２_１〜２５５２_３とが配置されている。また、第１仮想空間１１_Ｂには、仮想カメラ１４_Ｂ１が配置されている。また、第１仮想空間１１_Ａには、仮想カメラ１４_Ａ１が配置されている。
【０３１５】
仮想カメラ１４_Ｂ１は、アバターオブジェクト６Ｂの頭部に、アバターオブジェクト６Ｂの向いている方向に向かって配置されている。なお、仮想カメラ１４_Ｂ１は、第１仮想空間１１_１Ａには配置されないので、ユーザ端末８００Ａにおいて表示される視野画像１４００_Ａ１には含まれない。
【０３１６】
仮想カメラ１４_Ａ１は、第１仮想空間１１_１の後方に、前方の領域に向かって配置される。前方とは、ここでは、紙面の左方向であるものとする。なお、仮想カメラ１４_Ａ１は、第１仮想空間１１_１Ｂには配置されないので、キャラクタ制御装置１１０Ｂにおいて表示される視野画像１４００_Ｂ１には含まれない。
【０３１７】
アバターオブジェクト６Ｂは、仮想カメラ１４_Ｂ１と同一の方向を向いて配置される。仮想カメラ１４_Ｂ１の方向は、ユーザ８Ａが仮想的に存在する方向である。以降、仮想カメラ１４_Ｂ１の方向を、単に、ユーザ８Ａの方向とも記載する。
【０３１８】
３個の選択肢オブジェクト２５５２_１〜２５５２_３は、先端にある円板部の一方の面に、グー・チョキ・パーを表すイラストが描かれている。これらの円板部の他方の面には、イラストが描かれていない。３個の選択肢オブジェクト２５５２_１〜２５５２_３は、イラストが描かれていない面がユーザ８Ａの方を向くように配置されている。
【０３１９】
パネルオブジェクト２５５１は、アバターオブジェクト６Ｂよりも前方の領域、換言すると、アバターオブジェクト６Ｂの背後に配置されている。ここでは、パネルオブジェクト２５５１は、板状であり、ユーザ８Ａの方向側の面に、第１ミニゲームに関する情報が表示されている。
【０３２０】
進行ボタンオブジェクト２２４１は、アバターオブジェクト６Ｂの向かう方向に対して左側の領域（図２５（Ｂ）に示した第１仮想空間１１_１Ａにおける紙面に対して上側の領域）に配置されているものとする。
【０３２１】
＜第１ミニゲーム進行中における視野画像及びゲーム画面＞
図２６〜図２９は、第１ミニゲーム進行中における視野画像及びゲーム画面の遷移例を示す図である。図２６〜図２９の各図において、（Ａ）は、ステップＳ３０１〜Ｓ３０７が実行されることによりキャラクタ制御装置１１０ＢのＨＭＤ１２０に表示される視野画像１４００_Ｂ１を表す。（Ｂ）は、Ｓ４０１〜４１０が実行されることによりユーザ端末８００Ａの表示部８７０２に表示されるゲーム画面を表す。
【０３２２】
図２６は、ジャンケンゲームの開始時における視野画像及びゲーム画面を示す図である。
【０３２３】
図２６（Ａ）において、キャラクタ制御装置１１０Ｂにおける視野画像１４００_Ｂ１は、進行ボタンオブジェクト２２４１と、選択肢オブジェクト２５５２_１〜２５５２_３と、アバターオブジェクト６Ｂの手の部分である仮想右手１８３１ＲＢ及び仮想左手１８３１ＬＢと、情報２６５１とを含む。パネルオブジェクト２５５１は、アバターオブジェクト６Ｂの背後にあるため、視野画像１４００_Ｂ１に含まれない。
【０３２４】
進行ボタンオブジェクト２２４１は、アバターオブジェクト６Ｂから見て向かって左側に配置されている。
【０３２５】
選択肢オブジェクト２５５２_１〜２５５２_３は、アバターオブジェクト６Ｂから見て、グー・チョキ・パーのイラストが描かれた面が見えるように配置されている。
【０３２６】
また、アバターオブジェクト６Ｂ自身の仮想右手１８３１ＲＢ及び仮想左手１８３１ＬＢが視野画像１４００_Ｂ１に含まれる。これにより、ユーザ５Ｂは、仮想右手１８３１ＲＢ及び仮想左手１８３１ＬＢに、選択肢オブジェクト２５５２_１〜２５５２_３又は進行ボタンオブジェクト２２４１を選択させるよう、容易に動くことができる。
【０３２７】
情報２６５１は、視野画像１４００_Ｂ１に重畳して表示される情報である。情報２６５１は、現在、当該第１ミニゲームを含むライブゲーム進行パートを視聴しているユーザ８の数を表している。ここでは、ユーザ端末８００Ａ、８００Ｃ、８００Ｄを含む１３２台のユーザ端末８００によって仮想空間１１_１が共有されており、視聴しているユーザ８の数（視聴者数）が１３２人であることが表示されている。情報２６５１は、例えば、サーバ６００から送信されることにより重畳表示されてもよい。
【０３２８】
ここで、ユーザ５Ｂが、第１ミニゲームを開始することをユーザ８Ａに対して通知する動作として「ジャンケンゲームを始めるよ」との音声２６７１を発声する動作を行うと、アバターオブジェクト６Ｂが、音声２６７１を発声するよう制御される。なお、第１ミニゲームを開始することを通知する動作は、発声に限らず、手振り等であってもよいし、各種の動作の組み合わせであってもよい。
【０３２９】
また、ユーザ５Ｂが、ユーザ８Ａに対して第１ＵＩオブジェクトの操作を促す動作として、「グー・チョキ・パーボタンのどれかを押してね」との音声２６７２を発声する動作を行うと、アバターオブジェクト６Ｂが、音声２６７２を発声するよう制御される。なお、第１ＵＩオブジェクトの操作を促す動作は、発声に限らず、手振り等であってもよいし、各種の動作の組み合わせであってもよい。
【０３３０】
図２６（Ｂ）において、ユーザ端末８００Ａの表示部８７０２に表示されるゲーム画面は、視野画像１４００_Ａ１と、ＵＩ領域２６６１とを含む。視野画像１４００_Ａ１は、アバターオブジェクト６Ｂと、進行ボタンオブジェクト２２４１と、選択肢オブジェクト２５５２_１〜２５５２_３と、パネルオブジェクト２５５１とを含む。
【０３３１】
アバターオブジェクト６Ｂは、ユーザ８Ａの方向を向いているので、正面を向いている。また、アバターオブジェクト６Ｂの仮想右手１８３１ＲＢ及び仮想左手１８３１ＬＢが視野画像１４００_Ａ１に含まれている。ここれにより、ユーザ８Ａは、仮想右手１８３１ＲＢ及び仮想左手１８３１ＬＢが何れの選択肢オブジェクトを選択する動作を行うかに注目することができる。
【０３３２】
進行ボタンオブジェクト２２４１は、アバターオブジェクト６Ｂから見て左側、すなわち、視野画像１４００_Ａ１の右側の領域に配置されている。
【０３３３】
選択肢オブジェクト２５５２_１〜２５５２_３は、ユーザ８Ａから見て、グー・チョキ・パーのイラストが描かれた面が見えないように配置されている。
【０３３４】
パネルオブジェクト２５５１は、アバターオブジェクト６Ｂの背後に、情報が表示される面をユーザ８Ａの方向に向けて配置されている。ここでは、パネルオブジェクト２５５１には、第１ミニゲームに関する情報として、ジャンケンゲームの説明を表す情報が表示されている。また、当該情報には、ジャンケンゲームに勝利したときの報酬（ここでは、第２ミニゲームで有利になる権利が付与されること）を表す情報が含まれていてもよい。
【０３３５】
ＵＩ領域２６６１は、ＵＩボタン２６６１_１〜２６６１_３を含む。ＵＩボタン２６６１_１〜２６６１_３のそれぞれは、グー・チョキ・パーのイラストを含んでいる。ＵＩボタン２６６１_１に対する操作が受け付けられると、グーを選択したことがメモリ８２０に記憶される処理が実行される。ＵＩボタン２６６１_２に対する操作が受け付けられると、パーを選択したことがメモリ８２０に記憶される処理が実行される。ＵＩボタン２６６１_１に対する操作が受け付けられると、チョキを選択したことがメモリ８２０に記憶される処理が実行される。ＵＩボタン２６６１_１〜２６６１_３は、初期状態で操作不能である。
【０３３６】
ここで、キャラクタ制御装置１１０Ｂから、音声２６７１、２６７２を発声する動作を表す動作指図データが受信されると、視野画像１４００_Ａ１に含まれるアバターオブジェクト６Ｂが、音声２６７１、２６７２を発声するよう制御される。
【０３３７】
これにより、ユーザ８Ａは、アバターオブジェクト６Ｂが音声２６７１を発声する動作に応じてジャンケンゲームが開始することを認識する。また、ユーザ８Ａは、ジャンケンゲームのルール、報酬等を、パネルオブジェクト２５５１を視認することにより認識することができる。
【０３３８】
また、アバターオブジェクト６Ｂが音声２６７２を発声する動作に応じて、ＵＩボタン２６６１_１〜２６６１_３が、操作不能な状態から操作可能な状態に変化する。ＵＩボタン２６６１_１〜２６６１_３は、操作可能な状態に変化したことを表す態様で表示されてもよい。ユーザ８Ａは、アバターオブジェクト６Ｂが音声２６７２を発声する動作に応じて、ＵＩボタン２６６１_１〜２６６１_３の何れかを押すことを動機付けられる。
【０３３９】
また、アバターオブジェクト６Ｂが音声２６７２を発声する動作に応じて、新たなＵＩボタンが表示されたり、表示されていたＵＩボタンが非表示になったりしてもよい。
【０３４０】
図２７は、ユーザ８Ａによってボタン２６６１_１〜２６６１_３の何れかが押下された後の視野画像及びゲーム画面を示す図である。
【０３４１】
図２７（Ａ）において、キャラクタ制御装置１１０Ｂにおける視野画像１４００_Ｂ１は、図２６（Ａ）に示した視野画像１４００_Ｂ１に対して、情報２６５１の代わりに、情報２７５１及び情報２７５２が重畳されている点が異なる。
【０３４２】
情報２７５１は、情報２６５１と同様、現在、当該第１ミニゲームを含むライブゲーム進行パートを視聴しているユーザ８の数を表している。ここでは、第１ミニゲームが開始した時点以降に、視聴者数が２人増加して１３４人になっている。このように、情報２７５１は、ユーザ端末８００Ａから送信される情報に基づいて、リアルタイムに内容が更新される。
【０３４３】
情報２７５２は、第１仮想空間１１_１を共有する複数のユーザ端末８００のユーザ８のうち、第１ＵＩオブジェクトに対する操作を行ったユーザ８の数を表している。ここでは、ユーザ８Ａを含む１３２人が、操作を行ったことが表されている。情報２７５２は、ユーザ端末８００Ａから送信される情報に基づいて、リアルタイムに内容が更新される。
【０３４４】
図２７（Ｂ）において、ユーザ端末８００Ａの表示部８７０２に表示されるゲーム画面は、図２６（Ｂ）に示したゲーム画面と同様に、視野画像１４００_Ａ１と、ＵＩ領域２６６１とを含む。ただし、ＵＩ領域２６６１におけるＵＩボタン２６６１_１の態様が変化している。ＵＩボタン２６６１_１は、当該ボタンに対する操作が受け付けられた状態を表す態様で表示される。当該態様とは、例えば、当該ＵＩボタンの色が変化した態様であってもよいし、押し込まれている様子に変化した態様であってもよいが、これらに限られない。
【０３４５】
図２８は、アバターオブジェクト６Ｂにより選択肢オブジェクト２５５２_１〜２５５２_３の何れかが選択された後の視野画像及びゲーム画面を示す図である。
【０３４６】
図２８（Ａ）において、キャラクタ制御装置１１０Ｂにおける視野画像１４００_Ｂ１は、図２６（Ａ）に示した視野画像１４００_Ｂ１に対して、アバターオブジェクト６Ｂが選択肢オブジェクト２５５２_３を選択した様子を含む点と、情報２７５２の代わりに情報２８５２が重畳されている点とが異なる。
【０３４７】
アバターオブジェクト６Ｂは、ユーザ５Ｂの動作に応じて、仮想右手１８３１ＲＢによって選択肢オブジェクト２５５２_３を選択する。具体的には、ここでは、仮想空間制御部２１０６によって、仮想右手１８３１ＲＢと、選択肢オブジェクト２５５２_３とが接触していると判定され、かつ、コントローラ３００が有する所定ボタンの押下が検出されたとする。これにより、仮想右手１８３１ＲＢと、選択肢オブジェクト２５５２_３とが関連付けられ、選択肢オブジェクト２５５２_３は、仮想右手１８３１ＲＢと共に移動する。ここでは、アバターオブジェクト６Ｂは、選択肢オブジェクト２５５２_３を把持し、持ち上げて、選択肢の１つである「チョキ」のイラストが描かれている面をユーザ８の方向に向けるように選択肢オブジェクト２５５２_３を回転させたものとする。把持されている状態での選択肢オブジェクト２５５２_３の回転は、例えば、コントローラ３００が有する他の所定ボタンが押下されたことに応じて実行されるように定められていてもよい。また、把持されている状態での選択肢オブジェクト２５５２_３の回転は、仮想右手１８３１ＲＢについて定められた所定の動きに応じて実行されるよう定められていてもよい。
【０３４８】
また、ユーザ５Ｂは、アバターオブジェクト６Ｂに選択肢オブジェクト２５５２_１〜２５５２_３の何れかを選択させるための動作を行うと共に、「ジャンケンポン」との音声２８７１を発声する動作を行う。これにより、アバターオブジェクト６Ｂは、選択肢オブジェクト２５５２_３を選択するとともに、音声２８７１を発声するよう制御される。
【０３４９】
情報２８５２は、複数のユーザ端末８００における第１ＵＩオブジェクトに対する操作結果を表している。ここでは、情報２８５２は、ＵＩボタン２６６１_１〜２６６１_３の各々に対する操作を行ったユーザ８の数を表している。情報２８５２によれば、ユーザ８Ａを含む４３人が、ＵＩボタン２６６１_１を押下してグーを選択し、他の４６人のユーザ８が、ＵＩボタン２６６１_２を押下してパーを選択し、他の４５人のユーザ８が、２６６１_１を押下してチョキを選択している。情報２８５２は、アバターオブジェクト６Ｂが選択肢オブジェクト２５５２_３を選択する動作を行った後に、ユーザ端末８００Ａから送信される情報に基づいて表示されることが望ましい。
【０３５０】
なお、情報２８５２を含む領域に対するアバターオブジェクト６Ｂの動作が受け付けられることにより、複数のユーザ端末８００における操作結果の詳細が表示されてもよい。
例えば、操作結果の詳細とは、各選択肢を選択したユーザ８の識別情報の一覧情報であってもよい。例えば、「グーの人：４３人」の表示領域に対して仮想右手１８３１ＲＢ又は仮想左手１８３１ＬＢが接触する動作が受け付けられると、グーを選択した「ユーザＡ、ユーザＸ、ユーザＹ・・・」といった一覧情報が重畳表示されてもよい。ただし、操作結果の詳細は、これに限られない。
【０３５１】
また、情報２８５２は、図示のような選択肢別の集計情報に限られない。例えば、情報２８５２は、複数のユーザ８の各々の識別情報と、当該ユーザ８によって押下されたＵＩボタン２６６１_１〜２６６１_３の何れかの識別情報とを一覧として含んでいてもよい。この場合、情報２８５２は、スクロール可能に表示されてもよい。また、この場合、情報２８５２は、複数のユーザ端末８００の何れかにおいてＵＩボタン２６６１_１〜２６６１_３の何れかが押下される度に、当該ユーザ８の識別情報と、押下されたＵＩボタン２６６１_１〜２６６１_３の何れかの識別情報とを追加して含むよう更新されてもよい。この場合、情報２８５２は、自動でスクロールして表示されてもよい。
【０３５２】
また、ユーザ５Ｂは、アバターオブジェクト６Ｂに選択肢オブジェクト２５５２_３を選択させた後、複数のユーザ端末８００におけるジャンケンゲームの結果に応じた動作を行う。ここでは、例えば、「グーで勝った４３人、おめでとう！」といった音声２８７２を発声する。これにより、アバターオブジェクト６Ｂは、音声２８７２を発声するよう制御される。
【０３５３】
図２８（Ｂ）において、ユーザ端末８００Ａの表示部８７０２に表示されるゲーム画面は、視野画像１４００_Ａ１と、ＵＩ領域２６６１と、情報２８６５とを含む。
【０３５４】
ここでは、キャラクタ制御装置１１０Ｂから、音声２８７１を発声する動作を表す動作指図データが受信されると、視野画像１４００_Ａ１に含まれるアバターオブジェクト６Ｂが、音声２８７１を発声するよう制御される。この音声２８７１の発声を契機に、ユーザ８Ａは、自身が選択した「グー」によって勝つことのできる「チョキ」が選択されることを所望しながら、アバターオブジェクト６Ｂの動作に注目することができ、臨場感が増す。
【０３５５】
また、キャラクタ制御装置１１０Ｂから送信された動作指図データに基づいて、視野画像１４００_Ａ１に含まれるアバターオブジェクト６Ｂは、選択肢オブジェクト２５５２_３を選択する動作を行うよう制御される。ここで、アバターオブジェクト６Ｂによって選択された選択肢オブジェクト２５５２_３は、「チョキ」が描かれた面がユーザ８Ａの方向に向けられる。これにより、ユーザ８Ａは、アバターオブジェクト６Ｂによって、自身が勝つことになる「チョキ」が選択されたことを認識することができる。
【０３５６】
また、キャラクタ制御装置１１０Ｂから、音声２８７２を発声する動作を表す動作指図データが受信されると、視野画像１４００_Ａ１に含まれるアバターオブジェクト６Ｂが、音声２８７２を発声するよう制御される。これにより、ユーザ８Ａは、自分と同様にジャンケンゲームに勝利した人が４３人いることを認識でき、他のユーザ８と共にジャンケンゲームに参加していることの臨場感が増す。
【０３５７】
情報２８６５は、ユーザ８Ａによるジャンケンゲームの結果を表す。ここでは、情報２８６５は、「勝ち」との内容を含む吹き出しの態様で表示されている。ただし、情報２８６５の内容及び態様は、これに限られない。
【０３５８】
図２９は、ジャンケンゲームが終了し、次のミニゲームに遷移するときの視野画像及びゲーム画面の一例を示す図である。
【０３５９】
図２９（Ａ）において、キャラクタ制御装置１１０Ｂにおける視野画像１４００_Ｂ１は、進行ボタンオブジェクト２２４１と、選択肢オブジェクト２５５２_１〜２５５２_３と、仮想左手１８３１ＬＢと、情報２７５１とを含む。
【０３６０】
ここでは、アバターオブジェクト６Ｂが、自身の左側に存在する進行ボタンオブジェクト２２４１に対して近づくよう移動したことを想定している。そのため、進行ボタンオブジェクト２２４１が、視野画像１４００_Ｂ１の中央付近の領域に含まれている。また、選択肢オブジェクト２５５２_１〜２５５２_３は、視野画像１４００_Ｂ１の右下方の領域に含まれている。
【０３６１】
ここで、ユーザ５Ｂが、第１ミニゲームから第２ミニゲームに遷移することを通知する動作として、「次のゲームに行くよ」との音声２９７１を発声する動作を行うと、アバターオブジェクト６Ｂが、音声２９７１を発声するよう制御される。なお、第２ミニゲームに遷移することを通知する動作は、発声に限らず、手振り等であってもよいし、各種の動作の組み合わせであってもよい。
【０３６２】
また、ユーザ５Ｂが、音声２９７１を発声すると同時に、アバターオブジェクト６Ｂに進行ボタンオブジェクト２２４１を押下させる動作を行うと、アバターオブジェクト６Ｂが、当該動作を行うよう制御される。
【０３６３】
図２９（Ｂ）において、ユーザ端末８００Ａの表示部８７０２に表示されるゲーム画面は、視野画像１４００_Ａ１と、ＵＩ領域２６６１と、情報２９８１とを含む。
【０３６４】
ここで、キャラクタ制御装置１１０Ｂから、音声２９７１を発声する動作を表す動作指図データが受信されると、視野画像１４００_Ａ１に含まれるアバターオブジェクト６Ｂが、音声２９７１を発声するよう制御される。
【０３６５】
また、キャラクタ制御装置１１０Ｂから、進行ボタンオブジェクト２２４１を押下する動作を表す動作指図データが受信されると、視野画像１４００_Ａ１に含まれるアバターオブジェクト６Ｂが、当該動作を行うよう制御される。
【０３６６】
これにより、ユーザ８Ａは、アバターオブジェクト６Ｂが音声２９７１を発声すると共に進行ボタンオブジェクト２２４１を押下する動作に応じて、第２ミニゲームに遷移することを認識する。このように、ユーザ８Ａは、アバターオブジェクト６Ｂの動作に応じて、ミニゲームが切り替わることを、臨場感を持って認識できる。
【０３６７】
情報２９８１は、ジャンケンゲームに勝利したことにより、次の第２ミニゲームを有利に進める権利が付与されたことを表している。これにより、ユーザは、次の第２ミニゲームが有利になったことを認識できる。
【０３６８】
＜第２ミニゲームの処理フロー＞
図３０は、ゲームシステム１５００を構成する各装置によって実行される、第２ミニゲームにおける処理の流れを表すフローチャートである。図３０に示す処理の流れは、図２１に示したステップＳ１１２及びＳ２０８における処理の詳細に相当する。
【０３６９】
ここでは、第２ミニゲームとして、ビンゴゲームが適用されていることを想定する。また、第２ミニゲームでは、第２条件が設定されている。第２条件とは、ユーザ８Ａに付与されたビンゴカードにおいてビンゴが成立することである。
【０３７０】
ステップＳ５０１において、キャラクタ制御装置１１０Ｂの仮想空間制御部２１０６は、第１仮想空間１１_１Ｂに、本発明における第４オブジェクトと、複数の選択肢を表す仮想オブジェクトとを配置する。
【０３７１】
ここで、第４オブジェクトは、第２状態に関する情報を表す仮想オブジェクトである。例えば、第４オブジェクトは、当該情報を表示可能な仮想パネル、仮想ディスプレイ、仮想黒板、仮想電光掲示板等であってもよいが、これらに限られない。本実施形態では、第４オブジェクトとして、第３オブジェクトと同様の仮想パネルを表すパネルオブジェクトが配置されるものとする。換言すると、第１ミニゲームから第２ミニゲームに切り替わると、パネルオブジェクトに表示される情報が変化する。
【０３７２】
また、複数の選択肢を表す仮想オブジェクトとして、ビンゴボールの箱オブジェクトが配置される。ビンゴボールの箱オブジェクトは、それぞれ表面に数字が描かれた複数のビンゴボールオブジェクトを内部に含み、ビンゴボールオブジェクトを取り出すことができる開口部を表面に有するものとする。
【０３７３】
ステップＳ５０２において、仮想空間制御部２１０６は、パネルオブジェクト及び箱オブジェクトの情報を、ユーザ端末８００Ａに送信する。
【０３７４】
ステップＳ６０１において、ユーザ端末８００Ａの仮想空間制御部８１０６は、受信した情報に基づいて、第１仮想空間１１_１Ａに、第２状態に応じた第２オブジェクト（ここでは、パネルオブジェクト及び箱オブジェクト）を配置する。また、仮想空間制御部８１０６は、第２オブジェクトを対象とするアバターオブジェクト６Ｂの動作を、第２動作として適用する。なお、第１仮想空間１１_１Ａから、第１状態に応じた第１オブジェクトは消去される。
【０３７５】
ステップＳ６０２において、ゲーム進行部８１０５は、第２ミニゲームを有利に進める権利を表す情報がメモリ８２０に記憶されているか否かを判断する。ステップＳ６０２でＮｏの場合、ステップＳ６０３の処理が実行される。ステップＳ６０２でＹｅｓの場合、ステップＳ６０４の処理が実行される。
【０３７６】
ステップＳ６０３又はＳ６０４において、ゲーム進行部８１０５は、第２ＵＩオブジェクトを、表示部８７０２に表示する。
【０３７７】
ここで、第２ＵＩオブジェクトは、第２状態に応じたＵＩオブジェクトである。具体的には、第２ＵＩオブジェクトは、第２ミニゲームにおいてユーザ８Ａからの操作を受け付けるユーザインタフェースオブジェクトである。
【０３７８】
ステップＳ６０３では、第２ＵＩオブジェクトとして、通常のビンゴカードが表示される。ステップＳ６０４では、第２ＵＩオブジェクトとして、有利なビンゴカードを表示部
８７０２に表示する。
【０３７９】
通常のビンゴカード及び有利なビンゴカードとは、それぞれ、複数列かつ複数行に並んだマスのそれぞれに、任意の数値を含むカードである。また、各マスは、操作可能な状態及び操作不能な状態を有し、初期状態では、操作不能な状態である。また、各マスは、開いた状態及び開いていない状態を有し、初期状態では、開いていない状態である。各マスは、操作可能な状態のときに操作されることにより、開いた状態となるものとする。また、上述した第２条件であるビンゴの成立とは、開いたマスが縦、横、斜めの何れかに所定個数並ぶことであるものとする。
【０３８０】
ここで、有利なビンゴカードとは、通常のビンゴカードよりも、第２ミニゲームを有利に進めることが可能なカードである。例えば、有利なビンゴカードとは、複数枚の通常のビンゴカードを含んでいてもよい。また、例えば、通常のビンゴカード及び有利なビンゴカードが、１つのマスに複数の数値を含み得るとき、有利なビンゴカードとは、通常のビンゴカードよりも１つのマスに含まれる数値の個数が多いものであってもよい。ただし、第２ＵＩオブジェクトは、上述したようなビンゴカードに限らず、その他のＵＩオブジェクトであってよい。
【０３８１】
なお、本ステップにおいて表示されるビンゴカードの各マスに含まれる数値は、第１仮想空間１１_１を共有する複数のユーザ端末８００毎に決定されるものとする。例えば、本ステップの実行時に、各マスに描かれる数値が、任意の範囲の数値からランダムに選択されて決定されてもよい。
【０３８２】
ステップＳ５０４において、仮想空間制御部２１０６は、ユーザ５Ｂの動きに応じて、アバターオブジェクト６Ｂに、ビンゴボールオブジェクトを選択する動作をさせる。複数のビンゴボールオブジェクトのそれぞれは、それぞれ異なる識別情報（番号など）が関連付けられている。
【０３８３】
ステップＳ５０５において、仮想空間制御部２１０６は、アバターオブジェクト６Ｂの動作を表す動作指図データを、ユーザ端末８００Ａに送信する。
【０３８４】
ステップＳ６０５において、仮想空間制御部８１０６は、受信した動作指図データに基づいて、アバターオブジェクト６Ｂにビンゴボールオブジェクトを選択する動作をさせる。
【０３８５】
ステップＳ６０６において、ゲーム進行部８１０５は、アバターオブジェクト６Ｂによって選択されたビンゴボールオブジェクトに描かれた数値が、表示されているビンゴカードのマスの何れかに含まれる数値であるか否かを判断する。ステップＳ６０６でＮｏの場合、後述するステップＳ６１２が実行される。ステップＳ６０６でＹｅｓの場合、次のステップＳ６０７が実行される。
【０３８６】
ステップＳ６０７において、ゲーム進行部８１０５は、アバターオブジェクト６Ｂの第２動作に基づいて、第２条件の少なくとも一部を満たすための第２処理を実行する。換言すると、ゲーム進行部８１０５は、アバターオブジェクト６Ｂの選択する動作に応じて、第２条件（本発明における第１課題）の少なくとも一部を達成するためのゲーム処理を実行する。
【０３８７】
ここでは、ゲーム進行部８１０５は、アバターオブジェクト６Ｂの選択する動作に応じて、該当する数値を含むマスを操作可能な状態にするという第２処理を実行する。ビンゴを成立させるとの第２条件を満たすためには、少なくとも第２ＵＩオブジェクトの一部であるマスが操作可能となる必要があるため、当該第２処理が実行される。
【０３８８】
ステップＳ６０８において、ゲーム進行部８１０５は、該当する数値を含むマスに対する操作を受け付け、当該マスを開いた状態に変化させる。
【０３８９】
ステップＳ６０９において、ゲーム進行部８１０５は、該当する数値を含むマスが開いたことを、キャラクタ制御装置１１０Ｂに通知する。
【０３９０】
ステップＳ５０５において、ゲーム進行部２１０５は、該当する数値を含むマスが開いたユーザ８Ａに関する情報を、ＨＭＤ１２０に表示する。
【０３９１】
ステップＳ６１０において、ユーザ端末８００Ａのゲーム進行部８１０５は、ステップＳ６０８でマスが開けられたことにより、ビンゴが成立したか否かを判断する。ステップＳ６１０でＮｏの場合、後述するステップＳ６１２が実行される。ステップＳ６１０でＹｅｓの場合、次のステップＳ６１１が実行される。
【０３９２】
ステップＳ６１１において、ゲーム進行部８１０５は、ビンゴが成立したことを、キャラクタ制御装置１１０Ｂに通知する。
【０３９３】
ステップＳ５０６において、ゲーム進行部２１０５は、ビンゴが成立したユーザ８Ａに関する情報を、ＨＭＤ１２０に表示する。
【０３９４】
ステップＳ５０７において、ゲーム進行部２１０５は、ゲームが終了したか否かを判断する。例えば、ゲームの終了条件は、アバターオブジェクト６Ｂによってビンゴボールオブジェクトが所定回数選択されたことであってもよい。また、例えば、ゲームの終了条件は、最初のビンゴボールオブジェクトの選択から所定時間が経過したことであってもよい。また、例えば、ゲームの終了条件は、ビンゴが成立したユーザ８の数が所定数を超えたことであってもよい。ただし、ゲームの終了条件は、これらに限られない。
【０３９５】
ステップＳ５０７においてＮｏの場合、ステップＳ５０３からの処理が実行される。ステップＳ５０７においてＹｅｓの場合、ステップＳ５０８の処理が実行される。
【０３９６】
ステップＳ５０８において、ゲーム進行部２１０５は、ゲームが終了したことを、ユーザ端末８００Ａに通知する。
【０３９７】
ステップＳ６１２において、ゲーム進行部８１０５は、ゲームの終了が通知されたか否かを判断する。本ステップは、ステップＳ６０６又はＳ６１０でＮｏの場合にも実行される。ステップＳ６１２でＮｏの場合、ステップＳ６０５からの処理が実行される。ステップＳ６１２でＹｅｓの場合、ステップＳ６１３の処理が実行される。
【０３９８】
ステップＳ６１３において、ゲーム進行部８１０５は、ビンゴゲームの結果を表す情報を、表示部８７０２に表示する。
【０３９９】
＜第２ミニゲーム進行中における第１仮想空間１１_１Ａ、１１Ｂ＞
図３１は、第２ミニゲームが進行中における第１仮想空間１１_１を模式的に示す図である。図３１（Ａ）は、キャラクタ制御装置１１０Ｂにおいて実現される第１仮想空間１１_１Ｂの斜視図である。図３１（Ｂ）は、ユーザ端末８００Ａにおいて実現される第１仮想空間１１_１Ａの上面図である。これらの第１仮想空間１１_１Ａ及び１１_Ｂは、同期している。
【０４００】
図３１（Ａ）及び（Ｂ）において、第１仮想空間１１_１Ａ及び１１_Ｂには、アバターオブジェクト６Ｂと、特別ボタンオブジェクト３１４１と、パネルオブジェクト３１５１と、箱オブジェクト３１４２とが配置されている。また、第１仮想空間１１_１Ｂには、仮想カメラ１４_Ｂ１が配置されている。また、第１仮想空間１１_１Ａには、仮想カメラ１４_Ａ１が配置されている。アバターオブジェクト６Ｂ、仮想カメラ１４_Ａ１、１４_Ｂ１については、図２５を参照して説明した通りである。
【０４０１】
箱オブジェクト３１４２は、内部に複数のビンゴボールオブジェクト３１４４が配置された直方体状のオブジェクトである。箱オブジェクト３１４２の上面は、開口部３１４３を含む。アバターオブジェクト６Ｂは、開口部３１４３から仮想右手１８３１ＲＢ又は仮想左手１８３１ＬＢを箱オブジェクト３１４２の内部に挿入することにより、複数のビンゴボールオブジェクト３１４４の何れかを選択する動作を行うことができる。
【０４０２】
複数のビンゴボールオブジェクト３１４４の各々は、球状のオブジェクトであり、表面に数値が描かれている。数値は、第２ＵＩオブジェクトとしてのビンゴカードのマスに表示され得る範囲の数値の何れかであることが望ましい。ただし、範囲外の数値が描かれたビンゴボールオブジェクトがあってもよい。また、複数のビンゴボールオブジェクトに描かれた数値は、互いに異なるものであってもよい。あるいは、一部の複数のビンゴボールオブジェクトに描かれた数値が同一であってもよい。
【０４０３】
パネルオブジェクト３１５１は、パネルオブジェクト２５５１と同様に構成されるが、ユーザ８Ａの方向側の面に、第１ミニゲームに関する情報の代わりに、第２ミニゲームに関する情報が表示されている。
【０４０４】
特別ボタンオブジェクト３１４１は、アバターオブジェクト６Ｂの向かう方向に対して左側の領域に配置されているものとする。「左側」については、図２５において説明した通りである。
【０４０５】
＜第２ミニゲーム進行中における視野画像及びゲーム画面＞
図３２〜図３６は、第２ミニゲーム進行中において視野画像及び表示部の一例を示す図である。図３２〜図３６の各図において、（Ａ）は、ステップＳ５０１〜Ｓ５０８が実行されることによりキャラクタ制御装置１１０ＢのＨＭＤ１２０に表示される視野画像１４００_Ｂ１を表す。（Ｂ）は、Ｓ６０１〜６１３が実行されることによりユーザ端末８００Ａの表示部８７０２に表示されるゲーム画面を表す。
【０４０６】
図３２は、ビンゴゲームの開始時における視野画像及びゲーム画面を示す図である。
【０４０７】
図３２（Ａ）において、キャラクタ制御装置１１０Ｂにおける視野画像１４００_Ｂ１は、特別ボタンオブジェクト３１４１と、箱オブジェクト３１４２と、仮想右手１８３１ＲＢ及び仮想左手１８３１ＬＢと、情報２７５１とを含む。情報２７５１については、図２６を参照して説明した通りである。
【０４０８】
特別ボタンオブジェクト３１４１は、アバターオブジェクト６Ｂから見て向かって左側に配置されている。
【０４０９】
箱オブジェクト３１４２は、アバターオブジェクト６Ｂから見て、開口部３１４３が見えるように配置されている。
【０４１０】
また、アバターオブジェクト６Ｂ自身の仮想右手１８３１ＲＢ及び仮想左手１８３１ＬＢが視野画像１４００_Ｂ１に含まれる。これにより、ユーザ５Ｂは、仮想右手１８３１ＲＢ及び仮想左手１８３１ＬＢに、箱オブジェクト３１４２の開口部３１４３を通って複数のビンゴボールオブジェクト３１４４の何れかを選択させるよう、容易に動作することができる。
【０４１１】
ここで、ユーザ５Ｂが、第２ミニゲームを開始することを通知する動作として、「ビンゴゲームを始めるよ」との音声３２７１を発声する動作を行うと、アバターオブジェクト６Ｂが、音声３２７１を発声するよう制御される。なお、第２ミニゲームを開始することを通知する動作は、発声に限らず、手振り等であってもよいし、各種の動作の組み合わせであってもよい。
【０４１２】
図３２（Ｂ）において、ユーザ端末８００Ａの表示部８７０２に表示されるゲーム画面は、視野画像１４００_Ａ１と、ＵＩ領域３２６１とを含む。視野画像１４００_Ａ１は、アバターオブジェクト６Ｂと、特別ボタンオブジェクト３１４１と、箱オブジェクト３１４２と、パネルオブジェクト３１５１とを含む。
【０４１３】
アバターオブジェクト６Ｂは、ユーザ８Ａの方向を向いているので、正面を向いている。また、アバターオブジェクト６Ｂの仮想右手１８３１ＲＢ及び仮想左手１８３１ＬＢが視野画像１４００_Ａ１に含まれている。これにより、ユーザ８Ａは、仮想右手１８３１ＲＢ及び仮想左手１８３１ＬＢが何れのビンゴボールオブジェクト３１４４を選択する動作を行うかに注目することができる。
【０４１４】
特別ボタンオブジェクト３１４１は、アバターオブジェクト６Ｂから見て左側、すなわち、視野画像１４００_Ａ１の右側の領域に配置されている。
【０４１５】
この例では、箱オブジェクト３１４２は、各面が不透明な状態で表示され、内部のビンゴボールオブジェクトが見えないように表示されている。ただし、複数のビンゴボールオブジェクトには、それぞれ、第１仮想空間１１_１Ａにおける位置が定められている。これにより、当該ビンゴボールオブジェクト３１４４と、仮想右手１８３１ＲＢ又は仮想左手１８３１ＬＢとの接触判定が可能となり、当該ビンゴボールオブジェクト３１４４が選択され得る。
【０４１６】
パネルオブジェクト３２５１は、アバターオブジェクト６Ｂの背後に、情報が表示される面をユーザ８Ａの方向に向けて配置されている。ここでは、パネルオブジェクト２５５１には、第２ミニゲームに関する情報として、ビンゴゲームの説明を表す情報が表示されている。また、当該情報には、ビンゴゲームのルール、設定されている第２条件（例えば、ビンゴの成立）、ビンゴが成立したときの報酬（ここでは、第２仮想空間に参加できること）を表す情報が含まれていてもよいが、これらに限られない。
【０４１７】
ＵＩ領域３２６１は、通常のビンゴカード３２６２を含む。通常のビンゴカード３２６２は、３列３行に配置された９個のマス３２６３を含む。各マス３２６３は、１〜１００までの範囲の何れかの整数を含んでいる。各マス３２６３に対する操作が受け付けられると、当該マス３２６３が開いた状態であることを表す情報がメモリ８２０に記憶される処理が実行される。各マス３２６３は、初期状態で操作不能であり、開いていない状態である。
【０４１８】
ここで、キャラクタ制御装置１１０Ｂから、音声３２７１を発声する動作を表す動作指図データが受信されると、視野画像１４００_Ａ１に含まれるアバターオブジェクト６Ｂが、音声３２７１を発声するよう制御される。
【０４１９】
これにより、ユーザ８Ａは、アバターオブジェクト６Ｂが音声３２７１を発声する動作に応じてビンゴゲームが開始することを認識する。
【０４２０】
図３３は、ビンゴゲームの開始時におけるゲーム画面の他の例を示す図である。
【０４２１】
図３３において、ユーザ端末８００Ａの表示部８７０２に表示されるゲーム画面は、図３２（Ｂ）に示したゲーム画面に対して、通常のビンゴカード３２６２の代わりに、有利なビンゴカード３３６２を含む点が異なる。有利なビンゴカード３３６２は、３列３行に配置された９個のマス３３６３を含む。各マス３３６３は、１〜１００までの範囲の何れかの整数を２つずつ含んでいる。マス３３６３は、２つずつの整数を含むことにより、マス３２６３よりも開いた状態となりやすいので、有利である。それ以外の点については、各マス３３６３は、通常のビンゴカード３２６２の各マス３２６３と同様に構成される。以下では、ユーザ端末８００Ａには、通常のビンゴカード３２６２が表示されているものとして説明する。
【０４２２】
図３４は、ユーザ５Ｂの動作に応じて、アバターオブジェクト６Ｂが複数のビンゴボールオブジェクト３１４４の何れかを選択する動作が行われる際の視野画像及びゲーム画面を示す図である。
【０４２３】
図３４（Ａ）において、キャラクタ制御装置１１０Ｂにおける視野画像１４００_Ｂ１は、図３２（Ａ）に示した視野画像１４００_Ｂ１に対して、アバターオブジェクト６Ｂが１つのビンゴボールオブジェクト３１４４を選択した様子を含む点と、情報３４５２及び３４５３がさらに重畳されている点とが異なる。
【０４２４】
アバターオブジェクト６Ｂは、ユーザ５Ｂの動作に応じて、仮想右手１８３１ＲＢによって、箱オブジェクト３１４２の内部から複数のビンゴボールオブジェクト３１４４の何れかを選択して取り出す動作を行う。視野画像１４００_Ｂ１では、箱オブジェクト３１４２の内部にあるビンゴボールオブジェクト３１４４が表示されていないため、ユーザ５Ｂにとって、何れの数値が描かれたビンゴボールオブジェクト３１４４を選択したかは、取り出すまで認識できないものとする。
【０４２５】
ここでは、仮想右手１８３１ＲＢによって選択されたビンゴボールオブジェクト３１４４には、「５４」と描かれていたとする。以下、「５４」と描かれたビンゴボールオブジェクト３１４４を、ビンゴボールオブジェクト３１４４「５４」とも記載する。仮想右手１８３１ＲＢによってビンゴボールオブジェクト３１４４「５４」が選択される処理の詳細については、図２８（Ａ）において、仮想右手１８３１ＲＢによって選択肢オブジェクト２５５２_３が選択される処理と同様であるため、詳細な説明を繰り返さない。なお、仮想空間制御部２１０６は、仮想右手１８３１ＲＢとビンゴボールオブジェクト３１４４とが接触したと判定した時点で、接触していることを表す情報をＨＭＤ１２０等の出力装置に出力してもよい。この場合、ユーザ５Ｂは、当該出力に応じて、コントローラ３００が有する所定ボタンを押下すればよい。これにより、ユーザ５Ｂは、視野画像１４００_Ｂ１にビンゴボールオブジェクト３１４４が表示されていなくても、仮想右手１８３１ＲＢにビンゴボールオブジェクト３１４４を選択させる動作を容易に行うことができる。
【０４２６】
あるいは、視野画像１４００_Ｂ１において、箱オブジェクト３１４２の内部にある複数のビンゴボールオブジェクト３１４４が、表面の数値を含まない態様で表示されていてもよい。例えば、ビンゴボールオブジェクト３１４４は、輪郭だけの態様で表示されてもよい。この場合、ユーザ５Ｂは、各ビンゴボールオブジェクト３１４４の位置を視認できるので、仮想右手１８３１ＲＢにビンゴボールオブジェクト３１４４を選択させる動作を容易に行うことができる。
【０４２７】
また、ユーザ５Ｂは、アバターオブジェクト６Ｂに複数のビンゴボールオブジェクト３１４４の何れかを選択させるための動作を行った後、選択したビンゴボールオブジェクト３１４４に描かれた数値「５４」を音声３４７１として発声する動作を行う。これにより、アバターオブジェクト６Ｂは、ビンゴボールオブジェクト３１４４「５４」を選択するとともに、音声３４７１を発声するよう制御される。
【０４２８】
情報３４５２は、第２ミニゲームの進行状況を表している。ここでは、情報３４５２は、アバターオブジェクト６Ｂがビンゴボールオブジェクト３１４４を選択した回数を表している。情報３４５２は、アバターオブジェクト６Ｂが複数のビンゴボールオブジェクト３１４４の何れかを選択する動作を行う度に更新される。
【０４２９】
情報３４５３は、複数のユーザ端末８００における第２ＵＩオブジェクトに対する操作結果を含んでいる。ここでは、情報３４５３は、アバターオブジェクト６Ｂが直近に選択したビンゴボールオブジェクト３１４４によって、ビンゴカードのマスが開いたユーザ８の人数と、ビンゴが成立したユーザ８の人数とを含んでいる。情報３４５３によれば、１４人のユーザ８が「５４」のマス３２６３又は３３６３を開ける操作を行い、１人のユーザ８がビンゴを成立させている。
【０４３０】
なお、情報３４５３を含む領域に対するアバターオブジェクト６Ｂの動作に応じて、第２ＵＩオブジェクトに対する操作結果の詳細な情報が表示されてもよい。例えば、操作結果の詳細とは、当該マス３２６３又は３３６３が開いた状態となったユーザ８の識別情報の一覧情報であってもよい。例えば、「５４のマスを開けた人：１４人」の表示領域に対して仮想右手１８３１ＲＢ又は仮想左手１８３１ＬＢが接触する動作が受け付けられると、５４のマスを開けた「ユーザＡ、ユーザＸ、ユーザＹ・・・」といった一覧情報が重畳表示されてもよい。ただし、操作結果の詳細は、これに限られない。
【０４３１】
また、情報３４５３は、図示のような操作結果の集計情報に限られない。例えば、情報３４５３は、当該マス３２６３又は３３６３が開いた状態となった複数のユーザ端末８００各々のユーザ８の識別情報を、一覧として含んでいてもよい。この場合、情報３４５３は、スクロール可能に表示されてもよい。また、この場合、情報３４５３は、複数のユーザ端末８００の何れかにおいて当該マス３２６３又は３３６３が開いた状態となる度に、当該ユーザ８の識別情報を追加して含むよう更新されてもよい。この場合、情報３４５３は、自動でスクロールして表示されてもよい。
【０４３２】
また、ユーザ５Ｂは、情報３４５３の表示に応じて、アバターオブジェクト６Ｂに、複数のユーザ端末８００における操作結果に応じた動作を行う。ここでは、例えば、「ビンゴの人１人出ました」といった音声３４７２を発声する。また、情報３４５３に、ビンゴを成立させたユーザ８の識別情報が含まれる場合、音声３４７２は、当該ユーザ８の識別情報をさらに含んで「ユーザ８Ａさん、ビンゴになりました！」といった内容であってもよい。これにより、アバターオブジェクト６Ｂは、音声３４７２を発声するよう制御される。
【０４３３】
図３４（Ｂ）において、ユーザ端末８００Ａの表示部８７０２に表示されるゲーム画面は、視野画像１４００_Ａ１と、ＵＩ領域３２６１とを含む。
【０４３４】
ここでは、キャラクタ制御装置１１０Ｂから、ビンゴボールオブジェクト３１４４「５４」を選択する動作を表す動作指図データが受信されると、視野画像１４００_Ａ１に含まれるアバターオブジェクト６Ｂは、ビンゴボールオブジェクト３１４４「５４」を選択する動作を行う。ここで、アバターオブジェクト６Ｂによって選択されたビンゴボールオブジェクト３１４４「５４」は、「５４」が描かれた面がユーザ８の方向に向けられる。
【０４３５】
また、キャラクタ制御装置１１０Ｂから、音声３４７１を発声する動作を表す動作指図データが受信されると、視野画像１４００_Ａ１に含まれるアバターオブジェクト６Ｂが、音声３４７１を発声するよう制御される。
【０４３６】
これにより、ユーザ８Ａは、アバターオブジェクト６Ｂによって、自身のビンゴカードに含まれる数値「５４」が描かれたビンゴボールオブジェクト３１４４が選択されたことを認識することができる。
【０４３７】
また、アバターオブジェクト６Ｂがビンゴボールオブジェクト３１４４「５４」を選択したことに応じて、「５４」を含むマス３２６３が操作可能な状態に変化する。操作可能な状態に変化したマス３２６３は、操作可能であることを表す態様に変化して表示されてもよい。ユーザ８Ａは、「５４」を含むマス３２６３に対する操作を行うことにより、当該マス３２６３を開いた状態にすることができる。これにより、「５４」を含むマス３２６３は、開いた状態を表す態様で表示される。開いた状態を表す態様とは、例えば、開いた状態を表す色に変化した態様、当該マスの領域に穴があけられた様子を表す態様等であってもよいが、これらに限られない。
【０４３８】
このように、ユーザ８Ａは、自身のビンゴカード３２６２に含まれる数値が描かれたビンゴボールオブジェクト３１４４が選択されることを所望しながら、アバターオブジェクト６Ｂの動作に注目することができ、臨場感が増す。
【０４３９】
また、キャラクタ制御装置１１０Ｂから、音声３４７２を発声する動作を表す動作指図データが受信されると、視野画像１４００_Ａ１に含まれるアバターオブジェクト６Ｂが、音声３４７２を発声するよう制御される。これにより、ユーザ８Ａは、他のユーザ８がビンゴを成立させたことを認識でき、他のユーザ８と共にビンゴゲームに参加していることの臨場感が増す。また、音声３４７２に、ビンゴを成立させたユーザ８、又は、マスを開けたユーザ８として、当該ユーザ８Ａの識別情報等が含まれる場合、ユーザ８Ａは、複数のユーザ８の中で特別感を感じることができる。
【０４４０】
図３５は、ユーザ５Ｂの動作に応じて、アバターオブジェクト６Ｂが複数のビンゴボールオブジェクト３１４４の何れかを選択する際のゲーム画面の他の例を示す図である。
【０４４１】
図３５に示すゲーム画面は、図３４（Ｂ）に示したゲーム画面に対して、視野画像１４００_Ａ１において、複数のビンゴボールオブジェクト３１４４が表示されている点が異なる。この場合も、キャラクタ制御装置１１０Ｂにおいて表示される視野画像１４００_Ｂ１では、図３４（Ａ）と同様に、複数のビンゴボールオブジェクト３１４４が表示されていないものとする。これにより、ユーザ８Ａは、自身のビンゴカード３２６２に含まれる数値が描かれたビンゴボールオブジェクト３１４４の位置を認識できる。その結果、当該ビンゴボールオブジェクト３１４４をアバターオブジェクト６Ｂが選択するか否かを、さらなる臨場感を持って注目することができる。
【０４４２】
図３６は、ユーザ５Ｂの動作に応じて、アバターオブジェクト６Ｂの選択する動作に応じてビンゴが成立する際の視野画像及びゲーム画面を示す図である。
【０４４３】
図３６（Ａ）において、キャラクタ制御装置１１０Ｂにおける視野画像１４００_Ｂ１は、図３４（Ａ）に示した視野画像１４００_Ｂ１に対して、アバターオブジェクト６Ｂが選択したビンゴボールオブジェクト３１４４に描かれた数値が異なる。また、情報３４５２、３４５３の代わりに、情報３６５２、３６５３が表示される点も異なる。
【０４４４】
アバターオブジェクト６Ｂは、ユーザ５Ｂの動作に応じて、箱オブジェクト３１４２の内部からビンゴボールオブジェクト３１４４「２５」を選択して取り出したものとする。ビンゴボールオブジェクト３１４４「２５」を選択する動作の詳細については、図３４（Ａ）を参照して説明したビンゴボールオブジェクト３１４４「５４」を選択する動作と同様である。
【０４４５】
また、ユーザ５Ｂは、選択したビンゴボールオブジェクト３１４４に描かれた数値「２５」を、音声３６７１として発声する動作を行う。これにより、アバターオブジェクト６Ｂは、ビンゴボールオブジェクト３１４４「２５」を選択するとともに、音声３４７１を発声するよう制御される。
【０４４６】
情報３６５２は、情報３４５２が示す第２ミニゲームの進行状況が更新されたものである。情報３６５２によれば、ビンゴボールオブジェクト３１４４の選択回数が３０回となっている。ここでは、ビンゴゲームの終了条件として、選択回数が３０回に到達することが定められているとする。
【０４４７】
情報３６５３は、情報３４５３に示した複数のユーザ端末８００における第２ＵＩオブジェクトに対する操作結果が更新されたものである。情報３６５３によれば、１４人のユーザ８が「２５」のマス３２６３又は３３６３を開け、合計９人のユーザ８がビンゴを成立させている。
【０４４８】
また、ユーザ５Ｂは、情報３４５２、３４５３の表示に応じて、アバターオブジェクト
６Ｂに、第２ミニゲームの進捗状況、及び、複数のユーザ端末８００における操作結果に応じた動作を行わせる。ここでは、例えば、「ビンゴ終了！ビンゴの人合計９人です。おめでとう」といった音声３６７２を発声する。また、情報３６５３に、ビンゴを成立したユーザ８の識別情報が含まれる場合については、情報３４５３について説明した場合と同様である。
【０４４９】
図３６（Ｂ）において、ユーザ端末８００Ａの表示部８７０２に表示されるゲーム画面は、視野画像１４００_Ａ１と、ＵＩ領域３２６１と、情報３６６５とを含む。
【０４５０】
ここでは、キャラクタ制御装置１１０Ｂから送信された動作指図データに基づいて、視野画像１４００_Ａ１に含まれるアバターオブジェクト６Ｂは、ビンゴボールオブジェクト３１４４「２５」を選択する動作を行うとともに、音声３６７１を発声するよう制御される。
【０４５１】
また、アバターオブジェクト６Ｂがビンゴボールオブジェクト３１４４「２５」を選択したことに応じて、「２５」を含むマス３２６３が操作可能な状態に変化する。ユーザ８Ａは、「２５」を含むマス３２６３に対する操作を行うことにより、当該マス３２６３を開いた状態にして、ビンゴを成立させることができる。
【０４５２】
情報３６５５は、当該ユーザ端末８００Ａにおいて、ビンゴが成立したことを表す情報である。情報３６５５は、「２５」を含むマス３２６３が開いた状態に変化したことに応じて表示される。
【０４５３】
これにより、ユーザ８Ａは、自身がビンゴを成立させたことを認識することができる。
【０４５４】
また、キャラクタ制御装置１１０Ｂから、音声３６７２を発声する動作を表す動作指図データが受信されると、視野画像１４００_Ａ１に含まれるアバターオブジェクト６Ｂが、音声３６７２を発声するよう制御される。これにより、ユーザ８Ａは、自身を含む９人のユーザ８がビンゴを成立させたことを認識でき、複数のユーザ８の中での特別感を感じることができる。また、音声３６７２に、ビンゴを成立させた当該ユーザ８Ａの識別情報等が含まれる場合、ユーザ８Ａは、さらなる特別感を感じることができる。
【０４５５】
＜ライブ配信パートの処理フロー＞
図３７は、ゲームシステム１５００を構成する各装置によって実行される、ライブ配信パートにおける処理の流れを表すフローチャートである。図３７に示す処理の流れは、図２１に示した処理に続いて実行される。
【０４５６】
ステップＳ７０１において、キャラクタ制御装置１１０Ｂの仮想空間制御部２１０６は、第２仮想空間１１_２に移動する操作を受け付ける。第２仮想空間１１_２に移動する操作とは、アバターオブジェクト６Ｂによる所定の仮想オブジェクト（例えば、特別ボタンオブジェクト）を対象とする動作であってもよい。また、第２仮想空間１１_２に移動する操作とは、第１仮想空間１１_１Ｂにおける所定領域内（例えば、仮想ドアの付近）にアバターオブジェクト６Ｂが移動することであってもよい。また、第２仮想空間１１_２に移動する操作とは、コントローラ３００が有する所定ボタンに対する操作であってもよい。ただし、第２仮想空間１１_２Ｂに移動する操作は、これらに限られない。
【０４５７】
ステップＳ７０２において、仮想空間制御部２１０６は、第２仮想空間１１_２を表す第２仮想空間データに基づいて、第２仮想空間１１_２Ｂを規定する。第２仮想空間データは、例えば、サーバ６００から供給される。
【０４５８】
ステップＳ７０３において、仮想空間制御部２１０６は、第２仮想空間１１_２Ｂに、仮想カメラ１４_Ｂ２を配置する。仮想カメラ１４_Ｂ２による視野画像は、アバターオブジェクト６Ｂから見た第２仮想空間１１_２Ｂの視野画像である。
【０４５９】
ステップＳ７０４において、仮想空間制御部２１０６は、第２仮想空間１１_２Ｂに、アバターオブジェクト６Ｂを配置する。また、第１仮想空間１１_１Ｂから、アバターオブジェクト６Ｂを削除する。
【０４６０】
一方、ステップＳ８０１において、ユーザ端末８００Ａのゲーム進行部８１０５は、所定条件が満たされたか否かを判断する。所定条件とは、第２ミニゲームに設定された第２条件が満たされたか否かであってもよい。ステップＳ８０１においてＹｅｓの場合、後述するステップＳ８０４が実行される。ステップＳ８０１でＮｏの場合、次のステップＳ８０２の処理が実行される。
【０４６１】
ステップＳ８０２において、ゲーム進行部８１０５は、ユーザ８Ａによる対価の支払い又は対価の支払いに基づきユーザ８Ａに付与された有価アイテムを消費することを指示するユーザ操作が受け付けられたか否かを判断する。有価アイテムとは、例えば、仮想通貨であってもよい。
【０４６２】
ステップＳ８０２においてＮｏの場合については後述する。ステップＳ８０２においてＹｅｓの場合、次のステップＳ８０３の処理が実行される。
【０４６３】
ステップＳ８０３において、ゲーム進行部８１０５は、課金処理又は有価アイテムを消費する処理を実行し、ステップＳ８０４の処理を実行する。
【０４６４】
ステップＳ８０４において、ゲーム進行部８１０５は、第２仮想空間１１_２Ａへの参加を指示する操作を受け付け、当該操作が受け付けられたか否かを判断する。ステップＳ８０４においてＮｏの場合、ユーザ端末８００Ａにおける処理が終了する。ステップＳ８０４においてＹｅｓの場合、次のステップＳ８０５の処理が実行される。
【０４６５】
ステップＳ８０５において、ゲーム進行部８１０５は、第２仮想空間１１_２を表す第
２仮想空間データに基づいて、第２仮想空間１１_２Ａを規定する。第２仮想空間データは、例えば、サーバ６００から供給される。
【０４６６】
ステップＳ８０６において、仮想空間制御部８１０６は、第２仮想空間１１_２Ａに、仮想カメラ１４_Ａ２を配置する。ここでは、仮想カメラ１４_Ａ２の位置及び方向は、ユーザ８Ａによって操作不能であり、複数のユーザ８が共通の視野画像１４００_Ａ２を視聴するものとする。
【０４６７】
ステップＳ７０５において、仮想空間制御部２１０６は、ユーザ端末８００Ａに対して、アバターオブジェクト６Ｂを表す情報を送信する。
【０４６８】
ステップＳ８０７において、仮想空間制御部８１０６は、受信した情報に基づいて、第２仮想空間１１_２Ａに、アバターオブジェクト６Ｂを配置する。また、第１仮想空間１１_１Ａから、アバターオブジェクト６Ｂを削除する。
【０４６９】
これにより、所定条件が満たされたユーザ端末８００Ａと、キャラクタ制御装置１１０Ｂとの間で、第２仮想空間１１_２が共有される。また、ユーザ端末８００Ａ及びキャラクタ制御装置１１０Ｂ間で、アバターオブジェクト６Ｂが同期して配置される。
【０４７０】
ステップＳ７０６において、仮想空間制御部２１０６は、ＨＭＤ１２０の動きに応じて変化する仮想カメラ１４_Ｂ２の位置及び方向に基づいて、視野画像１４００_Ｂ２を表示し、更新する。
【０４７１】
ステップＳ８０８において、仮想空間制御部８１０６は、仮想カメラ１４_Ａ２の位置及び方向に基づいて、視野画像１４００_Ａ２を表示し、更新する。
【０４７２】
ステップＳ７０７において、仮想空間制御部２１０６は、ユーザ５Ｂの動きに応じてアバターオブジェクト６Ｂの動作を制御する。
【０４７３】
ステップＳ７０８において、仮想空間制御部２１０６は、アバターオブジェクト６Ｂの動作を表す動作指図データを、ユーザ端末８００Ａに送信する。
【０４７４】
ステップＳ８０９において、仮想空間制御部８１０６は、受信した動作指図データに基づいて、アバターオブジェクト６Ｂの動きを制御する。
【０４７５】
これにより、ユーザ端末８００Ａでは、第２仮想空間１１_２Ａにおいて、ユーザ５Ｂの動作に基づいてアバターオブジェクト６Ｂが動作する。また、第１仮想空間１１_１Ａから、アバターオブジェクト６Ｂが消滅する。
【０４７６】
当該ライブ配信パートにおいて、アバターオブジェクト６Ｂの動作は、ユーザ８に楽しんでもらうことを目的として配信されるものであってもよい。例えば、アバターオブジェクト６Ｂの動作は、歌唱、ダンス、スポーツの技等を含むものであってもよいが、これらに限られない。
【０４７７】
このように、ライブ配信パートは、所定条件を満たしたユーザ８、ここでは、第２ミニゲームにおいて第２条件を満たしたユーザ８のみが視聴できる。したがって、第２ミニゲームにおいて第２条件を満たすことに対するユーザ８の動機付けが向上する。また、第２条件を満たしたユーザ８にとって、ライブ配信パートを視聴できることの特別感が増す。
【０４７８】
＜第１仮想空間から第２仮想空間に移動する際の視野画像及びゲーム画面例＞
図３８〜４０は、第１仮想空間１１_１から第２仮想空間１１_２に移動してライブ配信パートが開始されるまでの視野画像及びゲーム画面の遷移例を示す図である。
【０４７９】
図３８（Ａ）は、第１仮想空間１１_１から第２仮想空間１１_２に移動する際にキャラクタ制御装置１１０ＢのＨＭＤ１２０に表示される視野画像１４００_Ｂ１の一例を示す図である。図３８（Ａ）において、キャラクタ制御装置１１０Ｂにおける視野画像１４００_Ｂ１は、特別ボタンオブジェクト３１４１と、仮想左手１８３１ＬＢと、情報２７５１とを含む。情報２７５１については、既に説明した通りである。
【０４８０】
ここでは、アバターオブジェクト６Ｂが、自身の左側に存在する特別ボタンオブジェクト３１４１に対して近づくよう移動したことを想定している。そのため、特別ボタンオブジェクト３１４１が、視野画像１４００_Ｂ１の中央付近の領域に含まれている。また、箱オブジェクト３１４２は、視野画像１４００_Ｂ１に含まれていない。
【０４８１】
ここで、ユーザ５Ｂが、ビンゴが成立したユーザ８Ａのみを対象として、第２仮想空間１１_２に参加可能であることを通知する音声３８７１を発声する動作を行うと、アバターオブジェクト６Ｂが、音声３８７１を発声するよう制御される。ここでは、音声３８７１は、「ビンゴの９人を特別ステージにご招待」との内容である。なお、第２仮想空間１１_２に参加可能であることを通知する動作は、発声に限らず、手振り等であってもよいし、各種の動作の組み合わせであってもよい。
【０４８２】
また、ユーザ５Ｂが、音声３８７１を発声すると同時に、アバターオブジェクト６Ｂに特別ボタンオブジェクト３１４１を押下させる動作を行うと、アバターオブジェクト６Ｂが、当該動作を行うよう制御される。また、アバターオブジェクト６Ｂは、当該動作に応じて、第１仮想空間１１_１Ｂから消えるように制御される。
【０４８３】
図３８（Ｂ）において、ユーザ端末８００Ａの表示部８７０２に表示されるゲーム画面は、視野画像１４００_Ａ１と、ＵＩ領域３８６１とを含む。ＵＩ領域３８６１は、ＵＩ領域３２６１に対して、特別ＵＩボタン３８６４を含む点が異なる。
【０４８４】
ここで、キャラクタ制御装置１１０Ｂから、音声３８７１を発声する動作を表す動作指図データが受信されると、視野画像１４００_Ａ１に含まれるアバターオブジェクト６Ｂが、音声３８７１を発声するよう制御される。
【０４８５】
また、キャラクタ制御装置１１０Ｂから、特別ボタンオブジェクト３１４１を押下する動作を表す動作指図データが受信されると、視野画像１４００_Ａ１に含まれるアバターオブジェクト６Ｂが、当該動作を行った後、第１仮想空間１１_１から消えるよう制御される。
【０４８６】
これにより、ユーザ８Ａは、アバターオブジェクト６Ｂが音声３８７１を発声すると共に特別ボタンオブジェクト３１４１を押下する動作に応じて、アバターオブジェクト６Ｂが第１仮想空間１１_１から第２仮想空間１１_２に移動したことを認識する。
【０４８７】
特別ＵＩボタン３８６４は、ビンゴが成立した場合に表示されるＵＩオブジェクトの一例である。特別ＵＩボタン３８６４に対する操作が受け付けられると、第２仮想空間１１_２Ａを表す視野画像１４００_Ａ２が表示される。
【０４８８】
図３９は、アバターオブジェクト６Ｂが移動した後の第１仮想空間１１_１及び第２仮想空間１１_２を模式的に示す図である。
【０４８９】
図３９（Ａ）は、ユーザ端末８００Ａ及びキャラクタ制御装置１１０Ｂ間で共有される第１仮想空間１１_１の斜視図である。アバターオブジェクト６Ｂは、特別ボタンオブジェクト３１４１を対象とする動作が行われた後、第１仮想空間１１_１から消えるよう制御される。したがって、図３９（Ａ）に示す第１仮想空間１１_１は、パネルオブジェクト３１５１、特別ボタンオブジェクト３１４１、箱オブジェクト３１４２を含むが、アバターオブジェクト６Ｂを含んでいない。
【０４９０】
図３９（Ｂ）は、ユーザ端末８００Ａ及びキャラクタ制御装置１１０Ｂ間で共有される第２仮想空間１１_２の斜視図である。第２仮想空間１１_２は、アバターオブジェクト６Ｂを含んでいる。当該アバターオブジェクト６Ｂは、図示のように、第１仮想空間１１_１に存在していたときと異なる態様で表示されてもよい。異なる態様とは、例えば、洋服、持ち物（ここでは、マイク）が異なることであってもよいが、これに限られない。アバターオブジェクト６Ｂが異なる態様で表示されることにより、第２仮想空間１１_２において進行するライブ配信パートの特別感が向上する。
【０４９１】
図４０は、ユーザ端末８００Ａにおいて表示される視野画像１４００_Ａ２の一例を示す図である。図４０において、視野画像１４００_Ａ２は、第２仮想空間１１_２Ａにおいて動作するアバターオブジェクト６Ｂを含んでいる。視野画像１４００_Ａ２は、ビンゴを成立させたユーザ８のみが視聴できる。
【０４９２】
＜チャットパートの処理フロー＞
図４１は、ユーザ端末８００Ａによって実行される、チャットパートにおける処理の流れを表すフローチャートである。図４１に示す処理の流れは、図３７のステップＳ８０２でＮｏとなった場合に実行される。
【０４９３】
ステップＳ９０１において、ゲーム進行部８１０５は、チャットパートに応じたＵＩオブジェクトを表示部８７０２に表示する。ＵＩオブジェクトは、コメントの入力を受け付けるフィールドと、コメントの送信を指示する操作を受け付けるボタンとを含む。
【０４９４】
ステップＳ９０２において、ゲーム進行部８１０５は、ユーザ８Ａによって入力されたコメントを表す情報を取得する。
【０４９５】
ステップＳ９０３において、ゲーム進行部８１０５は、コメントを送信することを指示するユーザ８Ａの操作に応じて、取得したコメントを表す情報を、サーバ６００に対して送信する。
【０４９６】
ステップＳ９０４において、ゲーム進行部８１０５は、取得したコメントを表す情報を、視野画像１４００_Ａ１に重畳して表示する。
【０４９７】
ステップＳ９０５において、ゲーム進行部８１０５は、所定条件が満たされなった他のユーザ８によって他のユーザ端末８００において入力されたコメントを表す情報を取得する。当該情報は、サーバ６００から送信されることにより取得可能である。
【０４９８】
ステップＳ９０６において、ゲーム進行部８１０５は、他のユーザ８によって入力されたコメントを表す情報を、視野画像１４００_Ａ１に重畳して表示する。
【０４９９】
ステップＳ９０７において、ゲーム進行部８１０５は、チャットパートを終了するか否かを判断する。例えば、チャットパートは、ユーザ８Ａによってチャットパートの終了を指示する操作が受け付けられた場合に、チャットパートを終了すると判断してもよい。
【０５００】
ステップＳ９０７においてＮｏの場合、ステップＳ９０２からの処理が実行される。ステップＳ９０７においてＹｅｓの場合、処理が終了する。
【０５０１】
このように、ゲーム進行部８１０５は、ユーザ８Ａによって入力されたコメントを表す情報と、他のユーザ８によって入力されたコメントを表す情報とを、視野画像１４００_Ａ１に重畳して表示する。
【０５０２】
＜チャットパートにおけるゲーム画面例＞
図４２は、チャットパートにおけるゲーム画面例の一例を示す図である。表示部８７０２は、視野画像１４００_Ａ１と、ＵＩ領域３２６１と、フィールド４２３１と、送信ボタン４２３２と、コメント４２５１〜４２５４とを含む。視野画像１４００_Ａ１と、ＵＩ領域３２６１とは、第１ミニゲームから第２ミニゲームに遷移する時点（図３８（Ｂ））と同様に構成される。
【０５０３】
フィールド４２３１及び送信ボタン４２３２は、チャットパートに応じたＵＩオブジェクトの一例である。フィールド４２３１は、コメントの入力を受け付けるＵＩオブジェクトである。送信ボタン４２３２は、コメントの送信指示を受け付けるＵＩオブジェクトである。フィールド４２３１に入力された情報は、送信ボタン４２３２に対する操作が受け付けられることによって、サーバ６００に送信される。
【０５０４】
コメント４２５１、４２５４は、他のユーザ端末８００において他のユーザ８によって入力されたコメントを表す情報である。これらの情報は、サーバ６００を介して他のユーザ端末８００から受信される。コメント４２５２、４２５３は、当該ユーザ端末８００Ａにおいてユーザ８Ａによって入力されたコメントを表す情報である。これらの情報は、サーバ６００を介して他のユーザ端末８００に送信される。コメント４２５１、４２５４は、当該ユーザ端末８００において受信された順に、視野画像１４００_Ａ１に重畳されて表示されている。また、他のユーザ８によって入力された情報はゲーム画面の左側に表示され、ユーザ８Ａによって入力された情報はゲーム画面の右側に表示される。
【０５０５】
このように、コメント４２５１〜４２５４が視野画像１４００_Ａ１に重畳されることにより、所定条件が満たされかったユーザ８間で、第２仮想空間１１_２Ａに参加できず第１仮想空間１１_１Ａに取り残された残念感を共有することができる。
【０５０６】
〔変形例〕
なお、本実施形態において、ゲームシステム１５００に係るゲームは、第１プレイパート（第２ミニゲーム）が開始する前に、第１ユーザ（ユーザ５Ｂ）の操作によらずに、第３課題が設定された第３プレイパートを進行させてもよい。この場合、ユーザ端末８００のゲーム進行部８１０５は、第３プレイパートにおける第３課題の達成度が大きいほど、第１プレイパート（第２ミニゲーム）におけるアバターオブジェクト６Ｂの選択する動作による選択の結果に応じて、第１課題を達成する上でより有利な処理を実行してもよい。第３プレイパートは、例えば、ロールプレイングゲーム、クイズゲーム、アクションゲーム、位置情報を使用したゲームその他のゲームジャンルのゲームであるとしてもよい。第３プレイパートにおける第３課題としては、例えば、ゲームプレイにおいてプレイヤーに設定されたゲーム課題であり、所定のゲームアイテムをプレイヤーが獲得すること、所定のプレイ単位（いわゆるクエストなど）のクリア条件を満たすこと、所定のスコアを獲得すること、その他の課題を含む。上記の実施形態の説明では、第１ミニゲーム（ジャンケン）の結果が良好であるほど、第２ミニゲーム（ビンゴゲーム）がプレイヤーに有利になる（ビンゴカードでビンゴになりやすくなるよう、ビンゴカードの各マスに複数の数字が関連付けられる）ものとしたが、このように、第３プレイパートのプレイ結果が良好であるほど、第１ミニゲームまたは第２ミニゲームの進行がプレイヤーに有利になるようにしてもよい。また、これら第１ミニゲームまたは第２ミニゲームの進行中や、進行前において課金処理のための操作をプレイヤーから受け付けることにより、第１ミニゲームまたは第２ミニゲームがプレイヤーに有利になるようにしてもよい。ここで、課金処理のためのプレイヤーの操作とは、ゲームプログラムにおいて有償仮想通貨を購入する操作であってもよいし、プレイヤーが有償仮想通貨を消費して（または課金処理により）ゲームオブジェクトを入手して、当該ゲームオブジェクトを、アバターオブジェクト６Ｂが配置される仮想空間に対して配置するよう指示する操作（いわゆる投げ銭）などであってもよい。
【０５０７】
換言すると、第３プレイパートは、ユーザ５Ｂの操作に応じたアバターオブジェクト６Ｂの動作とは無関係に進行するパートとして提供される。また、第３プレイパートは、第２ミニゲームを含むライブゲーム進行パートが開始する前にプレイ可能である。なお、第３プレイパートはユーザ端末８００のユーザ８の操作に基づいて進行するシングルプレイパートであってもよい。また、第３プレイパートは、複数のユーザ端末８００のユーザ８の操作に基づいて進行するマルチプレイパートであってもよい。また、第３プレイパートは、ユーザ５Ｂの操作によらずに動作するキャラクタを用いて進行してもよい。
【０５０８】
また、本実施形態において、ユーザ端末８００において実現される第１仮想空間１１_１Ａ、第２仮想空間１１_２Ａに配置される仮想カメラ１４_Ａ１、１４_Ａ２の位置及び方向は、ユーザ８によって操作可能であってもよい。例えば、ユーザは、視野画像１４００_Ａ１、１４００_Ａ２が表示された表示部８７０２に対する操作を行うことにより、仮想カメラ１４_Ａ１、１４_Ａ２の位置及び方向を制御可能であってもよい。この場合、仮想カメラ１４_Ａ１、１４_Ａ２は、アバターオブジェクト６Ｂを含む所定領域には配置できないように制御されていてもよい。例えば、アバターオブジェクト６Ｂが存在する仮想的なステージの領域を当該所定領域として規定する。この場合、ユーザ８は、ステージ以外の領域であれば自由な位置に移動してアバターオブジェクト６を視聴できるという仮想体験をすることができる。
【０５０９】
また、本実施形態において、第１ミニゲーム及び第２ミニゲームにおける選択肢オブジェクトは、１つの選択肢オブジェクトで複数の選択肢を表すものであってもよい。例えば、サイコロオブジェクトであれば、１つのサイコロオブジェクトで１から６までの６つの選択肢を表す。また、コインオブジェクトであれば、１つのコインオブジェクトで表と裏との２つの選択肢を表す。この場合、アバターオブジェト６Ｂが選択肢の何れかを選択する動作としては、サイコロオブジェクトを転がす動作、コインオブジェクトを投げる動作といったような、当該選択肢オブジェクトに応じた動作が適用される。この場合、当該選択肢オブジェクトには、仮想手が接触したと判定された状態でコントローラ３００が有する所定ボタンの操作が検出された場合の挙動として、転がる挙動、上昇後落下する挙動等、当該選択肢オブジェクトに応じた挙動が定められる。
【０５１０】
また、本実施形態において、アバターオブジェクト６Ｂによってビンゴボールオブジェクトが選択された後に、当該ビンゴボールオブジェクトの数値が決定されてもよい。この場合、決定された数値が、選択されたビンゴボールオブジェクトの表面に表示されてもよい。また、この場合、箱オブジェクト３１４２の中には、少なくとも１つのビンゴボールオブジェクトが配置されていればよい。
【０５１１】
また、本実施形態において、第２ミニゲームであるビンゴゲームが有利になる程度が、第１ミニゲームにおいて第１条件が満たされた程度に応じて段階的に決定されてもよい。例えば、ジャンケンゲームにおいて、ジャンケンが複数回行われる場合、ユーザ８が勝った回数に応じた枚数のビンゴカードが、ビンゴゲームにおいてユーザに付与されてもよい。
【０５１２】
また、本実施形態において、ユーザ端末８００は、仮想空間制御部８１０６を有していなくてもよい。この場合、キャラクタ制御装置１１０Ｂは、当該装置においてＨＭＤ１２０に表示する視野画像に加えて、ユーザ端末８００用の視野画像を生成してもよい。また、この場合、当該ユーザ端末８００用の視野画像は、ユーザ端末８００に配信されることにより再生される。例えば、この場合、キャラクタ制御装置１１０Ｂにおいて実現される第１仮想空間１１_１Ｂに、仮想カメラ１４_Ｂ１に加えて仮想カメラ１４_Ａ１が配置される。キャラクタ制御装置１１０Ｂは、仮想カメラ１４_Ａ１に基づく視野画像１４００_Ａ１を生成し、ユーザ端末８００Ａに配信すればよい。第２仮想空間１１_２Ｂに応じた視野画像１４００_Ａ２も、同様にキャラクタ制御装置１１０Ｂにおいて生成され、配信可能である。この場合、視野画像１４００_Ａ１及び１４００_Ａ２は、それぞれ、キャラクタ制御装置１１０Ｂのユーザ５Ｂの操作に応じてリアルタイムに生成され、リアルタイムに配信されてもよい。また、視野画像１４００_Ａ１及び１４００_Ａ２は、それぞれ、あらかじめ生成された録画映像として配信されてもよい。
【０５１３】
また、本実施形態において、本発明における第１キャラクタ及び第２キャラクタとして、異なるキャラクタを適用してもよい。この場合、ライブゲーム進行パートにおいて所定条件を満たしたユーザ８は、ライブゲーム進行パートを進行したアバターオブジェクト６Ｂとは異なるアバターオブジェクトによるライブ配信パートを視聴することができる。
【０５１４】
また、本実施形態において、本発明における第１キャラクタ制御装置及び第２キャラクタ制御装置として、異なるキャラクタ制御装置を適用してもよい。例えば、第２キャラクタ制御装置として、ＨＭＤセット１１０Ｃを適用してもよい。この場合、ライブ配信パートは、ユーザ５Ｃ（第２ユーザ）の操作に基づいて進行する。
【０５１５】
上記実施形態においては、ＨＭＤによってユーザが没入する仮想空間（ＶＲ空間）を例示して説明したが、ＨＭＤとして、透過型のＨＭＤを採用してもよい。この場合、透過型のＨＭＤを介してユーザが視認する現実空間に仮想空間を構成する画像の一部を合成した視界画像を出力することにより、拡張現実（ＡＲ：Augumented Reality）空間または複合現実（ＭＲ：Mixed Reality）空間における仮想体験をユーザに提供してもよい。この場合、操作オブジェクトに代えて、ユーザの手の動きに基づいて、仮想空間内における対象オブジェクトへの作用を生じさせてもよい。具体的には、プロセッサは、現実空間におけるユーザの手の位置の座標情報を特定するとともに、仮想空間内における対象オブジェクトの位置を現実空間における座標情報との関係で定義してもよい。これにより、プロセッサは、現実空間におけるユーザの手と仮想空間における対象オブジェクトとの位置関係を把握し、ユーザの手と対象オブジェクトとの間で上述したコリジョン制御等に対応する処理を実行可能となる。その結果、ユーザの手の動きに基づいて対象オブジェクトに作用を与えることが可能となる。
【０５１６】
〔ソフトウェアによる実現例〕
制御部２１００の制御ブロック（特に、操作受付部２１０１、表示制御部２１０２、ＵＩ制御部２１０３、アニメーション生成部２１０４、ゲーム進行部２１０５、仮想空間制御部２１０６、および反応処理部２１０７）、制御部６１００の制御ブロック（特に、進行支援部６１０１および共有支援部６１０２）、ならびに、制御部８１００の制御ブロック（特に、操作受付部８１０１、表示制御部８１０２、ＵＩ制御部１１３、アニメーション生成部８１０４、ゲーム進行部８１０５、仮想空間制御部８１０６、および進捗情報生成部８１０７）は、集積回路（ＩＣチップ）等に形成された論理回路（ハードウェア）によって実現してもよいし、ＣＰＵ（Central Processing Unit）を用いてソフトウェアによって実現してもよい。
【０５１７】
後者の場合、制御部２１００、制御部６１００及び制御部８１００の一部又は全部を備えた情報処理装置は、各機能を実現するソフトウェアであるプログラムの命令を実行するＣＰＵ、上記プログラムおよび各種データがコンピュータ（またはＣＰＵ）で読み取り可能に記録されたＲＯＭ（Read Only Memory）または記憶装置（これらを「記録媒体」と称する）、上記プログラムを展開するＲＡＭ（Random Access Memory）などを備えている。そして、コンピュータ（またはＣＰＵ）が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体（通信ネットワークや放送波等）を介して上記コンピュータに供給されてもよい。なお、本発明の一態様は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
【０５１８】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【０５１９】
〔付記事項〕
本発明の一側面に係る内容を列記すると以下のとおりである。
【０５２０】
（項目１）プロセッサ（８１０）と、メモリ（８２０）とを備えるコンピュータ（ユーザ端末８００）により実行されるゲームプログラム（８３１）について説明した。本開示のある局面によると、ゲームプログラムは、プロセッサおよびメモリを備え、配信者が行うリアルタイム配信を視聴者が視聴するための視聴端末としてのコンピュータにより実行されるゲームプログラムである。ゲームプログラムは、プロセッサに、第１配信者がリアルタイム配信を行うための第１配信端末と、視聴端末を含む複数の視聴端末との間で共有される第１仮想空間に、第１配信者に対応する第１アバターオブジェクトと、第１仮想カメラとを配置するステップと、リアルタイム配信が行われる間、第１仮想カメラの視野領域を示す第１視野画像を表示部に表示するステップと、ゲームプログラムに基づくゲームに含まれる、複数の状態間を遷移しながら進行する第１ゲームパートの状態ごとに、１つの状態におけるゲームを、第１配信者の身体の動き及び視聴者の操作に基づき進行させるゲーム処理を行うステップと、を実行させ、各状態におけるゲーム処理は、第１配信端末が第１配信者の身体の動きを検出して生成した、第１アバターオブジェクトの動作を示す第１動作情報を受信するステップと、第１動作情報が受信されたことに応答して、当該第１動作情報が示す動きを第１アバターオブジェクトが行うことを含むよう、第１視野画像を更新するステップと、第１動作情報が受信されたことに応答して、第１動作情報が示す動きが状態を遷移させるための動きであるか否かを判定するステップと、第１動作情報が示す動きが遷移させるための動きである場合に、第１ゲームパートの進行を、現在の状態から他の状態に遷移させるステップと、を含む。上記の構成によれば、第１配信者の身体の動き及び前記視聴者の操作に基づき各状態が進行する第１ゲームパートにおいて、視聴者は、ゲームを進行させる第１アバターオブジェクトの遷移させるための動作によって、第１ゲームパートの状態が切り替わることを認識できるので、臨場感が増し、ゲームへの没入感が高まる。
【０５２１】
（項目２）（項目１）において、第１アバターオブジェクト及び第１仮想カメラを配置するステップは、第１仮想空間に第１オブジェクトをさらに配置し、判定するステップは、第１動作情報が示す動きが、第１仮想空間において第１アバターオブジェクトに第１オブジェクトを操作させる動きであるとき、遷移させるための動きであると判定してもよい。これにより、視聴者は、第１アバターオブジェクトが第１オブジェクトを操作する動作に応じて、第１ゲームパートの状態が切り替わることを認識できる。
【０５２２】
（項目３）（項目２）において、第１アバターオブジェクト及び第１仮想カメラを配置するステップは、第１アバターオブジェクトの少なくとも一部として、第１アバターオブジェクトの手を表す操作オブジェクトを配置し、判定するステップは、第１動作情報が示す動きが、第１仮想空間において操作オブジェクトを第１オブジェクトに接触させる動きであるとき、遷移させるための動きであると判定してもよい。これにより、視聴者は、第１アバターオブジェクトの手が第１オブジェクトに接触すると、第１ゲームパートの状態が切り替わることを認識できる。
【０５２３】
（項目４）（項目１）から（項目３）の何れか１項目において、各状態におけるゲーム処理は、視聴者の操作を受け付けるためのユーザインタフェース（ＵＩ）オブジェクトであって、遷移前の状態に関連付けられたＵＩオブジェクトを表示部から消去するとともに、現在の状態に関連付けられたＵＩオブジェクトを第１視野画像と共に表示部に表示するステップをさらに含んでもよい。これにより、視聴者は、第１アバターオブジェクトによって遷移させるための動作が行われた結果、操作性（ＵＩオブジェクト）が切り替わることで、第１ゲームパートの状態が遷移したことを認識できる。
【０５２４】
（項目５）（項目１）から（項目４）の何れか１項目において、各状態におけるゲーム処理は、遷移前の状態に関連付けられた第２オブジェクトを第１仮想空間から消去するとともに、当該遷移前の状態に関連付けられた第２オブジェクトとは態様の異なる、現在の状態に関連付けられた第２オブジェクトを第１仮想空間に配置するステップをさらに含んでもよい。これにより、視聴者は、第１アバターオブジェクトによって遷移させるための動作が行われた結果、第１仮想空間に配置される第２オブジェクトが切り替わることで、第１ゲームパートの状態が遷移したことを認識できる。
【０５２５】
（項目６）（項目１）から（項目５）の何れか１項目において、第１アバターオブジェクト及び第１仮想カメラを配置するステップは、各状態を示す情報を表示するための第３オブジェクトを第１仮想空間にさらに配置し、各状態におけるゲーム処理は、第３オブジェクトに表示される情報を、遷移前の状態を示す情報から、現在の状態を示す情報に変更するステップをさらに含んでもよい。これにより、視聴者は、第１アバターオブジェクトによって遷移させるための動作が行われた結果、第１仮想空間に配置された第３オブジェクトの表示が切り替わることで、第１ゲームパートの状態が遷移したことを認識できる。
【０５２６】
（項目７）（項目１）から（項目６）の何れか１項目において、各状態におけるゲーム処理の少なくとも１つは、現在の状態に遷移する以前の少なくとも１つの状態に関連付けてメモリに記憶された達成度をメモリから取得するステップと、メモリから取得された達成度が高いほど、現在の状態に関連付けられた第１条件の達成度を高める上で視聴者にとって有利な処理を実行するステップと、第１配信者の身体の動き及び視聴者の操作に基づいて、第１条件が達成された達成度を判定するステップと、達成度を現在の状態に関連付けてメモリに記憶させるステップと、をさらに含んでもよい。これにより、ある状態において第１条件の達成度を高めるためには、当該状態に遷移する以前の少なくとも１つの状態において第１条件の達成度を高めることが有効となる。その結果、各状態において第１条件の達成度を高めることに対する視聴者の動機付けが向上する。
【０５２７】
（項目８）（項目１）から（項目７）の何れか１項目において、ゲームプログラムは、プロセッサに、ゲームに含まれる、第１ゲームパートとは異なる第２ゲームパートを、視聴者の操作に応答して進行させるステップと、第２ゲームパートにおいて、視聴者の操作に基づき第２条件が達成された達成度を判定するステップと、第２条件の達成度をメモリに記憶させるステップと、をさらに実行させ、第１ゲームパートの各状態におけるゲーム処理の少なくとも１つは、第２条件の達成度をメモリから取得するステップと、第２条件の達成度が高いほど、現在の状態に関連付けられた第１条件の達成度を高める上で、視聴者にとって有利な処理を実行するステップと、をさらに含んでもよい。これにより、第１ゲームパートの少なくとも何れかの状態においてより有利に第１条件を達成するために、その前に、第２ゲームパートにおいて第２条件の達成度を高めることが有効となる。その結果、第１ゲームパートを視聴する前に、第２ゲームパートをプレイして第２条件の達成度を高めることに対する視聴者の動機付けが向上する。
【０５２８】
（項目９）（項目７）または（項目８）において、第１ゲームパートの各状態におけるゲーム処理の少なくとも１つは、第１仮想空間に、複数の選択肢オブジェクトをさらに配置するステップと、複数の選択肢オブジェクトの一部または全部の各々に関連付けられた、視聴者の操作を受け付ける複数の第１ＵＩオブジェクトを、第１視野画像と共に表示部に表示するステップと、第１動作情報が示す動きが、第１仮想空間において第１アバターオブジェクトに複数の選択肢オブジェクトの一部を選択させるための動きであるか否かを判定するステップと、第１動作情報が示す動きが選択させるための動きである場合に、第１アバターオブジェクトによって選択された選択肢オブジェクトを特定するステップと、特定した選択肢オブジェクトに関連付けられた第１ＵＩオブジェクトに対する視聴者の操作に応答して、現在の状態に関連付けられた第１条件の少なくとも一部を達成する処理を実行するステップと、をさらに含み、有利な処理を実行するステップは、第１ＵＩオブジェクトを表示するステップにおいて表示部に表示される第１ＵＩオブジェクトの数をより多くする処理を実行してもよい。これにより、より多くの第１ＵＩオブジェクトが表示部に表示されれば、何れかの第１ＵＩオブジェクトに関連付けられた選択肢オブジェクトが第１アバターオブジェクトによって選択される可能性がより高くなるので、視聴者にとって、第１条件が達成しやすくなるという有利な効果がある。
【０５２９】
（項目１０）（項目１）から（項目９）の何れか１項目において、第１ゲームパートの各状態におけるゲーム処理のうち特定のゲーム処理は、遷移させるための動きであるか否かを判定するステップと、遷移させるステップとに代えて、現在の状態に関連付けられた特定の条件が満たされたか否かを判定するステップと、特定の条件が満たされた場合に、ゲームを第１ゲームパートから、第１ゲームパートとは異なる第３ゲームパートへ移行させるステップと、をさらに含み、ゲームプログラムは、プロセッサに、第３ゲームパートにおいて、複数の視聴端末のうち、特定の条件が満たされた複数の視聴端末と、第２配信者がリアルタイム配信を行うための第２配信端末との間で共有される、第１仮想空間とは異なる第２仮想空間に、第２配信者に対応する第２アバターオブジェクトと、第２仮想カメラとを配置するステップと、第３ゲームパートにおいてリアルタイム配信が行われる間、第２仮想カメラの視野領域を示す第２視野画像を、第１視野画像に代えて表示部に表示するステップと、第２配信端末が第２配信者の身体の動きを検出して生成した、第２アバターオブジェクトの動作を示す第２動作情報を受信するステップと、第２動作情報が受信されたことに応答して、当該第２動作情報が示す動きを第２アバターオブジェクトが行うことを含むよう、第２視野画像を更新するステップと、をさらに実行させてもよい。これにより、第１仮想空間とは異なる第２仮想空間でのリアルタイム配信を視聴するために、第１ゲームパートにおいて特定の条件が満たされるよう、特定の状態を進行することの動機付けが向上する。
【０５３０】
（項目１１）（項目１０）において、ゲームプログラムは、プロセッサに、特定の条件が満たされなかった場合に、視聴者によって入力される第１入力情報を取得するステップと、第１入力情報が取得されたことに応答して、第１入力情報を、複数の視聴端末のうち、特定の条件が満たされなかった他の視聴端末に送信するステップと、特定の条件が満たされなかった他の視聴端末の視聴者によって入力された第２入力情報を受信するステップと、第１入力情報および第２入力情報を、第１視野画像と共に表示部に表示するステップと、をさらに実行させてもよい。これにより、特定の条件が満たされなかった視聴者間で、第２仮想空間に参加できなかった残念感を共有する場を提供できる。
【０５３１】
（項目１２）（項目１０）又は（項目１１）において、ゲームプログラムは、プロセッサに、特定の条件が満たされなかった場合に、視聴者による対価の支払い、又は、対価の支払いに基づき視聴者に付与されたアイテムの消費を指示する操作を受け付けるステップと、指示する操作に応答して、対価の課金処理またはアイテムを消費する処理を実行するとともに、ゲームを第１ゲームパートから第３ゲームパートへ移行させるステップと、
をさらに実行させてもよい。これにより、特定の条件が満たされなくても、第３ゲームパートに参加可能な手段を視聴者に提供できる。
【０５３２】
（項目１３）ゲームプログラムを実行する方法を説明した。本開示のある局面によると、ゲームプログラムは、プロセッサおよびメモリを備えるコンピュータにより実行される。該方法は、プロセッサが（項目１）に記載の各ステップを実行する方法である。（項目１３）に係る方法は、（項目１）に係るゲームプログラムと同様の作用効果を奏する。
【０５３３】
（項目１４）情報処理装置を説明した。本開示のある局面によると、該情報処理装置は、（項目１）に係るゲームプログラムを記憶するメモリ（８２０）と、該ゲームプログラムを実行することにより、情報処理装置（ユーザ端末８００）の動作を制御するプロセッサ（８１０）とを備える。（項目１４）に係る情報処理装置は、（項目１）に係るゲームプログラムと同様の作用効果を奏する。
【符号の説明】
【０５３４】
２  ネットワーク、５，５Ａ，５Ｂ，５Ｃ、５Ｄ  ユーザ、６，６Ａ，６Ｂ，６Ｃ，６Ｄ  アバターオブジェクト、１１，１１Ａ，１１Ｂ，１１Ｃ，１１Ｄ  仮想空間、１２中心、１３  パノラマ画像、１４，１４Ａ，１４Ｂ  仮想カメラ、１５，１５Ａ，１５Ｂ，１５Ｃ  視界領域、１６  基準視線、１７，１７Ａ，１７Ｂ  視界画像、１８，１９領域、１００  ＨＭＤシステム、１１０，１１０Ａ，１１０Ｂ，１１０Ｃ，１１０Ｄ  ＨＭＤセット、１２０，１２０Ａ，１２０Ｂ，１２０Ｃ、ＨＭＤ、１３０，１３０Ａ，１３０Ｂ，１３０Ｃ    モニタ、１４０  注視センサ、１５０  第１カメラ、１６０  第２カメラ、１７０，１７０Ａ，１７０Ｂ  マイク、１８０，１８０Ａ，１８０Ｂ  スピーカ、１９０  センサ、２００，２００Ａ，２００Ｂ  コンピュータ、２１０，２１０Ａ、２１０Ｂ，２１０Ｃ，２１０Ｄ，６１０，８１０，８１０Ａ  プロセッサ、２２０，６２０，８２０  メモリ、２３０，２３０Ａ，２３０Ｂ，６３０，８３０  ストレージ、２４０，６４０，８４０  入出力インターフェイス、２５０，６５０，８５０  通信インターフェイス、２６０，６６０バス、３００，３００Ｂ  コントローラ、３００Ｒ  右コントローラ、３００Ｌ  左コントローラ、３１０  グリップ、３２０  フレーム、３３０  天面、３４０，３４０，３５０，３７０，３８０  ボタン、３６０  赤外線ＬＥＤ、３９０  アナログスティック、４１０  ＨＭＤセンサ、４２０，４２０Ａ  モーションセンサ、４３０，４３０Ａ  ディスプレイ、５１０  コントロールモジュール、５２０  レンダリングモジュール、５３０  メモリモジュール、５４０  通信制御モジュール、６００サーバ、１４２１、８１２１  仮想オブジェクト生成モジュール、１４２２、８１２２  仮想カメラ制御モジュール、１４２３  操作オブジェクト制御モジュール、１４２４、８１２４  アバターオブジェクト制御モジュール、１４２５  動き検出モジュール、１４２６  衝突検出モジュール、１４２７、８１２７  仮想オブジェクト制御モジュール、１５００  ゲームシステム、８１０  プロセッサ、８２０  メモリ、８３０  ストレージ、８４０  入出力ＩＦ、８５０  通信ＩＦ、８７０  タッチスクリーン（表示部、操作部）、８６０  カメラ（操作部）、８８０  測距センサ（操作部）、８００  ユーザ端末（情報処理装置）、２１００、６１００、８１００  制御部、２２００、６２００、８２００  記憶部  ２１０１、８１０１  操作受付部、２１０２、８１０２  表示制御部、２１０３、８１０３  ＵＩ制御部、２１０４、８１０４  アニメーション生成部、２１０５、８１０５  仮想空間制御部、２１０６、８１０６  仮想空間制御部、２１０７  反応処理部、８１０７  進捗情報生成部、６１０１  進行支援部、６１０２  共有支援部、２３１、６３１、８３１  ゲームプログラム、１３２  ゲーム情報、１３３  ユーザ情報、１５１  入力部（操作部）、１５２  表示部、２００  サーバ、１０１０  物体、１０２０  コントローラ（操作部）、１０３０  記憶媒体
【図１】
2020179184.tif 000003
【図２】
2020179184.tif 000004
【図３】
2020179184.tif 000005
【図４】
2020179184.tif 000006
【図５】
2020179184.tif 000007
【図６】
2020179184.tif 000008
【図７】
2020179184.tif 000009
【図８（Ａ）】
2020179184.tif 000010
【図８（Ｂ）】
2020179184.tif 000011
【図９】
2020179184.tif 000012
【図１０】
2020179184.tif 000013
【図１１】
2020179184.tif 000014
【図１２（Ａ）】
2020179184.tif 000015
【図１２（Ｂ）】
2020179184.tif 000016
【図１３】
2020179184.tif 000017
【図１４】
2020179184.tif 000018
【図１５】
2020179184.tif 000019
【図１６】
2020179184.tif 000020
【図１７】
2020179184.tif 000021
【図１８】
2020179184.tif 000022
【図１９】
2020179184.tif 000023
【図２０】
2020179184.tif 000024
【図２１】
2020179184.tif 000025
【図２２】
2020179184.tif 000026
【図２３】
2020179184.tif 000027
【図２４】
2020179184.tif 000028
【図２５】
2020179184.tif 000029
【図２６】
2020179184.tif 000030
【図２７】
2020179184.tif 000031
【図２８】
2020179184.tif 000032
【図２９】
2020179184.tif 000033
【図３０】
2020179184.tif 000034
【図３１】
2020179184.tif 000035
【図３２】
2020179184.tif 000036
【図３３】
2020179184.tif 000037
【図３４】
2020179184.tif 000038
【図３５】
2020179184.tif 000039
【図３６】
2020179184.tif 000040
【図３７】
2020179184.tif 000041
【図３８】
2020179184.tif 000042
【図３９】
2020179184.tif 000043
【図４０】
2020179184.tif 000044
【図４１】
2020179184.tif 000045
【図４２】
2020179184.tif 000046