(57)【要約】【課題】ＣＧキャラクタを容易且つ効率的に生成する。【解決手段】３次元仮想空間上で所定の動作を行うＣＧキャラクタを生成するＣＧキャラクタ生成装置において、前記ＣＧキャラクタに対するポリゴン情報を所定のパーツ単位で分割し、分割したパーツ情報と関節情報とを対応付けるポリゴン設定手段と、前記ポリゴン設定手段により得られる複数のパーツ情報に対する関節情報を用いてパーツ間の接続関係を設定する関節接続関係設定手段と、前記ポリゴン設定手段により得られるパーツ情報と、前記関節接続関係設定手段により得られる接続関係とを用いて、前記パーツ情報に対する関節の回転量を制御して前記ＣＧキャラクタの動作を生成するＣＧキャラクタ動作生成手段とを有することにより、上記課題を解決する。【選択図】図２
2013033316.tif 000002
【特許請求の範囲】
【請求項１】
３次元仮想空間上で所定の動作を行うＣＧキャラクタを生成するＣＧキャラクタ生成装置において、
前記ＣＧキャラクタに対するポリゴン情報を所定のパーツ単位で分割し、分割したパーツ情報と関節情報とを対応付けるポリゴン設定手段と、
前記ポリゴン設定手段により得られる複数のパーツ情報に対する関節情報を用いてパーツ間の接続関係を設定する関節接続関係設定手段と、
前記ポリゴン設定手段により得られるパーツ情報と、前記関節接続関係設定手段により得られる接続関係とを用いて、前記パーツ情報に対する関節の回転量を制御して前記ＣＧキャラクタの動作を生成するＣＧキャラクタ動作生成手段とを有することを特徴とするＣＧキャラクタ生成装置。
【請求項２】
前記ポリゴン設定手段は、
関節用ポリゴンと形状用ポリゴンとを識別するための識別情報を設定することを特徴とする請求項１に記載のＣＧキャラクタ生成装置。
【請求項３】
前記ポリゴン設定手段は、
前記識別情報により、前記関節用ポリゴンと前記形状用ポリゴンとを区別し、関節ポリゴンに付属する形状用ポリゴンの設定及び／又は各パーツの表示／非表示の設定を行うことを特徴とする請求項２に記載のＣＧキャラクタ生成装置。
【請求項４】
前記関節接続関係設定手段は、
各関節の親子関係を設定し、前記各関節が直接影響する形状用ポリゴンを指定することで、前記パーツ間の接続関係を設定することを特徴とする請求項１乃至３の何れか１項に記載のＣＧキャラクタ生成装置。
【請求項５】
前記ＣＧキャラクタのパーツ情報を選択させるための表示画面、又は前記ＣＧキャラクタ動作生成手段により生成されたＣＧキャラクタを動作させるための表示画面を生成する画面生成手段とを有することを特徴とする請求項１乃至４の何れか１項に記載のＣＧキャラクタ生成装置。
【請求項６】
コンピュータを、請求項１乃至５の何れか１項に記載のＣＧキャラクタ生成装置が有する各手段として機能させるためのＣＧキャラクタ生成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＧキャラクタ生成装置及びＣＧキャラクタ生成プログラムに係り、特に、３次元仮想空間上のＣＧキャラクタの動作を容易且つ効率的に生成するためのＣＧキャラクタ生成装置及びＣＧキャラクタ生成プログラムに関する。
【背景技術】
【０００２】
従来、３次元仮想空間上のＣＧ（Ｃｏｍｐｕｔｅｒ  Ｇｒａｐｈｉｃｓ）キャラクタ等を使ったアニメーション等の制作は、高い専門性と長い制作時間を必要とする。そこで、従来では、簡単なスクリプトを記述するだけで、３次元仮想空間上のカメラワークやＣＧキャラクタの動きを指定してアニメーション映像を出力する手法が提案され、実用化されている（例えば、非特許文献１参照）。
【０００３】
非特許文献１に示すような手法によれば、テレビ番組のような映像コンテンツ制作全般に使うことのできるスクリプトで、ＣＧキャラクタのしゃべりや動作の他、照明、カメラ、セット、小道具、スーパーインポーズ、ムービー、ＢＧＭ（Ｂａｃｋ  Ｇｒｏｕｎｄ  Ｍｕｓｉｃ）等、テレビ番組のスタジオ制作に必要な機能を記述することができる。
【０００４】
また、ＣＧキャラクタの動作の制作については、従来では専門家に委ねられている。例えば、ＣＧキャラクタがじっと立っている場合には、何も動きがないと非常に不自然である。その場合、通常では、腕や足の部分を回転させると動きを表現できるが、機械的に動かすと不自然となる。したがって、実際の人のように動かすには、人の動きをデータ化して利用する必要がある。
【０００５】
従来のＣＧキャラクタは、形状データとテクスチャデータ、骨（以下、適宜「ボーン」、「骨格」等という。）データ等から構成され、骨を動かすとそれに応じて形状が変化する仕組みが存在する。形状データは、複数の頂点で囲まれた面の情報と、そこにマッピングされるテクスチャ情報とを有している。また、形状の変形は、頂点の移動で実現することができる。
【０００６】
また、ＣＧキャラクタを実際に動作させるアニメーションを生成する場合には、まず手足の動きを生成し、それに合わせて形状を変化させる必要がある。自然で滑らかな動きを実現するには、骨の動きと多くの頂点データが骨の動きに応じて動く複雑な処理が必要となる。
【０００７】
以上のことから、多くの骨格が複雑に動くＣＧキャラクタアニメーションの制作では、ＣＧキャラクタの制作や自然な動作の入力に熟練した技術や高価なソフトウェアを必要とする（例えば、非特許文献２，３参照）。
【０００８】
ここで、上述した従来のＣＧキャラクタの構造について、図を用いて説明する。図１は、従来のＣＧキャラクタの構造例を示す図である。なお、図１（ａ）は、ＣＧキャラクタの表面データ例を示し、図１（ｂ）は、図１（ａ）のＣＧキャラクタに対応する頂点とＣＧキャラクタの骨との関係を示し、図１（ｃ）は、図１（ｂ）からボーン（骨格）部分のみを表示させた例を示し、図１（ｄ）は、形状を変形させた例を示している。
【０００９】
ＣＧキャラクタ１０は、図１（ｂ）や図１（ｄ）に示すようにポリゴン１１の集合で表される。なお、図１に示すポリゴン１１は、一例として四角形の集合として表されている。また、各四角形は、４つの頂点から構成され、それらの頂点は、図１（ｂ）のように表すことができる。
【００１０】
つまり、図１（ｂ）に示すように、ＣＧキャラクタ１０の体の中心にボーン（骨格）１２があり、そのボーン１２が回転し、それに応じて頂点が移動することにより、アニメーションが生成される。図１（ｄ）の例では、ＣＧキャラクタが左腕を挙げた例を示している。
【００１１】
ここで、図１（ｄ）に示す動作は、例えばモーションキャプチャと呼ばれる技術を利用することができる。モーションキャプチャでは、実際の人の動きを複数のカメラを使って取得し、その取得したデータや人体の移動の軌跡から各ボーンの回転量を取得する。つまり、従来では、ＣＧキャラクタ１０を自然に動作させるために、ＣＧキャラクタ１０のボーン１２の動きを基準とし、そのボーン１２の動きに合わせて図１（ａ）に示す皮膚表面の動きを制御することで、滑らかで自然な動きを実現させている。
【００１２】
なお、図１（ａ）に示すような表面データの貼り付けは、専用のスキニング手法やその編集ツール等を用いて、ＣＧキャラクタの動作の生成において、例えばＣＧキャラクタ１０のボーン１２等に対して、皮膚や衣服との関係付け（スキニング）等が行われる（例えば、特許文献１，２参照）。
【先行技術文献】
【特許文献】
【００１３】
【特許文献１】特開２００５−７１１８２号公報
【特許文献２】特開２００７−１４８８５６号公報
【非特許文献】
【００１４】
【非特許文献１】ＴＶＭＬ：ｈｔｔｐ：／／ｗｗｗ．ｎｈｋ．ｏｒ．ｊｐ／ｓｔｒｌ／ｔｖｍｌ／ｊａｐａｎｅｓｅ／ｐｌａｙｅｒ２／ｉｎｄｅｘ．ｈｔｍｌ
【非特許文献２】田中健二／有限会社Ｂ３Ｄｅｓｉｇｎ／芦野健太郎／南奥敬文／工藤芳邦／鈴木幹彦／鈴木靖生／阿部知弘，「Ａｕｔｏｄｅｓｋ  Ｍａｙａ  ビジュアルリファレンス」，株式会社ワークスコーポレーション，２００６年３月
【非特許文献３】Ｍａｙａ：ｈｔｔｐ：／／ｗｗｗ．ａｕｔｏｄｅｓｋ．ｃｏ．ｊｐ／ａｄｓｋ／ｓｅｒｖｌｅｔ／ｐｃ／ｉｎｄｅｘ？ｉｄ＝１４５１５２３９＆ｓｉｔｅＩＤ＝１１６９８２３
【発明の概要】
【発明が解決しようとする課題】
【００１５】
上述したように、従来におけるＣＧキャラクタの動作の生成には、例えばボーンに対応した頂点に重み付けをしたり、ボーンの回転に応じた変形を複雑に計算する等といった処理が必要となる。しかしながら、このような処理には、多くの調整が必要である。したがって、ＣＧキャラクタの生成には、専用ソフトウェアが必要であったり、制作技術の熟練、長時間の作業等が必要となる。
【００１６】
また、既存の高機能なＣＧソフトは、作業効率を向上させるものではあるが、それでもスキニング作業等にはＣＧソフトに関する専門知識が必要であり、ＣＧソフトも高価である。そのため、一般ユーザや非専門のユーザでは、ＣＧキャラクタの動作等を生成することができなかった。
【００１７】
また、ＣＧキャラクタの一部を修正したり、変更する際にも再調整等が必要となるため、同様に、熟練と長時間の作業が必要となる。具体的には、従来では、ＣＧキャラクタの形状情報の変更に伴い、上述したスキニング、スキニング解除、再スキニング等が繰り返される。この作業は、ＣＧキャラクタ全体を基準に行われるため、変更の必要がないパーツについてもスキニング情報を解除して再スキニングする必要があるため、作業が膨大となる。そのため、一般ユーザや非専門家では、容易にＣＧキャラクタやアニメーションを生成することができなかった。
【００１８】
本発明は、上述した問題点に鑑みなされたものであり、３次元仮想空間上のＣＧキャラクタの動作等を容易且つ効率的に生成するためのＣＧキャラクタ生成装置及びＣＧキャラクタ生成プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１９】
上記課題を解決するために、本件発明は、以下の特徴を有する課題を解決するための手段を採用している。
【００２０】
本発明は、３次元仮想空間上で所定の動作を行うＣＧキャラクタを生成するＣＧキャラクタ生成装置において、前記ＣＧキャラクタに対するポリゴン情報を所定のパーツ単位で分割し、分割したパーツ情報と関節情報とを対応付けるポリゴン設定手段と、前記ポリゴン設定手段により得られる複数のパーツ情報に対する関節情報を用いてパーツ間の接続関係を設定する関節接続関係設定手段と、前記ポリゴン設定手段により得られるパーツ情報と、前記関節接続関係設定手段により得られる接続関係とを用いて、前記パーツ情報に対する関節の回転量を制御して前記ＣＧキャラクタの動作を生成するＣＧキャラクタ動作生成手段とを有することを特徴とする。
【００２１】
また、本発明は、コンピュータを、上述したＣＧキャラクタ生成装置が有する各手段として機能させるためのＣＧキャラクタ生成プログラムである。
【発明の効果】
【００２２】
本発明によれば、３次元仮想空間上のＣＧキャラクタの動作を容易且つ効率的に生成することができる。
【図面の簡単な説明】
【００２３】
【図１】従来のＣＧキャラクタの構造例を示す図である。
【図２】ＣＧキャラクタ生成装置の機能構成の一例を示す図である。
【図３】本実施形態におけるＣＧキャラクタ動作生成の一例を示す図である。
【図４】本実施形態におけるテキスト編集可能なデータ例を示す図である。
【図５】本実施形態におけるＣＧキャラクタ動作結果の一例を示す図である。
【図６】画面生成手段により生成されるＣＧキャラクタ編集画面の一例を示す図である。
【図７】ＣＧキャラクタを用いたアニメーション表示画面の一例を示す図である。
【図８】例文表示の記述例を示す図である。
【図９】ＢＶＨデータの一例を示す図である。
【図１０】ＴＶＭＬスクリプトの一例を示す図である。
【図１１】ＣＧキャラクタ生成処理の処理手順の一例を示すフローチャートである。
【発明を実施するための形態】
【００２４】
＜本発明について＞
本発明は、例えばＣＧで３次元仮想空間上に表示させる人や動物、植物、昆虫、ロボット等の通常考えられる動作可能な物体（オブジェクト）であるＣＧキャラクタの動作の生成（編集も含む）に関する。具体的には、ＣＧキャラクタの動作アニメーションの実現に関し、各関節用及び人体等の形状用にポリゴン（多面体）を用意し、例えばポリゴン毎に設定した識別情報（例えば、ポリゴン名）によって、例えば関節用ポリゴンや人体等の形状用ポリゴンの区別、関節と付属ポリゴンとの関係、表示／非表示の区別等を行う。
【００２５】
また、本発明では、上述した内容とは別に、各関節の接続関係を記述したデータを用意し、ＣＧキャラクタの制作者等であるユーザがＣＧキャラクタに所望する動作をさせるために各関節に与えられた回転量により、付属する形状用ポリゴン（例えば、人体形状用ポリゴン等）を回転させることにより、アニメーションの映像生成等を簡単且つ容易に実現する。
【００２６】
以下に、上述したような特徴を有する本発明におけるＣＧキャラクタ生成装置及びＣＧキャラクタ生成プログラムを好適に実施した形態について、図面を用いて詳細に説明する。
【００２７】
なお、本実施形態において生成されたＣＧキャラクタの一例として人（人体）を用いることとするが、本発明においてはこれに限定されるものではない。また、そのＣＧキャラクタが適用されるコンテンツの一例としては、例えばＴＶＭＬ（ＴＶ  ｐｒｏｇｒａｍ  Ｍａｋｉｎｇ  Ｌａｎｇｕａｇｅ）スクリプトを読み込み、リアルタイムＣＧと音声合成を使用して制作されるＣＧ番組等があるが、本発明においてはこれに限定されるものではない。
【００２８】
ここで、ＴＶＭＬとは、テレビ番組を制作するための記述言語であり、テレビ番組の映像や音声等を、素材データと台本（演出内容等）とに分けて記述することができ、制作側で台本を記述することで、パソコン等で動作するソフトウェア等がこれをスクリプトとして読み取り、台本に記述された素材データを取得して即座にテレビ番組として再生・視聴することができる。なお、スクリプトの中には、番組に出演させるＣＧキャラクタ情報等を記述することができる。
【００２９】
＜ＣＧキャラクタ生成装置：機能構成例＞
本実施形態におけるＣＧキャラクタ生成装置の機能構成例について図を用いて説明する。図２は、ＣＧキャラクタ生成装置の機能構成の一例を示す図である。図２に示すＣＧキャラクタ生成装置２０は、入力手段２１と、出力手段２２と、蓄積手段２３と、ＣＧキャラクタ読込手段２４と、ポリゴン設定手段２５と、関節接続関係設定手段２６と、画面生成手段２７と、ＣＧキャラクタ動作生成手段２８と、テキスト編集手段２９と、再生手段３０と、送受信手段３１と、制御手段３２とを有するよう構成されている。
【００３０】
入力手段２１は、ユーザ等からの指示により、本実施形態において動作可能なＣＧキャラクタを生成するために、ＣＧキャラクタ読み込み指示や、ポリゴン設定指示、関節接続関係設定指示、画面生成指示、ＣＧキャラクタ動作生成指示、テキスト編集指示、再生指示、送受信指示等のＣＧキャラクタ生成における各入力を受け付ける。なお、入力手段２１は、例えばキーボードや、マウス等のポインティングデバイス、マイク等の音声入力デバイス等からなる。
【００３１】
出力手段２２は、入力手段２１から入力された指示内容と、これらの各指示内容に基づいて生成されるＣＧキャラクタと、そのＣＧキャラクタに対する動作を表示させる機能を有する。また、出力手段２２は、上述したＣＧキャラクタ及び動作に関するテキストデータをＴＶＭＬスクリプトに記述し、そのＴＶＭＬスクリプトを、例えばＴＶＭＬプレイヤー等で構成される再生手段３０にて再生させる機能を有する。これにより、本実施形態では、例えば番組等の映像コンテンツ、ＣＧキャラクタ情報、テキスト情報等に基づいて、本実施形態におけるＣＧキャラクタやＣＧキャラクタの動作を生成するための画面等を表示する。
【００３２】
また、出力手段２２は、必要に応じてＣＧキャラクタの動作に対応した音声を出力する。このため、出力手段２２は、ディスプレイ等による画面表示デバイスやスピーカ等による音声出力デバイス等からなる。したがって、出力手段２２は、再生手段３０により再生されたスクリプト（例えば、ＴＶＭＬスクリプト等）に対応する映像又は音声を上述の画面表示デバイスや音声出力デバイスを用いて出力する。
【００３３】
蓄積手段２３は、ポリゴン設定データベース（以下、「データベース」を単に「ＤＢ」と略称する）や、関節接続関係設定ＤＢ、ＣＧキャラクタＤＢ等を備えている。ポリゴン設定ＤＢは、ＣＧキャラクタ毎に形状を特定するポリゴンの設定データ等を含む。また、ＣＧキャラクタＤＢは、人体や動物等の複数のＣＧキャラクタに関するポリゴン情報、関節情報、及び皮膚や衣服等（テクスチャ）の形状情報等がＣＧキャラクタ毎に設定された情報等を含む。
【００３４】
ここで、ポリゴン設定ＤＢにおける部位（パーツ）情報には、そのパーツの表面の形状情報、材質情報、各パーツに対応する画像情報等が含まれる。なお、ポリゴンの形状は、例えば四角形でもよく、三角形や五角形以上でもよい。
【００３５】
また、ポリゴン設定ＤＢは、各パーツに含まれる構成や構造等に関する詳細情報や複数のパーツの組を纏めたパーツグループ情報等も蓄積し、必要に応じて読み込みと、書き込みを行うことができる。
【００３６】
また、蓄積手段２３は、上述した情報の他にも本実施形態を実施することで得られるＣＧキャラクタ情報や、生成された画面、再生した番組、番組を再生するためのＴＶＭＬスクリプトや、台本データ、素材データ、番組制作エンジン等のＴＶＭＬ用の番組を制作するための各種情報等を蓄積する。なお、蓄積手段２３に蓄積されている各種データは、必要に応じて読み出しや書き込みが行われる。
【００３７】
また、蓄積手段２３は、例えば送受信手段３１を介して、上述した各種データを通信ネットワーク等に接続された外部装置等から取得することもできる。したがって、例えば上述したポリゴン設定ＤＢや関節接続関係設定ＤＢ、ＣＧキャラクタＤＢは、必要に応じて通信ネットワーク等に接続された外部装置等から取得することができ、これにより、ユーザ自らがメンテナンス等を行う必要がなく、外部装置から更新済みの最新のポリゴン設定ＤＢ、関節接続関係設定ＤＢ、ＣＧキャラクタＤＢを取得することができる。
【００３８】
ＣＧキャラクタ読込手段２４は、蓄積手段２３等に蓄積されているＣＧキャラクタＤＢ等から所望するＣＧキャラクタの生成（動作の生成も含む）に必要となるＣＧキャラクタ情報を読み込む。なお、ＣＧキャラクタ読込手段２４は、蓄積手段２３等に蓄積されているポリゴン設定ＤＢから所望するＣＧキャラクタの動作の生成に必要となる上述した各種パーツ情報群や各詳細情報群等に対応するポリゴン設定情報等を読み込む。
【００３９】
ポリゴン設定手段２５は、ＣＧキャラクタの動作の設定を行うために、ＣＧキャラクタに対応するポリゴンの設定を行う。具体的には、ポリゴン設定手段２５は、ＣＧキャラクタを、所定のパーツ（ポリゴン（ポリゴン群を含む））毎に分割する。なお、分割は、例えば複数の所定のパーツ単位で行ってもよく、複数のパーツで纏めて分割してもよい。
【００４０】
また、ポリゴン設定手段２５は、ポリゴン設定ＤＢやＣＧキャラクタＤＢ等から得られる各関節用や人体形状用に用意されたポリゴン（多面体）に識別情報（例えば、ポリゴン名等）を設定し、設定したポリゴン名によって、例えば関節用／人体形状用のポリゴンを区別し、関節用ポリゴンと関節用ポリゴンに付属する人体形状用ポリゴンとの関係、及び／又は各パーツ（ポリゴン）の表示／非表示の区別等の設定を行う。また、各ポリゴンには、位置情報等も含む。また、ポリゴン設定手段２５において設定された各種情報は、例えばポリゴン設定ＤＢ等として蓄積手段２３に蓄積することができる。
【００４１】
関節接続関係設定手段２６は、各関節の接続関係を記述する。また、関節接続関係設定手段２６は、動作の際に回転の中心となる関節位置に対して所定の大きさからなる小さなポリゴンを配置する。なお、関節位置は、ユーザ（ＣＧキャラクタの制作者等）が予め設定してもよく、関節用ポリゴンの頂点データ等から計算して求めることもできる。また、人体形状用ポリゴンと関節用ポリゴンとは、上述したポリゴン設定手段２５で設定された各ポリゴン名(識別情報)で区別する。
【００４２】
ここで、本実施形態におけるポリゴンの描画（表示）の際には、人体形状用ポリゴンのみ描画し、関節用ポリゴンは描画しないように設定することもできる。
【００４３】
また、関節接続関係設定手段２６は、各関節の親子関係を示すデータを設定する。例えば、肘の関節は、肩の関節が回転するとその影響を受けるため、肘の関節は肩の関節の子供とする。更に、関節接続関係設定手段２６は、各関節が直接影響する人体形状ポリゴンを指定する。例えば、肘から腕の部分の人体形状ポリゴンは、肘関節の回転の影響を直接受ける。この場合には、例えば関節用／人体形状用ポリゴンの関係についてもポリゴン名（識別情報）等で区別できるようにすることが好ましい。これにより、編集対象のポリゴンが関節用であるか、又は人体形状用であるかを容易に把握することができる。
【００４４】
また、関節接続関係設定手段２６は、ＣＧキャラクタ毎の動作内容に基づいて、関節の回転を表すモーションデータを用いて、対応する人体形状用ポリゴンを回転させるための設定を行う。なお、関節接続関係設定手段２６で設定された回転設定情報等の各種情報は、例えば関節接続関係設定ＤＢ等として蓄積手段２３に蓄積することができる。
【００４５】
画面生成手段２７は、本実施形態における人体等のＣＧキャラクタの生成において、上述したＣＧキャラクタ読込手段２４、ポリゴン設定手段２５、関節接続関係設定手段２６等により読み込まれた情報のうち、ユーザが所望するＣＧキャラクタ情報及びパーツ情報等を選択させるための画面や、生成されたＣＧキャラクタを動作可能に表示するための画面を生成する。
【００４６】
なお、画面生成手段２７は、生成された画面をディスプレイ等の出力手段２２により出力すると共に、ユーザ等から入力手段２１により入力された情報に基づいて画面の表示内容を逐次対応させるための画面を生成する。
【００４７】
ＣＧキャラクタ動作生成手段２８は、画面生成手段２７により生成され、出力手段２２により表示されている情報に基づいて、ユーザ等が入力手段２１により入力された情報からＣＧキャラクタの動作を生成する。その場合には、ユーザ等が入力手段２１により選択された移動対象のパーツを関節情報に基づいて移動させ、ＣＧキャラクタの動作を生成する。つまり、ＣＧキャラクタ動作生成手段２８は、例えば関節の回転を表すモーションデータに応じて、対応する人体形状用ポリゴンを回転させることで、ＣＧキャラクタアニメーションを制作することができる。本実施形態において、ポリゴン同士は、直接的に連結するのではなく、関節ポリゴンによって連結され一体となって動作が行われる。なお、ＣＧキャラクタ動作生成手段２８におけるＣＧキャラクタ生成の具体例については後述する。
【００４８】
また、ＣＧキャラクタ動作生成手段２８は、ＣＧキャラクタに他の衣服等を着用させる等の編集を行ってもよい。また、ＣＧキャラクタ動作生成手段２８により生成されたＣＧキャラクタは、画面生成手段２７により生成された画面に表示され、ユーザに確認させることができる。また、ＣＧキャラクタ動作生成手段２８は、生成されたＣＧキャラクタ情報を、例えばＣＧキャラクタＤＢとして蓄積手段２３に蓄積することができる。
【００４９】
テキスト編集手段２９は、本実施形態におけるポリゴン名や関節用ポリゴンの親子関係をテキスト情報ファイルとし、各ポリゴン情報（部品）はテキストデータの塊（ブロック）として表現することで、テキストエディタ等のテキスト編集ツール等を用いて関節ポリゴンや親子関係等の編集を行うことができる。
【００５０】
具体的には、本実施形態におけるＣＧキャラクタの生成、編集等において、テキスト編集手段２９は、パーツ情報毎に生成されたテキスト情報の各ブロックをファイル内で結合したり、削除したり、挿入したりすることにより、パーツ情報に含まれる形状情報、材質情報のうち、何れかの情報をＣＧキャラクタの所定の部位で分割されたパーツ単位のポリゴンをテキスト情報により編集する。
【００５１】
なお、テキスト編集手段２９は、画面生成手段２７により生成されたアイコン等により表示されるパーツ情報を選択することで、その選択したパーツ情報に対応するテキスト情報を別画面等に表示し、表示されたテキスト情報に対してユーザが入力手段２１等により入力された情報を反映させることで、容易にユーザにパーツ情報の編集等を行わせることができる。
【００５２】
なお、テキスト編集手段２９は、予め蓄積手段２３に蓄積されているスクリプト（例えば、ＴＶＭＬスクリプト等）のテキスト情報を編集することもできる。これにより、例えば、既存のＴＶＭＬスクリプトに記述されている番組に登場するＣＧキャラクタに対して新たに生成した動作を行わせることができる。
【００５３】
再生手段３０は、ブラウザ機能を有し、ＣＧキャラクタ動作生成手段２８又はテキスト編集手段２９により生成されたＣＧキャラクタ情報のテキストファイルを読み込み、ＣＧキャラクタ動作を再生してディスプレイ等の出力手段２２に出力させる。
【００５４】
送受信手段３１は、通信ネットワークを介してポリゴン設定ＤＢ、関節接続関係設定ＤＢ、ＣＧキャラクタＤＢ、ＣＧキャラクタ情報、画面情報、ＣＧキャラクタデータ、ポリゴンデータ、パーツデータ、テキスト編集情報、生成されたＣＧキャラクタやそのＣＧキャラクタを用いた番組、素材データ、台本データ、番組制作エンジン等の各種データを、送信することができ、また外部装置から受信することもできる通信インターフェイスである。
【００５５】
制御手段３２は、本実施形態におけるＣＧキャラクタ生成装置２０の各機能構成全体の制御を行う。具体的には、制御手段３２は、ユーザ等から入力手段２１により入力された各種情報に基づいて、例えばＣＧキャラクタ情報を読み込んだり、ポリゴン設定情報を読み込んだり、関節接続関係情報を読み込んだり、画面を生成したり、ＣＧキャラクタ動作を生成したり、テキスト情報を編集したり、ＴＶＭＬスクリプトを再生させたり、送受信手段３１を介して他の端末に送信させる等の各種制御を行う。
【００５６】
上述したように、本実施形態によれば、３次元仮想空間上のＣＧキャラクタの動作を容易且つ効率的に生成することができる。また、本実施形態によれば、例えば、頂点データ、面データ、及び面データに貼り付けるテクスチャ画像データ等から構成されるＣＧキャラクタを使って動作を実現するＣＧキャラクタアニメーション制作システムにおいて、各関節位置及び人体形状用にポリゴン（多面体）を用意し、そのポリゴン名によって関節用／人体形状用のポリゴンの区別、関節と付属ポリゴンの関係、表示／非表示の区別を行い、各関節の接続関係を記述し、関節の回転を表すモーションデータに応じて対応する人体形状用ポリゴンを回転させることで、ＣＧキャラクタアニメーションを制作することができる。
【００５７】
＜ＣＧキャラクタ動作生成手段２８におけるＣＧキャラクタ動作生成について＞
ここで、上述したＣＧキャラクタ動作生成手段２８におけるＣＧキャラクタ動作生成の具体例について図を用いて説明する。図３は、本実施形態におけるＣＧキャラクタ動作生成の一例を示す図である。また、図４は、本実施形態におけるテキスト編集可能なデータ例を示す図である。また、図５は、本実施形態におけるＣＧキャラクタ動作結果の一例を示す図である。
【００５８】
なお、図３（ａ）は、テクスチャ（皮膚や衣服等）の付いた人体モデルのＣＧキャラクタの一例を示し、図３（ｂ）は、ＣＧキャラクタの面表示の一例を示し、図３（ｃ）は、関節用ポリゴンの一例を示し、図３（ｄ）は、人体形状用ポリゴンの一例を示している。また、図４（ａ）は、テキスト編集可能なポリゴン名（識別情報）の一例を示し、図４（ｂ）は、関節用ポリゴンの親子関係の一例を示し、図４（ｃ）は、ポリゴンデータの具体例を示している。更に、図５（ａ）は、関節の移動（回転）例を示し、図５（ｂ），図５（ｃ）は、ＣＧキャラクタの動作（アニメーション）の一例を示している。
【００５９】
本実施形態では、上述したように、ＣＧキャラクタを例えば複数の変形しないパーツ（ポリゴン）に分割し、また動作の際に回転中心となる関節位置にも小さなポリゴンを配置する。また、人体形状用ポリゴンと関節用ポリゴンとは、ポリゴン名（識別情報）で区別する。更に、描画（表示）の際には、人体形状用ポリゴンのみを描画し、関節用ポリゴンは描画しないようにすることができる。
【００６０】
また、本実施形態では、各関節の親子関係を示すデータを設定する。例えば、肘の関節は、肩の関節が回転するとその影響を受けるため、肘の関節は肩の関節の子供として接続関係を設定する。次に、本実施形態では、各関節が直接影響する人体形状ポリゴンを指定する。例えば、肘から腕の部分の人体形状ポリゴンは、肘関節の回転の影響を直接受けるため、これらの関節の関係も設定する。更に、本実施形態では、関節／人体形状ポリゴンの関係も識別情報により判別できるようにする。
【００６１】
上述したように、本実施形態では、ポリゴンの配置、ポリゴン名（名前）での識別、関節の親子関係のデータを作成するだけでよいため、一般ユーザでも、例えば簡易なＣＧツール（例えば、ｍｅｔａｓｅｑｕｏｉａ：「ｈｔｔｐ：／／ｗｗｗ．ｍｅｔａｓｅｑ．ｎｅｔ／ｍｅｔａｓｅｑ／」）等を使ってＣＧキャラクタを制作することができる。また、本実施形態によれば、例えばパーツの変更や追加も容易に行うことができる。
【００６２】
ここで、図３（ａ）に示すＣＧキャラクタ４０は、図３（ｂ）に示すように複数のポリゴン４１から構成されている。なお、図３（ｂ）では、面が分かるように表示した図を示している。また、図３（ｃ）は、図３（ｂ）の一部の拡大画面を示しており、具体的には肩の関節用ポリゴン４２−１と肘の関節用ポリゴン４２−２を示している。関節用ポリゴンは、小さな立方体で表現しているが、本発明においては、この形状や大きさ等は特に制限されるものではなく、例えば関節用ポリゴンを球状等で示してもよく、また関節用ポリゴンであることが容易に分かるように画面上の色を人体形状用ポリゴンの色と異なる色で表示してもよい。また、関節用ポリゴンは、上述した表示／非表示の設定により表示又は非表示にすることができる。
【００６３】
更に、図３（ｄ）では、上腕部分の人体形状用ポリゴン４３−１及び下腕部分の人体形状用ポリゴン４３−２を示している。つまり、上腕部分の人体形状用ポリゴン４３−１及び下腕部分の人体形状用ポリゴン４３−２は、肘の関節用ポリゴン４２−２により接続されており、人体形状用ポリゴン４３−２は、肘の関節用ポリゴン４２−２の回転等により移動がスムーズに行われるよう制御される。
【００６４】
図４（ａ）では、各ポリゴンを識別する識別情報（ポリゴン名）が示されている。ここで、本実施形態では、一例として、ポリゴン名の先頭に「ｐ」の文字が付いているポリゴン名が関節ポリゴンを示し、「ｐ」の付いていないポリゴン名が人体形状用ポリゴンを示している。なお、本発明におけるポリゴン名の種類や記述内容は、これに限定されるものではない。
【００６５】
例えば、図４（ａ）において、「ｐＬｅｆｔＥｌｂｏｗ」は、肘関節のポリゴンを示し、「ＬｅｆｔＥｌｂｏｗ」は、肘関節から直接影響を受ける人体形状ポリゴン、つまり下腕を示している。
【００６６】
したがって、図３（ｃ）に示す肩の関節用ポリゴン４２−１のポリゴン名は、「ｐＬｅｆｔＳｈｏｕｌｄｅｒ」となり、肘の関節用ポリゴン４２−２のポリゴン名は、「ｐＬｅｆｔＥｌｂｏｗ」となる。また、図３（ｄ）に示す下腕部分の人体形状用ポリゴン４３−２のポリゴン名は、「ＬｅｆｔＥｌｂｏｗ」となる。
【００６７】
このように、ポリゴン名に関節用ポリゴンと人体形状用ポリゴンとを識別し易い情報（上述の例では「ｐ」）を付与しておくことにより、ユーザは容易にポリゴンを区別することができる。なお、上述した区別情報は、１文字（例えば、「ｐ」）に限定されるものではなく、複数文字や、１又は複数の記号（例えば「＠＠＠」、「＊＊」等）、又は数字（例えば「９」、「０００」）等であってもよく、これらの文字、記号、数字を任意に組み合わせた情報であってもよい。また、本実施形態では、ポリゴンの識別情報のどこに区別情報を付加するかについても特に限定されるものではなく、例えば識別情報の最後等に付加させてもよい。
【００６８】
図４（ｂ）に示す関節用ポリゴンの親子関係では、各ポリゴン名を階層付きのタグで記述する。つまり、図４（ｂ）の例では、「ｐＬｅｆｔＣｏｌｌａｒ」の下位（子供）に「ｐＬｅｆｔＳｈｏｕｌｄｅｒ」があり、更に「ｐＬｅｆｔＳｈｏｕｌｄｅｒ」の下位に「ｐＬｅｆｔＥｌｂｏｗ」があり、更に「ｐＬｅｆｔＥｌｂｏｗ」の下位に「ｐＬｅｆｔＷｒｉｓｔ」があることを示している。本実施形態では、上述のように記述することで、関節用ポリゴンの親子関係を容易に把握することができる。
【００６９】
また、図４（ｃ）に示すポリゴンデータの具体例では、首部分の関節用ポリゴン（ｐＮｅｃｋ）のデータ例（立法体）を示している。ここで、図４（ｃ）の（ｉ）は、ポリゴンの頂点データ（８点）の位置情報（座標）を示し、図４（ｃ）の（ｉｉ）は、ポリゴンの面データ（立方体のため面合計は６面）を示している。
【００７０】
なお、本実施形態におけるポリゴンの面データは、各面の角の頂点（図４（ｃ）の（ｉｉｉ）の例では、頂点番号が（０、２、３、１））から構成されていることを示している。このように、図４（ａ）〜図４（ｃ）に示される各データは、データファイルをして蓄積され、上述したテキスト編集手段２９等により任意に編集することができる。
【００７１】
また、本実施形態におけるＣＧキャラクタの動作を表すモーションデータは、各関節の回転量の時間変化を示す。例えば、図５（ａ）は、肩と肘の関節が回転している例である。関節位置は、関節ポリゴンの１つの頂点又は全ての頂点の平均から計算することができる。
【００７２】
なお、本実施形態では、肩関節を回転すると肩関節に直接影響を受けるのは、人体形状ポリゴン（上腕）だけでなく、子供の関係にある関節から影響を受ける人体形状ポリゴン（下腕等）も回転させることができる。これにより、例えば図５（ａ）に示すように、ＣＧキャラクタ４０の下腕は、肩と肘の両方の回転の影響を受けてスムーズに動作させることができる。これにより、図５（ｂ）に示すように、ＣＧキャラクタ４０に手話等のアニメーション動作を行わせることができる。
【００７３】
更に、本実施形態では、図５（ｃ）に示すように、ＣＧキャラクタ４０の顔のパーツとして開閉２種類の状態の瞼を用意し、所定のタイミングで切り替えることにより、瞬きの表現を行うこともできる。これにより、ＣＧキャラクタ４０が静止状態にいたとしても自然な表現を演出することができる。
【００７４】
このように、本実施形態によれば、ＣＧキャラクタ制作者は、関節用及び人体形状用ポリゴンを適当な位置に配置するだけで、３次元仮想空間上のＣＧキャラクタの動作を容易且つ効率的に生成することができる。また、人体形状については、ポリゴンを変形したり、テクスチャを変更することにより、ＣＧキャラクタを変更することができる。なお、上述の説明では、１つの関節が１つの人体形状用ポリゴンに直接影響を与えるように説明したが、１つの関節ポリゴンが複数の人体形状ポリゴンに直接影響を与えてもよい。更に、本実施形態では、１つで複雑な形状ポリゴンを利用してもよいし、単純な形状のポリゴンを複数使って複雑な形状を表現することもできる。
【００７５】
＜編集画面例＞
次に、画面生成手段２７により生成されるＣＧキャラクタ編集画面の一例について説明する。図６は、画面生成手段により生成されるＣＧキャラクタ編集画面の一例を示す図である。また、図７は、ＣＧキャラクタを用いたアニメーション表示画面の一例を示す図である。
【００７６】
図６（ａ）に示す画面５０には、ＣＧキャラクタが表示され、図６（ｂ）に示す画面６０には、関節の回転角度制御等の設定情報が表示されている。なお、画面５０，６０は、１つのディスプレイ上に同時に表示させてもよく、１つずつ表示させてもよい。
【００７７】
図６（ａ）の例では、図６（ｂ）に示す画面６０を用いて肩の関節を３２度回転させ、肘の関節を−２８度回転させる例を示している。このように、本実施形態では、所定の画面を用いて関節単位で設定することで、一般ユーザであっても分かり易く、容易にＣＧキャラクタ４０の動作設定を行うことができる。
【００７８】
また、本実施形態では、図７に示すように、例えば、ＣＧキャラクタ４０に手話等をさせたアニメーション（映像）を生成することもできる。ここで、図７（ａ）は、検索画面例を示し、図７（ｂ）は、アニメーション表示例を示し、図７（ｃ）は、アニメーション操作例を示し、図７（ｄ）は、音声入力例を示し、図７（ｅ）は、例文表示例を示す。なお、これらの各画面は、複数の画面を１画面上に同時に表示させてもよく、１つずつ表示させてもよい。
【００７９】
例えば、図７の例では、「学校」という文字（日本語）を入力し「検索開始」ボタンを押すと、図７（ａ）に示すように検索結果が一覧表示される。なお、検索元のデータベースは、予め蓄積手段に蓄積されていてもよく、通信ネットワーク等を介して外部装置に蓄積されたデータを用いてもよい。
【００８０】
次に、その検索結果の中から、例えば１行目の「学校」を選択すると、図７（ｂ）に示すように選択した内容に対応して設定されている手話アニメーションが表示される。
【００８１】
なお、本実施形態では、アニメーション表示の際に、図７（ｃ）に示すように視点を変更して表示することも可能であり、回転の他にも、例えば拡大や縮小、移動等の制御が可能である。また、本実施形態では、図７（ｃ）に示すように、アニメーションの再生速度を変更（例えば、コマ戻し、コマ送り等）することも可能である。これらの制御は、例えば図７（ｃ）に示す画面に表示される各種ボタンやタッチパネルの操作等を用いて実現することができる。
【００８２】
また、本実施形態は、図７（ｄ）に示すように、マイク等の音声入力デバイス等を用いてユーザが直接音声を入力することもできる。これにより、音声による検索を行ったり、入力した音声をＣＧキャラクタがしゃべっているように演出することができる。なお、入力される音声は日本語に限定されず、外国語であってもよい。
【００８３】
また、本実施形態は、図７（ｅ）に示すように、例文を表示して、その中から１つを選択することで、対応する手話等の動作をＣＧキャラクタに行わせることができる。なお、例文等は、元となるデータベースを予め蓄積手段に蓄積しておいてもよく、通信ネットワーク等を介して外部装置から取得したデータを用いてもよい。
【００８４】
ここで、図８は、例文表示の記述例を示す図である。本実施形態では、図８に示すような例文データ（例えば、私の名前は加藤です。）、ＢＶＨファイル（例えば、ｅｘ０１．ｂｖｈ）、サムネール画像（例えば、ｅｘ０１．ｊｐｇ）等の対応関係を記述しておくことにより、一般ユーザであっても図７（ｅ）に示すインターフェイスを構築できる。例文を選択することで、対応するＢＶＨファイルやサムネール画像等を容易に抽出することができ、それらの情報を用いてＣＧキャラクタアニメーションの表示等を容易に行うことができる。なお、例文の種類等については、図８の例に限定されるものではない。
【００８５】
また、本実施形態では、例えば、予め設定されたファイル又は上述したテキスト編集手段２９等により編集された別ファイルを用いて、その文章の内容を機械音声により、音声出力デバイスを用いて出力することもできる。
【００８６】
上述したように、本実施形態によれば、例えば一般ユーザが、簡単なポリゴン編集ツールを使って容易にＣＧキャラクタを制作することができる。また、本実施形態では、変形しないポリゴンが関節位置を中心に回転する処理を実現でき、処理量を少なくして、アニメーションを制作することができる。そのため、本発明は、例えば携帯端末等への実装が容易である。つまり、本実施形態の具体例として、例えば日本語の手話ＣＧ対訳辞書等を携帯端末に実装して、ＣＧキャラクタにより手話を表示させるといったサービス等を提供することができる。
【００８７】
＜具体例：携帯端末への実装＞
ここで、上述した本実施形態の具体例として、携帯端末への実装について説明する。ここで、携帯端末としては、例えば携帯電話、Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ（ＰＤＡ、携帯情報端末）、ノート型パーソナルコンピュータ、電子書籍端末、音楽再生装置、ゲーム機器等があるが、本発明においてはこれに限定されるものではない。また、以下の説明では、本実施形態を適用したＣＧキャラクタの動作を生成するまでの過程等についても適宜説明する。
【００８８】
＜モーションキャプチャ＞
例えば、ＣＧキャラクタを使って手話の細かい手や指の動きを再現するには、正確なモーションデータとモーションデータに対応して変形する高品質な３次元人体ＣＧキャラクタが必要になる。例えば、手や指のモーションを取得する方法としては、人が装着するグローブ型のモーションキャプチャ装置があるが、指の曲がり具合を取得するもので、各指間の広がり等、手話の動きを正確に取り込むことができない。
【００８９】
そこで、本実施形態では、光学式モーションキャプチャシステムを利用する。全身の動きと手指動作を記録するため片手に２６点のマーカーを取り付け、例えば、「ＶＩＣＯＭ  ＭＸ−４０」等の装置を１２台使用して撮影し、マーカーの３次元位置から各関節の回転量を求め、ＢＶＨ形式のモーションキャプチャデータに変換する。
【００９０】
ここで、図９は、ＢＶＨデータの一例を示す図である。ＢＶＨは、Ｂｉｏｖｉｓｉｏｎ社によって開発されたモーションキャプチャデータ用のファイル形式であり、テキスト形式で関節ノードに関する記述に続いて各フレームでの関節回転量が記述されている。
【００９１】
なお、図９の例では、「Ｈｉｐｓ−Ｃｈｅｓｔ１−Ｃｈｅｓｔ２」の階層構造を示している。また、図９に示す「ＭＯＴＩＯＮ」以下が関節の回転量等を示し、「Ｆｒａｍｅ  Ｔｉｍｅ」の次の行から、関節ノード「Ｈｉｐｓ」の移動量（Ｘｐｏｓｉｔｉｏｎ  Ｙｐｏｓｉｔｉｏｎ  Ｚｐｏｓｉｔｉｏｎ）に続いて各関節ノードの回転量（Ｚｒｏｔａｔｉｏｎ  Ｘｒｏｔａｔｉｏｎ  Ｙｒｏｔａｔｉｏｎ）が記述されている。これらは、３次元仮想空間上における各座標（Ｘ，Ｙ，Ｚ）に対して設定されている。
【００９２】
＜ＴＶＭＬによるアニメーション生成＞
ここで、手話のアニメーション生成には、モーションデータを忠実に再現するＣＧキャラクタ及びアニメーション生成が必要となる。また、アニメーション映像を生成するには、ＣＧキャラクタだけでなく、背景セット、視点位置の指定等が必要となる。本実施形態では、上述したＣＧキャラクタ及びアニメーション等の生成にＴＶＭＬを利用する。
【００９３】
ここで、図１０は、ＴＶＭＬスクリプトの一例を示す図である。図１０では、スタジオセット（Ｓｅｔ）、ＣＧキャラクタ（Ｃｈａｒａｃｔｅｒ）、カメラ（Ｃａｍｅｒａ）に対するスクリプトが記述されている。
【００９４】
図１０において、「ｃｈａｒａｃｔｅｒ：ｏｐｅｎｋｅｙｆｒａｍｅ」コマンド、及び「ｃｈａｒａｃｔｅｒ：ｋｅｙｆｒａｍｅ」コマンドが、それぞれＢＶＨ形式のモーションデータファイルの読み込み、再生を行うことができる機能を有する。また、図１０では、「ｓｅｔ：ｏｐｅｎｍｏｄｅ」コマンドを用いてオブジェクト形式の背景セットを読み込むことができる。
【００９５】
このようにして生成したスクリプトは、例えば上述した再生手段３０により再生され、これにより、図７（ｂ）に示すようなＣＧキャラクタのアニメーションが生成される。
【００９６】
＜辞書システムの実装＞
日本語を入力し、手話単語を検索、アニメーション表示するシステムを携帯端末上に構築した。入力部に検索したい日本語を入力し、検索ボタンを押すと検索結果が表示される。例えば、上述した図７に示すように、日本語語彙「学校」を入力して検索ボタンを押すと、対応する手話単語が複数検索される。見たい手話単語のサムネール画像をクリックすると、別画面が表示され手話アニメーションが始まる。また、アニメーションは、ＴＶＭＬを使って表示しているので、リアルタイムに視点を変更することができる。このように、手話ＣＧ対訳辞書が携帯端末上で動作させることで、利用場所が飛躍的に拡大する。
【００９７】
＜携帯端末で使用されるＣＧキャラクタ＞
また、携帯端末で使用されるＣＧキャラクタは、上述したように、ＣＧキャラクタは変形しないパーツ（ポリゴン）の集合として表現される。本実施形態では、ボーンの代わりに、関節位置に関節用ポリゴンを配置する。
【００９８】
つまり、関節用ポリゴンは、小さな立方体で表現され、上述したように、「ＬｅｆｔＥｌｂｏｗ」がパーツポリゴンで、関節用ポリゴン「ｐＬｅｆｔＥｌｂｏｗ」  を回転中心として回転する。その他のパーツについても、同様に、パーツポリゴンと回転中心の関節用ポリゴンの名前をＢＶＨの関節ノード名に合わせておく。また、本実施形態では、上述したＢＶＨデータに基づき、関節用ポリゴンの位置を回転の中心として、付属の人体形状用ポリゴン（パーツポリゴン）が回転することによりアニメーションを実現することができる。
【００９９】
また、ＴＶＭＬ用ＣＧキャラクタでは、顔のパーツとして開閉２種類の状態の瞼を用意し、適当なタイミングで切り替えることにより図５（ｃ）に示すようにＣＧキャラクタの瞬きの表現等を可能とする。
【０１００】
＜実行プログラム＞
ここで、上述したＣＧキャラクタ生成装置２０は、例えば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等の揮発性の記憶媒体、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等の不揮発性の記憶媒体、マウスやキーボード、ポインティングデバイス等の入力装置、画像やデータを表示する表示部、並びに外部と通信するためのインターフェイスを備えたコンピュータによって構成することができる。
【０１０１】
したがって、ＣＧキャラクタ生成装置が有する各機能は、これらの機能を記述したプログラムをＣＰＵに実行させることによりそれぞれ実現可能となる。また、これらのプログラムは、磁気ディスク（フロッピィーディスク、ハードディスク等）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤ等）、半導体メモリ等の記録媒体に格納して頒布することもできる。
【０１０２】
つまり、上述した各構成における処理をコンピュータに実行させるための実行プログラム（ＣＧキャラクタ生成プログラム）を生成し、例えば、汎用のパーソナルコンピュータやサーバ等にそのプログラムをインストールすることにより、ＣＧキャラクタ生成処理を実現することができる。
【０１０３】
次に、本発明における実行プログラムによる処理手順についてコンテンツ制作システムにおけるＣＧキャラクタ生成処理についてフローチャートを用いて説明する。
【０１０４】
＜ＣＧキャラクタ生成処理手順について＞
図１１は、ＣＧキャラクタ生成処理の処理手順の一例を示すフローチャートである。図１１において、まず、ＣＧキャラクタ生成装置２０は、キャラクタの読込みを行い（Ｓ０１）、読み込んだキャラクタに対応するポリゴンデータの設定を行う（Ｓ０２）。次に、ＣＧキャラクタ生成装置２０は、上述したように、ポリゴン名等のポリゴンの識別情報等によってポリゴンの区別、関節用ポリゴンと付属ポリゴン（例えば、人体形状用ポリゴン等）との関係、表示／非表示の区別を設定する（Ｓ０３）。また、ＣＧキャラクタ生成装置２０は、各関節の接続関係を設定する（Ｓ０４）。なお、上述したＳ０２〜Ｓ０４の処理は、既に設定がされている場合には、設定された情報を読み出すだけでよく、これらの処理は行わなくてもよい。
【０１０５】
次に、ＣＧキャラクタ生成装置２０は、ユーザ等の指示により、移動対象として、１又は複数のポリゴン等からなるパーツを選択し（Ｓ０５）、選択されたパーツに接続される各関節に与えられた回転量により付属ポリゴンを回転させて（Ｓ０６）、アニメーション（映像）を生成する（Ｓ０７）。つまり、本実施形態では、ボーンやポリゴンによる繋ぎの設定等ではなく、関節の回転量を設定することで、ＣＧキャラクタの動作を容易に行うことができる。なお、Ｓ０６の処理における関節の回転量の設定は、例えばユーザ等の入力手段による指示により行われる。
【０１０６】
次に、Ｓ０７の処理にて生成されたアニメーションを再生し（Ｓ０８）、アニメーションが希望通りであるか否かを判断する（Ｓ０９）。希望通りでない場合（Ｓ０９において、ＮＯ）、Ｓ０５の処理に戻り、例えばパーツの選択や回転量等を変えて、後段の処理を行う。
【０１０７】
また、Ｓ０９の処理において、ユーザ等の指示等に基づき希望通りであると判断された場合（Ｓ０９において、ＹＥＳ）、例えば、そのアニメーション（ＣＧキャラクタ情報等も含む）等を蓄積手段２３等に登録して蓄積する（Ｓ１０）。
【０１０８】
ここで、ＣＧキャラクタ生成処理が処理終了であるか否かを判断し（Ｓ１１）、ユーザ等の指示等に基づき終了しないと判断された場合（Ｓ１１において、ＮＯ）、Ｓ０１に戻り、後続の処理を行う。また、ユーザ等の指示等に基づき終了すると判断された場合（Ｓ１１において、ＹＥＳ）、ＣＧキャラクタ生成処理を終了する。
【０１０９】
上述したように本発明によれば、３次元仮想空間上のＣＧキャラクタの動作を容易且つ効率的に生成することができる。したがって、一般ユーザが、簡単なポリゴン編集ツールを使って容易にＣＧキャラクタを制作することができる。また、本発明によれば、モーションデータ等を用いて手話等のアニメーションを容易に制作することができる。また、本発明によれば、変形しないポリゴンが関節位置を中心に回転する処理で実現でき、アニメーションの計算量が少ないため、携帯端末等への実装が容易となる。
【０１１０】
以上本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形、変更が可能である。
【符号の説明】
【０１１１】
１０，４０  ＣＧキャラクタ
１１，４１  ポリゴン
１２  骨（ボーン）
２０  ＣＧキャラクタ生成装置
２１  入力手段
２２  出力手段
２３  蓄積手段
２４  ＣＧキャラクタ読込手段
２５  ポリゴン設定手段
２６  関節接続関係設定手段
２７  画面生成手段
２８  ＣＧキャラクタ動作生成手段
２９  テキスト編集手段
３０  再生手段
３１  送受信手段
３２  制御手段
４２  関節用ポリゴン
４３  人体形状用ポリゴン
５０，６０  画面
【図２】
2013033316.tif 000003
【図４】
2013033316.tif 000004
【図８】
2013033316.tif 000005
【図９】
2013033316.tif 000006
【図１０】
2013033316.tif 000007
【図１１】
2013033316.tif 000008
【図１】
2013033316.tif 000009
【図３】
2013033316.tif 000010
【図５】
2013033316.tif 000011
【図６】
2013033316.tif 000012
【図７】
2013033316.tif 000013