以下、図面を適宜参照し、本発明の様々な実施形態を説明する。複数の図面において同一の又は類似する構成要素には同じ参照符号が付される。
図1から図4を参照して、一実施形態による動画配信システムについて説明する。図1は、一実施形態による動画配信システム1を示すブロック図であり、図2は、動画配信システム1で配信される動画の制作が行われるスタジオの設備を模式的に示す模式図であり、図3及び図4は、動画配信システム1において記憶される情報を説明するための図である。
動画配信システム1は、クライアント装置10a〜10cと、サーバ装置20と、スタジオユニット30と、ストレージ60と、を備える。クライアント装置10a〜10cと、サーバ装置20と、ストレージ60とは、ネットワーク50を介して相互に通信可能に接続されている。サーバ装置20は、後述するように、キャラクタのアニメーションを含む動画を配信するように構成される。この動画に含まれるキャラクタは、仮想空間内でモーション制御されてもよい。
この動画は、サーバ装置20からクライアント装置10a〜10cの各々に配信され得る。クライアント装置10aのユーザである第1視聴ユーザ、クライアント装置10bのユーザである第2視聴ユーザ、及びクライアント装置10cのユーザである第3視聴ユーザは、配信された動画を、各クライアント装置により視聴することができる。動画配信システム1は、3台よりも少ない数のクライアント装置を備えていてもよく、3台よりも多い数のクライアント装置を備えていてもよい。
クライアント装置10a〜10cは、スマートフォンなどの情報処理装置である。クライアント装置10a〜10cは、スマートフォン以外に、携帯電話機、タブレット端末、パーソナルコンピュータ、電子書籍リーダー、ウェアラブルコンピュータ、ゲーム用コンソール、及びこれら以外の動画を再生可能な各種情報処理装置であってもよい。クライアント装置10a〜10cの各々は、コンピュータプロセッサ、メモリ、通信I/F、ディスプレイ、ジャイロセンサ等の各種センサを備えるセンサユニット、マイク等の集音装置、及び各種情報を記憶するストレージを備えていてもよい。
図示の実施形態において、サーバ装置20は、コンピュータプロセッサ21と、通信I/F22と、ストレージ23と、を備えている。
コンピュータプロセッサ21は、ストレージ23又はそれ以外のストレージからオペレーティングシステムや様々な機能を実現する様々なプログラムをメモリにロードし、ロードしたプログラムに含まれる命令を実行する演算装置である。コンピュータプロセッサ21は、例えば、CPU、MPU、DSP、GPU、これら以外の各種演算装置、又はこれらの組み合わせである。コンピュータプロセッサ21は、ASIC、PLD、FPGA、MCU等の集積回路により実現されてもよい。図1においては、コンピュータプロセッサ21が単一の構成要素として図示されているが、コンピュータプロセッサ21は複数の物理的に別体のコンピュータプロセッサの集合であってもよい。本明細書において、コンピュータプロセッサ21によって実行されるとして説明されるプログラム又は当該プログラムに含まれる命令は、単一のコンピュータプロセッサで実行されてもよいし、複数のコンピュータプロセッサにより分散して実行されてもよい。また、コンピュータプロセッサ21によって実行されるプログラム又は当該プログラムに含まれる命令は、複数の仮想コンピュータプロセッサにより実行されてもよい。
通信I/F22は、ハードウェア、ファームウェア、又はTCP/IPドライバやPPPドライバ等の通信用ソフトウェア又はこれらの組み合わせとして実装される。サーバ装置20は、通信I/F22を介して、他の装置とデータを送受信することができる。
ストレージ23は、コンピュータプロセッサ21によりアクセスされる記憶装置である。ストレージ23は、例えば、磁気ディスク、光ディスク、半導体メモリ、又はデータを記憶可能な前記以外の各種記憶装置である。ストレージ23には、様々なプログラムが記憶され得る。ストレージ23に記憶され得るプログラム及び各種データの少なくとも一部は、サーバ装置20とは物理的に別体のストレージ(例えば、ストレージ60)に格納されてもよい。
スタジオユニット30の構成要素の多くは、例えば、図2に示されているスタジオルームRに配されている。図示のように、スタジオルームRにおいては、アクターA1及びアクターA2がパフォーマンスを行っている。スタジオユニット30は、アクターA1及びアクターA2の動き及び表情を検出し、検出した情報をサーバ装置20に出力するように構成されている。
アクターA1及びアクターA2はいずれも、スタジオユニット30に備えられる後述のセンサ群によって動きや表情がキャプチャされる対象である。アクターA1及びアクターA2は、例えば、パフォーマンスを行う人間、動物、または運動する物体である。アクターA1及びアクターA2は、例えば、自立運動可能なロボットであってもよい。スタジオルームR内のアクターの数は、1であってもよいし、3以上であってもよい。
スタジオユニット30は、アクターA1に装着される6つのモーションセンサ31a〜31fと、アクターA1の左手に把持されているコントローラ33aと、アクターA1の右手に把持されているコントローラ33bと、装着具37bを介してアクターA1の頭部に取り付けられるカメラ37aと、を有する。スタジオユニット30はまた、アクターA2に装着される6つのモーションセンサ32a〜32fと、アクターA2の左手に把持されているコントローラ34aと、アクターA2の右手に把持されているコントローラ34bと、装着具38bを介してアクターA2の頭部に取り付けられるカメラ38aと、を有する。装着具37b及び装着具38bの各々には、音声データを取得するためのマイクが取り付けられてもよい。このマイクは、アクターA1及びアクターA2の発話を音声データとして取得することができる。マイクは、装着具37b及び装着具38bを介してアクターA1及びアクターA2に装着される装着型のマイクであってもよく、スタジオルームRの床、壁、又は天井に設置される設置型のものであってもよい。スタジオユニット30は、上記の構成要素に加えて、ベースステーション35aと、ベースステーション35bと、トラッキングセンサ36aと、トラッキングセンサ36bと、ディスプレイ39と、を有する。スタジオルームRとガラス窓を隔てた隣室には、サポーターコンピュータ40が設置されている。サーバ装置20は、サポーターコンピュータ40が設置されている部屋と同じ部屋に設置されてもよい。
モーションセンサ31a〜31f及びモーションセンサ32a〜32fは、ベースステーション35a及びベースステーション35bと協働して、自らの位置及び向きを検出する。一実施形態において、ベースステーション35a及びベースステーション35bは、多軸レーザーエミッターである。ベースステーション35aは、同期用の点滅光を発した後に、例えば鉛直軸の周りでレーザー光を走査する。ベースステーション35bは、例えば水平軸の周りでレーザー光を走査する。モーションセンサ31a〜31f及びモーションセンサ32a〜32fはそれぞれ、ベースステーション35a及びベースステーション35bからの点滅光及びレーザー光の入射を検知する光センサーを複数備えてもよい。モーションセンサ31a〜31f及びモーションセンサ32a〜32fはそれぞれ、点滅光の入射タイミングとレーザー光の入射タイミングとの時間差、各光センサーでの受光時間、各光センサーが検知したレーザー光の入射角度、及び必要に応じてこれら以外の情報に基づいて、自らの位置及び向きを検出してもよい。モーションセンサ31a〜31f及びモーションセンサ32a〜32fは、例えば、HTC CORPORATIONから提供されているVive Trackerであってもよい。ベースステーション35a及びベースステーション35bは、例えば、HTC CORPORATIONから提供されているベースステーションであってもよい。
モーションセンサ31a〜31f及びモーションセンサ32a〜32fの各々において算出された各モーションセンサの位置及び向きを示す検出情報は、サーバ装置20に送信される。この検出情報は、モーションセンサ31a〜31f及びモーションセンサ32a〜32fの各々からサーバ装置20に無線送信されてもよい。ベースステーション35a及びベースステーション35bは、一定のインターバルで点滅光の発光及びレーザー光の走査を行うので、各モーションセンサの検出情報は、当該インターバルごとに更新される。
図示の実施形態において、アクターA1は、6つのモーションセンサ31a〜31fを装着している。モーションセンサ31a,31b,31c,31d,31e,及び31fはそれぞれ、アクターA1の左手首、右手首、左足甲、右足甲、腰、及び頭頂に装着されている。モーションセンサ31a〜31fは、装着具を介してアクターA1に装着されてもよい。アクターA2は、6つのモーションセンサ32a〜32fを装着している。モーションセンサ32a〜32fは、アクターA2に対してモーションセンサ31a〜31fと同様の位置に装着され得る。図2に示されているモーションセンサ31a〜31f及びモーションセンサ32a〜32fは例示である。モーションセンサ31a〜31fは、アクターA1の様々な部位に装着され得るし、モーションセンサ32a〜32fは、アクターA2の様々な部位に装着され得る。アクターA1及びアクターA2に装着されるモーションセンサの数は5以下であってもよいし7以上であってもよい。このように、アクターA1及びアクターA2の体の各部に装着されたモーションセンサ31a〜31f及びモーションセンサ32a〜32fの位置及び向きを検出することにより、アクターA1及びアクターA2の体の動きを検出することができる。
一実施形態においては、アクターA1及びアクターA2に装着される複数のモーションセンサの各々に多数の赤外LEDを搭載し、この赤外LEDからの光を、スタジオルームRの床や壁に設けられた赤外線カメラで検知することで、当該モーションセンサの各々の位置及び向きを検出してもよい。赤外LEDに代えて可視光LEDを使用し、この可視光LEDからの光を可視光カメラで検出することで、当該モーションセンサの各々の位置及び向きを検出してもよい。このように、アクターに装着される複数のモーションセンサの各々に発光部(例えば、赤外LEDや可視光LED)を設け、この発光部からの光をスタジオルームR内に設けられた受光部(例えば、赤外線カメラや可視光カメラ)で検出することで、当該モーションセンサの各々の位置及び向きを検出してもよい。
一実施形態においては、モーションセンサ31a〜31f及びモーションセンサ32a〜32fに代えて、複数の反射マーカーを用いることができる。反射マーカーは、アクターA1及びアクターA2の各々に粘着テープなどにより貼付される。このように反射マーカーが貼付されたアクターA1及びアクターA2を撮影して撮影データを生成し、この撮影データを画像処理することにより、反射マーカーの位置及び向きを検出することができる。
コントローラ33a及びコントローラ33bは、アクターA1の操作に応じたコントロール信号をサーバ装置20に出力する。同様に、コントローラ34a及びコントローラ34bは、アクターA2の操作に応じたコントロール信号をサーバ装置20に出力する。
トラッキングセンサ36a及びトラッキングセンサ36bは、動画に含まれる仮想空間を構築するための仮想カメラの設定情報を定めるためのトラッキング情報を生成する。トラッキングセンサ36a及びトラッキングセンサ36bのトラッキング情報は、各々の三次元直交座標系での位置および各軸回りの角度として算出される。トラッキングセンサ36aの位置および向きは、操作者の操作に応じて変更されえる。トラッキングセンサ36aは、その位置および向きを示すトラッキング情報をトラッキング情報サーバ装置20に送信する。同様に、トラッキングセンサ36bの位置および向きは、操作者の操作に応じて設定される。トラッキングセンサ36bは、その位置および向きを示すトラッキング情報をトラッキング情報サーバ装置20に送信する。
カメラ37aは、上記のように、アクターA1の頭部に取り付けられている。例えば、カメラ37aは、アクターA1の顔を撮像できるように配置されている。カメラ37aは、アクターA1の顔を連続的に撮像し、アクターA1の顔の撮像データを取得する。同様に、カメラ38aは、アクターA2の頭部に取り付けられている。カメラ38aは、アクターA2の顔を撮像できるように配置されており、アクターA2の顔を連続的に撮像し、アクターA2の顔の撮像データを取得する。カメラ37aは、アクターA1の顔の撮像データをサーバ装置20に送信し、カメラ38aは、アクターA1の顔の撮像データをサーバ装置20に送信する。カメラ37a及びカメラ38aは、人物の顔の奥行きを検出可能な3Dカメラであってもよい。
ディスプレイ39は、サポートコンピュータ40から受信した情報を表示するように構成される。サポートコンピュータ40からディスプレイ39に送信される情報は、例えば、テキスト情報、画像情報、及びこれら以外の各種情報を含み得る。ディスプレイ39は、アクターA1及びアクターA2によって視認可能な位置に配置される。
図示の実施形態において、サポーターコンピュータ40は、スタジオルームRの隣室に設置されている。サポーターコンピュータ40が設置されている部屋とスタジオルームRとはガラス窓によって隔てられているため、サポーターコンピュータ40のオペレータ(本明細書では「サポーター」ということがある。)は、アクターA1及びアクターA2を視認できる。図示の実施形態においては、サポーターコンピュータ40のオペレータとして、サポーターB1及びサポーターB2が在室している。
サポーターコンピュータ40は、サポーターB1及びサポーターB2の操作に応じて、スタジオユニット30の構成要素の設定を変更することができるように構成されてもよい。サポーターコンピュータ40は、例えば、ベースステーション35a及びベースステーション35bによる走査インターバルの設定、トラッキングセンサ36a及びトラッキングセンサ36bの位置または向きの設定、及びこれら以外の各種機器の各種設定の変更を行うことができる。サポーターB1及びサポータB2の少なくとも一方は、サポーターコンピュータ40にメッセージを入力し、当該入力されたメッセージをディスプレイ39に表示することができる。
図2に示されているスタジオユニット30の構成要素及び機能は例示である。本発明に適用可能なスタジオユニット30は、図示されていない様々な構成要素を備え得る。例えば、スタジオユニット30は、プロジェクタを備えていてもよい。当該プロジェクタは、クライアント装置10aまたはそれ以外のクライアント装置に配信される動画をスクリーンSに投影することができる。
次に、一態様において、ストレージ23に記憶される情報について説明する。図示の実施形態においては、ストレージ23には、モデルデータ23a、オブジェクトデータ23b、保有リスト23c、候補リスト23d、及び前記以外の配信動画の生成及び配信に必要な様々な情報が記憶される。
モデルデータ23aは、キャラクタのアニメーションを生成するためのモデルデータである。モデルデータ23aは、3次元のアニメーションを生成するための3次元モデルデータであってもよいし、2次元のモデルデータを生成するための2次元モデルデータであってもよい。モデルデータ23aは、例えば、キャラクタの骨格を示すリグデータ(「スケルトンデータ」と呼ばれることもある。)と、キャラクタの表面の形状や質感を示す表面データと、を含む。モデルデータ23aには、互いに異なる複数のモデルデータを含むことができる。この複数のモデルデータは、互いに異なるリグデータを有していてもよいし、同じリグデータを有していてもよい。この複数のモデルデータは、互いと異なる表面データを有していてもよいし、同じ表面データを有していてもよい。図示の実施形態においては、アクターA1に対応するキャラクタオブジェクト及びアクターA2に対応するキャラクタオブジェクトを生成するために、モデルデータ23aは、互いに異なる少なくとも2種類のモデルデータを有する。このアクターA1に対応するキャラクタオブジェクト用のモデルデータとアクターA2に対応するキャラクタオブジェクト用のモデルデータとは、例えば、同じリグデータを有するが、異なる表面データを有していてもよい。
オブジェクトデータ23bは、動画を構成する仮想空間を構築するためのアセットデータを含む。オブジェクトデータ23bは、動画を構成する仮想空間の背景を描画するためのデータ、動画に表示される各種物体を描画するためのデータ、及びこれら以外の動画に表示される各種オブジェクトを描画するためのデータが含まれる。オブジェクトデータ23aには、仮想空間におけるオブジェクトの位置を示すオブジェクト位置情報を含んでもよい。
オブジェクトデータ23bには、上記以外にも、クライアント装置10a〜10cの視聴ユーザからの表示要求に基づいて動画に表示されるギフトオブジェクトが含まれ得る。ギフトオブジェクトには、エフェクトオブジェクトと、通常オブジェクトと、装飾オブジェクトと、が含まれ得る。視聴ユーザは、所望のギフトオブジェクトを購入することができる。
エフェクトオブジェクトは、配信動画の視聴画面全体の印象に影響を与えるオブジェクトであり、例えば紙吹雪を模したオブジェクトである。紙吹雪を模したオブジェクトは、視聴画面全体に表示されてもよく、これにより表示の前後における視聴画面全体の印象を変えることができる。エフェクトオブジェクトは、キャラクタオブジェクトと重複するように表示されることもあるが、キャラクタオブジェクトの特定の部位と関連付けられた表示はなされない点で装飾オブジェクトと異なっている。
通常オブジェクトは、視聴ユーザからアクター(例えば、アクターA1またはアクターA2)へのデジタル的なギフトとなるオブジェクトであり、例えばぬいぐるみや花束を模したオブジェクトである。一態様において、通常オブジェクトは、キャラクタオブジェクトと接しないように動画の表示画面に表示される。一態様において、通常オブジェクトは、キャラクタオブジェクトと重複しないように動画の表示画面に表示される。通常オブジェクトは、仮想空間においてキャラクタオブジェクト以外のオブジェクトと重複するように表示されてもよい。通常オブジェクトは、キャラクタオブジェクトと重複するように表示されることもあるが、キャラクタオブジェクトの特定の部位と関連付けられた表示はなされない点で装飾オブジェクトと異なっている。一態様において、通常オブジェクトをキャラクタオブジェクトと重複して表示させる場合には、当該通常オブジェクトは、当該キャラクタオブジェクトの顔を含む頭部以外の部分と重複し、当該キャラクタオブジェクトの頭部とは重複しないように表示される。
装飾オブジェクトは、キャラクタオブジェクトの特定の部位と関連付けて表示画面に表示されるオブジェクトである。一態様において、キャラクタオブジェクトの特定の部位と関連付けて表示画面に表示される装飾オブジェクトは、当該キャラクタオブジェクトの当該特定の部位に接するように表示画面に表示される。一態様において、キャラクタオブジェクトの特定の部位と関連付けて表示画面に表示される装飾オブジェクトは、当該キャラクタオブジェクトの当該特定の部位の一部又は全部を覆うように表示画面に表示される。特定の部位は、3次元座標空間における位置を示す3次元位置情報で特定されてもよいし、3次元座標空間の位置情報に関連付けられていてもよい。例えばキャラクタの頭部において、特定の部位は、頭部の前方左側、前方右側、後方左側、後方右側、中央前側、中央後側、左目、右目、左耳、右耳、及び髪全体という単位で定められてもよい。
装飾オブジェクトは、例えば、キャラクタオブジェクトに装着されるアクセサリー(カチューシャ、ネックレス、イヤリングなど)、衣服(Tシャツなど)、コスチューム、及びこれら以外のキャラクラオブジェクトに装着可能なオブジェクトである。装飾オブジェクトに対応するオブジェクトデータ23bには、当該装飾オブジェクトがキャラクタオブジェクトのどの部位に関連付けられるかを示す装着位置情報が含まれてもよい。ある装飾オブジェクトの装着位置情報は、当該装飾オブジェクトがキャラクタオブジェクトのどの部位に装着されるかを示すことができる。例えば、装飾オブジェクトがカチューシャである場合には、当該装飾オブジェクトの装着位置情報は、当該装飾オブジェクトがキャラクタオブジェクトの「頭部」に装着されることを示してもよい。装飾オブジェクトが装着される装着位置情報が3次元座標空間の位置として特定される場合には、当該装着位置情報は3次元座標空間における複数の位置と関連付けられてもよい。例えば「カチューシャ」を示す装飾オブジェクトが装着される位置を示す装着位置情報は、キャラクタオブジェクトの「頭部後方左側」と「頭部後方右側」の2つの部位と関連付けられてもよい。つまり、「カチューシャ」を示す装飾オブジェクトは、「頭部後方左側」及び「頭部後方右側」の両方に装着されてもよい。装飾オブジェクトがTシャツである場合には、当該装飾オブジェクトの装着位置情報は、当該装飾オブジェクトがキャラクタオブジェクトの「胴部」に装着されることを示してもよい。
ギフトオブジェクトの各々には、その種類に応じた表示時間が設定されていてもよい。一態様において、装飾オブジェクトの表示時間は、エフェクトオブジェクトの表示時間及び通常オブジェクトの表示時間よりも長く設定されていてもよい。例えば、装飾オブジェクトの表示時間は60秒間に設定され、エフェクトオブジェクトの表示時間は5秒間に設定され、通常オブジェクトの表示時間は10秒間に設定されてもよい。
保有リスト23cは、動画の視聴ユーザが保有しているギフトオブジェクトを示すリストである。保有リスト23cの例が図3に示されている。図示のように、保有リスト23cにおいては、視聴ユーザのアカウント情報(例えば、視聴ユーザのユーザID)と対応づけて、当該視聴ユーザが保有するギフトオブジェクトを特定するオブジェクトIDが記憶されている。この視聴ユーザは、例えば、クライアント装置10a〜クライアント装置10cの第1視聴ユーザ〜第3視聴ユーザが含まれる。
候補リスト23dは、視聴ユーザから表示要求がなされた装飾オブジェクトのリストである。後述するように、装飾オブジェクトを保有している視聴ユーザは、保有している装飾オブジェクトの表示要求を行うことができる。候補リスト23dにおいては、装飾オブジェクトの表示要求を行った視聴ユーザのアカウント情報と対応付けて、当該装飾オブジェクトを特定するオブジェクトIDが記憶される。この候補リスト23dは、配信者ごとに作成されてもよい。候補リスト23dは、例えば、配信者(アクターA1、アクターA2、サポーターB1、及び/又はサポーターB2)を特定する配信者識別情報と対応付けて記憶されてもよい。
次に、コンピュータプロセッサ21により実現される機能についてより具体的に説明する。コンピュータプロセッサ21は、配信プログラムに含まれるコンピュータ読み取り可能な命令を実行することにより、ボディモーションデータ生成部21a、フェイスモーションデータ生成部21b、アニメーション生成部21c、動画生成部21d、動画配信部21e、表示要求処理部21f、装飾オブジェクト選択部21g、及びオブジェクト購入処理部21hとして機能する。コンピュータプロセッサ21により実現される機能の少なくとも一部は、動画配信システム1のコンピュータプロセッサ21以外のコンピュータプロセッサにより実現されてもよい。コンピュータプロセッサ21により実現される機能の少なくとも一部は、例えば、サポーターコンピュータ40に搭載されているコンピュータプロセッサにより実現されてもよい。
ボディモーションデータ生成部21aは、モーションセンサ31a〜31fの各々の検出情報に基づいて、アクターA1の体の各部位の第1ボディモーションデータを生成し、また、モーションセンサ32a〜32fの各々の検出情報に基づいて、アクターA2の体の各部位の位置及び向きのデジタル表現である第2ボディモーションデータを生成する。本明細書では、第1ボディモーションデータ及び第2ボディモーションデータを総称して単に「ボディモーションデータ」と呼ぶことがある。ボディモーションデータは、時間の経過に伴って随時生成される。例えば、ボディモーションデータは、所定のサンプリング時間間隔ごとに生成されてもよい。このように、ボディモーションデータは、アクターA1及びアクターA2の体の動きを時系列的にデジタルデータとして表現することができる。図示の実施形態においては、モーションセンサ31a〜31f及びモーションセンサ32a〜32fは、アクターA1及びアクターA2の各々の左右の手足、腰、及び頭部に装着されているため、モーションセンサ31a〜31f及びモーションセンサ32a〜32fの検出情報に基づいて、アクターA1及びアクターA2の概ね全身の位置及び向きを経時的にデジタル表現することが可能である。ボディモーションデータは、例えば、モデルデータ23aに含まれるリグデータを構成する骨(ボーン)の位置及び回転角度を規定することができる。
フェイスモーションデータ生成部21bは、カメラ37aの撮像データに基づいて、アクターA1の顔の動きのデジタル表現である第1フェイスモーションデータを生成し、また、カメラ38aの各々の撮像データに基づいて、アクターA2の顔の動きのデジタル表現である第2フェイスモーションデータを生成する。本明細書では、第1フェイスモーションデータ及び第2フェイスモーションデータを総称して単に「フェイスモーションデータ」と呼ぶことがある。フェイスモーションデータは、時間の経過に伴って随時生成される。例えば、フェイスモーションデータは、所定のサンプリング時間間隔ごとに生成されてもよい。このように、フェイスモーションデータは、アクターA2及びアクターA2の顔の動き(表情の変化)を時系列的にデジタル表現することができる。
アニメーション生成部21cは、ボディモーションデータ生成部21aによって生成されたボディモーションデータ及びフェイスモーションデータ生成部21bによって生成されたフェイスモーションデータを、モデルデータ23aに含まれる所定のモデルデータに適用することにより、仮想空間内で動き、また、表情が変化するキャラクタオブジェクトのアニメーションを生成するように構成される。具体的には、アニメーション生成部21cは、アクターA1に関する第1ボディモーションデータ及び第1フェイスモーションデータに基づいて、アクターA1の体及び表情の動きに同期して動くキャラクタオブジェクトのアニメーションを生成し、アクターA2に関する第2ボディモーションデータ及び第2フェイスモーションデータに基づいて、アクターA2の体及び表情の動きに同期して動くキャラクタオブジェクトのアニメーションを生成することができる。本明細書においては、アクターA1の動き及び表情に基づいて生成されたキャラクタオブジェクトを「第1キャラクタオブジェクト」といい、アクターA2の動き及び表情に基づいて生成されたキャラクタオブジェクトを「第2キャラクタオブジェクト」ということがある。
動画生成部21dは、オブジェクトデータ23bを用いて仮想空間を構築し、この仮想空間と、アクターA1に対応する第1キャラクタオブジェクトのアニメーションと、アクターA2に対応する第2キャラクタオブジェクトのアニメーションと、を含む動画を生成する。第1キャラクタオブジェクトは、トラッキングセンサ36aに対するアクターA1の位置に合致するように仮想空間内に配置され、第2キャラクタオブジェクトは、トラッキングセンサ36aに対するアクターA2の位置に合致するように仮想空間内に配置される。したがって、トラッキングセンサ36aの位置または向きを変更することにより、仮想空間内における第1キャラクタオブジェクト及び第2キャラクタオブジェクトの位置及び向きを変化させることができる。
一態様において、動画生成部21dは、トラッキングセンサ36aのトラッキング情報に基づいて仮想空間を構築する。例えば、動画生成部21dは、トラッキングセンサ36aのトラッキング情報に基づいて仮想カメラの設定情報(仮想空間内における位置、注視位置、注視方向、及び画角)を定め、この仮想カメラの設定情報に基づいて仮想空間全体のうちの描画領域を定め、この仮想空間の描画領域を表示するための動画情報を生成する。
動画生成部21dは、トラッキングセンサ36aのトラッキング情報に代えて、または、トラッキングセンサ36aのトラッキング情報に加えて、トラッキングセンサ36bのトラッキング情報に基づいて、仮想空間内における第1キャラクタオブジェクト及び第2キャラクタオブジェクトの位置及び向き、並びに、仮想カメラの設定情報を定めるように構成されてもよい。
動画生成部21dは、生成した動画に、スタジオユニット30のマイクから取得したアクターA1及びアクターA2の音声を合成することができる。
以上のようにして、動画生成部21dは、アクターA1の体及び表情の動きに同期して動く第1キャラクタオブジェクトのアニメーション、並びに、アクターA2の体及び表情の動きに同期して動く第2キャラクタオブジェクトのアニメーションを生成し、このアニメーションにアクターA1及びアクターA2の音声が合成された配信用の動画を生成することができる。
動画配信部21eは、動画生成部21dにおいて生成された動画を配信する。この動画は、ネットワーク50を介してクライアント装置10a〜クライアント装置10c及びこれら以外のクライアント装置に配信される。受信された動画は、クライアント装置10a〜クライアント装置10cにおいて再生される。
この動画は、スタジオルームR内に設置されているクライアント装置(不図示)に配信され、このクライアント装置から短焦点プロジェクタを介してスクリーンSに投影されてもよい。また、この動画は、サポーターコンピュータ40に配信されてもよい。これにより、サポーターB1及びサポーターB2は、配信されている動画の視聴画面を確認することができる。
サーバ装置20からクライアント装置10aに配信され、このクライアント装置10aにおいて再生されている動画の表示例が図5に示されている。図示のように、サーバ装置20から配信された動画の表示画像70は、クライアント装置10aのディスプレイに表示される。このクライアント装置10aに表示されている表示画像70は、仮想空間内に、アクターA1に対応するキャラクタオブジェクト71Aと、アクターA2に対応するキャラクタオブジェクト71Bと、テーブルを示すオブジェクト72と、が含まれている。オブジェクト72は、ギフトオブジェクトではなく、オブジェクトデータ23bに含まれている仮想空間を構築するためのオブジェクトの一つである。キャラクタオブジェクト71Aは、アクターA1の第1ボディモーションデータ及び第1フェイスモーションデータをモデルデータ23aに含まれているアクターA1用のモデルデータに適用することにより生成される。キャラクタオブジェクト71Aは、第1ボディモーションデータ及び第1フェイスモーションデータに基づいてモーション制御される。キャラクタオブジェクト71Bは、アクターA2の第2ボディモーションデータ及び第2フェイスモーションデータを、モデルデータ23aに含まれているアクターA2用のモデルデータに適用することにより生成される。キャラクタオブジェクト71Bは、第2ボディモーションデータ及び第2フェイスモーションデータに基づいてモーション制御される。したがって、キャラクタオブジェクト71Aは、アクターA1の体及び表情の動きに同期して画面内で動くように制御され、キャラクタオブジェクト71Bは、アクターA2の体及び表情の動きに同期して画面内で動くように制御される。
上記のように、サーバ装置20からの配信動画は、サポーターコンピュータ40に配信されてもよい。サポーターコンピュータ40に配信された動画は、サポーターコンピュータ40において図5と同様に表示される。サポーターB1及びサポーターB2は、サポーターコンピュータ40において再生されている動画を見て、スタジオユニット30の構成要素の設定を変更することができる。一態様において、サポーターB1及びサポーターB2は、配信中の動画においてキャラクタオブジェクト71A及びキャラクタオブジェクト71Bのアングルを変更したい場合には、トラッキングセンサ36aの向きの変更を指示する指示信号をサポーターコンピュータ40からトラッキングセンサ36aに送信することができる。トラッキングセンサ36aは、当該指示信号に応じて、その向きを変更することができる。例えば、トラッキングセンサ36aは、スタンドにその軸周りにアクチュエータを内蔵した回動機構を介して回動可能に取り付けられており、トラッキングセンサ36aがその向きの変更を指示する指示信号を受信すると、当該指示信号に基づいて当該回動機構のアクチュエータが駆動され、当該指示信号に応じた角度だけトラッキングセンサ36aが回動されてもよい。一態様において、サポーターB1及びサポーターB2は、トラッキングセンサ36aからのトラッキング情報に代えて、トラッキングセンサ36bからのトラッキング情報を用いるための指示をサポーターコンピュータ40からトラッキングセンサ36a及びトラッキングセンサ36bに送信してもよい。
一態様において、サポーターB1及びサポーターB2は、サポーターコンピュータ40にて再生されている動画を見てアクターA1またはアクターA2に対する指示が必要と判断した場合には、その指示を示すメッセージをサポーターコンピュータ40に入力し、このメッセージをディスプレイ39に出力することができる。例えば、サポーターB1及びサポーターB2は、このディスプレイ39に表示されるメッセージを通じて、アクターA1またはアクターA2に対して立ち位置の変更を指示することができる。
表示要求処理部21fは、視聴ユーザのクライアント装置からギフトオブジェクトの表示要求を受け付け、当該表示要求に応じた処理を行う。各視聴ユーザは、自らのクライアント装置を操作することにより、ギフトオブジェクトの表示要求をサーバ装置20に送信することができる。例えば、第1視聴ユーザは、クライアント装置10aを操作することにより、ギフトオブジェクトの表示要求をサーバ装置20に送信することができる。ギフトオブジェクトの表示要求には、視聴ユーザのユーザIDと、表示を要求するオブジェクトを特定する識別情報(オブジェクトID)が含まれてもよい。
上述のように、ギフトオブジェクトには、エフェクトオブジェクトと、通常オブジェクトと、装飾オブジェクトと、が含まれ得る。エフェクトオブジェクト及び通常オブジェクトは、第1オブジェクトの例である。また、エフェクトオブジェクトまたは通常オブジェクトの表示を要求する表示要求は、第2表示要求の例である。
一態様において、表示要求処理部21fは、視聴ユーザから特定のエフェクトオブジェクトの表示要求を受け付けると、当該表示要求に基づいて、表示が要求されたエフェクトオブジェクトを動画の表示画像70に表示させるための処理を行う。例えば、紙吹雪に対応するエフェクトオブジェクトの表示要求がなされた場合には、表示要求処理部21fは、図6に示すように、当該表示要求に基づいて紙吹雪を示すエフェクトオブジェクト73を表示画像70に表示させる。
一態様において、表示要求処理部21fは、視聴ユーザから特定の通常オブジェクトの表示要求を受け付けると、当該表示要求に基づいて、表示が要求された通常オブジェクトを動画70に表示させるための処理を行う。例えば、熊のぬいぐるみを示す通常オブジェクトの表示要求がなされた場合には、表示要求処理部21fは、図6に示すように、当該表示要求に基づいて熊のぬいぐるみを示す通常オブジェクト74を表示画像70に表示させる。
通常オブジェクト74の表示要求には、仮想空間内における当該通常オブジェクト74の表示位置を指定する表示位置指定パラメータが含まれてもよい。この場合、表示要求処理部21fは、仮想空間内の表示位置指定パラメータによって指定された位置に通常オブジェクト74を表示することができる。例えば、表示位置指定パラメータによって、テーブルを示すオブジェクト72の上を通常オブジェクト74の表示位置として指定することができる。視聴ユーザは、表示位置指定パラメータを用いることにより、動画70に含まれているキャラクタオブジェクト71A、キャラクタオブジェクト71B、ギフトオブジェクト、及びこれら以外のオブジェクトの表示を見て、通常オブジェクトを表示したい位置を指定することができる。
一態様において、通常オブジェクト74は、動画の表示画像70内で移動するように表示されてもよい。例えば、通常オブジェクト74は、画面の上から下に向かって落下するように表示されてもよい。この場合、通常オブジェクト74は、落下開始から動画70を構成する仮想空間のフロアまで落下している間当該表示画像70内に表示され、フロアに落下した後に当該表示画像70から消滅してもよい。視聴ユーザは、落下する通常オブジェクト74を落下開始時から落下終了時まで見ることができる。通常オブジェクト74の画面内での移動方向は任意に設定され得る。例えば、通常オブジェクト74は、動画70の左から右へ、右から左へ、左上から左下へ、またはこれら以外の方向に移動するように表示画像70において表示されてもよい。通常オブジェクト74は、様々な軌道上を移動することができる。例えば、通常オブジェクト74は、直線軌道上、円軌道上、楕円軌道上、螺旋軌道上、またはこれら以外の軌道上を移動することができる。視聴ユーザは、通常オブジェクトの表示要求に、表示位置指定パラメータに加えてまたは表示位置指定パラメータに代えて、通常オブジェクト74の移動方向を指定する移動方向パラメータ及び通常オブジェクト74が移動する軌道を指定する軌道パラメータの少なくとも一方を含めることができる。一実施形態において、エフェクトオブジェクト及び通常オブジェクトのうち、仮想空間における大きさが基準となる大きさより小さいもの(例えば、エフェクトオブジェクト73の紙吹雪の紙片)は、キャラクタオブジェクト71A及びキャラクタオブジェクト71Bに、その一部又は全部を重複させて表示してもよい。一実施形態において、エフェクトオブジェクト及び通常オブジェクトのうち、仮想空間における大きさが基準となる大きさより大きいもの(例えば、通常オブジェクト74(くまのぬいぐるみ))は、キャラクタオブジェクトと重複しない位置に表示される。一実施形態において、エフェクトオブジェクト及び通常オブジェクトのうち、仮想空間における大きさが基準となる大きさより大きいもの(例えば、通常オブジェクト74(くまのぬいぐるみ))は、キャラクタオブジェクト71Aまたはキャラクタオブジェクト71Bの少なくとも一方と重複する場合には、当該重複して表示されるキャラクタオブジェクトの後ろに表示される。
一態様において、表示要求処理部21fは、視聴ユーザから特定の装飾オブジェクトの表示要求を受け付けると、当該表示要求に基づいて、表示が要求された装飾オブジェクトを候補リスト23dに追加する。装飾オブジェクトの表示要求は、第1表示要求の例である。例えば、表示要求処理部21fは、視聴ユーザから表示要求されている特定の装飾オブジェクトを識別する識別情報(オブジェクトID)を、当該視聴ユーザのユーザIDと対応付けて、候補リスト23dに記憶することができる(図4参照)。装飾オブジェクトの表示要求が複数なされた場合には、当該複数の表示要求の各々について、表示要求を行った視聴ユーザのユーザIDと、当該視聴ユーザによって表示要求されている装飾オブジェクトの装飾オブジェクトIDとが対応付けて候補リスト23dに記憶される。
一態様において、装飾オブジェクト選択部21gは、候補リスト23dに含まれている装飾オブジェクトのうちの一又は複数が選択されたことに応じて、当該選択された装飾オブジェクトを動画の表示画像70に表示させるための処理を行う。本明細書では、候補リスト23dから選択された装飾オブジェクトを「選択装飾オブジェクト」と呼ぶことがある。
候補リスト23dからの装飾オブジェクトの選択は、例えば、サポーターB1及びサポーターB2がサポーターコンピュータ40を操作することによってなされる。一態様において、サポーターコンピュータ40には、装飾オブジェクト選択画面が表示される。図8は、一態様における装飾オブジェクト選択画面80の例を示す。この装飾オブジェクト選択画面80は、例えば、サポーターコンピュータ40のディスプレイに表示される。装飾オブジェクト選択画面80は、例えば、表形式で候補リスト23dに含まれている複数の装飾オブジェクトの各々を表示する。図示のように、一態様における装飾オブジェクト選択画面80は、装飾オブジェクトの種類を表示する第1列81と、装飾オブジェクトの画像を表示する第2列82と、装飾オブジェクトが関連付けられているキャラクタオブジェクトの部位を表示する第3列83と、を有する。また、装飾オブジェクト選択画面80には、各装飾オブジェクトを選択するための選択ボタン84a〜84cが表示されている。このように、装飾オブジェクト選択画面80には、選択装飾オブジェクトの候補となる装飾オブジェクトが表示される。
サポーターB1及びサポーターB2は、この装飾オブジェクト選択画面80に含まれている装飾オブジェクトのうちの一又は複数を選択することができる。例えば、サポーターB1及びサポーターB2は、選択ボタン84aを選択することにより、カチューシャを選択することができる。装飾オブジェクト選択部21gによってカチューシャが選択されたことが検出されると、表示要求処理部21fは、図7に示すように、選択されたカチューシャを示す選択装飾オブジェクト75を動画の表示画面70に表示させる。選択装飾オブジェクト75は、キャラクタオブジェクトの特定の部位と関連付けて、表示画像70に表示される。選択装飾オブジェクト75は、キャラクタオブジェクトのうちの当該特定の部位に接するように表示されてもよい。例えば、カチューシャを示す選択選択装飾オブジェクト75は、キャラクタオブジェクトの頭部と対応付けられているため、図7に示されているように、キャラクタオブジェクト71Aの頭部に装着される。装飾オブジェクトは、キャラクタオブジェクトの当該特定部位の動きに付随して動くように、表示画面70に表示されてもよい。例えば、カチューシャを装着したキャラクタオブジェクト71Aの頭部が動くと、あたかもカチューシャがキャラクタオブジェクト71Aの頭部に装着されているかのごとく、カチューシャを示す選択装飾オブジェクト75もキャラクタオブジェクト71Aの頭部に付随して動く。
上述したように、オブジェクトデータ23bは、装飾オブジェクトがキャラクタオブジェクトのどの部位に関連付けられるかを示す装着位置情報を含んでもよい。一態様において、装飾オブジェクト選択部21gは、候補リスト23dに含まれている装飾オブジェクトのうち、キャラクタオブジェクトに既に装着されている装飾オブジェクトの装着位置情報が示す部位と重複する部位に装着される装飾オブジェクトについては、選択装飾オブジェクト75として選択できないようにしてもよい。例えば、「頭部後方左側」及び「頭部後方右側」に関連付けられたカチューシャと、「頭部後方左側」に関連付けられたヘアアクセサリーとは、「頭部後方左側」が重複しているため、同時に装着することはできない。一方、「頭部後方左側」及び「頭部後方右側」に関連付けられたカチューシャと、「(頭部のうち)左耳」及び「(頭部のうち)右耳」に関連付けられたイヤリングは、キャラクタオブジェクトにおける特定の部位が重複していないため、同時に装着することができる。
選択装飾オブジェクト75は、キャラクタオブジェクト71Aではなく、キャラクタオブジェクト71Bに関連付けられて表示画面70に表示されてもよい。選択装飾オブジェクト75は、キャラクタオブジェクト71A及びキャラクタオブジェクト71Bに関連付けられて表示画面70に表示されてもよい。
一実施形態において、装飾オブジェクト選択画面80は、各装飾オブジェクトを保有するユーザ、又は、各装飾オブジェクトの表示要求を行ったユーザを特定可能な情報を含まないように構成されてもよい。これにより、装飾オブジェクトの選択の際に、選択者が特定のユーザを優遇することを防止できる。
一実施形態において、装飾オブジェクト選択画面80は、各装飾オブジェクトを保有するユーザ、又は、各装飾オブジェクトについて、当該装飾オブジェクトの表示要求を行ったユーザに関する情報を表示するようにしてもよい。例えば、各装飾オブジェクトについて、当該装飾オブジェクトの表示要求を行ったユーザがこれまでに装飾オブジェクトの表示要求を行った回数と選択された回数(例えば、これまでに装飾オブジェクトの表示要求を5回行ってそのうち2回は選択されたことを示す情報)、当該ユーザがキャラクタオブジェクト71A及びキャラクタオブジェクトBの少なくとも一方の動画を視聴した視聴回数、当該ユーザが動画配信システム1における動画(キャラクタオブジェクト71A及びキャラクタオブジェクトBの出演有無を問わない)の視聴回数、当該ユーザによるギフトオブジェクトの購入金額、当該ユーザによるオブジェクトの購入回数、当該ユーザが保有する動画配信システム1内で使用できるポイント、当該ユーザの動画配信システム1におけるレベル、及びこれら以外の各装飾オブジェクトの表示要求を行ったユーザに関する各種情報を表示してもよい。当該実施形態によれば、装飾オブジェクトの表示要求を行ったユーザのこれまでの動画配信システム1における行動や視聴履歴に基づいて、装飾オブジェクトの選択を行うことができる。
一実施形態において、装飾オブジェクトの表示には、重複を排除するための制約が課されてもよい。例えば、キャラクタオブジェクト71Aに関し、その特定の部位に関連付けられた装飾オブジェクトが既に選択されている場合には、当該特定の部位に関連付けられた他の装飾オブジェクトの選択が禁止されてもよい。図7の実施形態に示されているように、キャラクタオブジェクト71Bの「頭部」に関連付けられているカチューシャが既に
選択されている場合には、「頭部」に関連付けられているそれ以外の装飾オブジェクト(例えば、頭部に関連付けられている「帽子」を表す装飾オブジェクト)は、装飾オブジェクト選択画面80に表示されないか、または、当該帽子を表す装飾オブジェクトを選択するための選択ボタンが選択画面80において選択不能とされてもよい。当該実施形態によれば、装飾オブジェクトがキャラクタオブジェクトの特定の部位に重複して表示されることを防止できる。
装飾オブジェクト選択画面80は、サポーターコンピュータ40に代えて、または、サポーターコンピュータ40に加えて、他の装置に表示されてもよい。例えば、装飾オブジェクト選択画面80は、スタジオルームR内のディスプレイ39及びスクリーンSの少なくとも一方に表示されてもよい。この場合、アクターA1及びアクターA2が当該ディスプレイ39又はスクリーンSに表示された装飾オブジェクト選択画面80に基づいて、所望の装飾オブジェクトを選択することができる。アクターA1及びアクターA2による装飾オブジェクトの選択は、例えば、コントローラ33a、コントローラ33b、コントローラ34a、またはコントローラ34bを操作することによりなされ得る。
一態様において、オブジェクト購入処理部21hは、動画の視聴ユーザからの要求に応じて、当該動画に関連して購入可能な複数のギフトオブジェクトの各々の購入情報を当該視聴ユーザのクライアント装置(例えば、クライアント装置10a)に送信する。各ギフトオブジェクトの購入情報には、当該ギフトオブジェクトの種類(エフェクトオブジェクト、通常オブジェクト、または装飾オブジェクト)、当該ギフトオブジェクトの画像、当該ギフトオブジェクトの価格、及びこれら以外のギフトオブジェクトの購入に必要な情報が含まれ得る。視聴ユーザは、クライアント装置10aに表示されているギフトオブジェクトの購入情報に基づいて、購入するギフトオブジェクトを選択することができる。購入対象のギフトオブジェクトの選択は、クライアント装置10aの操作により行われてもよい。購入対象のギフトオブジェクトが視聴ユーザによって選択されると、当該ギフトオブジェクトの購入要求がサーバ装置20に送信される。オブジェクト購入処理部21hは、当該購入要求に基づいて、決済処理を行う。この決済処理が完了すると、当該購入されたギフトオブジェクトは、当該視聴ユーザによって保有される。この場合、保有リスト23cに、購入した視聴ユーザのユーザIDと対応づけて、購入されたギフトオブジェクトのオブジェクトIDが記憶される。
購入可能なギフトオブジェクトは、動画ごとに異なっていてもよい。購入可能なギフトオブジェクトは、複数の動画において購入可能であってもよい。つまり、購入可能なギフトオブジェクトには、各動画に固有の固有ギフトオブジェクトと、複数の動画において購入可能な共通ギフトオブジェクトと、が含まれてもよい。例えば、紙吹雪を示すエフェクトオブジェクトは、複数の動画において購入可能な共通ギフトオブジェクトであってもよい。
一態様においては、所定の動画を視聴中にエフェクトオブジェクトを購入した場合、当該エフェクトオブジェクトを購入するための決済処理が完了したことに応じて、当該購入対象のエフェクトオブジェクトが当該視聴中の動画に自動的に表示されてもよい。所定の動画を視聴中に通常オブジェクトを購入した場合、上記と同様に、当該通常オブジェクトを購入するための決済処理が完了したことに応じて、当該購入対象の通常ギフトオブジェクトが当該視聴中の動画に自動的に表示されてもよい。
他の態様においては、購入対象のエフェクトオブジェクトについてオブジェクト購入処理部21hにおける決済処理が完了したことに応じて、決済完了通知がクライアント装置10aに送信され、当該クライアント装置10aにおいて、購入されたエフェクトオブジェクトの表示要求を行うか否かを視聴ユーザに確認するための確認画面が表示されてもよい。視聴ユーザが、当該購入されたエフェクトオブジェクトについて表示要求を行うことを選択した場合には、当該購入されたエフェクトオブジェクトの表示を要求する表示要求が、当該視聴ユーザのクライアント装置から表示要求処理部21fに送信され、表示要求処理部21fにおいて、当該購入対象のエフェクトオブジェクトを動画70に表示させる処理が行われてもよい。購入対象が通常オブジェクトの場合にも、上記と同様に、購入された通常オブジェクトの表示要求を行うか否かを視聴ユーザに確認するための確認画面がクライアント装置10aに表示されてもよい。
次に、図9〜図11を参照して、一態様による動画配信処理について説明する。図9は、一実施形態における動画配信処理の流れを示すフロー図であり、図10は、一実施形態における通常オブジェクトを表示する処理の流れを示すフロー図であり、図11は、一実施形態における装飾オブジェクトを表示する処理の流れを示すフロー図である。動画配信処理においては、スタジオルームRにおいてアクターA1及びアクターA2がパフォーマンスを行っていることが想定されている。
まず、ステップS11では、アクターA1及びアクターA2の体の動きのデジタル表現であるボディモーションデータと、アクターA1及びアクターA2の顔の動き(表情)のデジタル表現であるフェイスモーションデータと、が生成される。ボディモーションデータの生成は、例えば、上記のボディモーションデータ生成部21aで行われ、フェイスモーションデータの生成は、例えば、上記のフェイスモーションデータ生成部21bで行われる。
次に、ステップS12において、アクターA1のボディモーションデータ及びフェイスモーションデータを、アクターA1用のモデルデータに適用することにより、アクターA1の体及び表情の動きに同期して動く第1キャラクタオブジェクトのアニメーションが生成される。同様に、アクターA2のボディモーションデータ及びフェイスモーションデータを、アクターA2用のモデルデータに適用することにより、アクターA2の体及び表情の動きに同期して動く第2キャラクタオブジェクトのアニメーションが生成される。このアニメーションの生成は、例えば、上記のアニメーション生成部21cで行われる。
次に、ステップS13において、アクターA1に対応する第1キャラクタオブジェクトのアニメーションと、アクターA2に対応する第2キャラクタオブジェクトのアニメーションと、を含む動画を生成する。この動画には、アクターA1及びアクターA2の音声が合成されてもよい。第1キャラクタオブジェクトのアニメーション及び第2キャラクタオブジェクトのアニメーションは、仮想空間内に配置されてもよい。この動画の生成は、例えば、上記の動画生成部21dで行われる。
次に、ステップS14に移行し、ステップS13にて生成された動画が配信される。この動画は、ネットワーク50を介してクライアント装置10a〜クライアント装置10c及びこれら以外のクライアント装置に配信される。この動画は、サポーターコンピュータ40に配信され、また、スタジオルームR内のスクリーンSに投影されてもよい。動画は、所定の配信期間にわたって継続して配信される。動画の配信期間は、例えば、30秒間、1分間、5分間、10分、30分間、60分間、120分間、及びこれら以外の任意の時間に定め得る。
次に、ステップS15に進み、動画の配信を終了させるための終了条件が成就したか否かが判定される。終了条件は、例えば、配信の終了時刻に達したこと、サポーターコンピュータ40により配信を終了するための指示がなされたこと、またはこれら以外の条件である。終了条件が成就していなければステップS11〜S14の処理が繰り返し実行され、アクターA1及びアクターA2の動きに同期したアニメーションを含む動画の配信が継続される。動画について終了条件が成就していると判定された場合には、当該動画の配信処理を終了する。
次に、図10をさらに参照して、動画の配信中に行われる通常オブジェクトの表示処理について説明する。通常オブジェクトの表示処理は、図9に示した動画の配信処理と並行して行われる。
動画の配信中に、ステップS21において、通常オブジェクトの表示要求がなされたか否かが判定される。例えば、第1視聴ユーザは、自らが保有する通常オブジェクトの中から一又は複数の特定の通常オブジェクトを選択し、この選択された通常オブジェクトの表示を要求する表示要求をクライアント装置10aからサーバ装置20に対して送信することができる。上述したように、所定の通常オブジェクトの購入処理又は決済処理がなされたことに応じて、当該所定の通常オブジェクトの表示要求が生成されてもよい。
通常オブジェクトの表示要求がなされた場合には、当該表示処理はステップS22に進む。ステップS22においては、当該表示要求に基づいて、表示が要求された通常オブジェクトを配信中の動画に表示させるための処理が行われる。例えば、所定の動画の配信中に通常オブジェクト74の表示要求がなされると、図6に示されているように、当該動画の表示画面70内に表示要求がなされた通常オブジェクト74が表示される。
通常オブジェクトの表示要求がなされていない場合には、通常オブジェクトの表示処理は終了する。図10に示されている通常オブジェクトの表示処理は、動画の配信期間中に繰り返し行われる。
エフェクトオブジェクトの表示処理も、上述した通常オブジェクトの表示処理と同様の手順で行われ得る。例えば、所定の動画の配信中にエフェクトオブジェクト73の表示要求がなされると、図6に示されているように、当該動画の表示画面70内に表示要求がなされたエフェクトオブジェクト73が表示される。図6に示されているエフェクトオブジェクト73は、紙吹雪を模したオブジェクトである。紙吹雪を模したエフェクトオブジェクト73は、キャラクタオブジェクト71A及びキャラクタオブジェクト71Bと重複するように(または接するように)表示されているが、キャラクタオブジェクト71A及びキャラクタオブジェクト71Bの特定の部位と関連付けられていない点で装飾オブジェクトと異なる。
次に、図11をさらに参照して、動画の配信中に行われる装飾オブジェクトの表示処理について説明する。装飾オブジェクトの表示処理は、図9に示した動画の配信処理と並行して行われる。また、装飾オブジェクトの表示処理は、図10に示した通常オブジェクトの表示処理と並行して行われてもよい。
動画の配信中に、ステップS31において、装飾オブジェクトの表示要求がなされたか否かが判定される。例えば、第1視聴ユーザは、自らの装飾オブジェクトの中から第1装飾オブジェクトを選択し、この選択された第1装飾オブジェクトの表示を要求する表示要求をクライアント装置10aからサーバ装置20に対して送信することができる。
第1装飾オブジェクトの表示要求がなされた場合には、当該表示処理はステップS32に進む。ステップS32においては、当該表示要求に基づいて、表示が要求された第1装飾オブジェクトが候補リストに追加される。候補リストは、配信中の動画に表示される装飾オブジェクトの候補となるオブジェクトのリストであり、例えば上述した候補リスト23dである。
次に、ステップS33において、候補リストに格納されている装飾オブジェクトの中から、特定の装飾オブジェクトが選択されたか否かが判定される。
特定の装飾オブジェクトが選択された場合には、ステップS34において、当該選択された特定の装飾オブジェクト(「選択装飾オブジェクト」)を候補リストから削除するとともに、配信中の動画の表示画面に当該選択装飾オブジェクトを表示させるための処理が行われる。例えば、図5に示されている動画70の配信中に、候補リストから装飾オブジェクト75が選択されると、図7に示されているように、表示画像70内に選択された装飾オブジェクト75が表示される。ステップS31にて表示要求がなされた第1装飾オブジェクトは、動画の配信中に候補リストから選択されれば表示画像70に表示されるが、選択されなければ表示画像70には表示されない。
ステップS33において、候補リストから装飾オブジェクトが選択されなかった場合、及び、ステップS34において選択装飾オブジェクトの表示処理が完了した場合には、装飾オブジェクトの表示処理は、ステップS35に進む。ステップS35においては、配信中の動画の配信が終了したか否かが判定される。このステップS35においては、例えばステップS15と同様の基準で判定が行われてもよい。ステップS35において配信が終了していないと判定されれば、装飾オブジェクトの表示処理はステップS31に戻り、ステップS31〜S35の処理が繰り返し実行される。配信が終了したと判定されれば、装飾オブジェクトの表示処理はステップS36に進む。
ステップS36では、動画の配信終了時において候補リストに残されている装飾オブジェクト(本明細書において、「非選択オブジェクト」と呼ぶことがある。)に関する処理が行われる。本明細書において、ステップS36で行われる処理は、非選択オブジェクト処理と呼ばれることがある。
非選択オブジェクトは、視聴ユーザによって購入され、動画の配信中に表示要求がなされたものである。このため、ステップS36において実行される非選択オブジェクト処理は、非選択オブジェクトの表示要求を行った視聴ユーザに対して、当該非選択オブジェクトの購入費用を返金する処理であってもよい。他の態様において、非選択オブジェクト処理は、非選択オブジェクトを購入するための決済処理を取り消すための処理であってもよい。他の態様において、非選択オブジェクト処理は、非選択オブジェクトの表示要求を行った視聴ユーザに対して、当該非選択オブジェクトと異なる装飾オブジェクトを与える処理であってもよい。
他の態様において、非選択オブジェクト処理は、購入費用の返金又は決済処理の取り消しに代えて、動画配信システム1で使用できるポイントを当該非選択オブジェクトのユーザに付与する処理であってもよい。動画配信システム1は、動画を視聴するためにポイントを消費するように構成されてもよい。非選択オブジェクト処理によって非選択オブジェクトのユーザに付与されるポイントは、動画配信システム1における動画の視聴のために利用できるポイントであってもよい。
他の態様において、非選択オブジェクト処理は、保有リストにおいて、非選択オブジェクトを第1視聴ユーザが保有するオブジェクトとして追加する処理であってもよい。これにより、第1視聴ユーザは、非選択オブジェクトの返品を受けることができる。
他の態様において、非選択オブジェクト処理は、動画の配信終了時の候補リストを、同じ配信者が次回に動画を配信する時まで保持するための処理であってもよい。これにより、当該配信者は、次回の動画配信時に、前回の動画配信時に使用された候補リストを引き継ぐことができる。この引き継がれた候補リストには、前回の動画配信時に表示要求されたが実際には動画に表示されなかった装飾オブジェクト(すなわち、非選択オブジェクト)が含まれている。これにより、前回の動画配信時における非選択オブジェクトを含む候補リストを用いて次回の動画配信が行われる。この非選択オブジェクトは、当該次回の動画配信において選択され、当該動画において表示される可能性がある。
ステップS36における処理が完了した後、装飾オブジェクトの表示処理は終了する。
一実施形態においては、動画配信内に、ギフトオブジェクトの表示が禁止されるオブジェクト表示禁止区間が設けられてもよい。図12は、オブジェクト表示禁止区間を模式的に説明する図である。図12は、時刻t1から時刻t2の間に動画が配信されていることを示している。つまり、時刻t1が動画の配信開始時刻であり、時刻t2が動画の配信終了時刻である。動画の配信期間のうち、時刻t3と時刻t4との間がオブジェクト表示禁止期間81である。このオブジェクト表示禁止期間81にギフトオブジェクトの表示要求r1がなされても、オブジェクト表示禁止期間81においては、当該ギフトオブジェクトは、当該動画の表示画像には表示されない。具体的には、オブジェクト表示禁止期間81においてギフトオブジェクトのうちエフェクトオブジェクト又は通常オブジェクトの表示要求がなされると、この表示が要求されたエフェクトオブジェクト又は通常オブジェクトは当該オブジェクト表示禁止期間81においては配信中の動画には表示されず、当該オブジェクト表示禁止期間81の経過後(つまり、時刻t4よりも後)の時点において、当該動画に表示される。また、オブジェクト表示禁止期間81において候補リストから装飾オブジェクトが選択されると、この選択された装飾オブジェクトは当該オブジェクト表示禁止期間81においては配信中の動画には表示されず、当該オブジェクト表示禁止期間81の経過後の時点において、当該動画に表示される。装飾オブジェクトの表示要求は、オブジェクト表示禁止期間81内に受け付けられてもよい。すなわち、オブジェクト表示禁止期間81において装飾オブジェクトの表示要求がなされた場合には、当該表示要求がなされた装飾オブジェクトがオブジェクト表示禁止期間81内であっても候補リストに追加されてもよい。
上記の一実施形態によれば、ギフトオブジェクトには、装飾オブジェクト、通常オブジェクト、及びエフェクトオブジェクトの3種類が含まれる。このうち、キャラクタオブジェクトと関連付けて表示されるのは、装飾オブジェクトのみである。キャラクタオブジェクトのアニメーションが表示される動画においては、当該キャラクタオブジェクトのアニメーションが視聴ユーザの注目を集める要素と考えられる。例えば、図5〜図7に示されている動画では、キャラクタオブジェクト71A及びキャラクタオブジェクト71Bに注目が集まると考えられる。上記の一実施形態では、キャラクタオブジェクト71A及びキャラクタオブジェクト71Bと関連付けて表示される装飾オブジェクトの表示要求があっても、当該装飾オブジェクトが候補リスト23dから選択されるまでは当該装飾オブジェクトを動画に表示しないことにより、キャラクタオブジェクトの周辺またはキャラクタオブジェクトに重複して装飾オブジェクトが乱雑に表示されることを防止できる。これにより、視聴ユーザの視聴体験の劣化を防止できる。
従来の動画配信システムにおいては、ギフトオブジェクトは、その種類を問わず、動画への表示要求がなされたことに応じて当該動画に表示されていた。よって、ギフトオブジェクトの動画への重複表示を許すと、当該動画に大量のギフトオブジェクトが表示されてしまい、当該動画を視聴するユーザの視聴体験が劣化してしまう。上記実施形態においては、ギフトオブジェクトにキャラクタオブジェクトと関連付けて表示される装飾オブジェクトというカテゴリを設けることにより、動画の主要部分であるキャラクタオブジェクトに関連付けて表示される装飾オブジェクトについては表示数(表示量)を抑制可能とした。
ギフトオブジェクトのうちの通常オブジェクト74は、視聴ユーザからの表示要求に応じて動画に表示される。上記の一実施形態において、通常オブジェクト74は、キャラクタオブジェクト71A及びキャラクタオブジェクト71Bとは接しないようにまたは重複しないように動画の表示画面70に表示されるので、キャラクタオブジェクト71A及びキャラクタオブジェクト71Bの視認性に与える影響が小さい。かかる態様によれば、キャラクタオブジェクトの視認性の悪化によるユーザの視聴体験の劣化を防止できる。
ギフトオブジェクトのうちのエフェクトオブジェクト73及び通常オブジェクト74は、視聴ユーザからの表示要求に応じて動画に表示される。上記の一実施形態において、エフェクトオブジェクト73及び通常オブジェクト74は、装飾オブジェクト75よりも短時間だけ表示画面70に表示されるので、キャラクタオブジェクト71A及びキャラクタオブジェクト71Bの視認性に与える影響が小さい。かかる態様によれば、キャラクタオブジェクトの視認性の悪化によるユーザの視聴体験の劣化を防止できる。
上記実施形態においては、候補リスト23dからの装飾オブジェクトの選択が、当該装飾オブジェクトの表示要求を行った視聴ユーザではない者(例えばサポータB1、サポータB2、アクターA1、またはアクターA2)によってなされるため、装飾オブジェクトの表示数の抑制が可能となる。
上記実施形態によれば、オブジェクト表示禁止期間81においては、ギフトオブジェクトは動画に表示されない。これにより、作成された動画がギフトオブジェクトにより邪魔されることなく視聴される。例えば、動画においてアクターA1及びアクターA2が視覚的なパフォーマンスを披露する時間帯をオブジェクト表示禁止期間81とすることにより、第1オブジェクト及び装飾オブジェクトにより妨げられることなくアクターによるパフォーマンスを視聴者に見せることができる。
上記実施形態によれば、キャラクタオブジェクト71Aやキャラクタオブジェクト71Bなどのキャラクタオブジェクトを含む動画を視聴する視聴ユーザは、当該キャラクタオブジェクトに愛着があると考えられる。よって、エフェクトオブジェクトや通常オブジェクトよりも、キャラクタオブジェクトに装飾オブジェクトを装着してもらうことで満足度が高まる。このように、キャラクタオブジェクトが装着可能な装飾オブジェクトにより、当該キャラクタオブジェクトが含まれる動画を繰り返し視聴する誘因をユーザに提供することができる。
上記実施形態による動画配信システム1においては、ユーザがキャラクタに対して装飾オブジェクトを贈ることができる。これにより、かかる装飾オブジェクトを贈ることができないシステムと比べて、独自性の高いシステムを提供することができ、当該システムにより独自性の高いサービスを提供することができる。これにより、動画配信システム1により多くのユーザを惹き付けることができるので、動画配信システム1における動画の視聴回数を多くすることができる。
本発明の実施形態は、上述した実施形態に限定されるものではなく、その要旨を逸脱しない範囲内で様々な変更が可能である。例えば、配信される動画は、スタジオルームR以外で撮影及び生成されてもよい。例えば、配信される動画を生成するための撮影は、アクターやサポーターの自宅で行われてもよい。
本明細書において説明された処理手順、特にフロー図を用いて説明された処理手順においては、その処理手順を構成する工程(ステップ)の一部を省略すること、その処理手順を構成する工程として明示されていない工程を追加すること、及び/又は当該工程の順序を入れ替えることが可能であり、このような省略、追加、順序の変更がなされた処理手順も本発明の趣旨を逸脱しない限り本発明の範囲に含まれる。
以下に、本願の原出願の出願当初の特許請求の範囲に記載された発明を付記する。
[1]
アクターの動きに基づいて生成されるキャラクタオブジェクトのアニメーションを含む動画を配信する動画配信システムであって、
一又は複数のコンピュータプロセッサと、
前記キャラクタオブジェクトと関連づけて前記動画に表示される装飾オブジェクトの候補を含む候補リストを記憶するストレージと、
を備え、
前記一又は複数のコンピュータプロセッサは、コンピュータ読み取り可能な命令を実行することにより、
前記視聴ユーザから前記装飾オブジェクトのうちの第1装飾オブジェクトの表示を要求する第1表示要求を受け付けたことに応じて、前記第1装飾オブジェクトを前記候補リストに追加し、
前記候補リストから前記第1装飾オブジェクトが選択された場合に、前記動画に前記第1装飾オブジェクトを表示させる、
動画配信システム。
[2]
前記第1装飾オブジェクトは、前記キャラクタオブジェクトの特定の部位と関連付けられて前記動画に表示される、
[1]に記載の動画配信システム。
[3]
前記候補リストからの前記第1装飾オブジェクトの選択は、前記視聴ユーザ以外の者によってなされる、
[1]または[2]に記載の動画配信システム。
[4]
前記候補リストからの前記第1装飾オブジェクトの選択は、前記動画の配信をサポートするサポーターによってなされる、
[1]または[2]に記載の動画配信システム。
[5]
前記候補リストからの前記第1装飾オブジェクトの選択は、前記アクターによってなされる、
[1]または[2]に記載の動画配信システム。
[6]
前記一又は複数のコンピュータプロセッサは、前記動画を視聴する視聴ユーザから前記装飾オブジェクトとは異なる第1オブジェクトの表示を要求する第2表示要求を受け付けたことに応じて、前記動画に前記第1オブジェクトを表示させる、
[1]から[5]のいずれか1つに記載の動画配信システム。
[7]
前記第1オブジェクトは、前記キャラクタオブジェクトと接しないように前記動画に表示される、
[6]に記載の動画配信システム。
[8]
前記動画の配信期間内にオブジェクト表示禁止期間が設定され、
前記第1オブジェクト及び前記装飾オブジェクトは、前記動画の配信期間における前記オブジェクト表示禁止期間以外のタイミングで前記動画に表示される、
[6]または[7]に記載の動画配信システム。
[9]
前記オブジェクト表示禁止期間に前記第2表示要求が受け付けられた場合には、前記第1オブジェクトは、前記オブジェクト表示禁止期間の経過後に前記動画に表示される、
[8]に記載の動画配信システム。
[10]
前記一又は複数のコンピュータプロセッサは、
前記視聴ユーザから前記第1装飾オブジェクトを購入する購入要求を受け付け、
前記購入要求に応じて決済処理を行い、
前記第1装飾オブジェクトが前記動画の配信終了時までに選択されなかった場合、前記決済処理を取り消す、
[1]から[9]のいずれか1つに記載の動画配信システム。
[11]
前記一又は複数のコンピュータプロセッサは、
前記視聴ユーザから前記第1装飾オブジェクトを購入する購入要求を受け付け、
前記購入要求に応じて決済処理を行い、
前記第1装飾オブジェクトが前記動画の配信終了時までに選択されなかった場合、前記視聴ユーザにポイントを付与する、
[1]から[9]のいずれか1つに記載の動画配信システム。
[12]
前記一又は複数のコンピュータプロセッサは、
前記視聴ユーザから前記第1装飾オブジェクトを購入する購入要求を受け付け、
前記購入要求に応じて前記視聴ユーザが保有するオブジェクトのリストである保有リトに前記第1装飾オブジェクトを追加し、
前記視聴ユーザから前記第1装飾オブジェクトの表示を要求する前記第1表示要求を受け付けたことに応じて、前記候補リストに前記第1装飾オブジェクトを追加するとともに前記保有リストから前記第1装飾オブジェクトを削除し、
前記第1装飾オブジェクトが前記動画の配信終了時までに選択されなかった場合に、前記保有リストへ前記第1装飾オブジェクトを追加する、
[1]から[9]のいずれか1つに記載の動画配信システム。
[13]
一又は複数のコンピュータプロセッサがコンピュータ読み取り可能な命令を実行することにより、アクターの動きに基づいて生成されるキャラクタオブジェクトのアニメーションを含む動画を配信する動画配信方法であって、
前記キャラクタオブジェクトと関連づけて前記動画に表示される装飾オブジェクトの候補を含む候補リストを記憶する工程と、
前記視聴ユーザから前記装飾オブジェクトのうちの第1装飾オブジェクトの表示を要求する第1表示要求を受け付けたことに応じて、前記第1装飾オブジェクトを前記候補リストに追加する工程と、
前記候補リストから前記第1装飾オブジェクトが選択された場合に、前記動画に前記第1装飾オブジェクトを表示させる工程と、
を備える動画配信方法。
[14]
アクターの動きに基づいて生成されるキャラクタオブジェクトのアニメーションを含む動画を配信する動画配信プログラムであって、
一又は複数のコンピュータプロセッサに、
前記キャラクタオブジェクトと関連づけて前記動画に表示される装飾オブジェクトの候補を含む候補リストを記憶する工程と、
前記視聴ユーザから前記装飾オブジェクトのうちの第1装飾オブジェクトの表示を要求する第1表示要求を受け付けたことに応じて、前記第1装飾オブジェクトを前記候補リストに追加する工程と、
前記候補リストから前記第1装飾オブジェクトが選択された場合に、前記動画に前記第1装飾オブジェクトを表示させる工程と、
を実行させる動画配信プログラム。