(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2022-01-18
(45)【発行日】2022-01-27
(54)【発明の名称】コンテンツ配信システム、コンテンツ配信方法、及びコンテンツ配信プログラム
(51)【国際特許分類】
G06T 19/00 20110101AFI20220119BHJP
G06F 3/01 20060101ALI20220119BHJP
【FI】
G06T19/00 300B
G06F3/01 510
(21)【出願番号】P 2021091497
(22)【出願日】2021-05-31
【審査請求日】2021-05-31
【新規性喪失の例外の表示】特許法第30条第2項適用 ウェブサイトの掲載日 令和3年3月24日 ウェブサイトのアドレス https://dwango.co.jp/news/press-release/2021/0324/news-542.html
【早期審査対象出願】
(73)【特許権者】
【識別番号】518412081
【氏名又は名称】株式会社バーチャルキャスト
(73)【特許権者】
【識別番号】598138327
【氏名又は名称】株式会社ドワンゴ
(74)【代理人】
【識別番号】100088155
【氏名又は名称】長谷川 芳樹
(74)【代理人】
【識別番号】100113435
【氏名又は名称】黒木 義樹
(74)【代理人】
【識別番号】100144440
【氏名又は名称】保坂 一之
(74)【代理人】
【識別番号】100183081
【氏名又は名称】岡▲崎▼ 大志
(72)【発明者】
【氏名】岩城 進之介
(72)【発明者】
【氏名】甲野 純正
(72)【発明者】
【氏名】國井 理恵子
【審査官】片岡 利延
(56)【参考文献】
【文献】特表2021-509612(JP,A)
【文献】特表2020-533721(JP,A)
【文献】特表2020-514926(JP,A)
【文献】特開2006-252468(JP,A)
【文献】ゆりいか(MoguraVR),ドワンゴの「VR授業プログラム」で学びは変わるのか 実際に体験してみて分かったこと,[online],2021年04月15日,https://www.moguravr.com/dwango-vr-learning-program-report/
(58)【調査した分野】(Int.Cl.,DB名)
G06T 19/00
G06F 3/01
(57)【特許請求の範囲】
【請求項1】
ユーザ端末により検出されたユーザの頭部の動きに応じて仮想空間内に設定される仮想カメラからの視界を示すコンテンツ画像を前記ユーザ端末に配信するコンテンツ配信システムであって、
少なくとも一つのプロセッサを備え、
前記少なくとも一つのプロセッサは、
前記仮想空間内に所定の主題に関する背景画像を生成し、
前記背景画像とは独立して前記仮想空間内の所定位置に固定的に配置され、前記主題に関連するテキスト情報を含む関連オブジェクトを生成し、
前記コンテンツ画像中の前記背景画像が前記ユーザの頭部の動きと連動せずに変化する度合いを示す変化度を継続的に検知し、
予め定められた閾値を超える前記変化度が検知された場合に、前記コンテンツ画像中の前記関連オブジェクトのサイズを拡大させ、
前記背景画像及び前記関連オブジェクトを含む前記コンテンツ画像を前記ユーザ端末に配信する、
コンテンツ配信システム。
【請求項2】
前記少なくとも一つのプロセッサは、
前記仮想カメラと前記背景画像との間に、仮想的なマーカーオブジェクトを配置し、
前記マーカーオブジェクトに対する前記ユーザによる第1操作が実行されたことに応じて、前記関連オブジェクトを生成する、
請求項
1に記載のコンテンツ配信システム。
【請求項3】
ユーザ端末により検出されたユーザの頭部の動きに応じて仮想空間内に設定される仮想カメラからの視界を示すコンテンツ画像を前記ユーザ端末に配信するコンテンツ配信システムであって、
少なくとも一つのプロセッサを備え、
前記少なくとも一つのプロセッサは、
前記仮想空間内に所定の主題に関する背景画像を生成し、
前記仮想カメラと前記背景画像との間に、仮想的なマーカーオブジェクトを配置し、
前記マーカーオブジェクトに対する前記ユーザによる第1操作が実行されたことに応じて、前記背景画像とは独立して前記仮想空間内の所定位置に固定的に配置され、前記主題に関連するテキスト情報を含む関連オブジェクトを生成し、
前記コンテンツ画像中の前記背景画像が前記ユーザの頭部の動きと連動せずに変化する度合いを示す変化度を継続的に検知し、
前記コンテンツ画像中に前記関連オブジェクトが配置されておらず、且つ、予め定められた閾値を超える前記変化度が検知された場合に、前記マーカーオブジェクトに対する前記第1操作が実行されたか否かにかかわらず、前記コンテンツ画像中に前記関連オブジェクトを配置し、
前記背景画像及び前記関連オブジェクトを含む前記コンテンツ画像を前記ユーザ端末に配信する、
コンテンツ配信システム。
【請求項4】
前記マーカーオブジェクトには、前記仮想カメラの移動及び前記背景画像の変更の少なくとも一方を実行する機能が関連付けられており、
前記少なくとも一つのプロセッサは、
前記マーカーオブジェクトに対する前記ユーザによる第2操作が実行されたことに応じて、前記仮想カメラの移動及び前記背景画像の変更の少なくとも一方を実行する、
請求項
2又は3に記載のコンテンツ配信システム。
【請求項5】
前記コンテンツは、教育用コンテンツであり、
前記背景画像は、所定の学習対象に関する画像であり、
前記関連オブジェクトに含まれる前記テキスト情報は、前記学習対象についての説明文である、
請求項
1~4のいずれか一項に記載のコンテンツ配信システム。
【請求項6】
前記少なくとも一つのプロセッサは、
前記背景画像を、前記仮想空間において前記仮想カメラから無限遠の距離上の面として定義される仮想球面上に配置し、
前記関連オブジェクトを、前記仮想カメラと前記背景画像との間において、前記仮想カメラから有限の距離に配置する、
請求項
1~5のいずれか一項に記載のコンテンツ配信システム。
【請求項7】
前記少なくとも一つのプロセッサは、
前記仮想カメラが関連付けられた前記ユーザのアバターを前記仮想空間内に生成し、
前記関連オブジェクトを前記ユーザの頭部の動きと連動させることなく、前記アバターと前記関連オブジェクトとの相対的な位置関係を固定する、
請求項
1~6のいずれか一項に記載のコンテンツ配信システム。
【請求項8】
ユーザ端末により検出されたユーザの頭部の動きに応じて仮想空間内に設定される仮想カメラからの視界を示すコンテンツ画像を前記ユーザ端末に配信するコンテンツ配信方法であって、
仮想空間内に所定の主題に関する背景画像を生成するステップと、
前記背景画像とは独立して前記仮想空間内の所定位置に固定的に配置され、前記主題に関連するテキスト情報を含む関連オブジェクトを生成するステップと、
前記コンテンツ画像中の前記背景画像が前記ユーザの頭部の動きと連動せずに変化する度合いを示す変化度を継続的に検知するステップと、
予め定められた閾値を超える前記変化度が検知された場合に、前記コンテンツ画像中の前記関連オブジェクトのサイズを拡大させるステップと、
前記背景画像及び前記関連オブジェクトを含む前記コンテンツ画像を前記ユーザ端末に配信するステップと、
を含むコンテンツ配信方法。
【請求項9】
ユーザ端末により検出されたユーザの頭部の動きに応じて仮想空間内に設定される仮想カメラからの視界を示すコンテンツ画像を前記ユーザ端末に配信するコンテンツ配信方法であって、
仮想空間内に所定の主題に関する背景画像を生成するステップと、
前記仮想カメラと前記背景画像との間に、仮想的なマーカーオブジェクトを配置するステップと、
前記マーカーオブジェクトに対する前記ユーザによる第1操作が実行されたことに応じて、前記背景画像とは独立して前記仮想空間内の所定位置に固定的に配置され、前記主題に関連するテキスト情報を含む関連オブジェクトを生成するステップと、
前記コンテンツ画像中の前記背景画像が前記ユーザの頭部の動きと連動せずに変化する度合いを示す変化度を継続的に検知するステップと、
前記コンテンツ画像中に前記関連オブジェクトが配置されておらず、且つ、予め定められた閾値を超える前記変化度が検知された場合に、前記マーカーオブジェクトに対する前記第1操作が実行されたか否かにかかわらず、前記コンテンツ画像中に前記関連オブジェクトを配置するステップと、
前記背景画像及び前記関連オブジェクトを含む前記コンテンツ画像を前記ユーザ端末に配信するステップと、
を含むコンテンツ配信方法。
【請求項10】
ユーザ端末により検出されたユーザの頭部の動きに応じて仮想空間内に設定される仮想カメラからの視界を示すコンテンツ画像を前記ユーザ端末に配信する処理をコンピュータに実行させるコンテンツ配信プログラムであって、
仮想空間内に所定の主題に関する背景画像を生成するステップと、
前記背景画像とは独立して前記仮想空間内の所定位置に固定的に配置され、前記主題に関連するテキスト情報を含む関連オブジェクトを生成するステップと、
前記コンテンツ画像中の前記背景画像が前記ユーザの頭部の動きと連動せずに変化する度合いを示す変化度を継続的に検知するステップと、
予め定められた閾値を超える前記変化度が検知された場合に、前記コンテンツ画像中の前記関連オブジェクトのサイズを拡大させるステップと、
前記背景画像及び前記関連オブジェクトを含むコンテンツ画像を前記ユーザ端末に配信するステップと、
を前記コンピュータに実行させるコンテンツ配信プログラム。
【請求項11】
ユーザ端末により検出されたユーザの頭部の動きに応じて仮想空間内に設定される仮想カメラからの視界を示すコンテンツ画像を前記ユーザ端末に配信する処理をコンピュータに実行させるコンテンツ配信プログラムであって、
仮想空間内に所定の主題に関する背景画像を生成するステップと、
前記仮想カメラと前記背景画像との間に、仮想的なマーカーオブジェクトを配置するステップと、
前記マーカーオブジェクトに対する前記ユーザによる第1操作が実行されたことに応じて、前記背景画像とは独立して前記仮想空間内の所定位置に固定的に配置され、前記主題に関連するテキスト情報を含む関連オブジェクトを生成するステップと、
前記コンテンツ画像中の前記背景画像が前記ユーザの頭部の動きと連動せずに変化する度合いを示す変化度を継続的に検知するステップと、
前記コンテンツ画像中に前記関連オブジェクトが配置されておらず、且つ、予め定められた閾値を超える前記変化度が検知された場合に、前記マーカーオブジェクトに対する前記第1操作が実行されたか否かにかかわらず、前記コンテンツ画像中に前記関連オブジェクトを配置するステップと、
前記背景画像及び前記関連オブジェクトを含むコンテンツ画像を前記ユーザ端末に配信するステップと、
を前記コンピュータに実行させるコンテンツ配信プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示の一側面は、コンテンツ配信システム、コンテンツ配信方法、及びコンテンツ配信プログラムに関する。
【背景技術】
【0002】
特許文献1には、ヘッドマウントディスプレイ(HMD:Head Mounted Display)を装着して仮想空間に没入している際に生じる映像酔い(いわゆるVR酔い)を低減するための手法として、HMDに提供されるコンテンツ画像(仮想空間画像)において、HMDの回転方向及び回転速度に応じた範囲及び強さでぼかし処理を施す手法が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、仮想空間に没入している際のVR酔いは、HMDが回転しない場合にも生じ得る。例えば、仮想空間を構成する背景画像がHMDの回転移動と連動せずに回転する場合、或いは仮想空間におけるユーザの仮想的な視点(仮想カメラ)がHMDの回転移動と連動せずに移動する場合等にも、ユーザは自身の頭部の動きと一致しない視覚的効果を受けることによって、VR酔いを起こす可能性がある。上記特許文献1に開示された手法では、HMDが回転した場合(すなわち、ユーザが自らの意思で頭部を回転させた場合)のVR酔いの低減を図ることしかできない。そこで、HMDが回転しない場合も含めて、コンテンツ画像中の背景画像の変化に起因するVR酔いを効果的に抑制することが可能な手法が求められている。
【0005】
本開示の一側面は、コンテンツ画像中の背景画像の変化に起因するVR酔いを効果的に抑制することが可能なコンテンツ配信システム、コンテンツ配信方法、及びコンテンツ配信プログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本開示の一側面に係るコンテンツ配信システムは、ユーザ端末により検出されたユーザの頭部の動きに応じて仮想空間内に設定される仮想カメラからの視界を示すコンテンツ画像をユーザ端末に配信する。コンテンツ配信システムは、少なくとも一つのプロセッサを備える。少なくとも一つのプロセッサは、仮想空間内に所定の主題に関する背景画像を生成し、背景画像とは独立して仮想空間内の所定位置に固定的に配置され、主題に関連するテキスト情報を含む関連オブジェクトを生成し、背景画像及び関連オブジェクトを含むコンテンツ画像をユーザ端末に配信する。
【0007】
仮に、背景画像のみを含むコンテンツ画像がユーザに配信される場合について考える。この場合、コンテンツ画像中の背景画像がユーザの頭部の動きと一致せずに変化すると、ユーザは自身の頭部の動きと一致しない視覚的効果を受けることによって、映像酔い(いわゆるVR酔い)を起こす可能性がある。なお、上記のように背景画像がユーザの頭部の動きと一致せずに変化する例としては、背景画像がユーザの頭部の動きと独立して回転する場合等が挙げられる。一方、上記コンテンツ配信システムでは、コンテンツ画像には、背景画像と共に関連オブジェクトが含まれる。関連オブジェクトは、背景画像に表された主題に関連するテキスト情報を含んでいるため、ユーザの注意を惹き易い。また、関連オブジェクトは、背景画像とは独立して仮想空間内の所定位置に固定的に配置されている。このため、仮にコンテンツ画像中の背景画像が上記のようにユーザの頭部の動きと一致せずに変化したとしても、コンテンツ画像中の関連オブジェクトの見え方は、ユーザの頭部の動きに応じて自然に変化することになる。このように、コンテンツ画像の少なくとも一部に、ユーザの頭部の動きに応じて見え方が自然に変化し、且つユーザの注意を惹き易い対象物(関連オブジェクト)を含ませることにより、ユーザのVR酔いを抑制することができる。具体的には、背景画像がユーザの頭部の動きと一致せずに変化したとしても、ユーザは、コンテンツ画像中の関連オブジェクトに注目することにより、関連オブジェクトが配置された空間(仮想空間)内に自身が存在するという適切な感覚を得ることができる。その結果、コンテンツ画像中の背景画像の変化に起因するVR酔いが効果的に抑制される。
【発明の効果】
【0008】
本開示の一側面によれば、コンテンツ画像中の背景画像の変化に起因するVR酔いを効果的に抑制することが可能なコンテンツ配信システム、コンテンツ配信方法、及びコンテンツ配信プログラムを提供することができる。
【図面の簡単な説明】
【0009】
【
図1】実施形態に係るコンテンツ配信システムの適用の一例を示す図である。
【
図2】
図1のコンテンツ配信システムに関連するハードウェア構成の一例を示す図である。
【
図3】
図1のコンテンツ配信システムに関連する機能構成の一例を示す図である。
【
図4】
図1のコンテンツ配信システムの動作の一例を示すフローチャートである。
【
図5】
図4のステップS4の処理の一例を示すフローチャートである。
【
図7】初期状態のコンテンツ画像の一例を示す図である。
【
図9】関連オブジェクトを含むコンテンツ画像の一例を示す図である。
【
図10】関連オブジェクトがアバターの手に保持された状態のコンテンツ画像の一例を示す図である。
【
図11】
図1のコンテンツ配信システムの動作の変形例を示すフローチャートである。
【発明を実施するための形態】
【0010】
以下、添付図面を参照しながら本開示での実施形態を詳細に説明する。なお、図面の説明において同一又は同等の要素には同一の符号を付し、重複する説明を省略する。
【0011】
[システムの概要]
実施形態に係るコンテンツ配信システムは、ユーザに向けてコンテンツを配信するコンピュータシステムである。コンテンツとは、コンピュータ又はコンピュータシステムによって提供され、人が認識可能な情報である。コンテンツを示す電子データのことをコンテンツデータという。コンテンツの表現形式は限定されない。コンテンツは、例えば、画像(例えば、写真、映像等)、文書、音声、音楽、又はこれらの中の任意の2以上の要素の組合せによって表現されてもよい。コンテンツは、様々な態様の情報伝達又はコミュニケーションのために用いることができる。コンテンツは、例えば、エンターテインメント、ニュース、教育、医療、ゲーム、チャット、商取引、講演、セミナー、研修等の様々な場面又は目的で利用され得る。配信とは、通信ネットワーク又は放送ネットワークを経由して情報をユーザに向けて送信する処理である。
【0012】
コンテンツ配信システムは、コンテンツデータをユーザ端末に送信することで、コンテンツをユーザに提供する。また、本実施形態では、コンテンツは、少なくとも仮想空間を表現する画像を用いて表現される。すなわち、コンテンツデータには、少なくともコンテンツを示すコンテンツ画像が含まれる。コンテンツ画像は、人が視覚を通して何らかの情報を認識することができる像である。コンテンツ画像は、動画像(映像)でもよいし静止画でもよい。
【0013】
一例では、コンテンツ画像は、仮想オブジェクトが存在する仮想空間を表現する。仮想オブジェクトは、現実世界には存在せず、コンピュータシステム上でのみ表現される物体である。仮想オブジェクトは、実写画像とは独立した画像素材を用いて、2次元又は3次元のコンピュータグラフィックス(CG)によって表現される。仮想オブジェクトの表現方法は限定されない。例えば、仮想オブジェクトは、アニメーション素材を用いて表現されてもよいし、実写画像に基づいて本物に近いように表現されてもよい。仮想空間は、コンピュータ上に表示される画像によって表現される仮想の2次元又は3次元の空間である。コンテンツ画像は、例えば、仮想空間内に設定された仮想カメラから見える風景を示す画像である。仮想カメラは、コンテンツ画像を見るユーザの視線に対応するように仮想空間内に設定される仮想的な視点である。コンテンツ画像又は仮想空間は、現実世界に実際に存在する物体である現実オブジェクトを更に含んでもよい。
【0014】
仮想オブジェクトの一例として、ユーザの分身であるアバターがある。アバターは、撮影された人そのものではなく、原画像とは独立した画像素材を用いて、2次元又は3次元のコンピュータグラフィックス(CG)によって表現される。アバターの表現方法は限定されない。例えば、アバターは、アニメーション素材を用いて表現されてもよいし、実写画像に基づいて本物に近いように表現されてもよい。上述した仮想カメラの位置及び向きは、アバターの視点及び視線と一致するように設定され得る。この場合、一人称視点のコンテンツ画像がユーザに提供される。これにより、ユーザは、仮想空間内に配置されたアバターの視点(仮想カメラ)からの視界に対応するコンテンツ画像を視認することができる。ユーザは、コンテンツ画像を見ることで、拡張現実(AR:Augmented Reality)、仮想現実(VR:Virtual Reality)、又は複合現実(MR:Mixed Reality)を体験することができる。
【0015】
本開示において、データ又は情報を第1コンピュータから第2コンピュータ“に送信する”との表現は、第2コンピュータに最終的にデータ又は情報を届けるための送信を意味する。すなわち、上記表現は、その送信において別のコンピュータ又は通信装置がデータ又は情報を中継する場合を含む。
【0016】
コンテンツの目的及び利用場面は限定されない。例えば、コンテンツは教育用コンテンツであってもよく、この場合には、コンテンツデータは教育用コンテンツデータである。教育用コンテンツとは、例えば、教師が生徒に向けて授業を行うために用いられるコンテンツである。教師とは学業、技芸などを教える人のことをいい、生徒とはその教えを受ける人のことをいう。教師は配信者の一例であり、生徒は視聴者の一例である。教師は教員免許を持つ人であってもよいし、教員免許を持たない人でもよい。授業とは、教師が生徒に学業、技芸などを教えることをいう。教師および生徒のそれぞれについて年齢および所属は限定されず、したがって、教育用コンテンツの目的および利用場面も限定されない。例えば、教育用コンテンツは、保育園、幼稚園、小学校、中学校、高等学校、大学、大学院、専門学校、予備校、オンライン学校などの各種の学校で用いられてよいし、学校以外の場所または場面で用いられてもよい。これに関連して、教育用コンテンツは、幼児教育、義務教育、高等教育、生涯学習などの様々な目的で用いられ得る。一例では、教育用コンテンツは先生または生徒に対応するアバターを含み、これは、そのアバターが教育用コンテンツの少なくとも一部のシーンで登場することを意味する。
【0017】
[コンテンツ配信システムの全体構成]
図1は、実施形態に係るコンテンツ配信システム1の適用の一例を示す図である。本実施形態では、コンテンツ配信システム1は、サーバ10と、ユーザ端末20と、コンテンツデータベース30と、を備える。
【0018】
サーバ10は、コンテンツデータをユーザ端末20に配信するコンピュータである。サーバ10は、通信ネットワークNを介して、少なくとも一つのユーザ端末20とコンテンツデータベース30とに接続されている。通信ネットワークNの構成は限定されない。例えば、通信ネットワークNは、インターネットを含んで構成されてもよいし、イントラネットを含んで構成されてもよい。
【0019】
ユーザ端末20は、コンテンツを利用するユーザによって用いられるコンピュータである。本実施形態では、ユーザは、教育用コンテンツを利用する生徒に対応する。ユーザ端末20は、少なくとも、サーバ10に対してユーザの頭部の動きを示す情報(後述するHMD情報)とHMD情報以外の操作情報とを送信する機能と、サーバ10からコンテンツ画像を含むコンテンツデータを受信及び表示する機能と、を有する。ユーザ端末20の種類及び構成は限定されない。例えば、ユーザ端末20は、高機能携帯電話機(スマートフォン)、タブレット端末、ウェアラブル端末(例えば、ヘッドマウントディスプレイ(HMD)、スマートグラス等)、ラップトップ型パーソナルコンピュータ、携帯電話機等の携帯端末を含んで構成され得る。或いは、ユーザ端末20は、デスクトップ型パーソナルコンピュータ等の据置型端末を含んで構成され得る。ユーザ端末20は、上記に例示した2種類以上の端末の組み合わせによって構成されてもよい。
【0020】
本実施形態では、ユーザ端末20は、少なくとも、ユーザがコンテンツを視聴している間のユーザの頭部の動きを検出可能な構成を備えている。一例として、ユーザ端末20は、ユーザの頭部の動きを検出可能な構成として、ユーザの頭部に装着されるHMDを含んで構成され得る。HMDは、ユーザの頭部の動きを検出可能なセンサ(
図2の入力インタフェース205として含まれるハードウェア構成の一つ)を含んでいる。また、ユーザ端末20は、後述する操作情報を入力するための構成を備えている。一例として、ユーザ端末20は、操作情報を入力するための構成として、ユーザの手に保持されるコントローラ(
図2の入力インタフェース205として含まれるハードウェア構成の一つ)を含んで構成され得る。
【0021】
ユーザは、例えば、ユーザ端末20を操作してコンテンツ配信システム1にログインすることにより、コンテンツを利用することができる。一例として、ユーザは、自身のアバターを介して、コンテンツにより表現される仮想空間内で各種体験を行うことができる。本実施形態では、コンテンツ配信システム1のユーザが既にログインしていることを前提とする。
【0022】
コンテンツデータベース30は、生成されたコンテンツデータを記憶する非一時的な記憶媒体又は記憶装置である。コンテンツデータベース30は、既存のコンテンツのライブラリであるといえる。コンテンツデータは、サーバ10、ユーザ端末20、又は別のコンピュータ等の任意のコンピュータによって、コンテンツデータベース30に格納される。
【0023】
コンテンツデータは、コンテンツを一意に識別するコンテンツIDと関連付けられた上でコンテンツデータベース30に格納される。一例では、コンテンツデータは、仮想空間データ、モデルデータ、及びシナリオを含んで構成される。
【0024】
仮想空間データは、コンテンツを構成する仮想空間を示す電子データである。例えば、仮想空間データは、背景を構成する個々の仮想オブジェクトの配置、仮想カメラの位置、又は仮想光源の位置等を示す情報を含み得る。
【0025】
モデルデータは、コンテンツを構成する仮想オブジェクトの仕様を規定するために用いられる電子データである。仮想オブジェクトの仕様とは、仮想オブジェクトを制御するための取り決め又は方法のことをいう。例えば、仮想オブジェクトの仕様は、仮想オブジェクトの構成(例えば形状及び寸法)、動作、及び音声のうちの少なくとも一つを含む。アバターのモデルデータのデータ構造は限定されず、任意に設計されてよい。例えば、モデルデータは、アバターを構成する複数のジョイント及び複数のボーンに関する情報と、アバターの外観デザインを示すグラフィックデータと、アバターの属性と、アバターの識別子であるアバターIDとを含んでもよい。ジョイント及びボーンに関する情報の例として、個々のジョイントの3次元座標と、隣り合うジョイントの組合せ(すなわちボーン)とが挙げられる。ただし、当該情報の構成は、これらに限定されず、任意に設計されてよい。アバターの属性とは、アバターを特徴付けるために設定される任意の情報であり、例えば公称寸法、声質、又は性格等を含み得る。
【0026】
シナリオとは、仮想空間内での時間の経過に伴う個々の仮想オブジェクト、仮想カメラ、又は仮想光源の動作を規定する電子データである。シナリオは、コンテンツのストーリーを決めるための情報であるこということができる。仮想オブジェクトの動作は、視覚で認識できる動きに限定されず、聴覚で認識される音声の発生を含んでよい。
【0027】
コンテンツデータは、現実オブジェクトに関する情報を含んでもよい。例えば、コンテンツデータは、現実オブジェクトが映された実写画像を含んでもよい。コンテンツデータが現実オブジェクトを含む場合には、シナリオは、その現実オブジェクトをどのタイミングでどこに映すかをさらに規定し得る。
【0028】
コンテンツデータベース30の設置場所は限定されない。例えば、コンテンツデータベース30は、コンテンツ配信システム1とは別のコンピュータシステム内に設けられてもよいし、コンテンツ配信システム1の構成要素であってもよい。
【0029】
[コンテンツ配信システムのハードウェア構成]
図2は、コンテンツ配信システム1に関連するハードウェア構成の一例を示す図である。
図2は、サーバ10として機能するサーバコンピュータ100と、ユーザ端末20として機能する端末コンピュータ200とを示す。
【0030】
一例として、サーバコンピュータ100は、ハードウェア構成要素として、プロセッサ101、主記憶部102、補助記憶部103、及び通信部104を備える。
【0031】
プロセッサ101は、オペレーティングシステム及びアプリケーションプログラムを実行する演算装置である。プロセッサの例としては、CPU(Central Processing Unit)及びGPU(Graphics Processing Unit)が挙げられるが、プロセッサ101の種類はこれらに限定されない。例えば、プロセッサ101は、センサ及び専用回路の組合せでもよい。専用回路は、FPGA(Field-Programmable Gate Array)のようなプログラム可能な回路でもよいし、他の種類の回路でもよい。
【0032】
主記憶部102は、サーバ10を実現するためのプログラム、プロセッサ101から出力された演算結果等を記憶する装置である。主記憶部102は、例えばROM(Read Only Memory)又はRAM(Random Access Memory)等により構成される。
【0033】
補助記憶部103は、一般に主記憶部102よりも大量のデータを記憶することが可能な装置である。補助記憶部103は、例えばハードディスク、フラッシュメモリ等の不揮発性記憶媒体によって構成される。補助記憶部103は、サーバコンピュータ100をサーバ10として機能させるためのサーバプログラムP1と各種のデータとを記憶する。例えば、補助記憶部103は、アバター等の仮想オブジェクト及び仮想空間のうちの少なくとも一つに関するデータを記憶してもよい。本実施形態では、コンテンツ配信プログラムは、サーバプログラムP1として実装される。
【0034】
通信部104は、通信ネットワークNを介して他のコンピュータとの間でデータ通信を実行する装置である。通信部104は、例えばネットワークカード又は無線通信モジュールにより構成される。
【0035】
サーバ10の各機能要素は、プロセッサ101又は主記憶部102にサーバプログラムP1を読み込ませ、プロセッサ101に当該サーバプログラムP1を実行させることにより実現される。サーバプログラムP1は、サーバ10の各機能要素を実現するためのコードを含む。プロセッサ101は、サーバプログラムP1に従って通信部104を動作させ、主記憶部102又は補助記憶部103におけるデータの読み出し及び書き込みを実行する。このような処理により、サーバ10の各機能要素が実現される。
【0036】
サーバ10は、一つ又は複数のコンピュータにより構成され得る。複数のコンピュータが用いられる場合には、通信ネットワークを介して当該複数のコンピュータが互いに接続されることにより、論理的に一つのサーバ10が構成される。
【0037】
一例として、端末コンピュータ200は、ハードウェア構成要素として、プロセッサ201、主記憶部202、補助記憶部203、通信部204、入力インタフェース205、及び出力インタフェース206を備える。
【0038】
プロセッサ201は、オペレーティングシステム及びアプリケーションプログラムを実行する演算装置である。プロセッサ201は、例えばCPU又はGPUであり得るが、プロセッサ201の種類はこれらに限定されない。
【0039】
主記憶部202は、ユーザ端末20を実現させるためのプログラム、プロセッサ201から出力された演算結果等を記憶する装置である。主記憶部202は、例えばROM又はRAM等により構成される。
【0040】
補助記憶部203は、一般に主記憶部202よりも大量のデータを記憶することが可能な装置である。補助記憶部203は、例えばハードディスク、フラッシュメモリ等の不揮発性記憶媒体によって構成される。補助記憶部203は、端末コンピュータ200をユーザ端末20として機能させるためのクライアントプログラムP2と各種のデータとを記憶する。例えば、補助記憶部203は、アバター等の仮想オブジェクト及び仮想空間のうちの少なくとも一つに関するデータを記憶してもよい。
【0041】
通信部204は、通信ネットワークNを介して他のコンピュータとの間でデータ通信を実行する装置である。通信部204は、例えばネットワークカード又は無線通信モジュールにより構成される。
【0042】
入力インタフェース205は、ユーザの操作又は動作に基づいて、データを受け付ける装置である。例えば、入力インタフェース205は、コントローラ、キーボード、操作ボタン、ポインティングデバイス、マイクロフォン、センサ、及びカメラのうちの少なくとも一つによって構成される。キーボード及び操作ボタンは、タッチパネル上に表示されてもよい。入力インタフェース205の種類が限定されないことに対応して、入力インタフェース205に入力されるデータも限定されない。例えば、入力インタフェース205は、キーボード、操作ボタン、又はポインティングデバイスによって入力又は選択されたデータを受け付けてもよい。或いは、入力インタフェース205は、マイクロフォンにより入力された音声データを受け付けてもよい。或いは、入力インタフェース205は、カメラによって撮影された画像データ(例えば、映像データ又は静止画データ)を受け付けてもよい。或いは、入力インタフェース205は、センサ又はカメラを用いたモーションキャプチャ機能によって検知されたユーザの非言語活動(例えば、視線、ユーザの頭部の動き、ユーザの頭部以外の身体の一部(例えば手等)の動き(いわゆるジェスチャ)、表情等)を示すデータをモーションデータとして受け付けてもよい。
【0043】
出力インタフェース206は、端末コンピュータ200で処理されたデータを出力する装置である。例えば、出力インタフェース206は、モニタ、タッチパネル、HMD及びスピーカのうちの少なくとも一つによって構成される。モニタ、タッチパネル、HMD等の表示装置は、処理されたデータを画面上に表示する。本実施形態では、コンテンツ画像は、HMDに出力表示される。スピーカは、処理された音声データにより示される音声を出力する。
【0044】
ユーザ端末20の各機能要素は、プロセッサ201又は主記憶部202にクライアントプログラムP2を読み込ませ、当該クライアントプログラムP2を実行させることにより実現される。クライアントプログラムP2は、ユーザ端末20の各機能要素を実現するためのコードを含む。プロセッサ201は、クライアントプログラムP2に従って、通信部204、入力インタフェース205、又は出力インタフェース206を動作させ、主記憶部202又は補助記憶部203におけるデータの読み出し及び書き込みを行う。この処理により、ユーザ端末20の各機能要素が実現される。
【0045】
サーバプログラムP1及びクライアントプログラムP2の少なくとも一つは、CD-ROM、DVD-ROM、半導体メモリ等の有形の記録媒体に固定的に記録された上で提供されてもよい。或いは、これらのプログラムの少なくとも一つは、搬送波に重畳されたデータ信号として通信ネットワークを介して提供されてもよい。これらのプログラムは、別々に提供されてもよいし、一緒に提供されてもよい。
【0046】
[コンテンツ配信システムの機能構成]
図3は、コンテンツ配信システム1に関連する機能構成の一例を示す図である。サーバ10は、機能要素として、受信部11、仮想カメラ設定部12、操作実行部13、生成部14、及び送信部15を備える。
【0047】
受信部11は、ユーザ端末20から送信されたデータ信号を受信する。データ信号は、後述するHMD情報及び操作情報の少なくとも一方を含み得る。HMD情報とは、HMDにより検出されたユーザの頭部の動き(例えば、上下又は左右の頭の振りの角度及び速度等)を示す情報である。操作情報は、コントローラを介して入力されたユーザの操作内容を示す情報である。
【0048】
仮想カメラ設定部12は、HMD情報に示されるユーザの頭部の動きに基づいて、仮想空間内の仮想カメラ(すなわち、ユーザの仮想的な視点)の位置及び向きを設定する。仮想カメラ設定部12は、現実空間におけるユーザの頭部(HMD)の動きと連動するように、仮想空間内の仮想カメラの位置及び向きを変化させる。例えば、現実空間でユーザが右を向いた場合(頭部を右に回転させた場合)には、仮想カメラ設定部12は、現実空間のユーザの頭部の動きと同じように、仮想空間内において仮想カメラの向きを右に回転させる。
【0049】
操作実行部13は、操作情報に応じた処理を実行する。例えば、操作実行部13は、ユーザにより利用開始操作(コンテンツの視聴開始を示す操作)がされた場合(すなわち、当該利用開始操作を示す操作情報が受信された場合)、仮想空間を生成する。また、操作実行部13は、仮想空間内に配置された特定の仮想オブジェクトを指定した所定の操作が実行された場合(すなわち、当該所定の操作を示す操作情報が受信された場合)、当該所定の操作に対応する処理を実行する。例えば、操作実行部13は、当該所定の操作に応じて仮想空間の状態を変化させる。操作情報及び操作実行部13の処理の具体例については、後述する。
【0050】
生成部14は、ユーザ(すなわち、ユーザ端末20)に配信するためのコンテンツデータを生成する。コンテンツデータは、ユーザ端末20の表示装置(本実施形態ではHMD)上で表示させるためのコンテンツ画像を示すデータ(コンテンツ画像そのものであってもよいし、コンテンツ画像を描画(レンダリング)するためのデータであってもよい)を含む。コンテンツデータは、コンテンツ画像以外のデータ(例えば、音声等)を含んでもよい。
【0051】
送信部15は、生成部14により生成されたコンテンツデータをユーザ端末20に送信する。
【0052】
ユーザ端末20は、機能要素として、HMD情報取得部21、操作情報取得部22、送信部23、受信部24、及び表示制御部25を備える。
【0053】
HMD情報取得部21は、ユーザの頭部の動きを示すHMD情報を取得する。HMD情報取得部21は、例えば、HMDに内蔵されたセンサ(例えば、加速度センサ、ジャイロセンサ等)による検出結果をHMD情報として取得する。HMD情報取得部21は、所定の時間間隔で、継続的にHMD情報を取得する。
【0054】
操作情報取得部22は、ユーザにより入力された操作情報を取得する。操作情報取得部22は、例えば、ユーザがコントローラを介して入力した操作情報を取得する。なお、操作情報の入力方法は、コントローラを介した入力に限られない。例えば、ユーザの手の動きを検出可能なセンサが設けられている場合、操作情報取得部22は、センサにより検知されたユーザのジェスチャ(手振り)によって表された操作の内容を操作情報として取得してもよい。
【0055】
送信部23は、HMD情報取得部21により取得されたHMD情報及び操作情報取得部22により取得された操作情報をサーバ10に送信する。
【0056】
受信部24は、サーバ10からコンテンツ画像を含むコンテンツデータを受信する。
【0057】
表示制御部25は、受信部24により受信されたコンテンツ画像をユーザ端末20の表示装置(HMD)上に表示する。
【0058】
[コンテンツ配信システムの動作]
図4を参照して、コンテンツ配信システム1の動作(より具体的にはサーバ10の動作)を説明すると共に、本実施形態に係るコンテンツ配信方法について説明する。
図4は、コンテンツ配信システム1の動作の一例を示すフローチャートである。
【0059】
ステップS1において、サーバ10は、ユーザ端末20から利用開始操作を示す操作情報を受信する。具体的には、ユーザは、ユーザ端末20のコントローラ等の入力インタフェース205を操作し、コンテンツを利用するための開始操作を実行する。これにより、操作情報取得部22が当該操作内容を示す操作情報を取得し、送信部23がサーバ10に当該操作情報を送信する。そして、サーバ10の受信部11が当該操作情報を受信する。
【0060】
ステップS2において、操作実行部13が、ステップS1で利用開始操作を示す操作情報が受信されたことに応じて、仮想空間を生成する。例えば、操作実行部13は、仮想空間内に所定の主題に関する背景画像を生成(配置)する。本実施形態では、コンテンツは教育用コンテンツであり、所定の主題は、教育用コンテンツに関連付けられた所定の学習対象(学習テーマ)である。学習対象の例としては、ピラミッド、嘆きの壁等の歴史的な建造物等が挙げられる。また、操作実行部13は、背景画像に映された学習対象に関連付けられるマーカーオブジェクトを仮想空間内に配置する。また、操作実行部13は、仮想カメラが関連付けられたアバターを仮想空間内に配置する。アバターは、例えば、人型のキャラクタオブジェクトである。仮想カメラは、アバターの視点の位置及び向きに対応する。
【0061】
図6は、仮想空間の一例を示す図である。
図6に示されるように、一例として、仮想空間VSは、中心Cの周囲360度全体を覆う天球状の構造を有する。
図6では、仮想空間VSのうちの上半分の天球が図示されている。一例として、ステップS2において操作実行部13により生成された直後の仮想空間VS(初期状態)において、仮想カメラVCは、中心Cに配置される。初期状態の仮想空間VSは、天球面(すなわち、中心Cから無限遠の距離上の面として定義される仮想球面)上に配置される背景画像BGと、背景画像BGと中心Cとの間に配置されるマーカーオブジェクトMOと、を含む。背景画像BGは、天球面の全面に設定される。仮想カメラVCの位置及び向きDに応じて、ユーザが視認可能な仮想空間VSの範囲(すなわち、仮想空間VSにおけるユーザの視界R)が決定される。この視界Rを切り取った画像(すなわち、視界Rに含まれる背景画像BG(すなわち、背景画像BGの一部)及びマーカーオブジェクトMO等の仮想オブジェクトを含む画像)が、コンテンツ画像としてユーザに提供される。
【0062】
図7は、初期状態のコンテンツ画像IMの一例を示す図である。この例では、上記所定の主題(学習対象)は最高裁判所であり、背景画像BGは、最高裁判所に関する画像(ここでは一例として、最高裁判所の周辺を示す画像)である。マーカーオブジェクトMOは、背景画像BGよりも手前の位置に配置されている。一例として、マーカーオブジェクトMOは、リング状に形成されている。ただし、マーカーオブジェクトMOの表示態様(色、形状等)はリング状に限られず、マーカーオブジェクトMOは任意の表示態様によって表現され得る。ユーザは、視界R全体に背景画像BGが広がるコンテンツ画像IMを視認することにより、背景画像BGが表す空間(この例では、最高裁判所の周辺)に実際にいるかのような仮想現実を体験することができる。
【0063】
ステップS3において、仮想カメラ設定部12は、HMD情報に基づいて、仮想空間VS内の仮想カメラVCの位置及び向きを設定する。上述したように、仮想カメラ設定部12は、現実空間におけるユーザの頭部(HMD)の向きの変化と連動させて、仮想カメラVCの向きDを変化させる。これにより、ユーザが視認可能な仮想空間VSの範囲(視界R)が変化する。
【0064】
ステップS4において、操作実行部13は、操作情報に基づいて、仮想空間VSの状態を更新する。例えば、ユーザは、コントローラを介した操作により、仮想空間VS内に配置されたアバターAを操作する。
図8は、このようなユーザ操作が行われているときのコンテンツ画像IMの一例を示す。
図8の例では、ユーザは、アバターAの手の部分を動かすことにより、仮想空間VS内でユーザが操作可能な操作オブジェクト(本実施形態では一例として、アバターが手にしている仮想的なレーザポインタLP)から出射されるレーザ光Lの照射先を動かしている。仮想空間VS内におけるこのような動作(この例では、アバターA及びレーザポインタLPの動作)が、操作実行部13により実現される。すなわち、操作実行部13は、操作情報に基づいて、仮想空間VS内におけるアバターA及びレーザポインタLPの位置座標を変更することにより、アバターA及びレーザポインタLPを動かす。
【0065】
図5を参照して、ステップS4において操作実行部13により実行され得る主な操作について説明する。
【0066】
本実施形態では、マーカーオブジェクトMOに対して可能な操作として、第1操作及び第2操作が定められている。第1操作及び第2操作は、いずれも、
図8に示されるようにレーザポインタLPのレーザ光LをマーカーオブジェクトMOに向けた状態で所定の選択操作(例えば、コントローラの所定のボタンを押下する操作等)を行うことにより実行され得る。第1操作と第2操作とは、例えば、ボタンを押す長さ、押すボタンの違い等によって判別され得る。
【0067】
マーカーオブジェクトMOに対する第1操作を示す操作情報が受信部11により受信された場合(ステップS401:YES、ステップS402:YES)、操作実行部13は、第1操作が実行されたことに応じて、仮想空間VS内に関連オブジェクトを生成する(ステップS403)。関連オブジェクトは、背景画像BGとは独立して仮想空間VS内の所定位置に固定的に配置される仮想オブジェクトである。また、関連オブジェクトは、上記所定の主題(学習対象)である最高裁判所に関連するテキスト情報T(
図9参照)を含んでいる。当該テキスト情報Tは、学習対象である最高裁判所についての説明文である。
【0068】
図9は、関連オブジェクトを含むコンテンツ画像IMの一例を示す図である。一例として、操作実行部13は、
図8に示されるようにレーザポインタLPのレーザ光LがマーカーオブジェクトMOに向けられた状態で上記第1操作が実行されたことに応じて、
図9に示されるように仮想カメラVC(アバターA)の手前位置に関連オブジェクトROを生成及び配置する。一例として、関連オブジェクトROは、マーカーオブジェクトMOよりも手前側(仮想カメラVC側)に配置される。
【0069】
マーカーオブジェクトMOに対する第2操作を示す操作情報が受信部11により受信された場合(ステップS401:YES、ステップS402:NO、ステップS404:YES)、操作実行部13は、第2操作が実行されたことに応じて、仮想カメラVCの移動処理又は背景画像BGの変更処理を実行する。仮想カメラVCの移動処理は、例えば、仮想空間VS内における仮想カメラVCの位置を、マーカーオブジェクトMOに予め関連付けられた位置(例えば、最高裁判所の入口に対応する位置等)に移動(ワープ)させる処理である。背景画像BGの変更処理は、現在表示中の背景画像BGの内容を他の内容に変更する処理である。例えば、操作実行部13は、
図7に示した背景画像BG(最高裁判所を外から見た背景を示す画像)を、最高裁判所を中から見た背景画像(すなわち、建物内部の所定位置から見た風景(建物内装)を示す画像)に変更してもよい。上述した仮想カメラVCの移動処理及び背景画像BGの変更処理は互いに異なる処理を実行するものであるが、いずれの処理も、仮想空間VS内でアバターAが現在いる場所(現在位置)から別の場所に移動したことをユーザに体感させる処理であるという点で共通している。
【0070】
また、本実施形態では、関連オブジェクトROに対して可能な操作として、関連オブジェクトROをユーザの頭部の動きと連動させることなく、アバターAと関連オブジェクトROとの相対的な位置関係(以下「相対位置関係」という。)を固定する操作(固定操作)と、アバターAと関連オブジェクトROとの相対位置関係の固定を解除する操作(解除操作)と、が定められている。固定操作は、例えば、アバターAの手の位置を関連オブジェクトROの位置に合わせた状態で所定の選択操作(例えば、コントローラの所定のボタンを押下する操作等)を行うことにより実行され得る。解除操作は、アバターと関連オブジェクトROとの相対位置関係が固定された状態で所定の操作(例えば、コントローラの所定のボタンを押下する操作等)を行うことにより実行され得る。
【0071】
ここで、「関連オブジェクトROをユーザの頭部の動きと連動させる」とは、例えば、関連オブジェクトROがアバターA(仮想カメラVC)の目の前に存在している状態から、ユーザが頭部(HMD)を回転させた場合(すなわち、仮想カメラVCの向きDが変化する場合)に、関連オブジェクトROがアバターA(仮想カメラVC)の目の前に存在している状態が維持されるように、仮想空間VS内で関連オブジェクトROを移動させることをいう。つまり、「関連オブジェクトROをユーザの頭部の動きと連動させる」とは、ユーザの頭部(HMD)の向きが変化することに起因して仮想空間VS内のユーザの視界Rが変化した場合に、コンテンツ画像IM内の関連オブジェクトROの位置が変化しないように、関連オブジェクトROを仮想空間VS内で動かすことを意味する。「関連オブジェクトROをユーザの頭部の動きと連動させない」とは、上記とは逆のことを意味する。すなわち、「関連オブジェクトROをユーザの頭部の動きと連動させない」とは、関連オブジェクトROの位置をユーザの頭部(HMD)の動きに合わせて変化させないことを意味する。
【0072】
関連オブジェクトROに対する固定操作を示す操作情報が受信部11により受信された場合(ステップS406:YES、ステップS407:YES)、操作実行部13は、固定操作が実行されたことに応じて、関連オブジェクトROをユーザの頭部の動きと連動させることなく、アバターAと関連オブジェクトROとの相対位置関係を固定する(ステップS408)。一例として、操作実行部13は、アバターAの手の部分に関連オブジェクトROを固定(保持)させる。
【0073】
図10は、関連オブジェクトROがアバターAの手に保持された状態のコンテンツ画像IMの一例を示す図である。この場合、アバターAの頭部以外の身体の一部(この例では手)に関連オブジェクトROを固定することにより、アバターAと関連オブジェクトROとの相対位置関係が固定される。一方、関連オブジェクトROは、アバターAの頭部(仮想カメラVC)には固定されない。このため、アバターAの頭部がユーザの頭部(HMD)の動きに連動して動く一方で、関連オブジェクトROは、ユーザの頭部(HMD)の動きに連動して動くことはない。
【0074】
なお、アバターAと関連オブジェクトROとの相対位置関係を固定する方法は、上記のようにアバターAの頭部以外の身体の一部に関連オブジェクトROを固定する処理に限られない。例えば、関連オブジェクトROは、仮想空間VS内でアバターAと共に移動する仮想オブジェクトに対して固定されてもよい。例えば、仮想空間VS内を移動する移動オブジェクト(例えば、車、電車、ジェットコースター、飛行物体等の移動物体を模した仮想オブジェクト)にアバターAが乗っている場合、関連オブジェクトROは、当該移動オブジェクトに対して固定されてもよい。
【0075】
関連オブジェクトROに対する解除操作を示す操作情報が受信部11により受信された場合(ステップS406:YES、ステップS407:NO、ステップS409:YES)、操作実行部13は、解除操作が実行されたことに応じて、アバターAと関連オブジェクトROとの相対位置関係の固定を解除する(ステップS410)。すなわち、操作実行部13は、関連オブジェクトROを元の状態(すなわち、仮想空間VS内の所定位置に固定的に配置された状態)に戻す。なお、固定の解除後に関連オブジェクトROが配置される位置は、関連オブジェクトROが生成された直後の初期位置であってもよいし、固定の解除がされた位置であってもよい。
【0076】
ステップS5において、生成部14は、コンテンツ画像IMを生成する。すなわち、生成部14は、ステップS3において設定された仮想カメラVCの位置及び向きDに基づいて視界Rを特定し、当該視界Rを示すコンテンツ画像IMを生成する。関連オブジェクトROが生成されており、且つ、視界Rに関連オブジェクトROが含まれる場合には、コンテンツ画像IMには、背景画像BG(より具体的には、背景画像BGのうち視界Rに含まれる部分)及び関連オブジェクトROが含まれる(
図9及び
図10参照)。
【0077】
ステップS6において、送信部15は、ステップS5で生成部14によって生成されたコンテンツ画像IMを含むコンテンツデータをユーザ端末20に送信する。ステップS6で送信されたコンテンツデータは、ユーザ端末20の受信部24によって受信される。続いて、ユーザ端末20の表示制御部25が、当該コンテンツデータに含まれるコンテンツ画像を表示装置(HMD)上に表示する。なお、コンテンツ画像IMのレンダリング処理は、サーバ10(生成部14)によって実行されてもよいし、ユーザ端末20によって実行されてもよい。後者の場合には、ステップS6において、サーバ10からユーザ端末20には、コンテンツ画像IMを表示(描画)するために必要なデータ(実質的にコンテンツ画像IMを示すデータ)が送信されればよい。
【0078】
以上説明したステップS3~S6の処理は、ユーザによる利用終了操作が実行されるまで、所定時間間隔で継続的に実行される(ステップS7)。
【0079】
[効果]
以上説明したように、本開示の一側面に係るコンテンツ配信システムは、ユーザ端末により検出されたユーザの頭部の動きに応じて仮想空間内に設定される仮想カメラからの視界を示すコンテンツ画像をユーザ端末に配信する。コンテンツ配信システムは、少なくとも一つのプロセッサを備える。少なくとも一つのプロセッサは、仮想空間内に所定の主題に関する背景画像を生成し、背景画像とは独立して仮想空間内の所定位置に固定的に配置され、主題に関連するテキスト情報を含む関連オブジェクトを生成し、背景画像及び関連オブジェクトを含むコンテンツ画像をユーザ端末に配信する。
【0080】
本開示の一側面に係るコンテンツ配信方法は、ユーザ端末により検出されたユーザの頭部の動きに応じて仮想空間内に設定される仮想カメラからの視界を示すコンテンツ画像をユーザ端末に配信する。コンテンツ配信方法は、仮想空間内に所定の主題に関する背景画像を生成するステップと、背景画像とは独立して仮想空間内の所定位置に固定的に配置され、主題に関連するテキスト情報を含む関連オブジェクトを生成するステップと、背景画像及び関連オブジェクトを含むコンテンツ画像をユーザ端末に配信するステップと、を含む。
【0081】
本開示の一側面に係るコンテンツ配信プログラムは、ユーザ端末により検出されたユーザの頭部の動きに応じて仮想空間内に設定される仮想カメラからの視界を示すコンテンツ画像をユーザ端末に配信する処理をコンピュータに実行させる。コンテンツ配信プログラムは、仮想空間内に所定の主題に関する背景画像を生成するステップと、背景画像とは独立して仮想空間内の所定位置に固定的に配置され、主題に関連するテキスト情報を含む関連オブジェクトを生成するステップと、背景画像及び関連オブジェクトを含むコンテンツ画像をユーザ端末に配信するステップと、をコンピュータに実行させる。
【0082】
このような側面においては、以下のような効果が奏される。仮に、背景画像BGのみを含むコンテンツ画像IMがユーザに配信される場合について考える。この場合、コンテンツ画像IM中の背景画像BGがユーザの頭部の動きと一致せずに変化すると、ユーザは自身の頭部の動きと一致しない視覚的効果を受けることによって、映像酔い(いわゆるVR酔い)を起こす可能性がある。なお、上記のように背景画像BGがユーザの頭部の動きと一致せずに変化する例としては、背景画像BGがユーザの頭部の動きと独立して回転する場合等が挙げられる。一方、上記のコンテンツ配信システム1、コンテンツ配信方法、及びコンテンツ配信プログラムでは、コンテンツ画像IMには、背景画像BGと共に関連オブジェクトROが含まれる。関連オブジェクトROは、背景画像BGに表された主題に関連するテキスト情報Tを含んでいるため、ユーザの注意を惹き易い。また、関連オブジェクトROは、背景画像BGとは独立して仮想空間VS内の所定位置に固定的に配置されている。このため、仮にコンテンツ画像IM中の背景画像BGが上記のようにユーザの頭部の動きと一致せずに変化したとしても、コンテンツ画像IM中の関連オブジェクトROの見え方は、ユーザの頭部の動きに応じて自然に変化することになる。このように、コンテンツ画像IMの少なくとも一部に、ユーザの頭部の動きに応じて見え方が自然に変化し、且つユーザの注意を惹き易い対象物(関連オブジェクトRO)を含ませることにより、ユーザのVR酔いを抑制することができる。具体的には、背景画像BGがユーザの頭部の動きと一致せずに変化したとしても、ユーザは、コンテンツ画像IM中の関連オブジェクトROに注目することにより、関連オブジェクトROが配置された空間(仮想空間VS)内に自身が存在するという適切な感覚を得ることができる。その結果、コンテンツ画像IM中の背景画像BGの変化に起因するVR酔いが効果的に抑制される。
【0083】
他の側面に係るコンテンツ配信システムでは、コンテンツは、教育用コンテンツであってもよく、背景画像は、所定の学習対象に関する画像であってもよく、関連オブジェクトに含まれるテキスト情報は、学習対象についての説明文であってもよい。このような構成によれば、背景画像BGに映し出された学習対象(本実施形態では一例として最高裁判所)を見ることにより、ユーザに学習対象をリアルに体感させることができ、学習対象に対する興味を掻き立てることができる。また、関連オブジェクトROには、学習対象についての説明文が表示されるため、学習対象について学習しようとするユーザの注目を関連オブジェクトROへと自然に向かわせることができる。これにより、コンテンツ画像IM中の背景画像BGの変化に起因するVR酔いを一層効果的に抑制することができる。
【0084】
他の側面に係るコンテンツ配信システムでは、少なくとも一つのプロセッサは、背景画像を、仮想空間において仮想カメラから無限遠の距離上の面として定義される仮想球面上に配置してもよく、関連オブジェクトを、仮想カメラと背景画像との間において、仮想カメラから有限の距離に配置してもよい。このように、関連オブジェクトROを背景画像BGの一部ではなく、背景画像BGが配置される仮想球面よりも手前の位置(仮想カメラVCに近い位置)に配置することにより、コンテンツ画像IM中で識別し易い態様で関連オブジェクトROを表示させることができる。
【0085】
他の側面に係るコンテンツ配信システムでは、少なくとも一つのプロセッサは、仮想カメラと背景画像との間に、仮想的なマーカーオブジェクトを配置してもよく、マーカーオブジェクトに対するユーザによる第1操作が実行されたことに応じて、関連オブジェクトを生成してもよい。この構成によれば、ユーザの意思に応じて関連オブジェクトROが生成されるため、ユーザの注目を関連オブジェクトROへと自然に向かわせることができる。また、関連オブジェクトROを生成するためのマーカーオブジェクトMOは、背景画像BGの一部ではなく、背景画像BGが配置される仮想球面よりも手前の位置(仮想カメラVCに近い位置)に配置されるため、コンテンツ画像IM中で識別し易い態様でマーカーオブジェクトMOを表示させることができる。
【0086】
他の側面に係るコンテンツ配信システムでは、マーカーオブジェクトには、仮想カメラの移動及び背景画像の変更の少なくとも一方を実行する機能が関連付けられていてもよく、少なくとも一つのプロセッサは、マーカーオブジェクトに対するユーザによる第2操作が実行されたことに応じて、仮想カメラの移動及び背景画像の変更の少なくとも一方を実行してもよい。このような構成によれば、マーカーオブジェクトMOを利用して、複数の機能を実行させることができる。
【0087】
他の側面に係るコンテンツ配信システムでは、少なくとも一つのプロセッサは、仮想カメラが関連付けられたユーザのアバターを仮想空間内に生成してもよく、関連オブジェクトをユーザの頭部の動きと連動させることなく、アバターと関連オブジェクトとの相対的な位置関係を固定してもよい。例えば、仮想空間VS内において、アバターAが仮想空間VS内を移動する移動オブジェクト(例えば、車、電車、ジェットコースター、飛行物体等の移動物体を模した仮想オブジェクト)に乗って移動する場合が考えられる。このような場合、移動オブジェクトの移動方向が進行方向に対して上下左右に変化(回転)すると、ユーザの頭部(HMD)が動いていないにもかかわらず、アバターA(仮想カメラVC)の視界Rが変化するため、コンテンツ画像IM中の背景画像BGが変化(回転)する。このような場合、VR酔いが発生するおそれがある。ここで、現実世界においては、例えば映画館のスクリーン又はテレビ画面等でジェットコースターの乗客視点の映像を見た場合には、ユーザは、スクリーン又はディスプレイの外側にある物体(すなわち、ユーザに対して静止している物体)を視認することで、自身が存在する空間(現実空間)を適切に把握することができる。しかし、コンテンツ画像IMのみがユーザの視界として提供される仮想現実においては、コンテンツ画像IMの外側を視認することができない。このため、ユーザは自身(アバターA)が存在する空間(仮想空間VS)を適切に把握することができず、空間失調が生じ、めまい(VR酔い)を起こす可能性がある。本発明者は、このような状況でユーザのVR酔いを抑制するためには、コンテンツ画像IM中に、ユーザが存在する空間(仮想空間VS)を把握するための指標を表示することが有効であると考えた。すなわち、上記のように仮想空間VS内でアバターA(仮想カメラVC)がユーザの意思に関係なく移動する状況において、アバターAと関連オブジェクトROとの相対位置関係が固定されていれば、ユーザが頭部を動かさなければ、アバターAが仮想空間VS内を移動したとしてもコンテンツ画像IM中の関連オブジェクトROの表示位置は一定のままとなる。また、関連オブジェクトROはユーザの頭部の動きと連動するようにして仮想空間VS内を移動することがないため、ユーザが頭部を動かせば、その動きに応じてコンテンツ画像IM中の関連オブジェクトROの表示位置も自然と変化することになる。例えば、コンテンツ画像IMの中央に関連オブジェクトROが表示されている状態において、ユーザが頭部を右に動かした場合、コンテンツ画像IM中の関連オブジェクトROは左に動くことになる。すなわち、上記のようにアバターAと関連オブジェクトROとの相対位置関係を固定することにより、アバターAがユーザの意思に関わらずに仮想空間VS内を移動する場合(すなわち、このようなアバターAの移動に起因してコンテンツ画像IM中の背景画像BGが変化する場合)において、関連オブジェクトROを上述した指標として機能させることができる。その結果、ユーザのVR酔いを効果的に抑制することができる。
【0088】
[変形例]
以上、本開示について、実施形態に基づいて詳細に説明した。しかし、本開示は、上記実施形態に限定されない。本開示は、その要旨を逸脱しない範囲で様々な変形が可能である。
【0089】
例えば、生成部14は、コンテンツ画像IM中の背景画像BGがユーザの頭部(HMD)の動きと連動せずに変化する度合いを示す変化度を継続的に検知し、予め定められた閾値を超える変化度が検知された場合に、コンテンツ画像IM中の関連オブジェクトROのサイズを拡大させてもよい。
【0090】
例えば、生成部14は、直近の所定期間において所定時間間隔で定期的に取得されたHMD情報に基づいて、上記所定期間において視界Rがどのように変化するかを示す情報を把握することができる。すなわち、生成部14は、仮想空間VS内に設定された背景画像BGが一定であり且つアバターAの位置も一定であると仮定した場合に、上記所定期間中にコンテンツ画像IMに含まれる背景画像BGがどのように変化するか(変化するはずであったか)を示す情報(以下「第1情報」という。)を把握することができる。言い換えれば、第1情報は、ユーザが期待する(予測する)コンテンツ画像IM中の背景画像BGの変化を示す情報といえる。
【0091】
一方、生成部14は、上記所定期間中のコンテンツ画像IMを示す情報に基づいて、上記所定期間中にコンテンツ画像IMに含まれる背景画像BGが実際にどのように変化したかを示す情報(以下「第2情報」という。)を把握することができる。
【0092】
ここで、背景画像BGがユーザの頭部の動きに関わらずに変化する場合(例えば、
図6に示されるように仮想球面上の全面に配置された背景画像BGが仮想球面に沿って所定方向に回転移動する場合等)、或いはアバターAがユーザの意思に関わらずに移動する場合(例えば、上述したような移動オブジェクトにアバターAが乗っている場合等)には、第1情報と第2情報との間にずれが生じる。背景画像BGが変化する程度(例えば、回転速度)又はアバターAが移動する程度(例えば、移動速度)が大きい程、上記ずれも大きくなる。そして、上記ずれが大きくなる程、コンテンツ画像IMがユーザの期待(予測)から外れて変化する度合いが大きくなるため、VR酔いが生じ易くなる。
【0093】
そこで、生成部14は、一例として、上記の第1情報と第2情報との差分を変化度として検知してもよい。そして、生成部14は、予め定められた閾値を超える変化度が検知された場合に、コンテンツ画像IM中の関連オブジェクトROのサイズを拡大させてもよい。上記構成によれば、VR酔いが生じ易いと考えられる場面において、関連オブジェクトROをコンテンツ画像IM中で大きく表示することにより、ユーザの視線を関連オブジェクトROに効果的に向かわせて、VR酔いを効果的に抑制することができる。
【0094】
なお、コンテンツ画像IM中に関連オブジェクトROが配置されておらず、且つ、予め定められた閾値を超える変化度が検知された場合には、生成部14は、マーカーオブジェクトMOに対する第1操作が実行されたか否かにかかわらず、コンテンツ画像IM中に関連オブジェクトROを配置してもよい。
【0095】
図11は、上述した生成部14の処理が追加されたコンテンツ配信システム1の処理の一例を示すフローチャートである。
図11のフローチャートは、ステップS5とステップS6との間に新たなステップS11~S14を含む点において、
図4のフローチャートと相違している。
図4のフローチャートと相違する部分についてのみ説明する。
【0096】
ステップS11において、生成部14は、上述した変化度が予め定められた閾値を超えるか否かを判定する。変化度が閾値以下である場合(ステップS11:NO)には、ステップS5で生成されたコンテンツ画像IMを示すデータが、ステップS6においてユーザ端末20に配信(送信)される。
【0097】
一方、変化度が閾値を超えている場合(ステップS11:YES)、生成部14は、関連オブジェクトROがコンテンツ画像IM中(すなわち、視界R)にあるか否かを判定する(ステップS12)。関連オブジェクトROがコンテンツ画像IM中にある場合(ステップS12:YES)、生成部14は、コンテンツ画像IM中の関連オブジェクトROのサイズを拡大させる。なお、コンテンツ画像IM中の関連オブジェクトROのサイズの拡大は、関連オブジェクトRO自体のサイズを大きくすることにより行われてもよいし、関連オブジェクトROを仮想カメラVCに近づけることにより行われてもよい。
【0098】
関連オブジェクトROがコンテンツ画像IM中にない場合(ステップS12:NO)、生成部14は、マーカーオブジェクトMOに対する第1操作(すなわち、関連オブジェクトROを生成する操作)が実行されたか否かにかかわらず、コンテンツ画像IM中に関連オブジェクトROを配置する(ステップS14)。例えば、関連オブジェクトROが生成されていない場合(第1操作を未実行の場合)には、生成部14は、関連オブジェクトROを新たに生成し、コンテンツ画像IM中に配置してもよい。一方、関連オブジェクトROが生成されている場合(第1操作を実行済の場合)であって、コンテンツ画像IM(視界R)内に関連オブジェクトROが存在しない場合には、生成部14は、当該関連オブジェクトROをコンテンツ画像IMに含まれる位置に移動させてもよい。
【0099】
以上のように他の側面に係るコンテンツ配信システムでは、少なくとも一つのプロセッサは、コンテンツ画像中の背景画像がユーザの頭部の動きと連動せずに変化する度合いを示す変化度を継続的に検知してもよく、予め定められた閾値を超える変化度が検知された場合に、コンテンツ画像中の関連オブジェクトのサイズを拡大させてもよい。上記構成によれば、VR酔いが生じ易いと考えられる場面において、関連オブジェクトROをコンテンツ画像IM中で大きく表示することにより、ユーザの視線を関連オブジェクトROに効果的に向かわせて、VR酔いを効果的に抑制することができる。
【0100】
また、他の側面に係るコンテンツ配信システムでは、少なくとも一つのプロセッサは、コンテンツ画像中の背景画像がユーザの頭部の動きと連動せずに変化する度合いを示す変化度を継続的に検知してもよく、仮想空間内に関連オブジェクトが配置されておらず、且つ、予め定められた閾値を超える変化度が検知された場合に、マーカーオブジェクトに対する第1操作が実行されたか否かにかかわらず、コンテンツ画像中に関連オブジェクトを配置してもよい。上記構成によれば、VR酔いが生じ易いと考えられる場面において、それまでコンテンツ画像IM中に表示されていなかった関連オブジェクトROをコンテンツ画像IM中に表示することにより、ユーザの視線を関連オブジェクトROに効果的に向かわせて、VR酔いを効果的に抑制することができる。
【0101】
また、上記実施形態では、マーカーオブジェクトMOに対する操作(第1操作)をトリガとして関連オブジェクトROが生成されたが、関連オブジェクトROは、仮想空間VSが生成された時点、或いは、コンテンツ画像IM(視界R)内に学習対象(本実施形態では、最高裁判所)が写り込んだタイミング等において、自動的に仮想空間VS内に生成及び配置されてもよい。
【0102】
また、マーカーオブジェクトMOに対する操作は、仮想的なレーザポインタLPを用いた操作に限られない。ただし、仮想的なレーザポインタLPを用いることにより、ユーザに直感的且つ分かり易い操作インタフェースを提供することができる。
【0103】
また、上述したサーバ10の機能の一部は、ユーザ端末20で実行されてもよい。逆に、上述したユーザ端末20の機能の一部は、サーバ10で実行されてもよい。例えば、上記実施形態では、仮想空間VSの制御、コンテンツ画像IMの生成等の主要な処理は、サーバ10によって実行されたが、ユーザ端末20がこれらの処理の一部又は全部を実行してもよい。例えば、上述したサーバ10の仮想カメラ設定部12、操作実行部13、及び生成部14の処理の一部又は全部は、ユーザ端末20によって実行されてもよい。
【0104】
本開示において、「少なくとも一つのプロセッサが、第1の処理を実行し、第2の処理を実行し、…第nの処理を実行する。」との表現、又はこれに対応する表現は、第1の処理から第nの処理までのn個の処理の実行主体(すなわちプロセッサ)が途中で変わる場合を含む概念である。すなわち、この表現は、n個の処理のすべてが同じプロセッサで実行される場合と、n個の処理においてプロセッサが任意の方針で変わる場合との双方を含む概念である。
【0105】
少なくとも一つのプロセッサにより実行される方法の処理手順は上記実施形態での例に限定されない。例えば、上述したステップ(処理)の一部が省略されてもよいし、別の順序で各ステップが実行されてもよい。また、上述したステップのうちの任意の2以上のステップが組み合わされてもよいし、ステップの一部が修正又は削除されてもよい。あるいは、上記の各ステップに加えて他のステップが実行されてもよい。
【符号の説明】
【0106】
1…コンテンツ配信システム、10…サーバ、11…受信部、12…仮想カメラ設定部、13…操作実行部、14…生成部、15…送信部、20…ユーザ端末、21…HMD情報取得部、22…操作情報取得部、23…送信部、24…受信部、25…表示制御部、30…コンテンツデータベース、101…プロセッサ、A…アバター、BG…背景画像、D…仮想カメラの向き、IM…コンテンツ画像、MO…マーカーオブジェクト、P1…サーバプログラム、P2…クライアントプログラム、R…視界、RO…関連オブジェクト、VC…仮想カメラ、VS…仮想空間。
【要約】
【課題】コンテンツ画像中の背景画像の変化に起因するVR酔いを効果的に抑制する。
【解決手段】一実施形態に係るコンテンツ配信システムは、ユーザ端末により検出されたユーザの頭部の動きに応じて仮想空間内に設定される仮想カメラからの視界を示すコンテンツ画像をユーザ端末に配信するコンテンツ配信システムであって、少なくとも一つのプロセッサを備える。少なくとも一つのプロセッサは、仮想空間内に所定の主題に関する背景画像を生成し、背景画像とは独立して仮想空間内の所定位置に固定的に配置され、主題に関連するテキスト情報を含む関連オブジェクトを生成し、背景画像及び関連オブジェクトを含むコンテンツ画像をユーザ端末に配信する。
【選択図】
図9