(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-06-23
(45)【発行日】2022-07-01
(54)【発明の名称】配信ユーザの動きに基づいて生成されるキャラクタオブジェクトのアニメーションを含む動画をライブ配信する動画配信システム、動画配信方法及び動画配信プログラム
(51)【国際特許分類】
G06T 13/40 20110101AFI20220624BHJP
H04N 21/234 20110101ALI20220624BHJP
H04N 21/431 20110101ALI20220624BHJP
【FI】
G06T13/40
H04N21/234
H04N21/431
(21)【出願番号】P 2018248253
(22)【出願日】2018-12-28
【審査請求日】2021-06-11
(73)【特許権者】
【識別番号】504437801
【氏名又は名称】グリー株式会社
(74)【代理人】
【識別番号】100126572
【氏名又は名称】村越 智史
(72)【発明者】
【氏名】大塚 直英
(72)【発明者】
【氏名】安川 貴志
(72)【発明者】
【氏名】山内 洋典
(72)【発明者】
【氏名】栗田 健悟
【審査官】村松 貴士
(56)【参考文献】
【文献】特開2016-152521(JP,A)
【文献】特開2015-090526(JP,A)
【文献】特開2019-192176(JP,A)
【文献】“CASE 01 #電脳少女シロ #ばあちゃる #Unity” ,CG WORLD,株式会社ボーンデジタル,2018年05月01日,vol.237,p.34-39
【文献】“第2部:コンシューマー用途 誰でも「VTuber」時代へ 格安ツールやセンサーが後押し”,日経エレクトロニクス,日経BP社,2018年07月20日,第1194号,p.28-32
(58)【調査した分野】(Int.Cl.,DB名)
G06T 13/40
G06T 19/00
H04N 21/00 - 21/858
A63F 13/00 - 13/98
G06F 3/048 - 3/04895
(57)【特許請求の範囲】
【請求項1】
仮想空間と配信ユーザの動きに基づいて生成されるキャラクタオブジェクトのアニメーションとを含む動画を視聴ユーザのクライアント装置によってライブ視聴可能にするシステムであって、
一又は複数のコンピュータプロセッサを備え、
前記一又は複数のコンピュータプロセッサは、コンピュータ読み取り可能な命令を実行することにより、
前記視聴ユーザから前記動画への参加要求を受け付けたことに応じて、当該視聴ユーザが第1グループと第2グループのいずれに属するかを判定し、
前記視聴ユーザが前記第1グループに属すると判定された場合には前記視聴ユーザの特定アバタを前記仮想空間内の第1領域に配置し、
前記視聴ユーザが前記第2グループに属すると判定された場合には参加条件を充足したことに応じて前記特定アバタを前記仮想空間内の第2領域に配置する、
システム。
【請求項2】
前記第1領域は、前記仮想空間において前記第2領域よりも前記キャラクタオブジェクトの近くに配置されている、
請求項1に記載のシステム。
【請求項3】
前記参加条件は、前記第2領域に表示されている前記視聴ユーザ以外のユーザのアバタの数が前記第2領域ついて設定された表示数の上限よりも少ないことである、
請求項1又は請求項2に記載のシステム。
【請求項4】
前記参加条件は、前記視聴ユーザが前記配信ユーザによって選択されることである、
請求項1又は請求項2に記載のシステム。
【請求項5】
前記特定アバタを前記仮想空間内に表示するためのアバタデータを記憶するストレージをさらに備え、
前記ストレージから読み出された前記アバタデータに基づいて前記特定アバタを前記仮想空間内に表示させる、
請求項1から請求項4のいずれか1項に記載のシステム。
【請求項6】
前記仮想空間に配置されている前記特定アバタに対する動作指示を受け付け、当該動作指示に基づいて、前記仮想空間内に表示されている前記特定アバタの動きを制御する、
請求項1から請求項5のいずれか1項に記載のシステム。
【請求項7】
前記特定アバタが前記仮想空間に配置されている間に前記特定アバタについての表示要求を受け付け、当該表示要求が許可されたことに応じて、前記キャラクタオブジェクトが配置されている第3領域に前記特定アバタを表示する、
請求項1から請求項6のいずれか1項に記載のシステム。
【請求項8】
前記第3領域への前記特定アバタの配置は、前記特定アバタの表示要求を受け付けた後に前記視聴ユーザが前記配信ユーザによって選択されたときに行われる、
請求項7に記載のシステム。
【請求項9】
一又は複数のコンピュータプロセッサがコンピュータ読み取り可能な命令を実行することにより、
仮想空間と配信ユーザの動きに基づいて生成されるキャラクタオブジェクトのアニメーション
とを含む動画を視聴ユーザのクライアント装置によってライブ視聴可能にする方法であって、
前記視聴ユーザから前記動画への参加要求を受け付けたことに応じて、当該視聴ユーザが第1グループと第2グループのいずれに属するかを判定する工程と、
前記視聴ユーザが前記第1グループに属すると判定された場合には前記視聴ユーザの特定アバタを前記仮想空間内の第1領域に配置する工程と、
前記視聴ユーザが前記第2グループに属する
と判定された場合には参加条件を充足したことに応じて前記特定アバタを前記仮想空間内の第2領域に配置する工程と、
を備える方法。
【請求項10】
仮想空間と配信ユーザの動きに基づいて生成されるキャラクタオブジェクトのアニメーション
とを含む動画を視聴ユーザのクライアント装置によってライブ視聴可能にするプログラムであって、
一又は複数のコンピュータプロセッサに、
前記視聴ユーザから前記動画への参加要求を受け付けたことに応じて、当該視聴ユーザが第1グループと第2グループのいずれに属するかを判定する工程と、
前記視聴ユーザが前記第1グループに属すると判定された場合には前記視聴ユーザの特定アバタを前記仮想空間内の第1領域に配置する工程と、
前記視聴ユーザが前記第2グループに属すると判定された場合には参加条件を充足したことに応じて前記特定アバタを前記仮想空間内の第2領域に配置する工程と、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本明細書における開示は、配信ユーザの動きに基づいて生成されるキャラクタオブジェクトのアニメーションを含む動画をライブ配信する動画配信システム、動画配信方法及び動画配信プログラムに関する。
【背景技術】
【0002】
従来から、配信ユーザの動きに基づいてキャラクタオブジェクトのアニメーションを生成し、かかるキャラクタオブジェクトのアニメーションを含む動画をライブ配信する動画配信システムが知られている。このような動画配信システムは、例えば、特開2015-184689号公報(特許文献1)及び「長谷川 雄介,ヴァーチャルアイドル新時代の幕開け PROJECT Maria,CG WORLD,日本,株式会社ボーンデジタル,2017年11月10日,第231巻,pp.74-79」(非特許文献1)に開示されている。
【0003】
特開2012-120098号公報(特許文献2)に開示されているように、動画を視聴する視聴ユーザからの要求に応じて、当該視聴ユーザのアバタを含む画像を配信中の動画の背景領域に表示させる動画配信システムも知られている。視聴ユーザは、アバタを介して自らのコメントを動画に投稿することができる。このように、視聴ユーザは、配信中の動画にアバタを介して参加することができる。
【0004】
特開2017-187995号公報(特許文献3)には、仮想的な部屋に入室したアバタの画像を用いて複数のユーザ間での音声通話を行うソーシャルメディアシステムが開示されている。同公報に記載のソーシャルメディアシステムでは、各部屋に入室可能なアバタの数に上限が定められている。ある部屋に対する入室要求リクエストがなされると、その部屋に既に入室しているアバタの人数が当該部屋について設定された制限人数を超えない場合に、当該入室要求リクエストが許可される。ある部屋への入室要求リクエストが許可されると、当該部屋に新たなアバタの入室が許可される。
【先行技術文献】
【特許文献】
【0005】
【文献】特開2015-184689号公報
【文献】特開2012-120098号公報
【文献】特開2017-187995号公報
【非特許文献】
【0006】
【文献】長谷川 雄介,ヴァーチャルアイドル新時代の幕開け PROJECT MariA,CG WORLD,日本,株式会社ボーンデジタル,2017年11月10日,第231巻,pp.74-79
【発明の概要】
【発明が解決しようとする課題】
【0007】
動画配信システムにおいて、配信されている動画へのアバタの参加を無制限に認めると、多数のアバタを表示するための処理負荷が大きくなるという問題がある。また、アバタの数が多くなると、アバタを介して行われるコメント投稿やギフティングのための処理負荷が大きくなるという問題がある。アバタの行動に関する処理負荷が高くなりすぎると、配信動画の再生やアバタを用いたコミュニケーション機能が正常に提供できなくなるおそれがある。
【0008】
他方、配信システムにおいて配信中の動画に参加できるアバタの数を制限すると、当該配信システムや当該動画を配信している配信ユーザとのエンゲージメントが高い視聴ユーザの参加を制限してしまうおそれがある。動画配信システムにおいては、エンゲージメントの高い視聴ユーザを獲得し維持することが、配信ユーザと視聴ユーザとのコミュニティを活性化しそのコミュニティを健全に運営するために重要と考えられる。
【0009】
本開示の目的は、上述した従来技術の問題の少なくとも一部を解決又は緩和する技術的な改善を提供することである。本開示のより具体的な目的の一つは、アバタを参加させることによる処理負荷を抑制するとともにエンゲージメントの高い視聴ユーザの参加を妨げない動画配信システム、動画配信方法及び動画配信プログラムを提供することである。
【課題を解決するための手段】
【0010】
本発明の一態様は、仮想空間と配信ユーザの動きに基づいて生成されるキャラクタオブジェクトのアニメーションとを含む動画をライブ配信する動画配信システムに関する。当該動画配信システムは、一又は複数のコンピュータプロセッサを備える。当該一又は複数のコンピュータプロセッサは、コンピュータ読み取り可能な命令を実行することにより、前記動画を視聴する視聴ユーザから前記動画への参加要求を受け付けたことに応じて、当該視聴ユーザが第1グループと第2グループのいずれに属するかを判定し、前記視聴ユーザが前記第1グループに属すると判定された場合には前記視聴ユーザの特定アバタを前記仮想空間内の第1領域に配置し、前記視聴ユーザが前記第2グループに属すると判定された場合には参加条件を充足したことに応じて前記特定アバタを前記仮想空間内の第2領域に配置する。
【0011】
一実施形態において、前記第1領域は、前記仮想空間において前記第2領域よりも前記キャラクタオブジェクトの近くに配置されている。
【0012】
一実施形態において、前記参加条件は、前記第2領域に表示されている前記視聴ユーザ以外のユーザのアバタの数が前記第2領域ついて設定された表示数の上限よりも少ないことである。
【0013】
一実施形態において、前記参加条件は、前記視聴ユーザが前記配信ユーザによって選択されることである。
【0014】
一実施形態による動画配信システムは、前記特定アバタを前記仮想空間内に表示するためのアバタデータを記憶するストレージをさらに備え、前記ストレージから読み出された前記アバタデータに基づいて前記特定アバタを前記仮想空間内に表示させる。
【0015】
一実施形態による動画配信システムは、前記仮想空間に配置されている前記特定アバタに対する動作指示を受け付け、当該動作指示に基づいて、前記仮想空間内に表示されている前記特定アバタの動きを制御する。
【0016】
一実施形態による動画配信システムは、前記特定アバタが前記仮想空間に配置されている間に前記特定アバタについての表示要求を受け付け、当該表示要求が許可されたことに応じて、前記キャラクタオブジェクトが配置されている第3領域に前記特定アバタを表示する。
【0017】
一実施形態において、前記第3領域への前記特定アバタの配置は、前記特定アバタの表示要求を受け付けた後に前記視聴ユーザが前記配信ユーザによって選択されたときに行われる。
【0018】
本発明の一態様は、一又は複数のコンピュータプロセッサがコンピュータ読み取り可能な命令を実行することにより、配信ユーザの動きに基づいて生成されるキャラクタオブジェクトのアニメーションを含む動画をライブ配信する動画配信方法に関する。当該動画配信方法は、前記動画を視聴する視聴ユーザから前記動画への参加要求を受け付けたことに応じて、当該視聴ユーザが第1グループと第2グループのいずれに属するかを判定する工程と、前記視聴ユーザが前記第1グループに属すると判定された場合には前記視聴ユーザの特定アバタを前記仮想空間内の第1領域に配置する工程と、前記視聴ユーザが前記第2グループに属すると判定された場合には参加条件を充足したことに応じて前記特定アバタを前記仮想空間内の第2領域に配置する工程と、を備える。
【0019】
本発明の一態様は、配信ユーザの動きに基づいて生成されるキャラクタオブジェクトのアニメーションを含む動画をライブ配信する動画配信プログラムに関する。当該動画配信プログラムは、一又は複数のコンピュータプロセッサに、前記動画を視聴する視聴ユーザから前記動画への参加要求を受け付けたことに応じて、当該視聴ユーザが第1グループと第2グループのいずれに属するかを判定する工程と、前記視聴ユーザが前記第1グループに属すると判定された場合には前記視聴ユーザの特定アバタを前記仮想空間内の第1領域に配置する工程と、前記視聴ユーザが前記第2グループに属すると判定された場合には参加条件を充足したことに応じて前記特定アバタを前記仮想空間内の第2領域に配置する工程と、を実行させる。
【発明の効果】
【0020】
本発明の実施形態によれば、アバタを参加させることによる処理負荷を抑制するとともにエンゲージメントの高い視聴ユーザの参加を妨げないようにできる。
【図面の簡単な説明】
【0021】
【
図1】一実施形態による動画配信システムを示すブロック図である。
【
図2】
図1の動画配信システムで配信される動画を制作するスタジオの設備を模式的に示す模式図である。
【
図3】
図1の動画配信システムにおいて記憶されるユーザデータを説明する図である。
【
図4】
図1の動画配信システムにおいて記憶されるアバタデータを説明する図である。
【
図5】
図1の動画配信システムにおいて記憶される参加管理データを説明する図である。
【
図6】
図1の動画配信システムにおいて配信される動画に表示される仮想空間を説明する図である。
【
図7a】一実施形態においてクライアント装置10aに表示される表示画面の例を示す図である。
図7aの表示画面においては動画にアバタを参加させるための参加要求ボタンが表示されている。
【
図7b】一実施形態においてクライアント装置10aに表示される表示画面の例を示す図である。
図7bの表示画面においては、アバタを配信ユーザのキャラクタと共に表示することを要求するための表示要求ボタンが表示されている。
【
図7c】別の仮想カメラで撮影された仮想空間の画像を含む表示画面の例を示す図である。
【
図7d】さらに別の仮想カメラで撮影された仮想空間の画像を含む表示画面の例を示す図である。
【
図7e】フィーチャー表示要求がなされたことを示す表示画面の例を示す図である。
【
図7f】アバタと配信ユーザのキャラクタとが共に表示されている表示画面の例を示す図である。
【
図8】一実施形態における動画配信処理の流れを示すフロー図である。
【
図9】一実施形態においてアバタの参加要求を処理する流れを示すフロー図である。
【
図10】一実施形態においてアバタの表示要求を処理する流れを示すフロー図である。
【発明を実施するための形態】
【0022】
以下、図面を適宜参照し、本発明の様々な実施形態を説明する。複数の図面において同一の又は類似する構成要素には同じ参照符号が付される。
【0023】
図1から
図6を参照して、一実施形態による動画配信システムについて説明する。
図1は、一実施形態による動画配信システム1を示すブロック図であり、
図2は、動画配信システム1で配信される動画の制作が行われるスタジオの設備を模式的に示す模式図であり、
図3から
図5は、動画配信システム1において記憶される情報を説明するための図であり、
図6は、動画に表示される仮想空間を模式的に示す図である。
【0024】
動画配信システム1は、クライアント装置10a~10cと、サーバ装置20と、スタジオユニット30と、ストレージ25と、を備える。クライアント装置10a~10cと、サーバ装置20と、ストレージ25と、は、ネットワーク15を介して相互に通信可能に接続されている。サーバ装置20は、後述するように、キャラクタのアニメーションを含む動画を配信するように構成される。この動画に含まれるキャラクタは、仮想空間内でモーション制御されてもよい。
【0025】
動画は、サーバ装置20からクライアント装置10a~10cの各々に配信され得る。クライアント装置10aのユーザである第1視聴ユーザ、クライアント装置10bのユーザである第2視聴ユーザ、及びクライアント装置10cのユーザである第3視聴ユーザは、配信された動画を各クライアント装置により視聴することができる。動画配信システム1は、3台よりも少ない数のクライアント装置を備えていてもよく、3台よりも多い数のクライアント装置を備えていてもよい。クライアント装置10a~10c及びこれら以外にクライアント装置を利用してサーバ装置20から配信された動画を視聴するユーザを視聴ユーザと総称する。サーバ装置20から配信される動画の視聴は、当該動画を視聴するためのアプリケーションソフトウェアを実行可能なクライアント装置10a~10cによって行われてもよい。サーバ装置20から配信された動画を視聴するために、クライアント装置10a~クライアント装置10cに、当該動画を視聴するための機能を実現する命令セットを有するアプリケーションソフトウェアをダウンロード及びインストールしてもよい。このようなサーバ装置20から配信された動画を視聴する機能を有するアプリケーションソフトウェアを「視聴アプリケーションソフトウェア」又は「視聴アプリ」と呼ぶことがある。サーバ装置20から配信される動画の視聴は、視聴アプリの機能を実行することにより行われてもよい。一実施形態においては、サーバ装置20から配信される動画の視聴は、クライアント装置10a~クライアント装置10cのうち視聴アプリがインストールされたクライアント装置によって行われ、視聴アプリがインストールされていないクライアント装置からは実行できなくてもよい。サーバ装置20から配信される動画を視聴する視聴ユーザは、自らのアバタを当該動画に表示させることができる。言い換えると、視聴ユーザは、自らのアバタを介して、配信されている動画に参加することができる。視聴ユーザは、配信されている動画に自らのアバタを表示させ、そのアバタを介して、動画の配信ユーザ(又は配信されている動画内のキャラクタ)や他の視聴ユーザと交流することができる。
【0026】
クライアント装置10a~10cは、スマートフォンなどの情報処理装置である。クライアント装置10a~10cは、スマートフォン以外に、携帯電話機、タブレット端末、パーソナルコンピュータ、電子書籍リーダー、ウェアラブルコンピュータ、ゲーム用コンソール、及びこれら以外の動画を再生可能な各種情報処理装置であってもよい。クライアント装置10a~10cの各々は、コンピュータプロセッサ、メモリ、通信I/F、ディスプレイ、ジャイロセンサ等の各種センサを備えるセンサユニット、マイク等の集音装置、及び各種情報を記憶するストレージを備えていてもよい。
【0027】
クライアント装置10a~10cのディスプレイは、表示パネルと、タッチパネルと、を有する。タッチパネルは、プレイヤのタッチ操作(接触操作)を検出することができるように構成されている。タッチパネルは、プレイヤのタップ、ダブルタップ、ドラッグ等の各種タッチ操作を検出することができる。タッチパネルは、静電容量式の近接センサを備え、プレイヤの非接触操作を検出可能に構成されてもよい。
【0028】
視聴ユーザは、クライアント装置10a~10cのタッチパネルを介して、配信された動画に関するメッセージ又はそれ以外のメッセージを入力することができる。このメッセージは、例えば、テキスト形式のメッセージ、静止画形式のメッセージ、動画形式のメッセージ、及びこれら以外の任意の形式の電子的なメッセージであってもよい。クライアント装置10a~10cの各々は、視聴ユーザによって入力されたメッセージをサーバ装置20に投稿(送信)するように構成され得る。
【0029】
図示の実施形態において、サーバ装置20は、コンピュータプロセッサ21と、通信I/F22と、ストレージ23と、を備えている。
【0030】
コンピュータプロセッサ21は、ストレージ23又はそれ以外のストレージからオペレーティングシステムや様々な機能を実現する様々なプログラムをメモリにロードし、ロードしたプログラムに含まれる命令を実行する演算装置である。コンピュータプロセッサ21は、例えば、CPU、MPU、DSP、GPU、これら以外の各種演算装置、又はこれらの組み合わせである。コンピュータプロセッサ21は、ASIC、PLD、FPGA、MCU等の集積回路により実現されてもよい。
図1においては、コンピュータプロセッサ21が単一の構成要素として図示されているが、コンピュータプロセッサ21は複数の物理的に別体のコンピュータプロセッサの集合であってもよい。本明細書において、コンピュータプロセッサ21によって実行されるとして説明されるプログラム又は当該プログラムに含まれる命令は、単一のコンピュータプロセッサで実行されてもよいし、複数のコンピュータプロセッサにより分散して実行されてもよい。また、コンピュータプロセッサ21によって実行されるプログラム又は当該プログラムに含まれる命令は、複数の仮想コンピュータプロセッサにより実行されてもよい。コンピュータプロセッサ21により実現される機能は後述する。
【0031】
通信I/F22は、ハードウェア、ファームウェア、又はTCP/IPドライバやPPPドライバ等の通信用ソフトウェア又はこれらの組み合わせとして実装される。サーバ装置20は、通信I/F22を介して、他の装置とデータを送受信することができる。
【0032】
ストレージ23は、コンピュータプロセッサ21によりアクセスされる記憶装置である。ストレージ23は、例えば、磁気ディスク、光ディスク、半導体メモリ、又はデータを記憶可能な前記以外の各種記憶装置である。ストレージ23には、様々なプログラムが記憶され得る。ストレージ23に記憶され得るプログラム及び各種データの少なくとも一部は、サーバ装置20とは物理的に別体のストレージ(例えば、ストレージ25)に格納されてもよい。ストレージ23に格納されるデータの詳細については後述する。
【0033】
スタジオユニット30の構成要素の多くは、例えば、
図2に示されているスタジオルームRに配置されている。図示のように、スタジオルームRにおいては、アクターA1がパフォーマンスを行っている。スタジオユニット30は、アクターA1の動き及び表情を検出し、検出した情報をサーバ装置20に出力するように構成されている。
【0034】
アクターA1は、スタジオユニット30に備えられる後述のセンサ群によって動きや表情がキャプチャされる対象である。図示の実施形態において、アクターA1は、トーク、パフォーマンス、及びこれら以外の動画として配信される番組を進行するための行動を行う人間である。アクターA1は、人間以外に、動物またはこれ以外の運動する任意の物体(非生物)であってもよい。アクターA1は、例えば、自立運動可能なロボットであってもよい。スタジオルームR内のアクターの数は、1であってもよいし、3以上であってもよい。
【0035】
スタジオユニット30は、アクターA1に装着される6つのモーションセンサ31a~31fと、アクターA1の左手に把持されているコントローラ33aと、アクターA1の右手に把持されているコントローラ33bと、装着具37bを介してアクターA1の頭部に取り付けられるカメラ37aと、アクターA1の左腕に装着されている腕時計型のアクターデバイス91と、を有する。装着具37bには、音声データを取得するためのマイクが取り付けられてもよい。このマイクは、アクターA1の発話を音声データとして取得することができる。マイクは、装着具37bを介してアクターA1に装着される装着型のマイクであってもよく、スタジオルームRの床、壁、又は天井に設置される設置型のものであってもよい。スタジオユニット30は、上記の構成要素に加えて、ベースステーション35aと、ベースステーション35bと、デジタルカメラ36aと、ディスプレイ39と、を有する。スタジオルームRとガラス窓を隔てた隣室には、サポーターコンピュータ40が設置されている。サーバ装置20は、サポーターコンピュータ40が設置されている部屋と同じ部屋に設置されてもよい。
【0036】
モーションセンサ31a~31fは、ベースステーション35a及びベースステーション35bと協働して、自らの位置及び向きを検出する。一実施形態において、ベースステーション35a及びベースステーション35bは、多軸レーザーエミッターである。ベースステーション35aは、同期用の点滅光を発した後に、例えば鉛直軸の周りでレーザー光を走査する。ベースステーション35bは、例えば水平軸の周りでレーザー光を走査する。モーションセンサ31a~31fはそれぞれ、ベースステーション35a及びベースステーション35bからの点滅光及びレーザー光の入射を検知する光センサーを複数備えてもよい。モーションセンサ31a~31fはそれぞれ、点滅光の入射タイミングとレーザー光の入射タイミングとの時間差、各光センサーでの受光時間、各光センサーが検知したレーザー光の入射角度、及び必要に応じてこれら以外の情報に基づいて、自らの位置及び向きを検出してもよい。モーションセンサ31a~31fは、例えば、HTC CORPORATIONから提供されているVive Trackerであってもよい。ベースステーション35a及びベースステーション35bは、例えば、HTC CORPORATIONから提供されているベースステーションであってもよい。
【0037】
モーションセンサ31a~31fの各々において算出された各モーションセンサの位置及び向きを示す検出情報は、サーバ装置20に送信される。この検出情報は、モーションセンサ31a~31fの各々からサーバ装置20に無線送信されてもよい。ベースステーション35a及びベースステーション35bは、一定のインターバルで点滅光の発光及びレーザー光の走査を行うので、各モーションセンサの検出情報は、当該インターバルごとに更新される。なお、ベースステーションは、3つ以上の複数であってもよい。ベースステーションの位置は適宜変更してもよい。例えば、
図2に示されているトラッキングセンサの検出対象の空間の上方の隅部に配されているベースステーションに加えて若しくは替えて、上方位置及び床面に近い下方位置に対をなすように配置されたベースステーションが設けられてもよい。例えば、ベースステーションは4つであってもよい。
【0038】
図示の実施形態において、アクターA1は、6つのモーションセンサ31a~31fを装着している。モーションセンサ31a,31b,31c,31d,31e,及び31fはそれぞれ、アクターA1の左手甲、右手甲、左足甲、右足甲、腰、及び頭頂に装着されている。モーションセンサ31a~31fは、装着具を介してアクターA1に装着されてもよい。
図2に示されているモーションセンサ31a~31fは例示である。モーションセンサ31a~31fは、アクターA1の様々な部位に装着され得る。アクターA1に装着されるモーションセンサの数は5以下であってもよいし7以上であってもよい。このように、アクターA1の体の各部に装着されたモーションセンサ31a~31fの位置及び向きを検出することにより、アクターA1の体の動きを検出することができる。アクターA1の体の動きは、光学モーションキャプチャシステムにより検出されてもよい。
【0039】
一実施形態においては、アクターA1に装着される複数のモーションセンサの各々に多数の赤外LEDを搭載し、この赤外LEDからの光を、スタジオルームRの床や壁に設けられた赤外線カメラで検知することで、当該モーションセンサの各々の位置及び向きを検出してもよい。赤外LEDに代えて可視光LEDを使用し、この可視光LEDからの光を可視光カメラで検出することで、当該モーションセンサの各々の位置及び向きを検出してもよい。このように、アクターに装着される複数のモーションセンサの各々に発光部(例えば、赤外LEDや可視光LED)を設け、この発光部からの光をスタジオルームR内に設けられた受光部(例えば、赤外線カメラや可視光カメラ)で検出することで、当該モーションセンサの各々の位置及び向きを検出してもよい。
【0040】
一実施形態においては、モーションセンサ31a~31fに代えて、複数の反射マーカーを用いることができる。反射マーカーは、アクターA1の各々に粘着テープなどにより貼付される。このように反射マーカーが貼付されたアクターA1を撮影して撮影データを生成し、この撮影データを画像処理することにより、反射マーカーの位置及び向きを検出することができる。一実施形態において、アクターA1に体の動きの検出は、慣性センサが内蔵されたスーツを用いて行われてもよい。アクターA1に着用された慣性センサ内蔵スーツの慣性センサから出力されるセンサ信号を解析することにより、アクターA1の動きを検出することができる。慣性センサが内蔵されたスーツとして、Xsens.com社が開発するMVNと呼ばれるモーションキャプチャシステムに対応した慣性センサ内蔵スーツを用いることができる。
【0041】
コントローラ33a及びコントローラ33bは、アクターA1の操作に応じたコントロール信号をサーバ装置20に出力する。
【0042】
デジタルカメラ36aは、アクターA1を撮像して撮像データを生成する。デジタルカメラ36aの位置、撮像方向、及び画角は、操作者の操作に応じて設定される。デジタルカメラ36aは、その位置、撮像方向、及び画角を示す撮像設定情報をサーバ装置20に送信する。同様に、デジタルカメラ36bの位置、撮像方向、及び画角は、操作者の操作に応じて設定される。図示の実施形態において、デジタルカメラ36aは、アクターA1の左前方に設けられている。
【0043】
カメラ37aは、上記のように、アクターA1の頭部に取り付けられている。例えば、カメラ37aは、アクターA1の顔を撮像できるように配置されている。カメラ37aは、アクターA1の顔を連続的に撮像し、アクターA1の顔の撮像データを取得する。カメラ37aは、アクターA1の顔の撮像データをサーバ装置20に送信する。カメラ37aは、人物の顔の奥行きを検出可能な3Dカメラであってもよい。カメラ37aは、例えば、Apple Incが提供するiPhone Xに備えられたLIDARデバイスであってもよい。iPhone Xは、例えば、アクターA1の頭部に装着されたヘッドギアに取り付けられる。カメラ37aは、アクターA1及びA2に装着されるのではなく、スタジオルームR内に設置されたカメラスタンドに設置される固定型のものであってもよい。
【0044】
ディスプレイ39は、サポートコンピュータ40から受信した情報を表示するように構成される。サポートコンピュータ40からディスプレイ39に送信される情報は、例えば、テキスト情報、画像情報、及びこれら以外の各種情報を含み得る。ディスプレイ39は、アクターA1によって視認可能な位置に配置される。
【0045】
アクターデバイス91は、サーバ装置20からの駆動信号に応じて、アクターA1が知覚可能な音以外の刺激を発生させるように構成される。アクターデバイス91が音を発生させると、配信コンテンツに当該音が合成されてしまうおそれがあるため、アクターデバイス91は、音以外の刺激を発生させるように構成される。アクターデバイス91は、聴覚刺激(典型的には、音)以外の刺激、例えば、触覚刺激、視覚刺激、又はこれら以外の聴覚刺激とは異なるアクターA1によって知覚可能な刺激を発生させることができる。アクターデバイス91は、アクチュエータ91aを備えてもよい。アクチュエータ91aは、サーバ装置20からの駆動信号により作動するように構成される。アクチュエータ91aは、駆動信号が入力されると振動するように構成されてもよい。アクターデバイス91として、例えば、Apple Incから提供されているApple Watchが用いられ得る。アクターデバイス91は、腕時計型以外の様々な形状をとり得る。アクターA1は、互いに同じ種類の又は互いと異なる種類の複数のアクターデバイス91を装着することができる。アクターデバイス91は、サーバ装置20以外からの駆動信号に応じて作動するように構成されてもよい。複数のアクターデバイス91は、アクターA1を識別するアクターIDと対応付けられていてもよい。アクターデバイス91は、アクチュエータ91aを介して触覚刺激をアクターA1に伝達することができる。アクターデバイス91は、LED(Light Emitting Diode)や知覚ディスプレイデバイスであってもよい。LEDや知覚ディスプレイデバイスは、視覚刺激を発生することができる。知覚ディスプレイデバイスは、電極から流れる電流によって皮膚下の神経軸索を駆動する電気触覚ディスプレイであってもよい。
【0046】
図示の実施形態において、サポーターコンピュータ40は、スタジオルームRの隣室に設置されている。サポーターコンピュータ40が設置されている部屋とスタジオルームRとはガラス窓によって隔てられているため、サポーターコンピュータ40のオペレータ(本明細書では「サポーター」ということがある。)は、アクターA1を視認できる。図示の実施形態においては、サポーターコンピュータ40のオペレータとして、サポーターB1及びサポーターB2が在室している。
【0047】
サポーターコンピュータ40は、サポーターB1及びサポーターB2の操作に応じて、スタジオユニット30の構成要素の設定を変更することができるように構成されてもよい。サポーターコンピュータ40は、例えば、ベースステーション35a及びベースステーション35bによる走査インターバルの設定、デジタルカメラ36a及びトラッキングセンサ36bの位置または向きの設定、及びこれら以外の各種機器の各種設定の変更を行うことができる。後述するアクティブセンサの切り替えは、サポーターB1及びサポーターB2によるサポーターコンピュータ40の操作に基づいて実行され得る。サポーターB1及びサポーターB2の少なくとも一方は、サポーターコンピュータ40にメッセージを入力し、当該入力されたメッセージをディスプレイ39に表示することができる。
【0048】
図2に示されているスタジオユニット30の構成要素及び機能は例示である。本発明に適用可能なスタジオユニット30は、図示されていない様々な構成要素を備え得る。スタジオユニット30は、プロジェクタを備えていてもよい。当該プロジェクタは、クライアント装置10aまたはそれ以外のクライアント装置に配信される動画をスクリーンSに投影することができる。
【0049】
他方、配信される動画を生成するための撮影は、より簡易な設備によって実行されてもよい。例えば、スマートフォンなどの情報処理端末によりアクターの顔の動きのデジタル表現であるフェイスモーションデータを生成し、当該フェイスモーションデータに基づいて、アクターの表情の動きに同期してその表情が動くがボディは動かないキャラクタオブジェクトのアニメーションを生成してもよい。このようなフェイスモーションデータの生成は、クライアント装置10a~クライアント装置10cにより行われてもよい。フェイスモーションデータの生成を行うために、クライアント装置10a~クライアント装置10cに、フェイスモーションデータを生成するための機能を実現する命令セットを有するアプリケーションソフトウェアをダウンロード及びインストールしてもよい。このようなフェイスモーションデータの生成を行う機能を有するアプリケーションソフトウェアを「配信アプリケーションソフトウェア」又は「配信アプリ」と呼ぶことがある。配信アプリと既述の視聴アプリとは別個のアプリケーションソフトウェアであってもよいし、単一のアプリケーションソフトウェアが配信アプリの機能及び記述の視聴アプリの機能を両方とも備えてもよい。このフェイスモーションデータは、アクターの頭部の姿勢のトラッキングデータ、当該アクターの顔の特徴点のデジタル表現であるフィーチャーポイント、及びその変形率を表現したブレンドフェイスデータを含むことができる。スマートフォンなどの情報処理端末は、フェイスモーションデータに基づいて、アクターの表情を誇張して示す画像を作成し、当該画像をキャラクタオブジェクトの顔に重畳表示してもよい。フェイスモーションデータに基づいてキャラクタオブジェクトのアニメーションを生成する場合、アクターの体の動きを検出するためのモーションセンサ31a,31b,31c,31d,31e,及び31f、ベースステーション35a,35b、及びデジタルカメラ36a,36bが不要となるため、より簡易な設備でキャラクタオブジェクトのアニメーションを生成することができる。モーションセンサ31a,31b,31c,31d,31e,及び31f、ベースステーション35a,35b、及びデジタルカメラ36aが不要であれば、スタジオルームR以外の場所、例えばアクターの自宅でもキャラクタオブジェクトの生成を行うことができるので利便性が高まる。
【0050】
次に、一態様において、ストレージ23に記憶される情報について説明する。図示の実施形態においては、ストレージ23には、モデルデータ23a、オブジェクトデータ23b、ユーザデータ23c、アバタデータ23d、参加管理データ23e、及び前記以外の配信動画の生成及び配信に必要な様々な情報が記憶される。
【0051】
モデルデータ23aは、キャラクタのアニメーションを生成するためのモデルデータである。モデルデータ23aは、3次元のアニメーションを生成するための3次元モデルデータであってもよいし、2次元のモデルデータを生成するための2次元モデルデータであってもよい。モデルデータ23aは、例えば、キャラクタの骨格を示すリグデータ(「スケルトンデータ」と呼ばれることもある。)と、キャラクタの表面の形状や質感を示す表面データと、を含む。モデルデータ23aには、互いに異なる複数のモデルデータを含むことができる。この複数のモデルデータは、互いに異なるリグデータを有していてもよいし、同じリグデータを有していてもよい。この複数のモデルデータは、互いと異なる表面データを有していてもよいし、同じ表面データを有していてもよい。
【0052】
オブジェクトデータ23bは、動画を構成する仮想空間を構築するためのアセットデータを含む。オブジェクトデータ23bは、動画を構成する仮想空間の背景を描画するためのデータ、動画に表示される各種物体を描画するためのデータ、及びこれら以外の動画に表示される各種オブジェクトを描画するためのデータが含まれる。オブジェクトデータ23bには、仮想空間におけるオブジェクトの位置を示すオブジェクト位置情報を含んでもよい。
【0053】
オブジェクトデータ23bには、上記以外にも、クライアント装置10a~10cの視聴ユーザからの表示要求に基づいて動画に表示されるギフトオブジェクトが含まれ得る。ギフトオブジェクトには、エフェクトオブジェクトと、通常オブジェクトと、装飾オブジェクトと、が含まれ得る。視聴ユーザは、所望のギフトオブジェクトを購入することができる。
【0054】
エフェクトオブジェクトは、配信動画の視聴画面全体の印象に影響を与えるオブジェクトであり、例えば紙吹雪を模したオブジェクトである。紙吹雪を模したオブジェクトは、視聴画面全体に表示されてもよく、これにより表示の前後における視聴画面全体の印象を変えることができる。エフェクトオブジェクトは、キャラクタオブジェクトと重複するように表示されることもあるが、キャラクタオブジェクトの特定の部位と関連付けられた表示はなされない点で装飾オブジェクトと異なっている。
【0055】
通常オブジェクトは、視聴ユーザからアクター(例えば、アクターA1)又は動画内のキャラクタへのデジタル的なギフトとなるオブジェクトであり、例えばぬいぐるみや花束を模したオブジェクトである。一態様において、通常オブジェクトは、キャラクタオブジェクトと接しないように動画の表示画面に表示される。一態様において、通常オブジェクトは、キャラクタオブジェクトと重複しないように動画の表示画面に表示される。通常オブジェクトは、仮想空間においてキャラクタオブジェクト以外のオブジェクトと重複するように表示されてもよい。通常オブジェクトは、キャラクタオブジェクトと重複するように表示されることもあるが、キャラクタオブジェクトの特定の部位と関連付けられた表示はなされない点で装飾オブジェクトと異なっている。一態様において、通常オブジェクトをキャラクタオブジェクトと重複して表示させる場合には、当該通常オブジェクトは、当該キャラクタオブジェクトの顔を含む頭部以外の部分と重複し、当該キャラクタオブジェクトの頭部とは重複しないように表示される。
【0056】
装飾オブジェクトは、キャラクタオブジェクトの特定の部位と関連付けて表示画面に表示されるオブジェクトである。一態様において、キャラクタオブジェクトの特定の部位と関連付けて表示画面に表示される装飾オブジェクトは、当該キャラクタオブジェクトの当該特定の部位に接するように表示画面に表示される。一態様において、キャラクタオブジェクトの特定の部位と関連付けて表示画面に表示される装飾オブジェクトは、当該キャラクタオブジェクトの当該特定の部位の一部又は全部を覆うように表示画面に表示される。
【0057】
装飾オブジェクトは、例えば、キャラクタオブジェクトに装着されるアクセサリ(カチューシャ、ネックレス、イヤリングなど)、衣服(Tシャツなど)、コスチューム、及びこれら以外のキャラクラオブジェクトが装着可能なオブジェクトである。装飾オブジェクトに対応するオブジェクトデータ23bには、当該装飾オブジェクトがキャラクタオブジェクトのどの部位に関連付けられるかを示す装着位置情報が含まれてもよい。ある装飾オブジェクトの装着位置情報は、当該装飾オブジェクトがキャラクタオブジェクトのどの部位に装着されるかを示すことができる。例えば、装飾オブジェクトがカチューシャである場合には、当該装飾オブジェクトの装着位置情報は、当該装飾オブジェクトがキャラクタオブジェクトの「頭部」に装着されることを示してもよい。装飾オブジェクトがTシャツである場合には、当該装飾オブジェクトの装着位置情報は、当該装飾オブジェクトがキャラクタオブジェクトの「胴部」に装着されることを示してもよい。
【0058】
ギフトオブジェクトの各々には、その種類に応じた表示時間が設定されていてもよい。一態様において、装飾オブジェクトの表示時間は、エフェクトオブジェクトの表示時間及び通常オブジェクトの表示時間よりも長く設定されていてもよい。例えば、装飾オブジェクトの表示時間は60秒間に設定され、エフェクトオブジェクトの表示時間は5秒間に設定され、通常オブジェクトの表示時間は10秒間に設定されてもよい。
【0059】
オブジェクトデータ23bには、動画配信システム1のユーザが保有しているギフトオブジェクトを示すリストが含まれてもよい。保有リストにおいては、ユーザのアカウント情報と対応づけて、当該視聴ユーザが保有するギフトオブジェクトを特定するオブジェクトIDが記憶されてもよい。ユーザのアカウント情報は、例えば、ユーザを識別するユーザIDである。このユーザには、例えば、クライアント装置10a~クライアント装置10cの第1視聴ユーザ~第3視聴ユーザが含まれてもよい。
【0060】
図3に示すように、ユーザデータ23cは、動画配信システム1の各ユーザ(例えば、視聴ユーザ)のアカウント情報と、各ユーザが利用するアバタに関するアバタ情報と、各ユーザが属するグループに関するグループ情報と、を含むことができる。言い換えると、ストレージ23には、動画配信システム1の各ユーザのアカウント情報と対応付けて、各ユーザが利用するアバタに関するアバタ情報、各ユーザが属するグループに関するグループ情報、及びこれら以外のユーザに関する情報が記憶され得る。あるユーザのアカウント情報は、例えば、当該ユーザを識別するユーザIDである。ユーザのユーザIDは、当該ユーザがクライアント装置10a~クライアント装置10cを利用してサーバ装置20から提供される動画サービスへの利用登録を行うときに発行されてもよい。視聴アプリを利用してサーバ装置20のサービスを利用する場合と配信アプリを利用してサーバ装置20のサービスを利用する場合とで共通のユーザIDが用いられてもよいし、視聴アプリを利用してサーバ装置20のサービスを利用する場合と配信アプリを利用してサーバ装置20のサービスを利用する場合とで別個のユーザIDが用いられてもよい。視聴アプリを利用してサーバ装置20のサービスを利用する場合と配信アプリを利用してサーバ装置20のサービスを利用する場合とで別個のユーザIDが用いられる場合には、同一のユーザの視聴アプリを利用するためのユーザID(視聴用ユーザID)と配信アプリを利用するためのユーザID(配信用ユーザID)とは互いに対応付けられて記憶されてもよい。視聴アプリを利用して受けることができるサーバ装置20のサービスは、例えば、サーバ装置20から配信される動画の視聴サービスである。配信アプリを利用して受けることができるサーバ装置20のサービスは、例えば、自らのキャラクタオブジェクトを含む動画の配信を行うサービスである。
【0061】
あるユーザのアバタ情報は、例えば、当該ユーザが動画システム1内で利用するアバタを識別するアバタIDである。アバタIDは、ユーザがアバタの登録を行うことにより当該ユーザに割り当てられる。アバタの登録は、アバタを構成する頭部、ヘアスタイル、服、アクセサリ、及びこれら以外のパーツをユーザが選択することにより行われる。アバタの登録は、配信アプリがインストールされたクライアント装置10a~10cによって行われてもよい。つまり、アバタの登録は、配信アプリの機能を実行することにより行われてもよい。一実施形態においては、アバタの登録は、クライアント装置10a~クライアント装置10cのうち配信アプリがインストールされたクライアント装置によって行われ、配信アプリがインストールされていないクライアント装置からは実行できなくてもよい。アバタの登録は、配信アプリケーションとは別のアバタを作成、編集、及び/又は登録する機能を有するアプリケーションソフトウェア(以下、「アバタ作成アプリ」と呼ぶことがある。)によって行われてもよい。配信アプリ及び/又はアバタ作成アプリによってアバタの登録を行う場合にも、
図3を参照して説明したように、当該アバタを識別するアバタIDを割り当て、当該アバタIDをユーザのユーザIDと対応付けてユーザ情報として管理してもよい。ユーザは、アバタを登録した後に、当該アバタを変更することができる。例えば、アバタの登録後に、当該アバタのパーツの一部又は全部を変更することができる。例えば、登録後であっても、アバタのヘアスタイル、所持アイテム、及びこれら以外のアバタを構成するパーツを変更することができる。
【0062】
あるユーザのグループ情報は、当該ユーザが所属するグループを識別する所属グループIDである。動画配信システム1のユーザが所属できるグループには、例えば、第1グループ及び第2グループが含まれる。配信システム1のユーザは、第1グループ及び第2グループのいずれかに所属する。第2グループは、第1グループとは異なるグループである。ユーザが第1グループに所属するか第2グループに所属するかは様々な態様で決定され得る。ユーザが第1グループと第2グループのいずれに所属するかを決定するためには、必ずしもグループIDを使用する必要はない。例えば、ユーザデータにおいて、第1グループに属するユーザのレコードにフラグを設定しておき、第2グループに属するユーザのレコードにフラグを設定しないようにすれば、ユーザが第1グループと第2グループのいずれに所属するかを決定することができる。ユーザがいずれのグループに所属するかは様々な基準で定められ得る。例えば、第1グループには動画システム1へのエンゲージメントが比較的高いユーザを所属させ、第2グループには動画システム1へのエンゲージメントが比較的低いユーザを所属させることができる。あるユーザの動画システム1へのエンゲージメントは、例えばポイントで表される。ユーザが動画システム1を利用すると、その利用態様に応じて当該ユーザのポイントが増減し得る。あるユーザのポイントは、例えば、動画を視聴すること、動画を配信すること、動画に対してコメントを投稿すること、動画を配信する配信者に対してギフティングをすること、ギフト(ギフトオブジェクト)を購入すること、動画システム1にログインすること、動画を視聴するためのアプリケーションソフトウェアを起動すること、動画システム1が提供するソーシャルネットワーキングサービスにおいて他のユーザへメッセージを送ること、当該ソーシャルネットワーキングサービスにおいて他のユーザから肯定的な評価を受けること、及びこれら以外の動画システム1の利用に応じて増加し得る。あるユーザのポイントは、例えば、動画の配信者から視聴を禁止されること(ブロックされること)、投稿したコメントが削除されたこと、動画システム1が提供するソーシャルネットワーキングサービスにおいて他のユーザから否定的な評価を受けること、及びこれら以外の動画システム1の利用に応じて減少し得る。ポイントの増減と関連付けられるユーザの行動は上記のものに限定されない。ユーザのポイントは、当該ユーザと配信ユーザや他の視聴ユーザとのつながりを強める当該ユーザの行動によって増加し、逆に、当該ユーザと配信ユーザや他の視聴ユーザとのつながりを弱める当該ユーザの行動によって減少してもよい。
【0063】
一態様において、第1グループは、第2グループよりも少ない数のユーザから構成される。ユーザは、動画配信システム1への利用登録を行う際には、第2グループに分類され、動画配信システム1の利用開始後に、第1グループに分類されるための基準を満たすと、第2グループを離脱して第1グループの所属とされてもよい。動画配信システム1への利用登録時にはグループ分けを行わずに、利用開始後に一定の条件を満たしたユーザのみを第1グループに所属させてもよい。ユーザが第1グループに属するか否かは、例えば、ユーザデータに第1グループに所属するユーザを識別するためのフラグを設定し、当該フラグを参照することで決定することができる。利用開始したユーザを第2グループに所属させることにより、第1グループに所属するユーザの数を第2グループに所属するユーザの数よりも少なくすることができる。ユーザは、動画配信システム1の利用態様に応じて所属するグループが変更されてもよい。ユーザは、第1グループに分類されるための基準を満たさなくなった場合には、第1グループから第2グループへ所属グループが変更されてもよい。
【0064】
一態様において、第1グループに属するユーザの数が第2グループに属するユーザの数よりも少ない状態が維持されるように、第1グループへの分類基準が調整されてもよい。例えば、サーバ装置20は、第1グループに属するユーザの数及び第2グループに属するユーザの数をモニターし、その差が所定数よりも小さくなった場合には、第1グループへ分類されるための基準を厳しくしてもよい。例えば、当初は、100ポイント以上のポイントを有するユーザを第1グループに分類している場合において、第1グループに属するユーザの数と第2グループに属するユーザの数との差が所定の値よりも小さくなったことを契機として、200ポイント以上のポイントを有するユーザを第1グループに分類するように基準を変更しても良い。
【0065】
一態様において、第1グループに属するユーザの上限数が決められていてもよい。この場合、動画配信システム1のユーザについてポイント数のランキングを作成し、当該ランキングのトップから上限数に達するまでのユーザを第1グループに所属させてもよい。ランキングの上位にいるユーザの全てが動画配信システム1にログインしているとは限らないため、動画システム1にログインしているユーザのランキングを作成し、当該ランキングにおいてトップから上限数に達するまでのユーザを第1グループに所属させてもよい。
【0066】
グループ分けのために参照される各ユーザのポイントは、動画システム1全体で共通の共通ポイントであってもよいし、配信ユーザごとに管理される個別ポイントであってもよい。例えば、あるユーザに関して、配信ユーザAについての個別ポイントと、配信ユーザBについての個別ポイントとが別個に管理されてもよい。配信者Aが配信する動画(すなわち、配信者Aのキャラクタオブジェクトが含まれる動画)においては、この配信者Aについて管理されている個別ポイントのランキングを作成し、当該ランキングにおいてトップから上限数に達するまでのユーザを第1グループに所属させてもよい。これにより、動画システム1全体に共通の共通ポイントのランキングでは第2グループに属するユーザを、特定の配信ユーザに関しては第1グループに所属させることもできる。このように個別ポイントを管理することにより、各ユーザの配信ユーザに対する個別のエンゲージメントの程度に応じて、当該配信ユーザに関するグループ分けを行うことができる。
【0067】
以上のように、ユーザのポイントが所定の閾値よりも高い場合に、当該ユーザは第1グループの所属とされ、逆に、当該ユーザのポイントが所定の閾値よりも低い場合に、当該ユーザは第2グループの所属とされる。これにより、閾値より高いポイントを有するユーザを第1グループに所属させ、閾値よりも低いポイントを有するユーザを第2グループに所属させることができる。ポイントが動画システム1に対するエンゲージメントを表す場合には、第1グループには動画システム1に対するエンゲージメントが比較的高いユーザを所属させることができ、第2グループには動画システム1に対するエンゲージメントが比較的高いユーザを所属させることができる。
【0068】
ユーザのグループ分けは、本明細書で具体的に説明するものには限定されない。ユーザは、3つ以上のグループに分類されてもよい。また、ユーザがどのグループに所属するかを定める分類基準は適宜変更され得る。
【0069】
図4に示すように、アバタデータ23dは、動画配信システム1でユーザによって利用されるアバタのアタバ識別情報と、当該アバタを動画内に表示するためのアバタ表示情報と、を含むことができる。言い換えると、ストレージ23には、アバタのアタバ識別情報と対応付けて、当該アバタを表示するためのアバタ表示情報が記憶され得る。アタバ識別情報は、例えば、アバタを識別するアバタIDである。アバタは、例えば、人間や動物を模した画像として動画内に表示される。アバタ表示情報は、アバタを動画内に表示するために用いられる情報である。アバタ情報には、例えば、頭部、ヘアスタイル、顔のパーツ(目、鼻、口など)、胴部、服、アクセサリ、アイテム、及びこれら以外のアバタを構成するパーツの画像を示すパーツ情報が含まれる。ユーザは、好みのパーツ画像を選択することで自らのアバタを登録することができる。アバタ表示情報には、動画にアバタを2D表示するための2D表示情報と、動画にアバタを3D表示するための3D表示情報とが含まれてもよい。3D表示情報には、アバタを動画内で立体的に表示するためのパーツの画像を示すパーツ情報、アバタの3次元での動きを表現するためのリグデータ、及びこれら以外のアバタを立体的に表示するために用いられている公知の情報を含む。
【0070】
視聴ユーザは、動画配信システム1から配信されている動画に自らのアバタを参加させることができる。ストレージ23に記憶される参加管理データ23eは、動画に参加しているアバタを管理するためのデータである。
図5に示されているように、参加管理データ23eは、動画配信システム1において配信されている動画を識別する動画識別情報と、当該動画に参加可能なアバタの上限数を定める参加制限情報と、動画に参加しているアバタを示す参加アバタ情報と、を含むことができる。動画識別情報は、例えば、動画を識別する動画IDである。ある動画についての参加制限情報は、例えば、当該動画に参加可能なアバタの数の上限である。参加制限情報には、後述する仮想空間の第2領域に配置可能なアバタの数の上限である第2上限数を含んでもよい。参加制限情報には、第2上限数に加えて、後述する仮想空間の第1領域に配置可能なアバタの数の上限である第1上限数を含んでもよい。ある動画についての参加アバタ情報は、当該動画に参加しているアバタを識別するアバタIDであってもよい。ある動画に複数のアバタが参加している場合には、参加アバタ情報には、当該複数のアバタの各々のアバタIDが含まれる。
【0071】
次に、コンピュータプロセッサ21により実現される機能についてより具体的に説明する。コンピュータプロセッサ21は、配信プログラムに含まれるコンピュータ読み取り可能な命令を実行することにより、ボディモーションデータ生成部21a、フェイスモーションデータ生成部21b、アニメーション生成部21c、動画生成部21d、動画配信部21e、ギフト処理部21f、参加要求処理部21g、アバタ表示部21h、アバタ制御部21i、及び表示要求処理部21jとして機能する。コンピュータプロセッサ21により実現される機能の少なくとも一部は、動画配信システム1のコンピュータプロセッサ21以外のコンピュータプロセッサにより実現されてもよい。コンピュータプロセッサ21により実現される機能の少なくとも一部は、例えば、サポーターコンピュータ40に搭載されているコンピュータプロセッサ又はそれ以外の不図示のコンピュータプロセッサにより実現されてもよい。
【0072】
ボディモーションデータ生成部21aは、モーションセンサ31a~31fの各々の検出情報に基づいて、アクターA1の体の各部位のボディモーションデータを生成する。ボディモーションデータは、時間の経過に伴って随時生成される。例えば、ボディモーションデータは、所定のサンプリング時間間隔ごとに生成されてもよい。このように、ボディモーションデータは、アクターA1の体の動きを時系列的にデジタルデータとして表現することができる。図示の実施形態においては、モーションセンサ31a~31fは、アクターA1の各々の左右の手足、腰、及び頭部に装着されているため、モーションセンサ31a~31fの検出情報に基づいて、アクターA1の概ね全身の位置及び向きを経時的にデジタル表現することが可能である。ボディモーションデータは、例えば、モデルデータ23aに含まれるリグデータを構成する骨(ボーン)の位置及び回転角度を規定することができる。
【0073】
フェイスモーションデータ生成部21bは、カメラ37aの撮像データに基づいて、アクターA1の顔の動きのデジタル表現であるフェイスモーションデータを生成する。フェイスモーションデータは、時間の経過に伴って随時生成される。例えば、フェイスモーションデータは、所定のサンプリング時間間隔ごとに生成されてもよい。このように、フェイスモーションデータは、アクターA1の顔の動き(表情の変化)を時系列的にデジタル表現することができる。
【0074】
アニメーション生成部21cは、ボディモーションデータ生成部21aによって生成されたボディモーションデータ及びフェイスモーションデータ生成部21bによって生成されたフェイスモーションデータを、モデルデータ23aに含まれる所定のモデルデータに適用することにより、仮想空間内で動き、また、表情が変化するキャラクタオブジェクトのアニメーションを生成するように構成される。具体的には、アニメーション生成部21cは、アクターA1に関するボディモーションデータ及びフェイスモーションデータに基づいて、アクターA1の体及び表情の動きに同期して動くキャラクタオブジェクトのアニメーションを生成することができる。
【0075】
動画生成部21dは、オブジェクトデータ23bを用いて仮想空間を構築し、この仮想空間と、アクターA1に対応するキャラクタオブジェクトのアニメーションと、を含む動画を生成する。アクターA1のキャラクタオブジェクトは、デジタルカメラ36aに対するアクターA1の位置に合致するように仮想空間内に配置されてもよい。
【0076】
一態様において、動画生成部21dは、仮想カメラの設定情報(仮想空間内での位置、注視位置、注視方向、及び画角)を定め、この仮想カメラの設定情報に基づいて仮想空間全体のうちの描画領域を定め、この仮想空間の描画領域を表示するための動画情報を生成する。
【0077】
動画生成部21dは、生成した動画に、スタジオユニット30のマイクから取得したアクターA1の音声を合成することができる。以上のようにして、動画生成部21dは、アクターA1の体及び表情の動きに同期して動くキャラクタオブジェクトのアニメーション生成し、このアニメーションにアクターA1の音声が合成された配信用の動画を生成することができる。
【0078】
動画生成部21dは、動画の配信前に、当該動画に参加する可能性のあるアバタをについて、当該アバタの表示に必要なアバタ表示情報をロードすることができる。動画生成部21dは、アバタ表示情報のうち、ロードに時間がかかりまたロードのための処理負荷が大きい3D表示情報をロードすることができる。例えば、動画生成部21dは、第1グループに属するユーザのアバタを表示するために必要なアバタ表示情報をストレージ23から読み出してロードすることができる。一実施形態において、動画生成部21dは、第1グループに属するユーザのアバタを3D表示するために必要な3D表示情報をストレージ23から読み出してロードすることができる。
【0079】
一実施形態において、動画生成部21dは、第1上限数以下の数のアバタの3D表示情報をロードすることができる。一実施形態において、動画生成部21dは、第1上限数と第2上限数の合計以下の数のアバタの3D表示情報をロードすることができる。
【0080】
このロードされたアバタ表示情報は、ユーザからの参加要求に基づいてアバタを動画に表示させる場合に参照され得る。アタバを動画中に表示させる場合におけるロードされたアバタ表示情報の利用に関しては後述する。
【0081】
動画配信部21eは、動画生成部21dにおいて生成された動画を配信する。この動画は、ネットワーク15を介してクライアント装置10a~クライアント装置10c及びこれら以外のクライアント装置に配信される。受信された動画は、クライアント装置10a~クライアント装置10cにおいて再生される。この動画は、スタジオルームR内に設置されているクライアント装置(不図示)に配信され、このクライアント装置から短焦点プロジェクタを介してスクリーンSに投影されてもよい。また、この動画は、サポーターコンピュータ40に配信されてもよい。これにより、サポーターB1及びサポーターB2は、配信されている動画の視聴画面を確認することができる。
【0082】
動画配信部21eから配信される動画の生成及び/又は配信に関与しているユーザを配信ユーザと呼ぶことがある。上記の例では、サーバ装置20から配信される動画は、アクターA1のボディモーションデータ及びフェイスモーションデータに基づいて生成されるキャラクタオブジェクトを含んでおり、必要に応じてサポーターB1及びサポーターB2の協力を得て配信されている。このため、アクターA1、サポーターB1、及びサポーターB2のそれぞれが「配信ユーザ」とされてもよいし、アクターA1、サポーターB1、及びサポーターB2を集合的に「配信ユーザ」としてもよい。
【0083】
動画生成部21dにより構築される仮想空間の例を
図6に模式的に示す。仮想空間は、その中心位置の周りを覆う全天球形状の空間として定義される。仮想空間における位置は、当該仮想空間内に設定される三次元のグローバル座標系における座標値で指定される。ただし、説明の便宜上、
図6には仮想空間の一部のみが示されており、
図6においては座標系の表示も省略されている。
図6においては、10人のユーザがアバタを介して動画に参加していることが想定されている。
【0084】
図6に示されている仮想空間50は、アクターA1のキャラクタオブジェクト51と、5つの仮想カメラ53a~53eと、キャラクタオブジェクト51が配置されるステージを表すステージオブジェクト54と、アバタを示すアバタオブジェクト56a~56c、57a~57gと、が配置されている。ステージオブジェクト54には、キャラクタオブジェクト51が立つスタジオフロアに対応するフロアオブジェクト54aと、フロアオブジェクト54aの水平方向の一端においてフロアオブジェクト54aから垂直に延びるスクリーンオブジェクト54bと、を含んでいる。例えば、フロアオブジェクト54aは、仮想空間における水平方向に延伸し、スクリーンオブジェクト54bは仮想空間における鉛直方向に延伸している。この仮想空間50内には、第1領域52aと、第2領域52bと、が規定されている。図示の実施形態において、アバタオブジェクト56a~56cは、第1領域52a内に配置されており、アバタオブジェクト57a~57gは、第2領域52b内に配置されている。仮想空間50において、第1領域52aは、第2領域52bよりもキャラクタオブジェクト51の近くに配置されている。一実施形態において、キャラクタオブジェクト51は、フロアオブジェクト54a内に配置される。したがって、第1領域52aは、第2領域52bよりもフロアオブジェクト54aの近くに配置されている。仮想空間50における第1領域52a及び第2領域52bの位置は、
図6に示されている位置に限定されない。第1領域52a及び第2領域52bは、仮想空間50内の任意の位置に配置され得る。例えば、第1領域52a及び第2領域52bは、フロアオブジェクト54a内に配置されてもよい。第1領域52a及び第2領域52bは、例えば、フロアオブジェクト54aにおいて、キャラクタオブジェクト51よりも仮想カメラ53aの視点から見て後方に配置されてもよい。一実施形態において、第1領域52aは、第1グループに属するユーザのアバタを表示するための領域であり、第2領域52bは、第2グループに属する(又は第1グループに属さない)ユーザのアバタを表示するための領域である。本明細書において、キャラクタオブジェクト51が配置される領域を第3領域ということがある。図示の例では、フロアオブジェクト54aが第3領域に相当する。仮想空間50内には、動画を視聴しているユーザから投稿されたコメントが表示されるコメント表示領域55a~55cが含まれている。コメント表示領域55a~55cは、仮想空間50におけるオブジェクトであってもよい。仮想空間50は、本明細書において明示的に説明されている態様には限定されない。仮想空間50には、本明細書で明示的に説明した以外の様々なオブジェクトが含まれ得る。
【0085】
仮想カメラ53a~53eは、仮想空間50において互いと異なる位置に配置されている。仮想カメラ53a~53eはいずれも、キャラクタオブジェクト51を向くように配置されている。動画生成部21dによって生成される動画を構成する画像は、仮想カメラ53a~53eの中から一つの仮想カメラを選択し、この選択された仮想カメラを視点として眺めた仮想空間50の描画領域を表示する画像である。仮想カメラ53a~53eの設定情報(仮想空間内での位置、注視位置、注視方向、及び画角)は、アクターA1、サポーターB1、サポーターB2、又はこれら以外のオペレータの操作により動画配信中に変更されてもよい。
【0086】
上記のように、第1領域52aには、3つのアバタオブジェクト56a~56cが配置されており、第2領域52bには、7つのアバタオブジェクト57a~57gが配置されている。一実施形態においては、第1領域52aに配置されるアバタの上限数である第1上限数、及び、第2領域52bに配置されるアバタの上限数である第2上限数が定められる。この第1上限数及び第2上限数は、参加管理データ23eとしてストレージ23に記憶されてもよい。
【0087】
動画生成部21dによって生成され動画配信部21eによって配信される動画の表示例を
図7a~
図7fに示す。
図7a~
図7fは、動画配信部21eによって配信され、クライアント装置10a~10cにて再生されている動画の表示画像を示している。以下、
図7a~
図7fの表示画像は、第1視聴ユーザが利用するクライアント装置10aに表示されていると想定して説明を行う。
図7aの表示画面は、クライアント装置10aにおいて視聴アプリを実行してサーバ装置20から配信された動画を再生することにより、クライアント装置10aのディスプレイに表示されている。
図7aは、仮想カメラ53aを視点として定められる描画領域として描画された画像60aの表示例を示している。ただし、画像60aを描画する時点では、第1視聴ユーザのアバタ56aは仮想空間50内に配置されていないと想定する。つまり、画像60aに対応する仮想空間50にはアバタ56aが配置されていない。
【0088】
図示のように、画像60aは、キャラクタオブジェクト51と、キャラクタオブジェクト51が立つフロアオブジェクト54aと、ステージの後端を画定するスクリーンオブジェクト54bと、を含んでいる。また、画像60aは、視聴ユーザからのコメントやシステム通知が表示される表示欄65を含む。
【0089】
キャラクタオブジェクト51は、アクターA1のボディモーションデータ及びフェイスモーションデータをモデルデータ23aに含まれているアクターA1用のモデルデータに適用することにより生成される。キャラクタオブジェクト51は、ボディモーションデータ及びフェイスモーションデータに基づいてモーション制御される。したがって、キャラクタオブジェクト51は、アクターA1の体及び表情の動きに同期して画面内で動くように制御される。
【0090】
表示画像60aには、仮想空間50内に配置された各オブジェクトに加え、ユーザの操作を受け付けるための操作ボタンが表示されてもよい。
図6に示されている例では、表示画像60aに、ギフティングを行うためのギフトボタン61と、評価を提供するための評価ボタン62と、アバタを参加させるためのアバタ参加ボタン63と、が含まれている。表示画像60aには、これら以外の操作ボタンが表示されてもよい。
【0091】
ギフトボタン61は、表示画像60aが表示されているクライアント装置10aへの操作によって選択可能に表示画像60aに表示されている。ギフトボタン61は、例えば、クライアント装置10aのタッチパネルのうちギフトボタン61が表示されている領域へのタップ操作により選択され得る。一実施形態において、ギフトボタン61が選択されると、表示画面60aに、視聴中の動画を配信している配信者に贈る(ギフティングする)ギフトを選択するためのウィンドウが表示される。クライアント装置10aのユーザは、当該ウィンドウに表示されているギフトの中からギフティング対象とするギフトを購入・選択することができる。他の実施形態においては、ギフトボタン61が選択されたことに応じて、表示画像60aに、購入済みのギフトの一覧及び/又は選択可能なギフトの一覧を含むウィンドウが表示される。この場合、動画を視聴しているユーザは、当該ウィンドウに表示されているギフトの中からギフティング対象とするギフトを選択することができる。一実施形態においては、クライアント装置10におけるギフトボタン61の選択に応じて、ギフティング要求がサーバ装置60に送信されてもよい。このギフティング要求には、ギフティングするギフトに対応するギフトオブジェクトを特定するギフト識別情報(ギフトID)が含まれてもよい。このように、動画を視聴している視聴ユーザは、ギフトボタン61の選択により、当該動画を配信している配信ユーザに対して所望のギフトを贈ることができる。
【0092】
ギフト処理部21fは、ユーザのクライアント装置10aからギフティング要求を受け付け、当該要求に応じた処理を行う。上記のとおり、動画を視聴しているユーザは、自らのクライアント装置を操作することにより、ギフティング要求をサーバ装置20に送信することができる。
【0093】
一態様において、ギフト処理部21fは、ギフティング要求を受け付けると、当該ギフティング要求に基づいて、ギフト対象のギフトオブジェクトを特定し、特定されたギフトオブジェクトに応じた表示処理を行う。上述のように、ギフトオブジェクトには、エフェクトオブジェクトと、通常オブジェクトと、装飾オブジェクトと、が含まれ得る。ギフティング要求によって特定されるギフトオブジェクトがエフェクトオブジェクトの場合には、ギフト処理部21fは、当該エフェクトオブジェクトを動画の表示画像60aに表示させるための処理を行う。例えば、紙吹雪に対応するエフェクトオブジェクトについてギフティング要求がなされた場合には、ギフト処理部21fは、当該ギフティング要求に基づいて紙吹雪を示すエフェクトオブジェクトを表示画像60aに表示させる。一態様において、ギフト処理部21fは、特定の通常オブジェクトについてのギフティング要求を受け付けると、当該ギフティング要求によって特定される通常オブジェクトを動画に表示させるための処理を行う。例えば、熊のぬいぐるみを示す通常オブジェクトについてギフティング要求がなされた場合には、ギフト処理部21fは、当該熊のぬいぐるみを示す通常オブジェクトを表示画像60aに表示させる。
【0094】
一態様において、ギフト処理部21fは、視聴ユーザから特定の装飾オブジェクトについてのギフティング要求を受け付けると、当該ギフティング要求によって特定される装飾オブジェクトを候補リストに追加する。この候補リストは、例えば、サポーターコンピュータ40のディスプレイに表示される。サポーターB1及びサポーターB2は、サポータコンピュータ40のディスプレイに表示された候補リストの中から、動画に表示する装飾オブジェクトを選択することができる。ギフト処理部21fは、選択された装飾オブジェクトを動画の表示画面60aに表示させる。選択された装飾オブジェクトは、キャラクタオブジェクト51の特定の部位と関連付けて表示画像60aに表示される。例えば、装飾オブジェクトがカチューシャを示すオブジェクトである場合、当該装飾オブジェクトは、キャラクタオブジェクト51の頭部に装着されてもよい。装飾オブジェクトは、キャラクタオブジェクトの当該特定部位の動きに付随して動くように、表示画面60aに表示されてもよい。例えば、カチューシャを装着したキャラクタオブジェクト51の頭部が動くと、あたかもカチューシャがキャラクタオブジェクト51の頭部に装着されているかのごとく、カチューシャを示す選択装飾オブジェクトもキャラクタオブジェクト51の頭部に付随して動く。
【0095】
評価ボタン62は、クライアント装置10aを使用するユーザによって選択可能に表示画面60aに表示されている。評価ボタン62は、例えば、クライアント装置10aのタッチパネルのうち評価ボタン62が表示されている領域へのタップ操作により選択され得る。動画を視聴中のユーザによって評価ボタン62が選択されると、当該動画を配信する配信ユーザ(例えば、アクターA1)への肯定的な評価又は配信されている動画への肯定的な評価がなされたことを示す評価更新情報がサーバ装置60に送信されてもよい。評価ボタン62の選択により、当該動画への否定的な評価がなされたことを示す評価情報がサーバ装置60に送信されてもよい。
【0096】
アバタ参加ボタン63は、クライアント装置10aを使用する第1視聴ユーザによって選択可能に表示画面60aに表示されている。アバタ参加ボタン63は、例えば、クライアント装置10aのタッチパネルのうちアバタ参加ボタン63が表示されている領域へのタップ操作により選択され得る。動画を視聴中の第1視聴ユーザによってアバタ参加ボタン63が選択されると、当該第1視聴ユーザのアバタを当該動画に参加させることを要求する参加要求がサーバ装置20に送信される。アバタ参加ボタン63の選択により参加要求を送信したユーザを「参加申請ユーザ」と呼ぶことがある。参加申請ユーザからの参加要求には、当該参加申請ユーザのユーザIDと、当該参加申請ユーザのアバタのアバタIDと、が含まれてもよい。自らのアバタを登録していない第1視聴ユーザによってアバタ参加ボタン63が選択された場合には、クライアント装置10aにアバタの登録を促す画面が表示されてもよい。この場合、第1視聴ユーザは、当該画面のガイダンスに従ってアバタを登録することができる。
【0097】
参加要求処理部21gは、参加申請ユーザからの参加要求を受け付け、当該参加要求に基づいて、当該参加申請ユーザのアバタの表示可否について判定を行う。一実施形態において、参加要求処理部21gは、参加申請ユーザが第1グループと第2グループのいずれに属するかを判定することができる。参加要求処理部21gは、例えば、ユーザデータ23cのグループ情報を参照することにより、参加申請ユーザが第1グループと第2グループのいずれに属するかを判定することができる。ユーザ情報においてグループIDではなく第1グループに属するユーザのユーザIDにフラグを設定することでユーザが所属するグループを区別している場合には、参加申請ユーザについて当該フラグが設定されている場合に当該参加申請ユーザが第1グループに属していると判定し、当該フラグが設定されていない場合に第2グループに属していると判定する(又は第1グループに属していないと判定する)ことができる。
【0098】
参加申請ユーザが第1グループに属すると判定された場合、参加要求処理部21gは、当該参加申請ユーザのアバタを仮想空間50の第1領域52aに配置する。例えば、第1視聴ユーザがクライアント装置10aを介して参加要求を送信し、当該第1視聴ユーザが第1グループに属すると判定された場合、
図6に示すように、当該第1視聴ユーザに対応するアバタ56aは第1領域52aに配置される。第1視聴ユーザが第1グループに属すると判定された場合には、それ以上の追加的な条件を要求することなく、当該第1視聴ユーザのアバタ56aを第1領域52aに表示してもよい。第1視聴ユーザのアバタ56aの参加が認められた後、第1領域52aに配置される前又は第1領域52aに配置された後に、アバタ56aの参加に関連した演出効果を表示してもよい。例えば、アバタ56aを強調するように、アバタ56aにスポットライトが当たっているような演出を行うことができる。アバタの参加に関連する演出は、本明細書で明示的に説明される態様に限定されない。
【0099】
参加申請ユーザが第2グループに属すると判定された場合には、参加要求処理部21gは、当該参加申請ユーザが参加条件を充足しているか否かを判定し、参加条件を充足していると判定された場合に当該参加申請ユーザのアバタを第2領域52bに配置する。例えば、第1視聴ユーザがクライアント装置10aを介して参加要求を送信し、当該第1視聴ユーザが第2グループに属すると判定された場合には、
図6に示されている態様とは異なり、アバタ56aは第2領域52bに配置される。アバタ56aが第2領域52bに配置される際にも、上述した演出効果を動画内に表示することができる。
【0100】
参加要求に基づいてアバタの動画への参加が認められた場合、当該アバタの他の動画への参加を禁止してもよい。例えば、参加要求に基づいてアバタの動画への参加が認められた場合、アバタデータ23dとして当該アバタが動画へ参加していることを示すフラグを設定し、当該フラグに基づいて当該アバタを使用するユーザからの他の動画への参加要求を認めるか否かが判断されてもよい。具体的には、ある動画へ参加しているアバタを使用するユーザから他の動画への参加要求がなされたときに、アバタデータ23dを参照し、当該アバタについて動画へ参加していることを示すフラグが設定されている場合に、当該参加要求は拒否されてもよい。単一のアバタによる二つ以上の動画への参加を禁止する処理は、参加要求処理部21gによって行われてもよい。
【0101】
上記のように、参加申請ユーザが第2グループに属する場合には、参加条件が充足されているか否かが判定される。続いて、この参加条件について説明する。一実施形態における参加条件は、第2領域52bに配置されているアバタの数が第2領域52bついて設定されている第2上限数よりも少ないことである。一例として、
図6の第2領域52bに設定されている第2上限数が「7」であると想定する。この例において、第2グループに属する参加申請ユーザからの参加要求を受け付けた場合、第2領域52bには既に上限数に相当する7つのアバタ57a~57gが配置されているので、参加条件は充足されていないと判定される。この場合、参加申請ユーザからの参加要求は許可されず、当該参加申請ユーザのアバタは仮想空間50内に配置されない。他の例として、
図6の第2領域52bに設定されている第2上限数が「12」であると想定する。この例において、第2グループに属する参加申請ユーザからの参加要求を受け付けた場合、第2領域52bには上限数より少ない7つのアバタが配置されているので、参加条件は充足されていると判定される。この場合、当該参加申請ユーザのアバタが第2表示領域52bに配置される。
【0102】
第1領域52a又は第2領域52bに配置されているアバタは、当該アバタを使用するユーザの操作に応じて、参加中の動画から退出することができる。例えば、第1視聴ユーザのアバタ56aが動画の第1領域52a又は第2領域52bに配置されている場合に、当該第1視聴ユーザは、クライアント装置10aを操作することによりアバタ56aを退出させるための退出要求をサーバ装置20に送信することができる。サーバ装置20において退出要求が受け付けられると、サーバ装置20(例えば、参加要求処理部21g)は、当該退出要求に応じて、第1視聴ユーザのアバタ56aを当該動画から退出させるための処理を行うことができる。第1領域52a又は第2領域52bに参加可能なアバタの上限数が設定されている場合には、退出要求に応じて当該退出要求を行ったユーザのアバタが退出したことによって、当該第1領域52a又は第2領域52bに他のユーザのアバタが参加できるようになる。アバタが動画から退出する際に、当該アバタの退出に関連した演出効果が動画において表示されてもよい。例えば、退出するアバタにスポットライトが当たっているような演出を行うことができる。アバタの参加に関連する演出は、本明細書で明示的に説明される態様に限定されない。
【0103】
一実施形態においては、動画からアバタを退出させる処理は、当該アバタを使用するユーザが、当該動画を視聴するために使用している視聴アプリを終了させたことに応じて行われてもよい。
【0104】
別の実施形態においては、動画にアバタを参加させているユーザが当該動画を視聴するために使用している視聴アプリを終了させた場合であっても、当該アバタを引き続き当該動画中に表示し続けてもよい。
【0105】
別の実施形態における参加条件は、参加申請ユーザが配信ユーザによって選択されたことである。配信ユーザは、例えば、アクターA1、サポーターB1、及びサポーターB2である。参加要求処理部21gは、参加申請ユーザからの参加要求を受け付けると、当該参加申請ユーザを特定する表示を含む参加要求ユーザリストを生成し、当該参加要求ユーザリストを配信ユーザに提示してもよい。ある動画についての参加要求ユーザリストは、当該動画に対して参加要求を行った参加申請ユーザのリストである。参加要求処理部21gは、参加要求ユーザリストをサポータコンピュータ40に送信することができる。サポーターB1及びサポーターB2は、サポーターコンピュータ40のディスプレイに表示された参加要求ユーザリストから参加を認めるユーザを選択することができる。参加要求ユーザリストは、スタジオルームRのディスプレイ39に表示されてもよい。アクターA1は、コントローラ33aまたはコントローラ33bを操作することにより、参加要求ユーザリストから、動画への参加を認めるユーザを選択してもよい。参加要求処理部21gは、動画の配信ユーザによって選択された(つまり、当該動画への参加が許可された)参加申請ユーザのアバタを第2表示領域52bに配置することができる。
【0106】
アバタ表示部21hは、参加要求処理部21gによって第1領域52a及び第2領域52bに配置することが決定されたアバタを画像内に表示するための処理を行う。例えば、第1視聴ユーザのアバタを第1領域52aに表示する場合には、ユーザデータ23cを参照して当該第1視聴ユーザのユーザIDに関連付けられているアバタIDを特定し、次に、アバタデータ23dを参照して当該アバタIDに関連付けられているパーツ情報を特定する。アバタ表示部21hは、特定されたパーツ情報に基づいて第1視聴ユーザのアバタを表すアバタオブジェクトを構築し、当該アバタオブジェクトを第1領域52aに配置する。これにより、第1領域52aが仮想カメラの描画領域に含まれている場合に、当該第1視聴ユーザのアバタを表すアバタオブジェクトが動画内に表示される。アバタが3D表示される場合には、3D表示用のパーツ情報に基づいてアバタオブジェクトが構築され、アバタが2D表示される場合には、2D表示用のパーツ情報に基づいてアバタオブジェクトが構築される。
【0107】
次に、
図7b~
図7dを参照して、第1視聴ユーザによってアバタ参加ボタン63が選択され、当該第1視聴ユーザのアバタ56aが仮想空間50の第1領域52aに配置されている場合の表示画像について説明する。
図7bは、
図7aに示されている表示画像60aと同様に仮想カメラ53aを視点として描画された表示画像60bの例を示す。このため、表示画像60bにおけるキャラクタオブジェクト51やその他のオブジェクトの配置は、表示画像60aに表示されている対応するオブジェクトの配置とほぼ同じである。仮想カメラ53aは、第1領域52aとキャラクタオブジェクト51との間に配置されているため、表示画像60bにおいては、第1領域52a又は第2領域52bに配置されている第1視聴ユーザのアバタは、仮想カメラ53aを視点とする描画領域には含まれない。
【0108】
第1視聴ユーザのアバタ56aが仮想空間50内の第1領域52aに配置されている動画の別の表示例を
図7cに示す。
図7cに示されている表示画像60cは、
図7bとは異なり、仮想カメラ53cを視点として描画されている。仮想カメラ53cは、キャラクタオブジェクト51の右後ろからキャラクタオブジェクト51に向かって配置されている。このため、仮想カメラ53cを視点として描画された表示画像60cには、右後方から見たキャラクタオブジェクト51と、第1領域52aに配置されたアバタ56a~56cと、が含まれている。仮想カメラ53c、第1領域52a、及び第2領域52bの位置関係から、表示画像60cには、第2領域52bに配置されたアバタの一部もアバタ56a~56cの陰に隠れるようにして表示されている。アバタ56a~56c及びアバタ57a~57gは、2D(二次元)表示されてもよい。この場合、2D表示されるアバタ56a~56c及びアバタ57a~57gが、3D表示されている他のオブジェクトとともに仮想空間50内に表示される。アバタ56a~56c及びアバタ57a~57gを2D表示することにより、描画処理の負荷を軽減することができる。より後列のアバタ57a~57gのみ2D(二次元)表示されてもよい。描画処理の負荷が低減される結果、より多くのアバタを画面に表示することができる。一実施形態において、仮想空間50内に配置するアバタの3D表示情報が動画生成部21dによって動画の配信開始前にロードされている場合に、当該アバタについては当該動画中で3D表示を行うことができる。アバタ表示部21hは、参加要求に基づいて仮想空間50内に配置するアバタに関し、当該アバタの3D表示情報がロード済か否かを確認することができる。アバタ表示部21hは、参加要求に基づいて仮想空間50内に配置するアバタに関し、当該アバタの3D表示情報がロード済の場合には当該アバタを動画に3D表示情報が動画表示し、当該アバタの3D表示情報が未ロードの場合には当該アバタを当該動画に2D表示してもよい。一実施形態において、アバタ表示部21hは、参加要求に基づいて仮想空間50内に配置するアバタの3D表示情報をランタイムロードし、ラインタイムロードされた3D表示情報を用いて当該アバタを当該動画に3D表示してもよい。すなわち、サーバ装置20は、動画の配信中に(動画の配信処理と並行して)、当該動画に表示するアバタの3D表示情報をロードしてもよい。
【0109】
動画内にアバタが表示されている間に、当該アバタのユーザが当該アバタのパーツを別のものに変更することがある。アバタ表示部21hは、動画に表示されているアバタのパーツが変更されたときに、その変更を反映するように当該動画における当該アバタの外観を変化させることができる。例えば、あるユーザが自らのアバタのへアスタイルを黒髪から金髪に変更した場合には、アバタ表示部21hは、その変更が動画内に表示されているアバタの表示画像に反映されるように、当該アバタの外観を変更することができる。アバタ表示部21hは、パーツの変更以外にも動画配信中におけるアバタに対する変更を当該動画における当該アバタにリアルタイムで又は準リアルタイムで反映させることができる。
【0110】
第1視聴ユーザのアバタ56aが仮想空間50内の第1領域52aに配置されている動画のさらに別の表示例を
図7dに示す。
図7dに示されている表示画像60dは、仮想カメラ53bを視点として描画されている。仮想カメラ53bは、キャラクタオブジェクト51の正面において仮想カメラ53aよりもキャラクタオブジェクト51から離れた位置において、キャラクタオブジェクト51の方向を向くように配置されている。このため、仮想カメラ53bを視点として描画された表示画像60dには、表示画像60a及び表示画像60bよりも仮想空間50のより広い範囲が含まれている。具体的には、表示画像60dには、第1領域52a及び第2領域52bが含まれている。このため、表示画像60dには、第1領域52aに配置されたアバタ56a~56c及び第2領域52bに配置されたアバタ57a~57gも表示されている。
【0111】
表示画像には、エモーションボタン68が表示されてもよい。エモーションボタン68は、視聴ユーザが動画視聴時の感情を表現するためのボタンである。視聴ユーザは、このエモーションボタン68を選択することにより、当該動画に感動したこと、当該動画に共感できなかったこと、及びこれら以外の視聴ユーザの感情を選択することができる。エモーションボタン68には、動画に感動したという感情を選択するための拍手ボタン、動画に共感できなかったことを示すための疑問符ボタン、動画に驚いたことを示すための驚きボタン、及びこれら以外のボタンを含むことができる。エモーションボタン68の各々には、当該エモーションボタン68によって選択される感情を表現する記号又はグラフィックスの表示が含まれていてもよい。例えば、拍手ボタンには拍手している手を表すグラフィックスの表示が含まれていてもよく、疑問符ボタンにはクエスチョンマークの表示が含まれていてもよく、驚きボタンにはエクスクラメーションマークの表示が含まれていてもよい。エモーションボタン68は、例えば、クライアント装置10aのタッチパネルのうちエモーションボタン68が表示されている領域へのタップ操作により選択され得る。動画を視聴中の第1視聴ユーザによってエモーションボタン68が選択されると、エモーション表示要求がサーバ装置20に送信される。エモーション表示要求には、エモーションボタン68のうち第1視聴ユーザが選択したボタンの種類(拍手ボタン、疑問符ボタン、及び驚きボタンなど)を示すエモーション識別情報が含まれていてもよい。エモーションボタン68を選択することにより、エモーションボタン68に対応付けられた複数のボタン(拍手ボタン、驚きボタンなど)をポップアップ表示させてもよい。エモーションボタン68に対応付けられた複数のボタンがポップアップ表示される場合、ユーザは、ポップアップ表示された複数のボタンの中から自らの感情にマッチしたボタンを選択することができる。エモーションボタン68は、ユーザのアバタが動画に参加している場合に表示され、当該ユーザのアバタが動画に参加していない場合には表示されなくともよい。例えば、図示の実施形態においては、表示画像60aの表示時には第1視聴ユーザのアバタは動画に参加していないため、表示画像60aにはエモーションボタン68が表示されておらず、第1視聴ユーザのアバタが動画に参加している表示画像60b及びそれ以外の表示画像にはエモーションボタン68が表示されている。
【0112】
アバタ制御部21iは、第1視聴ユーザからのエモーション表示要求を受け付け、当該エモーション表示要求に基づいて、第1視聴ユーザのアバタの行動を制御してもよい。例えば、第1視聴ユーザがエモーションボタンの一種である拍手ボタンを選択したことによりエモーション表示要求が送信された場合には、アバタ制御部21iは、当該エモーション表示要求に基づいて、第1視聴ユーザのアバタ56aに対して拍手を行う動作を行わせることができる。このエモーション表示要求に基づいてアバタ56に拍手を行わせる制御が行われるときに、
図7c又は
図7dに示されているように当該アバタ56aが描画領域に含まれている場合には、アバタ56aが拍手しているアニメーションが動画内で表現されてもよい。逆に、
図7bに示されているようにアバタ56aが描画領域に含まれていない場合には、アバタ56aが拍手している音を動画において表現する一方で拍手するアニメーションは表示されなくともよい。一実施形態においては、エモーションボタンは、ユーザのアバタが動画内に表示されている場合にのみ、当該ユーザが視聴中の動画の表示画面に表示されてもよい。例えば、第1視聴ユーザのクライアント装置10aに
図7bに示されている画像60bが表示されている場合には、当該第1視聴ユーザのアバタ56aは画像60b内に表示されていないため、この画像60bにはエモーションボタン68が含まれなくともよい。これとは逆に、第1視聴ユーザのクライアント装置10aに
図7cに示されている画像60cが表示されている場合には、当該第1視聴ユーザのアバタ56aが画像60c内に表示されているため、この画像60cにエモーションボタン68が含まれてもよい。
【0113】
このように、ユーザからのエモーション表示要求に基づいて、当該ユーザのアバタが動画内で拍手などの動きを行う。エモーション表示要求は、アバタの動作を指示する動作指示の一種である。他の実施形態においては、エモーションボタン以外に、アバタの動作を指示する動作指示ボタンが表示画像に含まれてもよい。動作指示ボタンは、アバタの動作を指示するためのボタンである。動作指示ボタンは、例えば、ジャンプするという動作、手を振るという動作、サイリウムを振るという動作、及びこれら以外の動作を指示するために用いられ得る。動作指示ボタンが選択されると、動作指示要求がサーバ装置20に送信される。サーバ装置20では、アバタに対して動作指示要求に基づいた動作を行わせることができる。
【0114】
図7b~
図7dに示されているように、表示画像60b~60dが表示されるときには、第1視聴ユーザのアバタ56aが仮想空間50に既に配置されているため、表示画像60bにはアバタ参加ボタン63が含まれておらず、その代わりに表示要求ボタン64が含まれている。表示要求ボタン64は、視聴ユーザのアバタをキャラクタオブジェクト51と共に表示することを要求するためのボタンである。表示要求ボタン64は、クライアント装置10aを使用する第1視聴ユーザによって選択可能に表示画面60bに表示されている。表示要求ボタン64は、例えば、クライアント装置10aのタッチパネルのうち表示要求ボタン64が表示されている領域へのタップ操作により選択され得る。動画を視聴中の第1視聴ユーザによって表示要求ボタン64が選択されると、当該第1視聴ユーザのアバタ56aをキャラクタオブジェクト51と共に表示することを要求する表示要求がサーバ装置20に送信される。
【0115】
表示要求処理部21jは、第1視聴ユーザからの表示要求を受け付け、当該表示要求に基づいて、第1視聴ユーザのアバタ56aをキャラクタオブジェクト51と共に動画中に表示させる。配信中の動画に含まれるキャラクタオブジェクト(例えば、キャラクタオブジェクト51)とともにアバタを表示させるための要求を「フィーチャー表示要求(feature request)」と呼び、フィーチャー表示要求に応じてキャラクタオブジェクト51とともにアバタを表示することを「フィーチャー表示」と呼ぶことがある。
図7eに示されているように、ユーザがフィーチャー表示要求を行うと、表示画像60eにフィーチャー表示要求がなされたことを示す通知66が表示されてもよい。この通知66は、フィーチャー表示要求を行ったユーザのクライアント装置にて表示される画像においてのみ表示されてもよいし、当該ユーザのクライアント装置に表示されている画像に加えて他のユーザのクライアント装置にて表示されている画像にも表示されてもよい。第1視聴ユーザのアバタ56aとキャラクタオブジェクト51とが共に表示されている表示画像の例が
図7fに示されている。
図7fに示されている表示画像60fにおいては、キャラクタオブジェクト51の横に第1視聴ユーザのアバタ56aが表示されている。表示要求処理部21jは、第1視聴ユーザからの表示要求に基づいて、アバタ56aをフロアオブジェクト54aに表示してもよい。キャラクタオブジェクト51はフロアオブジェクト54aに配置されるから、アバタ56aをフロアオブジェクト54aに配置することにより、アバタ56aをキャラクタオブジェクト51と共に表示することができる。表示画像60fには、フィーチャー表示が実施されたことを告知するための通知67が表示されてもよい。
【0116】
フィーチャー表示要求に基づいてアバタ56aがキャラクタオブジェクト51とともに表示される場合には、アバタ56aは3D表示されてもよい。既述のように、アバタ56aは、フィーチャー表示要求を行う前の表示画像(例えば、表示画像60cや表示画像60d)では2D表示されてもよい。フィーチャー表示要求を行う前に2D表示されていたアバタ56aの表示態様をフィーチャー表示において3D表示に変更してもよい。フィーチャー表示においてはアバタ56aが3D表示されるため、フィーチャー表示要求を受信した時点よりも前にアバタ56aについての3D表示情報がロードされている場合にのみ、第1視聴ユーザのクライアント装置10aに表示される表示画像60bにおいて表示要求ボタン64が表示されるようにしてもよい。
【0117】
一実施形態において、3D表示情報がロードされているアバタを使用するユーザ用の表示画像において表示要求ボタン64を表示させ、3D表示情報がロードされていないアバタを使用するユーザ用の表示画像においては表示要求ボタン64を表示しないことにより、3D表示情報のランタイムロードが発生しないようにしてサーバ装置20の処理負荷を軽減することができる。一実施形態においては、ランタイムロードに必要な処理負荷の発生を避けるために、ユーザからアバタのフィーチャー表示を受け付けた場合に、当該アバタの3D表示情報がロード済か否かを判定し、ロード済である場合にのみ当該アバタの3D表示を行うようにしてもよい。この場合、3D表示情報がロードされているアバタを使用するユーザ用の表示画像において表示要求ボタン64を表示させる一方で3D表示情報がロードされていないアバタを使用するユーザ用の表示画像においては表示要求ボタン64を表示しないことにより、無駄なフィーチャー表示要求の送信及び当該フィーチャー表示要求に基づく処理の発生を防ぐことができる。
【0118】
アバタを動画にフィーチャー表示する場合に、当該アバタのフィーチャー表示に関連した演出効果を表示してもよい。例えば、フィーチャー表示されるアバタを強調するように、当該アバタにスポットライトが当たっているような演出を行うことができる。フィーチャー表示されているアバタのフィーチャー表示を終了させる場合にも同様のまたは別の演出効果を表示することができる。
【0119】
表示要求処理部21jは、第1視聴ユーザのアバタ56aをキャラクタオブジェクト51と共に動画に表示されてからの経過時間を計測してもよい。表示要求処理部21jは、当該経過時間を表示画像60fに表示してもよい。一実施形態においては、フィーチャー表示要求に基づいてキャラクタオブジェクト51とユーザのアバタとがともに表示される時間(あるアバタについてフィーチャー表示がなされる時間)の上限が設定されていてもよい。表示要求処理部21jは、当該上限となる時間を表示画像60fに表示してもよい。表示要求処理部21jは、当該上限となる時間と、第1視聴ユーザのアバタ56aをキャラクタオブジェクト51と共に動画に表示してからの経過時間とに基づいて、アバタ56aを表示可能な残り時間を計算し、当該残り時間を表示画像60fに表示してもよい。第1視聴ユーザのアバタ56aをキャラクタオブジェクト51と共に動画に表示されてからの経過時間、アバタ56aに設定された表示時間の上限、アバタ56aを表示可能な残り時間は、第1視聴ユーザのクライアント装置10aに表示されている表示画像60fのみに含められてもよく、第1視聴ユーザ及びその他のユーザのクライアント装置に表示されている表示画像60fに含められてもよい。フィーチャー表示が行われる時間の上限を設定することにより、より多くの視聴ユーザにフィーチャー表示によって自らのアバタをキャラクタオブジェクト51とともに表示する機会を提供することができる。また、実行中のフィーチャー表示の残り時間を表示することにより、視聴ユーザに対して次のアバタがフィーチャー表示されるまでの時間を知らせることができる。
【0120】
表示要求処理部21jは、動画の配信ユーザ又はそれ以外のオペレータからの指示に基づいて、当該動画に参加しているアバタを当該動画から排除することができる。排除されたアバタは、当該動画の表示画面に表示されなくなる。同様に、表示要求処理部21jは、動画の配信ユーザ又はそれ以外のオペレータからの指示に基づいて、フィーチャー表示されているアバタを当該フィーチャー表示から排除することができる。排除されたアバタは、当該フィーチャー表示の画面に表示されなくなる。配信ユーザは、例えば、動画内で望ましくないコメントを行ったアバタ、動画内で望ましくない行動をとったアバタ、それ以外の動画に参加させておくことが望ましくないアバタを当該動画から及び/又はフィーチャー表示の表示画面から排除することができる。
【0121】
一実施形態において、アバタ制御部21iは、あるユーザのアバタがフィーチャー表示されている場合に、当該アバタの動きを、当該ユーザからの指示に基づいて制御することができる。例えば、アバタ制御部21iは、フィーチャー表示されているアバタのユーザからのエモーション表示要求を受け付け、当該エモーション表示要求に基づいて、当該アバタの行動を制御することができる。あるユーザの端末から送信されたフェイスモーションやボディモーションを用いてアバタの行動を制御するようにしてもよい。
【0122】
一実施形態において、表示要求処理部21jは、第1視聴ユーザからのフィーチャー表示要求が配信ユーザによって許可された場合に、当該第1視聴ユーザのアバタ56aをキャラクタオブジェクト51と共に表示してもよい。表示要求処理部21jは、第1視聴ユーザからのフィーチャー表示要求を受け付けたことに応じて、第1視聴ユーザのアバタ56aをキャラクタオブジェクト51と共に表示することを許可するか否かを配信ユーザに問い合わせてもよい。表示要求処理部21jは、第1視聴ユーザからフィーチャー表示要求を受け付けると、第1視聴ユーザを含む表示要求ユーザリストを生成し、当該表示要求ユーザリストを配信ユーザに提示してもよい。ある動画についての表示要求ユーザリストは、フィーチャー表示要求を行ったユーザ(又は当該ユーザのアバタ)を特定する情報(例えば、ユーザID、ユーザ名、ニックネーム、アバタID、又はこれら以外の情報)をリスト形式で示す。表示要求ユーザリストには、フィーチャー表示要求を送信したユーザの全てを含まなくともよい。例えば、表示要求ユーザリストには、フィーチャー表示要求を送信したユーザのうち、当該ユーザのアバタの3D表示情報が既にロードされているユーザのみを含んでもよい。このような表示要求ユーザリストには、フィーチャー表示要求を送信したユーザのうち、当該ユーザのアバタの3D表示情報がロードされていないユーザを特定する情報を含まない。3D表示情報がロードされていないアバタの3D表示を行うためには3D表示情報をランタイムロードする必要があるため、サーバ装置20の処理リソースを多く消費する。フィーチャー表示要求に3D表示情報がロード済のアバタを使用するユーザのみが含まれるようにすることで、ランタイムロードを回避することができる。
【0123】
表示要求処理部21jは、表示要求ユーザリストをサポータコンピュータ40に送信することができる。サポーターB1及びサポーターB2は、サポーターコンピュータ40のディスプレイに表示された表示要求ユーザリストからキャラクタオブジェクトと共に表示することを認めるアバタのユーザを選択することができる。表示要求ユーザリストは、スタジオルームRのディスプレイ39に表示されてもよい。アクターA1は、コントローラ33aまたはコントローラ33bを操作することにより、表示要求ユーザリストから、キャラクタオブジェクト51と共に表示するアバタのユーザを選択してもよい。表示要求ユーザリストから選択されたユーザに対しては、そのユーザのアバタをキャラクタオブジェクト51と共に表示する許可がなされたことになり、当該アバタが動画内にフィーチャー表示される。
【0124】
一実施形態においては、表示要求ユーザリストからあるユーザが選択されたことに応じて当該ユーザを表示要求ユーザリストから削除してもよい。他の実施形態においては、あるユーザのアバタのフィーチャー表示が終了したことに応じて、当該ユーザを表示要求ユーザリストから削除してもよい。これにより、一度フィーチャー表示されたアバタを繰り返しフィーチャー表示することを防止できる。
【0125】
一実施形態においては、あるユーザがフィーチャー表示されている間、サポーターまたは配信ユーザが表示要求リストからフィーチャー表示するユーザを選択する指示をしたとしても、その選択されたユーザのアバタのフィーチャー表示が即座に行われなくともよい。また、フィーチャー表示が行われるまでは、その選択されたユーザが表示要求リストから削除もされなくてもよい。
【0126】
続いて、
図8を参照して、一態様による動画配信処理について説明する。
図8は、一実施形態における動画配信処理の流れを示すフロー図である。動画配信処理においては、スタジオルームRにアクターA1が在室していることが想定されている。
【0127】
まず、ステップS11では、アクターA1の体の動きのデジタル表現であるボディモーションデータと、アクターA1の顔の動き(表情)のデジタル表現であるフェイスモーションデータと、が生成される。ボディモーションデータの生成は、例えば、上記のボディモーションデータ生成部21aで行われ、フェイスモーションデータの生成は、例えば、上記のフェイスモーションデータ生成部21bで行われる。
【0128】
次に、ステップS12において、アクターA1のボディモーションデータ及びフェイスモーションデータを、アクターA1用のモデルデータに適用することにより、アクターA1の体及び表情の動きに同期して動くキャラクタオブジェクトのアニメーションが生成される。このアニメーションの生成は、例えば、上記のアニメーション生成部21cで行われる。
【0129】
次に、ステップS13において、仮想空間の画像と、アクターA1に対応するキャラクタオブジェクトのアニメーションを含む動画を生成する。この動画には、アクターA1の音声が合成されてもよい。アクターA1のキャラクタオブジェクトのアニメーションは、仮想空間内に配置されてもよい。この動画の生成は、例えば、上記の動画生成部21dで行われる。
【0130】
次に、ステップS14に移行し、ステップS13にて生成された動画が配信される。この動画は、ネットワーク15を介してクライアント装置10a~クライアント装置10c及びこれら以外のクライアント装置に配信される。この動画は、サポーターコンピュータ40に配信され、また、スタジオルームR内のスクリーンSに投影されてもよい。動画は、所定の配信期間にわたって継続して配信される。動画の配信期間は、例えば、30秒間、1分間、5分間、10分、30分間、60分間、120分間、及びこれら以外の任意の時間に定め得る。
【0131】
次に、ステップS15に進み、動画の配信を終了させるための終了条件が成就したか否かが判定される。終了条件は、例えば、配信の終了時刻に達したこと、サポーターコンピュータ40により配信を終了するための指示がなされたこと、またはこれら以外の条件である。終了条件が成就していなければステップS11~S14の処理が繰り返し実行され、アクターA1の動きに同期したアニメーションを含む動画の配信が継続される。動画について終了条件が成就していると判定された場合には、当該動画の配信処理を終了する。
【0132】
続いて、
図9を参照して、一態様による参加要求処理について説明する。
図9は、一実施形態における参加要求処理の流れを示すフロー図である。
図9の参加要求処理においては、クライアント装置10aによって動画を視聴している第1視聴ユーザから当該第1視聴ユーザのアバタ56aを当該動画へ参加させることが要求されたことが想定されている。
【0133】
まず、ステップS21において、第1視聴ユーザからの参加要求が受け付けられる。参加要求は、第1視聴ユーザによってクライアント装置10aに表示されているアバタ参加ボタン63が選択されたことに応じて、クライアント装置10aからサーバ装置20に送信される。
【0134】
次に、ステップS22において、参加要求を送信したユーザが属するグループが特定される。ユーザが第1グループまたは第2グループに属する場合には、参加要求を送信した第1視聴ユーザが第1グループと第2グループのいずれに属するかが判定される。この判定は、例えば、上記の参加要求処理部21gにより行われる。
【0135】
第1視聴ユーザが第1グループに属すると判定された場合には、参加要求処理は、ステップS23に進む。ステップS23では、第1視聴ユーザのアバタ56aが仮想空間50の第1領域52aに配置される。これにより、仮想カメラの描画領域に第1領域52aが含まれる場合には、第1視聴ユーザのアバタ56aが動画内の第1領域52aに相当する位置に表示される。アバタ56aの第1領域52aへの配置は、例えば、上記の参加要求処理部21gにより行われる。
【0136】
第1視聴ユーザが第2グループに属すると判定された場合には、参加要求処理は、ステップS24に進む。ステップS24では、参加条件が満たされているか否かが判定される。参加条件は、上述のように、第2領域52bに配置されているアバタの数が第2領域52bついて設定されている第2上限数よりも少ないこと、第1視聴ユーザが配信ユーザによって選択されたこと、またはこれら以外の条件である。参加条件が満たされているか否かの判定は、例えば、上記の参加要求処理部21gにより行われる。
【0137】
参加条件が充足されていると判定されると参加要求処理はステップS25に進む。ステップS25では、第1視聴ユーザのアバタ56aが仮想空間50の第2領域52bに配置される。これにより、仮想カメラの描画領域に第2領域52bが含まれる場合には、第1視聴ユーザのアバタ56aが動画内の第2領域52bに相当する位置に表示される。アバタ56aの第2領域52bへの配置は、例えば、上記の参加要求処理部21gにより行われる。
【0138】
参加条件が充足されていないと判定されると、第1視聴ユーザのアバタ56aの表示を行わずに参加要求処理を終了する。他の実施形態においては、参加条件が充足されていないと判定された場合に、参加条件が充足されるか否かの判定を繰り返し行ってもよい。
【0139】
続いて、
図10を参照して、一態様による表示要求処理について説明する。表示要求処理は、仮想空間に配置されているアバタのユーザからの表示要求に基づいて、当該アバタをキャラクタオブジェクト51と共に表示することを要求する表示要求に基づく処理である。
図10は、一実施形態における表示要求処理の流れを示すフロー図である。
図10の表示要求処理においては、クライアント装置10aによって動画を視聴している第1視聴ユーザから当該第1視聴ユーザのアバタ56aをキャラクタオブジェクト51と共に表示することを要求する表示要求がなされたことが想定されている。
【0140】
まず、ステップS31において、第1視聴ユーザからの表示要求が受け付けられる。表示要求は、第1視聴ユーザによってクライアント装置10aに表示されている表示要求ボタン64が選択されたことに応じて、クライアント装置10aからサーバ装置20に送信される。
【0141】
次に、ステップS32において、第1視聴ユーザからの表示要求が配信ユーザによって許可されたか否かが判定される。許可されたと判定された場合には、表示要求処理はステップS33に進む。この判定は、例えば、上記の表示要求処理部21jにより行われる。
【0142】
ステップS33では、第1視聴ユーザのアバタ56aをキャラクタオブジェクト51と共に表示するための処理がなされる。例えば、アバタ56aは、キャラクタオブジェクト51が配置されているフロアオブジェクト54aに配置される。アバタ56aのフロアオブジェクト54aへの配置は、例えば、上記の表示要求処理部21jにより行われる。
【0143】
配信ユーザによる許可が得られていないと判定されると、第1視聴ユーザのアバタ56aとキャラクタオブジェクト51とを共に表示することなく表示要求処理は終了する。他の実施形態では、配信ユーザからの許可がなされるまでステップS32での判定を繰り返し行ってもよい。
【0144】
以上の実施形態によって奏される作用効果について説明する。上記の一実施形態においては、サーバ装置20から配信される動画を視聴する第1視聴ユーザから当該動画への参加要求を受け付けたことに応じて、当該第1視聴ユーザが第1グループと第2グループのいずれに属するかが判定される。一実施形態においては、動画配信システム1又は視聴中の動画を配信している配信ユーザに対する第1視聴ユーザのエンゲージメントが高い場合に、第1視聴ユーザは第1グループの所属とされる。第1視聴ユーザが第1グループに属すると判定された場合には、当該第1視聴ユーザのアバタ56aが仮想空間50内の第1領域52aに配置される。一実施形態において、第1視聴ユーザが第1グループに属すると判定された場合には、それ以上の追加的な条件を要求することなく、アバタ56aが第1領域52aへ配置される。これにより、エンゲージメントが高い第1グループに属するユーザのアバタの動画への参加が妨げられない。一実施形態においては、第1グループに属するための基準の設定を通じて、第1グループに属するユーザの数を配信される動画に応じた適正な数に抑制することができる。これにより、配信される動画に多数のアバタが表示されることを防止できるので、サーバ装置20の処理負荷を抑制することができる。
【0145】
一実施形態においては、第1視聴ユーザが第2グループに属すると判定された場合には、参加条件を充足するか否かの判定がさらに行われ、参加条件を充足すると判定されたことに応じて、当該第1視聴ユーザのアバタ56aが仮想空間50内の第2領域52bに配置される。よって、参加条件の設定を通じて、第2領域52bに表示されるアバタの数を適正な数に抑えることができるので、サーバ装置20の処理負荷を抑制することができる。
【0146】
一実施形態において、第1領域52aは、仮想空間50において第2領域52bよりもキャラクタオブジェクト51の近く(又は、キャラクタオブジェクトが配置される第3領域の近く)に配置される。これにより、エンゲージメントが高い視聴ユーザをキャラクタオブジェクト51に配置することができる。一実施形態において、仮想カメラ53a~53eは、キャラクタオブジェクト51が配置されている位置を向くように仮想空間50に配置されている。よって、第1領域52aに配置されるアバタの方が第2領域52bに配置されるアバタよりも仮想カメラの描画領域に含まれる可能性が高い。このように、一実施形態においては、エンゲージメントが高い第1グループのユーザのアバタを、描画領域に含まれやすい第1領域52aに配置することができる。
【0147】
一実施形態において、参加条件は、第2領域52bに表示されているアバタの数が当該第2領域52bについて設定された表示数の上限よりも少ないことである。これにより、第2領域52bに表示されるアバタの数を上限数以下に抑えることができるので、サーバ装置20の処理負荷を抑制することができる。
【0148】
一実施形態において、参加条件は、視聴ユーザが配信ユーザによって選択されることである。これにより、配信ユーザにとって好ましい視聴ユーザのアバタを動画に参加させることができる。このため、配信される動画を介して形成されるコミュニティを健全に保ちやすくなる。
【0149】
一実施形態においては、仮想空間50に配置されているアバタに対する動作指示を受け付け、当該動作指示に基づいて当該アバタの動きが制御される。これにより、視聴ユーザは、アバタへの動作指示を通じて、動画に含まれるキャラクタや当該動画に参加している他の視聴ユーザとインタラクトすることができる。
【0150】
一実施形態においては、視聴ユーザのアバタが仮想空間50に配置されている間に当該アバタをキャラクタオブジェクト51と共に表示するための表示要求が受け付けられ、この表示要求が許可されたことに応じて、キャラクタオブジェクト51が配置されている第3領域に当該アバタが表示される。これにより、視聴ユーザに対して、配信ユーザのキャラクタとより密にコミュニケートする手段を提供することができる。
【0151】
本発明の実施形態は、上述した実施形態に限定されるものではなく、その要旨を逸脱しない範囲内で様々な変更が可能である。例えば、配信される動画は、スタジオルームR以外で撮影及び生成されてもよい。例えば、配信される動画を生成するための撮影は、アクターやサポーターの自宅で行われてもよい。クライアント装置10aは、アバタ56aとキャラクタオブジェクト51とがともに表示されている画像(例えば、表示画像60f)を他の通信装置に送信する機能を有していてもよい。例えば、第1視聴ユーザは、クライアント装置10aの機能を利用してアバタ56aとキャラクタオブジェクト51とがともに表示されている画像を、サーバ装置20が提供する動画サービス内のソーシャルネットワーキングサービス又はサーバ装置20が提供する動画サービスとは異なるソーシャルネットワーキングサービスにおいて配信することができる。
【0152】
本明細書において説明された処理手順、特にフロー図を用いて説明された処理手順においては、その処理手順を構成する工程(ステップ)の一部を省略すること、その処理手順を構成する工程として明示されていない工程を追加すること、及び/又は当該工程の順序を入れ替えることが可能であり、このような省略、追加、順序の変更がなされた処理手順も本発明の趣旨を逸脱しない限り本発明の範囲に含まれる。
【符号の説明】
【0153】
1 動画配信システム