(57)【特許請求の範囲】
【請求項１】
クライアント装置が、
複数のモデルをダウンロード可能なサーバ装置から、ユーザにより選択された第１のモデル、及び第２のモデルをダウンロードするステップであって、前記第１のモデルは、三次元アニメーションを生成するために用いられる少なくとも第１のキャラクターを含む構成要素群を有し、前記第２のモデルは、三次元アニメーションを生成するために用いられる少なくとも第２のキャラクターを含む構成要素群を有する、ステップと、
ダウンロードされた前記第１のモデルに含まれる少なくとも一つの構成要素を、前記第２のモデルに含まれる少なくとも一つの構成要素と置換するか、又は前記第２のモデルに含まれる少なくとも一つの構成要素を前記第１のモデルに加えることで、前記第１のモデルを改変した第３のモデルを生成するステップと、
前記サーバ装置から前記第３のモデルをダウンロード可能とするように、前記第３のモデルを前記サーバ装置にアップロードするステップと、
を有する方法。
【請求項２】
クライアント装置が、
複数のモデルをダウンロード可能なサーバ装置から、ユーザにより選択された第１のモデル、及び第２のモデルをダウンロードするステップであって、前記第１のモデルは、三次元アニメーションを生成するために用いられる少なくとも複数のキャラクターを含む構成要素群を有し、前記第２のモデルは、三次元アニメーションを生成するために用いられる少なくとも１以上のキャラクターを含む構成要素群を有する、ステップと、
ダウンロードされた前記第１のモデルに含まれる少なくとも一つの構成要素を、前記第２のモデルに含まれる少なくとも一つの構成要素と置換するか、又は前記第２のモデルに含まれる少なくとも一つの構成要素を前記第１のモデルに加えることで、前記第１のモデルを改変した第３のモデルを生成するステップと、
前記サーバ装置から前記第３のモデルをダウンロード可能とするように、前記第３のモデルを前記サーバ装置にアップロードするステップと、
を有する方法。
【請求項３】
クライアント装置が、
複数のモデルをダウンロード可能なサーバ装置から、少なくとも二つのモデルをダウンロードするステップであって、前記複数のモデルの各々は三次元アニメーションを生成するために用いられる少なくとも一つの構成要素を含む、ステップと、
ダウンロードされた前記少なくとも二つのモデルの第１のモデルに含まれる少なくとも一つの構成要素を、前記少なくとも二つのモデルの第２のモデルに含まれる少なくとも一つの構成要素と置換するか、又は前記第２のモデルに含まれる少なくとも一つの構成要素を前記第１のモデルに加えることで、前記第１のモデルを改変した第３のモデルを生成するステップと、
前記第３のモデルが前記第１のモデルに対する子孫である、又は、前記第１のモデルが前記第３のモデルの先祖であることを定義する、前記第１のモデルと前記第３のモデルとの間の関係、及び前記第３のモデルを前記サーバ装置にアップロードするステップと、
を有する方法。
【請求項４】
クライアント装置が、
複数のモデルをダウンロード可能なサーバ装置から、少なくとも二つのモデルをダウンロードするステップであって、前記複数のモデルの各々は三次元アニメーションを生成するために用いられる少なくとも一つの構成要素を含む、ステップと、
ダウンロードされた前記少なくとも二つのモデルの第１のモデルに含まれる少なくとも一つの構成要素を、前記少なくとも二つのモデルの第２のモデルに含まれる少なくとも一つの構成要素と置換するか、又は前記第２のモデルに含まれる少なくとも一つの構成要素を前記第１のモデルに加えることで、前記第１のモデルを改変した第３のモデルを生成するステップと、
前記サーバ装置から前記第３のモデルをダウンロード可能とするように、前記第３のモデルを前記サーバ装置にアップロードするステップと、を含み、
前記アップロードするステップは、前記第１のモデルと前記第３のモデルとの間の関係をアップロードするステップであって、前記関係は、前記第３のモデルが前記第１のモデルに対する子孫であり、前記第１のモデルが前記第３のモデルの先祖であることを少なくとも定義している、ステップを含む、方法。
【請求項５】
前記少なくとも一つの構成要素は、キャラクターの構造、キャラクターのモーション、背景、カメラワーク、及び音響情報のうちの少なくとも一つである、
請求項１ないし４のうちいずれか１項に記載の方法。
【請求項６】
前記ダウンロードするステップは、前記第１のモデルをダウンロードする際に、前記第１のモデルに関連する関係をダウンロードするステップを含み、
当該方法は、
前記第１のモデルに関連する関係を表示するステップ、
を更に有する請求項１ないし５のうちいずれか１項に記載の方法。
【請求項７】
前記表示するステップは、
前記関係を用いて、前記第１のモデルに対して、直近の子孫のモデル、直近の先祖のモデル、及び／又は先祖のモデルのうち最も古いモデルを特定する情報を表示するステップ、を含む、
請求項６に記載の方法。
【請求項８】
請求項１ないし７のうちいずれか一項記載の方法を、前記クライアント装置に実行させるプログラム。
【請求項９】
複数のモデルをダウンロード可能なサーバ装置から、ユーザにより選択された第１のモデル、及び第２のモデルをダウンロードする手段であって、前記第１のモデルは、三次元アニメーションを生成するために用いられる少なくとも第１のキャラクターを含む構成要素群を有し、前記第２のモデルは、三次元アニメーションを生成するために用いられる少なくとも第２のキャラクターを含む構成要素群を有する、手段と、
ダウンロードされた前記第１のモデルに含まれる少なくとも一つの構成要素を、前記第２のモデルに含まれる少なくとも一つの構成要素と置換するか、又は前記第２のモデルに含まれる少なくとも一つの構成要素を前記第１のモデルに加えることで、前記第１のモデルを改変した第３のモデルを生成する手段と、
前記サーバ装置から前記第３のモデルをダウンロード可能とするように、前記第３のモデルを前記サーバ装置にアップロードする手段と、
を有するクライアント装置。
【請求項１０】
複数のモデルをダウンロード可能なサーバ装置から、ユーザにより選択された第１のモデル、及び第２のモデルをダウンロードする手段であって、前記第１のモデルは、三次元アニメーションを生成するために用いられる少なくとも複数のキャラクターを含む構成要素群を有し、前記第２のモデルは、三次元アニメーションを生成するために用いられる少なくとも１以上のキャラクターを含む構成要素群を有する、手段と、
ダウンロードされた前記第１のモデルに含まれる少なくとも一つの構成要素を、前記第２のモデルに含まれる少なくとも一つの構成要素と置換するか、又は前記第２のモデルに含まれる少なくとも一つの構成要素を前記第１のモデルに加えることで、前記第１のモデルを改変した第３のモデルを生成する手段と、
前記サーバ装置から前記第３のモデルをダウンロード可能とするように、前記第３のモデルを前記サーバ装置にアップロードする手段と、
を有するクライアント装置。
【請求項１１】
複数のモデルをダウンロード可能なサーバ装置から、少なくとも二つのモデルをダウンロードする手段であって、前記複数のモデルの各々は三次元アニメーションを生成するために用いられる少なくとも一つの構成要素を含む、手段と、
ダウンロードされた前記少なくとも二つのモデルの第１のモデルに含まれる少なくとも一つの構成要素を、前記少なくとも二つのモデルの第２のモデルに含まれる少なくとも一つの構成要素と置換するか、又は前記第２のモデルに含まれる少なくとも一つの構成要素を前記第１のモデルに加えることで、前記第１のモデルを改変した第３のモデルを生成する手段と、
前記第３のモデルが前記第１のモデルに対する子孫である、又は、前記第１のモデルが前記第３のモデルの先祖であることを定義する、前記第１のモデルと前記第３のモデルとの間の関係、及び前記第３のモデルを前記サーバ装置にアップロードする手段と、
を有するクライアント装置。
【請求項１２】
複数のモデルをダウンロード可能なサーバ装置から、少なくとも二つのモデルをダウンロードする手段であって、前記複数のモデルの各々は三次元アニメーションを生成するために用いられる少なくとも一つの構成要素を含む、手段と、
ダウンロードされた前記少なくとも二つのモデルの第１のモデルに含まれる少なくとも一つの構成要素を、前記少なくとも二つのモデルの第２のモデルに含まれる少なくとも一つの構成要素と置換するか、又は前記第２のモデルに含まれる少なくとも一つの構成要素を前記第１のモデルに加えることで、前記第１のモデルを改変した第３のモデルを生成する手段と、
前記サーバ装置から前記第３のモデルをダウンロード可能とするように、前記第３のモデルを前記サーバ装置にアップロードする手段と、
を有し、
前記アップロードする手段は、前記第１のモデルと前記第３のモデルとの間の関係をアップロードする手段であって、前記関係は、前記第３のモデルが前記第１のモデルに対する子孫であり、前記第１のモデルが前記第３のモデルの先祖であることを少なくとも定義している、クライアント装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、三次元コンテンツの生成方法、プログラム、及びクライアント装置に関する。
【背景技術】
【０００２】
三次元（３Ｄ）の仮想空間上又は、三次元の仮想空間と実空間とを融合させた空間上において、キャラクターなどのオブジェクトを時間軸上で動作させて、三次元アニメーションを作成する技術が存在する。
【０００３】
三次元アニメーションは、時間軸に沿ってモデルを二次元空間に射影させて二次元の三次元アニメーションの形で生成される。あるいは、左右の目に対応させて三次元の仮想空間を二次元空間に射影させて二つの二次元の三次元アニメーションの形で生成することで、人間に対して三次元の仮想空間を疑似体験させる形で生成することもできる。
【０００４】
モデルをほぼリアルタイムで三次元アニメーションに変換することが可能であり、操作者が疑似カメラの位置や設定を変えることで、モデルの様々な角度、様々な位置から見える三次元アニメーションをリアルタイムに変更することができる。これに対して、映画、テレビなどの動画は、既に撮影された複数の二次元フレームを、所定の時間間隔で切り替えてコマ送りして表示するため、見る方向などを変更することは非常に難しい。
【０００５】
したがって、見る方向などをリアルタイムで変更できる三次元アニメーションは、既存のフレームをベースとした動画に比して、よりリアルな仮想空間を人間に体験させることができる。
【０００６】
また、モデルの構成要素を編集することによって、三次元アニメーションを変更することができる。
【０００７】
従来、プラグインを映像表現機能単位の挙動であるモーメンタムまで細分化したものとし、これらのプラグインを自由に組み合わせることで映像オブジェクトを作成するようにした技術が存在する（例えば特許文献１参照）。
【０００８】
また、コンテンツの編集や生成をするコンテンツ作成者が、コンテンツ編集端末から、コンテンツ生成サーバにアクセスし、素材／変更データ入力部を通じて、コンテンツ／素材／テンプレート保存部に登録されている中から使いたいテンプレートを選択し、コンテンツ編集端末にテンプレートを表示させ、テンプレートに合わせて、素材（画像、サウンド、動画、テキスト）を入力し、コンテンツを生成する技術が存在する（例えば特許文献２）。
【０００９】
また、「メッセージ」に、メッセージの本文である文字情報のほかに、アバターの動作を規定するモーション情報を一意に識別する動作識別情報（動作ＩＤ）などを含ませる。アバターは、送信者（利用者）を表象する一種のキャラクター画像であり、例えばメッセージ処理の実行前に予め作成／選択されて、例えばＳＮＳサーバに登録される。これにより、各利用者に対応させて適切な動作を行うアバターが関連付けられる技術が存在する（例えば特許文献３参照）。
【００１０】
しかしながら、従来においては、複数の素材から三次元アニメーションを作成することに重点が置かれており、既に作成された三次元アニメーションの構成要素を更に利用することで、作成された複数の三次元アニメーションから派生した新たな三次元アニメーションを自由に組み合わせて、新たな三次元アニメーションを創作することに関しては困難性を生じていた。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００６−３０９３３６号公報
【特許文献２】特開２００７−０４１８６１号公報
【特許文献３】特開２０１３−１６１１６８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
本発明の課題のうちの一つは、上記従来技術が持つ不都合を解消することを目的とする。具体的には、既に存在するモデルから新たなモデルを作成することで、新たな三次元アニメーションを効率的に作成できるようにすることを目的とする。
【課題を解決するための手段】
【００１３】
本実施例によれば、クライアント装置が、複数のモデルをダウンロード可能なサーバ装置から、ユーザにより選択された第１のモデル、及び第２のモデルをダウンロードするステップであって、前記第１のモデルは、三次元アニメーションを生成するために用いられる少なくとも第１のキャラクターを含む構成要素群を有し、前記第２のモデルは、三次元アニメーションを生成するために用いられる少なくとも第２のキャラクターを含む構成要素群を有する、ステップと、ダウンロードされた前記第１のモデルに含まれる少なくとも一つの構成要素を、前記第２のモデルに含まれる少なくとも一つの構成要素と置換するか、又は前記第２のモデルに含まれる少なくとも一つの構成要素を前記第１のモデルに加えることで、前記第１のモデルを改変した第３のモデルを生成するステップと、
前記サーバ装置から前記第３のモデルをダウンロード可能とするように、前記第３のモデルを前記サーバ装置にアップロードするステップと、を有する方法が提供される。
【発明の効果】
【００１４】
実施形態によれば、様々なバリエーションを持つ複数の三次元アニメーションを効率的に作成することができる。
【図面の簡単な説明】
【００１５】
【図１】クライアント装置の機能ブロック図である。
【図２】一実施例の方法を示すフローチャートである。
【図３】三次元アニメーションを作成する際に用いられるスケルトンモデル（骨格モデル）の例を示す図である。
【図４】仮想的なカメラにより三次元アニメーションを作成する一例を示す図である。
【図５】三次元アニメーションを作成する際に用いられるモデルの構成要素の例を示す図である。
【図６】サーバ装置に蓄積される複数のモデルの例を示す図である。
【図７】モデルを改変して新たなモデルを生成する処理の例を示す図である。
【図８】モデルを改変して新たなモデルを生成する処理の他の例を示す図である。
【図９】改変したモデルの改変履歴を説明する図である。
【図１０】モデルの改変履歴を木構造で示した例を示す図である。
【図１１】ダウンロードするモデルをクライアント装置上で選択するための画面の例を示す図である。
【図１２】ダウンロードしたモデルを用いて三次元アニメーションをクライアント装置上に表示した例を示す図である。
【図１３】モデルの構成要素を選択する際に表示されるユーザインタフェースの例を示す図である。
【図１４】モデルを改変する際に表示されるユーザインタフェースの例を示す図である。
【図１５】改変する構成要素を選択してモデルの改変が行われた例を示す図である。
【図１６】モデルの改変履歴を表示する画面の例を示す図である。
【図１７】クライアント装置及びサーバ装置のハードウエア構成を示す図である。
【発明を実施するための形態】
【００１６】
本明細書においては，ポーズは，時間的長さがゼロのモーションとして捉えることができる。したがって、モーション及びポーズは，いずれもモーションとして扱う。
【００１７】
また，本明細書では，キャラクターの語を主として用いる。キャラクターは，仮想的な人物又は生物に対して主に用いられる。しかしながら，実施例は，仮想的な人物又は生物以外に，一般的なオブジェクト（例えば，自転車，自動車，ボール等）の仮想的なオブジェクトを排除しない。したがって，本明細書において用いる仮想的なキャラクター，物体等は，仮想的なオブジェクトの語で総称され得る点に留意すべきである。
【００１８】
また，本明細書では，ボーンを有するスケルトンモデルを三次元オブジェクトの例として用いて説明行うが，実施例は，特定の三次元オブジェクトに限定されるものではない。すなわち，ボーンを持たない三次元オブジェクト，ボーン以外を用いた三次元オブジェクトに，以下に説明する実施例を適用しても良い。
【００１９】
本明細書における三次元モデルとは、複数の構成要素を含み、三次元アニメーションを生成するための語として用いる。そして三次元モデルを単にモデルの語を用いて説明する。
【００２０】
図１は、クライアント装置１００の機能ブロック図である。クライアント装置１００は、サーバ装置１２０と、インターネットなどのネットワーク１３０を介して接続される。クライアント装置１００は、携帯端末、携帯電話、ラップトップコンピュータ、ディスクトップコンピュータ、パッド、タブレットなど、サーバ装置１２０とデータの送受信ができるコンピュータであればどのようなものでもよい。
【００２１】
クライアント装置１００は、ダウンロード手段１０２と、表示手段１１０と、改変したモデルを生成する手段１０４と、アップロード手段１０６とを有する。また、表示手段１１０は、関係を表示する手段１１２を含む。関係には、モデルの改変の先祖及び子孫を規定する関係が含まれる。関係についての詳細は後述する。
【００２２】
クライアント装置１００は複数存在してもよい。また、サーバ装置１２０も複数存在してもよい。
【００２３】
サーバ装置１２０は、複数のモデルを記憶することができる。記憶されたモデルは、クライアント装置１００からの要求に応じてクライアント装置１００に提供される。サーバ装置１２０が、モデルをクライアント装置１００に提供する際に、クライアント装置のユーザに対して課金の処理が行われてもよい。
【００２４】
クライアント装置１００の動作の概要を以下に説明する。
【００２５】
ダウンロード手段１０２は、サーバ装置１２０に記憶されている複数のモデルのうち、１つ又は複数のモデルを指定することができる。指定された１つ又は複数のモデルは、ダウンロード手段１０２によって、サーバ装置１２０からクライアント装置１００にダウンロードされる。ダウンロードされた１つ又は複数のモデルは、クライアント装置に存在する記憶部（不図示）に記憶され得る。
【００２６】
記憶された１つ又は複数のモデルは、表示手段１１０によって、三次元アニメーションに変換されて、ディスプレイなどに表示される。表示される三次元アニメーションは、後述するように、仮想カメラの位置を任意にユーザが変更することによって、三次元アニメーションにおけるキャラクターなどの見える角度、方向などを変えることもできる。
【００２７】
表示手段１１０に含まれる関係を表示する手段１１２は、表示のために選択されているモデルを改変する基となったモデル（先祖）、表示のために選択されているモデルを基に更に改変したモデル（子孫）などを特定する情報を表示することができる。最古の先祖を特定する情報を画面に表示させてもよい。ここで、特定する情報とは、三次元アニメーションのうち特徴的なスナップショットの二次元画像、モデルを特定する名称、モデルを作成した作者の情報などが挙げられる。
【００２８】
上記実施形態では、モデル等は、サーバ装置１２０からクライアント装置１００にダウンロードされ、クライアント装置１００において三次元アニメーションに変換される例を示した。実施形態は、これに限られるものではなく、モデル等をサーバ装置１２０からクライアント装置１００にダウンロードすることなく、三次元アニメーションへの変換等の全ての処理がサーバ装置１２０で行なわれてもよい。或いは、全ての処理が、サーバ装置１２０及びクライアント装置１００以外の第三の装置で処理され、変換された三次元アニメーションがクライアント装置１００に配信されてもよい。
【００２９】
上述のモデルの子孫及び先祖の詳細については、図１０を用いて後述する。
【００３０】
改変したモデルを生成する手段１０４は、所定のモデルの複数の構成要素のうちの一部の構成要素を、他の１以上のモデルの各々の構成要素と置き換ることによって、新たな構成要素の組み合わせから成るモデルを作成することができる。また、所定のモデルに、他の１以上のモデルの各々の構成要素を加えることによって、新たな構成要素の組み合わせから成るモデルを作成してもよい。
【００３１】
また、改変したモデルは、表示手段１１０に入力される。表示手段１１０は、改変したモデルから、改変した三次元アニメーションを生成する。改変した三次元アニメーションは、ディスプレイに表示される。
【００３２】
改変したモデルを生成する手段１０４は、改変したモデルをアップロード手段１０６に出力してもよい。
【００３３】
アップロード手段１０６は、ネットワーク１３０を介して改変したモデルをサーバ装置１２０に送信することができる。改変したモデルは、サーバ装置１２０によって、クライアント装置１００に提供されるように蓄積される。
【００３４】
図２は、一実施例の方法を示すフローチャートである。
【００３５】
ステップ２０２で、クライアント装置は、少なくとも二つのモデル（及び関係）をダウンロードする。
【００３６】
ステップ２０６で、クライアント装置は、改変したモデル（及び関係）を生成する。
【００３７】
ステップ２０８で、改変したモデル（及び関係）を、サーバ装置にアップロードする。
【００３８】
なお、ステップ２０４で、ダウンロードした関係を表示してもよい。
【００３９】
図３は三次元アニメーションを作成する際に用いられるスケルトンモデル（骨格モデル）の例を示す図である。
【００４０】
図３（ａ）は、キャラクターを定義する具体的なスケルトンモデルの例を示している。スケルトンモデルは、ボーン３０１，ボーン３０２等で連結されている。スケルトンモデルを構成する各部位はノードと呼ばれ，各ノードは，親子の関係を持つことも可能である。ノードの回転（曲げ，捻り）の状態は，親ノードを基準とした子ノードの向きで表すことができる。ノードの向きを表すために，各々のノードに座標系が定められる（不図示）。親子関係にあるノードの原点どうしを結ぶ線分，あるいはノード自体がボーンとなる。
【００４１】
人体モデル，動物，構造物等の姿勢（ポーズ，モーション等）を制御する際に用いられるこのようなスケルトンモデルにおいては，図３（ａ）に示す各々のボーンおよび関節の位置，回転（曲げ，捻り）等を意図したとおりに制御することが必要となる。図３（ａ）に示されるスケルトンモデルでは，各々のボーンは関節で結合されており，各々のボーンの動きが他のボーンの動きに影響を与える。従来，スケルトンをモデル化し，スケルトンモデルを制御する手法として，種々のものが提案されている。
【００４２】
モデルに対して予めポーズ又はモーションを定義しておき，モデルに対して，ポーズ又はモーションを適用することで，簡便にモデルのポーズ又はモーションを制御する手法が提案されている（例えば，特開２０１３−１２０３９５号公報参照）。
【００４３】
図３（ｂ）は，複数のボーンに対して体表面を表現する複数のポリゴンを関連付けたキャラクター３１０が示されている。
【００４４】
キャラクター３１０を用いることにより、仮想的な三次元のキャラクター３１０にモーションを与えて、キャラクター３１０を画面上で動かすことができる。
【００４５】
図４は、仮想的なカメラ４０２を設定することにより、モデルから三次元アニメーションを生成する一例を示す図である。キャラクター４０４は、仮想的な三次元空間において存在しているキャラクターである。キャラクターは、複数存在してもよい。また、背景４０６が仮想的な三次元空間に存在している。矢印４０３は、カメラ４０２の撮影方向を示している。
【００４６】
表示手段１１０は、仮想的な三次元空間をカメラ４０２によって撮影した二次元画像をレンダリングして、時間軸上に配置されたフレーム（二次元画像）を生成する。仮想的な三次元空間を撮影するカメラ４０２の動作の定義は、このレンダリングの処理を定義するために用いられる。背景４０６は、三次元モデル、二次元画像、又は動画であってもよい。
【００４７】
具体的には、カメラ４０２の画角、焦点距離、方向、位置等を時間軸上で定義することにより、モデルを三次元アニメーションに変換することができる。カメラ４０２の画角、焦点距離、方向、位置等を時間軸上で定義したものを「カメラワーク」と呼ぶ。
【００４８】
図５は、三次元アニメーションを作成する際に用いられるユーザインタフェースの構成を用いて、モデルの構成要素の例を示した図である。三次元アニメーションを作成する際に用いるユーザインタフェース５００が示されている。
【００４９】
モデルは、キャラクターＡ５３０と、モーションＢ５４０と、カメラワークＣ５５０と、音響Ｄ５６０と、背景Ｅ５７０とを含んでいる。なお、図５のモデルの構成要素は一例であって、その他の構成要素（例えば、照明、環境光など）が含まれてもよい。
【００５０】
タイムライン５２０は、三次元アニメーション５０２の時刻を示す。三次元アニメーション５０２には、キャラクターＡ５０４と背景５０６が表示されている。
【００５１】
キャラクターＡ５３０には、例えばスケルトンモデル及びスキンが定義されたキャラクターの識別子が設定される。図５においては、ミニスカートの少女を定義したキャラクターの識別子が設定される。ユーザインタフェース５００には、その識別子に紐付けられたキャラクターの画像がＡの欄に表示されるようにしてもよい。
【００５２】
モーションＢ５４０には、キャラクターのモーションが定義される。キャラクターのモーションは、幾つかの時刻において離散的に定義されてもよい。時間的に離散的に定義されたキャラクターのポーズを時間軸上で補間することで、キャラクターＡ５３０がなめらかな動きとなるようにすることができる。ユーザインタフェース５００上には、キャラクターの名前が表示されてもよい。
【００５３】
カメラワークＣ５５０は、仮想的なカメラ４０２の画角、焦点距離、方向、位置等が時間軸上で定義される。カメラワークについても、幾つかの時刻において離散的に定義されてもよい。時間的に離散的に定義されたカメラの設定を時間軸上で補間することでカメラワークＣ５５０がなめらかに変化するようにすることができる。
【００５４】
音響Ｄ５６０には、例えば音楽などの音響情報が設定される。具体的には、音響情報を特定する識別子が設定されてもよい。ユーザインタフェース５００上には、音楽の名前が表示されてもよい。音響Ｄ５６０には、音響情報のボリュームを時間軸上で変化させる設定が付加されてもよい。
【００５５】
背景Ｅ５７０には、背景５０６を特定する識別子が設定される。背景Ｅ５７０は、二次元画像、三次元モデル、動画などであってもよい。ユーザインタフェース５００上には、背景の名前が表示されてもよい。
【００５６】
三次元アニメーション５０２の時間軸上の位置は、時刻表示線５２４で示される。
【００５７】
ボタン５１１は、時刻表示線５２４を時刻ゼロに移動させるボタンである。
【００５８】
ボタン５１２は、時刻表示線５２４を過去に移動させるボタンである。
【００５９】
ボタン５１３は、三次元アニメーションを再生するためのボタンである。
【００６０】
ボタン５１４は、時刻表示線５２４を未来に移動させるボタンである。
【００６１】
ボタン５１５は、時刻表示線５２４を最終時刻に移動させるボタンである。
【００６２】
以上のようにして、作成されたモデルをサーバ装置からクライアント装置にダウンロードして、クライアント装置で三次元アニメーションが再生される。
【００６３】
なお、図５に示されるユーザインタフェース５００は、三次元アニメーションを作成する際に用いられるユーザインタフェースであるため、三次元アニメーションを再生する際には、構成要素及び時刻表示線５２４等は、画面上に表示されなくてもよい。
【００６４】
図６は、サーバ装置に蓄積される複数のモデル６００の例を示す図である。
【００６５】
各モデル（モデル１ないしモデル４）は、構成要素としてキャラクター、モーション、カメラワーク、音響、及び背景を有する。なお、モデルによっては、これらの構成要素の一部分が欠落していてもよい。また、これらの構成要素は、一例であって、その他の構成要素（例えば、環境光、照明等）がモデルに含まれていてもよい。
【００６６】
モデル１は、キャラクターＡ１、モーションＢ１、カメラワークＣ１、音響Ｄ１、背景Ｅ１の構成要素を有する。
【００６７】
また、モデル３は、背景の構成要素を持たないモデルである。モデル４は、音響の構成要素を持たないモデルである。
【００６８】
図７は、モデルを改変して新たなモデルを生成する処理の例を示す図である。モデル１が改変される例が示されている。
【００６９】
表６００に示されるモデル１ないしモデル４は、サーバ装置１２０に記憶されている。そして、クライアント装置１００が、モデル１（６１０）及びモデル２（６２０）をダウンロードし記憶している。
【００７０】
クライアント装置１００は、ユーザの指示に基づいて、モデル１（６１０）を改変することができる。
【００７１】
クライアント装置１００は、ユーザの指示に基づいて、モデル１（６１０）のモーションＢ１を、モデル２（６２０）のモーションＢ２に置換し、モデル１１（６３０）を生成する。
【００７２】
この場合、関係６４０に示されるように、モデル１は、モデル１１の先祖の関係を有し、モデル１１は、モデル１の子孫の関係を有する。
【００７３】
クライアント装置１００は、生成されたモデル１１（６３０）を、サーバ装置１２０にアップロードする。サーバ装置１２０上にアップロードされたモデル１１（６０１）は、クライアント装置１００にタウンロード可能となるように、サーバ装置１２０に記憶される。
【００７４】
そして、クライアント装置１００は、改変したモデル１１（６３０）から、三次元アニメーションを生成し、表示することができる。
【００７５】
また、サーバ装置１２０にアップロードされたモデル１１（６０１）は、サーバ装置１２０によって、他のクライアント装置１００に提供される。
【００７６】
また、上述の関係６４０も、クライアント装置１００によって、サーバ装置１２０にアップロードされ、サーバ装置１２０に記憶されてもよい。また、この関係６４０は、サーバ装置１２０によって、他のクライアント装置１００に提供されてもよい。
【００７７】
図８は、モデルを改変して新たなモデルを生成する処理の他の例を示す図である。図８では、図７における説明でサーバにアップロードされたモデル１１を更に改変し、モデル１２を生成する例を示す。
【００７８】
サーバ装置１２０には、モデル１ないしモデル４（６００）及びモデル１１（６０１）が記憶されている。サーバ装置に記憶されているこれらのモデルは、クライアント装置１００からの要求に基づいて、クライアント装置１００にダウンロードされる。
【００７９】
クライアント装置１００は、モデル４（６５０）とモデル１１（６７０）をダウンロードする。なお、モデル４は、音響の構成要素を含まないモデルである。
【００８０】
クライアント装置１００は、ユーザの指示に基づいて、モデル１１（６７０）の背景Ｅ１を、モデル４（６５０）の背景Ｅ４に置換し、モデル１２（６８０）を生成する。
【００８１】
この場合、関係６９０に示されるように、モデル１１は、モデル１２の先祖の関係を有し、モデル１２は、モデル１１の子孫の関係を有する。
【００８２】
クライアント装置１００は、生成されたモデル１２（６８０）を、サーバ装置１２０にアップロードする。サーバ装置１２０上にアップロードされたモデル１２（６０２）は、クライアント装置１００にタウンロード可能となるように、サーバ装置１２０に記憶される。
【００８３】
そして、クライアント装置１００は、改変したモデル１２（６８０）から、三次元アニメーションを生成し、表示することができる。
【００８４】
また、サーバ装置１２０にアップロードされたモデル１２（６０２）は、サーバ装置１２０によって、他のクライアント装置１００に提供される。
【００８５】
また、上述の関係６９０も、クライアント装置１００によって、サーバ装置１２０にアップロードされ、サーバ装置１２０に記憶されてもよい。また、この関係６９０は、サーバ装置１２０によって、他のクライアント装置１００に提供されてもよい。
【００８６】
図９は、改変したモデルの改変履歴を説明する図である。
【００８７】
図９（Ａ）は、モデル１とモデル１１との関係（６４０）、及びモデル１１とモデル１２との関係（６９０）を示している。
【００８８】
図９（Ｂ）は、図９（Ａ）に示される関係から、モデル１１から見たモデル１の関係、及びモデル１１から見たモデル１２の関係を図示したものである。すなわち、モデル１は、モデル１１に対して直近の先祖の関係を有する。モデル１２は、モデル１１に対して直近の子孫の関係を有する。
【００８９】
たとえば、クライアント装置１００が、サーバ装置１２０からモデル１１をダウンロードする際に、図６（Ａ）の関係もサーバ装置１２０からダウンロードしてもよい。このようにすることによって、クライアント装置１００は、モデル１１の直近の先祖、及びモデル１１の直近の子孫が何であるかを表示することができる。クライアント装置１００は、関係を表示する際に、モデル１及びモデル１２の三次元アニメーションの特徴的な二次元画像を、サーバ装置１２０から併せてダウンロードして表示するようにしてもよい。
【００９０】
図１０は、モデルの改変履歴を木構造で示した例を示す図である。
【００９１】
図９に示した関係は、モデル間の関係を示すものであり、複数の関係を結合することにより、複数の関係から１つの木構造を作ることができる。この木構造において、最古の先祖は、モデルａであることがわかる。
【００９２】
クライアント装置１００は、サーバ装置１２０から、図１０に示される木構造の関係をダウンロードすることができる。例えば、クライアント装置１００は、直近の先祖、及び直近の子孫以外に、最古の先祖を表示するようにしてもよい。
【００９３】
このような関係を表示することによって、ユーザは、モデルの改変の履歴を知ることができる。また、ユーザは、モデルの改変の履歴を確認して、サーバ装置１２０から好みのモデルをダウンロードすることができる。ユーザは、関係をたどって、モデルの改変履歴を探索することもできる。
【００９４】
図１１は、ダウンロードするモデルをクライアント装置上で選択するための画面の例を示す図である。
【００９５】
複数のモデルを選択する画面１１００は、クライアント装置１００においてダウンロードするモデルを選択するための画面の例を示している。
【００９６】
欄１１１０、欄１１２０、欄１１３０、欄１１４０、欄１１５０、欄１１６０は、それぞれ、サーバ装置１２０からダウンロードできるモデルを表示している。各欄の左側の大きな画像は、モデルの三次元アニメーションの代表的な二次元画像を示している。このような代表的な二次元画像を画面に表示することによって、ユーザは、直感的にモデルの内容を把握することが可能である。なお、代表的な二次元画像の代わりに、モデルのＩＤ又はモデルの名称（後述）などが画面に表示されてもよい。
【００９７】
「寝ころぶ人」１１１２は、モデルの名称である。「takeshi」１１１４は、モデルの作者又は改変したモデルを作成したユーザの名前である。サムネール画像１１１６は、任意のユーザが「寝ころぶ人」の三次元アニメーションのスナップショットを撮り、サーバ装置１２０にアップロードした画像である。なお、モデルの名称、作者、スナップショットは、画面に表示されなくてもよい。
【００９８】
ユーザは、例えば、欄１１１０を指でタップすることにより、「寝ころぶ人」という名称のモデルを選択することができる。モデルの選択方法は、指でタップすることに限られない。例えば、マウスでのクリック、指でのスワイプ、音声によるモデルの名称の入力などでもよい。
【００９９】
選択された、モデルは、サーバ装置１２０からクライアント装置１００にダウンロードされる。ユーザは、１つまたは複数のモデルを選択する画面１１００を用いて、１つまたは複数のモデルのダウンロードを指示することができる。
【０１００】
ダウンロードされたモデルは、クライアント装置１００に記憶される。クライアント装置１００の記憶装置の容量に応じて、記憶できるモデルの数の閾値を設けてもよい。記憶するモデルの数が閾値を超えた場合には、例えば、最古にダウンロードされたモデルを消去して、モデルの記憶できる記憶領域を確保してもよい。
【０１０１】
図１２は、ダウンロードしたモデルを用いて三次元アニメーションをクライアント装置上に表示した例を示す図である。
【０１０２】
クライアント装置１００は、再生用の画面１２００を表示することができる。
【０１０３】
ダウンロードされたモデルは、ユーザにより再生ボタン１２３０が選択（指示）されると、選択されたモデルを用いて三次元アニメーションの動画１２１０を表示する。三次元アニメーションは、モデルからリアルタイムで生成されることが望ましい。ユーザは、仮想的なカメラ４０２をリアルタイムで操作することにより、キャラクターが表示される方向などを変更することができる。なお、仮想的なカメラ４０２をリアルタイムで動かすユーザインタフェースは、図面には表示されていないが、カメラ４０２の画角、焦点距離、方向、位置等をユーザが指示できるユーザインタフェースであればどのようなものであってもよい。
【０１０４】
サムネール領域１２２０には、三次元アニメーションの任意の時刻の複数の二次元画像（サムネール）が表示されてもよい。例えば、ユーザは、任意の時刻において、所定のボタン（不図示）を押すことにより、三次元アニメーションのサムネール画像を作成することができるようにしてもよい。作成されたサムネール画像は、サムネール領域１２２０に表示される。複数のサムネール画像は、三次元アニメーションの時間軸と対応させて順番に並べられてもよい。作成されたサムネールは、再生されているモデルと紐付けてサーバ装置１２０にアップロードされてもよい。
【０１０５】
クライアント装置１００は、他のユーザによりサーバ装置１２０にアップロードされたサムネールをクライアント装置１００にダウンロードして、サムネール領域１２２０に表示するようにしてもよい。サムネールは、モデルのダウンロードと共にダウンロードされてもよく、或いは、モデルのダウンロードの時とは異なる時に、ダウンロードされてもよい。例えば、三次元アニメーションが生成される際に、モデルに紐付いたサムネールがサーバ装置１２０からクライアント装置１００にダウンロードされてもよい。
【０１０６】
例えば、サムネール１２２１が、ユーザに選択された場合であって、再生ボタンの１２３０が押された場合は、クライアント装置１００は、選択されたサムネールの時刻から、サムネールが取得されたカメラワークで、三次元アニメーションを生成し表示するようにしてもよい。
【０１０７】
このようにすることによって、ユーザは、好みの時刻から、好みのカメラワークで三次元アニメーションを観ることができる。
【０１０８】
図１３は、モデルの構成要素を選択する際に表示されるユーザインタフェースの例を示す図である。
【０１０９】
クライアント装置１００は、モデルの構成要素を修正する画面１３００を表示することができる。
【０１１０】
画像１３１０は、改変を加えたいモデルの三次元アニメーションのうちの任意の二次元画像である。画像１３１０は、三次元アニメーションの二次元画像のうち、モデルを代表する特徴的な二次元画像が、あらかじめ定められていてもよい。画像１３１０には、５つのキャラクターが存在し、「海の家」が背景となっていることがわかる。
【０１１１】
「何を置換しますか？」の表示（１３２０）は、モデルの構成要素のうち、いずれの構成要素を、他の構成要素に置換するかの指示を、ユーザに対して促す表示である。
【０１１２】
画面１３００には、置換するために選択する構成要素が表示される。具体的には、キャラクター１３３０、モーション１３４０、カメラワーク１３５０、背景１３６０、オーディオ１３７０が選択可能に表示されている。既に述べたように、モデルの構成要素は、これらに限定されるものではない。また、モデルは、これらの構成要素全てを含んでいなくてもよい。例えば、オーディオ１３７０が含まれていないモデルが存在してもよい。この場合には、オーディオ１３７０を選択することにより、他のモデルからオーディオを追加するようにしてもよい。オーディオは、音響情報の一例である。
【０１１３】
なお、モデルにモーションの構成要素が存在する場合には、キャラクターの構成要素も存在することが望ましい。なぜなら、モーションが存在し、キャラクターが存在しないモデルは、三次元アニメーションを生成しても、ユーザがモーションを確認することが困難となるからである。
【０１１４】
図１４は、モデルを改変する際に表示されるユーザインタフェースの例を示す図である。
【０１１５】
クライアント装置１００は、モデルを改変する画面１４００及び画面１４５０を表示することができる。
【０１１６】
図１４（Ａ）は、キャラクターを置換する際に表示される画面１４００を示している。
【０１１７】
画面１４００には、５つのキャラクター１４１１ないしキャラクター１４１５が表示されており、背景１４１０が表示されている。
【０１１８】
「どれを置換しますか？」の表示（１４１９）は、上記５つのキャラクターのうちいずれのキャラクターを置換対象にするかの指示をユーザに促している。
【０１１９】
欄１４２０は、キャラクター１４１３に対応しており、キャラクター１４１３の顔の拡大画像１４２２が表示されている。欄１４３０は、キャラクター１４１１に対応しており、キャラクター１４１１の顔の拡大画像１４３２が表示されている。欄１４４０は、キャラクター１４１２に対応しており、キャラクター１４１２の顔の拡大画像１４４２が表示されている。キャラクターの顔の拡大画像は、ユーザがキャラクターを識別するのを助けるための表示である。
【０１２０】
チェックマーク１４４４は、ユーザによってキャラクター１４１２が置換の対象に選択されたことを示している。
【０１２１】
図１４（Ｂ）は、図１４（Ａ）において選択されたキャラクターをいずれのキャラクターと置換するかをユーザが指示する際に表示される画面１４５０の例を示している。
【０１２２】
画面１４５０の画面構成を以下に説明する。
【０１２３】
欄１４７０に「こけし１」のキャラクターの顔の拡大画像１４７２が表示されている。
【０１２４】
欄１４８０に「こけし２」のキャラクターの顔の拡大画像１４８２が表示されている。
【０１２５】
欄１４９０に「石田１全身タイツ男_黄」のキャラクターの顔の拡大画像１４９２が表示されている。
【０１２６】
ユーザによって、チェックマーク１４７４によって、「こけし１」のキャラクターの欄１４７０が選択されている。
【０１２７】
以上のユーザによる操作によって、キャラクター１４１２が、「こけし１」に置換されたキャラクター１４５２となって、表示されている。その他のキャラクター１４５１、キャラクター１４５３、キャラクター１４５４、及びキャラクター１４５５は、置換されていないことがわかる。背景１４６０も未だ置換されていない状態が表示されている。
【０１２８】
以上のように画面１４００及び画面１４５０を交互に表示させることによって、ユーザは、どのキャラクターをどのキャラクターに置換するかを指示することができる。なお、画面１４５０に表示されるキャラクターの候補は、既にダウンロードされた、他の１つ以上のモデルに含まれるキャラクターをスクロールさせることにより、ユーザに選択させるようにしてもよい。或いは、置換の候補となるモデルをユーザに選択させ、選択されたモデルに含まれるキャラクターをユーザに選択させるようにしてもよい。置換の候補となるモデルは、あらかじめサーバ装置１２０からダウンロードされたモデルであってもよい。或いは置換の候補となるモデルは、ユーザの選択によって、サーバ装置１２０からダウンロードされてもよい。
【０１２９】
また、背景１４１０についても、図１４（Ｂ）と同様のインタフェース画面を用いることにより、どの背景に置換するかをユーザに指示させることができる。
【０１３０】
なお、上述のユーザインタフェースは一例であって、実施例は、これらのユーザインタフェースに限られるものではない。
【０１３１】
図１５は、改変する構成要素を選択してモデルの改変が行われた例を示す図である。
【０１３２】
画面１５００では、ユーザの指示に基づいて、キャラクター１５３０にチェックマーク１５３１が付与されており、背景１５６０にもチェックマーク１５６１が付与されている。したがって、モデルの構成要素のうち、キャラクター及び背景が置換の対象であることが、ユーザにより指示されていることがわかる。なお、既に述べたように置換ではなく追加の指示であってもよい。また、キャラクターの数を増加又は減少させてもよい。
【０１３３】
そして、画面１５００は、キャラクター１５１４と背景１５１２が置換された後の改変したモデルの二次元画像１５１０が表示されている。女性のキャラクター１４１２は、こけし１のキャラクター１５１４に置換されている。そして、海の家の背景１４１０が、植物が存在する背景１５１２に置換されている。
【０１３４】
以上のようにして改変したモデルは、ユーザの指示に基づいて、クライアント装置１００からサーバ装置１２０にアップロードされてもよい。加えて、アップロードが実行された場合には、改変前のモデルと改変後のモデルとの関係がアップロードされてもよい。
【０１３５】
また、ユーザは、更に画面１５００を用いて、改変したモデルを更に改変することができる。
【０１３６】
図１６は、モデルの改変履歴を表示する画面の例を示す図である。
【０１３７】
クライアント装置１００は、モデルの改変履歴を表示する画面１６００を表示することができる。
【０１３８】
画像１６１０は、ユーザにより選択されたモデルの三次元アニメーションの二次元画像が表示されている。画面１６００の下に、選択されたモデルの複数のサムネール画像が表示されてもよい。
【０１３９】
「直近の子孫」の表示１６２０の下の欄１６２１に、直近の子孫を代表する二次元画像が表示されている。「ダンス」の表示は、モデルの名称である。「ゲスト」の表示は、直近の子孫のモデルを生成させたユーザ名である。
【０１４０】
「直近の先祖」の表示１６３０の下の欄１６３１に、直近の先祖を代表する二次元画像が表示されている。「浜辺でダンス」の表示は、モデルの名称である。「ゲスト」の表示は、直近の先祖のモデルを生成させたユーザ名である。
【０１４１】
「最古の先祖」の表示１６４０の下の欄１６４１に、最古の先祖を代表する二次元画像が表示されている。「石田３」の表示は、モデルの名称である。「マメ」の表示は、最古の先祖のモデルを生成させたユーザ名である。加えて欄１６４１には、最古の先祖のモデルの三次元アニメーションのサムネール画像１６４２が表示されている。
【０１４２】
ユーザは、例えば、最古の先祖を指でタップすることにより、最古の先祖のモデルを、サーバ装置１２０からクライアント装置１００にダウンロードすることができ、最古の先祖のモデルの三次元アニメーションを観ることができる。なお、既に最古の先祖のモデルがダウンロードされている場合には、ダウンロードを省略して、最古の先祖のモデルの三次元アニメーションを観ることができる。
【０１４３】
なお、クライアント装置１００は、図１０に示した木構造の改変履歴をサーバ装置１２０からクライアント装置１００にダウンロードして、ユーザが改変履歴を探索することができるようにしてもよい。
【０１４４】
ユーザが改変履歴を探索できることで、ユーザは、関連するモデルの三次元アニメーションを、クライアント装置１００で表示させることができる。
【０１４５】
以上のように、改変した複数のモデルを用いることにより、さらに改変した様々なモデルをユーザが容易に生成することができる。
【０１４６】
図１７は、クライアント装置１００及びサーバ装置１２０のハードウエア構成１７００を示す図である。
【０１４７】
ハードウエア構成１７００は、ＣＰＵ１７１０、メモリ１７２０、通信制御部１７３０、入出力インタフェース１７４０、表示制御部１７５０、ドライブ制御部１７６０、及び印刷制御部１７７０を有する。
【０１４８】
そして、通信制御部１７３０には、インターネットなどのネットワークが接続される。入出力インタフェース１７４０には、入出力装置１７４２が接続される。表示制御部１７５０には、表示装置１７５２が接続される。ドライブ制御部１７６０は、記憶媒体１７６２を読み書きすることができる。印刷制御部１７７０には、プリンタ１７７２が接続される。
【０１４９】
記憶媒体１７６２は、ＲＡＭ、ＲＯＭ、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、ハードディスク、メモリーカード等であってもよい。
【０１５０】
以上説明した実施例の方法は，コンピュータにより実行され得る。また，実施例の方法は，コンピュータに実行させるプログラムとして，インプリメントされてもよい。プログラムの一部又は前部は、オペレーティングシステムにより実行されてもよい。また、プログラムの一部がハードウエアにより実現されてもよい。
【０１５１】
なお，上述の実施例において，方法のステップ又はプログラムのステップは、矛盾のない限り，同時に，又は順序を入れ替えて実行されてもよい。
【０１５２】
以上の実施例は，ハードウエアの装置としてインプリメントされ得る。
【０１５３】
以上の実施例は，請求項に記載された発明を限定するものではなく，例示として取り扱われることは言うまでもない。
【符号の説明】
【０１５４】
１００  クライアント装置
１０２  ダウンロード手段
１０４  改変したモデルを生成する手段
１０６  アップロード手段
１１０  表示手段
１１２  関係を表示する手段
１２０  サーバ装置
１３０  ネットワーク
【図１】
0006275759.tif 000002
【図２】
0006275759.tif 000003
【図３】
0006275759.tif 000004
【図４】
0006275759.tif 000005
【図５】
0006275759.tif 000006
【図６】
0006275759.tif 000007
【図７】
0006275759.tif 000008
【図８】
0006275759.tif 000009
【図９】
0006275759.tif 000010
【図１０】
0006275759.tif 000011
【図１１】
0006275759.tif 000012
【図１２】
0006275759.tif 000013
【図１３】
0006275759.tif 000014
【図１４】
0006275759.tif 000015
【図１５】
0006275759.tif 000016
【図１６】
0006275759.tif 000017
【図１７】
0006275759.tif 000018