JP2004013486A - Device and method for program production - Google Patents
Device and method for program production Download PDFInfo
- Publication number
- JP2004013486A JP2004013486A JP2002165498A JP2002165498A JP2004013486A JP 2004013486 A JP2004013486 A JP 2004013486A JP 2002165498 A JP2002165498 A JP 2002165498A JP 2002165498 A JP2002165498 A JP 2002165498A JP 2004013486 A JP2004013486 A JP 2004013486A
- Authority
- JP
- Japan
- Prior art keywords
- program
- animation
- pose
- program information
- character
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
Abstract
Description
【0001】
【発明の属する利用分野】
本発明は、テレビジョン放送番組制作やビデオ番組制作、番組シミュレータ、プレゼンテーション、デモンストレーションなどに用いられる番組制作装置に係り、特にコンピュータを利用して番組情報を記述し、記述した内容を再生・実行する番組制作方法に関するものである。
【0002】
【従来の技術】
近年、プレゼンテーションやデモンストレーションのほか、放送の一部にもコンピュータを使って制作した映像番組が盛んに登場してきている。そして、CG(コンピュータグラフィックス)アニメーション技術に音声合成技術、動画像生成技術等を融合させた技術の進展により、表現豊かな映像の制作が可能になってきた。このようなコンピュータを使った映像番組の制作では、人との対話を絵(アイコン)を介して行なうGUI(Graphical User Interface)が用いられる。
【0003】
さて、最近、CGアニメーション制作のための専用言語として、TVML(TVprogram Making Language)言語が開発された(日本放送協会のホームページhttp://www.strl.nhk.or.jp/TVML/indexj.html参照)。TVML言語は、テレビ番組を作るために必要な要素をスクリプトとして記述することが可能なテキストベースの言語であり、上記のGUI操作を前提としている。
【0004】
TVML言語を用いる映像制作は、次のように行なわれる。映像の素材即ちCGオブジェクトとして用意されている各種のキャラクタ(人物)、スタジオセット、小道具、照明、タイトル等の他、予め記録してある音声(セリフ、鳴声等)及び動画等を用い、作りたい番組のシナリオに沿ってCGオブジェクトを選択し、CGオブジェクトの行動(例えば、キャラクタならば、喋る、お辞儀をする、歩く等)の一つ一つ(それぞれがイベントとして用意される)を1行毎に記述していく。記述による制作過程での画面上操作をGUI操作で行ない、CGアニメーション映像を完成させる。
【0005】
番組制作装置では、TVML言語による番組制作プログラムに従って、番組制作のための構造をコンピュータが形成する。そのような構造の例を図36に示す。
【0006】
コンピュータ103は、記憶装置102に格納されている番組制作プログラム121の有する番組編集プログラム122によって、周辺装置であるモニタ112上にGUI画面を表示する。このGUI画面にキーボードやマウスなどの入力装置113により情報が番組のシナリオに沿って入力され、番組制作のための番組情報が番組情報生成部105において生成されていく。GUIが用いられるので、番組情報生成のための操作は対話的に行なわれる。上記したように、番組情報101はTVML言語で書かれる。生成された番組情報は、記憶装置102の番組情報ファイル124に逐一格納されていく。
【0007】
番組制作プログラム121による処理により、コンピュータ103は、大別して番組生成部104と番組情報生成部105の2ユニットを形成する。番組生成部104は、番組情報生成部105で生成され、記憶装置102の番組情報ファイル122に格納された番組情報101を解釈することによって番組を生成する。
【0008】
番組情報生成部105において、シーケンサ部106は、番組情報101を基に、CGアニメーション生成107や音声合成部108、動画像生成部109を制御することによってテレビ番組を順次再生する。即ち、CGアニメーション生成部107は、記憶装置102の画像・音声ファイル123に予め格納されたCGキャラクタのモデリングデータ及びスタジオセットのデータから、登場するセットやキャラクタ、小道具などを読み出してCGアニメーションを生成する。音声合成部108は、登場キャラクタやナレータの喋り声の合成音声信号或いは予め画像・音声123に記憶された音声データを読み出して生成した音声信号を、スピーカ111によって音声として出力する。動画像生成部109は、予め編集され、画像・音声ファイル123に記憶された動画像データから動画像を生成する。CGアニメーション生成部107や動画像生成部109で生成された画像データは、ビデオインターフェース110で映像信号に変換される。該ビデオインターフェース110から出力された映像信号は、モニタ112によって映像として出力される。
【0009】
次に、番組情報生成部105について具体的に説明する。番組情報生成部105は、番組情報101を作成するために、コンピュータ103上で動作する。図2に番組情報生成部105による画面例を示す。201は番組情報生成部105の主画面である。202はメニューバーであり、情報表示ウィンドウ203に情報を入力するための仕込みウィンドウ205を起動するためのメニューを表示する。203は番組情報表示ウィンドウであり、番組情報をスクリプト(コマンド)としてテキスト表示するウィンドウである。204はプレビューウィンドウであり、情報表示ウィンドウにテキストで表示された番組情報から番組生成部204を介して番組として表示するためのウィンドウである。205は仕込みウィンドウであり、番組情報表示ウィンドウ203に番組情報を入力するためのものである。該仕込みウィンドウ205は、キャラクタの動作や喋り、カメラワークなど、番組を制作するために必要な情報の数だけ存在する。
【0010】
番組情報生成部105の具体的な操作例として、登場するキャラクタが歩く場面の編集方法を図3から図5を用いて説明する。まず、メニューバー202から「コマンド」をクリックすると、イベントタイプメニュー301が表示される。さらに、「キャラクタ」をクリックすると、コマンド選択メニュー302が表示される。ここで、「歩く」をクリックすると、「歩く」動作を指示するTVMLコマンドを入力するための仕込みダイアログ205が表示される。
【0011】
図4はコマンド「歩く」を入力するための仕込みダイアログ205の拡大図である。401は「歩く」仕込みダイアログであり、仕込みダイアログ205の一種である。402は名前のコンボボックス(リストボックスとテキストボックスを合わせ持つボックス)であり、歩くキャラクタを選択する。403〜405は、歩き終わりの位置を入力するためのテキストボックスであり、それぞれ、x座標、y座標、z座標の成分を示す(単位は[m])。406は向きテキストボックスであり、歩き終わった時のキャラクタの向きを指定する。407はピッチスライダーであり、キャラクタの歩く速度を設定する。408は歩幅スライダーであり、キャラクタの歩幅の設定をする。409はステップスライダーであり、キャラクタが歩く時の上下動を設定する。410はストップモード選択コンボボックスであり、歩き終わった後の止まり方を設定する。411は待ちコンボボックスであり、yesかnoを選択する。yesを選択すると、キャラクタが歩き終わるまで、次のコマンドを実行しない。noを選択すると、すぐに次のコマンドを実行する。412はプレビューボタンであり、プレビュー画面205に番組情報を表示する。413はOKボタンであり、「歩く」仕込みウィンドウ401で設定した内容を番組情報101に反映し、番組情報表示ウィンドウ203に編集した内容をTVML言語で定義されるコマンドとして表示する。同時に、歩く仕込みウィンドウ401を終了させる。414はキャンセルボタンであり、編集内容を反映せずに歩く仕込みウィンドウ401を終了させる。415は更新ボタンであり、OKボタン413と同様の処理を実行する。ただし、歩く仕込みウィンドウ401を終了しない。
【0012】
歩く仕込みウィンドウ401において、歩き終わりの位置を入力装置113から入力し、プレビューボタン412をクリックする。名前コンボボックス402で選択したキャラクタが歩き終わりの位置まで歩いている様子が、プレビュー画面204に表示される。
【0013】
キャラクタが歩き終わった後の番組情報生成部105の画面例を図5に示す。図5のプレビュー画面204に表示されているキャラクタの位置が歩き終わりの位置である。OKボタン413をクリックすると、TVML言語で定義されたコマンド(スクリプト)が番組情報ウィンドウ203に表示される。
【0014】
TVML言語仕様のVer1.0からバージョンアップしたVer1.1では、キャラクタの自由な動作として、ポーズとアニメーションを設定することが可能になった。ここで、ポーズとは、キャラクタの最終的な姿勢を指定すると、番組生成部が現在のポーズから、設定されたポーズまでの途中のポーズを自動的に計算しながら、徐々にポーズを変化させていくものである。一方、アニメーションとは、キャラクタのポーズを連続的に定義することによって、ユーザが最終的なポーズに移行するまでの、途中のポーズを指定することができるものである。
【0015】
例えば、ポーズを設定するコマンドは、TVML言語仕様Ver1.1では、次のように定義されている。
character:definepose(name,pose,joint,rotx,roty,rotz,movex,movey,movez)
name:キャラクタ名
pose:ポーズ名を指定
joint:関節の指定
rotx,roty,rotz:関節の角度指定
movex,movey,movez:関節の位置指定
上記コマンドでは、一つのポーズを定義するのに、キャラクタの全ての関節に対して角度や位置が指定される。ここで、キャラクタの関節の数は、基本的には17個である(キャラクタ製作者により、17個以上で構成されることもある)。
【0016】
【発明が解決しようとする課題】
従来技術においては、上記のように一つのポーズに対して17コマンドが必要となり、ポーズの指定の操作が非常に煩雑になる。また、関節の角度や位置を数値で入力するのは、直感的でなく操作が難しい。更に、ポーズの範囲は、歩く、おじぎをする、喋る等に限定され、自由な動きを選ぶことができない。
【0017】
そこで、本発明者の一人が本発明に先立ってモーションオーサリングツールを開発した(モーション:動作、オーサリング:編集、ツール:手段)。モーションオーサリングツールは、モーションオーサリングプログラムを基にコンピュータ103によって番組情報生成部105と併設して形成されるユニットで、それにより、CGアニメーション生成部によって生成されるCGキャラクタが実行するポーズやアニメーション、即ち動作を自由に作成することが可能になる。即ち、本ツールにより、例えば、手を挙げる、手を回す、手を或るものに向けて伸ばす等の、従来にない動きを自由に設定することができるようになる。
【0018】
ところで、モーションオーサリングツールでは、ポーズやアニメーションが、作成中の画面から離れて独立して設定される。設定を完了したポーズやアニメーションのデータは、手作業によって番組情報101のスクリプトに組み込まれ、作成中の画面に挿入される。以下、モーションオーサリングツールについて、図6から図10を用いて説明する。
【0019】
図6にモーションオーサリングツールの主画面を示す。601はモーションオーサリングツールの主画面である。602はメニューバーであり、キャラクタの読込やポーズ・アニメーションのデータ保存などの操作を行うためのメニューを表示する。603はキャラクタ表示部であり、ポーズやアニメーションを設定するキャラクタを表示する。また、キャラクタの関節をマウスでクリックすることにより、角度や位置を設定する関節の選択が可能である。さらに、Rotボタン605やTransボタン606、Scaleボタン607とマウスのドラッグ操作の組み合わせにより、ユーザが任意のキャラクタ表示状態を設定することができる。604はhomeボタンであり、キャラクタ表示をモーションオーサリングツール起動時の表示状態(図6に示した表示状態)に戻すことができる。
【0020】
Rotボタン605をクリックすると、ボタンが押されたままの状態になる。この状態でキャラクタ表示部603をドラッグすると、キャラクタを映すカメラを回転移動することができる。Transボタン606が押された状態でキャラクタ表示部603をドラッグすると、キャラクタを映すカメラを平行移動することができる。Scaleボタン607が押された状態でキャラクタ表示部603をクリックすると、キャラクタの拡大・縮小表示が可能になる。
【0021】
608は関節選択コンボボックスであり、角度や位置を設定する関節が選択される。609はrotxテキストボックスであり、x軸の周りの回転角を指定することができる。ここで、関節が持つ座標軸は、関節固有の原点と座標軸を持つ。また、単位は[度]である。610はrotxダイアルであり、これをマウスでドラッグすることによりx軸の周りの関節角度を連続的に変化させることが可能になる。611はrotyテキストボックスであり、y軸のまわりの回転角が入力される。612はrotyダイアルであり、y軸のまわりの回転角を連続的に変化させることが可能である。613はrotzテキストボックスであり、z軸のまわりの回転角が入力される。614はrotyダイアルであり、z軸のまわりの回転角を連続的に変化させることが可能である。615はフレーム数表示テキストボックスであり、アニメーションの全フレーム数と、表示されているフレーム番号が表示される。616はフレーム制御スライダーであり、アニメーションのフレーム数を制御する。617はTOPボタンであり、アニメーションの先頭フレームに移動する。618は巻き戻しボタンであり、アニメーションを逆方向に早送りする。619は逆コマ送りボタンであり、アニメーションを1フレーム分戻す。620は再生ボタンであり、アニメーションを再生する。アニメーション再生中は、一時停止ボタンになる。621はコマ送りボタンであり、アニメーションを1フレーム進める。622は早送りボタンであり、アニメーションを早送りする。623はENDボタンであり、アニメーションの最後のフレームに移動する。
【0022】
図6〜図8を用いてポーズを編集する例を示す。まず、角度や位置を設定する関節を、キャラクタ表示部603においてキャラクタの関節をクリックするか、関節選択コンボボックス608で関節名を選択することによってキャラクタの関節を選択する。次に、rotxテキストボックス609、rotyテキストボックス611、rotzテキストボックス613に関節角度を直接数値で入力するか、rotxダイアル610、rotyダイアル612、rotzダイアル614をドラッグすることによって、関節の角度を設定する。この操作を、角度を設定するすべての関節に対して繰り返す。
【0023】
上記操作により設定したポーズの一例を図7に示す。設定したポーズは、図8のポーズファイル操作メニュー801のSave Poseメニュー803を選択することによって、ファイルとして保存される。ここで、図8は、図6に示したモーションオーサリングツールの主画面601と同様であり、メニューバー602内のFigure項目をクリックした場合の図である。Load Pose802は予め作成されているポーズファイルを読み込む。AddMorphTarget804により、選択された関節に対して、モーフィングの最終結果となる関節の状態を設定することができる。この機能は、主に表情の設定に使われる。rename group805は、関節名称を変更するためのものである。
【0024】
次に、図6と図9〜図10を用いてアニメーションの設定方法の例を説明する。図9は図6と同様であるが、メニューバー602からアニメーション設定メニューであるAnimation901をクリックした場合の図である。Load Animation902は、番組生成部104で読み込むことができる形式のアニメーションデータファイルを読み込むためのメニュー項目である。Save Animation903は、編集したアニメーションデータを番組生成部104で使用できる形式のアニメーションデータとしてファイルに保存する。Import BVH904は、BVH形式のアニメーションデータを読み込む。ここで、BVH形式とは、モーションキャプチャにより作成されるアニメーションデータの形式であり、最も一般的に使用されているデータ形式である。Import LWS Animation905はLightWave3D(開発元:米国NewTek社、日本総販売元:株式会社ディ・ストーム)で作成されたアニメーションデータ(LWS形式ファイル)を読み込むことができる。Save BVH906は、編集したアニメーションデータをBVH形式でファイルに保存する。Animation Edit907は、アニメーションデータの詳細な編集を行うためのメニュー項目である。
【0025】
以下、アニメーションを設定するための操作の一例を記述する。まず、importBVH904をクリックし、BVHアニメーションファイルを読み込む。次に、再生ボタン620をクリックしてアニメーションを再生する。モーションオーサリングツールでアニメーションを再生した画面例を図10に示す。読み込んだアニメーションは、番組生成部104で使用される場合、Save Animation903を選択することによって番組生成部104で使用できるデータ形式に変換され、ファイル保存される。Import LWS Animation905をクリックしてアニメーションファイルを読み込んだ場合には、LightWave3Dにより作成されたアニメーションファイルを番組生成部104で使用できる形式に変換することができる。
【0026】
以上、モーションオーサリングツールについて説明した。上記のモーションオーサリングツールは、番組情報生成部105とは別のソフトウェアとして実行するものであり、番組情報生成部105との連携機能が備わっておらず、独立して単独に用いられる。そのため、完成したポーズや動きを編集画面中に挿入した場合、例えば、小道具を指したつもりの手の方向が少しずれていると云ったことが起こり得、再度設定し直すという作業効率を低下させることが起こり得た。
【0027】
本発明の目的は、モーションオーサリングツールにおけるキャラクタのポーズ及びアニメーションデータの編集方法を番組情報生成部の一機能として組み込むことによって、編集中の画面の中でキャラクタに対して自由なポーズやアニメーションを設定することが可能な作業効率の良い番組制作装置及び番組制作方法を提供することにある。
【0028】
【課題を解決するための手段】
上記目的を達成するための本発明の番組制作装置は、キャラクタが登場するCGを含む映像番組を制作するための番組情報を生成する番組情報生成部と、該番組情報に従って番組を生成する番組生成部と、生成した番組を画面に表示する表示装置とを備え、該キャラクタに自由なポーズ及びアニメーションを設定するためのモーションオーサリング部と、自由なポーズ及びアニメーションを設定することによって生成されるポーズデータ及びアニメーションデータを該番組情報を示すスクリプトに組み込む自動スクリプト化部とが上記番組情報生成部に融合されることによって、番組編集中の上記画面上で上記キャラクタに対して自由なポーズ及びアニメーションが設定されることを特徴とする。モーションオーサリング部により生成されるポーズデータ及びアニメーションデータが自動的に番組情報生成において作成されるスクリプトに組み込まれることによって、モーションオーサリング部即ちモーションオーサリングツールと番組情報生成部との融合が実現され、ユーザは、番組編集中のGUI画面上でポーズ及びアニメーションを設定することが可能になり、前記課題を効果的に解決することが可能になる。具体的には、番組情報生成中のGUI画面のメニューバーにポーズボタン及びアニメーションボタンが新たに設けられ、それらのボタンにある各項目を操作することによって、ポーズ、或いはアニメーションデータを編集するために新たに設けられたGUIが表示され、そのダイアログの操作によってポーズ及びアニメーションが設定される。
【0029】
なお、ポーズやアニメーションが設定されたキャラクタ画像を自由な角度から見るようにするユーザ視点の手順を備えることによって本発明の効果を一層高めることができる。その場合、メニューバーにユーザ視点ボタンが設けられる。
【0030】
【発明の実施の形態】
以下、本発明に係る番組制作装置及び番組制作方法を幾つかの図面に示した発明の実施の形態を参照して更に詳細に説明する。
【0031】
本実施形態の番組制作装置の構成の例を図1に示す。テレビ番組制作装置では、記憶装置102に格納されているTVML言語による番組制作プログラム121に従って、番組制作のための構造をコンピュータ103が形成する。本実施形態では、番組制作プログラム121は、番組編集プログラム122のほか、ポーズ及びアニメーションを設定するためのモーションオーサリングプログラム127と、該プログラムにより作成されるポーズデータ及びアニメーションデータを、番組情報生成部(番組編集プログラム122によって構成される)が用いるスクリプトに組み込む自動スクリプト化プログラム126を備えている。
【0032】
コンピュータ103は、番組編集プログラム122によって、モニタ112上にGUI画面を表示する。このGUI画面にキーボードやマウスなどの入力装置113により情報が番組のシナリオに沿って入力され、番組制作のための番組情報が番組情報生成部105において生成されていく。GUIが用いられるので、番組情報生成のための操作は対話的に行なわれる。生成された番組情報は、記憶装置102の番組情報ファイル124に逐一格納されていく。
【0033】
番組制作プログラム121による処理により、コンピュータ103は、大別して番組生成部104と番組情報生成部105の2ユニットを形成する。番組生成部104は、番組情報生成部105で生成され、記憶装置102の番組情報ファイル122に格納された番組情報101を解釈することによって番組を生成する。
【0034】
番組情報生成部105は、番組編集部125と自動スクリプト化部115とモーションオーサリング部114の3個のユニットから構成される。番組編集部125は、編集された番組情報を自動スクリプト化部115を介して番組情報101として出力する。キャラクタのポーズや動きを編集する場合には、番組編集部125は、モーションオーサリング部114を介してキャラクタにポーズや動きを与えた番組データを自動スクリプト化部115を介して番組情報101として出力する。
【0035】
このような番組情報生成部105の構成により、番組情報生成部105が生成する番組情報101には、モーションオーサリング部114によって自由なポーズや動きを与えられたキャラクタを含むものとなる。
【0036】
番組生成部104において、シーケンサ部106は、番組情報101を基に、CGアニメーション生成107や音声合成部108、動画像生成部109を制御することによってテレビ番組を順次再生する。即ち、CGアニメーション生成部107は、記憶装置102の画像・音声ファイル123に予め格納されたCGキャラクタのモデリングデータ及びスタジオセットのデータから、登場するセットやキャラクタ、小道具などを読み出してCGアニメーションを生成する。音声合成部108は、登場キャラクタやナレータの喋り声の合成音声信号或いは予め画像・音声123に記憶された音声データを読み出して生成した音声信号を、スピーカ111によって音声として出力する。動画像生成部109は、予め編集され、画像。音声ファイル123に記憶された動画像データから動画像を生成する。CGアニメーション生成部107や動画像生成部109で生成された画像データは、ビデオインターフェース110で映像信号に変換される。該ビデオインターフェース110から出力された映像信号は、モニタ112によって映像として出力される。
【0037】
以上の番組制作装置において、モーションオーサリング部114、自動スクリプト化部115及び番組編集部125を含む番組情報生成部105のもとでGUI操作によってポーズデータ及びアニメーションデータを設定していく工程について次に説明する。
【0038】
まず、番組情報生成部105でのポーズの設定方法について説明する。図11は、図2に示した番組情報生成部105の画面と同様であるが、メニューバーに、ポーズ項目1101とアニメーション項目1102、ユーザ視点項目1103が追加される。即ち、図11において、201は番組情報生成部105の主画面である。202はメニューバーであり、情報表示ウィンドウ203に情報を入力するための仕込みウィンドウ205を起動するためのメニューを表示する。203は番組情報表示ウィンドウであり、番組情報をスクリプト(コマンド)としてテキスト表示するウィンドウである。204はプレビューウィンドウであり、情報表示ウィンドウにテキストで表示された番組情報から番組生成部204を介して番組として表示するためのウィンドウである。205は仕込みウィンドウであり、番組情報表示ウィンドウ203に番組情報を入力するためのものである。該仕込みウィンドウ205は、キャラクタの動作や喋り、カメラワークなど、番組を制作するために必要な情報の数だけ存在する。
【0039】
メニューバー202のポーズ項目1101をマウスでクリックすると、図12に示すポーズ設定メニュー1201が表示される。ポーズ設定メニュー1201は、編集項目1202、実行項目1203、消去項目1204から構成される。
【0040】
編集項目1202をマウスでクリックすると、図13に示すポーズ編集仕込みダイアログ1301が番組情報生成部105の主画面201上に表示される。1302は名前コンボボックスであり、設定するポーズがどのキャラクタに対するものであるかを規定する。1303はポーズ名テキストフィールドでありポーズデータに一意な名称を与えるためのものである。1304はファイル名テキストフィールドであり、予め記録装置102に記録したポーズデータを指定する。1305は参照ボタンであり、記録装置102に記録されたポーズデータを選択するため、図14に示す、ファイル選択ウィンドウ1041を表示する。
【0041】
ここで、図14はポーズファイルを選択するダイアログの一例を示す。1401はポーズファイル選択ダイアログである。該ファイル選択ダイアログ1401内に表示されるポーズファイル表示部1402は、ポーズデータの内容が直感的にわかるような画像を表示する。画像の下の文字列はポーズファイルのファイル名を示す。ファイル表示部1402において、任意の画像をマウスでダブルクリックすることにより、番組情報生成部105にポーズデータが読み込まれる。
【0042】
図13において、1306はキャラクタ表示部であり、名前コンボボックス1302で選択されたキャラクタの画像ファイルを表示する。これにより、ユーザは、ポーズを設定するキャラクタを直感的に知ることができる。1037はポーズ表示部であり、ファイル名テキストボックス1304または、参照ボタン1305により選択されたポーズファイルの内容を示す画像を表示する。これにより、ユーザは読み込んだポーズデータの内容を直感的に知ることができる。1308は関節構造表示部であり、CGアニメーション生成部で生成されるキャラクタの関節構造を示す。該関節構造表示部1308において、関節をマウスでクリックすると、該関節の表示色や形状(例えば、へこんだ形状)等を変更することによりハイライト表示し、選択状態であることを示す。
【0043】
図15に該関節構造表示部1308において関節をクリックしたときのハイライトの例を示す。同時に、関節名コンボボックス1309に該関節の名称「腰」が表示される。ここで、選択状態とは、該関節の角度や位置の数値を入力できる状態のことである。さらに、角度や位置の数値が設定された関節に対してもハイライト表示する。関節名の選択状態を示すハイライトと、数値の設定を示すハイライトは、色や表示方法を別のものとすることで状態の違いを明らかにする。1309は関節名コンボボックスであり、角度や位置を設定する関節の名称を表示する。また、該関節名コンボボックス1309で関節名を選択することにより、角度や位置を設定するキャラクタの関節を選択することができる。
【0044】
図13において、1310は角度xテキストボックスであり、関節構造表示部1308や関節名コンボボックス1309で選択された関節に対して、x軸の周りの関節角度を指定する。関節角度の指定方法は、該角度xテキストボックスに直接数値を入力するか、該角度xテキストボックスの右端にあるスピンボタンをクリックする。さらに、該角度xテキストボタンが選択された状態(該テキストボックス上でマウスをクリックした状態)において、ポーズ編集仕込みウィンドウ上をドラッグすることによって、マウスのドラッグ量に対応して数値を変更することができる。1311は角度yテキストボックスであり、y軸の周りの関節角度を指定する。1312は角度zテキストボックスであり、z軸の周りの関節角度を指定する。
【0045】
1313は詳細ボタンであり、該詳細ボタン1313をクリックすると、位置を設定するGUIが表示される。位置を設定するGUIの例を図16に示す。1601は位置xテキストボックスであり、関節構造表示部1308や関節名コンボボックス1309で選択された関節に対して、x軸方向の位置座標を指定する。1602は位置yテキストボックスであり、選択された関節のy軸方向の位置座標を指定する。1603は位置zテキストボックスであり、選択された関節のz軸方向の位置座標を指定する。
【0046】
図13において、1314は解除ボタンであり、選択状態の関節に対する関節角度や位置座標の設定を解除する。1315はすべて解除ボタンであり、すべての関節に対する角度や位置の設定を解除する。1316はプレビューボタンであり、プレビュー画面204において、設定したポーズを表示する。1317はファイル保存ボタンであり、作成または編集したポーズをファイルとして記憶装置102に保存する。1318はOKボタンであり、編集したポーズデータをTVMLコマンド(スクリプト)として、番組情報表示部203に出力する。1319はキャンセルボタンであり、編集したポーズデータをTVMLコマンドとして出力せずにポーズ編集仕込みダイアログ1301を終了する。
【0047】
ポーズを編集する手順を図12〜図23を用いて説明する。図17はポーズを編集する手順を示したフローチャートである。ステップ1701でポーズ設定メニュー1201から編集項目1202を選択すると、ポーズ編集仕込みダイアログ1301が起動する。ステップ1702は、名前コンボボックス1302で、ポーズを設定するキャラクタ名を選択する。ステップ1703では、記憶装置102に記憶されたポーズファイルを読み込むかどうかを選択する。
【0048】
ポーズファイルを読み込む場合は、ステップ1704に進み、参照ボタン1305をクリックする。ポーズファイル選択ダイアログ1401が起動するので、ステップ1705によって読み込むポーズファイルを選択し、ステップ1706に進む。
【0049】
ポーズファイルを読み込まない場合はステップ1706に進む。ステップ1706では、角度の数値を入力する関節を選択する。関節の選択方法は、関節構造表示部1308において該関節をクリックするか、関節名コンボボックス1309において、該関節を選択する。ステップ1707では、該関節の角度を入力する。入力された結果は、ステップ1708において、リアルタイムでプレビュー画面204に再生される。これにより、プレビュー画面204でポーズを確認しながら編集することが可能である。
【0050】
ここで、図11に示すユーザ視点メニュー1103をクリックすると、図18に表示されるユーザ視点設定メニュー1801によりプレビュー画面を映すカメラの角度を変更しながらのポーズ編集が可能である。ユーザ視点設定項目1801は、正面項目1802、上項目1803、右項目1804、左項目1805、右斜め上項目1806から構成される。
【0051】
正面項目1802をクリックすると、プレビュー画面204の表示状態がキャラクタを正面から映した画面に変化する(図19)。上項目1803をクリックすると、プレビュー画面204の表示状態がキャラクタを真上から映した画面に変化する(図20)。右項目1804をクリックすると、プレビュー画面204の表示状態がキャラクタを右側から映した画面に変化する(図21)。左項目1805をクリックすると、プレビュー画面204の表示状態がキャラクタを左側から映した画面に変化する(図22)。右斜め上項目1806をクリックすると、プレビュー画面204の表示状態がキャラクタを右斜め上から映した画面に変化する(図23)。
【0052】
図17において、ステップ1709は、上記操作により、関節角度の値を設定する必要がある関節すべてについての設定が終了したかどうかをユーザが判断する。所望のポーズが得られていない場合には、ステップ1706に戻り、関節角度を設定する操作を続ける。所望のポーズが得られた場合には、ステップ1710に進む。ステップ1710では、プレビューボタン1316をクリックすることにより、ポーズ設定前の状態から、上記操作により設定されたポーズをプレビュー画面204上で再生する。
【0053】
ステップ1711で、プレビューした結果が、所望のものであるかどうかをユーザが判断する。所望のプレビュー結果が得られた場合にはステップ1712に進む。所望のプレビュー結果が得られなかった場合には、ステップ1706からの関節角度の設定操作を繰り返す。ステップ1712では、上記操作により設定したポーズをファイルとして記憶装置102に保存するかどうかをユーザが判断する。ポーズファイルを保存する場合には、ステップ1713に進み、ファイルに保存ボタン1317をクリックしてポーズファイルを保存する。ポーズファイルを保存しない場合にはステップ1714に進む。
【0054】
ステップ1714では、OKボタン1318またはキャンセルボタン1319をクリックする。OKボタン1318がクリックされた場合には、番組情報表示ウィンドウ203にポーズを定義するTVMLコマンドを出力し、ステップ1715に進む。出力されるTVMLコマンドの例は、
character:definepose(name=mari, pose=shokai, joint=Head, rotx=30.0, roty=0.0, rotz=10.0, movex=0.0, movey=0.0, movez=0.0)
である。キャンセルボタン1319がクリックされた場合には、TVMLコマンドを出力せずにステップ1716に進む。ステップ1716では、ポーズ編集仕込みダイアログを終了する。
【0055】
次に、上記で設定したポーズを実行する例を図11,12,24,25を用いて説明する。図12における実行項目1203をクリックすると、図24のポーズ実行仕込みダイアログ2401が表示される。ダイアログ2401は、上記手順で編集したポーズデータを実行させるための仕込みダイアログである。2402は名前コンボボックスであり、ポーズを実行するキャラクタを指定する。2403はキャラクタ表示部であり、名前コンボボックスによって指定されたキャラクタの画像を表示する。2404はポーズ名コンボボックスであり、キャラクタに実行させるポーズを指定する。2405は、ポーズ表示部であり、ポーズ名コンボボックス2404で指定したポーズの画像を表示する。2406は編集ボタンであり、クリックすると、ポーズ編集仕込みダイアログ1301が起動する。これによって、ポーズの編集が可能である。2407はtimeテキストボックスであり、ポーズ名コンボボックス2404で指定したポーズを実行する前のポーズから、指定したポーズに移行するまでの時間を入力する。2408はプレビューボタンであり、ポーズ名コンボボックス2404で指定したポーズをプレビュー画面204で実行する。2409はOKボタンであり、ポーズ実行仕込みダイアログ2401で指定した内容をTVMLコマンドとして、番組情報表示部203に出力する。2410はキャンセルボタンであり、ポーズ実行仕込みダイアログ2401で指定した内容を出力せずにポーズ実行仕込みダイアログ2401を終了する。
【0056】
ポーズの実行手順を図25を用いて説明する。図25はポーズの実行手順を示したフローチャートである。ステップ2501では、実行項目1203をクリックするか、番組情報表示ウィンドウ203に表示された“pose”コマンドをダブルクリックすることにより、ポーズ実行仕込みダイアログ2401を起動する。ステップ2502では、名前コンボボックス2402からポーズを実行するキャラクタを選択する。ステップ2503では、上記ポーズ編集手順において編集されたポーズ名の中から、実行するポーズを選択する。
【0057】
ステップ2504では編集ボタン2406がクリックされたかどうかを判定する。編集ボタン2406がクリックされると、ステップ2505に進み、ポーズ編集仕込みダイアログ1301が起動し、上記ポーズ編集手順によりポーズを編集し、ステップ2506に進む。クリックされていない場合には、ステップ2506に進む。ステップ2506では、実行前のポーズから実行後のポーズに移行するまでの時間をtimeテキストボックス2407に入力する。ステップ2507では、プレビュー画面204においてポーズを実行する。
【0058】
ステップ2508では、上記プレビューの結果が所望のものであるかどうかをユーザが判断する。所望のプレビュー結果が得られた場合にはステップ2509に進む。所望のプレビュー結果が得られなかった場合には、ステップ2502に戻り、ポーズを実行するキャラクタや、実行するポーズの設定を再度行う。ステップ2509では、OKボタン2409かキャンセルボタン2410をクリックする。OKボタン2409がクリックされた場合には、ポーズを実行するTVMLコマンドを番組情報表示ウィンドウ203に出力し、ステップ2511に進む。ここで出力されるTVMLスクリプトの例は、
character:pose(name=mari, pose=shokai, time=0.0)
である。キャンセルボタン2410がクリックされた場合には、ステップ2511に進む。ステップ2511では、ポーズ実行仕込みダイアログ2401を終了する。
【0059】
次に、定義したポーズを消去する方法について図11、12、26、27を用いて説明する。図12における消去項目1204をクリックすると、図26のポーズ消去仕込みダイアログ2601が表示される。ダイアログ2601は、ポーズ編集仕込みダイアログ1301によって定義されたポーズデータを番組生成部から消去するためのものである。2602は名前コンボボックスであり、ポーズを消去するキャラクタを選択する。2603はポーズ名コンボボックスであり、定義されたポーズの中から、消去するポーズを選択する。2604はOKボタンであり、ポーズを消去するTVMLコマンドを番組情報表示部203に出力する。2605はキャンセルボタンであり、ポーズを消去するTVMLコマンドを出力せずにポーズ消去仕込みダイアログ2601を終了させる。
【0060】
ポーズを消去する手順を図27用いて説明する。図27はポーズを消去する手順を示したフローチャートである。ステップ2701では、消去項目1203をクリックするか、番組情報表示ウィンドウ203に表示されている“deletepose”コマンドをダブルクリックすることによって、ポーズ消去仕込みダイアログ2601を起動する。ステップ2702では、ポーズを消去するキャラクタ名を名前コンボボックス2602で選択する。ステップ2703では、消去するポーズ名をポーズ名コンボボックス2603で選択する。ステップ2704では、OKボタン2604またはキャンセルボタン2605をクリックする。OKボタン2604がクリックされた場合には、番組情報表示ウィンドウ203にポーズを消去するTVMLコマンドを出力し、ステップ2706に進む。ここで出力されるTVMLコマンドの例は、
character:deletepose(name=mari, pose=shokai)
である。キャンセルボタン2605がクリックされた場合には、ステップ2706に進む。ステップ2706では、ポーズ消去仕込みダイアログ2601を終了する。
【0061】
次に、アニメーションの編集方法について図11、28〜31を用いて説明する。図28は、図11に示した画面例と同様であるが、メニューバー202において、アニメーション項目1102をクリックした時の画面例である。アニメーション項目1102をクリックすると、図28に示すアニメーション設定メニュー2801が表示される。2802は読み込み項目であり、アニメーションファイルを読み込むための仕込みダイアログを起動するメニュー項目である。2803は実行項目であり、アニメーションを実行させるための仕込みダイアログを起動するメニュー項目である。2804はクローズ項目であり、読み込んだアニメーションファイルをクローズするためのものである。
【0062】
読み込み項目2802をクリックするときに表示される画面例を図29に示す。表示されるダイアログがアニメーション読み込み仕込みダイアログ2901であり、アニメーションファイルの読み込みを実行するダイアログである。2902は名前コンボボックスであり、アニメーションを実行させるキャラクタを選択する。2903はアニメーション名テキストボックスであり、番組中で一意になるアニメーション名を入力するためのものである。2904はファイル名テキストボックスであり、記憶装置102に記憶されたアニメーションファイルを指定する。2905は参照ボタンであり、クリックすると、図30に示すファイル選択ダイアログが起動する。
【0063】
図30の3001は、図14のファイル選択ダイアログ1401と同様の画面であるが、ファイル表示部3002が、アニメーションファイルを表示する点が異なる。ファイル表示部3002には、アニメーションの内容を示した動画像をアイコンとして表示する。これをダブルクリックすることによって、アニメーションファイルを選択することができる。
【0064】
図29において、2906はキャラクタ表示部であり、名前コンボボックス2902で選択されたキャラクタの画像が表示される。2907はアニメーション表示部であり、ファイル名テキストボックス2904または参照ボタン2905より起動するアニメーションファイル選択ダイアログ3001により選択されたアニメーションの動画像を表示する。2908はプレビューボタンであり、読み込まれたアニメーションをプレビュー画面204において実行する。2909はOKボタンであり、アニメーションファイルを定義するTVMLスクリプトを番組情報表示ウィンドウ203に出力し、アニメーション読み込み仕込みダイアログ2901を終了する。2910はキャンセルボタンであり、アニメーションを定義するTVMLコマンドを出力しないでアニメーション読み込み仕込みダイアログ2901を終了する。
【0065】
アニメーションの読み込み手順を図31用いて説明する。図31はアニメーションを読み込む手順を示したフローチャートである。ステップ3101では、読込項目2802をクリックするか、番組情報表示部203に表示された“openkeyframe”コマンドをダブルクリックすることによって、アニメーション読み込み仕込みダイアログ2901を起動する。ステップ3102では、アニメーションを設定するキャラクタを名前コンボボックス2902から選択する。ステップ3103では、読み込むアニメーションファイルを指定する。アニメーションファイルの指定方法は、参照ボタン2905をクリックすることによって起動するアニメーションファイル選択ダイアログ3001で読み込むアニメーションファイルを選択する。ステップ3104では、アニメーション名テキストボックス2903にアニメーション名を入力する。ステップ3105では、プレビューボタン2908をクリックすることによって、プレビュー画面204でアニメーションを実行する。
【0066】
ステップ3106では、上記プレビューの結果が所望のものであるかどうかをユーザが判断する。所望のプレビュー結果が得られた場合には、ステップ3107に進む。所望のプレビュー結果が得られなかった場合には、ステップ3102に戻り、アニメーションを設定するキャラクタ名や、読み込むアニメーションファイルを再度設定する。ステップ3107では、OKボタン2909かキャンセルボタン2910をクリックする。OKボタン2909がクリックされた場合には、アニメーションを読み込むTVMLコマンドを出力し、ステップ3109に進む。ここで出力されるTVMLコマンドの例は、
character:openkeyframe(name=mari, keyframename=anime, filename=“anime.dcanime”)
である。キャンセルボタン2910がクリックされた場合には、ステップ3109に進む。ステップ3109は、アニメーション読み込み仕込みダイアログ2901を終了する。
【0067】
次に、アニメーションの実行方法の例を図28、32、33を用いて説明する。図28における実行項目2803をクリックすると、図32のアニメーション実行仕込みダイアログ3201が表示される。ダイアログ3201は、アニメーションを実行させるためのTVMLコマンドを出力するためのダイアログである。3202は名前コンボボックスであり、アニメーションを実行するキャラクタ名を選択する。3203はキャラクタ表示部であり、名前コンボボックス3202で選択されたキャラクタの画像を表示する。3204はアニメーション名コンボボックスであり、アニメーションファイル読み込みダイアログ2901で指定されたアニメーション名から、実行させるアニメーションを選択する。3205はアニメーション表示部であり、アニメーションの内容を示した画像を表示する。
【0068】
3206はファイル選択ボタンであり、クリックするとアニメーションファイル読み込みダイアログ2901が起動する。これにより、アニメーションファイルの読み込みが可能である。3207はスピードテキストボックスであり、アニメーションを実行させるスピードを入力する。3208はリピートテキストボックスであり、アニメーションを実行する回数を入力する。3210はプレビューボタンであり、アニメーション名コンボボックス3204によって指定されたアニメーションをプレビュー画面204において、実行する。3210はOKボタンであり、アニメーションを実行させるTVMLコマンドを番組情報表示部203に出力する。3211はキャンセルボタンであり、アニメーションを実行させるTVMLコマンドを出力しないで、アニメーション実行仕込みダイアログ2901を終了する。
【0069】
アニメーションの手順を図33を用いて説明する。図33はアニメーションを実行する手順を示したフローチャートである。ステップ3301は実行項目2803をクリックするか、番組情報表示ウィンドウ203に表示された“keyframe”コマンドをダブルクリックすることによって、アニメーション実行仕込みダイアログ3201を起動する。ステップ3302はアニメーションを実行するキャラクタを名前コンボボックス3202で選択する。ステップ3303は実行するアニメーション名をアニメーション名コンボボックス3204から選択する。
【0070】
ステップ3304では、ファイル選択ボタン3206がクリックされれば、ステップ3305に進み、クリックされなければ、ステップ3306に進む。ステップ3305では、アニメーション読み込み仕込みダイアログ2901が起動し、上記アニメーション読込操作を行う。
【0071】
ステップ3306では、アニメーションを実行するスピードをスピードテキストボックス3207に入力する。ステップ3307では、アニメーションの繰り返し回数をリピートテキストボックス3208に入力する。ステップ3308では、プレビューボタン3209をクリックし、プレビュー画面204上でアニメーションを実行する。
【0072】
ステップ3309は、上記プレビューの結果が所望のものであるかどうかをユーザが判断する。所望のプレビュー結果が得られた場合には、ステップ3310に進む。所望のプレビュー結果が得られなかった場合には、ステップ3302に戻り、アニメーションを実行するキャラクタや実行するアニメーション名などを再度設定する。ステップ3310では、OKボタン3210またはキャンセルボタン3211をクリックする。OKボタン3210がクリックされた場合には、ポーズを実行するためのTVMLコマンドを番組情報表示ウィンドウ203に表示し、終了のステップ3312に進む。ここで出力されるTVMLコマンドの例は、
character:keyframe(name=mari, keyframename=anime, speed=1.0, repeat=1)
である。キャンセルボタン3211がクリックされた場合には、ステップ3212に進む。ステップ3312では、ポーズ実行仕込みダイアログを終了する。
【0073】
最後に、読み込んだアニメーションファイルをクローズする例について、図28と図34,35を用いて説明する。図28におけるクローズ項目2804をクリックしたときに、図34のアニメーションクローズダイアログ3401が表示される。ダイアログ3401は、アニメーション読み込みダイアログ2901によって読み込まれたアニメーションファイルをクローズするためのダイアログである。3402はアニメーション名コンボボックスであり、クローズするアニメーション名を選択する。3403はOKボタンであり、アニメーションをクローズするTVMLコマンドを番組情報表示部203に出力する。3404は、アニメーションをクローズするTVMLコマンドを出力せずにアニメーションクローズダイアログ3401を終了する。
【0074】
アニメーションファイルをクローズする手順を図35を用いて説明する。ステップ3501は、図28におけるメニューバー202のクローズ項目2804をクリックするか、番組情報表示ウィンドウ203に表示された“closekeyframe”コマンドをダブルクリックすることによって、アニメーションクローズ仕込みダイアログ3401を起動する。ステップ3502はクローズするアニメーションをアニメーション名コンボボックス3402で選択する。ステップ3503では、OKボタン3403かキャンセルボタン3404をクリックする。OKボタン3404がクリックされた場合には、アニメーションをクローズするTVMLコマンドが番組情報表示ウィンドウ203に出力され、ステップ3505に進む。ここで出力されるTVMLコマンドの例は、
character:closekeyfram(keyframename=anime)
である。キャンセルボタン3405がクリックされた場合には、ステップ3505に進む。ステップ3505でアニメーションクローズ仕込みダイアログ3401を終了する。
【0075】
以上、本実施形態により、モーションオーサリングツールと番組情報生成部との連携が実現され、編集中の画面の中でキャラクタに対して自由なポーズやアニメーションを設定することが可能となり、効率の良い番組制作方法及び装置を提供することが可能になった。
【0076】
【発明の効果】
本発明によれば、番組制作プログラムのもとでコンピュータが実行する番組編集において、キャラクタに自由にポーズやアニメーションを指定することが可能になる。それによって、表現力豊かな番組の制作が可能になる。更に、制作画面に表示されるGUIを用いて、対話的、直感的にポーズやアニメーションの設定が可能になるため、関節角度等の数値を直接入力する必要が無くなり、番組制作の効率を向上させることができる。また、プレビュー画面に編集中のポーズやアニメーションを表示させることによって、背景や他のキャラクタとの位置関係を相互に確認しながらキャラクタのポーズやアニメーションを指定することができ、番組制作の効率を高めることができる。
【0077】
以上により、作業の煩雑さを軽減させ、作業効率を向上させた、表現力豊かな番組の制作が可能な番組制作装置及び番組制作方法を実現することができる。
【図面の簡単な説明】
【図1】本発明に係る番組生成装置の発明の実施の形態を説明するための構成図。
【図2】従来の番組制作方法の例を説明するための図。
【図3】図2に示した番組制作方法で番組を制作するときの画面操作の例を示す図。
【図4】図3に示した画面操作でキャラクタが歩く画面を制作する例を示す図。
【図5】キャラクタが歩き終わった後の画面の例を示す図。
【図6】モーションオーサリングツールを用いた番組制作方法の例を説明するための図。
【図7】図6に示した番組制作方法で設定したキャラクタのポーズの例を示す図。
【図8】モーションオーサリングツールを用いてポーズを設定するときの操作の例を示す図。
【図9】モーションオーサリングツールを用いてアニメーションを設定するときの操作の例を示す図。
【図10】図9に示した操作で制作したアニメーションの再生画面の例を示す図。
【図11】本発明の番組制作方法の実施形態を説明するための図。
【図12】本発明の番組制作方法によるポーズ設定の例を説明するための図。
【図13】本発明の番組制作方法によるポーズ設定におけるポーズ編集仕込みの例を説明するための図。
【図14】本発明の番組制作方法によるポーズ設定におけるポーズファイル選択の例を説明するための図。
【図15】図13に示したポーズ編集仕込みで関節を選択した状態を示す図。
【図16】図13に示したポーズ編集仕込みで位置指定を表示した状態を示す図。
【図17】本発明の番組制作方法によるポーズを編集する手順の例を説明するためのフローチャート。
【図18】本発明の番組制作方法によるユーザ視点設定の例を説明するための図。
【図19】図18に示したユーザ視点設定での正面からの視点の例を示す図。
【図20】図18に示したユーザ視点設定での上からの視点の例を示す図。
【図21】図18に示したユーザ視点設定での右からの視点の例を示す図。
【図22】図18に示したユーザ視点設定での左からの視点の例を示す図。
【図23】図18に示したユーザ視点設定での右斜め上からの視点の例を示す図。
【図24】本発明の番組制作方法によるポーズ実行仕込みダイアログの例を説明するための図。
【図25】本発明の番組制作方法によるポーズを実行する手順の例を説明するためのフローチャート。
【図26】本発明の番組制作方法によるポーズ消去仕込みの例を説明するための図。
【図27】本発明の番組制作方法によるポーズを消去する手順の例を説明するためのフローチャート。
【図28】本発明の番組制作方法によるアニメーション設定の例を説明するための図。
【図29】本発明の番組制作方法によるアニメーション読み込み仕込みの例を説明するための図。
【図30】本発明の番組制作方法によるアニメーションファイル選択の例を説明するための図。
【図31】本発明の番組制作方法によるアニメーションを読み込む手順の例を説明するためのフローチャート。
【図32】本発明の番組制作方法によるアニメーション実行仕込みの例を説明するための図。
【図33】本発明の番組制作方法によるアニメーションを実行する手順の例を説明するためのフローチャート。
【図34】本発明の番組制作方法によるアニメーションクローズ仕込みダイアログの例を説明するための図。
【図35】本発明の番組制作方法によるアニメーションをクローズする手順の例を説明するためのフローチャート。
【図36】従来の番組制作装置の例を説明するための構成図。
【符号の説明】
101…番組情報、102…記憶装置、103…コンピュータ、104…番組生成部、105…番組情報生成部、106…シーケンサ部、107…CGアニメーション生成部、108…音声合成部、109…動画像生成部、110…ビデオインターフェース、111…スピーカ、112…モニタ、113…入力装置、114…モーションオーサリング部、115…自動スクリプト化部、121…番組制作プログラム、122…番組編集プログラム、123…画像・音声ファイル、124…番組情報ファイル、125…番組編集部、126…自動スクリプト化プログラム、127…モーションオーサリングプログラム、201…番組情報生成部の主画面、202…メニューバー、203…番組情報表示ウィンドウ、204…プレビュー画面、1101…ポーズメニュー、1102…アニメーションメニュー、1103…ユーザ視点メニュー。[0001]
FIELD OF THE INVENTION
The present invention relates to a program production apparatus used for television broadcast program production, video program production, program simulator, presentation, demonstration, and the like, and particularly, describes program information using a computer, and reproduces and executes the described contents. It relates to a program production method.
[0002]
[Prior art]
In recent years, in addition to presentations and demonstrations, computer-produced video programs have appeared in some of the broadcasts. With the development of technology that combines CG (computer graphics) animation technology with voice synthesis technology, moving image generation technology, and the like, it has become possible to produce expressive videos. In the production of a video program using such a computer, a GUI (Graphical User Interface) for interacting with a person via a picture (icon) is used.
[0003]
By the way, recently, a TVML (TVprogram Making Language) language has been developed as a dedicated language for producing CG animation (Japanese Broadcasting Corporation website: http://www.strl.nhk.or.jp/TVML/indexj.html). reference). The TVML language is a text-based language in which elements necessary for creating a television program can be described as a script, and is based on the GUI operation described above.
[0004]
Video production using the TVML language is performed as follows. Using various kinds of characters (persons), studio sets, props, lighting, titles, etc. prepared as video material, that is, CG objects, as well as pre-recorded voices (line, voice, etc.) and moving images, etc. Select a CG object according to the scenario of the program you want to use, and perform one line of each of the actions of the CG object (for example, speaking, bowing, walking, etc. for a character) (each prepared as an event). It is described every time. The operation on the screen in the production process by the description is performed by the GUI operation to complete the CG animation image.
[0005]
In the program production device, a computer forms a structure for program production according to a program production program in the TVML language. FIG. 36 shows an example of such a structure.
[0006]
The
[0007]
By the processing by the
[0008]
In the program
[0009]
Next, the program
[0010]
As a specific operation example of the program
[0011]
FIG. 4 is an enlarged view of the
[0012]
In the
[0013]
FIG. 5 shows an example of a screen of the program
[0014]
In Ver1.1, which has been upgraded from Ver1.0 of the TVML language specification, it is possible to set a pose and animation as a free motion of the character. Here, the pose means that when the final pose of the character is specified, the program generation unit automatically changes the pose from the current pose to the set pose while gradually changing the pose. It goes. On the other hand, animation is a technique in which the pose of a character can be specified by continuously defining the pose of the character until the user transitions to the final pose.
[0015]
For example, a command for setting a pause is defined as follows in the TVML language specification Ver1.1.
character: definepose (name, pose, joint, rotx, roty, rotz, movex, movey, movez)
name: Character name
pose: Specify the pose name
joint: joint designation
rotx, roty, rotz: joint angle specification
movex, movey, movez: joint position designation
In the above command, angles and positions are designated for all joints of the character to define one pose. Here, the number of joints of the character is basically 17 (may be 17 or more depending on the character creator).
[0016]
[Problems to be solved by the invention]
In the prior art, as described above, 17 commands are required for one pose, and the operation of designating the pose becomes very complicated. Also, it is intuitive and difficult to input the angles and positions of the joints by numerical values. Furthermore, the range of the pose is limited to walking, bowing, talking, etc., and free movement cannot be selected.
[0017]
Therefore, one of the present inventors has developed a motion authoring tool prior to the present invention (motion: motion, authoring: editing, tool: means). The motion authoring tool is a unit formed by the
[0018]
By the way, in the motion authoring tool, poses and animations are set independently of the screen being created. The pose and animation data for which the setting has been completed are manually incorporated into the script of the program information 101 and inserted into the screen being created. Hereinafter, the motion authoring tool will be described with reference to FIGS.
[0019]
FIG. 6 shows the main screen of the motion authoring tool.
[0020]
When the
[0021]
A joint
[0022]
An example of editing a pose using FIGS. 6 to 8 will be described. First, a joint for setting an angle and a position is selected by clicking a joint of the character in the
[0023]
FIG. 7 shows an example of the pose set by the above operation. The set pose is saved as a file by selecting the
[0024]
Next, an example of an animation setting method will be described with reference to FIG. 6 and FIGS. FIG. 9 is the same as FIG. 6, but when an animation
[0025]
Hereinafter, an example of an operation for setting an animation will be described. First, click importBVH904 to read a BVH animation file. Next, the reproduction button 620 is clicked to reproduce the animation. FIG. 10 shows an example of a screen on which an animation is reproduced by the motion authoring tool. When the read animation is used by the
[0026]
The motion authoring tool has been described above. The above-mentioned motion authoring tool is executed as software separate from the program
[0027]
An object of the present invention is to set a free pose and animation for a character in a screen being edited by incorporating a method of editing a character pose and animation data in a motion authoring tool as a function of a program information generating unit. It is an object of the present invention to provide a program production apparatus and a program production method with high work efficiency which can perform the program.
[0028]
[Means for Solving the Problems]
In order to achieve the above object, a program production apparatus according to the present invention comprises: a program information generation section for generating program information for producing a video program including a CG in which a character appears; and a program generation section for generating a program according to the program information. And a display device for displaying the generated program on a screen, a motion authoring unit for setting a free pose and animation for the character, and pose data generated by setting a free pose and animation. An automatic scripting unit for incorporating animation data into a script indicating the program information is integrated with the program information generating unit, so that a free pose and animation can be set for the character on the screen during program editing. It is characterized by being performed. The pose data and animation data generated by the motion authoring unit are automatically incorporated into the script created in the program information generation, so that the motion authoring unit, i.e., the motion authoring tool and the program information generation unit are integrated, and the user is realized. Can set poses and animations on the GUI screen during program editing, and can effectively solve the problem. Specifically, a pause button and an animation button are newly provided in a menu bar of a GUI screen during program information generation, and by operating each item on these buttons, a pause or an animation data is edited. A newly provided GUI is displayed, and a pose and animation are set by operating the dialog.
[0029]
The effect of the present invention can be further enhanced by providing a user viewpoint procedure for viewing a character image in which a pose or animation is set from a free angle. In that case, a user viewpoint button is provided on the menu bar.
[0030]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, a program production apparatus and a program production method according to the present invention will be described in more detail with reference to embodiments of the invention shown in some drawings.
[0031]
FIG. 1 shows an example of the configuration of the program production device of the present embodiment. In the television program production device, the
[0032]
The
[0033]
By the processing by the
[0034]
The program
[0035]
With such a configuration of the program
[0036]
In the
[0037]
In the above program production apparatus, the step of setting pose data and animation data by GUI operation under the program
[0038]
First, a method of setting a pause in the program
[0039]
Clicking a
[0040]
If
[0041]
Here, FIG. 14 shows an example of a dialog for selecting a pose file.
[0042]
In FIG. 13,
[0043]
FIG. 15 shows an example of highlighting when a joint is clicked in the joint
[0044]
In FIG. 13,
[0045]
[0046]
In FIG. 13,
[0047]
The procedure for editing the pose will be described with reference to FIGS. FIG. 17 is a flowchart showing a procedure for editing a pose. When an
[0048]
If a pause file is to be read, the process proceeds to step 1704, and a
[0049]
If the pause file is not read, the process proceeds to step 1706. In
[0050]
Here, when the user's
[0051]
When the front item 1802 is clicked, the display state of the
[0052]
In FIG. 17, in
[0053]
In
[0054]
In
character: definepose (name = mari, pose = shokai, joint = Head, rotx = 30.0, roty = 0.0, rotz = 10.0, movex = 0.0, movey = 0.0, movez = 0. 0)
It is. If the cancel
[0055]
Next, an example of executing the pause set above will be described with reference to FIGS. When an
[0056]
The execution procedure of the pause will be described with reference to FIG. FIG. 25 is a flowchart showing the procedure for executing the pause. In
[0057]
In
[0058]
In
character: pose (name = mari, pose = shokai, time = 0.0)
It is. If the cancel
[0059]
Next, a method of deleting the defined pose will be described with reference to FIGS. When the
[0060]
The procedure for deleting the pause will be described with reference to FIG. FIG. 27 is a flowchart showing a procedure for deleting a pause. In
character: deletepose (name = mari, pose = shokai)
It is. If the cancel
[0061]
Next, an animation editing method will be described with reference to FIGS. FIG. 28 is the same as the screen example shown in FIG. 11, but is a screen example when an
[0062]
FIG. 29 shows an example of a screen displayed when the
[0063]
30 is a screen similar to the
[0064]
In FIG. 29,
[0065]
The animation reading procedure will be described with reference to FIG. FIG. 31 is a flowchart showing a procedure for reading an animation. In
[0066]
In
character: openkeyframe (name = mari, keyframename = anime, filename = "anime.dcanime")
It is. If the cancel
[0067]
Next, an example of an animation execution method will be described with reference to FIGS. When an
[0068]
[0069]
The animation procedure will be described with reference to FIG. FIG. 33 is a flowchart showing a procedure for executing an animation. In
[0070]
In
[0071]
In
[0072]
In
character: keyframe (name = mari, keyframename = anime, speed = 1.0, repeat = 1)
It is. If the cancel
[0073]
Finally, an example of closing the read animation file will be described with reference to FIG. 28 and FIGS. When the close item 2804 in FIG. 28 is clicked, an animation
[0074]
The procedure for closing the animation file will be described with reference to FIG. In
character: closekeyframe (keyframename = anime)
It is. If the cancel button 3405 is clicked, the flow advances to step 3505. In
[0075]
As described above, according to the present embodiment, the cooperation between the motion authoring tool and the program information generation unit is realized, and it becomes possible to set a free pose and animation for the character in the screen being edited, thereby achieving an efficient program. It has become possible to provide a production method and apparatus.
[0076]
【The invention's effect】
According to the present invention, it becomes possible to freely specify a pose or animation for a character in program editing executed by a computer under a program production program. This enables the production of highly expressive programs. Furthermore, since the pose and animation can be set interactively and intuitively using the GUI displayed on the production screen, it is not necessary to directly input numerical values such as joint angles, thereby improving the efficiency of program production. be able to. In addition, by displaying the pose and animation being edited on the preview screen, it is possible to specify the pose and animation of the character while mutually confirming the background and the positional relationship with other characters, thereby improving the efficiency of program production. be able to.
[0077]
As described above, it is possible to realize a program production apparatus and a program production method capable of producing a program with rich expressiveness, which can reduce the complexity of work and improve work efficiency.
[Brief description of the drawings]
FIG. 1 is a configuration diagram for explaining an embodiment of a program generation device according to the present invention;
FIG. 2 is a diagram for explaining an example of a conventional program production method.
FIG. 3 is an exemplary view showing an example of a screen operation when a program is produced by the program production method shown in FIG. 2;
FIG. 4 is an exemplary view showing an example of producing a screen on which a character walks by the screen operation shown in FIG. 3;
FIG. 5 is a diagram showing an example of a screen after a character has finished walking.
FIG. 6 is a view for explaining an example of a program production method using a motion authoring tool.
FIG. 7 is an exemplary view showing an example of a character pose set by the program production method shown in FIG. 6;
FIG. 8 is a diagram showing an example of an operation when setting a pose using a motion authoring tool.
FIG. 9 is a diagram showing an example of an operation when setting an animation using a motion authoring tool.
FIG. 10 is a diagram showing an example of a playback screen of an animation created by the operation shown in FIG. 9;
FIG. 11 is a diagram for explaining an embodiment of the program production method of the present invention.
FIG. 12 is a view for explaining an example of pause setting by the program production method of the present invention.
FIG. 13 is a view for explaining an example of pause editing preparation in pause setting by the program production method of the present invention.
FIG. 14 is an exemplary view for explaining an example of pause file selection in pause setting according to the program production method of the present invention.
FIG. 15 is a view showing a state where a joint is selected in the pose editing preparation shown in FIG. 13;
FIG. 16 is a view showing a state in which position designation is displayed in the pose editing preparation shown in FIG. 13;
FIG. 17 is a flowchart for explaining an example of a procedure for editing a pose by the program production method of the present invention.
FIG. 18 is a view for explaining an example of user viewpoint setting by the program production method of the present invention.
19 is a diagram showing an example of a viewpoint from the front in the user viewpoint setting shown in FIG. 18;
20 is a diagram showing an example of a viewpoint from above in the user viewpoint setting shown in FIG. 18;
FIG. 21 is a diagram showing an example of a viewpoint from the right in the user viewpoint setting shown in FIG. 18;
FIG. 22 is a view showing an example of a viewpoint from the left in the user viewpoint setting shown in FIG. 18;
FIG. 23 is a diagram showing an example of a viewpoint obliquely from the upper right in the user viewpoint setting shown in FIG. 18;
FIG. 24 is a view for explaining an example of a pause execution preparation dialog according to the program production method of the present invention.
FIG. 25 is a flowchart illustrating an example of a procedure for executing a pause according to the program production method of the present invention.
FIG. 26 is a view for explaining an example of pause erase preparation by the program production method of the present invention.
FIG. 27 is a flowchart illustrating an example of a procedure for deleting a pause according to the program production method of the present invention.
FIG. 28 is a view for explaining an example of animation setting by the program production method of the present invention.
FIG. 29 is a view for explaining an example of animation reading preparation by the program production method of the present invention.
FIG. 30 is a view for explaining an example of animation file selection by the program production method of the present invention.
FIG. 31 is a flowchart for explaining an example of a procedure for reading an animation by the program production method of the present invention.
FIG. 32 is a view for explaining an example of animation preparation by the program production method of the present invention.
FIG. 33 is a flowchart illustrating an example of a procedure for executing an animation according to the program production method of the present invention.
FIG. 34 is a view for explaining an example of an animation close preparation dialogue according to the program production method of the present invention.
FIG. 35 is a flowchart illustrating an example of a procedure for closing an animation according to the program production method of the present invention.
FIG. 36 is a configuration diagram for explaining an example of a conventional program production device.
[Explanation of symbols]
101: Program information, 102: Storage device, 103: Computer, 104: Program generation unit, 105: Program information generation unit, 106: Sequencer unit, 107: CG animation generation unit, 108: Voice synthesis unit, 109: Moving
Claims (12)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002165498A JP2004013486A (en) | 2002-06-06 | 2002-06-06 | Device and method for program production |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002165498A JP2004013486A (en) | 2002-06-06 | 2002-06-06 | Device and method for program production |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004013486A true JP2004013486A (en) | 2004-01-15 |
JP2004013486A5 JP2004013486A5 (en) | 2005-08-25 |
Family
ID=30433322
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002165498A Pending JP2004013486A (en) | 2002-06-06 | 2002-06-06 | Device and method for program production |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004013486A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007272375A (en) * | 2006-03-30 | 2007-10-18 | Terumasa Aoki | Method and program for generating script |
CN110533751A (en) * | 2019-08-30 | 2019-12-03 | 武汉真蓝三维科技有限公司 | A kind of three-dimensional visualization cartoon making and playback method with interactive function |
JP7488223B2 (en) | 2021-05-27 | 2024-05-21 | 株式会社アシックス | Wearing Simulation Device |
-
2002
- 2002-06-06 JP JP2002165498A patent/JP2004013486A/en active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007272375A (en) * | 2006-03-30 | 2007-10-18 | Terumasa Aoki | Method and program for generating script |
CN110533751A (en) * | 2019-08-30 | 2019-12-03 | 武汉真蓝三维科技有限公司 | A kind of three-dimensional visualization cartoon making and playback method with interactive function |
CN110533751B (en) * | 2019-08-30 | 2023-08-15 | 武汉真蓝三维科技有限公司 | Three-dimensional visual animation production and playing method with interaction function |
JP7488223B2 (en) | 2021-05-27 | 2024-05-21 | 株式会社アシックス | Wearing Simulation Device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4204636B2 (en) | Method and system for editing or modifying 3D animation in a non-linear editing environment | |
JP3539553B2 (en) | Animation creation method, animation creation device, and computer-readable recording medium recording animation creation program | |
US6654031B1 (en) | Method of editing a video program with variable view point of picked-up image and computer program product for displaying video program | |
US20050231513A1 (en) | Stop motion capture tool using image cutouts | |
US6967666B1 (en) | Composite picture generating method | |
KR100960504B1 (en) | System and method for making emotion based digital storyboard | |
US20050034076A1 (en) | Combining clips of image data | |
JP5063810B2 (en) | Animation editing apparatus, animation reproducing apparatus, and animation editing method | |
JPH05242143A (en) | Multi-media presentation system | |
JP3092496B2 (en) | Scenario editing device | |
JP2004013486A (en) | Device and method for program production | |
JP2006073026A (en) | Dynamic image editing method | |
JP4010761B2 (en) | How to edit video information | |
JP3919458B2 (en) | Video creation method | |
JP2005285076A (en) | Method for producing image information | |
JPH07303209A (en) | Special effect editing device | |
JPH10200855A (en) | Method and device for image editing, and medium where program for making computer perform image editing process operation is recorded | |
JP3841815B2 (en) | How to edit video data | |
JP3449977B2 (en) | How to edit video data | |
JP2007096678A (en) | Moving video editing device, moving video editing method, and computer program | |
JP2005278212A (en) | Image editing method and image editing system | |
JP4068915B2 (en) | Video data editing apparatus and editing method | |
JP4111727B2 (en) | Video data editing method and video data editing apparatus | |
JP2000083194A (en) | Method for editing video data | |
JP2003296752A (en) | Program editing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050214 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050214 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071109 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071113 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071203 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20071203 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080212 |