【新規性喪失の例外の表示】特許法第30条第2項適用 平成30年1月22日に下記ウェブサイト「https://www.youtube.com/watch?v=vx8xs7ffmVg&feature=youtu.be」にて掲載。 平成30年1月24日に下記ウェブサイト「http://www.xvi.co.jp/news/anicast/」にて掲載。 平成30年1月24日に下記ウェブサイト「https://prtimes.jp/main/html/rd/p/000000111.000026205.html」にて掲載。 平成30年1月27日にGLSセミナー「バーチャルリアリティ(VR)最前線」にて発表。
【文献】
鈴木克洋, 外6名,“AffectiveHMD:組み込み型光センサを用いた表情認識とバーチャルアバターへの表情マッピング”,日本バーチャルリアリティ学会論文誌,日本,特定非営利活動法人日本バーチャルリアリティ学会,2017年 9月30日,第22巻, 第3号,p.379-389
(58)【調査した分野】(Int.Cl.,DB名)
【図面の簡単な説明】
【0009】
【
図1】第1の実施形態にかかるヘッドマウントディスプレイ110の外観の模式図を示す。
【
図2】第1の実施形態にかかるコントローラ210の外観の模式図を示す。
【
図3】第1の実施形態にかかるHMDシステム300の構成図を示す。
【
図4】第1の実施形態にかかるHMD110の機能構成図を示す。
【
図5】第1の実施形態にかかるコントローラ210の機能構成図を示す。
【
図6】第1の実施形態にかかる画像生成装置310の機能構成図を示す。
【
図7】第1の実施形態にかかる、ユーザ装置に表示される仮想空間の一例を示す図である。
【
図8】第1の実施形態にかかる、キャラクタの制御方法を説明するフローチャートを示す。
【
図9】第1の実施形態にかかる、キャラクタの制御方法を説明するフローチャートを示す。
【
図10】第2の実施形態にかかる、画像生成装置1010の機能構成図を示す。
【
図11】第2の実施形態にかかる、ユーザ装置に表示される仮想空間の一例を示す図である。
【
図12】第2の実施形態にかかる、ユーザ装置に表示される仮想空間の他の一例を示す図である。
【
図13】第2の実施形態において、仮想空間上でキャラクタとアイテムが相互作用する処理の一例としてのフローチャートを示す。
【
図14】第3の実施形態にかかる、仮想空間上でキャラクタとアイテムが相互作用する処理の一例としてのフローチャートを示す。
【
図15】画像生成装置1010のアイテムデータ格納部1054に格納されるアイテム管理テーブル1510の例を示す。
【
図16】第4の実施形態にかかる、仮想空間上でキャラクタとアイテムが相互作用する処理の一例としてのフローチャートを示す。
【
図17】画像生成装置1010のユーザデータ格納部1055に格納されるユーザランキング管理テーブル1610の例を示す。
【
図18】第5の実施形態にかかる、演者ユーザ用の仮想空間ユーザインターフェースの一例を示す。
【0010】
<実施形態1>
本発明の一実施形態に係るヘッドマウントディスプレイシステムを制御するプログラムの具体例を、以下に図面を参照しつつ説明する。なお、本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内でのすべての変更が含まれることが意図される。以下の説明では、図面の説明において同一の要素には同一の符号を付し、重複する説明を省略する。
【0011】
図1は、本実施形態にかかるヘッドマウントディスプレイ(以下:HMD)110の外観の模式図を示す。HMD110はユーザの頭部に装着され、ユーザの左右の眼前に配置されるよう表示パネル120を備える。表示パネルとしては、光学透過型と非透過型のディスプレイが考えられるが、本実施形態では、より没入感を提供可能な非透過型の表示パネルを例示する。表示パネル120には、左目用画像と右目用画像とが表示され、両目の視差を利用することにより立体感のある画像をユーザに提供することができる。左目用画像と右目用画像とを表示することができれば、左目用ディスプレイと右目用ディスプレイとを個別に備えることも可能であるし、左目用及び右目用の一体型のディスプレイを備えることも可能である。
【0012】
さらに、HMD110の筐体部130は、センサ140を備える。センサは、ユーザの頭部の向きや傾きといった動きを検出するために、図示しないが、例えば、磁気センサ、加速度センサ、もしくはジャイロセンサのいずれか、またはこれらの組み合わせを備えることができる。ユーザの頭部の垂直方向をY軸とし、Y軸と直交する軸のうち、表示パネル120の中心とユーザとを結ぶ、ユーザの前後方向に相当する軸をZ軸とし、Y軸及びZ軸と直交し、ユーザの左右方向に相当する軸をX軸とするとき、センサ140は、X軸まわりの回転角(いわゆる、ピッチ角)、Y軸まわりの回転角(いわゆる、ヨー角)、Z軸まわりの回転角(いわゆる、ロール角)を検出することができる。
【0013】
さらに、またはセンサ140に代えて、HMD110の筐体部130は、複数の光源150(例えば、赤外光LED、可視光LED)を備えることもでき、HMD110の外部(例えば、室内等)に設置されたカメラ(例えば、赤外光カメラ、可視光カメラ)がこれらの光源を検出することで、特定の空間におけるHMD110の位置、向き、傾きを検出することができる。または、同じ目的で、HMD110に、HMD110の筐体部130に設置された光源を検出するためのカメラを備えることもできる。
【0014】
さらに、HMD110の筐体部130は、アイトラッキング・センサを備えることもできる。アイトラッキング・センサは、ユーザの左目及び右目の視線方向及び注視点を検出するために用いられる。アイトラッキング・センサとしては様々な方式が考えられるが、例えば、左目および右目に弱い赤外光を照射してできる角膜上の反射光の位置を基準点とし、反射光の位置に対する瞳孔の位置により視線方向を検出し、左目及び右目の視線方向の交点を注視点として検出する方法などが考えられる。
【0015】
図2は、本実施形態にかかるコントローラ210の外観の模式図を示す。コントローラ210により、仮想空間内において、ユーザが所定の入力を行うことをサポートすることができる。コントローラ210は、左手用220及び右手用230のコントローラのセットとして構成することができる。左手用コントローラ220及び右手用コントローラ230は、各々操作用トリガーボタン240、赤外線LED250、センサ260、ジョイスティック270、メニューボタン280を有することができる。
【0016】
操作用トリガーボタン240は、コントローラ210のグリップ235を把持したときに、中指及び人差し指でトリガーを引くような操作を行うことを想定した位置に240a、240bとして配置される。コントローラ210の両側面から下方にリング状に形成されるフレーム245には、複数の赤外線LED250が備えられ、コントローラ外部に備えられるカメラ(図示せず)により、これらの赤外線LEDの位置を検出することで、特定の空間におけるコントローラ210の位置、向き及び傾きを検出することができる。
【0017】
また、コントローラ210は、コントローラ210の向きや傾きといった動きを検出するために、センサ260を内蔵することができる。センサ260として、図示しないが、例えば、磁気センサ、加速度センサ、もしくはジャイロセンサのいずれか、またはこれらの組み合わせを備えることができる。さらに、コントローラ210の上面には、ジョイスティック270及びメニューボタン280を備えることができる。ジョイスティック270は、基準点を中心に360度方向に動かすことができ、コントローラ210のグリップ235を把持したときに、親指で操作されることが想定される。メニューボタン280もまた同様に、親指で操作されることが想定される。さらに、コントローラ210は、コントローラ210を操作するユーザの手に振動を与えるためのバイブレータ(図示せず)を内蔵することもできる。ボタンやジョイスティックを介したユーザの入力内容やセンサ等を介したコントローラ210の位置、向き及び傾きといった情報を出力するため、また、ホストコンピュータからの情報を受信するために、コントローラ210は、入出力部及び通信部を有する。
【0018】
ユーザがコントローラ210を把持し、各種ボタンやジョイスティックを操作することの有無、及び赤外線LEDやセンサにより検出される情報によって、システムはユーザの手の動きや姿勢を決定し、仮想空間内において擬似的にユーザの手を表示させ、動作させることができる。
【0019】
図3は、本実施形態にかかるHMDシステム300の構成図を示す。HMDシステム300は、例えば、HMD110、コントローラ210及びホストコンピュータとして機能する画像生成装置310で構成することができる。さらに、HMD110やコントローラ210の位置、向き及び傾き等を検出するための赤外線カメラ(図示せず)等を追加することもできる。これらの装置は、相互に、有線又は無線手段により接続することができる。例えば、各々の装置にUSBポートを備え、ケーブルで接続することで通信を確立することもできるし、他に、HDMI、有線LAN、赤外線、Bluetooth(登録商標)、WiFi(登録商標)等の有線又は無線により通信を確立することもできる。画像生成装置310は、PC、ゲーム機、携帯通信端末等計算処理機能を有する装置であればよい。また、画像生成装置310は、インターネット等のネットワークを介して401A、401B、401C等の複数のユーザ装置と接続し、生成した画像をストリーミングまたはダウンロードの形態で送信することができる。ユーザ装置401A等は、各々インターネットブラウザを備えるか、適切なビューワを備えることで送信された画像を再生することができる。ここで、画像生成装置310は、複数のユーザ装置に対し、直接画像を送信することもできるし、他のコンテンツサーバを介して画像を送信することもできる。
【0020】
図4は、本実施形態にかかるHMD110の機能構成図を示す。
図1において述べたように、HMD110は、センサ140を備えることができる。センサとしては、ユーザの頭部の向きや傾きといった動きを検出するために、図示しないが、例えば、磁気センサ、加速度センサ、もしくはジャイロセンサのいずれか、またはこれらの組み合わせを備えることができる。さらに、アイトラッキング・センサを備えることもできる。アイトラッキング・センサは、ユーザの左目及び右目の視線方向及び注視点を検出するために用いられる。さらに精度よく、ユーザの頭部の向きや傾きといった動きを検出したり、ユーザの頭部の位置を検出したりするために、赤外光や紫外光といったLED150を備えることもできる。また、HMDの外景を撮影するためのカメラ160を備えることができる。また、ユーザの発話を集音するためのマイク170、音声を出力するためのヘッドフォン180を備えることもできる。なお、マイクやヘッドフォンはHMD110とは別個独立した装置として有することもできる。
【0021】
さらに、HMD110は、例えば、コントローラ210や画像生成装置310等の周辺装置との有線による接続を確立するための入出力部190を備えることができ、赤外線、Bluetooth(登録商標)やWiFi(登録商標)等無線による接続を確立するための通信部115を備えることができる。センサ140により取得されたユーザの頭部の向きや傾きといった動きに関する情報は、制御部125によって、入出力部190及び/又は通信部115を介して画像生成装置310に送信される。詳細は後述するが、画像生成装置310において、ユーザの頭部の動きに基づいて生成された画像は、入出力部190及び/又は通信部115を介して受信され、制御部125によって表示部120に出力される。
【0022】
図5は、本実施形態にかかるコントローラ210の機能構成図を示す。
図2において述べたように、コントローラ210は、コントローラ210は、左手用220及び右手用230のコントローラのセットとして構成することができるが、いずれのコントローラにおいても、操作用トリガーボタン240、ジョイスティック270、メニューボタン280といった操作部245を備えることができる。また、コントローラ210は、コントローラ210の向きや傾きといった動きを検出するために、センサ260を内蔵することができる。センサ260として、図示しないが、例えば、磁気センサ、加速度センサ、もしくはジャイロセンサのいずれか、またはこれらの組み合わせを備えることができる。さらに、複数の赤外線LED250が備えられ、コントローラ外部に備えられるカメラ(図示せず)により、これらの赤外線LEDの位置を検出することで、特定の空間におけるコントローラ210の位置、向き及び傾きを検出することができる。コントローラ210は、例えば、HMD110や画像生成装置310等の周辺装置との有線による接続を確立するための入出力部255を備えることができ、赤外線、Bluetooth(登録商標)やWiFi(登録商標)等無線による接続を確立するための通信部265を備えることができる。ユーザにより操作部245を介して入力された情報及びセンサ260によって取得されたコントローラ210の向きや傾きといった情報は、入出力部255及び/又は通信部265を介して画像生成装置310に送信される。
【0023】
図6は、本実施形態にかかる画像生成装置310の機能構成図を示す。画像生成装置310としては、HMD110やコントローラ210から送信された、ユーザ入力情報やセンサ等により取得されたユーザの頭部動きやコントローラの動きや操作に関する情報を記憶し、所定の計算処理を行い、画像を生成するための機能を有する、PC、ゲーム機及び携帯通信端末等といった装置を使用することができる。画像生成装置310は、例えば、HMD110やコントローラ210等の周辺装置との有線による接続を確立するための入出力部320を備えることができ、赤外線、Bluetooth(登録商標)やWiFi(登録商標)等無線による接続を確立するための通信部330を備えることができる。入出力部320及び/又は通信部330を介して、HMD110及び/又はコントローラ210から受信された、ユーザの頭部の動きやコントローラの動きや操作に関する情報は、制御部340において、ユーザの位置、視線、姿勢等の動作、発話、操作等を含めた入力内容として検出され、ユーザの入力内容に応じて、記憶部350に格納された制御プログラムを実行することで、キャラクタの制御を行い、画像を生成するといった処理がなされる。制御部340は、CPUで構成することもできるが、画像処理に特化したGPUをさらに設けることで、情報処理と画像処理を分散化し、全体の処理の効率化を図ることもできる。画像生成装置310はまた、他の計算処理装置と通信を行い、他の計算処理装置に情報処理や画像処理を分担させることもできる。
【0024】
さらに、画像生成装置310の制御部340は、HMD110及び/又はコントローラ210から受信された、ユーザの頭部の動きやユーザの発話、また、コントローラの動きや操作に関する情報を検出するユーザ入力検出部610と、予め記憶部350のキャラクタデータ格納部650に格納されたキャラクタに対して、制御プログラム格納部に格納された制御プログラムを実行するキャラクタ制御部629と、キャラクタ制御に基づいて画像を生成する画像生成部630を有する。ここでキャラクタの動きの制御については、HMD110やコントローラ210を介して検出されたユーザ頭部の向きや傾き、手の動きといった情報を、人間の身体の関節の動きや制約に則って作成されたボーン構造の各部の動きに変換し、予め格納されたキャラクタデータに対して、ボーン構造を関連付けることで、ボーン構造の動きを適用させることで実現される。
【0025】
記憶部350は、上述のキャラクタデータ格納部650に、キャラクタのイメージデータのほか、キャラクタの属性等キャラクタに関連する情報を格納する。また、制御プログラム格納部670は、仮想空間におけるキャラクタの動作や表情を制御するためのプログラムを格納する。ストリーミングデータ格納部660は、画像生成部630で生成された画像を格納する。
【0026】
図7は、本実施形態にかかる、ユーザ装置に表示される仮想空間の一例を示す図である。
図7に示すように、ユーザ装置は、内蔵するウェブブラウザにエンベッドされる画像を表示するためのビューワ等の画像表示部710において、キャラクタ720を含む仮想空間の画像を表示することができる。仮想空間に配置されるキャラクタ720は、演者としてのユーザに装着されるHMD110及び/またはコントローラ210を介した、ユーザの頭部の傾きや向きといった動き、ユーザの発話内容、または、コントローラ210の傾きや向きといった動き、コントローラ210を介したユーザの操作内容といった、ユーザ入力に基づいて、動作することができる。
【0027】
図8及び
図9は、本実施形態にかかる、キャラクタの制御方法を説明するフローチャートを示す。まず、画像生成装置310のユーザ入力検出部610は、入出力部320及び/又は通信部330を介して、HMD110及び/又はコントローラ210から、ユーザの頭部の動きやユーザの発話、また、コントローラの動きや操作に関する情報を受信する(S810)。続いて、ユーザ入力検出部610は、ユーザの入力内容が、HMD110から入力されたものであるか、または、コントローラ210から入力されたものであるかを確認する(S820)。S820の処理が、HMD110から入力されたものである場合は、具体的な入力内容を確認するステップ(S830〜S850)に進む。S820の処理が、コントローラ210から入力されたものである場合は、
図9に示す処理へと進む。
【0028】
S820の処理が、HMD110から入力されたものである場合は、ユーザ入力検出部610は、まず、HMD110から入力された内容が、ユーザ頭部の動作に関する情報であるかを確認する(S830)。具体的には、HMD110のセンサ140から入力された情報がユーザの頭部の向きや傾き(例えば、ユーザの頭部を基準としたXYZ軸まわりの回転角)に関する場合、キャラクタ制御部620は、キャラクタの頭部の動きを変化させることができる(S860)。ここで、例えば、HMD110のジャイロセンサにより検出されたユーザの頭部の向きや傾きといった動きに関する情報を、人間の関節の動きや制約を規定したボーン構造の頭部の動きに変換し、ボーン構造の頭部の動きをキャラクタデータ格納部650に格納されたキャラクタデータの頭部の動きに適用することで、キャラクタの動きを制御することができる。例えば、ジャイロセンサにマイクより、Y軸回りに「ロール角:−(マイナス)30度」という情報を受信した場合、キャラクタ制御部620は、その情報をキャラクタの頭部を左方向に30度首を振るよう変化させる処理を行う。さらに、キャラクタの表情を変化させることもできる。キャラクタの表情キャラクタの表情を構成する要素として、キャラクタの顔を構成するパーツ、例えば、眉、眼、鼻、口等に分解することができ、また、各々の動きのパターンや動きの度合(動きの大きさ、速さ)をパラメータとして持っておくことができる。これらのパーツのパラメータを組み合わせることで、キャラクタは喜怒哀楽といった様々な表情を有することができる。そして、ユーザの頭部の動きを検出することで、その動きに応じて、そのパラメータをランダムに変更するよう制御することができる。これにより、キャラクタの自然な表情を再現することができる。または、ユーザ入力検出部610は、その入力内容が、ユーザの注視点に関する情報であるかを確認する(S840)。注視点は、各種センサを介して得られるユーザの頭部の向きや傾きに関する情報を基に視線方向を算出するか、または、アイトラッキング・センサを介して直接得られる。キャラクタ制御部620は、視線方向または注視点の示す位置に応じて、キャラクタの視線を変化させることができる(S870)。または、ユーザ入力検出部610は、ユーザ入力内容が、ユーザの発話に関する情報であるかを確認する(S850)。具体的には、ユーザ入力内容が、HMD110のマイク170から入力された音声である場合、キャラクタ制御部620は、その声の大きさに応じて、キャラクタの口の大きさを制御したり、キャラクタの表情パラメータをランダムに変更するよう制御することができる(S880)。ここで、ユーザはHMD110を頭部に装着せずに、例えば、頭部の上に載せて、外部のモニタに表示されるキャラクタの画像を見ながら、HMD110の動きを変化させることで、HMD110の動きに応じたキャラクタの動きを再現することもできる。
【0029】
S820の処理が、コントローラ210から入力されたものである場合は、
図9において、具体的な入力内容を確認するステップ(S910〜S930)に進む。まず、ユーザ入力検出部610は、コントローラ210からの入力内容が、コントローラ210の操作ボタンの操作に関する情報であるかを確認する(S910)。例えば、入力内容が、左手用コントローラの操作用トリガーボタン240aの押下に関するものであった場合、キャラクタ制御部620は、そのボタンの操作に対応するアクションをキャラクタが取る(例えば、キャラクタが笑う)よう、表情パラメータを制御することができる。または、ユーザ入力検出部610は、コントローラ210からの入力内容が、コントローラ210に備えられたセンサ260を介して検出されたコントローラ210の位置、向きや傾きといった動作に関するものであるかを確認する(S920)。入力内容が、コントローラ210の位置、向きや傾きといった動作に関するものである場合、キャラクタ制御部620は、キャラクタの身体の動きを制御することができる(S950)。例えば、入力内容が、コントローラ210の加速度センサから検出される位置の変化(コントローラを上げ下げする動き)に関するものであった場合、キャラクタ制御部620は、キャラクタの腕を上下させる動きを行うよう制御することができる。また、入力内容が、コントローラ210のジャイロセンサから検出される回転に関するものであった場合、キャラクタ制御部620は、キャラクタの指を開閉させるよう制御することができる。ここで、HMD110とコントローラ210の動きとを組み合わせれば、キャラクタは、これらに対応する頭部や手の動きを再現することになるが、首や肩といった、頭部と手を繋ぐ部位の動きは、コンピュータグラフィクスのインバースキネマティクス(IK)という手法を用いて、頭部と手の動きを基とした首や肩の動きを逆算することで、センサを介して得られない動きを補間することができる。または、ユーザ入力検出部610は、コントローラ210からの入力内容が、コントローラ210の操作ボタンの操作の組み合わせに関する情報であるかを確認する(S930)。例えば、入力内容が、左手用コントローラの操作用トリガーボタン240aと右手用コントローラの操作用トリガーボタン240aを同時に押下することであった場合、その組み合わせに対応したアクションをキャラクタが取る(例えば、キャラクタがお腹を抱えて笑う)よう、表情パラメータや動作パラメータを制御することができる(S960)。ここで、表情パラメータと同様に、キャラクタの身体の動作として、身体を構成するパーツ、例えば、頭部、両手、両足といったパーツに分解し、各々の動きのパターンや動きの度合(動きの大きさ、速さ)をパラメータとして持っておくことができる。キャラクタの自然な動きを表現するため、HMD110またはコントローラ210を介した、ユーザに何らかの入力に応じて、キャラクタの表情パラメータや動作パラメータをランダムに制御することができる。
【0030】
本実施例によれば、ユーザの身体に直接装着されたマーカやセンサでなく、HMD110やコントローラ210を介したユーザの各部の動きや操作内容を検出することで、ユーザの動きに対応したキャラクタの動きの再現を容易にしつつ、操作内容により、バリエーションに富んだ表現をも実現することができる。
【0031】
<第2の実施形態>
図10に、第2の実施形態にかかる、画像生成装置1010の機能構成図を示す。本実施形態にかかるHMDシステムは、
図3に示す、第1の実施形態におけるシステム構成と同様であり、また、画像生成装置1010の機能構成についても、基本的には
図6に示す構成と同様である。本実施形態においては、画像生成装置1010において、制御部1040は、他のユーザ装置から、仮想空間に配置するアイテムの選択を受け付けるアイテム受付部1044を有し、記憶部1050は、アイテムに関するデータを格納するアイテムデータ格納部1054を有する。さらに、記憶部1050は、ユーザに関する情報を格納するユーザデータ格納部1055を有する。本実施形態における画像生成装置の特徴としては、複数のユーザ装置に対して仮想空間となる画像を送信するだけでなく、ユーザ装置からアイテムやコメントを受付けることができる。なお、第1の実施形態と同様に、画像生成装置1010の機能を、画像を生成することだけに特化し、別途コンテンツ・サービスサーバを設けて、このコンテンツ・サービスサーバが、ユーザ装置に画像を送信し、また、ユーザ装置からアイテムやコメントを受け付ける機能を有することもできる。
【0032】
図11は、第2の実施形態にかかる、ユーザ装置に表示される仮想空間の一例を示す図である。第1の実施形態同様、ユーザ装置は、内蔵するウェブブラウザにエンベッドされる画像を表示するためのビューワ等の画像表示部1110において、キャラクタ1120を含む仮想空間の画像を表示することができる。仮想空間に配置されるキャラクタ720は、演者としてのユーザに装着されるHMD110及び/またはコントローラ210を介した、ユーザの頭部の傾きや向きといった動き、ユーザの発話、または、コントローラ210の傾きや向きといった動き、コントローラ210を介したユーザの操作内容といった、ユーザ入力に基づいて、動作することができる。本実施形態においては、画像表示部1110のほか、画像生成装置310に接続する各ユーザ装置から受け付けたコメントを表示するコメント表示部1130、ユーザからのコメント入力を受け付けるコメント入力部1140、及びキャラクタに対してギフティングするアイテムを選択及び表示するアイテム表示部1150を有することができる。本実施形態は、画像表示部1110に表示される仮想空間上に表示されるキャラクタに対して、各ユーザから応援コメントを受付け、また、各ユーザが、各々ポイントが対応づけられた複数のアイテムの中から所望のアイテムを購入し、送信要求を行う入力を行うことで、仮想空間内に購入アイテムを表示させる、いわゆるギフティングを行うことを含むサービスを想定している。このようなサービスにおいては、ギフティングしたアイテムのポイントの累計に応じて、キャラクタが所定の動作を行う、といったことが考えられる。
【0033】
図12は、本実施形態にかかる、ユーザ装置に表示される仮想空間の他の一例を示す図である。本例においては、一のユーザ装置からのギフティングを通じて画像表示部1110に配置されたアイテム1210を、キャラクタ1120が持ち上げて喜ぶかのような演出が行われている。これにより、ユーザとキャラクタは、サービスにおいて、より一層の一体感を共有することができる。
【0034】
図13に、本実施形態において、仮想空間上でキャラクタとアイテムが相互作用する処理の一例としてのフローチャートを示す。まず、画像生成装置1010のアイテム受付部1044は、サービスに接続する複数のユーザ装置のいずれかからアイテムを受け付ける(S1310)。画像生成装置1010の画像生成部1043は、ユーザ装置の画像表示部1110に、キャラクタ1120と共にアイテム1210を表示させるために、画像生成を行う(S1320)。その後、画像生成装置1010のユーザ入力検出部1141は、演者となるユーザのHMD110やコントローラ210等からユーザ入力を検出したかを確認する(S1330)。例えば、演者となるユーザは、HMD110のディスプレイに表示される仮想空間を見ながら、アイテム1210に対してコントローラ210の位置を合わせ、左手または右手の操作用トリガーボタン240aのトリガーを引く操作を行うことができる。ユーザ入力検出部1141は、画像生成装置1010の入出力部1020及び/または通信部1030を通じて、当該操作を受付け、検出することができる。ユーザ入力検出部1041が、ユーザ入力の検出をしなければ、元の処理に戻る。ユーザ入力検出部1041が、ユーザ入力を検出すると、キャラクタ制御部1042は、コントローラ210の位置に合わせてキャラクタの手の位置を移動させる処理を行い、コントローラの位置を仮想空間における座標に変換し、この座標が仮想空間におけるアイテムが配置される座標と重なる場合は、次に、コントローラ210を介した操作に従い、アイテムを掴む処理を行う。結果として、画像生成部1043は、キャラクタ1120がアイテム1210を持ち上げる画像、すなわち、キャラクタとアイテムとが相互作用する画像を生成する(S1340)。
【0035】
<第3の実施形態>
図14に、第3の実施形態にかかる、仮想空間上でキャラクタとアイテムが相互作用する処理の一例としてのフローチャートを示す。本実施形態においては、画像処理の観点に加え、サービスにおけるキャラクタとユーザのソーシャル性をさらに高めるための方法を提供する。本実施形態のシステム及び画像生成装置の構成は第2の実施形態のものと基本的に同じである。
【0036】
図14について、まず、画像生成装置1010のアイテム受付部1044は、サービスに接続する複数のユーザ装置のいずれかからアイテムを受け付ける(S1410)。画像生成装置1010の画像生成部1043は、ユーザ装置の画像表示部1110に、キャラクタ1120と共にアイテム1210を表示させるために、画像生成を行う(S1420)。その後、画像生成装置1010のユーザ入力検出部1141は、演者となるユーザのHMD110やコントローラ210等からユーザ入力を検出したかを確認する(S1430)。例えば、演者となるユーザは、HMD110のディスプレイに表示される仮想空間を見ながら、アイテム1210に対してコントローラ210の位置を合わせ、左手または右手の操作用トリガーボタン240aのトリガーを引く操作を行うことができる。ユーザ入力検出部1141は、画像生成装置1010の入出力部1020及び/または通信部1030を通じて、当該操作を受付け、検出することができる。ユーザ入力検出部1041が、ユーザ入力の検出をしなければ、元の処理に戻る。ユーザ入力検出部1041が、ユーザ入力を検出すると、キャラクタ制御部1042は、仮想空間に配置されたアイテム1210のポイント数を確認し、続いて、そのポイント数が所定のポイント以上であるかを確認する(S1440)。
【0037】
図15に、画像生成装置1010のアイテムデータ格納部1054に格納されるアイテム管理テーブル1510の例を示す。アイテム管理テーブル1510は、ユーザがギフティングできるアイテム及び対応するポイント数を管理する。ここで、ポイント数というのは、サービス内で通用する仮想通貨がポイント単位で提供される場合に、アイテムを1個単位で購入するために必要な数のことをさす。例えば、「ダルマ」というアイテムは、ポイント数が「1」であるのに対し、「バラ」というアイテムについては、ポイント数が「10」と割り当てられている。ユーザはキャラクタ(または演者)を応援するためにアイテムをポイントで購入し、仮想空間に購入したアイテムを表示するよう要求する。アイテム管理テーブル1510に挙げられている例では、「指輪」が最も高価なアイテムということになる。
【0038】
図14のS1440に戻り、キャラクタ制御部1042は、例えば、予め決められたポイント数を「10pt」とするときに、配置されたアイテムが「ダルマ」であった場合、キャラクタ制御は実行されず、処理は元に戻る。他方で、配置されたアイテムが「バラ」であった場合、バラのポイント数は「10pt」であるので、条件を満たすことになる。条件を満たしたことを確認すると、キャラクタ制御部1042は、コントローラ210の位置に合わせてキャラクタの手の位置を移動させる処理を行い、コントローラの位置を仮想空間における座標に変換し、この座標が仮想空間におけるアイテムが配置される座標と重なる場合は、次に、コントローラ210を介した操作に従い、アイテムを掴む処理を行う。結果として、画像生成部1043は、キャラクタ1120がアイテム1210を持ち上げる画像、すなわち、キャラクタとアイテムとが相互作用する画像を生成する(S1450)。
【0039】
<第4の実施形態>
図16に、第4の実施形態にかかる、仮想空間上でキャラクタとアイテムが相互作用する処理の一例としてのフローチャートを示す。本実施形態においては、画像処理の観点に加え、サービスにおけるキャラクタとユーザのソーシャル性をさらに高めるための別の方法を提供する。本実施形態のシステム及び画像生成装置の構成は第2及び第3の実施形態のものと基本的に同じである。
【0040】
図16について、まず、画像生成装置1010のアイテム受付部1044は、サービスに接続する複数のユーザ装置のいずれかからアイテムを受け付ける(S1610)。画像生成装置1010の画像生成部1043は、ユーザ装置の画像表示部1110に、キャラクタ1120と共にアイテム1210を表示させるために、画像生成を行う(S1620)。その後、画像生成装置1010のユーザ入力検出部1141は、演者となるユーザのHMD110やコントローラ210等からユーザ入力を検出したかを確認する(S1630)。例えば、演者となるユーザは、HMD110のディスプレイに表示される仮想空間を見ながら、アイテム1210に対してコントローラ210の位置を合わせ、左手または右手の操作用トリガーボタン240aのトリガーを引く操作を行うことができる。ユーザ入力検出部1141は、画像生成装置1010の入出力部1020及び/または通信部1030を通じて、当該操作を受付け、検出することができる。ユーザ入力検出部1041が、ユーザ入力の検出をしなければ、元の処理に戻る。ユーザ入力検出部1041が、ユーザ入力を検出すると、キャラクタ制御部1042は、仮想空間に配置されたアイテム1210をギフティングしたユーザのランキングを確認し、続いて、そのポイント数が所定のランキング以上であるかを確認する(S1640)。
【0041】
図17に、画像生成装置1010のユーザデータ格納部1055に格納されるユーザランキング管理テーブル1610の例を示す。ユーザランキング管理テーブル1610は、ユーザがギフティングしたアイテムに対応するポイント数の合計を管理し、ポイント数の合計に基づいた順位を管理する。例えば、ユーザAが、「指輪」というアイテムを5個購入し、ギフティングすれば、ポイント数の合計は「500pt」となり、他のユーザとの比較で、ポイント数の合計で1位ということになる。
【0042】
図16のS1640に戻り、キャラクタ制御部1042は、例えば、予め決められたランキングを「3位以上」とするときに、配置されたアイテムをギフティングしたユーザが「ユーザD」であった場合、ユーザDのランキングは4位であるため、キャラクタ制御は実行されず、処理は元に戻る。他方で、配置されたアイテムをギフティングしたユーザが「ユーザC」であった場合、ユーザCのランキングは3位であるため、条件を満たすことになる。条件を満たしたことを確認すると、キャラクタ制御部1042は、コントローラ210の位置に合わせてキャラクタの手の位置を移動させる処理を行い、コントローラの位置を仮想空間における座標に変換し、この座標が仮想空間におけるアイテムが配置される座標と重なる場合は、次に、コントローラ210を介した操作に従い、アイテムを掴む処理を行う。結果として、画像生成部1043は、キャラクタ1120がアイテム1210を持ち上げる画像、すなわち、キャラクタとアイテムとが相互作用する画像を生成する(S1650)。
【0043】
<第5の実施形態>
図18に、第5の実施形態にかかる、演者ユーザ用の仮想空間ユーザインターフェースの一例を示す。本実施形態において、演者ユーザはHMD110を頭部に装着することで、表示部120に表示される仮想空間1810において、自身が演じている動作に基づいて動作するキャラクタを確認することができる。この仮想空間1810には、いくつかの操作パネルが存在し、演者ユーザは、自身で演じながら、仮想カメラの位置を変更したり、他の操作を行うことができる。
【0044】
図18において、仮想カメラの位置を操作する仮想カメラ選択部1820を有する。例えば、演者ユーザは、特定のカメラのボタンが表示される位置にコントローラ210の位置を移動させ、コントローラ210の操作ボタンを押下することで、所望の仮想カメラを選択することができる。仮想カメラは、例えば、キャラクタが配置される置に向かって正面、斜め方向に左45度、右45度といった位置に配置することができる。また、演者ユーザの声が録音中であることを示すアイコン1830を配置することができる。例えば、演者ユーザは、コントローラ210の特定の操作ボタンを押下することで、録音操作を実行でき、また、録音のステータスをアイコン1730の態様を通じて確認することができる。また、仮想空間内に「STAND BY」アイコン1840を配置することができ、演者ユーザは、配信が準備中かオンエア中であるかのステータスを、アイコン1840を通じて確認することができる。その他、図示しないが、演者ユーザの発する声や音量に対応して、キャラクタの口からパーティクルを表示させる処理を行うこともでき、音量の大きさに応じて、パーティクルの大きさを大きくするなど直感的にステータスを確認できるようにすることもできる。
【解決手段】仮想空間内におけるオブジェクトの制御方法であって、初期状態において、ユーザの視界領域外においてユーザから所定距離だけ離れた所定位置にオブジェクトの少なくとも一部を配置するステップと、仮想空間内におけるユーザの入力を検出するステップと、ユーザの入力に応じて、オブジェクトの出力を所定位置において制御するステップを含む。