(57)【要約】【課題】簡単にリアルタイムＣＧアニメーションを作成することができる、簡易アニメーション作成装置の提供【解決手段】ステージ上に配置すべきキャラクタを選択可能に表示する手段、選択したキャラクタをステージ上に配置する手段、キャラクタに対して指令するモーションコマンドを選択可能に表示する手段、ユーザが選択したモーションコマンドを、その実行順に格納してスケジュールを作成する手段、ケジュールに示されたモーションコマンドに基づいてキャラクタを動作させアニメーションデータを得る手段を有する。【選択図】    図３
2010092402.tif 000002
【特許請求の範囲】
【請求項１】
３次元仮想空間内に設置されたステージ上にキャラクタをオブジェクトとして配置し、当該キャラクタのオブジェクトを所定の振りで動作させると共にそれらステージ及びキャラクタを仮想カメラでレンダリングすることで、リアルタイムにアニメーションを作成することの出来る、簡易アニメーション作成装置において、
前記３次元仮想空間をメモリ内に生成する３Ｄステージ設定部、
前記ステージに配置することの出来る前記キャラクタのキャラクタ生成データを格納するキャラクタデータメモリ、
前記ステージ上に配置すべきキャラクタを、ユーザが入力手段を介して選択可能に表示手段上に表示する選択キャラクタ表示手段、
前記ユーザが選択した前記キャラクタを、前記ステージ上に配置するキャラクタ配置手段、
前記キャラクタに対して指令することの出来る振りを複数種類、モーションコマンドとして格納すると共に、前記各モーションコマンドに対応したモーションプログラムを、前記各キャラクタに前記モーションプログラムに対応する振りを実行可能な形に格納したモーションプログラムメモリ、
前記キャラクタに対して指令することの出来る前記モーションコマンドを、前記モーションプログラムメモリから読み出し、前記ユーザが選択した前記キャラクタと共に、前記表示手段上に、ユーザが選択可能な形で表示する、モーションコマンド表示手段、
前記ユーザが前記各キャラクタについて選択した複数の前記モーションコマンドを、その実行時間と共にメモリに格納してアニメーションスケジュールを作成する、モーション編集手段、
前記作成されたアニメーションスケジュールに示されたモーションコマンドに基づいて、前記ユーザの前記入力手段を介した指令に基づき、前記ステージ上のキャラクタを動作させるキャラクタ動作手段、及び、
前記ステージ上のキャラクタの動作を前記仮想カメラを介してリアルタイムにレンダリングしてアニメーションデータとして完成アニメーションメモリに格納するアニメーション作成手段、
を有することを特徴とする簡易アニメーション作成装置。
【請求項２】
前記アニメーション作成手段は、前記アニメーションデータを、２次元アニメーションデータとして格納している、ことを特徴とする、請求項１記載の簡易アニメーション作成装置。
【請求項３】
前記アニメーション作成手段は、前記レンダリングを行なった際の、前記３次元仮想空間内の前記キャラクタを含む全てのオブジェクト及び前記仮想カメラに関する３次元データを、リアルタイムアニメーションデータとして格納している、ことを特徴とする、請求項１記載の簡易アニメーション作成装置。
【請求項４】
前記簡易アニメーション作成装置は、更に、
前記３次元仮想空間内に複数台の前記仮想カメラを設定する仮想カメラ設定手段、
前記ユーザの前記入力手段を介した指示に基づき、前記レンダリングに使用する前記仮想カメラを選定し及びその使用タイミングを決定する、カメラ制御手段、
前記レンダリングに際した前記仮想カメラの選択状態及び使用タイミングを示すカメラスケジュールを生成する、カメラスケジュール生成手段を有し、
前記アニメーション作成手段は、前記生成されたカメラスケジュールに基づいて、前記仮想カメラを選択、使用してレンダリングを行なうことを特徴とする、請求項１記載の簡易アニメーション作成装置。
【請求項５】
前記モーションプログラムメモリは、前記各モーションコマンドに対応した振りを示すモーションアニメーションデータを、前記各キャラクタ毎に格納しており、
更に前記簡易アニメーション作成装置は、
前記ユーザが選択した前記キャラクタについてのモーションコマンドに対応した前記モーションアニメーションデータを読み出して、前記表示手段に表示する、モーションアニメーション表示手段を有する、
ことを特徴とする、請求項１記載のアニメーション作成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、三次元仮想空間に配置されたキャラクタを用いて簡単にリアルタイムのＧＣアニメーションを作成することのできる、簡易アニメーション作成装置に関する。
【背景技術】
【０００２】
従来、この種のアニメーション作成装置は、いずれも所謂プロ用であって、職業的にアニメーション作成する者を対象としたものであった。こうしたアニメーション作成装置としては、例えば、特許文献１に示すものが知られている。
【特許文献１】特開平１０−３０２０８５
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、こうした装置では、きめの細かなアニメーションを作成することが出来るものの、極めて高価であり、その操作に三次元仮想空間やレンダリングに関する専門的な知識を必要とし、そうした知識がない一般的な人々、特に年少者などが遊びとして使用するには、全く不適当なものであった。
【０００４】
最近、一般のゲームプレイヤの間では、自分の気に入ったキャラクタを用いて、自分のイメージにあったＣＧ（コンピュータ  グラフィック）アニメーションを作成してみたいといった要望が顕在化してきている。しかし、ＣＧアニメーションの知識のほとんど無い人間が、リアルで生き生きとしたなＣＧアニメーションを作るには、操作が簡単であることが必須要件であり、簡単な操作で、三次元仮想空間にポリゴンからなるキャラクタをオブジェクトとして配置し、それらをリアルタイムに動作させ、それをレンダリングすることでアニメーションを作成することの出来る、簡易アニメーション作成装置の開発が必要であった。
【０００５】
そこで、本発明は、三次元仮想空間に配置されたキャラクタに対して行なわせたい振りを順次指定し、また、レンダリングするカメラを編集画面上で指定し、操作するだけで、簡単にリアルタイムＣＧアニメーションを作成することができる、簡易アニメーション作成装置を提供することを目的とするものである。
【課題を解決するための手段】
【０００６】
請求項１の発明は、３次元仮想空間（ＶＳ）内に設置されたステージ（２２）上にャラクタ（２５）をオブジェクトとして配置し、当該キャラクタのオブジェクトを所定の振りで動作させると共にそれらステージ及びキャラクタを仮想カメラ（２６）でレンダリングすることで、リアルタイムにアニメーションを作成することの出来る、簡易アニメーション作成装置（１）において、
前記３次元仮想空間をメモリ内に生成する３Ｄステージ設定部（７）、
前記ステージに配置することの出来る前記キャラクタのキャラクタ生成データを格納するキャラクタデータメモリ（９）、
前記ステージ上に配置すべきキャラクタを、ユーザが入力手段（５）を介して選択可能に表示手段（６）上に表示する選択キャラクタ表示手段（７）、
前記ユーザが選択した前記キャラクタ（２５Ａ。２５Ｂ、……）を、前記ステージ（２２）上に配置するキャラクタ配置手段（７）、
前記キャラクタに対して指令することの出来る振りを複数種類、モーションコマンド（ＭＣ）として格納すると共に、前記各モーションコマンドに対応したモーションプログラム（ＭＰＲ）を、前記各キャラクタに前記モーションプログラムに対応する振りを実行可能な形に格納したモーションプログラムメモリ（１３）、
前記キャラクタに対して指令することの出来る前記モーションコマンド（ＭＣ）を、前記モーションプログラムメモリ（１３）から読み出し、前記ユーザが選択した前記キャラクタ（２５Ａ。２５Ｂ、……）と共に、前記表示手段（６）上に、ユーザが選択可能な形で表示する、モーションコマンド表示手段（１６）、
前記ユーザが前記各キャラクタについて選択した複数の前記モーションコマンド（ＭＣ）を、その実行時間と共にメモリに格納してアニメーションスケジュール（ＡＳＨ）を作成する、モーション編集手段（１６）、
前記作成されたアニメーションスケジュール（ＡＳＨ）に示されたモーションコマンドに基づいて、前記ユーザの前記入力手段（５）を介した指令に基づき、前記ステージ上のキャラクタを動作させるキャラクタ動作手段（１９）、及び、
前記ステージ（２２）上のキャラクタ（２５）の動作を前記仮想カメラ（２６）を介してリアルタイムにレンダリングしてアニメーションデータ（ＡＮＭ．ＲＴＡとして完成アニメーションメモリ（２１）に格納するアニメーション作成手段（１９）、
を有することを特徴としえ構成される。
【０００７】
また、請求項２の発明は、前記アニメーション作成手段（１９）は、前記アニメーションデータを、２次元アニメーションデータ（ＡＮＭ）として格納している、ことを特徴として構成される。
【０００８】
請求項３の発明は、前記アニメーション作成手段（１９）は、前記レンダリングを行なった際の、前記３次元仮想空間（ＶＳ）内の前記キャラクタ（２５）を含む全てのオブジェクト及び前記仮想カメラ（２６）に関する３次元データを、リアルタイムアニメーションデータ（ＲＴＡ）として格納している、ことを特徴として構成される。
【０００９】
また、請求項４の発明は、前記簡易アニメーション作成装置は、更に、
前記３次元仮想空間（ＶＣ）内に複数台の前記仮想カメラ（２６Ａ，２６Ｂ……）を設定する仮想カメラ設定手段（１０）、
前記ユーザの前記入力手段（５）を介した指示に基づき、前記レンダリングに使用する前記仮想カメラ（２６Ａ、２６Ｂ……）を選定し及びその使用タイミングを決定する、カメラ制御手段（１０）、
前記レンダリングに際した前記仮想カメラの選択状態及び使用タイミングを示すカメラスケジュール（ＳＣＨ４）を生成する、カメラスケジュール生成手段（１９）を有し、
前記アニメーション作成手段（１９）は、前記生成されたカメラスケジュール（ＳＣＨ４）に基づいて、前記仮想カメラ（２６）を選択、使用してレンダリングを行なうことを特徴として構成される。
【００１０】
請求項５の発明は、前記モーションプログラムメモリ（１３）は、前記各モーションコマンド（ＭＣ）に対応した振りを示すモーションアニメーションデータを、前記各キャラクタ（２５Ａ，２５Ｂ、……）毎に格納しており、
更に前記簡易アニメーション作成装置は、
前記ユーザが選択した前記キャラクタについてのモーションコマンドに対応した前記モーションアニメーションデータを読み出して、前記表示手段（６）に表示する、モーションアニメーション表示手段（１６）を有する、
ことを特徴として構成される。
【発明の効果】
【００１１】
請求項１の発明によれば、ユーザは、アニメーションを作成したいキャラクタ（２５Ａ，２５Ｂ……）を表示手段（６）上で選択し、更に、当該キャラクタに振り付けるべき振りを順次、モーションコマンドを選択してゆくことで指定してゆくことだけで、アニメーションスケジュール（ＡＳＨ）が作成され、当該アニメーションスケジュール（ＡＳＨ）に基づいて、アニメーションデータが取得され、簡単にアニメーションを作成することが出来る。
【００１２】
また、請求項２の発明によれば、簡単に２次元アニメーションデータを得ることが出来る。
【００１３】
また、請求項３の発明によれば、リアルタイムアニメーションデータを得ることで、当該リアルタイムアニメーションデータから、多様な２次元アニメーションデータを、仮想カメラ位置などを変更しながら得ることが出来る。従って、ユーザによるアニメーションの修正などを、容易に行なうことが出来る。
【００１４】
請求項４の発明によれば、レンダリングに際した、仮想カメラの選定、その使用タイミングが、カメラスケジュールにより簡単に設定することが出来るので、高度なカメラワークを有するアニメーションデータの取得が容易となる。
【００１５】
請求項５の発明によれば、モーションコマンドの選択に当り、自分が選択したキャラクタの当該モーションコマンドに対応する振りを、アニメーションとして見ることが出来るので、各キャラクタに対するモーションコマンドの指定を、正確かつ容易に行なうことが出来る。
【００１６】
なお、括弧内の番号等は、図面における対応する要素を示す便宜的なものであり、従って、本記述は図面上の記載に限定拘束されるものではない。
【発明を実施するための最良の形態】
【００１７】
以下、図面に基づき、本発明の実施例を説明する。
【００１８】
図１は、本発明が適用される簡易アニメーション作成装置の一例を示すブロック図、図２は、三元仮想空間内のステージの一例を示す斜視図、図３は、ディスプレイに表示される操作画面の一例を示す図、図４は、キャラクタへのモーション指令画面の一例を示す図、図５は、別のキャラクタへのモーション指令画面の一例を示す図、図６は、モーションプログラムテーブルの一例を示す図、図７は、アニメーションスケジュールの一例を示す図である。
【００１９】
図1はコンピュータから構成される簡易アニメーション作成装置を示している。簡易アニメーション作成装置１は、主制御部２を有しており、主制御部２にはバス線３を介して、入力部５，液晶ディスプレイなどの表示部６、３Ｄステージ設定部７，キャラクタデータメモリ９，カメラ制御部１０，３Ｄステージメモリ１１，レンダリング制御部１２，モーションプログラムメモリ１３、アニメーションスケジュールメモリ１５、キャラクタ動作制御部１６，入出力制御部１７，アニメーション作成制御部１９，カメラ操作メモリ２０及び完成アニメーションメモリ２１などを有している。
【００２０】
図１に示すアニメーション作成装置１は、実際にはコンピュータが、図示しないハードディスク等のメモリ手段に格納された所定のアニメーション作成プログラムを読み出して、実行することで、図示しないＣＰＵやメモリが、マルチタスクにより時分割的に動作し、図１に示す各ブロックに示された機能を実行してゆくこととなる。しかし、アニメーション作成装置１を、各ブロックに対応したハードウエアで構成することも可能であり、また各ブロックを各ブロックに分散的に設けられたＣＰＵ又はＭＰＵにより制御するように構成することも可能である。
【００２１】
簡易アニメーション作成装置１は、以上のような構成を有するので、リアルタイムＣＧアニメーションを作成する際には、ユーザは入力手段である入力部５を介して主制御部２に対してステージ生成指令ＳＴＣを出力する。これを受けて、主制御部２は、３Ｄステージ設定部７に対してＣＧアニメーションを作成する際のステージを３次元仮想空間内に生成するように指令する。これを受けて、３Ｄステージ設定部７は、図２に示すように、３Ｄステージメモリ１１内に適宜な大きさの三次元仮想空間ＶＳを生成すると共に、３Ｄステージ設定部７の適宜なメモリに格納された一つ以上の背景オブジェクト２３を読み出して、該生成された三次元仮想空間ＶＳ内の所定の座標位置に配置して、ステージ２２を生成する。
【００２２】
なお、ステージ２２を構成するオブジェクトを、複数、図示しないメモリに用意しておき、ステージ２２を生成する際に、３Ｄステージ設定部７がそれらオブジェクトを表示部６を介して、ユーザが選択可能に提示するように構成することも出来る。この場合、ユーザは、表示部６に表示されたステージ２２を構成することの出来るオブジェクト２３の中から、自分がこれから作成したいＣＧアニメーションに使用したいオブジェクトを入力部５を介して選択する。すると、３Ｄステージ設定部７は、ユーザに選択されたオブジェクト２３を、図２に示すように、３Ｄステージメモリ１１内の三次元仮想空間ＶＳの所定の座標位置に配置して、ステージ２２を生成する。なお、各オブジェクト２３には、当該オブジェクト２３を配置すべき三次元仮想空間ＶＳ内の座標位置が属性データとして登録されているので、ステージ２２の生成は円滑に行なうことが出来る。
【００２３】
ステージ２２が三次元仮想空間ＶＳ内に、図２に示すように設定されたところで、主制御部２はレンダリング制御部１２及びカメラ制御部１０に対して、設定されたステージ２２をカメラを用いてレンダリングするように指令する。三次元仮想空間ＶＳには、図２に示すように、カメラ制御部１０により、複数台の仮想カメラ２６Ａ、２６Ｂ、……（各仮想カメラについて、それらを区別する必要がある場合には、仮想カメラ２６Ａ、仮想カメラ２６Ｂ……と表示し、仮想カメラを区別する必要がない場合には、仮想カメラ２６と表示する）が予め設定されており（カメラ設定手段）、それらの仮想カメラ２６の位置及びレンダリング画像の拡大縮小、更にはカメラ動作のＯＮＮ／ＯＦＦはユーザが入力部５を介して後述するカメラ制御部１０に対して自由に指令することが出来る。なお、ステージ２２が生成された時点は、カメラ２６の三次元仮想空間ＶＳ内での位置はカメラ制御部１０により予め決められた初期位置に固定されている。レンダリング制御部１２及びカメラ制御部１０は、カメラ２６Ａを用いて、ステージ２２の全体をレンダリングしてステージ２２の２次元画像を生成し、表示部６に、図３に示すように、当該生成されたステージ２２の２次元画像ＰＣとして表示する。
【００２４】
次に、主制御部２は、３Ｄステージ設定部７に対して、ＣＧアニメーションに使用するキャラクタをユーザに指定させるように指令する。これを受けて３Ｄステージ設定部７は、キャラクタデータメモリ９からＣＧアニメーションの作成に使用することの出来る複数のキャラクタのキャラクタデータを読み出し、表示部６にユーザが選択可能な形で表示する（選択キャラクタ表示手段）。キャラクタデータメモリ９には、ＣＧアニメーションの作成に使用することの出来るキャラクタが、当該キャラクタを構成するポリゴンモデルデータや当該キャラクタに対するテクスチャーマッピングデータなどのキャラクタ生成データＣＧＤとして格納されており、ユーザがＣＧアニメーションの作成に使用したいキャラクタを表示部６上に表示されたキャラクタの中から入力部５を介して選択することで、３Ｄステージ設定部７は、図２に示すように、選択されたキャラクタ２５のポリゴンモデルからなるオブジェクトを三次元仮想空間ＶＳ内のステージ２２上に配置することが出来る（キャラクタ配置手段）。ユーザが選択したキャラクタ２５をステージ２２上のどの座標位置に配置するかは、ユーザが入力部５を介して任意に設定することが出来る。なお、キャラクタ２５のステージ２２上での配置位置は、ユーザが指定する他に、３Ｄステージ設定部７がランダムに、または予め設定された座標位置に配置するように構成することも出来る。
【００２５】
例えば、ユーザが選択できるキャラクタ２５は、図４及び図５に示すように、複数の異なる容姿、服装をしたキャラクタ２５Ａ、２５Ｂ、……（各キャラクタについて、それらを区別する必要がある場合には、キャラクタ２５Ａ、キャラクタ２５Ｂ……と表示し、キャラクタを区別する必要がない場合には、キャラクタ２５と表示する）であり、それらキャラクタ２５Ａ、２５Ｂは、例えば図４及び図５に示すように、その全身像がキャラクタ名ＮＡＭと共に表示部６に、ユーザが入力部５を介して選択可能に表示される。
【００２６】
ユーザによりＣＧアニメーションに使用するキャラクタ２５が選択され、ステージ２２上に配置されると、当該配置されたキャラクタ２５を、レンダリング制御部１２およびカメラ制御部１０がレンダリングして、図３に示すように、ステージ２２及び該ステージ２２上に配置されたキャラクタ２５の２次元画像ＰＣを生成して表示部６に表示する。これにより、表示部６には、図３に示すように、ＣＧアニメーションに登場するステージ２２及びキャラクタ２５が、２次元画像ＰＣとして表示される。この際、レンダリング制御部１２は、２次元画像ＰＣ上に、ＣＧアニメーションを作成する際に、各カメラ２６によりＣＧアニメーションとして録画される範囲を示すフレーム２７を表示させる。また、同時に、図３に示すように、ステージ２２及びキャラクタ２５の２次元画像ＰＣが表示された領域の図中下方の領域に、モーション指定タイムチャートＭＤＴを表示させる。
【００２７】
モーション指定タイムチャートＭＤＴは、後述するアニメーションスケジュールメモリ１５に格納されたアニメーションスケジュールＡＳＨに対応して、キャラクタ動作制御部１６により生成されるものであり、上部に時間の経過を示す時間軸ＴＸが図３左右方向に伸延する形で設定されており、時間軸ＴＸは、ＣＧアニメーションの経過時間を示す。時間軸ＴＸの下方には、当該時間軸ＴＸで定義されるＣＧアニメーションの時間経過における、カメラ２６の選択状態を示すカメラ選択軸ＣＣＸが同様に左右方向に設定され、更にカメラ選択軸ＣＣＸの下方には、時間軸ＴＸで定義されるＣＧアニメーションの時間経過における、キャラクタ２５のモーションコマンドを定義するキャラクタ動作軸ＣＭＸが、キャラクタ２５毎に選択的に表示可能な形で設定されている。
【００２８】
ユーザがステージ２２に登場させる、従って、ＣＧアニメーションに登場させるキャラクタ２５を、複数体選択した場合には、キャラクタ動作軸ＣＭＸに表示すべきキャラクタ２５は、ユーザが入力部５を介して選択することが出来る。従って、キャラクタ動作軸ＣＭＸにはユーザが選択したキャラクタ２５Ａ又は２５Ｂ、又は２５Ｃ……についてのキャラクタ動作軸ＣＭＸが一つだけ表示されることとなる。なお、表示部６の表示面積に余裕がある場合には、ユーザがＣＧアニメーションに登場させるために選択した全てのキャラクタ２５についてのキャラクタ動作軸ＣＭＸを表示するようにしても良い。また、モーション指定タイムチャートＭＤＴは、ユーザの入力部５を介したモーション開始指令ＭＳＣと同期して時間軸ＴＸの図中左端部のスタート位置ＳＴ（「０」と表示されている）から、時間軸ＴＸの秒目盛り３１にその通過時間を整合させる形で、図中右方に向けて一定速度で移動制御される、時間カーソルＴＳを有している。
【００２９】
キャラクタ動作制御部１６は、モーション指定タイムチャートＭＤＴの他にも、カメラ選択ボタン２９Ａ、２９Ｂ、モーション選択ボタン３０、スケール伸縮バー３２，停止ボタン３３、進行ボタン３５及び一時停止ボタン３６などを有している。ユーザは、スケール伸縮バー３２を適宜操作することで、モーション指定タイムチャートＭＤＴの時間軸ＴＸが表示する単位時間当りの表示部６上での表示長さを、図３左右方向に適宜伸縮させることが出来、キャラクタ２５に複雑な動作をさせる場合などは、時間軸ＴＸの間隔ＴＬを図中左右方向に拡大表示させる。例えば、時間軸ＴＸを２倍に拡大表示させると、図３の時間軸ＴＸの括弧内の数字に示すように、それまでの秒目盛り３１の０秒から２０秒の間が、０秒から１０秒に拡大され、それだけ多くのモーションコマンド（後述する）をその間に正確なタイミングで配置することが出来る。
【００３０】
ステージ２２にキャラクタ２５が配置されると、既に述べたように、ユーザはステージ２２上に配置されたキャラクタ２５に対してモーションコマンドを指定して、当該キャラクタ２５のＣＧアニメーション内での動作を指定する作業、即ち振り付けを行なう。即ち、ユーザは、モーション指定タイムチャートＭＤＴのキャラクタ動作軸ＣＭＸに、振り付けを行ないたいキャラクタ２５が表示されている状態で、表示部６に表示されたモーション選択ボタン３０を入力部５を介してクリックなどにより操作する。すると、モーションコマンド一覧表示指令ＭＤＣが主制御部２に対して出力され、これを受けて主制御部２は、キャラクタ動作制御部１６に対して、モーションコマンドテーブルＭＣＴを表示するように指令する。
【００３１】
これを受けてキャラクタ動作制御部１６は、モーションプログラムメモリ１３から、キャラクタ２５に対して指令することの出来るモーション（振り）を複数種類格納したモーションコマンドテーブルＭＣＴを読み出し、表示部６にユーザがモーションコマンドを選択可能に表示する。モーションコマンドテーブルＭＣＴは、図４及び図５に示すように、キャラクタ２５の画像ＩＭと当該キャラクタ２５に指令することの出来る振りに対応したモーションコマンドＭＣが一覧となった形で、モーションプログラムメモリ１３に格納されており、キャラクタ２５毎に読み出して、対応するモーションコマンドＭＣを表示部６上に、ユーザが選択可能な形で表示することが出来る（モーションコマンド表示手段）。なお、モーションコマンドテーブルＭＣＴは、表示部６上にウインドの形で表示され、ユーザは入力部５を介して当該ウインド上で、モーションコマンドテーブルＭＣＴに表示されたキャラクタ２５に対して行なわせたい振りに対応したモーションコマンドＭＣを選択することができる。
【００３２】
モーションコマンドテーブルＭＣＴに表示されたモーションコマンドＭＣには、図４及び図５に示すように、例えば、「歩き」、「走り」、「着替え」、「投げる」、「座る」、「座っている」、「立ち上がる」、「笑う」、「驚く」、「照れる」、「怒る」、「泣く」、「ダンス（ステップ）」、「ダンス（ウエイブ）」、「ダンス（スイム）」、「ダンス（フィニッシュ）」、「死ぬ」、「復活」など、キャラクタ２５が行なうことの出来る振りが複数種類のモーションコマンドＭＣとして定義されている。また、表示された各モーションコマンドＭＣには、当該モーションコマンドテーブルＭＣＴに表示されているキャラクタ２５Ａ又は２５Ｂ……のモーションアニメーションデータがキャラクタ２５毎に関連付けられる形でモーションプログラムメモリ１３に格納されており、ユーザがモーションコマンドテーブルＭＣＴで任意のモーションコマンドＭＣを選択すると、対応するキャラクタ２５Ａ又は２５Ｂ……のモーションアニメーションデータがモーションプログラムメモリ１３から読み出される。キャラクタ動作制御部１６は、当該読み出されたモーションアニメーションデータに基づいて、モーションコマンドテーブルＭＣＴのキャラクタ２５Ａ、２５Ｂ……などが表示されたキャラクタ表示部ＣＤＰに、ユーザが選択したキャラクタ２５Ａ、２５Ｂ……について、ユーザが選択したモーションコマンドＭＣに対応した振りを示すアニメーションを表示する（モーションアニメーション表示手段）。従って、ユーザは、モーションコマンドテーブルＭＣＴに表示される、自分が選択したキャラクタ２５Ａ、２５Ｂ……のアニメーションを見ることで、現在選択しようとしているモーションコマンドＭＣの振り付け内容を、各キャラクタ２５毎に前もって知ることが出来る。
【００３３】
更に、モーションプログラムメモリ１３には、図６に示すように、各モーションコマンドＭＣに対応したモーションプログラムＭＰＲがサブルーチンＳＵＢ１〜ＳＵＢ１８として格納されており、各モーションプログラムＭＰＲはキャラクタ動作制御部１６を介して、３次元仮想空間ＶＳ内の各キャラクタ２５のオブジェクトにモーションコマンドＭＣに対応する動作、即ちここでは所定の振りを行なわせることができる。
【００３４】
次に、ユーザは、図３に示すように、モーション指定タイムチャートＭＤＴの時間カーソルＴＳを、入力部５を介して図中左右方向に移動させ、ステージ２２上のキャラクタ２５に行なわせたい振りのタイミング、即ち自分がモーションコマンドテーブルＭＣＴで選択したモーションコマンドＭＣの実行タイミングを時間軸ＴＸ上の任意の時間位置に時間カーソルＴＳを移動位置決めさせることで決定する。モーションコマンドＭＣを実行すべき時間位置に時間カーソルＴＳを移動位置決めしたところで、モーションコマンドテーブルＭＣＴ上の図示しない決定ボタンなどを入力部５を介して操作すると、モーション指定タイムチャートＭＤＴの時間カーソルＴＳが位置決めされた時間位置のキャラクタ動作軸ＣＭＸ上に、モーションアイコン３７が配置され、当該時間位置でユーザが選択したモーションコマンドＭＣが実行されることを表示する。
【００３５】
こうして、ユーザはステージ２２上のキャラクタ２５に行なわせたい振りを、モーションコマンドテーブルＭＣＴのモーションコマンドＭＣ及び対応するキャラクタ２５Ａ又は２５Ｂ……のモーションアニメーションにより選択し、当該振りを行なわせたい時間を、モーション指定タイムチャートＭＤＴの時間軸ＴＸ上の所定の時間位置にモーションアイコン３７を配置させることで指定する。これにより、キャラクタ動作制御部１６は、各モーションコマンドと当該モーションコマンドの実行時間を関連付けた形で後述するようにアニメーションメモリ２１に格納することが出来る。こうして、ユーザは、図３に示すように、多数のモーションコマンドＭＣを各キャラクタ２５Ａ又は２５Ｂ……について選択して、モーション指定タイムチャートＭＤＴの時間軸ＴＸ上の所定の位置にモーションアイコン３７を配置することで、対応する振りを任意のキャラクタ２５に行なわせることが出来る。
【００３６】
こうして、ステージ２２上のキャラクタ２５Ａ又は２５Ｂ……に対して、多くのモーションコマンドＭＣをモーション指定タイムチャートＭＤＴ上に配置してゆくと、表示部６上のモーション指定タイムチャートＭＤＴは、図３に示すように、ステージ２２上のキャラクタ２５Ａ又は２５Ｂ……のキャラクタ動作軸ＣＭＸに、多数のモーションコマンドＭＣが配置された状態となる。キャラクタ動作制御部１６は、モーションコマンドＭＣのモーションアイコン３７がキャラクタ動作軸ＣＭＸに配置されるたびに、アニメーション作成制御部１９に対して、アニメーションスケジュールＡＳＨを作成してアニメーションスケジュールメモリ１５に格納するように指令する（モーション編集手段）。
【００３７】
これを受けて、アニメーション作成制御部１９は、モーション指定タイムチャートＭＤＴの各キャラクタ２５のキャラクタ動作軸ＣＭＸに貼り付けられたモーションアイコン３７及び、該モーションアイコン３７に関連付けられたモーションコマンドＭＣを参照して、図７に示すアニメーションスケジュールＡＳＨを作成して、アニメーションスケジュールメモリ１５に格納する。アニメーションスケジュールＡＳＨは、図７に示すように、時間軸Ｔを横軸にしたチャートで構成され、縦軸に、使用カメラ、各キャラクタ２５が配置され、時間の経過に伴う仮想カメラ２６の選択状態（後述する）及び各キャラクタ２５の振りを構成するモーションプログラムＭＰＲの実行内容がスケジュールＳＣＨ１、ＳＣＨ２，ＳＣＨ３などとして、サブルーチンＳＢ１〜ＳＢ１８を指定する形で格納されている。
【００３８】
図７の場合、各キャラクタ２５である、キャラクタ１，キャラクタ２及びキャラクタ３毎に、スケジュールＳＣＨ１、ＳＣＨ２，ＳＣＨ３が格納されており、例えば、キャラクタ２のスケジュールＳＣＨ２は、スタートから時間Ｔ２までは、モーションコマンドＭＣで「歩き」が指令されており、その結果アニメーションスケジュールＡＳＨには、「歩き」のモーションコマンドＭＣ対応する歩きサブルーチンＳＢ１の実行が指示されている。次に、時間Ｔ２から時間Ｔ５の間は、モーションコマンドＭＣで「泣き」が指令されており、その結果アニメーションスケジュールＡＳＨには、「泣き」のモーションコマンドＭＣ対応する泣きサブルーチンＳＢ１２の実行が指示されている。次に、時間Ｔ５から時間Ｔ７の間は、モーションコマンドＭＣで「ダンス（ステップ）」が指令されており、その結果アニメーションスケジュールＡＳＨには、「ダンス（ステップ）」のモーションコマンドＭＣ対応するステップサブルーチンＳＢ１３の実行が指示されている。次に、時間Ｔ７から時間Ｔ９の間は、モーションコマンドＭＣで「ダンス（ウエイブ）」が指令されており、その結果アニメーションスケジュールＡＳＨには、「ダンス（ウエイブ）」のモーションコマンドＭＣ対応するステップサブルーチンＳＢ１４の実行が指示されている。次に、時間Ｔ９から時間Ｔ１１の間は、モーションコマンドＭＣで「走り」が指令されており、その結果アニメーションスケジュールＡＳＨには、「走り」のモーションコマンドＭＣ対応するステップサブルーチンＳＢ２実行が指示されている。次に、時間Ｔ１１から時間Ｔ１４の間は、モーションコマンドＭＣで「座る」が指令されており、その結果アニメーションスケジュールＡＳＨには、「座る」のモーションコマンドＭＣ対応するステップサブルーチンＳＢ５の実行が指示されている。
【００３９】
このように、アニメーションスケジュールＡＳＨには、各キャラクタ２５についてのモーションコマンドＭＣの実行タイミング及び当該モーションコマンドＭＣで実行すべきモーションプログラムＭＰＲが、スケジュールＳＣＨ１、ＳＣＨ２，ＳＣＨ３……として格納されるので、当該アニメーションスケジュールＡＳＨに沿って３次元仮想空間ＶＳ内の各キャラクタ２５のオブジェクトを動作させることで、ユーザが望む振りを各キャラクタ２５にリアルタイムで簡単に行なわせることが出来る。
【００４０】
こうして、ステージ２２上の各キャラクタ２５について、モーション指定タイムチャートＭＤＴ上でのモーションコマンドの実行指定が完了し、モーションプログラムメモリ１３に各キャラクタ２５のスケジュールＳＣＨ１、ＳＣＨ２，ＳＣＨ３が格納されたところで、ユーザは、入力部５を介して主制御部２に対して、ステージ２２上のキャラクタ２５を撮影する、即ちレンダリングする際に使用する仮想カメラ２６の選択及び各仮想カメラ２６の位置決め、及びフレーミング、即ちカメラのズーム状態を設定するためにカメラ設定指令ＣＳＣを出力する。
【００４１】
これを受けて主制御部２は、カメラ制御部１０に対して、仮想カメラ２６についてアニメーションスケジュールＡＳＨ内に仮想カメラのスケジュールＳＣＨ４を作成するように指令する。ユーザが、ステージ２２上のキャラクタ２５を撮影する際に使用するカメラを選択するには、まず表示部６に表示されたモーション指定タイムチャートＭＤＴのカメラ選択軸ＣＣＸを入力部５を介してクリックし、主制御部２を介してカメラ制御部１０に対して、これから仮想カメラ２６の設定を行なうことを通知する。
【００４２】
ユーザは、モーション指定タイムチャートＭＤＴの時間カーソルＴＳを入力部５を介して図３左右方向に適宜移動させて仮想カメラの使用開始タイミング位置を指定すると共に、使用する仮想カメラ２６を選択する。ユーザが仮想カメラ２６を何ら選択しない場合には、ステージ２２の図２中、正面に配置された仮想カメラ２６Ａが、カメラ制御部１０により使用カメラとして選択される。仮想カメラ２６のユーザよる選択は、表示部６に表示されたカメラ選択ボタン２９Ａ、２９Ｂ……を入力部５を介して選択的に押下（クリック）することで行なわれ、押下されたカメラ選択ボタン２９Ａ、２９Ｂ……に対応するカメラアイコン３９が、カメラ制御部１０によりカメラ選択軸ＣＣＸの時間カーソルＴＳ位置に配置され、当該時点から、ユーザが選択した仮想カメラ２６Ａ、２６Ｂ……を使用することが指令される（カメラ制御手段）。ユーザは更に入力部５を介して、撮影（レンダリング）に使用する仮想カメラの３次元仮想空間ＶＳ内での視点位置（図２のＸ、Ｙ、Ｚ座標）を設定し、また仮想カメラ２６のズーム状態を設定する。これら仮想カメラ２６の選択、位置及びズーム状態などを示すカメラ状態データは、カメラ選択軸ＣＣＸに配置された各カメラアイコン３９に関連付けられる形でカメラ操作メモリ２０内にカメラ状態データとして格納される。
【００４３】
なお、各仮想カメラ２６でレンダリングされる画像は、表示部６の２次元画像ＰＣとして、図３に示すようにリアルタイムで表示され、その際、ＣＧアニメーションとして録画される範囲がフレーム２７で表示されるので、ユーザは表示部６に表示される２次元画像ＰＣを参照しながら、適切なカメラアングルを設定することが出来る。
【００４４】
また、ユーザが使用すべき仮想カメラ２６Ａ、２６Ｂ……を選択してカメラ選択軸ＣＣＸ内にカメラアイコン３９を図３に示すように、順次配置してゆくにつれ、アニメーション作成制御部１９は、図７のアニメーションスケジュールＡＳＨに仮想カメラの選択状態及び使用タイミングを示すカメラスケジュールＳＣＨ４を生成する（カメラスケジュール生成手段）。仮想カメラの選択状態を示すカメラスケジュールＳＣＨ４には、ユーザがＣＧアニメーションを撮影すする際に使用するものと指定した仮想カメラ２６Ａ、２６Ｂ……の使用状態が、モーション指定タイムチャートＭＤＴに基づいてチャートとして格納されている。
【００４５】
図７の、仮想カメラの選択状態を示すスケジュールＳＣＨ４には、スタートから時間Ｔ１までは、「Ｃ１」、即ち仮想カメラ２６Ａが使用されることが指示され、時間Ｔ１から時間Ｔ４まででは、「Ｃ２」、即ち仮想カメラ２６Ｂが使用されることが指示され、時間Ｔ４から時間Ｔ７まででは、「Ｃ１」、即ち仮想カメラ２６Ａが使用されることが指示され、時間Ｔ７から時間Ｔ１０まででは、「Ｃ２」、即ち仮想カメラ２６Ｂが使用されることが指示され、時間Ｔ１０から時間Ｔ１６まででは、「Ｃ１」、即ち仮想カメラ２６Ａが使用されることが指示されている。また、この際の各仮想カメラ２６の位置、即ち３次元仮想空間ＶＳ内での視点位置やズーム状態などのカメラ状態データは、既に述べたようにカメラ操作メモリ２０内に格納される。
【００４６】
こうしてユーザによる仮想カメラ２６の選択が完了したところで、ユーザは入力部５を介して主制御部２に対して、ＣＧアニメーションの作成を指令する。これを受けて主制御部２は、アニメーション作成制御部１９に対して、アニメーションスケジュールメモリ１５に格納されたアニメーションスケジュールＡＳＨに基づいて、リアルタイムＣＧアニメーションを作成するように指令する。
【００４７】
これを受けてアニメーション作成制御部１９は、アニメーションスケジュールＡＳＨに示された仮想カメラ２６のスケジュールＳＣＨ４及び各キャラクタ２５のスケジュールＳＣＨ１〜ＳＣＨ３に基づいて、３次元仮想空間ＶＳのステージ２２で、各キャラクタ２５のオブジェクトを動作させ（キャラクタ動作手段）、その様子を、仮想カメラ２６Ａ、２６Ｂ……でリアルタイムに撮影（レンダリング）する。アニメーションスケジュールＡＳＨは、全てユーザが入力部５を介して入力したモーション指定タイムチャートＭＤＴに基づいているので、ユーザが意図したままのＣＧアニメーションを作成することが出来る。こうして作成された２次元アニメーションデータＡＮＭは、完成アニメーションメモリ２１に格納される（アニメーション作成手段）。また同時に、撮影（レンダリング）を行なった際の３次元仮想空間ＶＳ内を構成するキャラクタ２５を含む全てのオブジェクト及びレンダリングする仮想カメラの位置及び状態に関する３次元データである、アニメーション撮影中のリアルタイムアニメーションデータＲＴＡも、ＣＧアニメーション作成環境データとして３次元仮想空間で再現可能な形で完成アニメーションメモリ２１に格納する（アニメーション作成手段）。
【００４８】
こうして撮影されて完成アニメーションメモリ２１に格納されたＣＧアニメーションを再生するには、入力部５を介して表示部６に表示された進行ボタン３５，一時停止ボタン３６及び停止ボタン３３を操作して、主制御部２に完成アニメーションメモリ２１に格納された２次元アニメーションデータＡＮＭの再生を指令する。すると、主制御部２は、完成アニメーションメモリ２１に格納された２次元アニメーションデータＡＮＭを読み出し、表示部６上に表示する。
【００４９】
なお、完成アニメーションメモリ２１には、当該２次元アニメーションデータＡＮＭを作成した際の３次元仮想空間ＶＳ内を構成するキャラクタ２５を含む全てのオブジェクト及びレンダリングする仮想カメラの位置及び状態に関する、アニメーション撮影中のリアルタイムアニメーションデータＲＴＡが、ＣＧアニメーション作成環境データとして３次元仮想空間で再現可能な形で格納されているので、当該２次元アニメーションデータＡＮＭに修正したい部分が生じても、直ちに対応するＣＧアニメーション作成環境データを完成アニメーションメモリ２１から読み出して３次元仮想空間内に展開することで、３次元仮想空間内で容易に修正、改変を行なうことが出来る。これにより、カメラ位置の変更などによるレンダリング状態の変更が可能となるので、２次元画像の修正などでは行えないＣＧアニメーションの修正、改変を簡単に行なうことが出来る。
【図面の簡単な説明】
【００５０】
【図１】図１は、本発明が適用される簡易アニメーション作成装置の一例を示すブロック図である。
【図２】図２は、三元仮想空間内のステージの一例を示す斜視図である。
【図３】図３は、ディスプレイに表示される操作画面の一例を示す図である。
【図４】図４は、キャラクタへのモーション指令画面の一例を示す図である。
【図５】図５は、別のキャラクタへのモーション指令画面の一例を示す図である。
【図６】図６は、モーションプログラムテーブルの一例を示す図である。
【図７】図７は、アニメーションスケジュールの一例を示す図である。
【符号の説明】
【００５１】
１……簡易アニメーション作成装置
５……入力手段（入力部）
６……表示手段（表示部）
７……３Ｄステージ設定部、選択キャラクタ表示手段
９……キャラクタデータメモリ
１０……カメラ制御手段（カメラ制御部）
１３……モーションプログラムメモリ
１６……モーション編集手段、アニメーション表示手段（キャラクタ動作制御部）
１９……キャラクタ動作手段、アニメーション作成手段、カメラスケジュール生成手段（アニメーション作成制御部）
２２……ステージ
２５、２５Ａ、２５Ｂ……キャラクタ
２６，２６Ａ、２６Ｂ……仮想カメラ
ＡＳＨ……アニメーションスケジュール
ＡＮＭ……アニメーションデータ（２次元アニメーションデータ）
ＭＣ……モーションコマンド
ＲＴＡ……アニメーションデータ（リアルタイムアニメーションデータ）
ＳＣＨ４……カメラスケジュール
ＶＳ……３次元仮想空間
【図１】
2010092402.tif 000003
【図２】
2010092402.tif 000004
【図３】
2010092402.tif 000005
【図４】
2010092402.tif 000006
【図５】
2010092402.tif 000007
【図６】
2010092402.tif 000008
【図７】
2010092402.tif 000009