JPH07225852A - 動画生成方法および装置 - Google Patents
動画生成方法および装置Info
- Publication number
- JPH07225852A JPH07225852A JP6018105A JP1810594A JPH07225852A JP H07225852 A JPH07225852 A JP H07225852A JP 6018105 A JP6018105 A JP 6018105A JP 1810594 A JP1810594 A JP 1810594A JP H07225852 A JPH07225852 A JP H07225852A
- Authority
- JP
- Japan
- Prior art keywords
- moving image
- display
- calculation
- data
- image data
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims description 116
- 238000004364 calculation method Methods 0.000 claims abstract description 210
- 238000012545 processing Methods 0.000 claims abstract description 69
- 238000003860 storage Methods 0.000 claims abstract description 37
- 230000008569 process Effects 0.000 claims description 93
- 238000009825 accumulation Methods 0.000 claims description 4
- 238000004904 shortening Methods 0.000 abstract 1
- 230000006870 function Effects 0.000 description 24
- 238000010586 diagram Methods 0.000 description 13
- 230000033001 locomotion Effects 0.000 description 7
- 238000009877 rendering Methods 0.000 description 5
- 238000013507 mapping Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 238000010923 batch production Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004040 coloring Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 239000003897 fog Substances 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000003595 mist Substances 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000005096 rolling process Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
(57)【要約】
【目的】1フレーム当りの動画の作成表示に要する時間
を減少させ、バッチ処理を行うことなく実時間処理での
動画の作成表示を可能とする。 【構成】計算手段22で動画データを計算して生成し、
計算結果蓄積手段28に蓄積する。表示手段24は、計
算結果蓄積手段28から読み出した動画データに基づい
て画像データを作成して表示する。制御手段26は、計
算手段22と表示手段24の処理を並行して行わせる。
制御手段26は、最初に計算手段22に起動命令を送っ
て動画データの計算を先行させ、計算結果蓄積手段28
に一定量の計算結果、例えば1フレーム分の計算結果が
蓄積されてから表示手段24に起動命令を送って動画の
表示を開始させる。
を減少させ、バッチ処理を行うことなく実時間処理での
動画の作成表示を可能とする。 【構成】計算手段22で動画データを計算して生成し、
計算結果蓄積手段28に蓄積する。表示手段24は、計
算結果蓄積手段28から読み出した動画データに基づい
て画像データを作成して表示する。制御手段26は、計
算手段22と表示手段24の処理を並行して行わせる。
制御手段26は、最初に計算手段22に起動命令を送っ
て動画データの計算を先行させ、計算結果蓄積手段28
に一定量の計算結果、例えば1フレーム分の計算結果が
蓄積されてから表示手段24に起動命令を送って動画の
表示を開始させる。
Description
【0001】
【産業上の利用分野】本発明は、コンピュータ・グラフ
ィックスを用いた動画生成方法および装置に関し、特
に、動画データの計算プロセスと動画データの表示プロ
セスとに分けて動画を生成表示する動画生成方法および
装置に関する。
ィックスを用いた動画生成方法および装置に関し、特
に、動画データの計算プロセスと動画データの表示プロ
セスとに分けて動画を生成表示する動画生成方法および
装置に関する。
【0002】
【従来の技術】一般に、コンピュータ・グラフィックス
(以下「CG」という)を用いて時間変化する画像や図
形などの動画を生成して表示する場合、まず表示する物
体の3次元データを計算して生成し、次に、その計算デ
ータから実際に表示する画面の画像データを作成する必
要がある。
(以下「CG」という)を用いて時間変化する画像や図
形などの動画を生成して表示する場合、まず表示する物
体の3次元データを計算して生成し、次に、その計算デ
ータから実際に表示する画面の画像データを作成する必
要がある。
【0003】例えばCGアニメーションの場合、まず表
示しようとする時間における3次元空間での物体の位置
や形状などを計算し、次に、計算された物体をある視点
から見た2次元投影として画像データを生成してディス
プレイ画面に表示する。このため従来の動画生成装置に
あっては、図19に示すように、まずある時刻tの動画
データを計算プロセス100で計算して作成する。次
に、計算結果を表示プロセス110に送って画像データ
を作成して表示する。次に時間管理部120で現在時刻
tをインクリメントして進み、次の時刻について計算プ
ロセス100と表示プロセス110の逐次処理を繰り返
して動画を生成表示する。
示しようとする時間における3次元空間での物体の位置
や形状などを計算し、次に、計算された物体をある視点
から見た2次元投影として画像データを生成してディス
プレイ画面に表示する。このため従来の動画生成装置に
あっては、図19に示すように、まずある時刻tの動画
データを計算プロセス100で計算して作成する。次
に、計算結果を表示プロセス110に送って画像データ
を作成して表示する。次に時間管理部120で現在時刻
tをインクリメントして進み、次の時刻について計算プ
ロセス100と表示プロセス110の逐次処理を繰り返
して動画を生成表示する。
【0004】
【発明が解決しようとする課題】しかし、このような従
来の計算プロセスと表示プロセスを順番に繰り返す逐次
処理の動画生成にあっては、図20に示すように、例え
ばフレームF1からフレームFnの動画を生成表示する
場合、動画の1フレームを表示するまでに、データ生成
の計算にかかる時間Tc にデータの表示にかかる時間T
d を加えた時間が必要となり、nフレーム分の動画につ
いては、 の時間が必要になる。
来の計算プロセスと表示プロセスを順番に繰り返す逐次
処理の動画生成にあっては、図20に示すように、例え
ばフレームF1からフレームFnの動画を生成表示する
場合、動画の1フレームを表示するまでに、データ生成
の計算にかかる時間Tc にデータの表示にかかる時間T
d を加えた時間が必要となり、nフレーム分の動画につ
いては、 の時間が必要になる。
【0005】また、場面によって処理対象の物体の数や
データの複雑さが異なるため、データ生成の形成時間お
よび表示時間がまちまちであり、連続するフレーム画像
を一定の時間間隔で表示するためには、一旦、全フレー
ムについてデータ生成の計算と表示処理を行って画像デ
ータにしてメモリに格納し、その後に再生する方法がと
られている。
データの複雑さが異なるため、データ生成の形成時間お
よび表示時間がまちまちであり、連続するフレーム画像
を一定の時間間隔で表示するためには、一旦、全フレー
ムについてデータ生成の計算と表示処理を行って画像デ
ータにしてメモリに格納し、その後に再生する方法がと
られている。
【0006】しかし、これでは全ての処理が終わってか
らでしか動画を見ることができないことになり、また画
像データとして保存するためには大量のメモリを必要と
し、試行錯誤に動画の特性表示が要求される編集作業に
は適応できないという問題があった。本発明は、このよ
うな従来の問題点に鑑みてなされたもので、1フレーム
当りの動画の作成表示に要する時間を減少させ、バッチ
処理を行うことなく実時間処理での動画の作成表示を可
能とする動画生成装置を提供することを目的とする。
らでしか動画を見ることができないことになり、また画
像データとして保存するためには大量のメモリを必要と
し、試行錯誤に動画の特性表示が要求される編集作業に
は適応できないという問題があった。本発明は、このよ
うな従来の問題点に鑑みてなされたもので、1フレーム
当りの動画の作成表示に要する時間を減少させ、バッチ
処理を行うことなく実時間処理での動画の作成表示を可
能とする動画生成装置を提供することを目的とする。
【0007】
【課題を解決するための手段】図1は本発明の原理説明
図である。本発明の動画生成装置は、図1(A)に示す
ように、計算手段22、表示手段24、計算結果蓄積手
段28、および制御手段26で構成される。計算手段2
2は、動画データを計算して生成する。計算結果蓄積手
段28は、計算手段22によって生成された動画データ
を蓄積する。表示手段24は、計算結果蓄積手段28か
ら読み出した動画データに基づいて動画データを表示す
る。更に、制御手段26は、計算手段22と表示手段2
4の処理を並行して行わせる。
図である。本発明の動画生成装置は、図1(A)に示す
ように、計算手段22、表示手段24、計算結果蓄積手
段28、および制御手段26で構成される。計算手段2
2は、動画データを計算して生成する。計算結果蓄積手
段28は、計算手段22によって生成された動画データ
を蓄積する。表示手段24は、計算結果蓄積手段28か
ら読み出した動画データに基づいて動画データを表示す
る。更に、制御手段26は、計算手段22と表示手段2
4の処理を並行して行わせる。
【0008】ここで、制御手段26は、最初に計算手段
22に起動命令を送って動画データの計算を先行させ、
計算結果蓄積手段28に一定量の計算結果、例えば1フ
レーム分の計算結果が蓄積されてから表示手段24に起
動命令を送って動画データの表示を開始させる。動画デ
ータを等間隔で表示する場合、制御手段26は、予め定
めた一定時間Td ごとに表示手段24に表示命令を送っ
て一定の時間間隔で動画データを切替表示する。この場
合、表示手段24による動画データの表示中に、計算手
段22で次の表示に使用する動画データの計算が終了し
なかった場合、現在表示中と同じ動画データを表示し続
ける。
22に起動命令を送って動画データの計算を先行させ、
計算結果蓄積手段28に一定量の計算結果、例えば1フ
レーム分の計算結果が蓄積されてから表示手段24に起
動命令を送って動画データの表示を開始させる。動画デ
ータを等間隔で表示する場合、制御手段26は、予め定
めた一定時間Td ごとに表示手段24に表示命令を送っ
て一定の時間間隔で動画データを切替表示する。この場
合、表示手段24による動画データの表示中に、計算手
段22で次の表示に使用する動画データの計算が終了し
なかった場合、現在表示中と同じ動画データを表示し続
ける。
【0009】また一定の表示時間Td のあいだに表示手
段24による動画データの表示処理が終了しない場合
は、表示手段24による表示処理を強制的に打ち切って
次の動画データの表示に移行させる。計算結果蓄積手段
28には、計算手段22による動画データの計算結果
を、表示関数名と該関数表示名で指定されるデータを含
んだデータ構造体として記憶することが望ましい。この
場合、表示手段24は、計算結果蓄積手段からデータ構
造体を順番に読み出し、その中の表示関数名に従ってデ
ータの表示処理を繰り返す。
段24による動画データの表示処理が終了しない場合
は、表示手段24による表示処理を強制的に打ち切って
次の動画データの表示に移行させる。計算結果蓄積手段
28には、計算手段22による動画データの計算結果
を、表示関数名と該関数表示名で指定されるデータを含
んだデータ構造体として記憶することが望ましい。この
場合、表示手段24は、計算結果蓄積手段からデータ構
造体を順番に読み出し、その中の表示関数名に従ってデ
ータの表示処理を繰り返す。
【0010】計算手段22による動画データの計算と、
表示手段24による動画データの表示は、基本的にフレ
ーム単位に行われる。また計算手段22、表示手段2
4、および制御手段26は、計算機上のオペレーティン
グシステムで実現されるマルチプロセスで実行される。
表示手段24による動画データの表示は、基本的にフレ
ーム単位に行われる。また計算手段22、表示手段2
4、および制御手段26は、計算機上のオペレーティン
グシステムで実現されるマルチプロセスで実行される。
【0011】
【作用】本発明にあっては、データ生成を行う計算プロ
セスとデータ表示を行う表示プロセスに分割し、2つの
プロセスで計算と表示を同時に並行して行うマルチプロ
セス処理とする。計算プロセスと表示プロセスの間に
は、計算結果を格納するバッファとしての計算結果格納
部が設けられ、計算プロセスと表示プロセス間でデータ
のやりとりを行う。
セスとデータ表示を行う表示プロセスに分割し、2つの
プロセスで計算と表示を同時に並行して行うマルチプロ
セス処理とする。計算プロセスと表示プロセスの間に
は、計算結果を格納するバッファとしての計算結果格納
部が設けられ、計算プロセスと表示プロセス間でデータ
のやりとりを行う。
【0012】ここで、TicをフレームFiの動画の計算
に要する時間、TdiをフレームFiを表示するのに要す
る時間とすると、従来の逐次処理に必要な表示時間が、 となるのに対し、本発明では、計算プロセスが先行し、
計算バッファの量が十分で待ち合わせ時間が発生しない
場合、 となる。すなわち、本発明の並行処理は従来の逐次処理
に対し半分の処理時間に短縮できる。
に要する時間、TdiをフレームFiを表示するのに要す
る時間とすると、従来の逐次処理に必要な表示時間が、 となるのに対し、本発明では、計算プロセスが先行し、
計算バッファの量が十分で待ち合わせ時間が発生しない
場合、 となる。すなわち、本発明の並行処理は従来の逐次処理
に対し半分の処理時間に短縮できる。
【0013】また通常の動画表示にあっては、例えば1
秒当り30フレームというように動画を一定の時間間隔
で表示する必要がある。この場合、本発明は、計算プロ
セスと表示プロセスを時間制御手段で制御する。すなわ
ち、一定の時間間隔で表示プロセスに表示命令を送るこ
とによって等間隔の表示を行う。表示時間内に計算プロ
セスが終了しない場合は、現在表示中の画像を続けて表
示させる。逆に、表示プロセスが一定の表示時間内に表
示を終了しない場合は、表示プロセスに表示の打切りを
指示する。
秒当り30フレームというように動画を一定の時間間隔
で表示する必要がある。この場合、本発明は、計算プロ
セスと表示プロセスを時間制御手段で制御する。すなわ
ち、一定の時間間隔で表示プロセスに表示命令を送るこ
とによって等間隔の表示を行う。表示時間内に計算プロ
セスが終了しない場合は、現在表示中の画像を続けて表
示させる。逆に、表示プロセスが一定の表示時間内に表
示を終了しない場合は、表示プロセスに表示の打切りを
指示する。
【0014】更に本発明にあっては、計算結果蓄積手段
に計算プロセスの計算結果として書込まれるデータ構造
体として、通常のデータに加えて表示関数名を含めてい
る。このように表示関数名がデータに含まれていると、
表示処理を実行する側で、単一の関数で異なるデータを
扱うことができ、複雑な場合分けも必要ないので扱いが
簡単になる。
に計算プロセスの計算結果として書込まれるデータ構造
体として、通常のデータに加えて表示関数名を含めてい
る。このように表示関数名がデータに含まれていると、
表示処理を実行する側で、単一の関数で異なるデータを
扱うことができ、複雑な場合分けも必要ないので扱いが
簡単になる。
【0015】
【実施例】図2はコンピュータ・グラフィックスとして
実現される本発明の動画生成装置のハードウェア構成の
一例を示す。図2において、プロセッサユニット10は
同時に並行して2以上のプロセッサを実行可能なものを
使用する。プロセッサユニット10のバス20には主記
憶ユニット12およびファイルユニット14が接続され
る。更にプロセッサユニット10のバス20にはグラフ
ィックス・アクセラレータ16が接続され、動画像をカ
ラーディスプレイ18に表示できるようにしている。
実現される本発明の動画生成装置のハードウェア構成の
一例を示す。図2において、プロセッサユニット10は
同時に並行して2以上のプロセッサを実行可能なものを
使用する。プロセッサユニット10のバス20には主記
憶ユニット12およびファイルユニット14が接続され
る。更にプロセッサユニット10のバス20にはグラフ
ィックス・アクセラレータ16が接続され、動画像をカ
ラーディスプレイ18に表示できるようにしている。
【0016】このようなハードウェア構成は本発明の動
画生成装置の基本的なものであり、これに加えて編集作
業のためにオペレータとの間のやり取りを行うキーボー
ド、マウス、ポインティングデバイスなどのユーザイン
タフェース、プリンタなどのハードウェアが必要に応じ
て適宜に設けられる。プロセッサユニット10にはオペ
レーティングシステムとして実現される本発明の動画生
成のための処理プロセスを実現する手段として、計算部
22、表示部24および時間制御部26が設けられる。
計算部22はファイルユニット14などに格納されたデ
ータベースを使用して、表示しようとするある時間にお
ける物体の位置や形状などを仮想的な3次元空間におい
て計算して、動画データを求める。
画生成装置の基本的なものであり、これに加えて編集作
業のためにオペレータとの間のやり取りを行うキーボー
ド、マウス、ポインティングデバイスなどのユーザイン
タフェース、プリンタなどのハードウェアが必要に応じ
て適宜に設けられる。プロセッサユニット10にはオペ
レーティングシステムとして実現される本発明の動画生
成のための処理プロセスを実現する手段として、計算部
22、表示部24および時間制御部26が設けられる。
計算部22はファイルユニット14などに格納されたデ
ータベースを使用して、表示しようとするある時間にお
ける物体の位置や形状などを仮想的な3次元空間におい
て計算して、動画データを求める。
【0017】計算部22における動画データの計算処理
はフレーム単位(1画面単位)に行われる。計算部22
で計算により生成された動画データは、主記憶ユニット
12に確保している計算バッファとして機能する計算結
果蓄積部28に格納される。なお計算結果蓄積部28は
主記憶ユニット12に設けてもよいし、またファイルユ
ニット14の中に設けるようにしてもよい。
はフレーム単位(1画面単位)に行われる。計算部22
で計算により生成された動画データは、主記憶ユニット
12に確保している計算バッファとして機能する計算結
果蓄積部28に格納される。なお計算結果蓄積部28は
主記憶ユニット12に設けてもよいし、またファイルユ
ニット14の中に設けるようにしてもよい。
【0018】プロセッサユニット10に設けられた表示
部24は、主記憶ユニット12の計算結果蓄積部28に
格納された計算部22による動画データを読み出し、3
次元空間における位置や形状として求められている物体
の動画データを、ある視点から見た2次元の投影データ
に変換し、描画する物体の基本となる構成要素の集まり
でなる描画データを生成する。
部24は、主記憶ユニット12の計算結果蓄積部28に
格納された計算部22による動画データを読み出し、3
次元空間における位置や形状として求められている物体
の動画データを、ある視点から見た2次元の投影データ
に変換し、描画する物体の基本となる構成要素の集まり
でなる描画データを生成する。
【0019】この表示部24で生成される描画データ
は、例えば3次元CADなどでよく使われているグラフ
ィックス・ライブラリのPHIGS(Programmer´s Hi
erarchical Interactive Graphics Standard )に相当
する。即ち、PHIGSにあっては、描画する物体の基
本となる構成をセントラル・ストラクチャストアという
一種のデータベースに階層的に格納し、これをディスプ
レイリストと呼んでいる。表示部24で描画データとし
て求められたディスプレイリストに基づく実際の描画
は、グラフィックス・アクセラレータ16で実現され
る。
は、例えば3次元CADなどでよく使われているグラフ
ィックス・ライブラリのPHIGS(Programmer´s Hi
erarchical Interactive Graphics Standard )に相当
する。即ち、PHIGSにあっては、描画する物体の基
本となる構成をセントラル・ストラクチャストアという
一種のデータベースに階層的に格納し、これをディスプ
レイリストと呼んでいる。表示部24で描画データとし
て求められたディスプレイリストに基づく実際の描画
は、グラフィックス・アクセラレータ16で実現され
る。
【0020】更に表示部24にあっては、各種のレンダ
リングに関する計算を実行する。レンダリングの一般的
なものとしては、モデリング変換による形状変形、色計
算による着色、視野計算による見る範囲の変更、クリッ
ピングによる領域の制限、座標変換による見る方向の変
更、アンチェリアシングとして行われるぎざぎざの除
去、フラット・シェージングなどのレンダリング処理が
ある。
リングに関する計算を実行する。レンダリングの一般的
なものとしては、モデリング変換による形状変形、色計
算による着色、視野計算による見る範囲の変更、クリッ
ピングによる領域の制限、座標変換による見る方向の変
更、アンチェリアシングとして行われるぎざぎざの除
去、フラット・シェージングなどのレンダリング処理が
ある。
【0021】更に高品位のレンダリングとして濃淡の色
表現に関するフォン・シェーディング、透明感の表現に
関するαブレンディング、光線の影響を計算して陰影や
光の反射などを表現するラジオシティや、画像構成に関
するシャドウ・マッピング、バンプ・マッピング、リフ
レッション・マッピングなどの各種のマッピング、霧や
靄を表現するフォグ、粒子や雲の表現を行うパーティク
ル、自由曲面や軟体を表現するメタボールなどの各種の
アルゴリズムが含まれる。
表現に関するフォン・シェーディング、透明感の表現に
関するαブレンディング、光線の影響を計算して陰影や
光の反射などを表現するラジオシティや、画像構成に関
するシャドウ・マッピング、バンプ・マッピング、リフ
レッション・マッピングなどの各種のマッピング、霧や
靄を表現するフォグ、粒子や雲の表現を行うパーティク
ル、自由曲面や軟体を表現するメタボールなどの各種の
アルゴリズムが含まれる。
【0022】なお、表示部24における負担を軽減する
ためには、OSで実現される各種のレンダリング処理
を、グラフィックス・アクセラレータ16側に設けるよ
うにしてもよい。グラフィックス・アクセラレータ16
はプロセッサユニット10により求められた描画データ
例えばディスプレイリストを読み出して、物体を表現す
る微小なポリゴンの頂点座標を含む所謂ポリゴンデータ
に変換する。続いてポリゴンデータの各頂点の画素デー
タを生成し、更に頂点の画素データの間を補間する画素
データを生成して、最終的に動画画像のフレームドット
パターンを生成し、カラーディスプレイ18にフレーム
単位に動画像を表示する。カラーディスプレイ18の動
画表示において、違和感なく滑らかな動きの動画を見せ
るためには、1秒間当たり30フレーム以上の表示速度
が要求される。
ためには、OSで実現される各種のレンダリング処理
を、グラフィックス・アクセラレータ16側に設けるよ
うにしてもよい。グラフィックス・アクセラレータ16
はプロセッサユニット10により求められた描画データ
例えばディスプレイリストを読み出して、物体を表現す
る微小なポリゴンの頂点座標を含む所謂ポリゴンデータ
に変換する。続いてポリゴンデータの各頂点の画素デー
タを生成し、更に頂点の画素データの間を補間する画素
データを生成して、最終的に動画画像のフレームドット
パターンを生成し、カラーディスプレイ18にフレーム
単位に動画像を表示する。カラーディスプレイ18の動
画表示において、違和感なく滑らかな動きの動画を見せ
るためには、1秒間当たり30フレーム以上の表示速度
が要求される。
【0023】プロセッサユニット10に設けた時間制御
部26は、計算部22と表示部24による同時並列的な
処理の手順を制御する。動画生成の開始は計算部22に
よる動画データの計算処理を先行させる。即ち、オペレ
ータなどからの動画生成の起動コマンドを受けると、時
間制御部26は計算部22に起動命令を発行し、動画デ
ータの計算を先行して開始させる。
部26は、計算部22と表示部24による同時並列的な
処理の手順を制御する。動画生成の開始は計算部22に
よる動画データの計算処理を先行させる。即ち、オペレ
ータなどからの動画生成の起動コマンドを受けると、時
間制御部26は計算部22に起動命令を発行し、動画デ
ータの計算を先行して開始させる。
【0024】主記憶ユニット12の計算結果蓄積部28
に、先行する計算部22より一定量の動画データの計算
結果が格納されると、時間制御部26は表示部24に起
動命令を発行して表示処理を開始させる。具体的には、
計算結果蓄積部28に1フレーム分の動画データの計算
結果が蓄積されたときに、表示部24に起動命令を発行
して表示処理を開始させる。
に、先行する計算部22より一定量の動画データの計算
結果が格納されると、時間制御部26は表示部24に起
動命令を発行して表示処理を開始させる。具体的には、
計算結果蓄積部28に1フレーム分の動画データの計算
結果が蓄積されたときに、表示部24に起動命令を発行
して表示処理を開始させる。
【0025】更に時間制御部26は、この実施例にあっ
ては表示部24による動画像の表示間隔が等間隔となる
ように時間制御を行っている。具体的には、カラーディ
スプレイ18に表示する動画像の表示速度が1秒当たり
30フレームとなるように、表示部24に対し表示命令
を発行する。このため、時間制御部26による設定時間
内に計算部22による次のフレームの動画データの計算
結果が得られない場合、即ち計算部22における動画デ
ータの計算に時間がかかっている場合には、表示部24
に対し次のフレームについても、現在処理している動画
像と同じ表示を行わせる。逆に、表示部24による動画
像の表示処理が時間制御部26への設定時間を越えても
終了しない場合には、設定時間に達した時点で表示部2
4による表示処理を打ち切って、次のフレームの表示処
理に移行させる。
ては表示部24による動画像の表示間隔が等間隔となる
ように時間制御を行っている。具体的には、カラーディ
スプレイ18に表示する動画像の表示速度が1秒当たり
30フレームとなるように、表示部24に対し表示命令
を発行する。このため、時間制御部26による設定時間
内に計算部22による次のフレームの動画データの計算
結果が得られない場合、即ち計算部22における動画デ
ータの計算に時間がかかっている場合には、表示部24
に対し次のフレームについても、現在処理している動画
像と同じ表示を行わせる。逆に、表示部24による動画
像の表示処理が時間制御部26への設定時間を越えても
終了しない場合には、設定時間に達した時点で表示部2
4による表示処理を打ち切って、次のフレームの表示処
理に移行させる。
【0026】これに対し、計算部22は時間制御部26
による時間制御を受けておらず、動画データの計算時間
は、動画内容に応じフレームごとに異なった計算時間と
なる。図3は図2のハードウェア構成で実現される本発
明の動画生成装置の機能ブロックを示している。図3に
おいて、時間制御部26が計算部22、表示部24の全
体的な制御を行っている。なお表示部24の機能には、
図2に示したグラフィックス・アクセラレータ16も含
まれる。
による時間制御を受けておらず、動画データの計算時間
は、動画内容に応じフレームごとに異なった計算時間と
なる。図3は図2のハードウェア構成で実現される本発
明の動画生成装置の機能ブロックを示している。図3に
おいて、時間制御部26が計算部22、表示部24の全
体的な制御を行っている。なお表示部24の機能には、
図2に示したグラフィックス・アクセラレータ16も含
まれる。
【0027】図4は図3の時間制御部26による動画像
の表示間隔を一定時間Td とした場合のタイムチャート
を示している。なお図4はnフレーム分の動画像の生成
を例にとっている。図3において時間制御部26は、ま
ず計算部22に起動命令を発行し、動画データの計算処
理を先行させる。そのため、図4に示すように第1フレ
ームF1の計算処理が行われ、この計算時間はTc1とな
る。第1フレームF1の計算終了により計算結果が計算
結果蓄積部28に格納されると、時間制御部26は表示
部24に起動命令を発行し、第1フレームF1の表示処
理を開始させる。
の表示間隔を一定時間Td とした場合のタイムチャート
を示している。なお図4はnフレーム分の動画像の生成
を例にとっている。図3において時間制御部26は、ま
ず計算部22に起動命令を発行し、動画データの計算処
理を先行させる。そのため、図4に示すように第1フレ
ームF1の計算処理が行われ、この計算時間はTc1とな
る。第1フレームF1の計算終了により計算結果が計算
結果蓄積部28に格納されると、時間制御部26は表示
部24に起動命令を発行し、第1フレームF1の表示処
理を開始させる。
【0028】表示部24における第1フレームF1の表
示処理の時間は、時間制御部26で開始されており、予
め設定したTd に達すると新たな表示命令を発行して、
次の第2フレームF2の表示処理に切り替える。一方、
計算部22にあっては、第1フレームF1の計算終了に
続いて、ある時間間隔を経た第2フレームF2の動画デ
ータの計算を開始しており、この場合、第1フレームF
1の表示を行っている表示時間Td に達する前に第2フ
レームF2の計算が終了している。
示処理の時間は、時間制御部26で開始されており、予
め設定したTd に達すると新たな表示命令を発行して、
次の第2フレームF2の表示処理に切り替える。一方、
計算部22にあっては、第1フレームF1の計算終了に
続いて、ある時間間隔を経た第2フレームF2の動画デ
ータの計算を開始しており、この場合、第1フレームF
1の表示を行っている表示時間Td に達する前に第2フ
レームF2の計算が終了している。
【0029】このため、表示部24にあっては、第2フ
レームの表示開始に対する表示命令を受けると、直ちに
計算結果蓄積部28より第2フレームF2の計算結果を
取り出して表示処理を開始するようになる。次の第3フ
レームF3については、動画データの計算に時間がかか
っており、第2フレームF2の表示時間Td が終了して
も第3フレームの計算結果が得られていない。
レームの表示開始に対する表示命令を受けると、直ちに
計算結果蓄積部28より第2フレームF2の計算結果を
取り出して表示処理を開始するようになる。次の第3フ
レームF3については、動画データの計算に時間がかか
っており、第2フレームF2の表示時間Td が終了して
も第3フレームの計算結果が得られていない。
【0030】このように動画データの計算に時間がかか
る場合には、新たな時間制御部26からの表示命令に対
し、表示部24は前回と同じ第2フレームF2の表示処
理を行う。具体的には、図2のグラフィックス・アクセ
ラレータ16のフレームメモリに格納されている第2フ
レームF2の動画像を、続けてカラーディスプレイ18
に表示する。
る場合には、新たな時間制御部26からの表示命令に対
し、表示部24は前回と同じ第2フレームF2の表示処
理を行う。具体的には、図2のグラフィックス・アクセ
ラレータ16のフレームメモリに格納されている第2フ
レームF2の動画像を、続けてカラーディスプレイ18
に表示する。
【0031】第3フレームF3の計算にTc3時間がかか
って計算結果が得られると、2回続けて行った第2フレ
ームF2の表示後に、第3フレームF3の計算結果に基
づき第3フレームF3の表示処理を行う。以下同様に、
第4フレームF4から最終フレームFnまでの計算処理
と表示処理を同時並行的に行う。この結果、計算結果蓄
積部28の容量が十分でフレームごとの計算結果の読出
しに待ち合わせ時間が発生しないと仮定した場合、nフ
レーム分の動画表示時間は となる。即ち、図20に示した従来の計算プロセスと表
示プロセスの逐次処理に比べ、半分の処理時間で実現す
ることができる。
って計算結果が得られると、2回続けて行った第2フレ
ームF2の表示後に、第3フレームF3の計算結果に基
づき第3フレームF3の表示処理を行う。以下同様に、
第4フレームF4から最終フレームFnまでの計算処理
と表示処理を同時並行的に行う。この結果、計算結果蓄
積部28の容量が十分でフレームごとの計算結果の読出
しに待ち合わせ時間が発生しないと仮定した場合、nフ
レーム分の動画表示時間は となる。即ち、図20に示した従来の計算プロセスと表
示プロセスの逐次処理に比べ、半分の処理時間で実現す
ることができる。
【0032】図5のフローチャートは図3の時間制御部
26による処理動作の詳細を示す。ここでFはフレーム
番号、tは表示開始からの経過時間、dtは表示の時間
間隔を表わす。図5において、動画生成処理を開始する
と、まずステップS1で、フレーム番号F1およびt=
0にセットする初期化処理を行う。次にステップS2
で、計算部22および表示部24を起動して動作状態と
する。ここで計算部22と表示部24は独立した処理単
位であるが、並行処理が可能である。例えば、OSとし
てUNIXを用いる場合には、これらを別々のプロセス
とし、マルチプロセス処理を行う。
26による処理動作の詳細を示す。ここでFはフレーム
番号、tは表示開始からの経過時間、dtは表示の時間
間隔を表わす。図5において、動画生成処理を開始する
と、まずステップS1で、フレーム番号F1およびt=
0にセットする初期化処理を行う。次にステップS2
で、計算部22および表示部24を起動して動作状態と
する。ここで計算部22と表示部24は独立した処理単
位であるが、並行処理が可能である。例えば、OSとし
てUNIXを用いる場合には、これらを別々のプロセス
とし、マルチプロセス処理を行う。
【0033】次にステップS3で、計算部22に計算を
開始させるように計算開始命令を送る。この計算開始命
令の送出は、独立して並行に処理を行うことのできる処
理単位にメッセージを送る方法により実現できる。例え
ばUNIXの場合は、プロセス間通信によって計算部2
2に計算開始命令を送ることができる。次のステップS
4にあっては、計算開始命令により計算動作を開始した
計算部22による計算結果としての動画データが、計算
結果蓄積部28に、ある指定された量、蓄積されたかど
うかをチェックしている。具体的には、1フレーム分の
計算結果が計算結果蓄積部28に蓄積されたか否かチェ
ックしている。指定された量のデータが蓄積されていな
い場合には、ステップS5で、ある時間だけ待った後、
再びステップS4の指定量のデータ蓄積のチェックを行
う。
開始させるように計算開始命令を送る。この計算開始命
令の送出は、独立して並行に処理を行うことのできる処
理単位にメッセージを送る方法により実現できる。例え
ばUNIXの場合は、プロセス間通信によって計算部2
2に計算開始命令を送ることができる。次のステップS
4にあっては、計算開始命令により計算動作を開始した
計算部22による計算結果としての動画データが、計算
結果蓄積部28に、ある指定された量、蓄積されたかど
うかをチェックしている。具体的には、1フレーム分の
計算結果が計算結果蓄積部28に蓄積されたか否かチェ
ックしている。指定された量のデータが蓄積されていな
い場合には、ステップS5で、ある時間だけ待った後、
再びステップS4の指定量のデータ蓄積のチェックを行
う。
【0034】この指定量のデータ蓄積を待つステップS
4の処理は、一定時間として設定した表示の時間間隔d
tを越えて動画データの計算に時間がかかるような場合
に、動画データの計算処理を先行させる役割を果たす。
即ち、表示時間間隔dtを越えて動画データの計算に時
間がかかっても、動画データの計算を打ち切ることな
く、表示の時間間隔dtを越える時間に亘る動画データ
の計算処理を可能とする。
4の処理は、一定時間として設定した表示の時間間隔d
tを越えて動画データの計算に時間がかかるような場合
に、動画データの計算処理を先行させる役割を果たす。
即ち、表示時間間隔dtを越えて動画データの計算に時
間がかかっても、動画データの計算を打ち切ることな
く、表示の時間間隔dtを越える時間に亘る動画データ
の計算処理を可能とする。
【0035】ステップS4で、指定された量の計算結果
のデータが計算結果蓄積部28に蓄積されたことが判別
されると、ステップS6に進み、フレーム番号Fの値を
1つ大きくする。また表示開始からの経過時間tを表示
の時間dtだけ進める。この結果、フレーム番号Fは次
のフレームを示し、また経過時間tは現在のフレームの
表示終了予定時刻を表わすことになる。
のデータが計算結果蓄積部28に蓄積されたことが判別
されると、ステップS6に進み、フレーム番号Fの値を
1つ大きくする。また表示開始からの経過時間tを表示
の時間dtだけ進める。この結果、フレーム番号Fは次
のフレームを示し、また経過時間tは現在のフレームの
表示終了予定時刻を表わすことになる。
【0036】続いてステップS7で、計算結果蓄積部2
8に計算結果のデータが入っているか否か調べる。計算
結果のデータがない場合には新たな計算結果に基づく新
たな動画表示ができないので、ステップS8で、次のフ
レームの表示開始時刻まで待って、ステップS6に戻
り、現在フレームの表示内容をそのままにしておく。計
算結果蓄積部28に計算結果が入っている場合には、ス
テップS9に進み、表示部24に表示命令を送る。続い
てステップS10で、現在時刻がステップS6で設定し
た表示終了予定時刻tに達するまで、ステップS11
の、ある時間待つ処理を繰り返す。現在時刻が表示終了
予定時刻tに達すると、ステップS12に進み、表示部
24にそのフレームの表示終了を命令する。これによ
り、1フレーム分の動画表示が終了する。
8に計算結果のデータが入っているか否か調べる。計算
結果のデータがない場合には新たな計算結果に基づく新
たな動画表示ができないので、ステップS8で、次のフ
レームの表示開始時刻まで待って、ステップS6に戻
り、現在フレームの表示内容をそのままにしておく。計
算結果蓄積部28に計算結果が入っている場合には、ス
テップS9に進み、表示部24に表示命令を送る。続い
てステップS10で、現在時刻がステップS6で設定し
た表示終了予定時刻tに達するまで、ステップS11
の、ある時間待つ処理を繰り返す。現在時刻が表示終了
予定時刻tに達すると、ステップS12に進み、表示部
24にそのフレームの表示終了を命令する。これによ
り、1フレーム分の動画表示が終了する。
【0037】続いてステップS13で、動画表示の終了
の有無をチェックする。動画表示の終了はオペレータに
よるコマンドあるいは最終フレームの表示終了で認識さ
れる。動画表示の終了でなかった場合には、再びステッ
プS6に戻り、次のフレームの表示処理を行う。ステッ
プS13で動画表示の終了を判別した場合には、ステッ
プS14で、計算部22に計算の終了命令を送り、ステ
ップS15で、計算部22および表示部24の終了化処
理を行って、一連の処理を終える。
の有無をチェックする。動画表示の終了はオペレータに
よるコマンドあるいは最終フレームの表示終了で認識さ
れる。動画表示の終了でなかった場合には、再びステッ
プS6に戻り、次のフレームの表示処理を行う。ステッ
プS13で動画表示の終了を判別した場合には、ステッ
プS14で、計算部22に計算の終了命令を送り、ステ
ップS15で、計算部22および表示部24の終了化処
理を行って、一連の処理を終える。
【0038】図6のフローチャートは図3に示した本発
明の計算部22の処理動作を示す。図6において、まず
ステップS1で、時間制御部26より計算開始命令がき
ているかどうか調べる。計算開始命令がきていると、ス
テップS2に進み、計算終了命令がきているかどうか調
べる。計算終了命令がきていなければ、ステップS3に
進み、1フレーム分の動画データの計算処理を実行す
る。
明の計算部22の処理動作を示す。図6において、まず
ステップS1で、時間制御部26より計算開始命令がき
ているかどうか調べる。計算開始命令がきていると、ス
テップS2に進み、計算終了命令がきているかどうか調
べる。計算終了命令がきていなければ、ステップS3に
進み、1フレーム分の動画データの計算処理を実行す
る。
【0039】このステップS3における動画データの計
算処理は、例えば図7に示すようになる。図7(A)は
第1フレームF1の動画データの計算結果を模式的に示
している。なお実際は3次元空間の計算であるが、説明
を簡単にするため2次元空間で表している。図7(A)
にあっては、転がってきたボール32が落下する直前の
画像であり、落下後に、軌跡34に示すように弾む動画
を予定している。
算処理は、例えば図7に示すようになる。図7(A)は
第1フレームF1の動画データの計算結果を模式的に示
している。なお実際は3次元空間の計算であるが、説明
を簡単にするため2次元空間で表している。図7(A)
にあっては、転がってきたボール32が落下する直前の
画像であり、落下後に、軌跡34に示すように弾む動画
を予定している。
【0040】このような場合、ボール32が落下した後
の運動軌跡34について、予め運動方程式が設定されて
おり、各フレームにおける時刻が決まると、運動方程式
の解として運動軌跡34上のボール32の位置が決ま
る。例えば図7(B),(C)に示す第2フレームF
2,第3フレームF3の図7(A)の第1フレームF1
からの経過時間t2,t3が決まれば、運動軌跡34の
運動方程式にt2,t3を代入することで、第2フレー
ムF2,第3フレームF3でのボール32の位置P2,
P3を一義的に決めることができる。
の運動軌跡34について、予め運動方程式が設定されて
おり、各フレームにおける時刻が決まると、運動方程式
の解として運動軌跡34上のボール32の位置が決ま
る。例えば図7(B),(C)に示す第2フレームF
2,第3フレームF3の図7(A)の第1フレームF1
からの経過時間t2,t3が決まれば、運動軌跡34の
運動方程式にt2,t3を代入することで、第2フレー
ムF2,第3フレームF3でのボール32の位置P2,
P3を一義的に決めることができる。
【0041】更に、ボール32のデータとしては球の方
程式を準備し、ボール32を特定するために中心座標と
半径を各動画データごとに求めればよい。更に背景につ
いては各フレームごとに変化しないことから、固定的な
データとして生成する。再び図6を参照するに、ステッ
プS3で1フレーム分の動画データの計算処理が済む
と、ステップS4に進み、計算結果蓄積部28にアクセ
ス可能かどうか調べる。アクセス可能であれば、ステッ
プS5で、計算結果蓄積部28への他のプロセスからの
アクセスを禁止し、計算部22で占有する。次にステッ
プS6で、計算結果蓄積部28に書込余地があるか否か
調べ、書込余地があれば、ステップS7で、計算結果の
書込みを行う。
程式を準備し、ボール32を特定するために中心座標と
半径を各動画データごとに求めればよい。更に背景につ
いては各フレームごとに変化しないことから、固定的な
データとして生成する。再び図6を参照するに、ステッ
プS3で1フレーム分の動画データの計算処理が済む
と、ステップS4に進み、計算結果蓄積部28にアクセ
ス可能かどうか調べる。アクセス可能であれば、ステッ
プS5で、計算結果蓄積部28への他のプロセスからの
アクセスを禁止し、計算部22で占有する。次にステッ
プS6で、計算結果蓄積部28に書込余地があるか否か
調べ、書込余地があれば、ステップS7で、計算結果の
書込みを行う。
【0042】計算結果の書込みが済むと、ステップS8
で、計算結果蓄積部28へのアクセスの禁止を解除す
る。そしてステップS9で、計算のステップを1つ進
め、次のフレームの動画生成時刻に切り替えてステップ
S2に戻る。一方、ステップS6で計算結果蓄積部28
に書込余地がなかった場合には、ステップS10に進
み、計算部22で獲得した計算結果蓄積部28へのアク
セス禁止を解除し、他のプロセスによる処理に開放す
る。続いてステップS11で、ある時間待って、再びス
テップS5に戻り、計算結果蓄積部28へのアクセス禁
止を行って、再度書込みを試みる。
で、計算結果蓄積部28へのアクセスの禁止を解除す
る。そしてステップS9で、計算のステップを1つ進
め、次のフレームの動画生成時刻に切り替えてステップ
S2に戻る。一方、ステップS6で計算結果蓄積部28
に書込余地がなかった場合には、ステップS10に進
み、計算部22で獲得した計算結果蓄積部28へのアク
セス禁止を解除し、他のプロセスによる処理に開放す
る。続いてステップS11で、ある時間待って、再びス
テップS5に戻り、計算結果蓄積部28へのアクセス禁
止を行って、再度書込みを試みる。
【0043】尚、計算結果蓄積部28に書込余地がなか
った場合には、時間制御部26などの他のプロセスによ
り表示処理が済んだフレーム分の計算結果を消去して空
スペースを確保する処理が、別途行われる。図8のフロ
ーチャートは図3の表示部24の処理動作を示す。図8
において、まずステップS1で、時間制御部26から表
示命令が送られてきているかどうかを調べる。表示命令
が送られてきていると、ステップS2に進み、計算結果
蓄積部28にアクセス可能かどうかを調べる。アクセス
可能であれば、ステップS3に進み、計算結果蓄積部2
8への他からのアクセスを禁止して、表示部24で占有
する。
った場合には、時間制御部26などの他のプロセスによ
り表示処理が済んだフレーム分の計算結果を消去して空
スペースを確保する処理が、別途行われる。図8のフロ
ーチャートは図3の表示部24の処理動作を示す。図8
において、まずステップS1で、時間制御部26から表
示命令が送られてきているかどうかを調べる。表示命令
が送られてきていると、ステップS2に進み、計算結果
蓄積部28にアクセス可能かどうかを調べる。アクセス
可能であれば、ステップS3に進み、計算結果蓄積部2
8への他からのアクセスを禁止して、表示部24で占有
する。
【0044】続いてステップS4で、計算結果蓄積部2
8から計算結果を読み出し、ステップS5で、計算結果
蓄積部28へのアクセス禁止を解除する。ステップS6
にあっては、計算結果蓄積部28からの読出結果に基づ
き、予め定めた設定時間dtだけ表示処理を行う。この
設定時間に亘る表示処理は、図5に示した時間制御部に
より管理されている。
8から計算結果を読み出し、ステップS5で、計算結果
蓄積部28へのアクセス禁止を解除する。ステップS6
にあっては、計算結果蓄積部28からの読出結果に基づ
き、予め定めた設定時間dtだけ表示処理を行う。この
設定時間に亘る表示処理は、図5に示した時間制御部に
より管理されている。
【0045】ステップS7にあっては、時間制御部から
表示終了命令が送られてきているかどうか調べる。表示
終了命令が送られてきていれば、一連の処理を終了す
る。表示終了命令がきていなければ、ステップS8に進
み、処理中のフレームの表示終了命令がきているか否か
調べる。処理中の表示終了命令がきていなければ、ステ
ップS9で、フレームの表示が完了したか否か調べ、完
了するまでステップS6からの処理を繰り返す。フレー
ムの表示が完了した場合には、ステップS1に戻り、次
の表示命令を待つ。
表示終了命令が送られてきているかどうか調べる。表示
終了命令が送られてきていれば、一連の処理を終了す
る。表示終了命令がきていなければ、ステップS8に進
み、処理中のフレームの表示終了命令がきているか否か
調べる。処理中の表示終了命令がきていなければ、ステ
ップS9で、フレームの表示が完了したか否か調べ、完
了するまでステップS6からの処理を繰り返す。フレー
ムの表示が完了した場合には、ステップS1に戻り、次
の表示命令を待つ。
【0046】次に本発明で用いる計算結果蓄積部28に
対する計算結果のデータ格納について説明する。今、図
9に示すような3次元空間の物体36のデータが計算部
22により生成されたとする。図10は図9の物体36
に関する計算データの一例を示す。この場合、物体36
の指定色は「red」であり、物体36の基準点Pの座
標(location)は、(x,y,z)=(0.
0,1.0,0.5)である。また、物体36の大きさ
を示すxyz方向のサイズ所謂スケール(scale)
は、x=1.0、y=0.5、z=0.3である。図1
0のように生成された物体の計算データは、図2に示し
たようにファイルユニット14あるいは主記憶ユニット
12(メモリ)に格納される。
対する計算結果のデータ格納について説明する。今、図
9に示すような3次元空間の物体36のデータが計算部
22により生成されたとする。図10は図9の物体36
に関する計算データの一例を示す。この場合、物体36
の指定色は「red」であり、物体36の基準点Pの座
標(location)は、(x,y,z)=(0.
0,1.0,0.5)である。また、物体36の大きさ
を示すxyz方向のサイズ所謂スケール(scale)
は、x=1.0、y=0.5、z=0.3である。図1
0のように生成された物体の計算データは、図2に示し
たようにファイルユニット14あるいは主記憶ユニット
12(メモリ)に格納される。
【0047】まずファイルユニットを計算結果蓄積部2
8として用いる場合を説明する。ファイルユニットに格
納する場合には、図11に示すような計算結果蓄積用の
ファイルを作成して計算結果を書き込む。このファイル
は色データ、位置X座標値、位置Y座標値、位置Z座標
値、X方向スパン値、Y方向スパン値およびZ方向スパ
ン値で構成される。
8として用いる場合を説明する。ファイルユニットに格
納する場合には、図11に示すような計算結果蓄積用の
ファイルを作成して計算結果を書き込む。このファイル
は色データ、位置X座標値、位置Y座標値、位置Z座標
値、X方向スパン値、Y方向スパン値およびZ方向スパ
ン値で構成される。
【0048】図10の計算結果を図11のファイルを作
成して格納する場合、図12の1つめのデータに示すデ
ータ構造をもつことになる。このような1フレームの動
画の生成に必要な1または複数の物体に関する計算結果
データが例えば図11のデータ構造をもって、図12に
示すように順番にファイルユニット14に格納されるこ
とになる。
成して格納する場合、図12の1つめのデータに示すデ
ータ構造をもつことになる。このような1フレームの動
画の生成に必要な1または複数の物体に関する計算結果
データが例えば図11のデータ構造をもって、図12に
示すように順番にファイルユニット14に格納されるこ
とになる。
【0049】次に図2の主記憶ユニット12に示したよ
うに、計算結果蓄積部28としてメモリを用いる場合を
説明する。本発明による動画生成のための計算部22お
よび表示部24がC言語で実現される場合には、C言語
の配列や構造体を用いてメモリに計算結果データを蓄積
する。図13はメモリに格納するためのデータ構造体の
一例を示す。このデータ構造体にあっては、1または複
数の可変長のデータ格納部に加えて、データ構造体の中
に表示処理に用いる関数名である表示関数名も含めて記
述したことを特徴とする。このように表示関数名がデー
タ構造体に含まれていると、データ構造体を読み出して
表示部24で表示処理を実行する際に単一の関数で異な
るデータを扱うことができ、複雑な場合分けも必要とし
ないことで表示処理を簡単にすることができる。
うに、計算結果蓄積部28としてメモリを用いる場合を
説明する。本発明による動画生成のための計算部22お
よび表示部24がC言語で実現される場合には、C言語
の配列や構造体を用いてメモリに計算結果データを蓄積
する。図13はメモリに格納するためのデータ構造体の
一例を示す。このデータ構造体にあっては、1または複
数の可変長のデータ格納部に加えて、データ構造体の中
に表示処理に用いる関数名である表示関数名も含めて記
述したことを特徴とする。このように表示関数名がデー
タ構造体に含まれていると、データ構造体を読み出して
表示部24で表示処理を実行する際に単一の関数で異な
るデータを扱うことができ、複雑な場合分けも必要とし
ないことで表示処理を簡単にすることができる。
【0050】図14は図10に示した計算結果データに
ついて、図13のデータ構造体を使用してメモリに格納
する場合のデータ構造を示している。この場合には、3
つのデータ構造体38,40,42が生成され、「se
t−color」「set−location」および
「set−scale」が表示実行のための関数であ
る。その後に続く「red」や数値が、各関数が与える
設定値を表わしている。
ついて、図13のデータ構造体を使用してメモリに格納
する場合のデータ構造を示している。この場合には、3
つのデータ構造体38,40,42が生成され、「se
t−color」「set−location」および
「set−scale」が表示実行のための関数であ
る。その後に続く「red」や数値が、各関数が与える
設定値を表わしている。
【0051】図15は図14に示すデータ構造体を用い
た本発明の表示部24における表示処理を示している。
図15において、まずデータ構造体をステップS1で1
つ取り出し、データ構造体の中の表示関数名を、ステッ
プS2で読む。最初のデータ構造体38の表示関数名は
「set−color」であることから、これがステッ
プS3で判別され、ステップS6で、表示関数名に続く
設定値「red」に従った色の処理が行われる。
た本発明の表示部24における表示処理を示している。
図15において、まずデータ構造体をステップS1で1
つ取り出し、データ構造体の中の表示関数名を、ステッ
プS2で読む。最初のデータ構造体38の表示関数名は
「set−color」であることから、これがステッ
プS3で判別され、ステップS6で、表示関数名に続く
設定値「red」に従った色の処理が行われる。
【0052】次にデータ構造体40が取り出され、この
場合、表示関数名は「set−location」であ
ることが、ステップS5で判別され、ステップS6で、
表示関数名に続く位置座標(1.0,0.5,2.0)
に関する位置の処理がおこなわれる。更に次のデータ構
造体40の取出しについては、ステップS7で、表示関
数名「set−scale」が判別され、ステップS8
で、xyz方向の各スケール1.0,0.5,0.3に
応じたスケールの処理が行われる。
場合、表示関数名は「set−location」であ
ることが、ステップS5で判別され、ステップS6で、
表示関数名に続く位置座標(1.0,0.5,2.0)
に関する位置の処理がおこなわれる。更に次のデータ構
造体40の取出しについては、ステップS7で、表示関
数名「set−scale」が判別され、ステップS8
で、xyz方向の各スケール1.0,0.5,0.3に
応じたスケールの処理が行われる。
【0053】実際の動画データ生成にあっては、これ以
外にも多数の表示関数名があり、これらについて判別し
て、ステップS9で全てのデータ構造体の取出しが終了
するまで、処理を繰り返す。このような表示関数名をデ
ータ構造体に含む計算結果データをメモリを用いて蓄積
した場合には、表示を実行する表示部側でデータの種類
ごとに関数を作成する必要がなく、例えば「set」と
いう1つの関数で全てのデータを扱うことができる。
外にも多数の表示関数名があり、これらについて判別し
て、ステップS9で全てのデータ構造体の取出しが終了
するまで、処理を繰り返す。このような表示関数名をデ
ータ構造体に含む計算結果データをメモリを用いて蓄積
した場合には、表示を実行する表示部側でデータの種類
ごとに関数を作成する必要がなく、例えば「set」と
いう1つの関数で全てのデータを扱うことができる。
【0054】これに対し、もし計算結果データに表示関
数名が含まれていなかった場合には、読み出した計算結
果データについて、その都度データの型を調べて処理を
分けたり、また位置とスケールのようにデータ型が全く
同じ場合にはデータの型から判断できないので、予めデ
ータの順番を決めて判別するなどの複雑な処理を必要と
するが、本発明にあっては、表示関数名をデータ構造体
に含めたことで、このような複雑な処理が一切、不要と
できる。
数名が含まれていなかった場合には、読み出した計算結
果データについて、その都度データの型を調べて処理を
分けたり、また位置とスケールのようにデータ型が全く
同じ場合にはデータの型から判断できないので、予めデ
ータの順番を決めて判別するなどの複雑な処理を必要と
するが、本発明にあっては、表示関数名をデータ構造体
に含めたことで、このような複雑な処理が一切、不要と
できる。
【0055】図16は本発明による動画データ生成装置
の第2実施例を機能ブロックで示す。この第2実施例に
あっては、図3の第1実施例の時間制御部26の代わり
に単なる制御部30を設け、表示部24による表示間隔
を一定間隔とせずに、実際のデータ表示に要する時間を
そのまま反映させたことを特徴とする。この第2実施例
は、表示部24の処理性能が高いことで、動画表示に必
要な1秒間当たり30フレーム以上となる表示速度を越
える表示が常時発揮できるような場合に適用できる。
の第2実施例を機能ブロックで示す。この第2実施例に
あっては、図3の第1実施例の時間制御部26の代わり
に単なる制御部30を設け、表示部24による表示間隔
を一定間隔とせずに、実際のデータ表示に要する時間を
そのまま反映させたことを特徴とする。この第2実施例
は、表示部24の処理性能が高いことで、動画表示に必
要な1秒間当たり30フレーム以上となる表示速度を越
える表示が常時発揮できるような場合に適用できる。
【0056】図17は図16の第2実施例における計算
部22と表示部24の並行処理のタイムチャートを示し
ている。この場合にも、制御部30による命令を受けて
計算部22の計算処理が先行し、まず第1フレームF1
の動画データの計算を行う。第1フレームF1の計算が
済むと、計算結果は計算結果蓄積部28に書き込まれ、
続いて制御部30の命令で、表示部24による第1フレ
ームF1の表示処理が開始される。
部22と表示部24の並行処理のタイムチャートを示し
ている。この場合にも、制御部30による命令を受けて
計算部22の計算処理が先行し、まず第1フレームF1
の動画データの計算を行う。第1フレームF1の計算が
済むと、計算結果は計算結果蓄積部28に書き込まれ、
続いて制御部30の命令で、表示部24による第1フレ
ームF1の表示処理が開始される。
【0057】表示部24による表示時間は制御部30に
より管理されておらず、第1フレームF1の表示処理が
Td1時間で終了すると、次の第2フレームF2の表示処
理に切り替わる。この場合、第1フレームの表示時間T
d1の終了時点で計算部22による第2フレームF2の計
算結果が得られていることから、直ちに第2フレームF
2の表示処理に切り替わる。
より管理されておらず、第1フレームF1の表示処理が
Td1時間で終了すると、次の第2フレームF2の表示処
理に切り替わる。この場合、第1フレームの表示時間T
d1の終了時点で計算部22による第2フレームF2の計
算結果が得られていることから、直ちに第2フレームF
2の表示処理に切り替わる。
【0058】以下同様にして、計算部22および表示部
24のいずれについても、それぞれにおける実際の表示
時間より次のフレームの処理に移行する処理が最終フレ
ームFnまで繰り返される。図18は図16の第2実施
例に設けた制御部30の処理動作を示す。このフローチ
ャートは図5に示した時間制御部26のステップS10
〜S12の表示時間間隔の処理を除いたフローチャート
であり、この点以外は同じ処理となる。
24のいずれについても、それぞれにおける実際の表示
時間より次のフレームの処理に移行する処理が最終フレ
ームFnまで繰り返される。図18は図16の第2実施
例に設けた制御部30の処理動作を示す。このフローチ
ャートは図5に示した時間制御部26のステップS10
〜S12の表示時間間隔の処理を除いたフローチャート
であり、この点以外は同じ処理となる。
【0059】なお、本発明は実施例に示した数値による
限定は受けない。
限定は受けない。
【0060】
【発明の効果】以上説明してきたように本発明によれ
ば、動画データの計算と動画データの表示のマルチプロ
セスによる並行処理により、より短い時間間隔で動画表
示ができ、動画データをメモリなどに格納した後に読み
出して表示するバッチ処理によらなくとも、一定の時間
間隔での動画表示ができ、動画作成時の編集時にも完成
に近い状態で編集結果を確認でき、動画作成や編集の作
業を効率的に行うことができる。
ば、動画データの計算と動画データの表示のマルチプロ
セスによる並行処理により、より短い時間間隔で動画表
示ができ、動画データをメモリなどに格納した後に読み
出して表示するバッチ処理によらなくとも、一定の時間
間隔での動画表示ができ、動画作成時の編集時にも完成
に近い状態で編集結果を確認でき、動画作成や編集の作
業を効率的に行うことができる。
【図1】本発明の原理説明図
【図2】本発明が適用される装置構成の一例を示した説
明図
明図
【図3】表示を等間隔で行う本発明の第1実施例を示し
た機能ブロック図
た機能ブロック図
【図4】図3の計算部と表示部の並行処理を示したタイ
ムチャート
ムチャート
【図5】図3の時間制御部の処理動作を示したフローチ
ャート
ャート
【図6】図3の計算部の処理動作を示したフローチャー
ト
ト
【図7】動画データの計算例を示した説明図
【図8】図3の表示部の処理動作を示したフローチャー
ト
ト
【図9】本発明で求める3次元物体の説明図
【図10】図9の物体につき計算した動画データの説明
図
図
【図11】ファイルユニットに格納するデータ構造体の
説明図
説明図
【図12】ファイルユニットのデータ格納状態の説明図
【図13】メモリに格納するデータ構造体の説明図
【図14】図13のデータ構造体の具体例を示した説明
図
図
【図15】図14のデータ構造体を用いた表示処理のフ
ローチャート
ローチャート
【図16】表示時間間隔を可変長とした本発明の第2実
施例の機能ブロック図
施例の機能ブロック図
【図17】図16による計算部と表示部の並行処理を示
したフローチャート
したフローチャート
【図18】図16の制御部による処理動作を示したフロ
ーチャート
ーチャート
【図19】従来の動画データ生成処理を示した説明図
【図20】従来の計算プロセスと表示プロセスの逐次処
理を示したタイムチャート
理を示したタイムチャート
10:プロセッサユニット 12:主記憶ユニット 14:ファイルユニット 16:グラフィックス・アクセラレータ 18:カラーディスプレイ装置 20:バス 22:計算部 24:表示部 26:時間制御部 28:計算結果蓄積部 30:制御部 32:ボール 34:運動軌跡 36:物体 38,40,42:データ構造体
Claims (16)
- 【請求項1】動画データを計算して生成する計算過程
と、 前記計算過程で生成された動画データを記憶装置に蓄積
する計算結果蓄積過程と、 前記記憶装置から読みし出た動画データに基づき、前記
動画データの計算に並行して動画データを表示する表示
過程と、を備えたことを特徴とする動画生成方法。 - 【請求項2】請求項1記載の動画生成方法に於いて、最
初に前記計算過程による動画データの計算を先行させ、
前記計算結果蓄積過程で一定量の計算結果が蓄積されて
から前記表示過程による動画データの表示を開始させる
ことを特徴とする動画生成方法。 - 【請求項3】請求項1記載の動画生成方法に於いて、前
記表示過程は、予め定めた一定の時間間隔(Td )で動
画データを表示することを特徴とする動画生成方法。 - 【請求項4】請求項3記載の動画生成方法に於いて、前
記表示過程は、動画データの表示中に、前記計算過程で
次の表示に使用する動画データの計算が終了しなかった
場合、現在表示中と同じ動画データを表示し続けること
を特徴とする動画生成方法。 - 【請求項5】請求項3記載の動画生成方法に於いて、前
記表示過程は、一定時間(Td )のあいだに動画データ
の表示処理が終了しない場合は、該表示処理を強制的に
打ち切って次の動画データの表示に移行することを特徴
とする動画生成方法。 - 【請求項6】請求項1記載の動画生成方法に於いて、前
記計算結果蓄積過程は、前記計算過程で求めた動画デー
タの計算結果を、表示関数名と該関数表示名で指定され
るデータを含んだデータ構造体として記憶することを特
徴とする動画再生方法。 - 【請求項7】請求項6記載の動画生成方法に於いて、前
記表示過程は、前記計算結果蓄積過程で記憶装置に格納
された前記データ構造体を順番に読み出し、該データ構
造体の表示関数名に従ってデータの表示処理を繰り返す
ことを特徴とする動画再生方法。 - 【請求項8】請求項1乃至7記載の動画生成方法に於い
て、計算過程および表示過程を、計算機上のオペレーテ
ィングシステムで実現されるマルチプロセスで実行する
ことを特徴とする動画生成方法。 - 【請求項9】動画データを計算して生成する計算手段
(22)と、 前記計算手段(22)によって生成された動画データを
蓄積する計算結果蓄積手段(28)と、 前記計算結果蓄積手段(28)から読み出した動画デー
タに基づいて動画データを表示する表示手段(24)
と、 前記計算手段(22)と表示手段(24)の処理を並行
して行わせる制御手段(26)と、を備えたことを特徴
とする動画生成装置。 - 【請求項10】請求項9記載の動画生成装置に於いて、
前記制御手段(26)は、最初に前記計算手段(22)
に起動命令を送って動画データの計算を先行させ、前記
計算結果蓄積手段(28)に一定量の計算結果が蓄積さ
れてから前記表示手段(24)に起動命令を送って動画
データの表示を開始させることを特徴とする動画生成装
置。 - 【請求項11】請求項9記載の動画生成装置に於いて、
前記制御手段(26)は、予め定めた一定時間(Td )
ごとに前記表示手段(24)に表示命令を送って一定の
時間間隔で動画データを切替表示することを特徴とする
動画生成装置。 - 【請求項12】請求項11記載の動画生成装置に於い
て、前記制御手段(26)は、前記表示手段(24)に
よる動画データの表示中に、前記計算手段(22)で次
の表示に使用する動画データの計算が終了しなかった場
合、現在表示中と同じ動画データを表示し続けることを
特徴とする動画生成装置。 - 【請求項13】請求項11記載の動画生成装置に於い
て、前記制御手段(26)は、前記一定時間のあいだに
前記表示手段(24)による動画データの表示処理が終
了しない場合は、該表示手段(24)による表示処理を
強制的に打ち切って次の動画データの表示に移行させる
ことを特徴とする動画生成装置。 - 【請求項14】請求項9記載の動画生成装置に於いて、
前記計算結果蓄積手段(28)は、前記計算手段(2
2)による動画データの計算結果を、表示関数名と該関
数表示名で指定されるデータを含んだデータ構造体とし
て前記計算結果蓄積手段(28)に記憶することを特徴
とする動画再生装置。 - 【請求項15】請求項14記載の動画生成装置に於い
て、前記表示手段(24)は、前記計算結果蓄積手段
(22)に格納された前記データ構造体を順番に読み出
し、該データ構造体の表示関数名に従ってデータの表示
処理を繰り返すことを特徴とする動画再生装置。 - 【請求項16】請求項9乃至14記載の動画生成装置に
於いて、計算手段(22)、表示手段(24)、および
制御手段(26)を、計算機上のオペレーティングシス
テムで実現されるマルチプロセスで実行されることを特
徴とする動画生成装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6018105A JPH07225852A (ja) | 1994-02-15 | 1994-02-15 | 動画生成方法および装置 |
US08/707,910 US5673380A (en) | 1994-02-15 | 1996-09-03 | Parallel processing of calculation processor and display processor for forming moving computer graphic image in a real-time manner |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6018105A JPH07225852A (ja) | 1994-02-15 | 1994-02-15 | 動画生成方法および装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH07225852A true JPH07225852A (ja) | 1995-08-22 |
Family
ID=11962352
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6018105A Withdrawn JPH07225852A (ja) | 1994-02-15 | 1994-02-15 | 動画生成方法および装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US5673380A (ja) |
JP (1) | JPH07225852A (ja) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6434649B1 (en) | 1998-10-14 | 2002-08-13 | Hitachi, Ltd. | Data streamer |
US6560674B1 (en) | 1998-10-14 | 2003-05-06 | Hitachi, Ltd. | Data cache system |
US6608625B1 (en) | 1998-10-14 | 2003-08-19 | Hitachi, Ltd. | Three dimensional graphic processor |
US6347344B1 (en) * | 1998-10-14 | 2002-02-12 | Hitachi, Ltd. | Integrated multimedia system with local processor, data transfer switch, processing modules, fixed functional unit, data streamer, interface unit and multiplexer, all integrated on multimedia processor |
US6542782B1 (en) * | 1998-12-31 | 2003-04-01 | Z. Joseph Lu | Systems for generating and using a lookup table with process facility control systems and models of the same, and methods of operating such systems |
JP2000324437A (ja) * | 1999-05-13 | 2000-11-24 | Fuurie Kk | 映像データベースシステム |
KR100385233B1 (ko) * | 2000-03-14 | 2003-05-23 | 삼성전자주식회사 | 데이터 프로세싱 시스템의 익스포넌트 유닛 |
US7233331B2 (en) * | 2000-03-16 | 2007-06-19 | Square Enix Co., Ltd. | Parallel object task engine and processing method |
EP1461719A4 (en) * | 2001-12-04 | 2007-11-07 | Powerllel Corp | SYSTEM, METHOD AND ARCHITECTURE FOR PARALLEL PROCESSING |
US20050231512A1 (en) * | 2004-04-16 | 2005-10-20 | Niles Gregory E | Animation of an object using behaviors |
US7932909B2 (en) * | 2004-04-16 | 2011-04-26 | Apple Inc. | User interface for controlling three-dimensional animation of an object |
US20080055326A1 (en) * | 2006-09-05 | 2008-03-06 | Yun Du | Processing of Command Sub-Lists by Multiple Graphics Processing Units |
US8199155B2 (en) * | 2006-11-22 | 2012-06-12 | Nvidia Corporation | System, method, and computer program product for saving power in a multi-graphics processor environment |
US8253737B1 (en) * | 2007-05-17 | 2012-08-28 | Nvidia Corporation | System, method, and computer program product for generating a disparity map |
US20100117931A1 (en) * | 2008-11-10 | 2010-05-13 | Microsoft Corporation | Functional image representation |
JP5462305B2 (ja) * | 2012-03-12 | 2014-04-02 | 株式会社東芝 | 画像処理装置、画像処理方法およびそのプログラム |
KR101767927B1 (ko) * | 2012-11-01 | 2017-08-17 | 한화테크윈 주식회사 | 실시간 움직임 검출 방법 및 시스템 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5010515A (en) * | 1987-07-28 | 1991-04-23 | Raster Technologies, Inc. | Parallel graphics processor with workload distributing and dependency mechanisms and method for distributing workload |
US5224210A (en) * | 1989-07-28 | 1993-06-29 | Hewlett-Packard Company | Method and apparatus for graphics pipeline context switching in a multi-tasking windows system |
US5255211A (en) * | 1990-02-22 | 1993-10-19 | Redmond Productions, Inc. | Methods and apparatus for generating and processing synthetic and absolute real time environments |
US5299309A (en) * | 1992-01-02 | 1994-03-29 | Industrial Technology Research Institute | Fast graphics control system capable of simultaneously storing and executing graphics commands |
US5440746A (en) * | 1992-11-06 | 1995-08-08 | Seiko Epson Corporation | System and method for synchronizing processors in a parallel processing environment |
JPH06149757A (ja) * | 1992-11-10 | 1994-05-31 | Hitachi Ltd | 並列処理装置 |
US5388206A (en) * | 1992-11-13 | 1995-02-07 | The University Of North Carolina | Architecture and apparatus for image generation |
JPH06223147A (ja) * | 1993-01-27 | 1994-08-12 | Fujitsu Ltd | 図形表示処理システム |
US5392393A (en) * | 1993-06-04 | 1995-02-21 | Sun Microsystems, Inc. | Architecture for a high performance three dimensional graphics accelerator |
US5544283A (en) * | 1993-07-26 | 1996-08-06 | The Research Foundation Of State University Of New York | Method and apparatus for real-time volume rendering from an arbitrary viewing direction |
US5394519A (en) * | 1994-01-03 | 1995-02-28 | International Business Machines Corp. | Data processing apparatus for high resolution display in multiple virtual dos applications |
-
1994
- 1994-02-15 JP JP6018105A patent/JPH07225852A/ja not_active Withdrawn
-
1996
- 1996-09-03 US US08/707,910 patent/US5673380A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US5673380A (en) | 1997-09-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3184327B2 (ja) | 3次元グラフィックス処理方法及びその装置 | |
JPH07225852A (ja) | 動画生成方法および装置 | |
US7737982B2 (en) | Method and system for minimizing an amount of data needed to test data against subarea boundaries in spatially composited digital video | |
US5999187A (en) | Fly-through computer aided design method and apparatus | |
EP2051533B1 (en) | 3D image rendering apparatus and method | |
EP0702333A2 (en) | Method of drawing shadow and three-dimensional graphic computer system | |
US7295208B2 (en) | Translating layers into effect graphs in digital image processing | |
EP2347356A1 (en) | System and method for hybrid solid and surface modeling for computer-aided design environments | |
US10198788B2 (en) | Method and system of temporally asynchronous shading decoupled from rasterization | |
RU2680355C1 (ru) | Способ и система удаления невидимых поверхностей трёхмерной сцены | |
EP1031946B1 (en) | Recording medium,Image processing method and unit with integrated shaping model data | |
EP1083521B1 (en) | Method of and apparatus for rendering image, recording medium, and program | |
US20040186631A1 (en) | Storage medium storing a shadow volume generation program, game device, and shadow volume generation method | |
EP1331607B1 (en) | Recording medium which stores 3D image processing programm, 3D image processor, 3D image processing method, and video game machine | |
JP2003115055A (ja) | 画像生成装置 | |
JP2006092217A (ja) | メモリ制御方法、グラフィックプロセッサおよび情報処理装置 | |
Durand | The “TOON” project: requirements for a computerized 2D animation system | |
CN111275806A (zh) | 一种基于点的并行化实时渲染***及方法 | |
US6256048B1 (en) | Two-dimensional virtual camera | |
CN115167940A (zh) | 3d文件加载方法及装置 | |
JP3468985B2 (ja) | グラフィック描画装置、グラフィック描画方法 | |
US6633291B1 (en) | Method and apparatus for displaying an image | |
JPH07271998A (ja) | 立体表示方法および装置 | |
JP2000268200A (ja) | 表示要素立体化装置及びその方法 | |
JP3268667B2 (ja) | 対話式ポリゴン選択装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20010508 |