JP2001006001A - 三次元表現制御システムと方法およびその処理プログラムを記録した記録媒体 - Google Patents

三次元表現制御システムと方法およびその処理プログラムを記録した記録媒体

Info

Publication number
JP2001006001A
JP2001006001A JP11172870A JP17287099A JP2001006001A JP 2001006001 A JP2001006001 A JP 2001006001A JP 11172870 A JP11172870 A JP 11172870A JP 17287099 A JP17287099 A JP 17287099A JP 2001006001 A JP2001006001 A JP 2001006001A
Authority
JP
Japan
Prior art keywords
time
scenario
screen
expression control
definition information
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
Application number
JP11172870A
Other languages
English (en)
Inventor
Junichi Miyajima
淳一 宮嶋
Akio Takahashi
明男 高橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP11172870A priority Critical patent/JP2001006001A/ja
Publication of JP2001006001A publication Critical patent/JP2001006001A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Controls And Circuits For Display Device (AREA)
  • Processing Or Creating Images (AREA)

Abstract

(57)【要約】 【課題】 従来、コンピュータの性能や描画対象のデー
タ量の増減により、3Dアニメーションの表示速度が変
動してしまう。 【解決手段】 性能の異なる(画面の描画処理動作速度
の遅い)計算機であっても同じ時間でシナリオに従った
画像を表示させるために、シナリオにおいて予め、ある
動作の表示に用いる時間を設定しておき、制御層13a
により、この設定時間内で動作が完了するように、画面
の更新を制御する。もし、画面更新時間が設定時間を超
えた場合には、超過時間だけ、シナリオで次に設定され
ている時間を削減して、シナリオでの実行時間を減らし
て実時間からの遅れを吸収する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータによ
る三次元画像の表示技術に係り、特に、スクリプト記述
を用いた三次元画像のアニメーション(3Dアニメーシ
ョン)表示の制御を効率的に行うのに好適な三次元表現
制御システムと方法およびその処理プログラムを記録し
た記録媒体に関するものである。
【0002】
【従来の技術】従来、三次元画像は、静止画として組み
立てて構成するだけでも、専用のアプリケーションや、
専門の技術者によるデータ作成が必要であった。さら
に、三次元画像を利用したアニメーション(3Dアニメ
ーション)の表現や、仮想空間内を自由に歩く(ウォー
クスルー)などのインターラクティブな動作を行うソフ
トウェアアプリケーションの開発は、三次元の演算など
の専門知識が要求される。この結果、三次元画像の利用
は専門技術者の多い家庭用ゲーム機や、CAD(Comput
er Aided Design)などの特定の分野に限られていた。
【0003】このような3Dアニメーションの表現や、
インターラクティブなソフトウェアアプリケーションを
開発する場合、ハードウェアに密着した低レベルな機能
を提供する三次元表示ライブラリを用いてC言語やアセ
ンブラ言語などでプログラミングする。この三次元表示
ライブラリを利用するには、専門的な三次元技術が必要
とされる。
【0004】また、3Dアニメーション等において、一
般のユーザが目にして興味を引くような表現は、映画な
どの映像業界で培われる技術である。そのため、表現力
のある三次元アプリケーションを制作するためには、三
次元表示ライブラリを利用するための専門的な三次元技
術と、映画などの映像業界で培われる技術の両方を持っ
た技術者が必要となる。
【0005】このような三次元画像を、専門家でない一
般のユーザにも手軽に利用できるようにするために、ス
クリプトなどの簡易言語で三次元画像を作成する技術が
いくつか提案されている。例えば、国際標準規格(ISO/I
EC14772)のVRML(Virtual Reality Modeling Langu
age)は、簡易言語で三次元モデルを記述し、ブラウザ
などの専用アプリケーション上で、その言語内容を解釈
して表示するものである。また、特開平9−33042
5号公報や特開平9−34675号公報等においても、
スクリプトを利用した三次元画像の表示技術が開示され
ている。
【0006】このスクリプトを利用した三次元画像の表
示技術により、いわゆるパーソナルコンピュータを用い
た一般のユーザによる3Dアニメーションの作成等も可
能である。尚、VRMLを用いてパーソナルコンピュー
タで三次元画像を表示する技術に関しては、例えば、
「インタフェース [特集]インターネットとマルチメデ
ィア技術 1996年3月号」(1996年、CQ出版
社発行)の第134〜146頁に記載されている。
【0007】しかし、パーソナルコンピュータには、搭
載しているCPU(Central Processing Unit)やグラ
フィックボード等の性能差により、画像表示処理能力の
高いものや画像表示処理能力の低いものがある。例えば
3Dアニメーションのアプリケーションプログラムであ
れば、画像表示処理能力の低いパーソナルコンピュータ
では高速なアニメーション表示がなされず、プログラム
の作成者が意図した動作は表現できない。
【0008】また、画像表示処理能力の高いパーソナル
コンピュータであっても、各画面(フレーム)を構成す
るデータ量の増減に伴い、動作が不安定になる。例え
ば、いわゆるウォークスルーの動作において、データ量
の少ない背景から、データ量の多い背景に切り換わった
場合、データ量の多い背景での各フレーム1枚毎の描画
に時間を要してしまい、その動作が遅くなってしまう。
【0009】このようにウォークスルーの画面上での動
作が、背景の切り換わりで遅くなると、例えば、ゲーム
中であれば、操作しているユーザは、その動作がスロー
ダウンすることにより、何か新たな変化の発生(新たな
敵の出現等)を予見してしまい、ゲーム製作者の考えて
いるシナリオと異なるものとなってしまう。
【0010】また、画像表示処理能力の低いパーソナル
コンピュータにおいて、ある程度高速なアニメーション
表示をさせるには、装置性能に合わせてフレームを間引
きする従来技術があるが、この従来技術では、均一にフ
レームが間引かれるだけであり、例えば上述のウォーク
スルーの画面上での動作におけるデータ量の少ない背景
からデータ量の多い背景に切り換わった時点での動作の
変動を完全に吸収することはできない。
【0011】
【発明が解決しようとする課題】解決しようとする問題
点は、従来の技術では、コンピュータの性能や描画対象
のデータ量の増減により、3Dアニメーションの表示速
度が変動してしまう点である。
【0012】本発明の目的は、これら従来技術の課題を
解決し、例えば3Dアニメーションゲームにおけるウォ
ークスルー等の動作速度を背景のデータ量の大小にかか
わらず一定とし、スクリプトの記述者が意図したシナリ
オ通りに表示することを可能とする三次元表現制御シス
テムと方法およびその処理プログラムを記録した記録媒
体を提供することである。
【0013】
【課題を解決するための手段】上記目的を達成するた
め、本発明の三次元表現制御システムと方法は、性能の
異なる(画面の描画処理動作速度の遅い)計算機であっ
ても同じ時間でシナリオに従った画像を表示させるため
に、シナリオにおいて予め、ある動作の表示に用いる時
間を設定しておき、この設定時間内で動作が完了するよ
うに、画面の更新を制御する。
【0014】もし、画面更新時間が設定時間を超えた場
合には、超過時間だけ、シナリオで次に設定されている
処理時間を削減することにより、シナリオでの実行時間
を減らし、また、超過時間が次の設定時間も超過してい
れば(T)、この設定時間での処理を放棄して、さらに
次の設定時間での処理を、時間(T)分だけ削減した時
間で行い、実時間からの遅れを吸収する。
【0015】尚、3Dモデルデータ、モーションデー
タ、サウンドデータ、ビットマップデータ等の全てのコ
ンテンツを形成する素材データと、各素材データの振る
舞いやコンテンツの流れを表現したシナリオを記述した
スクリプトデータとを相互に分けて記憶し、各素材デー
タにはそれぞれ固有の識別子を付与し、この識別子によ
りスクリプトデータで各素材データを特定する構成とし
て、三次元画像の利用に専門的な技術を不要とする。
【0016】また、スクリプトの解釈処理を行う処理部
と、実際の表示を行う処理部とを分け、装置のハードウ
ェア構成やオペレーティングシステムの種別などのプラ
ットフォームに依存する部分を、実際の表示を行う処理
部に吸収して移植性を高める。
【0017】
【発明の実施の形態】以下、本発明の実施の形態を、図
面により詳細に説明する。図1は、本発明の三次元表現
制御システムの本発明に係る構成の一実施例を示すブロ
ック図であり、図14は、そのコンピュータ装置構成例
を示すブロック図である。
【0018】図14において、141はCRT(Cathod
e Ray Tube)やLCD(Liquid Crystal Display)ある
いはプロジェクタ等からなる表示装置、142はキーボ
ードやマウス等からなる入力装置、143はハードディ
スクドライブ等からなる外部記憶装置、144はCPU
(Central Processing Unit)や主メモリ等を有し蓄積
プログラム方式によるコンピュータ処理を行なう情報処
理装置、145は本発明に係る処理プログラムやデータ
等を記録する光ディスク、146は光ディスク145の
読み取り動作を行なう駆動装置である。
【0019】光ディスク145に記録された処理プログ
ラムやデータをインストールして主メモリに読み込むこ
とにより、情報処理装置144内に、図1に示す三次元
表現制御システムが構築される。以下、図1を用いて三
次元表現制御システムの詳細を説明する。
【0020】図1に示すように、本例の三次元表現制御
システムは、アプリケーションの内容を記述したスクリ
プトデータ11と、実際に表示に使用される素材データ
12、それらを読み込み解釈実行を行う駆動エンジン1
3、駆動エンジン13での解釈実行結果に基づき三次元
画像データを生成する表示処理部(図中、「プラットフ
ォーム」と記載)14、図14における入力装置142
からの指示を入力するユーザ入力部15、スピーカーな
どの音響機器を介して音声を出力する音声出力部16、
表示処理部14で生成された三次元画像データに基づき
図14における表示装置141を介して三次元画像を表
示出力する画面表示部17により構成されている。
【0021】三次元画像の表示は、技術的には数学知識
を必要とする反面、表現としては人間の実生活に一番近
く、アプリケーションを表現する場合に必要な要素は、
「人物モデルが登場する」、「演技する」、「話す」な
どのように絞り込みが可能であり、残りの基本的な表示
技術は、パッケージ化が可能であるので、本例では、素
材データ12として、基本的な表示技術をパッケージ化
している。
【0022】この素材データ12は、アプリケーション
で利用される三次元モデルデータ12a、モデル操作デ
ータ12b、音声データ12cで構成され、それぞれに
は識別子が対応付けられている。これにより、三次元
(3D)モデルデータやモデル操作(モーション)デー
タ、サウンド(音声)データ等、コンテンツを形成する
素材データを、各素材データの振る舞いやコンテンツの
流れを表現したシナリオを記述したスクリプトデータ1
1と分けて記憶し、スクリプトデータ11では、識別子
により各素材データを特定することができる。
【0023】このように、三次元で表現する内容と三次
元モデルデータが独立しているので、三次元画像の利用
に専門的な技術が不要となる。また、従来の三次元表示
ライブラリを用いた技術のように、アプリケーションの
内容が固定的になり、きめ細やかな表現が出来なくなる
ばかりでなくて、三次元画像を外部出力の一つとして他
のシステムから利用することも不便となるといった問題
がなくなり、三次元モデルの再利用や事前に相手先にあ
る三次元モデルを利用することなどが可能となる。さら
に、同じアプリケーションを他のプラットフォームに移
植する際も、表現内容に関わる部分がプログラムで記述
されておらず、大幅な変更作業は不要である。
【0024】また、本例の三次元表現制御システムで
は、簡易言語としてスクリプトを用いてアプリケーショ
ンの内容を記述し、そのスクリプトを解釈実行する駆動
エンジン13を利用する。この駆動エンジン13は、ス
クリプトデータ11の解釈実行を行う制御層13aと、
データのハンドリングと三次元APIライブラリ14a
へのアクセスを行い実際の表示を行う内部API層13
bの二階層構成とし、プラットフォームに依存する部分
は内部API層13bに吸収し、駆動エンジン13とし
ての移植性を高めている。
【0025】駆動エンジン13の制御層13aは、スク
リプトデータ11を解釈実行して、素材データ12を読
み込み処理を行う際、識別子を用いて指定する。また、
制御層13aには、三次元アプリケーションで汎用的に
利用可能な機能として、後に図7〜図11で詳細に説明
するアニメーションの実時間管理機能と仮想三次元空間
内を自由に動くこと(ウォークスルー)などができる仮
想空間内の移動制御機能を用意する。
【0026】移動制御機能は、アニメーション時の三次
元モデルの移動や、ユーザ入力部15からのユーザ入力
による仮想空間内での移動機能(ウォークスルー)を実
現するものであり、実時間管理機能は、マシンスペック
によらずに、指定した時間でアニメーションを再生した
り、ユーザ入力による仮想空間内での一定の速度での移
動を保つものであり、それぞれ本発明に係る三次元表現
制御を行うものである。
【0027】以下、図2を用いて駆動エンジン13の内
部構成を説明する。図2は、図1における駆動エンジン
の構成例を示すブロック図である。本例の駆動エンジン
(13)の制御層13aには、スクリプトデータ11の
解釈実行を行うスクリプト解釈実行モジュール21と、
移動制御モジュール22、ライト制御モジュール23、
カメラ制御モジュール24、三次元モデル制御モジュー
ル25、サウンド制御モジュール26が設けられてい
る。
【0028】この制御層13aにおいて、サウンド制御
モジュール26以外は、スクリプトから動的に必要な数
だけ生成される。起動時はスクリプト解釈実行モジュー
ル21のみが動作し、スクリプト内で必要な各種モジュ
ールを動的に生成・リンクし、アプリケーションにあっ
た実行形態を取る。
【0029】また、内部API層13bには、ユーザ入
力API27、三次元作画API28、サウンドAPI
29が設けられており、ユーザ入力API27は、イン
タラクティブなアプリケーションなどの場合、移動制御
モジュール22に、図1のユーザ入力部15からのユー
ザ入力情報を伝達する。三次元作画API28は、ライ
ト制御モジュール23、カメラ制御モジュール24、三
次元モデル制御モジュール25からの情報を元に三次元
画面を作画し画面を更新する。そして、サウンドAPI
29は、サウンド制御モジュール26から再生すべき音
声データ12cの識別子を指定する形で制御され、音声
出力部16を通じて音声を再生する。
【0030】次に、図3を用いて図1におけるスクリプ
トデータ11と素材データ12との対応付けについて説
明する。図3は、図1におけるスクリプトデータと素材
データとの対応付けに用いられるキーワード・テーブル
の構成例を示す説明図である。スクリプトは、オブジェ
クト指向的に記述され、三次元仮想空間内の振る舞いを
表現する。
【0031】本図3のキーワード・テーブル30におい
て、機能モジュールを生成するキーワード31では、仮
想空間内のオブジェクトを指定するキーワードが登録さ
れており、機能モジュール内で使用されるパラメータ設
定キーワード32では、各オブジェクトの制御内容を設
定するキーワードが登録されており、スクリプト全体で
使用されるキーワード33では、その他のキーワードが
登録されている。
【0032】図1の駆動エンジン13は、図2のスクリ
プト解釈実行モジュール21により、これらのキーワー
ドを解釈実行して、対応する制御モジュールを生成す
る。キーワード・テーブル30における主なキーワード
は、対応した各種モジュールで処理されるが、スクリプ
ト全体で使用されるキーワード33のWaitキーワー
ド33aは、後の図7で説明する実時間管理機能で処理
される。このようなキーワードを用いて次の図4〜図6
に示すようなスクリプトを作成する。
【0033】以下、図4〜図6により、キーワードを用
いたスクリプトの作成例と、そのスクリプトに基づく図
1の駆動エンジン13による表示制御動作例を説明す
る。
【0034】図4は、本発明に係るスクリプト記述例と
それに基づく表示制御例の第1例を示す説明図である。
本図4に示す例のスクリプト記述例41の(a)の内容に
基づき図2のスクリプト解釈実行モジュール21は、三
次元モデル制御モジュール25を生成し、三次元モデル
制御モジュール25は、読み込む三次元モデルデータ1
2aを特定し、その表示位置と方向を順に設定する。
【0035】また、スクリプト記述例41の(b)の内容
に基づき図2のスクリプト解釈実行モジュール21は、
カメラ制御モジュール24を生成し、カメラ制御モジュ
ール24は、三次元仮想空間でのユーザの視点としての
カメラの位置と方向を設定する。そして、スクリプト記
述例41の(c)の内容に基づき図2のスクリプト解釈実
行モジュール21は、ライト制御モジュール23を生成
し、ライト制御モジュール23は、現実世界と同じよう
に物体が見えるようにするため、光(ライト)の位置と
方向を設定する。これにより、スクリプト表示例42で
示すように各制御対象が配置され、その結果として、ス
クリプト表示例43に示すような一体の三次元モデルが
表示される。
【0036】図5は、本発明に係るスクリプト記述例と
それに基づく表示制御例の第2例を示す説明図である。
本例は、仮想空間内を自由に移動出来るアプリケーショ
ンをスクリプトで記述した例を示す。本例のスクリプト
記述例51の(a)で示す部分で、画面に表示する環境モ
デル(「環境モデルA」)を設定する。
【0037】また、スクリプト記述例51の(b)で示す
部分で、仮想空間内のユーザの視点を表現するモジュー
ルを生成する。そして、生成したモジュールに移動開始
地点の初期位置(「Position」)と初期方向(「Rotati
on」)を設定する。その結果、「環境モデルA」で表現
される三次元仮想空間の中を、キーボードやジョイステ
ィックなどの外部入力機器によるユーザ入力によって移
動する(ウォークスルー)アプリケーションが駆動され
る。すなわち、スクリプト表示例52〜54の順に、ユ
ーザ入力により前進した場合の画面の変化を表示する。
【0038】図6は、本発明に係るスクリプト記述例と
それに基づく表示制御例の第3例を示す説明図である。
本例は、3Dアニメーションのアプリケーションをスク
リプトでシナリオ形式で実際に記述した例を示す。アニ
メーションは、時系列に「Waitキーワード33a」
を挟みながら、登場人物や、その台詞、カメラの動きな
どを記述する。スクリプト記述例61における(a)で
は、登場人物の歩く演技と移動(5秒間)を設定してい
る。そして、「Wait<2秒>」のキーワードによ
り、2秒間の待ちを設定し、(b)では、「音声1」の
再生を設定している。これにより、画面上での登場人物
Aの5秒間の歩行途中、その歩行開始の2秒後に「音声
1」が再生される。
【0039】さらに、次の「Wait<1秒>」のキー
ワードにより、1秒間の待ちが設定され、その後、
(c)で、挨拶の演技(「演技2」)と「音声2(よろ
しくお願いします)」の再生が設定され、その後「Wa
it<2秒>」のキーワードにより、2秒間の待ちが設
定されている。この一連の処理結果として、スクリプト
表示例62〜64に順に示されるように、登場人物Aが
こちらに5秒間、「位置1」まで歩きながら挨拶をする
アニメーションが再生される。
【0040】次に、このようなスクリプトに基づく図1
の駆動エンジン13(図2のスクリプト解釈実行モジュ
ール21)による本発明に係る三次元画像の表示制御に
関して、図7〜図11を用いて説明する。図7は、図2
のスクリプト解釈実行モジュールの本発明に係る実時間
管理を行う機能構成例を示すブロック図である。実時間
管理は、実時間コマンド処理モジュール72と実時間補
間機能73で実現される。
【0041】実時間コマンド処理モジュール72では、
後述の図10で説明するように、画面更新処理モジュー
ル74からの情報(「前回の画面更新からの実時間の差
分」)に基づき、本発明に係る実時間に対応したコマン
ド(スクリプトからの各種制御モジュールへのコマンド
71)の「読み飛ばしと読み込み休止」を行う。
【0042】まず、実時間補間機能73の説明を図8を
用いて行う。図8は、図7における実時間補間機能によ
る動作例を示す説明図である。図8(a)に示すよう
に、三次元空間内の点Aから点Bに移動するコマンドを
処理する場合において、スクリプト上での移動開始時間
を図8(b)におけるT11、また、その移動終了時間
をT13とする。
【0043】この時、画面更新が正常にT11、T1
2、T13の割り込み(画面に再描画が可能となるタイ
ミング)で行われた場合、 T12での移動位置を、補
間された座標として計算し、画面表示に反映する。 す
なわち、点Aの座標ベクトルをva、点Bの座標ベクトル
をvb、T12での座標ベクトルをv12とすると、次の
数1の式で計算される。
【数1】
【0044】これが基本的な補間となる。しかし、アニ
メーション再生中は、再生装置の描画処理速度に影響さ
れて、スクリプトの指定する開始時間と終了時間が、画
面更新時間とずれることが多い。例えば、図8(b)の
T21、T22、T23、T24の時間に画面更新の割
り込みがされることがある。
【0045】この場合、T21の時点では移動コマンド
が読み込まれていないため、何も行われない。T22の
時点で、移動座標を補間する。ここでは、点Aの座標ベ
クトルをva、点Bの座標ベクトルをvb、T22での座標
ベクトルをv22とすると、次の数2の式でT22での
座標ベクトルv22が計算される。
【数2】
【0046】同様に、T23での座標ベクトルをv23
とすると、次の数3の式でT23での座標ベクトルv2
3が計算される。
【数3】
【0047】そして、T24の時点では、移動終了時刻
は過ぎているため、点Bの座標を設定する。これらの処
理により、スクリプト上の記述に沿った実時間上でのあ
るべき位置に座標を設定することができる。回転につい
ても同様な補間を行う。
【0048】次に、図1の駆動エンジン13(図2のス
クリプト解釈実行モジュール21)の本発明に係る三次
元画像の表示制御における実時間管理を行う他の機能構
成例を、図9を用いて説明する。
【0049】図9は、図2のスクリプト解釈実行モジュ
ールの本発明に係る実時間管理を行う他の機能構成例を
示すブロック図である。本例は、駆動エンジン13での
移動制御モジュール(22)による仮想空間内を自由に
移動する場合の実時間補間を行うものであり、実時間補
間機能73は、ユーザ入力からの移動制御モジュール
(22)へのコマンド(「回転速度の設定」、「移動速
度の設定」)と、画面更新処理モジュール74からの情
報(「前回の画面更新からの差分の時間」)に基づき、
カメラ制御モジュール24を制御する。
【0050】例えば、現在の座標ベクトルをv1、移動
後の座標ベクトルをv2、現在向いている方向の単位ベ
クトルをve、速度値をrとすると、移動後の座標ベク
トルv2は、次の数4の式で計算される。
【数4】 この結果がカメラ制御モジュール24に送られ、表示に
反映される。
【0051】次に、図10を用いて、図1における三次
元表現制御システムの本発明に係る処理動作を説明す
る。図10は、図1における三次元表現制御システムに
よる本発明の三次元表現制御方法に係る処理動作例を示
すフローチャートである。
【0052】本例は、図1の三次元表現制御システムに
おいて、スクリプトデータ11を駆動エンジン13を用
いて解釈実行する制御プロセスを示しており、図7で説
明した実時間管理に係る実行コマンド処理モジュール7
2による「実時間でのコマンドの読み飛ばしと読み込み
休止」処理はこのプロセスで実現される。尚、実際のコ
ンピュータでの時計機能で計測する画面更新処理時間に
要する実経過時間を「T」、「Wait」キーワードで設定
される待ち時間を「t’」、シナリオでの経過時間と実
経過時間との差分である仮想経過時間を「t」とする。
【0053】駆動エンジン13は、まず、仮想経過時間
t=0と設定する初期化処理を行う(ステップ10
1)。次に、前回の画面更新開始時からの現在の実時間
までの差分である実経過時間Tを設定する(ステップ1
02)。最初はこの実経過時間Tも「0」が設定され
る。そして、図1のスクリプトデータ11の解釈を開始
し(ステップ103)、まずスクリプトの一行を読み込
み(ステップ104)、その行の頭にあるキーワードを
判定する(ステップ105)。
【0054】キーワードが、モジュール生成キーワード
であれば(ステップ106)、モジュール識別子の取得
とモジュール生成を行い(ステップ117)、また、キ
ーワードが、パラメータ設定キーワードであれば(ステ
ップ107)、パラメータの取得とモジュールへの設定
を行い(ステップ118)、キーワードが、Sound
キーワードであれば(ステップ108)、サウンドデー
タ識別子の取得と再生処理を行い(ステップ119)、
その後、ステップ104に戻り、次の行の読み取りを行
う。
【0055】また、キーワードが、Waitキーワード
であれば(ステップ109)、そのWaitキーワード
で設定されている待ち時間t’の値を取得し(ステップ
110)、「t=t+t’」として、新たな仮想経過時
間tを算出する(ステップ111)。最初は、ステップ
101での初期化処理において「t=0」が設定されて
おり、例えば、図6に示したスクリプト例では、「Wait
<2秒>」となっており、新たな仮想経過時間tは
「0+2」で2秒となる。
【0056】このようにして算出した新たな仮想経過時
間tと、ステップ102で設定された実経過時間Tとの
比較を行う(ステップ112)。ここでは、新たな仮想
経過時間tは2秒、ステップ102で設定された実経過
時間Tは「0」で、「t>T」であり、実時間に対する遅
れはないものと判断し、仮想経過時間tから実経過時間
Tを引いた時間をさらに新たな仮想経過時間tに設定し
た後(ステップ113)、ステップ117〜119で取
得した各モジュールの実経過時間Tにおける更新処理
(ステップ114)と、それらに基づく画面更新処理
(ステップ115)を行う。この実経過時間Tにおける
更新処理と画面更新処理は、図8で説明した図7の実時
間補間機能73の処理に基づき行われる。
【0057】この各モジュールの更新処理と画面更新処
理に要した時間を計測して、新たな実経過時間Tとして
設定する(ステップ116)。そしてステップ112に
戻り、この新たな実経過時間Tと、ステップ113で設
定したさらなる新たな仮想経過時間tとの比較を行い、
実経過時間Tが仮想経過時間tより大きくなるまで、す
なわち、実時間に対する遅れが発生するまで、それぞれ
の実経過時間Tでの各モジュールの更新処理と画面更新
処理を繰り返す。
【0058】そして、ステップ112において、実経過
時間Tが仮想経過時間tより大きくなり、実時間に対す
る遅れが発生すると、その差分(T−t)を算出して、
その差分を新たな実経過時間Tとして設定し(ステップ
120)、ステップ104の処理に戻る。このようにし
て、算出した差分(T−t)を新たな実経過時間Tとし
て設定することにより、シナリオにおいて次に設定され
ている動作に対するステップ112〜116での処理時
間(画面更新に用いる時間)が短縮され、実時間に対す
る遅れの分を吸収することができる。
【0059】このようなステップ112〜116,12
0の処理により、画面更新処理に要する時間に応じて、
画面の更新回数を増減すること、すなわち、シナリオの
実行時間を制御することができ、例えば、背景のデータ
量が多くなり描画速度が遅くなった際にも、次のスクリ
プト行への処理に移行する時間の遅れを最小に抑えるこ
とができ、画面を構成するデータ量の増減による動作の
不安定さ(変動)を吸収することができる。
【0060】さらに、ステップ114の更新処理とステ
ップ115の画面更新処理に大幅な時間を要した結果、
ステップ120で設定した新たな実経過時間Tが、次の
スクリプトに対する処理におけるステップ111での仮
想経過時間tよりも大きくなった場合には、そのスクリ
プト部分に対してのステップ114,115での各モジ
ュールの更新処理と画面更新処理を行うことなく、次の
スクリプト部分の処理に移行する。すなわち,「実時間
でのコマンドの読み込み休止」を、実時間に追いつくま
で行う。このようにして、シナリオで設定されている時
間と実時間とを一致させて、設定された動作を完了させ
ることができる。
【0061】次に、図11を用いて、図10のステップ
114における各モジュールの更新処理の動作を説明す
る。図11は、図1における三次元表現制御システムの
本発明に係る処理動作例を示すフローチャートである。
本例は、特に図7における実時間補間機能73による実
時間管理に係る処理動作例を示している。
【0062】まず、図3に示したキーワード・テーブル
30におけるモジュールを生成するキーワード31
(「User」、「Model」、「Camera」、「Light」、…)
によって、モジュールの生成を行う(ステップ20
1)。次に、図7における画面更新処理モジュール74
からの情報(前回の画面更新からの実時間の差分)に基
づき、実経過時間Tの設定を行い(ステップ202)、
その後、モジュール更新処理を開始する(ステップ20
3)。
【0063】ここでは、図7の実時間コマンド処理モジ
ュール72からの補間移動のコマンド入力に基づき(ス
テップ213)、新規補間処理の有無を判定する(ステ
ップ204)。有る場合は、さらに実行中の補間処理の
有無を判断し(ステップ205)、有る場合は、実行中
の補間終了値の設定を行ってから(ステップ206)、
コマンドの遅れ時間差による補間値の修正(ステップ2
07)と、残り補間時間tの設定(ステップ208)、
および、実経過時間Tと残り補間時間tとの比較(ステ
ップ209)を行う。
【0064】また、ステップ204の新規補間処理の有
無の判別処理において、新規補間処理が無い場合は、さ
らに、実行中の補間処理の有無を判断し(ステップ21
4)、有る場合に、ステップ209における実経過時間
Tと残り補間時間tとの比較を行う。無い場合は、補間
処理は無いということになり、ステップ202に戻り、
実経過時間Tの設定を行う。
【0065】ステップ209での実経過時間Tと残り補
間時間tとの比較において、残り補間時間tが大きい場合
は、補間中と判断し、現在の補間値の算出(ステップ2
10)と、残り補間時間の更新(ステップ211)を行
う。また、ステップ209で実経過時間Tが大きい場合
は、補間は既に終了していると判断し、補間終了値の設
定(ステップ215)と、補間処理終了(ステップ21
6)を行う。そして、結果としての値を三次元作画AP
Iに設定して(ステップ212)、画面を更新する。
【0066】次に、図1の三次元表現制御システムにお
けるスクリプトの記述を容易とする例を図12と図13
を用いて説明する。図12は、本発明の三次元表現制御
システムの他の構成例を示すブロック図であり、図13
は、図12における三次元表現制御システムで表示され
る画面表示例を示す説明図である。
【0067】図12に示す例は、図1における三次元表
現制御システムに、スクリプトデータ・素材データ作成
編集インタフェース120を設けたものであり、このス
クリプトデータ・素材データ作成編集インタフェース1
20は、図13に示すスクリプトデータ・素材データ作
成編集インタフェース画面130をディスプレイ上に表
示する。
【0068】この図13に示すスクリプトデータ・素材
データ作成編集インタフェース画面130は、スクリプ
トデータ格納フォルダ131、素材データ格納フォルダ
132、スクリプトテンプレート133、素材テンプレ
ート134、スクリプト編集操作ウィンドウ135、ス
クリプトパラメータ入力サブウィンドウ136からな
り、フィル・イン・ザ・ブランク(Fill in the blank)方
式(可変部分を穴明き状態にして各穴を埋めることによ
りスクリプトデータを完成させる方式)での入力が可能
となっており、ユーザは、このスクリプトデータ・素材
データ作成編集インタフェース画面130により、スク
リプトデータ11を作成、編集したり、素材データ12
の各データを追加、削除することが容易にできる。
【0069】以上、図1〜図14を用いて説明したよう
に、本例の三次元表現制御システムと方法では、スクリ
プトで記載されているシナリオに従って三次元画像を画
面に表示する場合、シナリオで予め設定されている時刻
での経過と、コンピュータで計数している実時間での時
刻の経過とを、例えば画像の更新毎に比較し、シナリオ
での経過時刻が実時間より遅れていれば、次の画像の更
新をキャンセル等して次の命令の実行に移ることによ
り、その遅れを補正する。
【0070】このように、本例では、実時刻と、現在表
示している画面が表示されるべきシナリオの時刻とを比
較し、実時間から遅れていれば、シナリオの実行時間を
減らすので、性能の異なる(画面の描画処理動作速度の
遅い)計算機であっても、同じ時間でシナリオに従った
画像を表示することができ、また、データ量の増減にか
かわらずシナリオ通りの表示時間制御ができる。
【0071】また、本例では、スクリプトのような簡易
言語によって内容を記述することで、三次元画像表示の
専門知識を必要最小限とし、アプリケーション作成の飛
躍的な生産性向上が可能となる。また、簡易言語によ
り、アプリケーションをプラットフォームから独立させ
ることで、変更無しで幅広いプラットフォーム上で再現
可能なアプリケーションを作成可能となる。さらに、三
次元モデルをアプリケーション内容の情報から独立させ
ることで、伝達すべき情報が少なくなり、ネットワーク
上で三次元を利用したアプリケーションの配信が可能と
なる。
【0072】また、本例では、スクリプトデータ・素材
データ作成編集インタフェース画面130により、スク
リプト一覧や素材データ一覧からドラッグ&ドロップで
スクリプトが作成できるので、短時間でスクリプトデー
タを作成でき、テンプレートを容易したことによりさら
に短時間で、スクリプトを作成できる上に誤りを大幅に
削減できる。
【0073】尚、本発明は、図1〜図14を用いて説明
した実施例に限定されるものではなく、その要旨を逸脱
しない範囲において種々変更可能である。例えば、本例
では、本発明の三次元表現制御システムと方法を実装す
る装置として特に特定してないが、いわゆるパーソナル
コンピュータやワークステーションを用いることができ
る。また、本発明の三次元表現制御方法に係る処理プロ
グラム(ソースコードあるいは実行コード)やデータを
記録する媒体としては、FD(Flexible Disk)やDV
D(Digital Video Disc)を用いることでも良い。さら
に、本発明の三次元表現制御方法に係る処理プログラム
やデータを、通信回線を介してパーソナルコンピュータ
やワークステーション等に配信してインストールするこ
とでも良い。
【0074】
【発明の効果】本発明によれば、性能の異なるコンピュ
ータであっても同じ時間でシナリオに従った画像表示が
でき、また、描画対象のフレームのデータ量の増減によ
る三次元画像の表示速度の変動を吸収すること等がで
き、例えば3Dアニメーションゲームにおけるウォーク
スルー操作中に、データ量の少ない背景からデータ量の
多い背景に切り換わった時点でも、ウォークスルー動作
は変化せず、スクリプトの記述者が意図したシナリオ通
りに表示させることができ、三次元表現技術を用いる装
置の性能の向上を図ることが可能である。
【図面の簡単な説明】
【図1】本発明の三次元表現制御システムの本発明に係
る構成の一実施例を示すブロック図である。
【図2】図1における駆動エンジンの構成例を示すブロ
ック図である。
【図3】図1におけるスクリプトデータと素材データと
の対応付けに用いられるキーワード・テーブルの構成例
を示す説明図である。
【図4】本発明に係るスクリプト記述例とそれに基づく
表示制御例の第1例を示す説明図である。
【図5】本発明に係るスクリプト記述例とそれに基づく
表示制御例の第2例を示す説明図である。
【図6】本発明に係るスクリプト記述例とそれに基づく
表示制御例の第3例を示す説明図である。
【図7】図2のスクリプト解釈実行モジュールの本発明
に係る実時間管理を行う機能構成例を示すブロック図で
ある。
【図8】図7における実時間補間機能による動作例を示
す説明図である。
【図9】図2のスクリプト解釈実行モジュールの本発明
に係る実時間管理を行う他の機能構成例を示すブロック
図である。
【図10】図1における三次元表現制御システムによる
本発明の三次元表現制御方法に係る処理動作例を示すフ
ローチャートである。
【図11】図1における三次元表現制御システムの本発
明に係る処理動作例を示すフローチャートである。
【図12】本発明の三次元表現制御システムの他の構成
例を示すブロック図である。
【図13】図12における三次元表現制御システムで表
示される画面表示例を示す説明図である。
【図14】図1における三次元表現制御システムを実装
したコンピュータ装置構成例を示すブロック図である。
【符号の説明】 11:スクリプトデータ、12:素材データ、12a:
三次元モデルデータ、12b:モデル操作データ、12
c:音声データ、13:駆動エンジン、13a:制御
層、13b:内部API層、14:表示処理部(プラッ
トフォーム)、14a:三次元APIライブラリ、1
5:ユーザ入力部、16:音声出力部、17:画面表示
部、21:スクリプト解釈実行モジュール、22:移動
制御モジュール、23:ライト制御モジュール、24:
カメラ制御モジュール、25:三次元モデル制御モジュ
ール、26:サウンド制御モジュール、27:ユーザ入
力API、28:三次元作画API、29:サウンドA
PI、30:キーワード・テーブル、31:機能モジュ
ールを生成するキーワード、32:機能モジュール内で
使用されるパラメータ設定キーワード、33:スクリプ
ト全体で使用されるキーワード、41:スクリプト記述
例、42,43:スクリプト表示例、51:スクリプト
記述例、52〜54:スクリプト表示例、61:スクリ
プト記述例、62〜64:スクリプト表示例、71:ス
クリプトからの各種制御モジュールへのコマンド、7
2:実時間コマンド処理モジュール、73:実時間補間
機能、74:画面更新処理モジュール、91:ユーザ入
力からの移動制御モジュールへのコマンド、120:ス
クリプトデータ・素材データ作成編集インタフェース、
130:スクリプトデータ・素材データ作成編集インタ
フェース画面、131:スクリプトデータ格納フォル
ダ、132:素材データ格納フォルダ、133:スクリ
プトテンプレート、134:素材テンプレート、13
5:スクリプト編集操作ウィンドウ、136:スクリプ
トパラメータ入力サブウィンドウ、141:表示装置、
142:入力装置、143:外部記憶装置、144:情報
処理装置、145;光ディスク、146:駆動装置。
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5B050 BA08 BA09 DA10 EA24 EA28 FA02 FA10 5C082 AA01 BA43 BA46 CB01 DA87 MM06 MM10

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 スクリプト言語で記述されたシナリオに
    従って三次元モデルのアニメーション表示をコンピュー
    タを用いて行う三次元表現制御システムであって、上記
    シナリオで予め設定されている時間定義情報と動作定義
    情報を読み込み、該時間定義情報で定められた時間(定
    義時間)で上記動作定義情報で定められた動作を完了さ
    せるよう画面の更新を制御する制御手段を有することを
    特徴とする三次元表現制御システム。
  2. 【請求項2】 請求項1に記載の三次元表現制御システ
    ムにおいて、上記制御手段は、上記画面の更新に要した
    時間と上記定義時間とを比較して、上記画面の更新時間
    が上記定義時間を超過した場合、上記シナリオにおいて
    次の時間定義情報で定められている定義時間から上記超
    過した時間だけ減らした時間を求め、該求めた時間で、
    次の動作定義情報で定められた動作を完了させるよう画
    面の更新を制御することを特徴とする三次元表現制御シ
    ステム。
  3. 【請求項3】 請求項2に記載の三次元表現制御システ
    ムにおいて、上記制御手段は、上記超過時間が上記次に
    定められている定義時間をさらに超過した場合、上記次
    に定められている時間定義情報での処理を放棄して、上
    記シナリオにおいてさらに次の時間定義情報で定められ
    ている定義時間から上記さらに超過した時間だけ減らし
    た時間を求め、該求めた時間で、上記シナリオにおいて
    さらに次の動作定義情報で定められた動作を完了させる
    よう画面の更新を制御することを特徴とする三次元表現
    制御システム。
  4. 【請求項4】 スクリプト言語で記述されたシナリオに
    従って三次元モデルのアニメーション表示をコンピュー
    タを用いて行う三次元表現制御方法であって、上記シナ
    リオで予め設定されている時間定義情報と動作定義情報
    を読み込むステップと、該ステップで読み込んだ上記時
    間定義情報で定められた時間(定義時間)で上記動作定
    義情報で定められた動作を完了させるよう画面の更新を
    制御するステップとを有することを特徴とする三次元表
    現制御方法。
  5. 【請求項5】 請求項4に記載の三次元表現制御方法に
    おいて、上記画面の更新に要した時間と上記定義時間と
    を比較するステップと、該ステップでの比較の結果、上
    記画面の更新時間が上記定義時間を超過していれば、上
    記シナリオにおいて次の時間定義情報で定められている
    定義時間から上記超過した時間だけ減らした時間を求め
    るステップとを有し、該求めた時間で、次の動作定義情
    報で定められた動作を完了させるよう画面の更新を制御
    することを特徴とする三次元表現制御方法。
  6. 【請求項6】 請求項5に記載の三次元表現制御方法に
    おいて、上記超過時間と上記次に定められている定義時
    間とを比較するステップと、該ステップでの比較の結
    果、上記超過時間が上記次に定められている定義時間を
    さらに超過していれば、上記次に定められている時間定
    義情報での処理を放棄し、上記シナリオにおいてさらに
    次の時間定義情報で定められている定義時間から上記さ
    らに超過した時間だけ減らした時間を求めるステップと
    を有し、該求めた時間で、上記シナリオにおいてさらに
    次の動作定義情報で定められた動作を完了させるよう画
    面の更新を制御することを特徴とする三次元表現制御方
    法。
  7. 【請求項7】 スクリプト言語で記述されたシナリオに
    従って三次元モデルのアニメーション表示をコンピュー
    タを用いて行うシステムによる三次元表現制御方法の処
    理手順プログラムを記録する記録媒体であって、請求項
    4から請求項6のいずれかに記載の三次元表現制御方法
    における各ステップを、上記コンピュータに実行させる
    ためのプログラムを記録したことを特徴とする記録媒
    体。
JP11172870A 1999-06-18 1999-06-18 三次元表現制御システムと方法およびその処理プログラムを記録した記録媒体 Pending JP2001006001A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11172870A JP2001006001A (ja) 1999-06-18 1999-06-18 三次元表現制御システムと方法およびその処理プログラムを記録した記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11172870A JP2001006001A (ja) 1999-06-18 1999-06-18 三次元表現制御システムと方法およびその処理プログラムを記録した記録媒体

Publications (1)

Publication Number Publication Date
JP2001006001A true JP2001006001A (ja) 2001-01-12

Family

ID=15949838

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11172870A Pending JP2001006001A (ja) 1999-06-18 1999-06-18 三次元表現制御システムと方法およびその処理プログラムを記録した記録媒体

Country Status (1)

Country Link
JP (1) JP2001006001A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002260004A (ja) * 2001-03-06 2002-09-13 Sharp Corp アニメーション再生端末、アニメーションの再生方法、および、そのプログラム
WO2005008599A1 (ja) * 2003-07-23 2005-01-27 Matsushita Electric Industrial Co., Ltd. 動画作成装置および動画作成方法
KR100678120B1 (ko) * 2004-11-01 2007-02-02 삼성전자주식회사 이동통신 단말기에서 3d 애니메이션 파일을 제공하기 위한 장치 및 방법
US20110260967A1 (en) * 2009-01-16 2011-10-27 Brother Kogyo Kabushiki Kaisha Head mounted display
WO2012011228A1 (ja) * 2010-07-23 2012-01-26 パナソニック株式会社 アニメーション描画装置、アニメーション描画プログラム、及びアニメーション描画方法
JP2015530125A (ja) * 2012-07-04 2015-10-15 テンセント テクノロジー (シェンジェン) カンパニー リミテッド 複雑なプロットを見せるようプロット命令を実行する方法及び装置

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002260004A (ja) * 2001-03-06 2002-09-13 Sharp Corp アニメーション再生端末、アニメーションの再生方法、および、そのプログラム
WO2002073539A1 (fr) * 2001-03-06 2002-09-19 Sharp Kabushiki Kaisha Terminal de reproduction d'animation, procede de reproduction d'animation et programme associe
US7173624B2 (en) 2001-03-06 2007-02-06 Sharp Kabushiki Kaisha Animation reproduction terminal, animation reproducing method and its program
WO2005008599A1 (ja) * 2003-07-23 2005-01-27 Matsushita Electric Industrial Co., Ltd. 動画作成装置および動画作成方法
US7382372B2 (en) 2003-07-23 2008-06-03 Matsushita Electric Industrial Co., Ltd. Apparatus and method for creating moving picture
KR100678120B1 (ko) * 2004-11-01 2007-02-02 삼성전자주식회사 이동통신 단말기에서 3d 애니메이션 파일을 제공하기 위한 장치 및 방법
US20110260967A1 (en) * 2009-01-16 2011-10-27 Brother Kogyo Kabushiki Kaisha Head mounted display
WO2012011228A1 (ja) * 2010-07-23 2012-01-26 パナソニック株式会社 アニメーション描画装置、アニメーション描画プログラム、及びアニメーション描画方法
US8963929B2 (en) 2010-07-23 2015-02-24 Panasonic Intellectual Property Corporation Of America Animation drawing device, computer-readable recording medium, and animation drawing method
JP5715133B2 (ja) * 2010-07-23 2015-05-07 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America アニメーション描画装置、アニメーション描画プログラム、及びアニメーション描画方法
JP2015530125A (ja) * 2012-07-04 2015-10-15 テンセント テクノロジー (シェンジェン) カンパニー リミテッド 複雑なプロットを見せるようプロット命令を実行する方法及び装置

Similar Documents

Publication Publication Date Title
JP4268586B2 (ja) Gui用の動画挙動の作成および実行
KR101143095B1 (ko) 컴퓨터 디스플레이 출력시의 애니메이션 및 매체 조정
US7477254B2 (en) Smooth transitions between animations
US20090322760A1 (en) Dynamic animation scheduling
US8860731B1 (en) Refining animation
US8674998B1 (en) Snapshot keyframing
JP2001006001A (ja) 三次元表現制御システムと方法およびその処理プログラムを記録した記録媒体
CN117032895A (zh) 一种基于虚幻引擎的仿真运行控制方法及系统
US8462163B2 (en) Computer system and motion control method
US11928762B2 (en) Asynchronous multi-user real-time streaming of web-based image edits using generative adversarial network(s)
CN112734949B (zh) Vr内容的属性修改方法、装置、计算机设备及存储介质
US11423941B2 (en) Write-a-movie: unifying writing and shooting
JP2842283B2 (ja) 映像提示方法および装置
JP2001092712A (ja) マルチメディアWebページとそのマルチメディア連携方法およびその処理プログラムを記録した記録媒体
US20230267669A1 (en) Method for generating joint-based facial rig and apparatus therefor
JPH10507860A (ja) 動画制御装置
JP3409374B2 (ja) データ出力装置およびその方法
WO2024011733A1 (zh) 3d图像实现方法及系统
CN115964039A (zh) 一种TDu配置表三维引擎框架及其运行方法
JPH07210652A (ja) 提示情報作成装置
Tang EMO: Elastic manipulation objects
JP2004152132A (ja) 画像出力方法、画像出力装置、画像出力プログラムおよびコンピュータ読取可能な記録媒体