JP6514397B1 - SYSTEM, PROGRAM, METHOD, AND INFORMATION PROCESSING APPARATUS - Google Patents
SYSTEM, PROGRAM, METHOD, AND INFORMATION PROCESSING APPARATUS Download PDFInfo
- Publication number
- JP6514397B1 JP6514397B1 JP2018125418A JP2018125418A JP6514397B1 JP 6514397 B1 JP6514397 B1 JP 6514397B1 JP 2018125418 A JP2018125418 A JP 2018125418A JP 2018125418 A JP2018125418 A JP 2018125418A JP 6514397 B1 JP6514397 B1 JP 6514397B1
- Authority
- JP
- Japan
- Prior art keywords
- user
- virtual
- avatar
- virtual space
- performance
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Abstract
【課題】仮想空間におけるユーザの仮想体験の興趣性をより高めることができるシステム、プログラム、方法及び情報処理装置を提供する。【解決手段】システムにおいて、コンピュータ1791は、第1パフォーマンスにおける、演者の身体の動きを検出しS2323、コンピュータ200Aは、ユーザに仮想体験を提供するための仮想空間を定義しS2301、演者に関連付けられるアバターオブジェクト1533を仮想空間に配置しS2311、コンピュータ1791が検出した演者の身体の動きに応じて、アバターオブジェクト1533に、第1パフォーマンスに対応する第2パフォーマンスを実行させるS2313を備える。【選択図】図23Provided are a system, a program, a method, and an information processing apparatus capable of further enhancing the interest of a user's virtual experience in a virtual space. In the system, a computer 1791 detects movement of a body of a performer in a first performance, S2323, and a computer 200A defines a virtual space for providing a virtual experience to a user and is associated with the performer S2301. The avatar object 1533 is disposed in the virtual space, and S2311 includes S2313 that causes the avatar object 1533 to execute a second performance corresponding to the first performance according to the movement of the performer's body detected by the computer 1791. [Selected figure] Figure 23
Description
本発明はシステム、プログラム、プログラムを実行する方法、および情報処理装置に関する。 The present invention relates to a system, a program, a method of executing the program, and an information processing apparatus.
特許文献1〜3に、仮想空間においてユーザにコンテンツを視聴させる技術の一例が開示されている。
従来の技術には、仮想空間におけるユーザの仮想体験の興趣性をより高めることができる余地がある。 The prior art has room to be able to further enhance the interest of the virtual experience of the user in the virtual space.
本発明の一態様は、仮想空間におけるユーザの仮想体験の興趣性をより高めることを目的とする。 An aspect of the present invention aims to further enhance the interest of the virtual experience of the user in the virtual space.
本発明の一態様によれば、現実空間にて観客に対して第1パフォーマンスを行う演者に関連付けられた第1コンピュータと、第1ユーザに関連付けられた、第1ユーザに仮想体験を提供するための第2コンピュータとを含むシステムが提供される。システムにおいて、第1コンピュータは、第1パフォーマンスにおける、演者の身体の動きを検出する。第2コンピュータは、第1ユーザに仮想体験を提供するための仮想空間を定義し、演者に関連付けられる第1アバターを仮想空間に配置し、第1コンピュータが検出した演者の身体の動きに応じて、第1アバターに、第1パフォーマンスに対応する第2パフォーマンスを実行させる。 According to an aspect of the present invention, there is provided a first computer associated with a performer performing a first performance on an audience in real space, and a virtual experience for a first user associated with a first user. And a second computer. In the system, a first computer detects movement of a performer's body in a first performance. The second computer defines a virtual space for providing the first user with a virtual experience, places the first avatar associated with the performer in the virtual space, and responds to the movement of the performer's body detected by the first computer , Make the first avatar perform the second performance corresponding to the first performance.
また、本発明の一態様によれば、ユーザに仮想体験を提供するために、プロセッサを備えたコンピュータによって実行されるプログラムが提供される。プログラムは、プロセッサに、ユーザに仮想体験を提供するための仮想空間を定義するステップと、現実空間にて観客に対して第1パフォーマンスを行う演者に関連付けられる第1アバターを仮想空間に配置するステップと、第1パフォーマンスにおける、演者の身体の動きに関する第1情報を受信するステップと、第1情報に応じて、第1アバターに、第1パフォーマンスに対応する第2パフォーマンスを実行させるステップと、を実行させる。 Also, according to one aspect of the present invention, there is provided a program executed by a computer equipped with a processor to provide a virtual experience to a user. The program comprises, in the processor, defining a virtual space for providing the user with a virtual experience, and arranging in the virtual space a first avatar associated with the performer performing the first performance on the audience in the real space. Receiving in the first performance the first information on the movement of the performer's body, and in response to the first information causing the first avatar to perform the second performance corresponding to the first performance, Run it.
また、本発明の一態様によれば、現実空間にて演者の第1パフォーマンスを視聴している観客に仮想体験を提供するために、プロセッサと、現実空間を表示する表示部と、を備えた端末装置によって実行されるプログラムが提供される。プログラムは、プロセッサに、演者に関連付けられる第1アバターによる、第1パフォーマンスに対応する第2パフォーマンスを仮想空間にて視聴している第3アバターが実行する第3動作に関する第3情報を受信するステップと、現実空間とともに、第3情報に応じた第1画像を表示部に表示させるステップと、を実行させる。 Further, according to an aspect of the present invention, there is provided a processor and a display unit for displaying the real space, in order to provide a virtual experience to the audience watching the first performance of the performer in the real space. A program to be executed by a terminal device is provided. The program receives, in the processor, third information related to a third operation performed by a third avatar watching in a virtual space a second performance corresponding to the first performance by the first avatar associated with the performer. And displaying the first image corresponding to the third information on the display unit together with the real space.
本開示の一態様によれば、仮想空間におけるユーザの仮想体験の興趣性をより高めることができる。 According to one aspect of the present disclosure, it is possible to further enhance the interest of the virtual experience of the user in the virtual space.
以下、この技術的思想の実施の形態について図面を参照しながら詳細に説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。本開示において示される1以上の実施形態において、各実施形態が含む要素を互いに組み合わせることができ、かつ、当該組み合わせられた結果物も本開示が示す実施形態の一部をなすものとする。 Hereinafter, embodiments of this technical idea will be described in detail with reference to the drawings. In the following description, the same components are denoted by the same reference numerals. Their names and functions are also the same. Therefore, detailed description about them will not be repeated. In one or more embodiments shown in the present disclosure, elements included in each embodiment can be combined with each other, and the combined result also forms a part of the embodiments represented by the present disclosure.
[HMDシステムの構成]
図1を参照して、HMD(Head-Mounted Device)システム100の構成について説明する。図1は、本実施の形態に従うHMDシステム100の構成の概略を表す図である。HMDシステム100は、家庭用のシステムとしてあるいは業務用のシステムとして提供される。
[Configuration of HMD system]
The configuration of a head-mounted device (HMD)
HMDシステム100は、サーバ600と、HMDセット110A,110B,110C,110Dと、外部機器700と、ネットワーク2とを含む。HMDセット110A,110B,110C,110Dの各々は、ネットワーク2を介してサーバ600や外部機器700と通信可能に構成される。以下、HMDセット110A,110B,110C,110Dを総称して、HMDセット110とも言う。HMDシステム100を構成するHMDセット110の数は、4つに限られず、3つ以下でも、5つ以上でもよい。HMDセット110は、HMD120と、コンピュータ200と、HMDセンサ410と、ディスプレイ430と、コントローラ300とを備える。HMD120は、モニタ130と、注視センサ140と、第1カメラ150と、第2カメラ160と、マイク170と、スピーカ180とを含む。コントローラ300は、モーションセンサ420を含み得る。
The
ある局面において、コンピュータ200は、インターネットその他のネットワーク2に接続可能であり、ネットワーク2に接続されているサーバ600その他のコンピュータと通信可能である。その他のコンピュータとしては、例えば、他のHMDセット110のコンピュータや外部機器700が挙げられる。別の局面において、HMD120は、HMDセンサ410の代わりに、センサ190を含み得る。
In one aspect, the
HMD120は、ユーザ5の頭部に装着され、動作中に仮想空間をユーザ5に提供し得る。より具体的には、HMD120は、右目用の画像および左目用の画像をモニタ130にそれぞれ表示する。ユーザ5の各目がそれぞれの画像を視認すると、ユーザ5は、両目の視差に基づき当該画像を3次元画像として認識し得る。HMD120は、モニタを備える所謂ヘッドマウントディスプレイと、スマートフォンその他のモニタを有する端末を装着可能なヘッドマウント機器のいずれをも含み得る。
The
モニタ130は、例えば、非透過型の表示装置として実現される。ある局面において、モニタ130は、ユーザ5の両目の前方に位置するようにHMD120の本体に配置されている。したがって、ユーザ5は、モニタ130に表示される3次元画像を視認すると、仮想空間に没入することができる。ある局面において、仮想空間は、例えば、背景、ユーザ5が操作可能なオブジェクト、ユーザ5が選択可能なメニューの画像を含む。ある局面において、モニタ130は、所謂スマートフォンその他の情報表示端末が備える液晶モニタまたは有機EL(Electro Luminescence)モニタとして実現され得る。
The
別の局面において、モニタ130は、透過型の表示装置として実現され得る。この場合、HMD120は、図1に示されるようにユーザ5の目を覆う密閉型ではなく、メガネ型のような開放型であり得る。透過型のモニタ130は、その透過率を調整することにより、一時的に非透過型の表示装置として構成可能であってもよい。モニタ130は、仮想空間を構成する画像の一部と、現実空間とを同時に表示する構成を含んでいてもよい。例えば、モニタ130は、HMD120に搭載されたカメラで撮影した現実空間の画像を表示してもよいし、一部の透過率を高く設定することにより現実空間を視認可能にしてもよい。
In another aspect, monitor 130 may be implemented as a transmissive display. In this case, the
ある局面において、モニタ130は、右目用の画像を表示するためのサブモニタと、左目用の画像を表示するためのサブモニタとを含み得る。別の局面において、モニタ130は、右目用の画像と左目用の画像とを一体として表示する構成であってもよい。この場合、モニタ130は、高速シャッタを含む。高速シャッタは、画像がいずれか一方の目にのみ認識されるように、右目用の画像と左目用の画像とを交互に表示可能に作動する。
In one aspect, the
ある局面において、HMD120は、図示せぬ複数の光源を含む。各光源は例えば、赤外線を発するLED(Light Emitting Diode)により実現される。HMDセンサ410は、HMD120の動きを検出するためのポジショントラッキング機能を有する。より具体的には、HMDセンサ410は、HMD120が発する複数の赤外線を読み取り、現実空間内におけるHMD120の位置および傾きを検出する。
In one aspect, the
別の局面において、HMDセンサ410は、カメラにより実現されてもよい。この場合、HMDセンサ410は、カメラから出力されるHMD120の画像情報を用いて、画像解析処理を実行することにより、HMD120の位置および傾きを検出することができる。
In another aspect, the
別の局面において、HMD120は、位置検出器として、HMDセンサ410の代わりに、あるいはHMDセンサ410に加えてセンサ190を備えてもよい。HMD120は、センサ190を用いて、HMD120自身の位置および傾きを検出し得る。例えば、センサ190が角速度センサ、地磁気センサ、あるいは加速度センサである場合、HMD120は、HMDセンサ410の代わりに、これらの各センサのいずれかを用いて、自身の位置および傾きを検出し得る。一例として、センサ190が角速度センサである場合、角速度センサは、現実空間におけるHMD120の3軸周りの角速度を経時的に検出する。HMD120は、各角速度に基づいて、HMD120の3軸周りの角度の時間的変化を算出し、さらに、角度の時間的変化に基づいて、HMD120の傾きを算出する。
In another aspect, the
注視センサ140は、ユーザ5の右目および左目の視線が向けられる方向を検出する。つまり、注視センサ140は、ユーザ5の視線を検出する。視線の方向の検出は、例えば、公知のアイトラッキング機能によって実現される。注視センサ140は、当該アイトラッキング機能を有するセンサにより実現される。ある局面において、注視センサ140は、右目用のセンサおよび左目用のセンサを含むことが好ましい。注視センサ140は、例えば、ユーザ5の右目および左目に赤外線を照射するとともに、照射光に対する角膜および虹彩からの反射光を受けることにより各眼球の回転角を検出するセンサであってもよい。注視センサ140は、検出した各回転角に基づいて、ユーザ5の視線を検知することができる。
The
第1カメラ150は、ユーザ5の顔の下部を撮影する。より具体的には、第1カメラ150は、ユーザ5の鼻および口などを撮影する。第2カメラ160は、ユーザ5の目および眉などを撮影する。HMD120のユーザ5側の筐体をHMD120の内側、HMD120のユーザ5とは逆側の筐体をHMD120の外側と定義する。ある局面において、第1カメラ150は、HMD120の外側に配置され、第2カメラ160は、HMD120の内側に配置され得る。第1カメラ150および第2カメラ160が生成した画像は、コンピュータ200に入力される。別の局面において、第1カメラ150と第2カメラ160とを1台のカメラとして実現し、この1台のカメラでユーザ5の顔を撮影するようにしてもよい。
The
マイク170は、ユーザ5の発話を音声信号(電気信号)に変換してコンピュータ200に出力する。スピーカ180は、音声信号を音声に変換してユーザ5に出力する。別の局面において、HMD120は、スピーカ180に替えてイヤホンを含み得る。
The
コントローラ300は、有線または無線によりコンピュータ200に接続されている。コントローラ300は、ユーザ5からコンピュータ200への命令の入力を受け付ける。ある局面において、コントローラ300は、ユーザ5によって把持可能に構成される。別の局面において、コントローラ300は、ユーザ5の身体あるいは衣類の一部に装着可能に構成される。さらに別の局面において、コントローラ300は、コンピュータ200から送信される信号に基づいて、振動、音、光のうちの少なくともいずれかを出力するように構成されてもよい。さらに別の局面において、コントローラ300は、ユーザ5から、仮想空間に配置されるオブジェクトの位置や動きを制御するための操作を受け付ける。
The
ある局面において、コントローラ300は、複数の光源を含む。各光源は例えば、赤外線を発するLEDにより実現される。HMDセンサ410は、ポジショントラッキング機能を有する。この場合、HMDセンサ410は、コントローラ300が発する複数の赤外線を読み取り、現実空間内におけるコントローラ300の位置および傾きを検出する。別の局面において、HMDセンサ410は、カメラにより実現されてもよい。この場合、HMDセンサ410は、カメラから出力されるコントローラ300の画像情報を用いて、画像解析処理を実行することにより、コントローラ300の位置および傾きを検出することができる。
In one aspect,
モーションセンサ420は、ある局面において、ユーザ5の手に取り付けられて、ユーザ5の手の動きを検出する。例えば、モーションセンサ420は、手の回転速度、回転数等を検出する。検出された信号は、コンピュータ200に送られる。モーションセンサ420は、例えば、コントローラ300に設けられている。ある局面において、モーションセンサ420は、例えば、ユーザ5に把持可能に構成されたコントローラ300に設けられている。別の局面において、現実空間における安全のため、コントローラ300は、手袋型のようにユーザ5の手に装着されることにより容易に飛んで行かないものに装着される。さらに別の局面において、ユーザ5に装着されないセンサがユーザ5の手の動きを検出してもよい。例えば、ユーザ5を撮影するカメラの信号が、ユーザ5の動作を表わす信号として、コンピュータ200に入力されてもよい。モーションセンサ420とコンピュータ200とは、一例として、無線により互いに接続される。無線の場合、通信形態は特に限られず、例えば、Bluetooth(登録商標)その他の公知の通信手法が用いられる。
The
ディスプレイ430は、モニタ130に表示されている画像と同様の画像を表示する。これにより、HMD120を装着しているユーザ5以外のユーザにも当該ユーザ5と同様の画像を視聴させることができる。ディスプレイ430に表示される画像は、3次元画像である必要はなく、右目用の画像や左目用の画像であってもよい。ディスプレイ430としては、例えば、液晶ディスプレイや有機ELモニタなどが挙げられる。
The
サーバ600は、コンピュータ200にプログラムを送信し得る。別の局面において、サーバ600は、他のユーザによって使用されるHMD120に仮想現実を提供するための他のコンピュータ200と通信し得る。例えば、アミューズメント施設において、複数のユーザが参加型のゲームを行なう場合、各コンピュータ200は、各ユーザの動作に基づく信号をサーバ600を介して他のコンピュータ200と通信して、同じ仮想空間において複数のユーザが共通のゲームを楽しむことを可能にする。各コンピュータ200は、各ユーザの動作に基づく信号をサーバ600を介さずに他のコンピュータ200と通信するようにしてもよい。
The
外部機器700は、コンピュータ200と通信可能な機器であればどのような機器であってもよい。外部機器700は、例えば、ネットワーク2を介してコンピュータ200と通信可能な機器であってもよいし、近距離無線通信や有線接続によりコンピュータ200と直接通信可能な機器であってもよい。外部機器700としては、例えば、スマートデバイス、PC(Personal Computer)、及びコンピュータ200の周辺機器などが挙げられるが、これらに限定されるものではない。
The
[コンピュータのハードウェア構成]
図2を参照して、本実施の形態に係るコンピュータ200について説明する。図2は、本実施の形態に従うコンピュータ200のハードウェア構成の一例を表すブロック図である。コンピュータ200は、主たる構成要素として、プロセッサ210と、メモリ220と、ストレージ230と、入出力インターフェイス240と、通信インターフェイス250とを備える。各構成要素は、それぞれ、バス260に接続されている。
[Computer hardware configuration]
A
プロセッサ210は、コンピュータ200に与えられる信号に基づいて、あるいは、予め定められた条件が成立したことに基づいて、メモリ220またはストレージ230に格納されているプログラムに含まれる一連の命令を実行する。ある局面において、プロセッサ210は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、MPU(Micro Processor Unit)、FPGA(Field-Programmable Gate Array)その他のデバイスとして実現される。
The
メモリ220は、プログラムおよびデータを一時的に保存する。プログラムは、例えば、ストレージ230からロードされる。データは、コンピュータ200に入力されたデータと、プロセッサ210によって生成されたデータとを含む。ある局面において、メモリ220は、RAM(Random Access Memory)その他の揮発メモリとして実現される。
The
ストレージ230は、プログラムおよびデータを永続的に保持する。ストレージ230は、例えば、ROM(Read-Only Memory)、ハードディスク装置、フラッシュメモリ、その他の不揮発記憶装置として実現される。ストレージ230に格納されるプログラムは、HMDシステム100において仮想空間を提供するためのプログラム、シミュレーションプログラム、ゲームプログラム、ユーザ認証プログラム、他のコンピュータ200との通信を実現するためのプログラムを含む。ストレージ230に格納されるデータは、仮想空間を規定するためのデータおよびオブジェクト等を含む。
The
別の局面において、ストレージ230は、メモリカードのように着脱可能な記憶装置として実現されてもよい。さらに別の局面において、コンピュータ200に内蔵されたストレージ230の代わりに、外部の記憶装置に保存されているプログラムおよびデータを使用する構成が使用されてもよい。このような構成によれば、例えば、アミューズメント施設のように複数のHMDシステム100が使用される場面において、プログラムやデータの更新を一括して行なうことが可能になる。
In another aspect, the
入出力インターフェイス240は、HMD120、HMDセンサ410、モーションセンサ420およびディスプレイ430との間で信号を通信する。HMD120に含まれるモニタ130,注視センサ140,第1カメラ150,第2カメラ160,マイク170およびスピーカ180は、HMD120の入出力インターフェイス240を介してコンピュータ200との通信を行ない得る。ある局面において、入出力インターフェイス240は、USB(Universal Serial Bus)、DVI(Digital Visual Interface)、HDMI(登録商標)(High-Definition Multimedia Interface)その他の端子を用いて実現される。入出力インターフェイス240は上述のものに限られない。
The input /
ある局面において、入出力インターフェイス240は、さらに、コントローラ300と通信し得る。例えば、入出力インターフェイス240は、コントローラ300およびモーションセンサ420から出力された信号の入力を受ける。別の局面において、入出力インターフェイス240は、プロセッサ210から出力された命令を、コントローラ300に送る。当該命令は、振動、音声出力、発光等をコントローラ300に指示する。コントローラ300は、当該命令を受信すると、その命令に応じて、振動、音声出力または発光のいずれかを実行する。
In an aspect, input /
通信インターフェイス250は、ネットワーク2に接続されて、ネットワーク2に接続されている他のコンピュータ(例えば、サーバ600)と通信する。ある局面において、通信インターフェイス250は、例えば、LAN(Local Area Network)その他の有線通信インターフェイス、あるいは、WiFi(Wireless Fidelity)、Bluetooth(登録商標)、NFC(Near Field Communication)その他の無線通信インターフェイスとして実現される。通信インターフェイス250は上述のものに限られない。
The
ある局面において、プロセッサ210は、ストレージ230にアクセスし、ストレージ230に格納されている1つ以上のプログラムをメモリ220にロードし、当該プログラムに含まれる一連の命令を実行する。当該1つ以上のプログラムは、コンピュータ200のオペレーティングシステム、仮想空間を提供するためのアプリケーションプログラム、仮想空間で実行可能なゲームソフトウェア等を含み得る。プロセッサ210は、入出力インターフェイス240を介して、仮想空間を提供するための信号をHMD120に送る。HMD120は、その信号に基づいてモニタ130に映像を表示する。
In one aspect, the
図2に示される例では、コンピュータ200は、HMD120の外部に設けられる構成が示されているが、別の局面において、コンピュータ200は、HMD120に内蔵されてもよい。一例として、モニタ130を含む携帯型の情報通信端末(例えば、スマートフォン)がコンピュータ200として機能してもよい。
In the example shown in FIG. 2, the
コンピュータ200は、複数のHMD120に共通して用いられる構成であってもよい。このような構成によれば、例えば、複数のユーザに同一の仮想空間を提供することもできるので、各ユーザは同一の仮想空間で他のユーザと同一のアプリケーションを楽しむことができる。
The
ある実施の形態において、HMDシステム100では、現実空間における座標系である実座標系が予め設定されている。実座標系は、現実空間における鉛直方向、鉛直方向に直交する水平方向、並びに、鉛直方向および水平方向の双方に直交する前後方向にそれぞれ平行な、3つの基準方向(軸)を有する。実座標系における水平方向、鉛直方向(上下方向)、および前後方向は、それぞれ、x軸、y軸、z軸と規定される。より具体的には、実座標系において、x軸は現実空間の水平方向に平行である。y軸は、現実空間の鉛直方向に平行である。z軸は現実空間の前後方向に平行である。
In one embodiment, in the
ある局面において、HMDセンサ410は、赤外線センサを含む。赤外線センサが、HMD120の各光源から発せられた赤外線をそれぞれ検出すると、HMD120の存在を検出する。HMDセンサ410は、さらに、各点の値(実座標系における各座標値)に基づいて、HMD120を装着したユーザ5の動きに応じた、現実空間内におけるHMD120の位置および傾き(向き)を検出する。より詳しくは、HMDセンサ410は、経時的に検出された各値を用いて、HMD120の位置および傾きの時間的変化を検出できる。
In one aspect, the
HMDセンサ410によって検出されたHMD120の各傾きは、実座標系におけるHMD120の3軸周りの各傾きに相当する。HMDセンサ410は、実座標系におけるHMD120の傾きに基づき、uvw視野座標系をHMD120に設定する。HMD120に設定されるuvw視野座標系は、HMD120を装着したユーザ5が仮想空間において物体を見る際の視点座標系に対応する。
Each inclination of the
[uvw視野座標系]
図3を参照して、uvw視野座標系について説明する。図3は、ある実施の形態に従うHMD120に設定されるuvw視野座標系を概念的に表す図である。HMDセンサ410は、HMD120の起動時に、実座標系におけるHMD120の位置および傾きを検出する。プロセッサ210は、検出された値に基づいて、uvw視野座標系をHMD120に設定する。
[Uvw view coordinate system]
The uvw view coordinate system will be described with reference to FIG. FIG. 3 is a diagram conceptually illustrating the uvw visual field coordinate system set in the
図3に示されるように、HMD120は、HMD120を装着したユーザ5の頭部を中心(原点)とした3次元のuvw視野座標系を設定する。より具体的には、HMD120は、実座標系を規定する水平方向、鉛直方向、および前後方向(x軸、y軸、z軸)を、実座標系内においてHMD120の各軸周りの傾きだけ各軸周りにそれぞれ傾けることによって新たに得られる3つの方向を、HMD120におけるuvw視野座標系のピッチ軸(u軸)、ヨー軸(v軸)、およびロール軸(w軸)として設定する。
As shown in FIG. 3, the
ある局面において、HMD120を装着したユーザ5が直立し、かつ、正面を視認している場合、プロセッサ210は、実座標系に平行なuvw視野座標系をHMD120に設定する。この場合、実座標系における水平方向(x軸)、鉛直方向(y軸)、および前後方向(z軸)は、HMD120におけるuvw視野座標系のピッチ軸(u軸)、ヨー軸(v軸)、およびロール軸(w軸)に一致する。
In one aspect, when the
uvw視野座標系がHMD120に設定された後、HMDセンサ410は、HMD120の動きに基づいて、設定されたuvw視野座標系におけるHMD120の傾きを検出できる。この場合、HMDセンサ410は、HMD120の傾きとして、uvw視野座標系におけるHMD120のピッチ角(θu)、ヨー角(θv)、およびロール角(θw)をそれぞれ検出する。ピッチ角(θu)は、uvw視野座標系におけるピッチ軸周りのHMD120の傾き角度を表す。ヨー角(θv)は、uvw視野座標系におけるヨー軸周りのHMD120の傾き角度を表す。ロール角(θw)は、uvw視野座標系におけるロール軸周りのHMD120の傾き角度を表す。
After the uvw view coordinate system is set to the
HMDセンサ410は、検出されたHMD120の傾きに基づいて、HMD120が動いた後のHMD120におけるuvw視野座標系を、HMD120に設定する。HMD120と、HMD120のuvw視野座標系との関係は、HMD120の位置および傾きに関わらず、常に一定である。HMD120の位置および傾きが変わると、当該位置および傾きの変化に連動して、実座標系におけるHMD120のuvw視野座標系の位置および傾きが変化する。
The
ある局面において、HMDセンサ410は、赤外線センサからの出力に基づいて取得される赤外線の光強度および複数の点間の相対的な位置関係(例えば、各点間の距離など)に基づいて、HMD120の現実空間内における位置を、HMDセンサ410に対する相対位置として特定してもよい。プロセッサ210は、特定された相対位置に基づいて、現実空間内(実座標系)におけるHMD120のuvw視野座標系の原点を決定してもよい。
In one aspect, the
[仮想空間]
図4を参照して、仮想空間についてさらに説明する。図4は、ある実施の形態に従う仮想空間11を表現する一態様を概念的に表す図である。仮想空間11は、中心12の360度方向の全体を覆う全天球状の構造を有する。図4では、説明を複雑にしないために、仮想空間11のうちの上半分の天球が例示されている。仮想空間11では各メッシュが規定される。各メッシュの位置は、仮想空間11に規定されるグローバル座標系であるXYZ座標系における座標値として予め規定されている。コンピュータ200は、仮想空間11に展開可能なパノラマ画像13(静止画、動画等)を構成する各部分画像を、仮想空間11において対応する各メッシュにそれぞれ対応付ける。
[Virtual space]
The virtual space will be further described with reference to FIG. FIG. 4 is a diagram conceptually illustrating an aspect of representing
ある局面において、仮想空間11では、中心12を原点とするXYZ座標系が規定される。XYZ座標系は、例えば、実座標系に平行である。XYZ座標系における水平方向、鉛直方向(上下方向)、および前後方向は、それぞれX軸、Y軸、Z軸として規定される。したがって、XYZ座標系のX軸(水平方向)が実座標系のx軸と平行であり、XYZ座標系のY軸(鉛直方向)が実座標系のy軸と平行であり、XYZ座標系のZ軸(前後方向)が実座標系のz軸と平行である。
In one aspect, the
HMD120の起動時、すなわちHMD120の初期状態において、仮想カメラ14が、仮想空間11の中心12に配置される。ある局面において、プロセッサ210は、仮想カメラ14が撮影する画像をHMD120のモニタ130に表示する。仮想カメラ14は、現実空間におけるHMD120の動きに連動して、仮想空間11を同様に移動する。これにより、現実空間におけるHMD120の位置および傾きの変化が、仮想空間11において同様に再現され得る。
When the
仮想カメラ14には、HMD120の場合と同様に、uvw視野座標系が規定される。仮想空間11における仮想カメラ14のuvw視野座標系は、現実空間(実座標系)におけるHMD120のuvw視野座標系に連動するように規定されている。したがって、HMD120の傾きが変化すると、それに応じて、仮想カメラ14の傾きも変化する。仮想カメラ14は、HMD120を装着したユーザ5の現実空間における移動に連動して、仮想空間11において移動することもできる。
As in the case of the
コンピュータ200のプロセッサ210は、仮想カメラ14の位置と傾き(基準視線16)とに基づいて、仮想空間11における視界領域15を規定する。視界領域15は、仮想空間11のうち、HMD120を装着したユーザ5が視認する領域に対応する。つまり、仮想カメラ14の位置は、仮想空間11におけるユーザ5の視点と言える。
The
注視センサ140によって検出されるユーザ5の視線は、ユーザ5が物体を視認する際の視点座標系における方向である。HMD120のuvw視野座標系は、ユーザ5がモニタ130を視認する際の視点座標系に等しい。仮想カメラ14のuvw視野座標系は、HMD120のuvw視野座標系に連動している。したがって、ある局面に従うHMDシステム100は、注視センサ140によって検出されたユーザ5の視線を、仮想カメラ14のuvw視野座標系におけるユーザ5の視線とみなすことができる。
The line of sight of the
[ユーザの視線]
図5を参照して、ユーザ5の視線の決定について説明する。図5は、ある実施の形態に従うHMD120を装着するユーザ5の頭部を上から表した図である。
[User's gaze]
The determination of the line of sight of the
ある局面において、注視センサ140は、ユーザ5の右目および左目の各視線を検出する。ある局面において、ユーザ5が近くを見ている場合、注視センサ140は、視線R1およびL1を検出する。別の局面において、ユーザ5が遠くを見ている場合、注視センサ140は、視線R2およびL2を検出する。この場合、ロール軸wに対して視線R2およびL2が成す角度は、ロール軸wに対して視線R1およびL1が成す角度よりも小さい。注視センサ140は、検出結果をコンピュータ200に送信する。
In one aspect, the
コンピュータ200が、視線の検出結果として、視線R1およびL1の検出値を注視センサ140から受信した場合には、その検出値に基づいて、視線R1およびL1の交点である注視点N1を特定する。一方、コンピュータ200は、視線R2およびL2の検出値を注視センサ140から受信した場合には、視線R2およびL2の交点を注視点として特定する。コンピュータ200は、特定した注視点N1の位置に基づき、ユーザ5の視線N0を特定する。コンピュータ200は、例えば、ユーザ5の右目Rと左目Lとを結ぶ直線の中点と、注視点N1とを通る直線の延びる方向を、視線N0として検出する。視線N0は、ユーザ5が両目により実際に視線を向けている方向である。視線N0は、視界領域15に対してユーザ5が実際に視線を向けている方向に相当する。
When the
別の局面において、HMDシステム100は、テレビジョン放送受信チューナを備えてもよい。このような構成によれば、HMDシステム100は、仮想空間11においてテレビ番組を表示することができる。
In another aspect, the
さらに別の局面において、HMDシステム100は、インターネットに接続するための通信回路、あるいは、電話回線に接続するための通話機能を備えていてもよい。
In still another aspect, the
[視界領域]
図6および図7を参照して、視界領域15について説明する。図6は、仮想空間11において視界領域15をX方向から見たYZ断面を表す図である。図7は、仮想空間11において視界領域15をY方向から見たXZ断面を表す図である。
[View area]
The
図6に示されるように、YZ断面における視界領域15は、領域18を含む。領域18は、仮想カメラ14の位置と基準視線16と仮想空間11のYZ断面とによって定義される。プロセッサ210は、仮想空間における基準視線16を中心として極角αを含む範囲を、領域18として規定する。
As shown in FIG. 6, the
図7に示されるように、XZ断面における視界領域15は、領域19を含む。領域19は、仮想カメラ14の位置と基準視線16と仮想空間11のXZ断面とによって定義される。プロセッサ210は、仮想空間11における基準視線16を中心とした方位角βを含む範囲を、領域19として規定する。極角αおよびβは、仮想カメラ14の位置と仮想カメラ14の傾き(向き)とに応じて定まる。
As shown in FIG. 7, the
ある局面において、HMDシステム100は、コンピュータ200からの信号に基づいて、視界画像17をモニタ130に表示させることにより、ユーザ5に仮想空間11における視界を提供する。視界画像17は、パノラマ画像13のうち視界領域15に対応する部分に相当する画像である。ユーザ5が、頭部に装着したHMD120を動かすと、その動きに連動して仮想カメラ14も動く。その結果、仮想空間11における視界領域15の位置が変化する。これにより、モニタ130に表示される視界画像17は、パノラマ画像13のうち、仮想空間11においてユーザ5が向いた方向の視界領域15に重畳する画像に更新される。ユーザ5は、仮想空間11における所望の方向を視認することができる。
In one aspect, the
このように、仮想カメラ14の傾きは仮想空間11におけるユーザ5の視線(基準視線16)に相当し、仮想カメラ14が配置される位置は、仮想空間11におけるユーザ5の視点に相当する。したがって、仮想カメラ14の位置または傾きを変更することにより、モニタ130に表示される画像が更新され、ユーザ5の視界が移動される。
Thus, the inclination of the
ユーザ5は、HMD120を装着している間、現実世界を視認することなく、仮想空間11に展開されるパノラマ画像13のみを視認できる。そのため、HMDシステム100は、仮想空間11への高い没入感覚をユーザ5に与えることができる。
While wearing the
ある局面において、プロセッサ210は、HMD120を装着したユーザ5の現実空間における移動に連動して、仮想空間11において仮想カメラ14を移動し得る。この場合、プロセッサ210は、仮想空間11における仮想カメラ14の位置および傾きに基づいて、HMD120のモニタ130に投影される画像領域(視界領域15)を特定する。
In an aspect, the
ある局面において、仮想カメラ14は、2つの仮想カメラ、すなわち、右目用の画像を提供するための仮想カメラと、左目用の画像を提供するための仮想カメラとを含み得る。ユーザ5が3次元の仮想空間11を認識できるように、適切な視差が、2つの仮想カメラに設定される。別の局面において、仮想カメラ14を1つの仮想カメラにより実現してもよい。この場合、1つの仮想カメラにより得られた画像から、右目用の画像と左目用の画像とを生成するようにしてもよい。本実施の形態においては、仮想カメラ14が2つの仮想カメラを含み、2つの仮想カメラのロール軸が合成されることによって生成されるロール軸(w)がHMD120のロール軸(w)に適合されるように構成されているものとして、本開示に係る技術思想を例示する。
In one aspect,
[コントローラ]
図8を参照して、コントローラ300の一例について説明する。図8は、ある実施の形態に従うコントローラ300の概略構成を表す図である。
[controller]
An example of the
図8に示されるように、ある局面において、コントローラ300は、右コントローラ300Rと図示せぬ左コントローラとを含み得る。右コントローラ300Rは、ユーザ5の右手で操作される。左コントローラは、ユーザ5の左手で操作される。ある局面において、右コントローラ300Rと左コントローラとは、別個の装置として対称に構成される。したがって、ユーザ5は、右コントローラ300Rを把持した右手と、左コントローラを把持した左手とをそれぞれ自由に動かすことができる。別の局面において、コントローラ300は両手の操作を受け付ける一体型のコントローラであってもよい。以下、右コントローラ300Rについて説明する。
As shown in FIG. 8, in one aspect, the
右コントローラ300Rは、グリップ310と、フレーム320と、天面330とを備える。グリップ310は、ユーザ5の右手によって把持されるように構成されている。たとえば、グリップ310は、ユーザ5の右手の掌と3本の指(中指、薬指、小指)とによって保持され得る。
The
グリップ310は、ボタン340,350と、モーションセンサ420とを含む。ボタン340は、グリップ310の側面に配置され、右手の中指による操作を受け付ける。ボタン350は、グリップ310の前面に配置され、右手の人差し指による操作を受け付ける。ある局面において、ボタン340,350は、トリガー式のボタンとして構成される。モーションセンサ420は、グリップ310の筐体に内蔵されている。ユーザ5の動作がカメラその他の装置によってユーザ5の周りから検出可能である場合には、グリップ310は、モーションセンサ420を備えなくてもよい。
The
フレーム320は、その円周方向に沿って配置された複数の赤外線LED360を含む。赤外線LED360は、コントローラ300を使用するプログラムの実行中に、当該プログラムの進行に合わせて赤外線を発光する。赤外線LED360から発せられた赤外線は、右コントローラ300Rと左コントローラとの各位置や姿勢(傾き、向き)を検出するために使用され得る。図8に示される例では、二列に配置された赤外線LED360が示されているが、配列の数は図8に示されるものに限られない。一列あるいは3列以上の配列が使用されてもよい。
The
天面330は、ボタン370,380と、アナログスティック390とを備える。ボタン370,380は、プッシュ式ボタンとして構成される。ボタン370,380は、ユーザ5の右手の親指による操作を受け付ける。アナログスティック390は、ある局面において、初期位置(ニュートラルの位置)から360度任意の方向への操作を受け付ける。当該操作は、たとえば、仮想空間11に配置されるオブジェクトを移動するための操作を含む。
The
ある局面において、右コントローラ300Rおよび左コントローラは、赤外線LED360その他の部材を駆動するための電池を含む。電池は、充電式、ボタン型、乾電池型などを含むが、これらに限定されない。別の局面において、右コントローラ300Rと左コントローラは、たとえば、コンピュータ200のUSBインターフェースに接続され得る。この場合、右コントローラ300Rおよび左コントローラは、電池を必要としない。
In one aspect, the
図8の状態(A)および状態(B)に示されるように、例えば、ユーザ5の右手に対して、ヨー、ロール、ピッチの各方向が規定される。ユーザ5が親指と人差し指とを伸ばした場合に、親指の伸びる方向がヨー方向、人差し指の伸びる方向がロール方向、ヨー方向の軸およびロール方向の軸によって規定される平面に垂直な方向がピッチ方向として規定される。
As shown in the state (A) and the state (B) of FIG. 8, for example, the yaw, roll, and pitch directions are defined with respect to the right hand of the
[サーバのハードウェア構成]
図9を参照して、本実施の形態に係るサーバ600について説明する。図9は、ある実施の形態に従うサーバ600のハードウェア構成の一例を表すブロック図である。サーバ600は、主たる構成要素として、プロセッサ610と、メモリ620と、ストレージ630と、入出力インターフェイス640と、通信インターフェイス650とを備える。各構成要素は、それぞれ、バス660に接続されている。
[Hardware configuration of server]
A
プロセッサ610は、サーバ600に与えられる信号に基づいて、あるいは、予め定められた条件が成立したことに基づいて、メモリ620またはストレージ630に格納されているプログラムに含まれる一連の命令を実行する。ある局面において、プロセッサ610は、CPU、GPU、MPU、FPGAその他のデバイスとして実現される。
The
メモリ620は、プログラムおよびデータを一時的に保存する。プログラムは、例えば、ストレージ630からロードされる。データは、サーバ600に入力されたデータと、プロセッサ610によって生成されたデータとを含む。ある局面において、メモリ620は、RAMその他の揮発メモリとして実現される。
ストレージ630は、プログラムおよびデータを永続的に保持する。ストレージ630は、例えば、ROM、ハードディスク装置、フラッシュメモリ、その他の不揮発記憶装置として実現される。ストレージ630に格納されるプログラムは、HMDシステム100において仮想空間を提供するためのプログラム、シミュレーションプログラム、ゲームプログラム、ユーザ認証プログラム、コンピュータ200との通信を実現するためのプログラムを含んでもよい。ストレージ630に格納されるデータは、仮想空間を規定するためのデータおよびオブジェクト等を含んでもよい。
別の局面において、ストレージ630は、メモリカードのように着脱可能な記憶装置として実現されてもよい。さらに別の局面において、サーバ600に内蔵されたストレージ630の代わりに、外部の記憶装置に保存されているプログラムおよびデータを使用する構成が使用されてもよい。このような構成によれば、例えば、アミューズメント施設のように複数のHMDシステム100が使用される場面において、プログラムやデータの更新を一括して行なうことが可能になる。
In another aspect, the
入出力インターフェイス640は、入出力機器との間で信号を通信する。ある局面において、入出力インターフェイス640は、USB、DVI、HDMIその他の端子を用いて実現される。入出力インターフェイス640は上述のものに限られない。
The input /
通信インターフェイス650は、ネットワーク2に接続されて、ネットワーク2に接続されているコンピュータ200と通信する。ある局面において、通信インターフェイス650は、例えば、LANその他の有線通信インターフェイス、あるいは、WiFi、Bluetooth、NFCその他の無線通信インターフェイスとして実現される。通信インターフェイス650は上述のものに限られない。
The
ある局面において、プロセッサ610は、ストレージ630にアクセスし、ストレージ630に格納されている1つ以上のプログラムをメモリ620にロードし、当該プログラムに含まれる一連の命令を実行する。当該1つ以上のプログラムは、サーバ600のオペレーティングシステム、仮想空間を提供するためのアプリケーションプログラム、仮想空間で実行可能なゲームソフトウェア等を含み得る。プロセッサ610は、入出力インターフェイス640を介して、仮想空間を提供するための信号をコンピュータ200に送ってもよい。
In one aspect, the
[HMDの制御装置]
図10を参照して、HMD120の制御装置について説明する。ある実施の形態において、制御装置は周知の構成を有するコンピュータ200によって実現される。図10は、ある実施の形態に従うコンピュータ200をモジュール構成として表わすブロック図である。
[Control unit of HMD]
The control device of the
図10に示されるように、コンピュータ200は、コントロールモジュール510と、レンダリングモジュール520と、メモリモジュール530と、通信制御モジュール540とを備える。ある局面において、コントロールモジュール510とレンダリングモジュール520とは、プロセッサ210によって実現される。別の局面において、複数のプロセッサ210がコントロールモジュール510とレンダリングモジュール520として作動してもよい。メモリモジュール530は、メモリ220またはストレージ230によって実現される。通信制御モジュール540は、通信インターフェイス250によって実現される。
As shown in FIG. 10, the
コントロールモジュール510は、ユーザ5に提供される仮想空間11を制御する。コントロールモジュール510は、仮想空間11を表す仮想空間データを用いて、HMDシステム100における仮想空間11を規定する。仮想空間データは、例えば、メモリモジュール530に記憶されている。コントロールモジュール510が、仮想空間データを生成したり、サーバ600などから仮想空間データを取得するようにしたりしてもよい。
The
コントロールモジュール510は、オブジェクトを表すオブジェクトデータを用いて、仮想空間11にオブジェクトを配置する。オブジェクトデータは、例えば、メモリモジュール530に記憶されている。コントロールモジュール510が、オブジェクトデータを生成したり、サーバ600などからオブジェクトデータを取得するようにしたりしてもよい。オブジェクトは、例えば、ユーザ5の分身であるアバターオブジェクト、キャラクタオブジェクト、コントローラ300によって操作される仮想手などの操作オブジェクト、ゲームのストーリーの進行に従って配置される森、山その他を含む風景、街並み、動物等を含み得る。
The
コントロールモジュール510は、ネットワーク2を介して接続される他のコンピュータ200のユーザ5のアバターオブジェクトを仮想空間11に配置する。ある局面において、コントロールモジュール510は、ユーザ5のアバターオブジェクトを仮想空間11に配置する。ある局面において、コントロールモジュール510は、ユーザ5を含む画像に基づいて、ユーザ5を模したアバターオブジェクトを仮想空間11に配置する。別の局面において、コントロールモジュール510は、複数種類のアバターオブジェクト(例えば、動物を模したオブジェクトや、デフォルメされた人のオブジェクト)の中からユーザ5による選択を受け付けたアバターオブジェクトを仮想空間11に配置する。
The
コントロールモジュール510は、HMDセンサ410の出力に基づいてHMD120の傾きを特定する。別の局面において、コントロールモジュール510は、モーションセンサとして機能するセンサ190の出力に基づいてHMD120の傾きを特定する。コントロールモジュール510は、第1カメラ150および第2カメラ160が生成するユーザ5の顔の画像から、ユーザ5の顔を構成する器官(例えば、口,目,眉)を検出する。コントロールモジュール510は、検出した各器官の動き(形状)を検出する。
The
コントロールモジュール510は、注視センサ140からの信号に基づいて、ユーザ5の仮想空間11における視線を検出する。コントロールモジュール510は、検出したユーザ5の視線と仮想空間11の天球とが交わる視点位置(XYZ座標系における座標値)を検出する。より具体的には、コントロールモジュール510は、uvw座標系で規定されるユーザ5の視線と、仮想カメラ14の位置および傾きとに基づいて、視点位置を検出する。コントロールモジュール510は、検出した視点位置をサーバ600に送信する。別の局面において、コントロールモジュール510は、ユーザ5の視線を表す視線情報をサーバ600に送信するように構成されてもよい。係る場合、サーバ600が受信した視線情報に基づいて視点位置を算出し得る。
The
コントロールモジュール510は、HMDセンサ410が検出するHMD120の動きをアバターオブジェクトに反映する。例えば、コントロールモジュール510は、HMD120が傾いたことを検知して、アバターオブジェクトを傾けて配置する。コントロールモジュール510は、検出した顔器官の動作を、仮想空間11に配置されるアバターオブジェクトの顔に反映させる。コントロールモジュール510は、サーバ600から他のユーザ5の視線情報を受信し、当該他のユーザ5のアバターオブジェクトの視線に反映させる。ある局面において、コントロールモジュール510は、コントローラ300の動きをアバターオブジェクトや操作オブジェクトに反映する。この場合、コントローラ300は、コントローラ300の動きを検知するためのモーションセンサ、加速度センサ、または複数の発光素子(例えば、赤外線LED)などを備える。
The
コントロールモジュール510は、仮想空間11においてユーザ5の操作を受け付けるための操作オブジェクトを仮想空間11に配置する。ユーザ5は、操作オブジェクトを操作することにより、例えば、仮想空間11に配置されるオブジェクトを操作する。ある局面において、操作オブジェクトは、例えば、ユーザ5の手に相当する仮想手である手オブジェクト等を含み得る。ある局面において、コントロールモジュール510は、モーションセンサ420の出力に基づいて現実空間におけるユーザ5の手の動きに連動するように仮想空間11において手オブジェクトを動かす。ある局面において、操作オブジェクトは、アバターオブジェクトの手の部分に相当し得る。
The
コントロールモジュール510は、仮想空間11に配置されるオブジェクトのそれぞれが、他のオブジェクトと衝突した場合に、当該衝突を検出する。コントロールモジュール510は、例えば、あるオブジェクトのコリジョンエリアと、別のオブジェクトのコリジョンエリアとが触れたタイミングを検出することができ、当該検出がされたときに、予め定められた処理を行なう。コントロールモジュール510は、オブジェクトとオブジェクトとが触れている状態から離れたタイミングを検出することができ、当該検出がされたときに、予め定められた処理を行なう。コントロールモジュール510は、オブジェクトとオブジェクトとが触れている状態であることを検出することができる。例えば、コントロールモジュール510は、操作オブジェクトと、他のオブジェクトとが触れたときに、これら操作オブジェクトと他のオブジェクトとが触れたことを検出して、予め定められた処理を行なう。
The
ある局面において、コントロールモジュール510は、HMD120のモニタ130における画像表示を制御する。例えば、コントロールモジュール510は、仮想空間11に仮想カメラ14を配置する。コントロールモジュール510は、仮想空間11における仮想カメラ14の位置と、仮想カメラ14の傾き(向き)を制御する。コントロールモジュール510は、HMD120を装着したユーザ5の頭部の傾きと、仮想カメラ14の位置に応じて、視界領域15を規定する。レンダリングモジュール520は、決定された視界領域15に基づいて、モニタ130に表示される視界画像17を生成する。レンダリングモジュール520により生成された視界画像17は、通信制御モジュール540によってHMD120に出力される。
In one aspect, the
コントロールモジュール510は、HMD120から、ユーザ5のマイク170を用いた発話を検出すると、当該発話に対応する音声データの送信対象のコンピュータ200を特定する。音声データは、コントロールモジュール510によって特定されたコンピュータ200に送信される。コントロールモジュール510は、ネットワーク2を介して他のユーザのコンピュータ200から音声データを受信すると、当該音声データに対応する音声(発話)をスピーカ180から出力する。
When the
メモリモジュール530は、コンピュータ200が仮想空間11をユーザ5に提供するために使用されるデータを保持している。ある局面において、メモリモジュール530は、空間情報と、オブジェクト情報と、ユーザ情報とを保持している。
The
空間情報は、仮想空間11を提供するために規定された1つ以上のテンプレートを保持している。
Spatial information holds one or more templates defined to provide
オブジェクト情報は、仮想空間11を構成する複数のパノラマ画像13、仮想空間11にオブジェクトを配置するためのオブジェクトデータを含む。パノラマ画像13は、静止画像および動画像を含み得る。パノラマ画像13は、非現実空間の画像と現実空間の画像とを含み得る。非現実空間の画像としては、例えば、コンピュータグラフィックスで生成された画像が挙げられる。
The object information includes a plurality of
ユーザ情報は、ユーザ5を識別するユーザIDを保持する。ユーザIDは、例えば、ユーザが使用するコンピュータ200に設定されるIP(Internet Protocol)アドレスまたはMAC(Media Access Control)アドレスであり得る。別の局面において、ユーザIDはユーザによって設定され得る。ユーザ情報は、HMDシステム100の制御装置としてコンピュータ200を機能させるためのプログラム等を含む。
The user information holds a user ID identifying the
メモリモジュール530に格納されているデータおよびプログラムは、HMD120のユーザ5によって入力される。あるいは、プロセッサ210が、当該コンテンツを提供する事業者が運営するコンピュータ(例えば、サーバ600)からプログラムあるいはデータをダウンロードして、ダウンロードされたプログラムあるいはデータをメモリモジュール530に格納する。
The data and programs stored in the
通信制御モジュール540は、ネットワーク2を介して、サーバ600その他の情報通信装置と通信し得る。
The
ある局面において、コントロールモジュール510及びレンダリングモジュール520は、例えば、ユニティテクノロジーズ社によって提供されるUnity(登録商標)を用いて実現され得る。別の局面において、コントロールモジュール510及びレンダリングモジュール520は、各処理を実現する回路素子の組み合わせとしても実現され得る。
In an aspect, the
コンピュータ200における処理は、ハードウェアと、プロセッサ210により実行されるソフトウェアとによって実現される。このようなソフトウェアは、ハードディスクその他のメモリモジュール530に予め格納されている場合がある。ソフトウェアは、CD−ROMその他のコンピュータ読み取り可能な不揮発性のデータ記録媒体に格納されて、プログラム製品として流通している場合もある。あるいは、当該ソフトウェアは、インターネットその他のネットワークに接続されている情報提供事業者によってダウンロード可能なプログラム製品として提供される場合もある。このようなソフトウェアは、光ディスク駆動装置その他のデータ読取装置によってデータ記録媒体から読み取られて、あるいは、通信制御モジュール540を介してサーバ600その他のコンピュータからダウンロードされた後、記憶モジュールに一旦格納される。そのソフトウェアは、プロセッサ210によって記憶モジュールから読み出され、実行可能なプログラムの形式でRAMに格納される。プロセッサ210は、そのプログラムを実行する。
Processing in the
[HMDシステムの制御構造]
図11を参照して、HMDセット110の制御構造について説明する。図11は、ある実施の形態に従うHMDセット110において実行される処理の一部を表すシーケンスチャートである。
[Control structure of HMD system]
The control structure of the HMD set 110 will be described with reference to FIG. FIG. 11 is a sequence chart representing a portion of the process performed in the HMD set 110 according to an embodiment.
図11に示されるように、ステップS1110において、コンピュータ200のプロセッサ210は、コントロールモジュール510として、仮想空間データを特定し、仮想空間11を定義する。
As shown in FIG. 11, in step S 1110, the
ステップS1120において、プロセッサ210は、仮想カメラ14を初期化する。たとえば、プロセッサ210は、メモリのワーク領域において、仮想カメラ14を仮想空間11において予め規定された中心12に配置し、仮想カメラ14の視線をユーザ5が向いている方向に向ける。
In step S1120, the
ステップS1130において、プロセッサ210は、レンダリングモジュール520として、初期の視界画像を表示するための視界画像データを生成する。生成された視界画像データは、通信制御モジュール540によってHMD120に出力される。
In step S1130, the
ステップS1132において、HMD120のモニタ130は、コンピュータ200から受信した視界画像データに基づいて、視界画像を表示する。HMD120を装着したユーザ5は、視界画像を視認すると仮想空間11を認識し得る。
In step S1132, the
ステップS1134において、HMDセンサ410は、HMD120から発信される複数の赤外線光に基づいて、HMD120の位置と傾きを検知する。検知結果は、動き検知データとして、コンピュータ200に出力される。
In step S1134, the
ステップS1140において、プロセッサ210は、HMD120の動き検知データに含まれる位置と傾きとに基づいて、HMD120を装着したユーザ5の視界方向を特定する。
In step S1140, the
ステップS1150において、プロセッサ210は、アプリケーションプログラムを実行し、アプリケーションプログラムに含まれる命令に基づいて、仮想空間11にオブジェクトを配置する。
In step S1150, the
ステップS1160において、コントローラ300は、モーションセンサ420から出力される信号に基づいて、ユーザ5の操作を検出し、その検出された操作を表す検出データをコンピュータ200に出力する。別の局面において、ユーザ5によるコントローラ300の操作は、ユーザ5の周囲に配置されたカメラからの画像に基づいて検出されてもよい。
In step S1160,
ステップS1170において、プロセッサ210は、コントローラ300から取得した検出データに基づいて、ユーザ5によるコントローラ300の操作を検出する。
In step S1170, the
ステップS1180において、プロセッサ210は、ユーザ5によるコントローラ300の操作に基づく視界画像データを生成する。生成された視界画像データは、通信制御モジュール540によってHMD120に出力される。
In step S1180, the
ステップS1190において、HMD120は、受信した視界画像データに基づいて視界画像を更新し、更新後の視界画像をモニタ130に表示する。
In step S1190, the
[アバターオブジェクト]
図12(A)、(B)を参照して、本実施の形態に従うアバターオブジェクトについて説明する。以下、HMDセット110A,110Bの各ユーザ5のアバターオブジェクトを説明する図である。以下、HMDセット110Aのユーザをユーザ5A、HMDセット110Bのユーザをユーザ5B、HMDセット110Cのユーザをユーザ5C、HMDセット110Dのユーザをユーザ5Dと表す。HMDセット110Aに関する各構成要素の参照符号にAが付され、HMDセット110Bに関する各構成要素の参照符号にBが付され、HMDセット110Cに関する各構成要素の参照符号にCが付され、HMDセット110Dに関する各構成要素の参照符号にDが付される。例えば、HMD120Aは、HMDセット110Aに含まれる。
Avatar object
The avatar object according to the present embodiment will be described with reference to FIGS. 12 (A) and 12 (B). Hereinafter, avatar objects of each
図12(A)は、ネットワーク2において、各HMD120がユーザ5に仮想空間11を提供する状況を表す模式図である。コンピュータ200A〜200Dは、HMD120A〜120Dを介して、ユーザ5A〜5Dに、仮想空間11A〜11Dをそれぞれ提供する。図12(A)に示される例において、仮想空間11Aおよび仮想空間11Bは同じデータによって構成されている。換言すれば、コンピュータ200Aとコンピュータ200Bとは同じ仮想空間を共有していることになる。仮想空間11Aおよび仮想空間11Bには、ユーザ5Aのアバターオブジェクト6Aと、ユーザ5Bのアバターオブジェクト6Bとが存在する。仮想空間11Aにおけるアバターオブジェクト6Aおよび仮想空間11Bにおけるアバターオブジェクト6BがそれぞれHMD120を装着しているが、これは説明を分かりやすくするためのものであって、実際にはこれらのオブジェクトはHMD120を装着していない。
FIG. 12A is a schematic diagram showing the situation where each
ある局面において、プロセッサ210Aは、ユーザ5Aの視界画像17Aを撮影する仮想カメラ14Aを、アバターオブジェクト6Aの目の位置に配置し得る。
In an aspect, the processor 210A may place the
図12(B)は、図12(A)におけるユーザ5Aの視界画像17Aを示す図である。視界画像17Aは、HMD120Aのモニタ130Aに表示される画像である。この視界画像17Aは、仮想カメラ14Aにより生成された画像である。視界画像17Aには、ユーザ5Bのアバターオブジェクト6Bが表示されている。特に図示はしていないが、ユーザ5Bの視界画像にも同様に、ユーザ5Aのアバターオブジェクト6Aが表示されている。
FIG. 12 (B) is a view showing a
図12(B)の状態において、ユーザ5Aは仮想空間11Aを介してユーザ5Bと対話による通信(コミュニケーション)を図ることができる。より具体的には、マイク170Aにより取得されたユーザ5Aの音声は、サーバ600を介してユーザ5BのHMD120Bに送信され、HMD120Bに設けられたスピーカ180Bから出力される。ユーザ5Bの音声は、サーバ600を介してユーザ5AのHMD120Aに送信され、HMD120Aに設けられたスピーカ180Aから出力される。
In the state of FIG. 12B, the
ユーザ5Bの動作(HMD120Bの動作およびコントローラ300Bの動作)は、プロセッサ210Aにより仮想空間11Aに配置されるアバターオブジェクト6Bに反映される。これにより、ユーザ5Aは、ユーザ5Bの動作を、アバターオブジェクト6Bを通じて認識できる。
The operation of the user 5B (the operation of the
図13は、本実施の形態に従うHMDシステム100において実行される処理の一部を表すシーケンスチャートである。図13においては、HMDセット110Dを図示していないが、HMDセット110Dについても、HMDセット110A、110B、110Cと同様に動作する。以下の説明でも、HMDセット110Aに関する各構成要素の参照符号にAが付され、HMDセット110Bに関する各構成要素の参照符号にBが付され、HMDセット110Cに関する各構成要素の参照符号にCが付され、HMDセット110Dに関する各構成要素の参照符号にDが付されるものとする。
FIG. 13 is a sequence chart showing a part of the process executed in
ステップS1310Aにおいて、HMDセット110Aにおけるプロセッサ210Aは、仮想空間11Aにおけるアバターオブジェクト6Aの動作を決定するためのアバター情報を取得する。このアバター情報は、例えば、動き情報、フェイストラッキングデータ、および音声データ等のアバターに関する情報を含む。動き情報は、HMD120Aの位置および傾きの時間的変化を示す情報や、モーションセンサ420A等により検出されたユーザ5Aの手の動きを示す情報などを含む。フェイストラッキングデータは、ユーザ5Aの顔の各パーツの位置および大きさを特定するデータが挙げられる。フェイストラッキングデータは、ユーザ5Aの顔を構成する各器官の動きを示すデータや視線データが挙げられる。音声データは、HMD120Aのマイク170Aによって取得されたユーザ5Aの音声を示すデータが挙げられる。アバター情報には、アバターオブジェクト6A、あるいはアバターオブジェクト6Aに関連付けられるユーザ5Aを特定する情報や、アバターオブジェクト6Aが存在する仮想空間11Aを特定する情報等が含まれてもよい。アバターオブジェクト6Aやユーザ5Aを特定する情報としては、ユーザIDが挙げられる。アバターオブジェクト6Aが存在する仮想空間11Aを特定する情報としては、ルームIDが挙げられる。プロセッサ210Aは、上述のように取得されたアバター情報を、ネットワーク2を介してサーバ600に送信する。
In step S1310A, the processor 210A in the HMD set 110A acquires avatar information for determining the operation of the
ステップS1310Bにおいて、HMDセット110Bにおけるプロセッサ210Bは、ステップS1310Aにおける処理と同様に、仮想空間11Bにおけるアバターオブジェクト6Bの動作を決定するためのアバター情報を取得し、サーバ600に送信する。同様に、ステップS1310Cにおいて、HMDセット110Cにおけるプロセッサ210Cは、仮想空間11Cにおけるアバターオブジェクト6Cの動作を決定するためのアバター情報を取得し、サーバ600に送信する。
In step S1310B, the processor 210B in the HMD set 110B acquires avatar information for determining the action of the
ステップS1320において、サーバ600は、HMDセット110A、HMDセット110B、およびHMDセット110Cのそれぞれから受信したプレイヤ情報を一旦記憶する。サーバ600は、各アバター情報に含まれるユーザIDおよびルームID等に基づいて、共通の仮想空間11に関連付けられた全ユーザ(この例では、ユーザ5A〜5C)のアバター情報を統合する。そして、サーバ600は、予め定められたタイミングで、統合したアバター情報を当該仮想空間11に関連付けられた全ユーザに送信する。これにより、同期処理が実行される。このような同期処理により、HMDセット110A、HMDセット110B、およびHMDセット110Cは、互いのアバター情報をほぼ同じタイミングで共有することができる。
In step S1320, the
続いて、サーバ600から各HMDセット110A〜110Cに送信されたアバター情報に基づいて、各HMDセット110A〜110Cは、ステップS1330A〜S1330Cの処理を実行する。ステップS1330Aの処理は、図11におけるステップS1180の処理に相当する。
Subsequently, each HMD set 110A to 110C executes the processing of steps S1330A to S1330C based on the avatar information transmitted from the
ステップS1330Aにおいて、HMDセット110Aにおけるプロセッサ210Aは、仮想空間11Aにおける他のユーザ5B,5Cのアバターオブジェクト6B、アバターオブジェクト6Cの情報を更新する。具体的には、プロセッサ210Aは、HMDセット110Bから送信されたアバター情報に含まれる動き情報に基づいて、仮想空間11におけるアバターオブジェクト6Bの位置および向き等を更新する。例えば、プロセッサ210Aは、メモリモジュール530に格納されたオブジェクト情報に含まれるアバターオブジェクト6Bの情報(位置および向き等)を更新する。同様に、プロセッサ210Aは、HMDセット110Cから送信されたアバター情報に含まれる動き情報に基づいて、仮想空間11におけるアバターオブジェクト6Cの情報(位置および向き等)を更新する。
In step S1330A, the processor 210A in the HMD set 110A updates the information on the
ステップS1330Bにおいて、HMDセット110Bにおけるプロセッサ210Bは、ステップS1330Aにおける処理と同様に、仮想空間11Bにおけるユーザ5A,5Cのアバターオブジェクト6A,6Cの情報を更新する。同様に、ステップS1330Cにおいて、HMDセット110Cにおけるプロセッサ210Cは、仮想空間11Cにおけるユーザ5A,5Bのアバターオブジェクト6A,6Bの情報を更新する。
In step S1330B, the processor 210B in the HMD set 110B updates the information on the avatar objects 6A and 6C of the
[モジュールの詳細構成]
図14を参照して、コンピュータ200のモジュール構成の詳細について説明する。図14は、ある実施の形態に従うコンピュータ200のモジュールの詳細構成を表わすブロック図である。図14に示されるように、コントロールモジュール510は、仮想オブジェクト生成モジュール1421、仮想カメラ制御モジュール1422、操作オブジェクト制御モジュール1423、アバターオブジェクト制御モジュール1424、動き検出モジュール1425、仮想オブジェクト制御モジュール1426を備えている。
[Detailed configuration of module]
The module configuration of the
仮想オブジェクト生成モジュール1421は、各種の仮想オブジェクトを仮想空間11に生成する。ある局面において、仮想オブジェクトは、例えば、ゲームのストーリーの進行に従って配置される森、山その他を含む風景、動物等を含み得る。ある局面において、仮想オブジェクトは、アバターオブジェクト、操作オブジェクト、およびステージオブジェクト、UI(User Interface)オブジェクトを含み得る。
The virtual
仮想カメラ制御モジュール1422は、仮想空間11における仮想カメラ14の挙動を制御する。仮想カメラ制御モジュール1422は、例えば、仮想空間11における仮想カメラ14の配置位置と、仮想カメラ14の向き(傾き)とを制御する。
The virtual
操作オブジェクト制御モジュール1423は、仮想空間11においてユーザ5の操作を受け付けるための操作オブジェクトを制御する。ユーザ5は、操作オブジェクトを操作することによって、例えば、仮想空間11に配置される仮想オブジェクトを操作する。ある局面において、操作オブジェクトは、例えば、HMD120を装着したユーザ5の手に相当する手オブジェクト(仮想手)等を含み得る。ある局面において、操作オブジェクトは、後述するアバターオブジェクトの手の部分に相当し得る。
The operation
アバターオブジェクト制御モジュール1424は、HMDセンサ410が検出するHMD120の動きをアバターオブジェクトに反映する。例えば、アバターオブジェクト制御モジュール1424は、HMD120が傾いたことを検知して、アバターオブジェクトを傾けて配置するためのデータを生成する。ある局面において、アバターオブジェクト制御モジュール1424は、コントローラ300の動きをアバターオブジェクトに反映する。この場合、コントローラ300は、コントローラ300の動きを検知するためのモーションセンサ、加速度センサ、または複数の発光素子(例えば、赤外線LED)などを備える。アバターオブジェクト制御モジュール1424は、動き検出モジュール1425が検出した顔器官の動作を、仮想空間11に配置されるアバターオブジェクトの顔に反映させる。つまり、アバターオブジェクト制御モジュール1424は、ユーザ5の顔の動作をアバターオブジェクトに反映する。
The avatar
動き検出モジュール1425は、ユーザ5の動きを検出する。動き検出モジュール1425は、例えば、コントローラ300の出力に応じて、ユーザ5の手の動きを検出する。動き検出モジュール1425は、例えば、ユーザ5の身体に装着されるモーションセンサの出力に応じて、ユーザ5の身体の動きを検出する。動き検出モジュール1425は、ユーザ5の顔器官の動作を検出することもできる。
The
仮想オブジェクト制御モジュール1426は、仮想空間11において、アバターオブジェクトを除く仮想オブジェクトの挙動を制御する。一例として、仮想オブジェクト制御モジュール1426は、仮想オブジェクトを変形させる。別の例として、仮想オブジェクト制御モジュール1426は、仮想オブジェクトの配置位置を変更する。別の例として、仮想オブジェクト制御モジュール1426は、仮想オブジェクトを移動させる。
The virtual
[視聴者の仮想空間]
図15は、ある実施の形態に従う仮想空間11Aおよび視界画像1517Aを示す図である。図15(A)では、ユーザ5A(第1ユーザ)に仮想体験を提供するための仮想空間11Aに、アバターオブジェクト6A〜6C、仮想カメラ14A、ステージオブジェクト1532、アバターオブジェクト1533(第1アバター)、アバターオブジェクト1534(第2アバター)、およびライトオブジェクト1541が少なくとも配置される。ユーザ5Aは、頭部にHMD120Aを装着している。ユーザ5Aは、ユーザ5Aの身体の右側の一部を構成する右手で右コントローラ300RAを把持し、ユーザ5Aの身体の左側の一部を構成する左手で左コントローラ300LAを把持している。アバターオブジェクト6Aは、ユーザ5Aに関連付けられている。アバターオブジェクト6A(第3アバター)は、仮想右手1531RAおよび仮想左手1531LAを含む。仮想右手1531RAは操作オブジェクトの一種であり、ユーザ5Aの右手の動きに応じて仮想空間11Aにおいて動くことができる。仮想左手1531LAは操作オブジェクトの一種であり、ユーザ5Aの左手の動きに応じて仮想空間11Aにおいて動くことができる。
Viewer's virtual space
FIG. 15 is a diagram illustrating a
図15(A)に示す仮想空間11Aは、コンピュータ200Aにおいてライブコンテンツが再生されることによって、構築される。仮想空間11Aにおいて、アバターオブジェクト1533は、ライブの演者としてパフォーマンスを実行し、アバターオブジェクト6Aを含む他のアバターオブジェクトは、ライブの視聴者としてパフォーマンスを視聴する。仮想空間11Aにおいて、アバターオブジェクト6Bおよび6Cは、それぞれ、ユーザ5Bおよび5Cに個別に関連付けられている。また、詳細については後述するが、アバターオブジェクト1533は、現実空間のライブでパフォーマンスを行っている演者(以下、単に「演者」と称する)に関連付けられている。アバターオブジェクト1534は、ユーザ5および演者に関連付けられていないアバターオブジェクトである。アバターオブジェクト1534は、コンピュータ200Aに格納されているプログラムに従って、少なくとも一部の動作を行なってもよい。
The
仮想空間11Aにおいて、アバターオブジェクト1533は、ステージオブジェクト1532上に配置される。ステージオブジェクト1532は、現実のライブ会場におけるステージを模した外観を有している。アバターオブジェクト6A、6B、および6C、並びに、アバターオブジェクト1534は、いずれも、ステージオブジェクト1532の手前に配置される。仮想空間11Aにおいて、アバターオブジェクト1533は、演者の動きに応じて動くことによって、ライブのパフォーマンスを実行する。換言すれば、アバターオブジェクト1533は、現実空間において演者が行ったパフォーマンス(第1パフォーマンス)に対応するパフォーマンス(第2パフォーマンス)を、仮想空間11Aにおいて実行する。仮想空間11Aにおいて、アバターオブジェクト6Aは、アバターオブジェクト1533による第2パフォーマンスを視聴する。このとき、ユーザ5Bに提供される仮想空間11Bにおいて、アバターオブジェクト6B(第4アバター)は、アバターオブジェクト1533によって実行された第2パフォーマンスを視聴する。同様に、ユーザ5Cに提供される仮想空間11Cにおいて、アバターオブジェクト6C(第4アバター)は、アバターオブジェクト6Cによって実行された第2パフォーマンスを視聴する。したがって、ユーザ5A、5B、および5Cは視聴者であるとも言える。
In
図15(A)において、ライトオブジェクト1541は、ケミカルライトなどの棒状の照明器具を模したオブジェクトであり、アバターオブジェクト6A〜6C、および、アバターオブジェクト1534の仮想右手1531Rに把持された状態で配置される。アバターオブジェクト6A〜6Cが把持しているライトオブジェクト1541は、それぞれ、仮想右手1531RA〜1531RCの動きに応じて動く。つまり、ユーザ5A〜5Cは、自身の右手を動かすことで、ライトオブジェクト1541を動かす(振る)という仮想体験を得ることができる。
In FIG. 15A, a
図15(A)において、仮想カメラ14Aは、アバターオブジェクト6Aの頭部に配置される。仮想カメラ14Aは、仮想カメラ14Aの位置および向きに応じた視界領域15Aを規定する。仮想カメラ14Aは、視界領域15Aに対応する視界画像1517Aを生成して、図15(B)に示すようにHMD120Aに表示させる。ユーザ5Aは、視界画像1517Aを視認することによって、アバターオブジェクト6Aの視点で仮想空間の一部を視認する。これにより、ユーザ5Aは、あたかもユーザ5A自身がアバターオブジェクト6Aであるかのような仮想体験を、得ることができる。視界画像1517Aには、第2パフォーマンスを実行するアバターオブジェクト1533が含まれる。したがって、ユーザ5Aは、アバターオブジェクト1533による第2パフォーマンスを、アバターオブジェクト6Aの視点で視聴することができる。
In FIG. 15A, the
仮想空間11Aには、異なる複数のアバターオブジェクト1533を配置することもできる。ある局面では、複数のアバターオブジェクト1533にそれぞれ異なる演者が関連付けられる。別の局面では、複数のアバターオブジェクト1533に同一の演者が関連付けられる。
A plurality of
[現実空間でのライブ]
図16は、ある実施の形態に従う現実空間でのライブを示す図である。図16では、現実空間でのライブにおいて、演者1635が観客1636に対してパフォーマンス(第1パフォーマンス)を行なっている。演者1635は、モーションセンサ1651〜1653、および1655を装着している。モーションセンサ1651は、ベルト1654によって演者1635の腰部に装着されている。モーションセンサ1652は、演者1635の右足の甲に装着されている。モーションセンサ1653は、演者1635の左足の甲に装着されている。モーションセンサ1655は、ベルト1656によって演者1635の頭部に装着されている。なお、図16では、モーションセンサ1655およびベルト1656が、演者1635の髪に隠れているため、モーションセンサ1655およびベルト1656を点線で示している。
[Live in real space]
FIG. 16 is a diagram illustrating live in real space according to one embodiment. In FIG. 16, the
演者1635は、さらに、演者1635の身体の右側の一部を構成する右手(第1部位)で右コントローラ300RBを把持し、演者1635の身体の左側の一部を構成する左手(第2部位)で左コントローラ300LBを把持している。演者1635は、さらに、マイク1657を装着している。マイク1657は、演者1635の発した音声(例えば、歌声)を音声信号(電気信号)に変換してコンピュータ1791(第1コンピュータ、図16では不図示)に出力する。コンピュータ1791に出力された音声信号は、例えば、スピーカ(不図示)によって音声に変換され、出力される。これにより、現実空間におけるライブ会場に、演者1635の音声が出力され、観客1636は、該音声を聴くことができる。
The
ある局面において、演者1635に装着されるモーションセンサは、ベースステーション1659から照射される信号(例えば赤外線レーザ)の到達時間と角度とを検出する。コンピュータ1791のプロセッサは、モーションセンサの検出結果に基づいて、ベースステーション1659に対するモーションセンサの位置を検出する。プロセッサは、さらに、ベースステーション1659に対するモーションセンサの位置を、所定点(例えば頭部に装着されたモーションセンサ1655の位置)を基準として規格化してもよい。プロセッサは、検出したモーションセンサの位置に基づいて、演者1635の動きを検出する。
In one aspect, a motion sensor attached to the
具体的には、プロセッサは、演者1635の頭部、腰部、両手、および両足の位置を検出する。以下、各モーションセンサによって検出される演者1635の部位の位置を「位置情報」とも言う。プロセッサは、演者1635の現在の位置情報と、予め取得された演者1635の寸法データとに基づいて、演者1635の関節の回転方向を算出する。寸法データは、演者1635の身体の寸法を表すデータである。寸法データおよび回転方向については後述する。現在の位置情報を検出することおよび回転方向を算出することは、演者1635の動きを検出することと同義である。
Specifically, the processor detects the positions of the head, waist, hands, and feet of the
プロセッサは、現在の位置情報および回転方向を含む情報、すなわち、検出した動きの情報(以下、「第1動き情報」と称する)を生成し、サーバ600を介してコンピュータ200に送信する。プロセッサ210は、第1動き情報に応じて、ユーザ5に仮想体験を提供するための仮想空間11に配置されたアバターオブジェクト1533に、現実空間のライブにおける演者1635の動きが反映されたパフォーマンスを実行させる。第1動き情報は、マイク1657を介してコンピュータ1791に出力された音声信号を含んでもよい。これにより、プロセッサ210は、アバターオブジェクト1533に、演者1635が発した音声を出力させることができる。ユーザ5は、現実空間のライブにおいて演者1635が行った第1パフォーマンスに対応する、アバターオブジェクト1533が行う第2パフォーマンスを視聴することができる。このように、演者1635は、アバターオブジェクト1533によるライブを、ユーザ5A、5B、および5Cにそれぞれ配信する配信者としての役割をも有する。
The processor generates information including current position information and a rotation direction, that is, information of detected motion (hereinafter referred to as “first motion information”), and transmits the information to the
第1動き情報は、仮想空間11においてアバターオブジェクト1533に第2パフォーマンスを実行させることができる情報であればよく、現在の位置情報および回転方向を含む情報に限定されない。第1動き情報は、例えば、回転方向を含まない情報であってもよい。この場合、コンピュータ200のプロセッサ210は、例えば、受信した動き情報に含まれる、演者1635の身体を構成する各部位の位置に対応するように、演者1635の各部位に対応するアバターオブジェクト1533の各部位オブジェクトの位置を制御する。
The first motion information may be any information as long as the
図16の例では、観客1636は、ケミカルライト1658(第1端末装置)を保持している。本実施形態において、ケミカルライト1658は、ケミカルライト1658の動きを検出するセンサ(例えば、加速度センサ)を備えている。つまり、該センサは、観客1636がケミカルライト1658を振る動作(第1動作)を検出することができる。該センサが動きを検出したことを示す情報(以下、「第2動き情報」と称する)は、ゲートウェイ1793(図16では不図示)を介してサーバ600へ送信される。第2動き情報は、例えば、ケミカルライト1658を識別する情報(ケミカルライト1658のID)であってもよい。なお、ケミカルライト1658に備えられるセンサは、ケミカルライト1658が振られたか否かを検出することができるセンサであればよく、加速度センサに限定されない。また、観客1636が保持する物体は、第1動作を検出するセンサが備えていればよく、ケミカルライトに限定されない。例えば、ライトスティック、ペンライトなどの、ケミカルライトと異なる棒状の照明器具であってもよい。あるいは、団扇、タオルなどの照明器具とは異なる物であってもよい。なお、観客1636が保持する物体は、ライブを盛り上げるために使用されるものであることが好ましい。
In the example of FIG. 16, the
なお、図15および図16に示すように、演者1635に関連付けられるアバターオブジェクト1533は、演者1635に酷似したアバターオブジェクトであることが好ましい。換言すれば、アバターオブジェクト1533は、演者1635の高精度な3Dモデルであることが好ましい。これにより、仮想空間11でライブを視聴するユーザ5に、演者1635のライブを視聴しているかのような仮想体験を与えることができる。
Note that, as shown in FIGS. 15 and 16, the
[システムの構成]
図17は、ある実施の形態に従うシステム1700の構成の概略を示す図である。システム1700は、例えば業務用のシステムとして提供される。
System Configuration
FIG. 17 shows a schematic of the configuration of a
システム1700は、サーバ600と、コンピュータ200A(第2コンピュータ)、200B、200Cと、コンピュータ1791と、スマートフォン1792(第2端末装置)と、ゲートウェイ1793と、外部機器700と、ネットワーク2とを含む。なお、図17では、図示している各装置と有線または無線で接続されることにより、間接的にネットワーク2と接続されている装置については図示していないが、システム1700はこのような装置も含む。このような装置としては、ユーザ5が装着しているHMD120などのHMDセット110が備える各装置、演者に装着されたモーションセンサ、ベースステーション1659、ケミカルライト1658などが挙げられる。
The
コンピュータ200A、200B、200Cは、それぞれ、HMDセット110A、110B、110Cに備えられたコンピュータである。HMDセット110については、図1を参照して既に説明しているため、ここでは説明を繰り返さない。外部機器700についても、図1を参照して既に説明しているため、ここでは説明を繰り返さない。
The
コンピュータ1791は、演者1635に関連付けられたコンピュータである。コンピュータ1791は、ベースステーション1659を制御して、モーションセンサに対して信号を照射させる。また、コンピュータ1791は、モーションセンサから取得した検出結果に基づいて第1動き情報を生成し、サーバ600へ送信する。
The
スマートフォン1792は、観客1636に関連付けられたスマートフォンである。スマートフォン1792の詳細については後述する。
The
ゲートウェイ1793は、ケミカルライト1658が検出した第2動き情報を受信し、サーバ600へ送信する中継装置である。
The
サーバ600は、図1を参照して説明した機能に加え、コンピュータ1791から第1動き情報を受信したり、ゲートウェイ1793から第2動き情報を受信したりする。
The
[寸法データの取得]
図18は、寸法データの取得方法を説明するための図である。図18(A)は、演者1635が、正面を向き、両手を水平に広げ、起立している状態を表す。以下、図18(A)に示される状態を第1姿勢とも言う。図18(B)は、演者1635が、正面を向き、両手を太もも側面に下ろし、起立している状態を表す。以下、図18(B)に示される状態を第2姿勢とも言う。
[Acquisition of dimension data]
FIG. 18 is a diagram for explaining a method of acquiring dimension data. FIG. 18A shows a state where the
ある局面において、コンピュータ1791のプロセッサは、演者1635に対し第1姿勢および第2姿勢をとるように促す。一例として、プロセッサは、第1姿勢および第2姿勢をとる旨の音声をスピーカ(不図示)から出力する。
In one aspect, the processor of
プロセッサは、2つの姿勢(第1姿勢と第2姿勢)のそれぞれにおいて、演者1635に装着されたモーションセンサの出力に基づいて演者1635の頭部、腰部、両手、両足の位置情報を取得する。これら位置情報は、図19に示されるように実座標系(x、y、z)における位置として取得され得る。
The processor acquires positional information of the head, waist, both hands, and both legs of the
プロセッサは、2つの姿勢に対応する位置情報から演者1635の寸法データを算出する。ある実施形態において、プロセッサは、図20に示されるように、演者1635の身長、肩幅、腕の長さ、足の長さ、頭部から肩までの高さを寸法データとして算出する。プロセッサは、第2姿勢における両手の間隔を肩幅として算出し得る。プロセッサは、第1姿勢における両手の間隔から肩幅を差し引いた値の半分を腕の長さとして算出し得る。プロセッサは、足の高さから頭部の高さまでの距離を身長として算出し得る。プロセッサは、足の高さから腰部の高さまでの距離を足の長さとして算出し得る。プロセッサは、第1姿勢における手の高さから頭部までの高さを、頭部から肩までの高さとして算出し得る。
The processor calculates dimension data of the
図21は、寸法データを取得するための処理を表すフローチャートである。ステップS2110において、プロセッサは、演者1635に第1姿勢になるように指示する。例えば、プロセッサは、該指示を音声としてスピーカから出力することでステップS2110の処理を実現する。ステップS2120において、プロセッサは、第1姿勢に対応する位置情報を取得する。
FIG. 21 is a flowchart showing a process for acquiring dimension data. In step S2110, the processor instructs the
ステップS2130において、プロセッサは、演者1635に第2姿勢になるように指示する。ステップS2140において、プロセッサは、第2姿勢に対応する位置情報を取得する。
In step S2130, the processor instructs the
ステップS2150において、プロセッサは、第1姿勢に対応する位置情報と第2姿勢に対応する位置情報とから、演者1635の寸法データを算出する。プロセッサは、寸法データをコンピュータ1791のストレージに格納する。
In step S2150, the processor calculates dimension data of the
以上のように、演者1635は、2つの姿勢をとるだけで、自身の寸法をコンピュータ1791に容易に入力できる。なお、他の局面において、演者1635は、自身の寸法をキーボード等の入力デバイスを用いてコンピュータ1791に入力してもよい。
As described above, the
[関節の回転方向]
ある実施形態において、コンピュータ1791のプロセッサは、演者1635に装着された6つのモーションセンサの出力(位置情報)と、寸法データとに基づいて、演者1635の関節の回転方向を推定する。一例として、プロセッサは、頭部の位置情報と、肩幅と、頭部から肩までの高さとに基づいて、肩の位置を推定する。プロセッサは、肩の位置と手の位置情報とから、肘の位置を推定する。この推定は、逆運動学(Inverse Kinematics)を利用した公知のアプリケーションにより実行され得る。
[Rotation of joints]
In one embodiment, the processor of the
ある実施形態において、プロセッサは、6つのモーションセンサから、演者1635の首(頭部)、腰、両手首、および両足首の関節の傾き(回転方向)を取得する。加えて、プロセッサは、逆運動学に基づいて、両肩、両肘、両股(足のつけ根)、両膝の関節の回転方向を推定する。図22に示されるように、プロセッサは、各関節の回転方向をuvw視野座標系で取得または推定する。
In one embodiment, the processor obtains the tilt (rotational direction) of the neck (head), waist, wrists, and ankle joints of the
なお、回転方向が位置情報と寸法データとに基づいて算出される場合、プロセッサは、演者1635が正面を向いていないとき(つまり、頭部と腰部とが異なる方向を向いているとき)の肩の位置等を正確に推定できない。そこで、他の実施形態において、コンピュータ1791は、モーションセンサによって検出される演者1635の部位の傾きをさらに考慮して関節の回転方向を推定してもよい。例えば、コンピュータ1791は、頭部の位置情報と、頭部の傾きと、腰部の傾きと、肩幅と、頭部から肩までの高さとに基づいて、肩の位置を推定する。当該構成によれば、コンピュータ1791は、関節の回転方向の精度を向上し得る。
When the rotation direction is calculated based on the position information and the dimension data, the processor determines that the shoulder of the
[ライブ視聴処理フロー]
図23は、ある実施の形態に従うシステム1700において実行される処理の一部を示すシーケンス図である。本実施形態では、ライブ視聴を開始するための、視聴者側の一連の処理が、HMDセット110Aにより実行されるものとして説明する。ただし、当該処理は、他のHMDセット110B、110Cにより実行されてもよいし、当該処理の一部または全部がサーバ600によって実行されてもよい。
[Live viewing process flow]
FIG. 23 is a sequence diagram illustrating a portion of the processing performed in
ステップS2301において、プロセッサ210Aは、仮想空間11Aを定義する。当該処理は、図11のステップS1110の処理に相当する。具体的には、プロセッサ210Aは、仮想空間データを特定することによって、仮想空間データによって表される仮想空間11Aを定義する。仮想空間11Aは、アバターオブジェクト1533のライブをアバターオブジェクト6Aが視聴する仮想空間である。言い換えれば、仮想空間11Aは、アバターオブジェクト1533によるパフォーマンスが行われる仮想空間である。
In step S2301, the processor 210A defines a
ステップS2302において、プロセッサ210Aは、仮想カメラ14Aを生成し、仮想空間11Aに配置する。ステップS2303において、プロセッサ210Aは、ステージオブジェクト1532を生成し、第2仮想空間11Aに配置する。ステップS2304において、プロセッサ210Aは、アバターオブジェクト1534を仮想空間11Aに配置する。一例として、プロセッサ210Aは、仮想カメラ14Aとアバターオブジェクト6Aとを、同一の位置に配置する。
In step S2302, the processor 210A generates a
ステップS2305において、プロセッサ210Aは、アバターオブジェクト6Bおよび6Cの各アバター情報を、サーバ600から受信する。ステップS2306において、プロセッサ210Aは、受信した各アバター情報に基づいて、アバターオブジェクト6Bおよび6Cを仮想空間11Aに配置する。プロセッサ210Aは、さらに、他のアバターオブジェクト6のアバター情報も受信し、仮想空間11Aに配置する。仮想空間11Aには、多数のアバターオブジェクト6、および、多数のアバターオブジェクト1534が配置される。ただし、説明の便宜のため、仮想空間11を示す図面(図15など)では、アバターオブジェクト6Bおよび6C、並びに、2体のアバターオブジェクト1534を代表的に図示している。以降、特に必要がない限り、他のアバターオブジェクト6および他のアバターオブジェクト1534には言及しない。
In step S2305, the processor 210A receives avatar information of avatar objects 6B and 6C from the
ステップS2307において、プロセッサ210Aは、アバターオブジェクト制御モジュール1424として、アバターオブジェクト6Aを仮想空間11Aに配置する。図示しないが、プロセッサ210Aは、任意のタイミングで、アバターオブジェクト6Aのアバター情報を生成し、サーバ600に送信する。
In step S2307, the processor 210A arranges the
ステップ2308において、プロセッサ210Aは、仮想カメラ制御モジュール1422として、HMD120Aの動きに応じて仮想空間11Aにおける仮想カメラ14Aの位置および傾きを決定する。より詳細には、プロセッサ210Aは、ユーザ5Aの頭部の姿勢と、仮想空間11Aにおける仮想カメラ14Aの位置とに応じて、仮想空間11Aにおける仮想カメラ14Aからの視界である視界領域15Aを制御する。当該処理は、図11のステップS1140の処理の一部に相当する。仮想カメラ14Aがアバターオブジェクト6Aと同一の位置に配置されるので、仮想カメラ14Aの位置は、アバターオブジェクト6Aの位置と同義である。さらに、仮想カメラ14Aからの視界は、アバターオブジェクト6Aからの視界と同義である。
In step 2308, processor 210A, as virtual
ステップS2309において、プロセッサ210Aは、視界画像17Aをモニタ130Aに表示する。具体的には、プロセッサ210Aは、HMD120Aの動き(すなわち仮想カメラ14Aの位置および傾き)と、仮想空間11Aを定義する仮想空間データと、に基づいて、視界領域15Aに対応する視界画像17Aを定義する。視界画像17Aを定義することは、視界画像17Aを生成することと同義である。プロセッサ210Aは、さらに、HMD120Aのモニタ130Aに視界画像17Aを出力することによって、視界画像17AをHMD120Aに表示させる。当該処理は、図11のステップS1180およびS1190の処理に相当する。
In step S2309, the processor 210A displays the
ステップS2321において、コンピュータ1791のプロセッサは、演者1635に装着されたモーションセンサからの検出結果の受信を開始する。具体的には、モーションセンサを装着した演者1635が現実空間においてステージに現れることにより、モーションセンサが、ベースステーション1659から照射される信号の到達時間と角度との検出を開始する。これにより、コンピュータ1791は、モーションセンサからの検出結果の受信を開始する。
In step S2321, the processor of the
ステップS2322において、プロセッサは、モーションセンサからの受信開始を示す情報を、サーバ600を介してリアルタイムにコンピュータ200Aへ送信する。該情報は、モーションセンサから最初に受信した検出結果に基づいて生成された第1動き情報であってもよい。
In step S2322, the processor transmits information indicating the reception start from the motion sensor to the
ステップS2310において、プロセッサ210Aは、モーションセンサからの受信開始を示す情報を受信する。ステップS2311において、プロセッサ210Aは、受信した該情報に基づいて、アバターオブジェクト1533を仮想空間11Aに配置する。詳細には、プロセッサ210Aは、アバターオブジェクト1533をステージオブジェクト1532上に配置する。
In step S2310, the processor 210A receives information indicating the start of reception from the motion sensor. In step S2311, the processor 210A arranges the
(ライブ開始)
図24は、ある実施形態に係る演者1635の姿勢の一例を示す図である。現実空間におけるライブの開始後、演者1635は、例えば図24に示す姿勢を取るように、自身の身体を動かす。図24に示す姿勢は、第1パフォーマンスを実行したときの姿勢である。ステップS2323において、コンピュータ1791のプロセッサは、図24に示す姿勢を取る動き、すなわち、第1パフォーマンスの動きを検出する。ステップS2324において、該プロセッサは、検出した動きに基づき第1動き情報を生成し、該第1動き情報を、サーバ600を介してリアルタイムにコンピュータ200Aへ送信する。
(Live start)
FIG. 24 is a view showing an example of the posture of the
図25は、ある実施の形態に従う仮想空間2511Aおよび視界画像2517Aを示す図である。なお、以降、図25に示すように、2体のアバターオブジェクト1534を、それぞれ、アバターオブジェクト1534A、および、アバターオブジェクト1534Bと称する。
FIG. 25 is a diagram showing a
ステップS2312において、プロセッサ210Aは、演者1635の第1動き情報を、サーバ600を介してリアルタイムに受信する。ステップS2313において、プロセッサ210Aは、受信した第1動き情報に基づいて、アバターオブジェクト1533に第2パフォーマンスを実行させる。これにより、プロセッサ210Aは、図24に示す演者1635の第1パフォーマンスに対応する第2パフォーマンスを、アバターオブジェクト1533に実行させることができる。
In step S2312, the processor 210A receives the first motion information of the
プロセッサ210Aは、アバターオブジェクト1533による第2パフォーマンスを、仮想空間2511Aにおいてアバターオブジェクト6Aに視聴させる。プロセッサ210Aは、例えば、図25(A)に示す仮想空間2511Aに対応する視界画像2517Aを、図25(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像2517Aを視認することによって、アバターオブジェクト1533がステージオブジェクト1532上で第2パフォーマンスを実行したことを認識する。これにより、ユーザ5Aは、アバターオブジェクト6Aの視点で、アバターオブジェクト1533による第2パフォーマンスを楽しむことができる。
The processor 210A causes the
このように、HMDセット110のユーザ5は、現実空間で行われているライブにおける演者1635の第1パフォーマンスを反映した、アバターオブジェクト1533の第2パフォーマンスを、仮想空間2511で仮想体験することができる。換言すれば、システム1700は、ライブを現地で視聴する、ライブビューイングで視聴するといった従来の選択肢に加え、仮想空間2511でライブを視聴する、という新たな選択肢をユーザ5に与えることができる。これにより、ユーザ5は、ライブのチケットが取れなかった、あるいは、ライブ会場やライブビューイング会場へ行くことができない、などの状況であっても、ライブを仮想体験することができる。
In this manner, the
[現実空間の情報の仮想空間への反映]
図26は、ある実施の形態に従う現実空間でのライブを示す図である。説明の便宜のため、図26では、多数の観客1636のうち、観客1636Aおよび観客1636Bを代表的に図示している。また、図26では、ベースステーション1659の記載を省略している。以降の現実空間でのライブを示す図でも同様である。
[Implication of information in real space to virtual space]
FIG. 26 is a diagram illustrating live in real space according to one embodiment. For the convenience of description, in FIG. 26, the
現実空間におけるライブ中、観客1636は、例えば図26に示すように、把持したケミカルライト1658を振る。これにより、ケミカルライト1658が振られたことを示す第2動き情報が、ゲートウェイ1793およびサーバ600を介してコンピュータ200Aへ送信される。プロセッサ210Aは、第2動き情報、換言すれば、観客1636がケミカルライト1658を振る動作に応じて、仮想空間11Aにおいて第1処理を実行する。
During the live in the real space, the
(第1処理の例1)
図27は、ある実施の形態に従う仮想空間2511Aおよび視界画像2717Aを示す図である。一例として、プロセッサ210Aは、上記第1処理として、受信した第2動き情報に応じてアバターオブジェクト1534を動かす。例えば、プロセッサ210Aは、図27(A)に示すように、仮想空間2511Aにおいて、アバターオブジェクト1534にライトオブジェクト1541を振らせる。
(Example 1 of the first process)
FIG. 27 is a diagram showing a
この例において、プロセッサ210Aは、ライブの開始前に、各ケミカルライト1658を識別する情報を取得し、ストレージ230に格納する。さらに、プロセッサ210Aは、アバターオブジェクト1534を仮想空間2511Aに配置するとき、各アバターオブジェクト1534と、ストレージ230に格納されている各ケミカルライト1658を識別する情報とを関連付ける。これにより、ライブの開始前に、各アバターオブジェクト1534と、ケミカルライト1658を持つ観客1636とが関連付けられる。換言すれば、プロセッサ210Aは、各観客1636に関連付けられるアバターオブジェクト1534を仮想空間2511Aに配置する。
In this example, the processor 210A obtains information identifying each chemical light 1658 and stores the information in the
プロセッサ210Aは、観客1636がケミカルライト1658を振ったことに基づいて第2動き情報、すなわち、ケミカルライト1658を識別する情報を受信すると、該情報に関連付けられているアバターオブジェクト1534を特定する。そして、プロセッサ210Aは、特定したアバターオブジェクト1534にライトオブジェクト1541を振らせる。図26の例では、観客1636Aおよび観客1636Bがケミカルライト1658を振っている。図27の例では、プロセッサ210Aは、観客1636Aがケミカルライト1658を振ったことに基づく第2動き情報に応じて、アバターオブジェクト1534Aにライトオブジェクト1541を振らせている。また、プロセッサ210Aは、観客1636Bがケミカルライト1658を振ったことに基づく第2動き情報に応じて、アバターオブジェクト1534Bにライトオブジェクト1541を振らせている。
When processor 210A receives second motion information, ie, information identifying
プロセッサ210Aは、例えば、図27(A)に示す仮想空間2511Aに対応する視界画像2717Aを、図27(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像2717Aを視認することによって、アバターオブジェクト1534がライトオブジェクト1541を振っていることを認識する。
The processor 210A displays, for example, a
このように、現実空間で観客1636がケミカルライト1658を振ったことに応じて、仮想空間2511Aでアバターオブジェクト1534にライトオブジェクト1541を振らせることで、現実空間で行われているライブの盛り上がりを、仮想空間2511Aに反映することができる。換言すれば、仮想空間2511Aで行われているライブが、現実空間で行われているライブと同様に盛り上がる。結果として、現実空間のライブの観客1636と、仮想空間2511でライブを視聴しているユーザ5とが、一体的にライブを視聴しているかのような状態を作り出すことができる。
Thus, in response to the
(第1処理の例2)
図28は、ある実施の形態に従う仮想空間2511Aおよび視界画像2817Aを示す図である。一例として、プロセッサ210Aは、上記第1処理として、ケミカルライト1658を振っている観客1636の数に応じた演出を実行する。
(Example 2 of the first process)
FIG. 28 is a diagram illustrating a
具体的には、プロセッサ210Aは、受信した第2動き情報の数を算出することにより、ケミカルライト1658を振っている観客1636の数を特定する。そして、プロセッサ210Aは、例えば、特定した数が所定の閾値以上である場合、上記演出を実行する。プロセッサ210Aは、例えば、該演出として、図28(A)に示すように、仮想空間2511Aにおいて、流れ星の演出を行なってもよい。つまり、プロセッサ210Aは、星型の仮想オブジェクトである星型オブジェクト2842を、仮想空間2511Aに配置し、さらに、該星型オブジェクト2842を動かしてもよい。
Specifically, the processor 210A specifies the number of
プロセッサ210Aは、例えば、図28(A)に示す仮想空間2511Aに対応する視界画像2817Aを、図28(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像2817Aを視認することによって、仮想空間2511Aにおいて流れ星の演出が行われていることを認識する。
The processor 210A, for example, displays a
このように、現実空間でケミカルライト1658を振った観客1636の人数に応じた演出を、仮想空間2511Aで実行することで、現実空間で行われているライブの盛り上がりを、仮想空間2511Aに反映することができる。仮想空間2511Aで該演出が行われることで、仮想空間2511Aで行われているライブが、現実空間で行われているライブと同様に盛り上がる。結果として、現実空間のライブの観客1636と、仮想空間2511でライブを視聴しているユーザ5とが、一体的にライブを視聴しているかのような状態を作り出すことができる。
In this way, by performing effects in the
プロセッサ210Aは、受信した第2動き情報の数が多いほど、実行する演出を派手なものとしてもよい。例えば、プロセッサ210Aは、上述した流れ星の演出において、受信した第2動き情報の数が多いほど、星型オブジェクト2842の数を多くしてもよい。
The processor 210A may make the effect to be performed more flashy as the number of the received second motion information is larger. For example, the
なお、ケミカルライト1658を振っている観客1636の数の特定を、サーバ600が行ってもよい。サーバ600は、さらに、特定した数が所定の閾値以上であるか否かの判定を行ってもよい。サーバ600がケミカルライト1658を振っている観客1636の数の特定のみを行う場合、サーバ600は、特定した数をコンピュータ200Aへ送信する。サーバ600が、ケミカルライト1658を振っている観客1636の数の特定と、特定した数が所定の閾値以上であるか否かの判定の両方を行う場合、サーバ600は、特定した数が所定の閾値以上であると判定した場合に、その旨をプロセッサ210Aへ通知する。
The
[仮想空間の情報の現実空間への反映例1]
システム1700は、仮想空間11における情報を、現実空間へ反映する装置を含んでいてもよい。該装置は、一例として、拡張現実(AR:Augmented Reality)空間における仮想体験を観客1636に提供する。例えば、該装置は、現実空間を表示する表示部を備え、該現実空間とともに、仮想空間11における情報に応じた第1画像を表示部に表示させてもよい。なお、「現実空間を表示する」とは、例えば、現実空間を撮影した画像(第2画像)を表示することであってもよいし、現実空間をそのまま映すことであってもよい。また、「現実空間をそのまま映す」とは、例えば、ユーザが透過型の表示部を介して現実空間を視認することである。以降、該装置として、図17に示すスマートフォン1792を例に挙げて説明する、
(スマートフォンのハードウェア構成)
図29は、本実施の形態に従うスマートフォン1792のハードウェア構成の一例を示すブロック図である。上述したように、スマートフォン1792は、観客1636に関連付けられたスマートフォン(例えば、観客1636が所有するスマートフォン)である。スマートフォン1792は、主たる構成要素として、プロセッサ2951と、メモリ2952と、ストレージ2953と、タッチパネル2954と、ディスプレイ2955(表示部)と、カメラ2956と、通信インターフェイス2957とを備える。各構成要素は、それぞれ、バス2958に接続されている。
[Example 1 of reflection of information in virtual space to real space]
The
(Hardware configuration of smartphone)
FIG. 29 is a block diagram showing an example of a hardware configuration of a
プロセッサ2951は、スマートフォン1792に与えられる信号に基づいて、あるいは、予め定められた条件が成立したことに基づいて、メモリ2952またはストレージ2953に格納されているプログラムに含まれる一連の命令を実行する。ある局面において、プロセッサ2951は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、MPU(Micro Processor Unit)、FPGA(Field-Programmable Gate Array)その他のデバイスとして実現される。
The
メモリ2952は、プログラムおよびデータを一時的に保存する。プログラムは、例えば、ストレージ2953からロードされる。データは、スマートフォン1792に入力されたデータと、プロセッサ2951によって生成されたデータとを含む。ある局面において、メモリ2952は、RAM(Random Access Memory)その他の揮発メモリとして実現される。
The
ストレージ2953は、プログラムおよびデータを永続的に保持する。ストレージ2953は、例えば、ROM(Read-Only Memory)、ハードディスク装置、フラッシュメモリ、その他の不揮発記憶装置として実現される。ストレージ2953に格納されるプログラムは、アプリケーションプログラム、シミュレーションプログラム、ゲームプログラム、ユーザ認証プログラム、他の装置との通信を実現するためのプログラムを含む。別の局面において、ストレージ2953は、メモリカードのように着脱可能な記憶装置として実現されてもよい。
The
タッチパネル2954は、観客1636によって操作されることにより、観客1636からスマートフォン1792への命令の入力を受け付ける。一例として、タッチパネル2954に対する観客1636の操作は、タッチパネル2954に物体を接触させたり、物体の接触を解除したり、接触させた物体を、接触を維持したまま移動させたりすることである。ある局面において、タッチパネル2954は、ディスプレイ2955に重畳するように配置される。換言すれば、タッチパネル2954とディスプレイ2955とは一体となっている。
ディスプレイ2955は、例えば、液晶モニタまたは有機EL(Electro Luminescence)モニタとして実現され得る。カメラ2956は、現実空間を撮影する。カメラ2956により撮影された画像(静止画像または動画像)は、ディスプレイ2955に表示される。
The
通信インターフェイス2957は、ネットワーク2に接続されて、ネットワーク2に接続されている他のコンピュータ(例えば、サーバ600)と通信する。ある局面において、通信インターフェイス2957は、例えば、LAN(Local Area Network)その他の有線通信インターフェイス、あるいは、WiFi(Wireless Fidelity)、Bluetooth(登録商標)、NFC(Near Field Communication)その他の無線通信インターフェイスとして実現される。通信インターフェイス2957は上述のものに限られない。
The
ある局面において、プロセッサ2951は、ストレージ2953にアクセスし、ストレージ2953に格納されている1つ以上のプログラムをメモリ220にロードし、当該プログラムに含まれる一連の命令を実行する。当該1つ以上のプログラムは、スマートフォン1792のオペレーティングシステム、各種アプリケーションプログラム、ゲームソフトウェア等を含み得る。
In one aspect, the
一例として、ストレージ2953は、AR空間における仮想体験をユーザに提供するためのアプリケーションプログラムを格納している。つまり、スマートフォン1792は、該アプリケーションプログラムを実行することにより、カメラ2956が現実空間を撮影した第2画像とともに、仮想オブジェクトをディスプレイ2955に表示させることができる。
As an example, the
(モジュールの詳細構成)
図30は、ある実施の形態に従うスマートフォン1792のモジュールの詳細構成を表すブロック図である。図30に示されるように、スマートフォン1792は、コントロールモジュール3061と、レンダリングモジュール3062と、メモリモジュール3063とを備える。ある局面において、コントロールモジュール3061とレンダリングモジュール3062とは、プロセッサ2951によって実現される。別の局面において、複数のプロセッサ2951がコントロールモジュール3061とレンダリングモジュール3062として作動してもよい。メモリモジュール3063は、メモリ2952またはストレージ2953によって実現される。
(Detailed configuration of module)
FIG. 30 is a block diagram showing a detailed configuration of a module of the
図30に示されるように、コントロールモジュール3061は、仮想オブジェクト生成モジュール3064および仮想オブジェクト制御モジュール3065を備えている。
As shown in FIG. 30, the
仮想オブジェクト生成モジュール3064は、各種の仮想オブジェクトをAR空間に生成する。仮想オブジェクト制御モジュール3065は、AR空間において、仮想オブジェクトの挙動を制御する。一例として、仮想オブジェクト制御モジュール3065は、仮想オブジェクトを変形させる。別の例として、仮想オブジェクト制御モジュール3065は、仮想オブジェクトの配置位置を変更する。別の例として、仮想オブジェクト制御モジュール3065は、仮想オブジェクトを移動させる。
The virtual
ある局面において、コントロールモジュール3061は、カメラ2956が現実空間を撮影した第2画像を取得する。レンダリングモジュール3062は、該第2画像と仮想オブジェクトとに基づいて、ディスプレイ2955に表示される画像を生成する。一例として、レンダリングモジュール3062は、第2画像に仮想オブジェクトを重畳させることにより、ディスプレイ2955に表示される画像を生成する。
In one aspect, the
メモリモジュール3063は、スマートフォン1792がAR空間を観客1636に提供するために使用されるデータを保持している。ある局面において、メモリモジュール3063は、空間情報と、オブジェクト情報と、ユーザ情報とを保持している。
The
空間情報は、AR空間を提供するために規定された1つ以上のテンプレートを保持している。オブジェクト情報は、AR空間にオブジェクトを配置するためのオブジェクトデータを含む。 Spatial information holds one or more templates defined to provide AR space. The object information includes object data for arranging an object in the AR space.
ユーザ情報は、ユーザ(すなわち観客1636)を識別するユーザIDを保持する。ユーザIDは、例えば、観客1636が使用するスマートフォン1792に設定されるIP(Internet Protocol)アドレスまたはMAC(Media Access Control)アドレスであり得る。別の局面において、ユーザIDはユーザによって設定され得る。
The user information holds a user ID identifying the user (ie the audience 1636). The user ID may be, for example, an IP (Internet Protocol) address or a MAC (Media Access Control) address set in the
メモリモジュール3063に格納されているデータおよびプログラムは、スマートフォン1792のユーザ(すなわち観客1636)によって入力される。あるいは、プロセッサ2951が、当該コンテンツを提供する事業者が運営するコンピュータ(例えば、サーバ600)からプログラムあるいはデータをダウンロードして、ダウンロードされたプログラムあるいはデータをメモリモジュール3063に格納する。
Data and programs stored in the
ある局面において、コントロールモジュール3061及びレンダリングモジュール3062は、各処理を実現する回路素子の組み合わせとしても実現され得る。
In one aspect, the
スマートフォン1792における処理は、ハードウェアと、プロセッサ2951により実行されるソフトウェアとによって実現される。このようなソフトウェアは、ハードディスクその他のメモリモジュール3063に予め格納されている場合がある。ソフトウェアは、CD−ROMその他のコンピュータ読み取り可能な不揮発性のデータ記録媒体に格納されて、プログラム製品として流通している場合もある。あるいは、当該ソフトウェアは、インターネットその他のネットワークに接続されている情報提供事業者によってダウンロード可能なプログラム製品として提供される場合もある。このようなソフトウェアは、光ディスク駆動装置その他のデータ読取装置によってデータ記録媒体から読み取られて、あるいは、通信制御モジュール(不図示)を介してサーバ600その他のコンピュータからダウンロードされた後、記憶モジュールに一旦格納される。そのソフトウェアは、プロセッサ2951によって記憶モジュールから読み出され、実行可能なプログラムの形式でRAMに格納される。プロセッサ2951は、そのプログラムを実行する。
The processing in the
(処理フロー)
図31は、ある実施の形態に従うシステム1700において実行される処理の一部を示すシーケンス図である。図32は、ある実施の形態に従う現実空間でのライブを示す図である。本実施形態では、視聴者側の一連の処理が、HMDセット110Aにより実行されるものとして説明する。ただし、当該処理は、他のHMDセット110B、110Cにより実行されてもよいし、当該処理の一部または全部がサーバ600によって実行されてもよい。また、観客側の一連の処理の一部または全部がサーバ600によって実行されてもよい。
(Processing flow)
FIG. 31 is a sequence diagram illustrating a portion of the processing performed in
ステップS3111において、プロセッサ2951は、現実空間を撮影した第2画像をディスプレイに表示する。図32の例では、観客1636Aが、図32(A)に示すように、スマートフォン1792を用いて現実空間、具体的には、演者1635を含む現実空間を撮影している。プロセッサ2951は、例えば、現実空間を撮影した第2画像3271を、図32(B)に示すようにディスプレイ2955に表示する。本実施形態では、第2画像3271は動画像(映像)であるものとして説明するが、第2画像3271は静止画像であってもよい。第2画像3271には、演者1635が含まれる。観客1636Aは、第2画像3271を視認することによって、スマートフォン1792のディスプレイ2955を介して、演者1635の第1パフォーマンスを視認する。
In step S3111, the
図33は、ある実施の形態に従う仮想空間2511Aおよび視界画像3317Aを示す図である。仮想空間2511Aにおけるライブ中において、ユーザ5Aは、アバターオブジェクト5Aに第3動作を実行させるための第2動作を行う。第2動作は、例えば、右手を挙げた後、左下方向に振り下ろす動きであってもよい。ステップS3101において、プロセッサ210Aは、ユーザ5Aが行った第2動作を検出する。ステップS3102において、プロセッサ210Aは、検出した第2動作に基づき、アバターオブジェクト6Aに第3動作を実行させる。一例として、プロセッサ210Aは、図33(A)に示すように、アバターオブジェクト6Aに、第3動作としてライトオブジェクト1541を振らせる。
FIG. 33 is a diagram showing a
ステップS3103において、プロセッサ210Aは、サーバ600を介してアバターオブジェクト6Bおよびアバターオブジェクト6Cのアバター情報を受信する。これらのアバター情報は、それぞれ、コンピュータ200Bおよびコンピュータ200Cから送信される。ステップS3104において、プロセッサ210Aは、受信したアバター情報に基づき、アバターオブジェクト6Bおよびアバターオブジェクト6Cに第3動作を実行させる。すなわち、プロセッサ210Aは、アバターオブジェクト6Bおよびアバターオブジェクト6Cにライトオブジェクト1541を振らせる。なお、プロセッサ210Aは、図33(A)に示すように、アバターオブジェクト1534にも、ライトオブジェクト1541を振らせてもよい。
In step S3103, the processor 210A receives avatar information of the
プロセッサ210Aは、例えば、図33(A)に示す仮想空間2511Aに対応する視界画像3317Aを、図33(B)に示すようにモニタ130Aに表示する。ユーザ5Aは、視界画像2517Aを視認することによって、アバターオブジェクト6B、アバターオブジェクト6C、および、アバターオブジェクト1534がライトオブジェクト1541を振っていることを認識する。
The processor 210A displays, for example, a
ステップ3105において、プロセッサ210Aは、アバターオブジェクト6Aが第3動作を行なっていることを示す第3動き情報を、サーバ600を介してスマートフォン1792へ送信する。
In step 3105, the processor 210A transmits third motion information indicating that the
図34は、ある実施の形態に従う現実空間でのライブを示す図である。ステップS3112において、プロセッサ2951は第3動き情報を受信する。ステップS3113において、プロセッサ2951は、第2画像とともに、第3動き情報に応じた第1画像をディスプレイ2955に表示する。図33の例では、図32の例と同様に、観客1636Aが、図33(A)に示すように、スマートフォン1792を用いて演者1635を含む現実空間を撮影している。プロセッサ2951は、例えば、第2画像3471とともに、第1画像を図34(B)に示すようにディスプレイ2955に表示する。第1画像は、例えば、図34(B)に示すように、ハート形の仮想オブジェクトであるハート型オブジェクト3472であってもよい。
FIG. 34 is a diagram illustrating live in real space according to an embodiment. At step S3112, the
つまり、スマートフォン1792は、現実空間を撮影した第2画像3471とともに、現実空間には無いハート型オブジェクト3472をディスプレイ2955に表示する。これにより、スマートフォン1792は、現実空間にハート型オブジェクト3472が出現したかのような仮想体験をユーザに提供することができる。
That is, the
一例として、プロセッサ2951は、各プロセッサ210から受信した第3動き情報の合計数を特定することにより、第3動作を実行しているアバターオブジェクト6の合計数を特定する。そして、プロセッサ2951は、例えば、特定した合計数が所定の閾値以上である場合、第2画像3471とともにハート型オブジェクト3472をディスプレイ2955に表示する。
As an example, the
プロセッサ2951は、第3動作を実行しているアバターオブジェクト6の合計数が多いほど、実行する演出を派手なものとしてもよい。例えば、プロセッサ2951は、該合計数が多いほど、ハート型オブジェクト3472の数を多くしてもよい。
As the total number of avatar objects 6 executing the third operation increases, the
なお、第3動作を実行しているアバターオブジェクト6の合計数の特定を、サーバ600が行ってもよい。サーバ600は、さらに、特定した合計数が所定の閾値以上であるか否かの判定を行ってもよい。サーバ600が第3動作を実行しているアバターオブジェクト6の合計数の特定のみを行う場合、サーバ600は、特定した合計数をスマートフォン1792へ送信する。サーバ600が、第3動作を実行しているアバターオブジェクト6の合計数の特定と、該合計数が所定の閾値以上であるか否かの判定の両方を行う場合、サーバ600は、該合計数が所定の閾値以上であると判定した場合に、その旨をプロセッサ2951へ通知する。
The
このように、プロセッサ2951は、仮想空間2511で第3動作を実行しているアバターオブジェクト6の合計数に応じて、現実空間を撮影した第2画像3471とともにハート型オブジェクト3472を表示する。これにより、仮想空間2511で行われているライブの盛り上がりを、現実空間に反映することができる。現実空間におけるライブの観客1636は、仮想空間2511で行われているライブの盛り上がりを、現実空間にいながら仮想体験することができる。結果として、現実空間のライブの観客1636と、仮想空間2511でライブを視聴しているユーザ5とが、一体的にライブを視聴しているかのような状態を作り出すことができる。
Thus, the
[仮想空間の情報の現実空間への反映例2]
(ARグラスのハードウェア構成)
図35は、本実施形態に従うARグラス3594(第2端末装置)のハードウェア構成の一例を示すブロック図である。観客1636は、スマートフォン1792に代えて、ARグラス3594を用いることによってもAR空間での仮想体験を享受することができる。具体的には、観客1636は、ARグラス3594を頭部に装着することにより、AR空間での仮想体験を享受することができる。
[Example 2 of reflection of information in virtual space to real space]
(Hardware configuration of AR glass)
FIG. 35 is a block diagram showing an example of a hardware configuration of an AR glass 3594 (second terminal apparatus) according to the present embodiment. The
ARグラス3594は、主たる構成要素として、プロセッサ3581と、メモリ3582と、ストレージ3583と、ディスプレイ3584(表示部)と、通信インターフェイス3585とを備える。各構成要素は、それぞれ、バス3586に接続されている。
The
プロセッサ3581は、ARグラス3594に与えられる信号に基づいて、あるいは、予め定められた条件が成立したことに基づいて、メモリ3582またはストレージ3583に格納されているプログラムに含まれる一連の命令を実行する。ある局面において、プロセッサ3581は、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、MPU(Micro Processor Unit)、FPGA(Field-Programmable Gate Array)その他のデバイスとして実現される。
The
メモリ3582は、プログラムおよびデータを一時的に保存する。プログラムは、例えば、ストレージ3583からロードされる。データは、ARグラス3594に入力されたデータと、プロセッサ3581によって生成されたデータとを含む。ある局面において、メモリ3582は、RAM(Random Access Memory)その他の揮発メモリとして実現される。
ストレージ3583は、プログラムおよびデータを永続的に保持する。ストレージ3583は、例えば、ROM(Read-Only Memory)、ハードディスク装置、フラッシュメモリ、その他の不揮発記憶装置として実現される。ストレージ3583に格納されるプログラムは、アプリケーションプログラム、シミュレーションプログラム、ゲームプログラム、ユーザ認証プログラム、他の装置との通信を実現するためのプログラムを含む。別の局面において、ストレージ3583は、メモリカードのように着脱可能な記憶装置として実現されてもよい。
The
ディスプレイ3584は、透過型の表示装置である。ここで、「透過型の表示装置」とは、ユーザが表示装置を視認した場合、表示装置の後方の景色を併せて視認できる表示装置である。このような表示装置であれば、ディスプレイ3584の透過率は特に限定されない。ディスプレイ3584は、眼鏡のいわゆるレンズ部分に設けられ、プロセッサ3581の処理に基づいて画像を表示する。これにより、ARグラス3594を装着した観客1636は、現実空間を視認するとともに、ディスプレイ3584に表示された画像を視認する。なお、ARグラス3594のレンズ部分の全てがディスプレイ3584であってもよいし、該レンズ部分の一部がディスプレイ3584であってもよい。
The
一例として、ストレージ3583は、AR空間における仮想体験をユーザに提供するためのアプリケーションプログラムを格納している。つまり、ARグラス3594は、該アプリケーションプログラムを実行することにより、画像の一例として、仮想オブジェクトをディスプレイ3584に表示させる。これにより、ARグラス3594を装着した観客1636は、現実空間と仮想オブジェクトとを同時に視認することとなる。よって、ARグラス3594は、ARグラス3594を装着した観客1636に、AR空間での仮想体験を提供することができる。
As one example, the
通信インターフェイス3585は、ネットワーク2に接続されて、ネットワーク2に接続されている他のコンピュータ(例えば、サーバ600)と通信する。ある局面において、通信インターフェイス3585は、例えば、LAN(Local Area Network)その他の有線通信インターフェイス、あるいは、WiFi(Wireless Fidelity)、Bluetooth(登録商標)、NFC(Near Field Communication)その他の無線通信インターフェイスとして実現される。通信インターフェイス3585は上述のものに限られない。
The
ある局面において、プロセッサ3581は、ストレージ3583にアクセスし、ストレージ3583に格納されている1つ以上のプログラムをメモリ220にロードし、当該プログラムに含まれる一連の命令を実行する。当該1つ以上のプログラムは、ARグラス3594のオペレーティングシステム、各種アプリケーションプログラム、ゲームソフトウェア等を含み得る。
In one aspect, the
なお、ARグラス3594のモジュールの詳細構成は、図30を参照して説明した、スマートフォン1792のモジュールの詳細構成と同様である。すなわち、ARグラス3594は、コントロールモジュール3061と、レンダリングモジュール3062と、メモリモジュール3063とを備えている。また、コントロールモジュール3061は、仮想オブジェクト生成モジュール3064および仮想オブジェクト制御モジュール3065を備えている。これらの詳細は既に説明しているため、ここでは繰り返さない。
The detailed configuration of the module of the
(ARグラスを用いた仮想体験の一例)
図36は、ある実施の形態に従う現実空間でのライブを示す図である。ARグラス3594のプロセッサ3581は、アバターオブジェクト6による第3動作の実行に応じた第1画像をディスプレイ3584に表示させる。図36の例では、図36(A)に示すように、観客1636AがARグラス3594を装着している。
(An example of a virtual experience using AR glass)
FIG. 36 is a diagram illustrating live in real space according to an embodiment. The
プロセッサ3581は、各プロセッサ210から第3動き情報を受信すると、受信した第3動き情報の合計数を特定することにより、第3動作を実行しているアバターオブジェクト6の合計数を特定する。そして、プロセッサ3581は、例えば、特定した合計数が所定の閾値以上である場合、第1画像をディスプレイ3584に表示させる。一例として、プロセッサ3581は、図36(B)に示すように、第1画像としてハート型オブジェクト3472をディスプレイ3584に表示させる。
When the
これにより、観客1636Aは、図36(B)に示すように、現実空間、すなわち第1パフォーマンスを行っている演者1635を視認するとともに、ハート型オブジェクト3472を視認する。これにより、観客1636は、仮想空間2511で行われているライブの盛り上がりを、現実空間にいながら仮想体験することができる。結果として、現実空間のライブの観客1636と、仮想空間2511でライブを視聴しているユーザ5とが、一体的にライブを視聴しているかのような状態を作り出すことができる。
As a result, as shown in FIG. 36B, the
[変形例]
アバターオブジェクト1533は、演者1635の高精度な3Dモデルでなくてもよい。例えば、アバターオブジェクト1533は、演者1635をデフォルメした外観であってもよいし、演者1635とは異なる外観であってもよい。
[Modification]
The
演者1635が複数である場合、コンピュータ1791のプロセッサが、すべての演者1635の動きを検出することができない場合が考えられる。例えば、演者1635の位置によっては、ベースステーション1659から照射される信号をモーションセンサが検出できない場合が考えられる。この場合、プロセッサ210は、一部の演者1635に関連付けられているアバターオブジェクト1533に、第2パフォーマンスを実行させることができない。
If there are a plurality of
この課題を解決するために、演者1635およびアバターオブジェクト1533が複数である場合、すべてのアバターオブジェクト1533が、いずれかの演者1635の第1パフォーマンスに対応する第2パフォーマンスを実行する構成でなくてもよい。例えば、メインで第1パフォーマンスを行う演者1635(いわゆる、「センター」である演者1635)に関連付けられたアバターオブジェクト1533のみが、該演者1635の動きに応じて動作するものであってもよい。他のアバターオブジェクト1533は、プロセッサ210が人工知能(AI:artificial intelligence)により動作させてもよい。この構成の場合、ベースステーション1659は、センターである演者1635が装着しているモーションセンサが信号を検出できる位置に設置されればよい。また、この構成の場合、センター以外の演者1635は、モーションセンサを装着しなくてもよい。
In order to solve this problem, when there are a plurality of
上記の例では、センターである演者1635(すなわち、一人)に関連付けられたアバターオブジェクト1533のみが、該演者1635の動きに応じて動作するものとして説明した。別の局面において、すべての演者1635のうち、複数人の演者1635に関連付けられたアバターオブジェクト1533が、該複数人の演者1635の動きに応じて動作するものであってもよい。
In the above example, only the
また、現実空間におけるライブに参加していない人(例えば、体調不良で不参加のアイドルグループのメンバー)のアバターオブジェクト1533を、仮想空間2511におけるライブに登場させてもよい。該アバターオブジェクト1533は、例えば、プロセッサ210がAIにより動作させればよい。これにより、現実空間におけるライブには不参加の演者が、仮想空間2511におけるライブには登場することとなる。つまり、ユーザ5は、仮想空間2511におけるライブにおいて、現実空間におけるライブには無い特典を享受することができる。
In addition, avatar objects 1533 of people who do not participate in live in the real space (for example, members of an idle group who is in poor physical condition and not participate) may appear live in the virtual space 2511. For example, the
上述した現実空間の情報の仮想空間への反映例(第1処理の例1)では、プロセッサ210Aは、予めケミカルライト1658を識別する情報と、アバターオブジェクト1534とを関連付けていた。一方、プロセッサ210Aは、観客1636がケミカルライト1658を振ったことに基づいて第2動き情報を受信したとき、該第2動き情報、すなわち、ケミカルライト1658を識別する情報を、アバターオブジェクト1534のいずれかに関連付けてもよい。この例において、プロセッサ210Aは、該第2動き情報を受信しなくなった場合、該第2動き情報と、アバターオブジェクト1534との関連付けを解除してもよい。換言すれば、プロセッサ210Aは、ライブ中において、観客1636とアバターオブジェクト1534とを一時的に関連付ける構成であってもよい。
In the example of the reflection of the information of the real space to the virtual space (example 1 of the first process) described above, the processor 210A previously associates the information for identifying the
仮想空間の情報の現実空間への反映は、AR空間での仮想体験に限定されない。例えば、アバターオブジェクト6が、アバターオブジェクト1534に仮想空間2511にて話しかけた場合、プロセッサ210は、その内容を、該アバターオブジェクト1534に関連付けられる観客1636のスマートフォン1792に送信してもよい。スマートフォン1792のプロセッサ2951は、所定のアプリケーション、例えば、チャットを実行するアプリケーションを起動し、受信した内容を該チャットでの発言としてディスプレイ2955に表示してもよい。これにより、ユーザ5と観客1636とが直接コミュニケーションをとることができる。
Reflection of information in the virtual space to the real space is not limited to the virtual experience in the AR space. For example, if avatar object 6 speaks to avatar
あるいは、プロセッサ210は、アバターオブジェクト6が仮想空間2511で発言した内容を、SNS(social networking service)の掲示板に投稿してもよい。観客1636は、スマートフォン1792を用いて該SNSのアプリケーションを起動することにより、アバターオブジェクト6の発言を視認することができる。
Alternatively, the
システム1700は、仮想空間2511に、アバターオブジェクト6およびアバターオブジェクト1534を配置しない構成であってもよい。換言すれば、システム1700は、仮想空間2511に観客を配置しない構成であってもよい。なお、仮想カメラ14は仮想空間2511に配置されるので、ユーザ5は、アバターオブジェクト1533の第2パフォーマンスを視聴することができる。
The
プロセッサ210は、アバターオブジェクト1533によるライブを視聴するモードと、演者1635によるライブを仮想空間にて視聴する(すなわち、現実空間のライブを仮想空間にて視聴する)モードとを、ユーザ5の操作に応じて切り替え可能であってもよい。プロセッサ210は、例えば、コントローラ300に対するユーザ5の操作を検出し、上記2つのモードを切り替えてもよい。演者1635によるライブを仮想空間にて視聴するモードにおいて、プロセッサ210は、仮想空間2511にスクリーンオブジェクトを配置し、該スクリーンオブジェクトに、受信した現実空間のライブの映像を表示させればよい。該スクリーンオブジェクトは、例えば、全天球型のスクリーンオブジェクトであってもよい。この例の場合、プロセッサ210は、360度方向を撮影可能な全天球カメラが撮影した映像を受信し、スクリーンオブジェクトに表示させる。これにより、プロセッサ210は、より現実空間のライブに近い仮想体験を、仮想空間2511にてユーザ5に提供することができる。なお、プロセッサ210は、演者1635によるライブを仮想空間にて視聴するモードにおいて、矩形状のスクリーンオブジェクトにライブの映像を表示させるモードと、全天球型のスクリーンオブジェクトにライブの映像を表示させるモードとを、ユーザ5の操作に応じて切り替え可能であってもよい。
The
以上、本開示の実施形態について説明したが、本発明の技術的範囲は、本実施形態の説明によって限定的に解釈されるべきではない。本実施形態は一例であって、特許請求の範囲に記載された発明の範囲内において、様々な実施形態の変更が可能であることが当業者によって理解されるところである。本発明の技術的範囲は、特許請求の範囲に記載された発明の範囲およびその均等の範囲に基づいて定められるべきである。 Although the embodiments of the present disclosure have been described above, the technical scope of the present invention should not be interpreted in a limited manner by the description of the present embodiments. It is understood by those skilled in the art that the present embodiment is an example, and that modifications of various embodiments are possible within the scope of the invention described in the claims. The technical scope of the present invention should be determined based on the scope of the invention described in the claims and the scope of equivalents thereof.
〔付記事項〕
本発明の一側面に係る内容を列記すると以下の通りである。
[Items to be added]
It will be as follows when the contents concerning one side of the present invention are listed.
(項目1) システムを説明した。本開示のある局面によると、システム(1700)は、現実空間にて観客(1636)に対して第1パフォーマンスを行う演者(1635)に関連付けられた第1コンピュータ(コンピュータ1791)と、第1ユーザ(ユーザ5A)に関連付けられた、第1ユーザに仮想体験を提供するための第2コンピュータ(コンピュータ200)とを含む。第1コンピュータは、第1パフォーマンスにおける、演者の身体の動きを検出する。第2コンピュータは、第1ユーザに仮想体験を提供するための仮想空間(2511A)を定義し、演者に関連付けられる第1アバター(アバターオブジェクト1533)を仮想空間に配置し、第1コンピュータが検出した演者の身体の動きに応じて、第1アバターに、第1パフォーマンスに対応する第2パフォーマンスを実行させる。
(Item 1) Described the system. According to one aspect of the present disclosure, a system (1700) includes a first computer (computer 1791) associated with a performer (1635) performing a first performance on an audience (1636) in real space, and a first user And a second computer (computer 200) associated with (
(項目2) (項目1)において、システムは、観客に関連付けられた第1端末装置(ケミカルライト1658)をさらに含む。第1端末装置は、観客の第1動作を検出する。第2コンピュータは、第1端末装置が検出した第1動作に応じて、仮想空間において第1処理を実行する。
2. The item of
(項目3) (項目2)において、第2コンピュータは、観客に関連付けられる第2アバター(アバターオブジェクト1534)を仮想空間に配置し、第1処理として、第1端末装置が検出した第1動作に応じて第2アバターを動かす。 (Item 3) In (Item 2), the second computer arranges the second avatar (avatar object 1534) associated with the spectator in the virtual space, and performs the first operation detected by the first terminal device as the first process. Move the second avatar accordingly.
(項目4) (項目2)において、複数の第1端末装置が、複数の観客それぞれに関連付けられている。第2コンピュータは、第1動作を検出した第1端末装置の数を特定し、第1処理として、特定した数に応じた演出を実行する。 (Item 4) In (Item 2), a plurality of first terminal devices are associated with each of a plurality of spectators. The second computer specifies the number of first terminal devices that have detected the first operation, and executes an effect according to the specified number as the first process.
(項目5) (項目1)から(項目4)のいずれかにおいて、システムは、現実空間を表示する表示部(ディスプレイ2955)を備える、観客に関連付けられた第2端末装置(スマートフォン1792)をさらに含む。第2コンピュータは、第1ユーザに関連付けられる第3アバター(アバターオブジェクト6A)を仮想空間に配置し、第1ユーザの第2動作を検出し、検出した第2動作に応じて第3アバターに第3動作を実行させる。第2端末装置は、現実空間とともに、第3動作の実行に応じた第1画像(ハート型オブジェクト3472)を表示部に表示させる。
(Item 5) In any of (Item 1) to (Item 4), the system further includes a second terminal device (smartphone 1792) associated with the spectator, comprising a display unit (display 2955) for displaying the physical space. Including. The second computer arranges the third avatar (
(項目6) (項目5)において、第2コンピュータは、複数の第2ユーザ(ユーザ5B,5C)それぞれに関連付けられる複数の第4アバター(アバターオブジェクト6B,6C)を前記仮想空間に配置し、第2ユーザの第2動作に応じて第4アバターに第3動作を実行させる。第2端末装置は、第3動作を実行している第3アバターおよび第4アバターの合計数を特定し、合計数に応じた第1画像を表示部に表示させる。 (Item 6) In (Item 5), the second computer arranges a plurality of fourth avatars (avatar objects 6B and 6C) associated with the plurality of second users (users 5B and 5C) in the virtual space, The fourth avatar is caused to execute the third action according to the second action of the second user. The second terminal device specifies the total number of the third avatar and the fourth avatar executing the third operation, and causes the display unit to display a first image according to the total number.
(項目7) (項目1)から(項目6)のいずれかにおいて、第2コンピュータは、第1ユーザに関連付けられる仮想カメラ(14)を仮想空間に配置し、第1ユーザの頭部の姿勢と仮想空間における仮想カメラの位置とに応じて、仮想空間における仮想カメラからの視界(視界領域15A)を制御し、仮想カメラからの視界に対応する視界画像(視界画像17A)を定義し、第1ユーザの頭部に関連付けられた画像表示装置(モニタ130A)に視界画像を出力する。
(Item 7) In any one of (Item 1) to (Item 6), the second computer arranges the virtual camera (14) associated with the first user in the virtual space, and the posture of the head of the first user and The field of view (field of
(項目8) プログラムを説明した。本開示のある局面によると、プログラムは、ユーザ(5A)に仮想体験を提供するために、プロセッサ(210A)を備えたコンピュータ(200A)によって実行される。プログラムは、プロセッサに、ユーザに仮想体験を提供するための仮想空間(仮想空間2511A)を定義するステップ(S2301)と、現実空間にて観客(1636)に対して第1パフォーマンスを行う演者(1635)に関連付けられる第1アバター(アバターオブジェクト1533)を仮想空間に配置するステップ(S2311)と、第1パフォーマンスにおける、演者の身体の動きに関する第1情報を受信するステップ(S2312)と、第1情報に応じて、第1アバターに、第1パフォーマンスに対応する第2パフォーマンスを実行させるステップ(S2313)と、を実行させる。
(Item 8) The program was explained. According to one aspect of the present disclosure, a program is executed by a computer (200A) equipped with a processor (210A) to provide a virtual experience to a user (5A). The program defines the virtual space (
(項目9) 情報処理装置を説明した。本開示のある局面によると、情報処理装置(コンピュータ200A)は、ユーザ(5A)に仮想体験を提供するために、情報処理装置によって実行されるプログラムを記憶する記憶部(ストレージ230A)と、プログラムを実行することにより、情報処理装置の動作を制御する制御部(プロセッサ210A)と、を備えている。制御部は、ユーザに仮想体験を提供するための仮想空間(2511A)を定義し、現実空間にて観客(1636)に対して第1パフォーマンスを行う演者(1635)に関連付けられる第1アバター(アバターオブジェクト1533)を仮想空間に配置し、第1パフォーマンスにおける、演者の身体の動きに関する第1情報を受信し、第1情報に応じて、第1アバターに、第1パフォーマンスに対応する第2パフォーマンスを実行させる。
(Item 9) The information processing apparatus has been described. According to an aspect of the present disclosure, the information processing device (
(項目10) プログラムを実行する方法を説明した。本開示のある局面によると、プログラムは、ユーザ(5A)に仮想体験を提供するために、プロセッサ(210A)を備えたコンピュータ(200A)によって実行される。方法は、プロセッサが、ユーザに仮想体験を提供するための仮想空間(2511A)を定義するステップ(S2301)と、現実空間にて観客(1636)に対して第1パフォーマンスを行う演者(1635)に関連付けられる第1アバター(アバターオブジェクト1533)を仮想空間に配置するステップ(S2311)と、第1パフォーマンスにおける、演者の身体の動きに関する第1情報を受信するステップ(S2312)と、第1情報に応じて、第1アバターに、第1パフォーマンスに対応する第2パフォーマンスを実行させるステップ(S2313)と、を含む。 (Item 10) A method of executing a program has been described. According to one aspect of the present disclosure, a program is executed by a computer (200A) equipped with a processor (210A) to provide a virtual experience to a user (5A). In the method, the processor defines (S2301) a virtual space (2511A) for providing a virtual experience to the user, and a performer (1635) who performs the first performance on the audience (1636) in the real space. According to the first information, the step of arranging the associated first avatar (avatar object 1533) in the virtual space (S2311), the step of receiving the first information on the movement of the performer's body in the first performance (S2312), and And causing the first avatar to execute a second performance corresponding to the first performance (S2313).
(項目11) プログラムを説明した。本開示のある局面によると、プログラムは、現実空間にて演者(1635)の第1パフォーマンスを視聴している観客(1636)に仮想体験を提供するために、プロセッサ(2951)と、現実空間を表示する表示部(ディスプレイ2955)と、を備えた端末装置(スマートフォン1792)によって実行される。プログラムは、プロセッサに、演者に関連付けられる第1アバター(アバターオブジェクト1533)による、第1パフォーマンスに対応する第2パフォーマンスを仮想空間にて視聴している第3アバター(アバターオブジェクト6)が実行する第3動作に関する第3情報を受信するステップ(S3112)と、現実空間とともに、第3情報に応じた第1画像(ハート型オブジェクト3472)を表示部に表示させるステップ(S3113)と、を実行させる。 (Item 11) The program was explained. According to one aspect of the present disclosure, a program may include a processor (2951) and a physical space to provide a virtual experience to an audience (1636) viewing the first performance of the performer (1635) in the physical space. And a display unit (display 2955) to be displayed. The program is executed by a third avatar (avatar object 6) viewing a second performance corresponding to the first performance in the virtual space by the first avatar (avatar object 1533) associated with the speaker. Step S3112: receiving the third information related to three operations; and displaying the first image (heart-shaped object 3472) according to the third information on the display unit together with the physical space (S3113).
(項目12) 情報処理装置を説明した。本開示のある局面によると、情報処理装置(スマートフォン1792)は、現実空間にて演者(1635)の第1パフォーマンスを視聴している観客(1636)に仮想体験を提供するために、情報処理装置によって実行されるプログラムを記憶する記憶部(ストレージ2953)と、プログラムを実行することにより、情報処理装置の動作を制御する制御部(プロセッサ2951)と、現実空間を表示する表示部(ディスプレイ2955)と、を備えている。制御部は、演者に関連付けられる第1アバター(アバターオブジェクト1533)による、第1パフォーマンスに対応する第2パフォーマンスを仮想空間にて視聴している第3アバター(アバターオブジェクト6)が実行する第3動作に関する第3情報を受信し、現実空間とともに、第3情報に応じた第1画像(ハート型オブジェクト3472)を表示部に表示させる。 (Item 12) The information processing apparatus has been described. According to one aspect of the present disclosure, an information processing apparatus (smartphone 1792) is an information processing apparatus for providing a virtual experience to a spectator (1636) who is watching the first performance of a performer (1635) in a real space. Storage unit (storage 2953) for storing a program to be executed by the control unit, a control unit (processor 2951) for controlling the operation of the information processing apparatus by executing the program, and a display unit (display 2955) for displaying the real space And have. The control unit performs a third operation performed by a third avatar (avatar object 6) viewing a second performance corresponding to the first performance in the virtual space by the first avatar (avatar object 1533) associated with the performer And causes the display unit to display a first image (heart-shaped object 3472) according to the third information, together with the real space.
(項目13) プログラムを実行する方法を説明した。本開示のある局面によると、プログラムは、現実空間にて演者(1635)の第1パフォーマンスを視聴している観客(1636)に仮想体験を提供するために、プロセッサ(2951)と、現実空間を表示する表示部(ディスプレイ2955)と、を備えた端末装置(スマートフォン1792)によって実行される。プログラムは、プロセッサが、演者に関連付けられる第1アバター(アバターオブジェクト1533)による、第1パフォーマンスに対応する第2パフォーマンスを仮想空間にて視聴している第3アバター(アバターオブジェクト6)が実行する第3動作に関する第3情報を受信するステップ(S3112)と、現実空間とともに、第3情報に応じた第1画像(ハート型オブジェクト3472)を表示部に表示させるステップ(S3113)と、を含む。 (Item 13) Described how to execute the program. According to one aspect of the present disclosure, a program may include a processor (2951) and a physical space to provide a virtual experience to an audience (1636) viewing the first performance of the performer (1635) in the physical space. And a display unit (display 2955) to be displayed. The program is executed by a third avatar (avatar object 6) whose processor is viewing a second performance corresponding to the first performance in a virtual space by the first avatar (avatar object 1533) associated with the performer. And 3) receiving the third information related to the three operations (S3112), and displaying the first image (heart-shaped object 3472) corresponding to the third information on the display unit together with the physical space (S3113).
上記実施形態においては、HMDによってユーザが没入する仮想空間(VR空間)を例示して説明したが、HMDとして、透過型のHMDを採用してもよい。この場合、透過型のHMDを介してユーザが視認する現実空間に仮想空間を構成する画像の一部を合成した視界画像を出力することにより、拡張現実(AR:Augmented Reality)空間または複合現実(MR:Mixed Reality)空間における仮想体験をユーザに提供してもよい。この場合、操作オブジェクトに代えて、ユーザの手の動きに基づいて、仮想空間内における対象オブジェクトへの作用を生じさせてもよい。具体的には、プロセッサは、現実空間におけるユーザの手の位置の座標情報を特定するとともに、仮想空間内における対象オブジェクトの位置を現実空間における座標情報との関係で定義してもよい。これにより、プロセッサは、現実空間におけるユーザの手と仮想空間における対象オブジェクトとの位置関係を把握し、ユーザの手と対象オブジェクトとの間で上述したコリジョン制御等に対応する処理を実行可能となる。その結果、ユーザの手の動きに基づいて対象オブジェクトに作用を与えることが可能となる。 In the above embodiment, the virtual space (VR space) in which the user is immersed by the HMD is described as an example, but a transmissive HMD may be adopted as the HMD. In this case, an augmented reality (AR) space or a mixed reality (AR) is generated by outputting a view image obtained by synthesizing a part of the image forming the virtual space in the real space viewed by the user through the transmissive HMD. A virtual experience in MR (Mixed Reality) space may be provided to the user. In this case, instead of the operation object, an action on the target object in the virtual space may be generated based on the movement of the user's hand. Specifically, the processor may specify coordinate information of the position of the user's hand in the real space, and define the position of the target object in the virtual space in relation to the coordinate information in the real space. As a result, the processor can grasp the positional relationship between the user's hand in the real space and the target object in the virtual space, and execute processing corresponding to the aforementioned collision control or the like between the user's hand and the target object. . As a result, it is possible to affect the target object based on the movement of the user's hand.
2 ネットワーク、5,5A,5B,5C ユーザ、6,6A,6B,6C、1533、1534,1534A,1534B アバターオブジェクト、11,11A,11B,11C,11D 仮想空間、12 中心、13 パノラマ画像、14,14A,14B 仮想カメラ、15,15A,15B,15C 視界領域、16 基準視線、17,17A,17B 視界画像、18,19 領域、100 HMDシステム、110,110A,110B,110C,110D HMDセット、120,120A,120B,120C、HMD、130,130A,130B,130C モニタ、140 注視センサ、150 第1カメラ、160 第2カメラ、170,170A,170B,1657 マイク、180,180A,180B スピーカ、190 センサ、200,200A,200B,200C,1791 コンピュータ、210,210A、210B,210C,210D,610,2951,3581 プロセッサ、220,620,2952,3582 メモリ、230,230A,230B,630,2953,3583 ストレージ、240,640 入出力インターフェイス、250,650,2957,3585 通信インターフェイス、260,660,2958,3586 バス、300,300B コントローラ、300R 右コントローラ、300L 左コントローラ、310 グリップ、320 フレーム、330 天面、340,340,350,370,380 ボタン、360 赤外線LED、390 アナログスティック、410 HMDセンサ、420,420A モーションセンサ、430,430A ディスプレイ、510,3061 コントロールモジュール、520,3062 レンダリングモジュール、530,3063 メモリモジュール、540 通信制御モジュール、600 サーバ、700 外部機器、1421,3064 仮想オブジェクト生成モジュール、1422 仮想カメラ制御モジュール、1423 操作オブジェクト制御モジュール、1424 アバターオブジェクト制御モジュール、1425 動き検出モジュール、1426,3065 仮想オブジェクト制御モジュール、1517A,2517A,2717A,2817A,3317A 視界画像、1531LA 仮想左手、1531RA 仮想右手、1532 ステージオブジェクト、1541 ライトオブジェクト、1635 演者、1636,1636A,1636B 観客、1651,1652,1653,1655 モーションセンサ、1654,1656 ベルト、1658 ケミカルライト、1659 ベースステーション、1700 システム、1792 スマートフォン、1793 ゲートウェイ、2842 星型オブジェクト、2954 タッチパネル、2955,3584 ディスプレイ、2956 カメラ、3271,3471 第2画像、3472 ハート型オブジェクト 2 Network, 5, 5A, 5B, 5C User, 6, 6A, 6B, 6C, 1533, 1534, 1534A, 1534B Avatar Objects, 11, 11A, 11B, 11C, 11D Virtual Space, 12 Centers, 13 Panoramic Images, 14 , 14A, 14B virtual camera, 15, 15A, 15B, 15C view area, 16 reference line of sight, 17, 17A, 17B view image, 18, 19 area, 100 HMD system, 110, 110A, 110B, 110C, 110D HMD set, 120, 120A, 120B, 120C, HMD, 130, 130A, 130B, 130C monitor, 140 gaze sensor, 150 first camera, 160 second camera, 170, 170A, 170B, 1657 microphone, 180, 180A, 180B speaker, DESCRIPTION OF SYMBOLS 90 sensor, 200, 200A, 200B, 200C, 1791 computer, 210, 210A, 210B, 210C, 210D, 610, 2951, 3581 processor, 220, 620, 2952, 352 memory, 230, 230A, 230B, 630, 2953, 3583 storage, 240, 640 I / O interface, 250, 650, 2957, 3585 communication interface, 260, 660, 2958, 3586 bus, 300, 300B controller, 300R right controller, 300L left controller, 310 grip, 320 frame, 330 heaven Surface, 340, 340, 350, 370, 380 buttons, 360 infrared LED, 390 analog stick, 410 HMD sensor, 420, 420A motion sensor 430 430A display 510 3061 control module 520 3062 rendering module 530 3063 memory module 540 communication control module 600 server 700 external device 1421 3064 virtual object generation module 1422 virtual camera Control module, 1423 operation object control module, 1424 avatar object control module, 1425 motion detection module, 1426, 3065 virtual object control module, 1517A, 2517A, 2717A, 2817A, 3317A view image, 1531 LA virtual left hand, 1531 RA virtual right hand, 1532 stage Object, 1541 Light Object 1635 Performer, 1636, 1636A, 1636B Audience, 1651, 1652, 1653, 1655 Motion Sensor, 1654, 1656 Belt, 1658 Chemical Light, 1659 Base Station, 1700 System, 1792 Smartphone, 1793 Gateway, 2842 Star Object, 2954 Touch Panel, 2955, 3584 display, 2956 camera, 3271, 3471 second image, 3472 heart shaped object
Claims (13)
前記第1コンピュータは、
前記第1パフォーマンスにおける、前記演者の身体の動きを検出し、
前記第1パフォーマンスにおける、前記演者の発話の音声信号を取得し、
前記音声信号から変換された音声を、前記第1会場に設置されたスピーカに出力させ、
前記プログラムは、前記第2コンピュータに、
前記第1ユーザに前記仮想体験を提供するための仮想空間を定義するステップと、
前記演者に関連付けられる第1アバターを前記仮想空間に配置するステップと、
前記第1コンピュータが検出した前記演者の身体の動きと、前記第1コンピュータが取得した前記発話の前記音声信号とに応じて、前記第1アバターに、前記第1パフォーマンスに対応する第2パフォーマンスを実行させるステップと、を実行させる、システム。 The first computer associated with the performer performing the first performance in the first venue and the first user associated with the first user who is not in the first venue, for the audience in the first venue of the real space A program executed by a second computer for providing a virtual experience to one user;
The first computer is
Detecting the movement of the performer's body in the first performance;
Acquiring an audio signal of the speaker's speech in the first performance,
The voice converted from the voice signal is output to a speaker installed at the first hall,
The program, on the second computer,
Defining a virtual space for providing the virtual experience to the first user;
Placing a first avatar associated with the performer in the virtual space;
According to the movement of the body of the performer detected by the first computer and the speech signal of the speech acquired by the first computer , the first avatar is subjected to a second performance corresponding to the first performance. A step of performing and a system of performing .
前記第1端末装置は、前記観客の第1動作を検出し、
前記プログラムは、前記第2コンピュータに、前記第1端末装置が検出した前記第1動作に応じて、前記仮想空間において第1処理を実行するステップをさらに実行させる、請求項1に記載のシステム。 The system further includes a first terminal associated with the spectator,
The first terminal device detects a first motion of the spectator,
The program, on the second computer, the first in response to said first operation terminal device detects, further to execute a step of performing a first processing in the virtual space, the system of claim 1.
前記第1処理を実行するステップでは、前記第1処理として、前記第1端末装置が検出した前記第1動作に応じて前記第2アバターを動かす、請求項2に記載のシステム。 The program further causes the second computer to execute a step of arranging a second avatar associated with the spectator in the virtual space.
The system according to claim 2 , wherein, in the step of executing the first process, the second avatar is moved according to the first operation detected by the first terminal device as the first process.
前記プログラムは、前記第2コンピュータに、前記第1動作を検出した前記第1端末装置の数を特定するステップをさらに実行させ、
前記第1処理を実行するステップでは、前記第1処理として、特定した前記数に応じた演出を実行する、請求項2に記載のシステム。 A plurality of said first terminals being associated with each of a plurality of said audiences;
The program further causes the second computer to execute the step of specifying the number of the first terminal devices that have detected the first operation.
The system according to claim 2 , wherein in the step of executing the first process, an effect corresponding to the specified number is performed as the first process.
前記プログラムは、前記第2コンピュータに、
前記第1ユーザに関連付けられる第3アバターを前記仮想空間に配置するステップと、
前記第1ユーザの第2動作を検出するステップと、
検出した前記第2動作に応じて前記第3アバターに第3動作を実行させるステップと、をさらに実行させ、
前記第2端末装置は、前記現実空間とともに、前記第3動作の実行に応じた第1画像を前記表示部に表示させる、請求項1から4のいずれか1項に記載のシステム。 The system further includes a second terminal associated with the spectator, comprising a display for displaying the real space,
The program, on the second computer,
Placing a third avatar associated with the first user in the virtual space;
Detecting a second action of the first user;
A step in accordance with the detected second operation Ru to execute the third operation in the third avatar, further execute a
The system according to any one of claims 1 to 4, wherein the second terminal device causes the display unit to display a first image according to the execution of the third operation together with the physical space.
複数の第2ユーザそれぞれに関連付けられる複数の第4アバターを前記仮想空間に配置するステップと、
前記第2ユーザの前記第2動作に応じて前記第4アバターに前記第3動作を実行させるステップと、をさらに実行させ、
前記第2端末装置は、
前記第3動作を実行している前記第3アバターおよび前記第4アバターの合計数を特定し、
前記合計数に応じた前記第1画像を前記表示部に表示させる、請求項5に記載のシステム。 The program, on the second computer,
Placing a plurality of fourth avatars associated with each of a plurality of second users in the virtual space;
Further execute the steps of: Ru to execute the third operation in the fourth avatar in response to the second operation of the second user,
The second terminal device is
Specifying a total number of the third avatar and the fourth avatar executing the third action;
The system according to claim 5, wherein the first image corresponding to the total number is displayed on the display unit.
前記第1ユーザに関連付けられる仮想カメラを前記仮想空間に配置するステップと、
前記第1ユーザの頭部の姿勢と前記仮想空間における前記仮想カメラの位置とに応じて、前記仮想空間における前記仮想カメラからの視界を制御するステップと、
前記仮想カメラからの前記視界に対応する視界画像を定義するステップと、
前記第1ユーザの頭部に関連付けられた画像表示装置に前記視界画像を出力するステップと、をさらに実行させる、請求項1から6のいずれか1項に記載のシステム。 The program, on the second computer,
Placing a virtual camera associated with the first user in the virtual space;
A step in accordance with the position of the virtual camera in the attitude and the virtual space of the head of the first user, to control the field of view from the virtual camera in the virtual space,
Defining a view image corresponding to the view from the virtual camera;
Wherein the step of outputting the field image, to perform another system according to any one of claims 1 to 6 in an image display device associated with the head of the first user.
前記プログラムは、前記プロセッサに、
前記ユーザに前記仮想体験を提供するための仮想空間を定義するステップと、
前記現実空間の前記第1会場にいる観客に対して、身体の動きと発話とを含む第1パフォーマンスであって、前記発話の音声信号から変換された音声が前記第1会場に設置されたスピーカから出力される前記第1パフォーマンスを、前記第1会場にて行う演者に関連付けられる第1アバターを前記仮想空間に配置するステップと、
前記第1パフォーマンスにおける、前記演者の身体の動きに関する第1情報であって、前記音声信号を含む前記第1情報を受信するステップと、
前記第1情報に応じて、前記第1アバターに、前記第1パフォーマンスに対応する第2パフォーマンスを実行させるステップと、を実行させる、プログラム。 A program executed by a computer equipped with a processor to provide a virtual experience to a user who is not at the first venue of the real space ,
The program is executed by the processor
Defining a virtual space for providing the virtual experience to the user;
A speaker including body movement and speech for a spectator in the first hall of the real space , wherein a speaker converted from an audio signal of the speech is installed in the first hall Placing, in the virtual space, a first avatar associated with a performer who performs the first performance output from the first venue at the first venue ;
Receiving the first information related to the movement of the performer's body in the first performance, the first information including the audio signal ;
And causing the first avatar to execute a second performance corresponding to the first performance according to the first information.
前記情報処理装置は、
現実空間の第1会場にいないユーザに仮想体験を提供するために、前記情報処理装置によって実行されるプログラムを記憶する記憶部と、
前記プログラムを実行することにより、前記情報処理装置の動作を制御する制御部と、を備え、
前記制御部は、
前記ユーザに前記仮想体験を提供するための仮想空間を定義し、
前記現実空間の第1会場にいる観客に対して、身体の動きと発話とを含む第1パフォーマンスであって、前記発話の音声信号から変換された音声が前記第1会場に設置されたスピーカから出力される前記第1パフォーマンスを、前記第1会場にて行う演者に関連付けられる第1アバターを前記仮想空間に配置し、
前記第1パフォーマンスにおける、前記演者の身体の動きに関する第1情報であって、前記音声信号を含む前記第1情報を受信し、
前記第1情報に応じて、前記第1アバターに、前記第1パフォーマンスに対応する第2パフォーマンスを実行させる、情報処理装置。 An information processing apparatus,
The information processing apparatus is
A storage unit for storing a program to be executed by the information processing apparatus to provide a virtual experience to a user who is not at the first venue of the real space ;
And a controller configured to control the operation of the information processing apparatus by executing the program.
The control unit
Define a virtual space for providing the virtual experience to the user,
Against spectators who are first venue of the real space, a first performance including a body movement and speech, from the speaker the sound converted from the audio signal of the utterance is installed in the first venue A first avatar associated with a performer who performs the first performance to be output at the first venue is arranged in the virtual space,
Receiving the first information related to the movement of the performer's body in the first performance, the first information including the audio signal ,
An information processing apparatus, causing the first avatar to execute a second performance corresponding to the first performance according to the first information.
前記方法は、前記プロセッサが、
前記ユーザに前記仮想体験を提供するための仮想空間を定義するステップと、
前記現実空間の前記第1会場にいる観客に対して、身体の動きと発話とを含む第1パフォーマンスであって、前記発話の音声信号から変換された音声が前記第1会場に設置されたスピーカから出力される前記第1パフォーマンスを、前記第1会場にて行う演者に関連付けられる第1アバターを前記仮想空間に配置するステップと、
前記第1パフォーマンスにおける、前記演者の身体の動きに関する第1情報であって、前記音声信号を含む前記第1情報を受信するステップと、
前記第1情報に応じて、前記第1アバターに、前記第1パフォーマンスに対応する第2パフォーマンスを実行させるステップと、を含む、方法。 A method in which a computer equipped with a processor executes a program to provide a virtual experience for users who are not at the first venue of the real space ,
The method comprises:
Defining a virtual space for providing the virtual experience to the user;
A speaker including body movement and speech for a spectator in the first hall of the real space , wherein a speaker converted from an audio signal of the speech is installed in the first hall Placing, in the virtual space, a first avatar associated with a performer who performs the first performance output from the first venue at the first venue ;
Receiving the first information related to the movement of the performer's body in the first performance, the first information including the audio signal ;
And, in response to the first information, causing the first avatar to perform a second performance corresponding to the first performance.
前記プログラムは、前記プロセッサに、
前記演者に関連付けられる第1アバターによる、前記第1パフォーマンスに対応する第2パフォーマンスを仮想空間にて視聴している、前記第1会場にいない人に関連付けられる第3アバターが実行する第3動作に関する第3情報を受信するステップと、
前記現実空間とともに、前記第3情報に応じた第1画像を前記表示部に表示させるステップと、を実行させるプログラム。 A processor and a display unit for displaying the real space are provided to provide a virtual experience to the audience watching the first performance of the performer in the first hall at the first hall of the real space. A program to be executed by the
The program is executed by the processor
The third action performed by the third avatar associated with the person not in the first venue who is watching the second performance corresponding to the first performance in the virtual space by the first avatar associated with the performer Receiving the third information;
A program for causing the display unit to display a first image according to the third information together with the physical space.
前記情報処理装置は、
現実空間の第1会場にて、前記第1会場にいる演者の第1パフォーマンスを視聴している観客に仮想体験を提供するために、前記情報処理装置によって実行されるプログラムを記憶する記憶部と、
前記プログラムを実行することにより、前記情報処理装置の動作を制御する制御部と、
前記現実空間を表示する表示部と、を備え、
前記制御部は、
前記演者に関連付けられる第1アバターによる、前記第1パフォーマンスに対応する第2パフォーマンスを仮想空間にて視聴している、前記第1会場にいない人に関連付けられる第3アバターが実行する第3動作に関する第3情報を受信し、
前記現実空間とともに、前記第3情報に応じた第1画像を前記表示部に表示させる、情報処理装置。 An information processing apparatus,
The information processing apparatus is
At first venue real space, in order to provide a virtual experience to the audience that view the first performance of performers who are the first venue, a storage unit for storing a program executed by the information processing apparatus ,
A control unit that controls the operation of the information processing apparatus by executing the program;
A display unit for displaying the real space;
The control unit
The third action performed by the third avatar associated with the person not in the first venue who is watching the second performance corresponding to the first performance in the virtual space by the first avatar associated with the performer Receive the third information,
An information processing apparatus, which causes the display unit to display a first image corresponding to the third information together with the physical space.
前記方法は、前記プロセッサが、
前記演者に関連付けられる第1アバターによる、前記第1パフォーマンスに対応する第2パフォーマンスを仮想空間にて視聴している、前記第1会場にいない人に関連付けられる第3アバターが実行する第3動作に関する第3情報を受信するステップと、
前記現実空間とともに、前記第3情報に応じた第1画像を前記表示部に表示させるステップと、を含む、方法。 A processor and a display unit for displaying the real space are provided to provide a virtual experience to the audience watching the first performance of the performer in the first hall at the first hall of the real space. The terminal device executes the program, and
The method comprises:
The third action performed by the third avatar associated with the person not in the first venue who is watching the second performance corresponding to the first performance in the virtual space by the first avatar associated with the performer Receiving the third information;
Displaying on the display unit a first image according to the third information, together with the physical space.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018125418A JP6514397B1 (en) | 2018-06-29 | 2018-06-29 | SYSTEM, PROGRAM, METHOD, AND INFORMATION PROCESSING APPARATUS |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018125418A JP6514397B1 (en) | 2018-06-29 | 2018-06-29 | SYSTEM, PROGRAM, METHOD, AND INFORMATION PROCESSING APPARATUS |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019075757A Division JP7181148B2 (en) | 2019-04-11 | 2019-04-11 | System, program, method, and information processing device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6514397B1 true JP6514397B1 (en) | 2019-05-15 |
JP2020004284A JP2020004284A (en) | 2020-01-09 |
Family
ID=66530798
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018125418A Active JP6514397B1 (en) | 2018-06-29 | 2018-06-29 | SYSTEM, PROGRAM, METHOD, AND INFORMATION PROCESSING APPARATUS |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6514397B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020039029A (en) * | 2018-09-03 | 2020-03-12 | グリー株式会社 | Video distribution system, video distribution method, and video distribution program |
JP2021077257A (en) * | 2019-11-13 | 2021-05-20 | グリー株式会社 | Information processing apparatus, information processing method, and information processing program |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7332562B2 (en) * | 2019-04-26 | 2023-08-23 | 株式会社コロプラ | Program, method, and information terminal |
JP7250726B2 (en) * | 2020-04-24 | 2023-04-03 | グリー株式会社 | Computer program, server device and method |
WO2022009444A1 (en) * | 2020-07-10 | 2022-01-13 | 株式会社ラパンクリエイト | Viewing system and method |
JPWO2022196076A1 (en) * | 2021-03-19 | 2022-09-22 | ||
JPWO2023276252A1 (en) * | 2021-06-30 | 2023-01-05 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5783629B2 (en) * | 2011-07-08 | 2015-09-24 | 株式会社ドワンゴ | Video display system, video display method, video display control program, operation information transmission program |
JP2013250773A (en) * | 2012-05-31 | 2013-12-12 | Sega Corp | Stage device and stage facility |
JP2016025633A (en) * | 2014-07-24 | 2016-02-08 | ソニー株式会社 | Information processing apparatus, management device, information processing method, and program |
JP6515057B2 (en) * | 2016-03-31 | 2019-05-15 | 株式会社バンダイナムコエンターテインメント | Simulation system, simulation apparatus and program |
JP2018005019A (en) * | 2016-07-05 | 2018-01-11 | 株式会社エム・ティー・ケー | Playing and staging device |
JP6809830B2 (en) * | 2016-07-13 | 2021-01-06 | 株式会社バンダイナムコエンターテインメント | Programs and electronics |
JP2018092592A (en) * | 2017-08-25 | 2018-06-14 | 株式会社コロプラ | Information processing method, apparatus, and program for implementing that information processing method on computer |
-
2018
- 2018-06-29 JP JP2018125418A patent/JP6514397B1/en active Active
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2020039029A (en) * | 2018-09-03 | 2020-03-12 | グリー株式会社 | Video distribution system, video distribution method, and video distribution program |
JP2021077257A (en) * | 2019-11-13 | 2021-05-20 | グリー株式会社 | Information processing apparatus, information processing method, and information processing program |
JP7229146B2 (en) | 2019-11-13 | 2023-02-27 | グリー株式会社 | Information processing device, information processing method and information processing program |
Also Published As
Publication number | Publication date |
---|---|
JP2020004284A (en) | 2020-01-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6514397B1 (en) | SYSTEM, PROGRAM, METHOD, AND INFORMATION PROCESSING APPARATUS | |
JP6244593B1 (en) | Information processing method, apparatus, and program for causing computer to execute information processing method | |
US10453248B2 (en) | Method of providing virtual space and system for executing the same | |
US10546407B2 (en) | Information processing method and system for executing the information processing method | |
JP7181148B2 (en) | System, program, method, and information processing device | |
US20180196506A1 (en) | Information processing method and apparatus, information processing system, and program for executing the information processing method on computer | |
JP6290467B1 (en) | Information processing method, apparatus, and program causing computer to execute information processing method | |
US20180329604A1 (en) | Method of providing information in virtual space, and program and apparatus therefor | |
US20180329603A1 (en) | Method executed on computer for moving in virtual space, program and information processing apparatus for executing the method on computer | |
JP6470859B1 (en) | Program for reflecting user movement on avatar, information processing apparatus for executing the program, and method for distributing video including avatar | |
JP7394158B2 (en) | Program and method executed on a computer and information processing apparatus for providing a virtual space via a head-mounted device | |
US20180374275A1 (en) | Information processing method and apparatus, and program for executing the information processing method on computer | |
US20180348986A1 (en) | Method executed on computer for providing virtual space, program and information processing apparatus therefor | |
US20180329487A1 (en) | Information processing method, computer and program | |
JP2018125003A (en) | Information processing method, apparatus, and program for implementing that information processing method in computer | |
JP2019128721A (en) | Program for reflecting user motion on avatar, information processing device for executing the same and method for distributing image containing avatar | |
JP6513241B1 (en) | PROGRAM, INFORMATION PROCESSING DEVICE, AND INFORMATION PROCESSING METHOD | |
JP2022171742A (en) | Program, information processing method, and information processing device | |
JP6820299B2 (en) | Programs, information processing equipment, and methods | |
JP6718933B2 (en) | Program, information processing apparatus, and method | |
JP7111848B2 (en) | Program, Information Processing Apparatus, and Method | |
JP2020046976A (en) | Program, method, and information processing device | |
JP2019160295A (en) | Program for reflecting movement of user on avatar, information processing device for executing program, and method for distributing video including avatar | |
JP2020039012A (en) | Program, information processing device, and method | |
JP2018190390A (en) | Method for providing virtual space, program for executing method in computer, information processing unit for executing program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180823 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20180903 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190128 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20190129 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190212 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190307 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20190319 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190411 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6514397 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |