(57)【特許請求の範囲】
【請求項１】
解析対象の数式モデルが構築される三次元空間を分割した複数の部分空間毎に解析対象の挙動を所定の時間間隔毎にシミュレーションする複数の部分シミュレーション手段と、
前記複数の部分シミュレーション手段でシミュレーションされた複数の部分空間のシミュレーション結果の部分映像をそれぞれ生成する複数の部分映像生成手段と、
前記複数の部分映像生成手段で生成された部分映像を混合して全体映像を生成する全体映像生成手段と、
前記複数の部分映像生成手段が生成した前記複数の部分映像を前記全体映像生成手段にそれぞれ送る複数の部分映像送信経路と、
前記全体映像を表示する表示手段と、を備え、
前記部分シミュレーション手段は、部分空間を分割した複数のボクセルのボクセル値を演算し、
前記部分映像発生手段は、前記部分シミュレーション手段でシミュレーションされたボクセル値をマルチプル・シェアード重畳法により混合して部分映像を発生し、
前記全体映像生成手段は、送信された前記複数の部分映像を並列して受けて処理することを特徴とするシミュレーション装置。
【請求項２】
前記全体映像生成手段が、バイナリー・スペース・パーティショニング法により決定された優先度に基づいて前記部分映像生成手段で生成された部分映像を混合するものである請求項１に記載のシミュレーション装置。
【請求項３】
前記複数の部分映像は、１表示フレーム毎に前記優先度を示すデータをそれぞれ有する請求項２に記載のシミュレーション装置。
【請求項４】
前記優先度は、２進木によって表される請求項２に記載のシミュレーション装置。
【請求項５】
前記全体映像生成手段は、２つの部分映像を該２つの部分映像の隠顕関係による優先度に応じて混合し混合映像を発生する混合映像生成手段が階層的に積み重ねられた構成を有する請求項２に記載のシミュレーション装置。
【請求項６】
前記混合映像生成手段が、
２つの部分映像の優先度を判定する優先度判定手段と、
前記優先度判定手段における判定結果に基づいて２つの入力映像と２つの出力映像の対応関係を切替える切替え手段と、
前記切替え手段から出力される出力映像を混合方程式に基づいて混合し、混合映像を出力する映像混合手段とを備える請求項５に記載のシミュレーション装置。
【請求項７】
前記映像混合手段は、
次式により第１と第２の２つの部分映像を混合して第３の混合映像するものである請求項６に記載のシミュレーション装置。
ＩC＝ＡA＊ＩB＋ＩA
ＡC＝ＡA＊ＡB
ただし、ＩAは第１の部分映像の輝度、ＡAは第１の部分映像の透過率
ＩBは第２の部分映像の輝度、ＡBは第２の部分映像の透過率
ＩCは第３の部分映像の輝度、ＡCは第３の部分映像の透過率
【請求項８】
解析対象の数式モデルが構築される三次元空間を分割した複数の部分空間毎に解析対象の挙動を並列にシミュレーションする部分シミュレーション段階と、
前記部分シミュレーション段階でシミュレーションされた複数の部分空間のシミュレーション結果の複数の部分映像を並列に生成し、並列に出力する部分映像生成段階と、
並列に出力された前記複数の部分映像を混合して全体映像を生成する全体映像生成段階と、
前記全体映像生成段階で生成された全体映像を表示する表示段階と、を備え、
前記部分シミュレーション段階では、部分空間を分割した複数のボクセルのボクセル値を演算し、
前記部分映像生成段階では、前記部分シミュレーション段階でシミュレーションされたボクセル値をマルチプル・シェアード重畳法により混合して部分映像を生成することを特徴とするシミュレーション方法。
【請求項９】
前記全体映像生成段階では、バイナリー・スペース・パーティショニング法により決定された優先度に基づいて前記部分映像生成段階で生成された部分映像を混合する請求項８に記載のシミュレーション方法。
【請求項１０】
前記優先度は、２進木によって表される請求項９に記載のシミュレーション方法。
【請求項１１】
前記複数の部分映像は、１表示フレーム毎に前記優先度を示すデータそれぞれ有する請求項９に記載のシミュレーション方法。
【請求項１２】
前記全体映像生成段階では、２つの部分映像を該２つの部分映像の隠顕関係による優先度に応じて混合し混合映像を生成する混合映像生成段階を並列に階層的に行う請求項９に記載のシミュレーション方法。
【請求項１３】
前記混合映像生成段階は、
２つの部分映像の優先度を判定する優先度判定段階と、
前記優先度判定段階における判定結果に基づいて２つの入力映像と２つの出力映像の対応関係を切替える切替え段階と、
前記切替え段階から出力される出力映像を混合方程式に基づいて混合し、混合映像を出力する映像混合段階を備える請求項１２に記載のシミュレーション方法。
【請求項１４】
前記映像混合段階では、
次式により第１と第２の２つの部分映像を混合して第３の混合映像する請求項１３に記載のシミュレーション方法。
ＩC＝ＡA＊ＩB＋ＩA
ＡC＝ＡA＊ＡB
ただし、ＩAは第１の部分映像の輝度、ＡAは第１の部分映像の透過率
ＩBは第２の部分映像の輝度、ＡBは第２の部分映像の透過率
ＩCは第３の部分映像の輝度、ＡCは第３の部分映像の透過率
【請求項１５】
複数の部分映像をそれぞれ生成する複数の部分映像生成手段と、
前記複数の部分映像生成手段で生成された部分映像を混合して全体映像を生成する全体映像生成手段と、
前記複数の部分映像生成手段が生成した前記複数の部分映像を前記全体映像生成手段にそれぞれ送る複数の部分映像送信経路と、
前記全体映像を表示する表示手段と、を備え、
前記複数の部分映像は、３次元空間を分割した複数の部分空間の映像であり、
各部分映像生成手段は、各部分空間を分割した複数のボクセルのボクセル値を、マルチプル・シェアード重畳法により混合して部分映像を生成し、
前記全体映像生成手段は、送信された前記複数の部分映像を並列して受けて処理することを特徴とする映像生成装置。
【請求項１６】
前記全体映像生成手段は、前記複数の部分映像を優先度に基づいて混合する請求項１５に記載の映像生成装置。
【請求項１７】
前記優先度は、２進木によって表される請求項１６に記載の映像生成装置。
【請求項１８】
前記複数の部分映像は、１表示フレーム毎に前記優先度を示すデータをそれぞれ有する請求項１６に記載の映像生成装置。
【請求項１９】
前記優先度は、視点に対する前記複数の部分映像の隠顕関係である請求項１６に記載の映像生成装置。
【請求項２０】
前記優先度は、バイナリー・スペース・パーティショニング法により決定される請求項１９に記載の映像生成装置。
【請求項２１】
前記全体映像生成手段は、２つ部分映像を該２つの部分映像の優先度に基づいて混合して混合映像を生成する混合映像生成手段を、階層的に積み重ねた構成を有する請求項１５から２０のいずれか１項に記載の映像生成装置。
【請求項２２】
前記混合映像生成手段は、
２つの部分映像の優先度を判定する優先度判定手段と、
前記優先度判定手段における判定結果に基づいて２つの入力映像と２つの出力映像の対応関係を切替える切替え手段と、
前記切替え手段から出力される出力映像を混合方程式に基づいて混合し、混合映像を出力する映像混合手段と、を備える請求項２１に記載の映像生成装置。
【請求項２３】
前記映像混合手段は、
次式により第１と第２の２つの部分映像を混合して第３の混合映像するものである請求項２２に記載の映像生成装置。
ＩC＝ＡA＊ＩB＋ＩA
ＡC＝ＡA＊ＡB
ただし、ＩAは第１の部分映像の輝度、ＡAは第１の部分映像の透過率
ＩBは第２の部分映像の輝度、ＡBは第２の部分映像の透過率
ＩCは第３の部分映像の輝度、ＡCは第３の部分映像の透過率
【請求項２４】
複数の部分映像を並列に生成、並列に出力する部分映像生成段階と、
並列に出力された前記複数の部分映像を混合して全体映像を生成する全体映像生成段階と、
前記全体映像を表示する表示段階と、を備え、
前記複数の部分映像は、３次元空間を分割した複数の部分空間の映像であり、
各部分映像生成段階では、各部分空間を分割した複数のボクセルのボクセル値を、マルチプル・シェアード重畳法により混合して部分映像を生成することを特徴とする映像生成方法。
【請求項２５】
前記全体映像生成段階では、前記複数の部分映像を優先度に基づいて混合する請求項２４に記載の映像生成方法。
【請求項２６】
前記優先度は、２進木によって表される請求項２５に記載の映像生成方法。
【請求項２７】
前記複数の部分映像は、１表示フレーム毎に前記優先度を示すデータを有する請求項２５に記載の映像生成方法。
【請求項２８】
前記優先度は、視点に対する前記複数の部分映像の隠顕関係である請求項２５に記載の映像生成方法。
【請求項２９】
前記優先度は、バイナリー・スペース・パーティショニング法により決定される請求項２８に記載の映像生成方法。
【請求項３０】
前記全体映像生成段階では、２つの部分映像を該２つの部分映像の隠顕関係による優先度に応じて混合し混合映像を生成する混合映像生成段階を並列に且つ階層的に行う請求項２４から２９のいずれか１項に記載の映像生成方法。
【請求項３１】
前記混合映像生成段階は、
２つの部分映像の優先度を判定する優先度判定段階と、
前記優先度判定段階における判定結果に基づいて２つの入力映像と２つの出力映像の対応関係を切替える切替え段階と、
前記切替え段階で切り換えられた出力映像を混合方程式に基づいて混合し、混合映像を出力する映像混合段階と、を備える請求項３０に記載の映像生成方法。
【請求項３２】
前記映像混合段階は、
次式により第１と第２の２つの部分映像を混合して第３の混合映像するものである請求項３１に記載の映像生成方法。
ＩC＝ＡA＊ＩB＋ＩA
ＡC＝ＡA＊ＡB
ただし、ＩAは第１の部分映像の輝度、ＡAは第１の部分映像の透過率
ＩBは第２の部分映像の輝度、ＡBは第２の部分映像の透過率
ＩCは第３の部分映像の輝度、ＡCは第３の部分映像の透過率
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はシミュレーション装置及び装置に係り、特に解析モデルが構築される三次元空間を複数の部分空間に分割して解析対象の挙動をシミュレーションし、シミュレーション結果を部分空間ごとに映像化した後に、隠顕関係を考慮してこの映像を重畳することにより、解析モデルの挙動を実時間で可視化することの可能な映像発生機能を有するシミュレーション装置及び映像発生段階を有するシミュレーション方法に関する。
【０００２】
【従来の技術】
近年ディジタル計算機の性能向上に伴って、大規模な解析対象の挙動をシミュレーションすることが可能となってきているが、挙動の理解を容易にするためにはシミュレーション結果を可視化することが重要となる。
図１は従来のシミュレーション装置の構成図であって、設定されたパラメータ１〜ｍに基づいて解析対象の動的特性を演算するシミュレータ１０と、シミュレータ１０の演算結果を記憶する記憶媒体（例えばハードディスク）１１と、記憶媒体１１に記憶された演算結果を映像化する映像化装置１２と、映像化装置１２で映像化されたシミュレーション結果を表示する表示パネル１３とから構成されている。
【０００３】
しかし、従来のシミュレーション装置では、映像化をシミュレーション終了後に実行するポストプロセスとして取り扱っているため以下の課題が生じる。
１．シミュレーション装置から出力されるシミュレーション結果をいったん記憶媒体に記憶した後に映像化するため、パラメータを変更した結果を実時間で観察することは困難である。
２．シミュレーション結果を映像化装置で映像化するためにはハードディスク等に記憶されたシミュレーション結果を映像化装置に合致する形式に変換することが必要となるが、解析対象の規模が大きい場合には変換計算量が膨大となる。
【０００４】
例えば、視点を移動した場合には移動後の視点に対応した画像を再度生成する必要もあり、またシミュレーション結果がボリュームデータとして出力されポリゴンにより映像化される場合にはボリュームデータをポリゴンに変換することが必要となる。このため、シミュレーション結果を実時間で映像として観察することは不可能であった。
【０００５】
そこでシミュレーション演算及び映像化処理を高速化するために、いわゆる分散型シミュレーション装置が提案されている。
図２はノード数８の分散型シミュレーション装置の構成図であって、解析対象の挙動を各ノード＃１〜＃８で分散演算し、演算結果を合成する。
ノード＃１〜＃８の出力は、通信回線（例えばMessage Passing Interface）及びハイスピードネットワークスイッチャ２１を介してサーバ２２に伝送され、ＣＲＴ２３に映像として表示される。
【０００６】
そして、シミュレーション結果を視覚的に認識するには１秒間に３０枚程度（ビデオレート）の頻度で映像を更新することが必要となるため、解析対象の規模が大きくなるとノード数、即ち並列接続されるコンピュータ数を増加しなければならない。
【０００７】
【発明が解決しようとする課題】
しかしながら、各ノードとサーバの間の通信回線は１回線であるため、ノード数を増加した場合にはノード間あるいはノード・サーバ間の通信に衝突が生じ通信に要するオーバヘッド時間を無視することができなくなる。
図３は並列台数と処理時間の関係を示すグラフであって、横軸は並列コンピュータ台数を、縦軸は処理時間（秒）を表す。即ち、図３は並列接続するコンピュータ台数を５０〜１００台にまで増加すると処理時間は短縮されるものの、コンピュータ台数を１００台以上に増加した場合には却って処理時間が長くなることを示している。そして、現在使用可能なＣＰＵを使用した場合には、最短の処理時間は“０.５秒”程度にすぎない。
【０００８】
本発明は上記課題に鑑みなされたものであって、解析モデルが構築される三次元空間を複数の部分空間に分割して解析対象の挙動をシミュレーションし、シミュレーション結果を部分空間ごとに映像化した後に、隠顕関係を考慮して映像を混合することにより、解析対象の挙動を実時間で映像化することの可能な映像生成機能を具備するシミュレーション装置を提供することを目的とする。
【０００９】
【課題を解決するための手段】
第１の映像生成機能を有するシミュレーション装置及び方法は、解析対象の数式モデルが構築される三次元空間を分割した複数の部分空間毎に解析対象の挙動を所定の時間間隔毎にシミュレーションする複数の部分シミュレーション手段と、部分シミュレーション手段でシミュレーションされた部分空間のシミュレーション結果の部分映像を所定の時間間隔内に生成する複数の部分映像生成手段と、部分映像生成手段で生成された部分映像を混合して解析対象全体のシミュレーション結果の映像である全体映像を所定の時間間隔内に生成する全体映像生成手段と、全体映像生成手段で生成された全体映像を前記所定の時間間隔内に表示する表示手段とを具備する。
【００１０】
本発明にあっては、解析対象の挙動が部分空間に分割してシミュレーションされ、シミュレーション結果が直ちに映像化される。そして、部分映像を混合することにより解析対象のシミュレーション結果が映像化される。
第２の映像生成機能を有するシミュレーション装置及び方法は、部分シミュレーション手段が部分空間を分割した複数のボクセルのボクセル値を演算するものである。
【００１１】
本発明にあっては、部分空間を賽の目状に分割したボクセル単位でシミュレーション演算が実行される。
第３の映像生成機能を有するシミュレーション装置及び方法は、部分映像生成手段が、部分シミュレーション手段でシミュレーション演算されたボクセル値をマルチプル・シェアード重畳法により混合して部分映像を生成する。
【００１２】
本発明にあっては、部分空間のボクセル値がマルチプル・シェアード重畳法により混合される。
第４の映像生成機能を有するシミュレーション装置及び方法は、バイナリー・スペース・パーティショニング法により決定された優先度に基づいて部分映像生成手段で生成された部分映像を混合するものである。
【００１３】
本発明にあっては、ＢＰＳ法により決定された優先度に基づいて部分映像が混合される。
第５の映像生成機能を有するシミュレーション装置及び方法は、全体映像生成手段が、２つの部分映像を２つの部分映像の隠顕関係に基づいて混合し混合映像を生成する混合映像生成手段が階層的に積み重ねられた構成を有する。
【００１４】
本発明にあっては、全体映像生成手段は、複数の混合映像生成手段がパイプラインで構成される。
第６の映像生成機能を有するシミュレーション装置及び方法は、混合映像生成手段が、２つの部分映像の優先度を判定する優先度判定手段と、優先度判定手段における判定結果に基づいて２つの入力映像と２つの出力映像の対応関係を切替える切替え手段と、切替え手段から出力される出力映像を混合方程式に基づいて混合し混合映像を出力する映像混合手段を具備する。
【００１５】
本発明にあっては、混合映像生成手段が、特定機能を有するハードウエアを組み合わせることによって構成される。
【００１６】
【発明の実施の形態】
図４は本発明に係るシミュレーション装置の構成図であって、シミュレーション装置４は、装置全体を制御するサーバ４０、映像を表示する表示装置（例えばＣＲＴ）４１、解析モデルが構築される三次元空間を複数に分割した部分空間のシミュレーション及び映像化処理を実行する複数のノード４３１〜４３８、及び各ノード４３１〜４３８の出力を合成してサーバに出力するコンポーザ４４から構成される。
【００１７】
サーバ４０は、バス４００を中心としてＣＰＵ４０１、ＣＰＵ４０１で実行されるプログラム及びＣＰＵ４０１の処理結果を記憶するメモリ４０２、動画信号を表示装置４１に出力するグラフィックボード（ＧＢ）４０３及びコンポーザ４４とインターフェイスするためのインターフェイスボード（ＩＦＢ）４０４で構成される。
【００１８】
また各ノード４３１〜４３８はすべて同一の構成を有し、バス４３ａを中心として解析対象の一部が構築される部分空間についてシミュレーションを実行するＣＰＵ４３ｂ、ＣＰＵ４３ｂで実行されるシミュレーションプログラム及びＣＰＵ４３ａのシミュレーション結果を記憶するメモリ４３ｂ、部分空間のシミュレーション結果の映像を生成する映像生成エンジンボード（ＶＧＢ）４３ｃ、及びコンポーザ４４とインターフェイスするためのインターフェイスボード（ＩＦＢ）４３ｄから構成される。
【００１９】
なお、上記実施形態においてはノード４３１〜４３８のシミュレーション結果の映像は専用の映像生成エンジンで生成されるものとしたが、ＣＰＵ４３ｂが高速な処理能力を有していれば映像発生プログラムによりソフトウエア的に映像を発生してもよい。
図５は部分空間への分割方法説明図であって、解析モデルが構築される三次元空間Ｂを部分空間Ｂ1 〜Ｂ8に８分割した場合を示している。そして、各部分空間Ｂ1 〜Ｂ8内の解析モデルがそのまま各ノード４３１〜４３８に組み込まれる。
【００２０】
図６は１つの部分空間Ｂi の斜視図であって、部分空間Ｂi は複数のボクセルＶ（i,j,k）に分割され、シミュレーションを実行することによって１個のボクセルＶ（i,j,k）に対して１組のボクセル値が算出される。
ボクセル値がいかなる物理量に対応するかは解析対象が何であるかに依存する。例えば地球の天気をシミュレーションする場合には、ボクセル値は大気中の一点の気温、大気圧、風向、風速等となる。このように、ボクセル値は１つには限定されることはなく、複数の物理量を含んでいてもよい。
【００２１】
なお、部分空間への分割数は特に限定されないが、部分空間で発生される映像の合成を容易にするために、複数個、特に２の３ｎ乗（ｎは正整数）個に分割することが有利である。
シミュレーション結果の映像化のために、ボクセル値は予め定められた規則に従って色彩情報に変換される。例えば、気温が高温であれば赤色に、低温であれば青色に、中間の温度であれば黄色に変換される。
【００２２】
図７はレイキャスティング法（ＲＣ法）による部分空間の映像発生方法の説明図であって、スクリーンＳ上のピクセルＰ（p ，q ）の色は、部分空間Ｂi 内の円柱Ｃに含まれるボクセルの色情報の重畳積分値として決定される。
しかし、視野はスクリーンＳから遠くなるほど拡大するので、円柱Ｃの太さはスクリーンから遠くなるほど太くなるため、重畳積分する範囲はスクリーンからの距離に応じて拡大し、重畳積分演算が複雑となる。
【００２３】
そこで、本発明においては、マルチプル・シェアード重畳法（ＭＳ法）を適用することによって映像発生を容易にしている。
図８はＭＳ法の説明図であって、（イ）は図７と同じくＲＣ法を適用した場合を、（ロ）はＭＳ法を適用した場合を示す。
即ち、ＭＳ法では、部分空間を歪ませ、歪められた部分空間内のボクセルを基準面に垂直な平行光により照射して基準面に映像を生成することにより、単なる加算により基準面上のピクセル値を算出することが可能となる。
【００２４】
ＭＳ法により生成された部分空間の映像である部分映像は、各ノードからコンポーザ４４に伝送され、部分空間の映像を混合して解析モデル全体の映像である全体映像を生成する。
そして全体映像を生成するためには、視点と各部分空間の位置関係に基づいて隠顕関係を決定することが必要となるが、図５を参照して隠顕関係の決定方法を説明する。
【００２５】
まず、８つの部分空間Ｂ1 〜Ｂ8 を７つのセパレート面Ｓ1〜Ｓ7 によって隔てる。即ち、第１のセパレート面Ｓ1によって、第１の部分空間群Ｂ1 〜Ｂ4 と第２の部分空間群Ｂ5〜Ｂ8 に分割する。次に第１の部分空間群を第２のセパレート面Ｓ2 によって第１−１の部分空間群Ｂ1 及びＢ2 と第１-２の部分空間群Ｂ3 及びＢ4 に分割する。さらに、第１−１の部分空間群を第３のセパレート面Ｓ3 によって第１−１−１の部分空間群Ｂ1 と第１−１−２の部分空間群Ｂ2 に分割する。このようにセパレート面で分割される１つの空間にサブボリュームが１つ含まれるようになるまで分割を繰り返す。そして、視点との距離が最短である空間に含まれるサブボリュームＢi に対応する映像Ｉi の優先度を最高に設定する。即ち、視点との距離が短いほど部分空間Ｂi に対応する映像Ｉi に高い優先度を付与してＢＳＰ（Binary Space Partitioning）ツリー形式で表現する。
【００２６】
図９は、図５のＢＳＰツリー表現であって、部分空間Ｂ1 に対応する映像Ｉ1 に優先度“１”が付与され、以下映像Ｉ3 、Ｉ2 、Ｉ4 、Ｉ6 、Ｉ8 、Ｉ5 、Ｉ7 の順に優先度が付与される。
次に部分空間の映像混合方法を説明する。
光源から放射される光が、解析モデルが構築される三次元空間を貫通してスクリーン上の点（ｐ，ｑ）に到達する場合の点（ｐ，ｑ）における輝度Icは［数１］で表される。
【００２７】
【数１】
0004688316.tif 000002
【００２８】
［数１］をΔｓ＝Δｔとして離散化すると［数２］となる。
【００２９】
【数２】
0004688316.tif 000003
【００３０】
［数２］を展開すると［数３］となる。
【００３１】
【数３】
0004688316.tif 000004
【００３２】
［数３］から判明するように、輝度がそれぞれＩA 及びＩB で表される２つの映像を［数３］を使用して混合することにより合成映像の輝度を求めることが可能である。なお、上記は分割数を“２”とした場合を説明したが、分割数を２より大とした場合にも同様に混合可能であることも明らかである。
図１０は混合方法の説明図であって、輝度、透過率がそれぞれIA ,ＡA 及びIB，ＡB の２枚の映像を［数３］に示す混合方程式に従って混合すると、輝度、透過率がIc ,Ａc の混合映像が生成される。
【００３３】
図１１は隠顕関係図であって、図９のＢＰＳツリーに基づいて８個のサブボリュームＢ1 〜Ｂ8 に対応する映像隠顕関係を示す。
図１２は混合過程の説明図（その１）であって、ノード４３１で部分空間Ｂ1 の映像Ｉ1 が、ノード４３２で部分空間Ｂ2 の映像Ｉ2 が、ノード４３３で部分空間Ｂ3 の映像Ｉ3 が、ノード４３４で部分空間Ｂ4 の映像Ｉ4が生成される。
【００３４】
映像Ｉ1 〜Ｉ4 はコンポーザ４４に伝送され、図１０に示す混合方程式に従って混合され、Ｉ1 ＋I2 ＋I3 ＋I4 が生成される。
図１３は混合過程の説明図（その２）であって、映像Ｉ1 〜Ｉ8 が混合されて解析対象全体のシミュレーション結果の映像が生成される。
映像を混合するコンポーザ４４はソフトウエアによって構築することも可能であるが、高速処理のためにいわゆるパイプライン方式のコンピュータを使用して並列演算を行うことが有利である。
【００３５】
図１４はパイプライン方式のコンポーザの構成図であって、コンポーザ４４は８枚の映像を合成するために７個のマージャ４４１〜４４７で構成される。
図１５は１つのマージャの詳細構成図であって、各マージャは優先度判定部４４ａ、セレクタ４４ｂ及びブレンダ４４ｃから構成される。
即ち、ノードＸ及びＹの出力は優先度判定部４４ａ及びセレクタ４４ｂに入力される。優先度判定部ではノードＸで生成された画像ＩX とノードＹで生成された画像ＩY の隠顕関係を判定してセレクタ４４ｂに制御指令を出力する。
【００３６】
例えばＩY の優先度が高く、ＩX の優先度が低い場合にはセレクタ４４ｂのクロス経路を選択し、ノードＸの出力をセレクタ４４ｂの出力口Ｂに、ノードＹの出力をセレクタ４４ｂの出力口Ａに出力する。逆に、ＩY の優先度が低く、ＩX の優先度が高い場合にはセレクタ４４ｂのストレート経路を選択し、ノードＸの出力をセレクタ４４ｂの出力口Ａに、ノードＹの出力をセレクタ４４ｂの出力口Ｂに出力する。
【００３７】
そして、ブレンダ４４ｃでは、セレクタ４４ｂの２つの出力を図１０に示す混合方程式に基づいて混合して混合された映像の強度及び透過率を出力する。
図１４に戻って、シミュレーション装置４が８台のノード４３１〜４３８を具備する場合には、コンポーザ４４は７台のマージャ４４１〜４４７が３段に積み重ねられて構成される。
【００３８】
即ち、第１のマージャ４４１では画像Ｉ1 とＩ3 が混合され、第２のマージャ４４２では画像Ｉ2 とＩ4 が混合され、第３のマージャ４４３では画像Ｉ5 とＩ7 が混合され、第４のマージャ４４４では画像Ｉ6 とＩ8 が混合される。
第５のマージャ４４５では第１のマージャ４４１及び第２のマージャ４４２の出力が混合され、第６のマージャ４４６では第３のマージャ４４３及び第４のマージャ４４４の出力が混合される。そして、第７のマージャ４４７では第３のマージャ４４３及び第４のマージャ４４４の出力が混合されてコンポーザ４４の出力となる。
【００３９】
なお、上記実施態様はノード数が８の場合のコンポーザについて説明したが、ノード数を９以上とした場合には上記マージャ数が８のコンポーザを積層することにより対応可能である。
コンポーザ４４の出力はサーバ４０に伝送されて表示装置４１で表示されるが、混合映像はＭＳ法により映像化されているため、表示装置４１に表示する際には周知のテクスチャマッピング機能を使用して歪みを補正することが必要である。
【００４０】
図１６は本発明に係るシミュレーション装置の動作タイミング図であって、最上段はサーバの動作タイミングを、第２段以下はノード＃１〜＃８の動作タイミングを示す。
即ちサーバとノードの動作を同期させるために、例えばサーバはタイミングパルスを生成する。
【００４１】
タイミングパルスを検知すると、サーバはシミュレーション条件、映像を観察する視点位置等をパラメータとして各ノードに出力する。
各ノードはパラメータを受け取ると、解析対象のサブ空間のシミュレーションを実行し、次にシミュレーション結果を部分映像化し、部分映像を出力する。
サーバは各ノードから部分映像を集め、コンポーザで混合し、歪みを補正した後全空間の映像を表示する。
【００４２】
図１７はサーバで実行されるサーバ処理ルーチンのフローチャートであって、ステップ１７０で動作タイミングであるかを判定し、動作タイミングでなければ直接このルーチンを終了する。
ステップ１７０で肯定判定されたとき、即ち動作タイミングであればステップ１７１でシミュレーション条件、映像を観察する視点位置等をパラメータとして各ノードに出力する。
【００４３】
次にステップ１７２でコンポーザで混合された映像を受け取り、ステップ１７３でマッピング処理をして歪みを補正して表示装置に表示してこのルーチンを終了する。
図１８は各ノードで実行されるノード処理ルーチンのフローチャートであって、ステップ１８０で動作タイミングであるかを判定し、動作タイミングでなければ直接このルーチンを終了する。
【００４４】
ステップ１８０で肯定判定されたとき、即ち動作タイミングであればステップ１８１でシミュレーション条件、映像を観察する視点位置等のパラメータをサーバから受信する。次にステップ１８２で部分空間のシミュレーションを実行し、ステップ１８３で部分映像を生成するために基準面をクリアする。
ステップ１８４で部分映像生成ルーチンを実行するが詳細は後述する。最後にステップ１８５でサーバに部分映像を送信してこのルーチンを終了する。
【００４５】
図１９はノード処理ルーチンのステップ１８４で実行される部分映像生成ルーチンの詳細フローチャートであって、ステップ１８４ａでサブ空間のボクセルアドレスを示すインデックス（ｉ，ｊ，ｋ）をそれぞれ初期値“１”に設定する。なお、ｉ及びｊは基準面内で相互に直交する軸に沿うアドレス、ｋは基準面に垂直な軸に沿うアドレスである。
【００４６】
ステップ１８４ｂでｋによって変化する４つのパラメータ（ＵＰ・ΔＩ，ＵＰ・ΔＪ，ＵＰ・ｂＳＩ，ＵＰ・ｂＳＪ）を求める。ここでＵＰ・ΔＩ及びＵＰ・ΔＪは、それぞれｉ軸及びｊ軸方向の増加分であり、変形されたボクセル間のｉ軸及びｊ軸の座標の増分である。ＵＰ・ｂＳＩ及びＵＰ・ｂＳＪは、それぞれｉ軸及びｊ軸方向のＭＳ法により変形されたサブボリュームの側端の座標である。
【００４７】
ステップ１８４ｃで基準面上の１点の座標を（ｐ，ｑ）としたときのｑの初期値をＵＰ・ｂＳＪに設定し、ステップ１８４ｄでｑにｊ方向の増加分を加算してｑを更新する。
ステップ１８４ｅでｐの初期値をＵＰ・ｂＳＩに設定し、ステップ１８４ｆでｐにｉ方向の増加分を加算してｐを更新する。
【００４８】
ステップ１８４ｇで変形前のボクセル位置を表すパラメータijk 、及び変形後の対応するボクセル位置を表すパラメータＳijk を求める。
即ち、
Ｓijk ＝（ｐ，ｑ，ｒ）
とする。
【００４９】
ステップ１８４ｈで基準面上の１点（ｐ，ｑ）のピクセル値Ｃを算出するために、まずボクセル位置を表すパラメータ（ｉ，ｊ，ｋ）に基づいて当該ボクセルのボクセル値Ｖijk を取り出す。なお、ボクセル値ｖijk は赤色成分Ｒ、緑色成分Ｇ、青色成分Ｂ及び透明度Ａを要素とする４次元ベクトルである。
そして、ボクセル値ｖijk と重み関数ｗの積としてピクセル値Ｃが算出される。
【００５０】
Ｃ  ←  ｖijk *ｗ（ｐ−ｉp ，ｑ−ｊq ）
ただし、（ｉp ，ｊq ）はボクセル（ｉ，ｊ，ｋ）に対応する基準面上の点のｉ軸及びｊ軸座標である。また、ピクセル値も赤色成分Ｒ、緑色成分Ｇ、青色成分Ｂ及び透明度Ａを要素とする４次元ベクトルである。
最後にステップ１８４ｉにおいて、全ステップまでの処理で算出されたコンポジットピクセル値Ｃc とステップ２８４ｈで算出されたピクセル値Ｃとを〔数４〕に基づいてコンポジット演算してコンポジットピクセル値Ｃc を更新する。
【００５１】
【数４】
0004688316.tif 000005
【００５２】
ステップ１８４ｊで全ボクセルについて処理が完了したかを判定し、ｉ軸に沿った処理が終了していないときは、ステップ１８４ｋでｉをインクリメントしてステップ１８４ｆに戻る。
また、ｊ軸に沿った処理が終了していないときは、ステップ１８４ｍでｊをインクリメントしてステップ１８４ｄに戻り、ｋ軸に沿った処理が終了していないときは、ステップ１８４ｎでｋをインクリメントしてステップ１８４ｂに戻る。なお、全ボクセルについて処理が完了したときはこのルーチンを終了する。
【００５３】
【発明の効果】
第１の発明に係る映像生成機能を有するシミュレーション装置及び方法によれば、大規模な解析対象を部分空間に分割してシミュレーションし、部分空間毎に結果を映像化できるので、ノードの処理能力が特に優れていなくてもシミュレーション結果をビデオ速度で表示することが可能となる。
【００５４】
第２の発明に係る映像生成機能を有するシミュレーション装置及び方法によれば、シミュレーション演算はボクセルについて実施されるので、シミュレーション結果の映像化が容易となる。
第３の発明に係る映像生成機能を有するシミュレーション装置及び方法によれば、ＭＳ法により部分映像を生成することにより映像生成時間を短縮することが可能となる。
【００５５】
第４の発明に係る映像生成機能を有するシミュレーション装置及び方法によれば、ＢＳＰ法を使用することによりリカーシブな処理により隠顕関係を決定することが可能となる。
第５の発明に係る映像生成機能を有するシミュレーション装置及び方法によれば、コンポーザがパイプライン構成であるので、部分映像の混合を高速化することが可能となる。
【００５６】
第６の発明に係る映像生成機能を有するシミュレーション装置及び方法によれば、マージャが機能ハードウエアにより構成されるので、２映像の混合処理を高速化することが可能となる。
【図面の簡単な説明】
【図１】従来のシミュレーション装置の構成図である。
【図２】従来の分散型シミュレーション装置の構成図である。
【図３】並列台数と処理時間の関係を示すグラフである。
【図４】本発明に係るシミュレーション装置の構成図である。
【図５】部分空間への分割方法説明図である。
【図６】１つの部分空間の斜視図である。
【図７】部分空間の部分映像生成方法の説明図である。
【図８】ＭＳ重畳法の説明図である。
【図９】ＢＰＳツリー表現図である。
【図１０】混合方法の説明図である。
【図１１】隠顕関係図である。
【図１２】混合過程の説明図（１／２）である。
【図１３】混合過程の説明図（２／２）である。
【図１４】パイプライン方式のコンポーザの構成図である。
【図１５】マージャの構成図である。
【図１６】本発明に係るシミュレーション装置の動作タイミング図である。
【図１７】サーバ処理ルーチンのフローチャートである。
【図１８】ノード処理ルーチンのフローチャートである。
【図１９】部分映像生成ルーチンのフローチャートである。
【符号の説明】
４０…サーバ
４１…表示装置
４３１〜４４４…ノード
４４…コンポーザ
【図１】
0004688316.tif 000006
【図２】
0004688316.tif 000007
【図３】
0004688316.tif 000008
【図４】
0004688316.tif 000009
【図５】
0004688316.tif 000010
【図６】
0004688316.tif 000011
【図７】
0004688316.tif 000012
【図８】
0004688316.tif 000013
【図９】
0004688316.tif 000014
【図１０】
0004688316.tif 000015
【図１１】
0004688316.tif 000016
【図１２】
0004688316.tif 000017
【図１３】
0004688316.tif 000018
【図１４】
0004688316.tif 000019
【図１５】
0004688316.tif 000020
【図１６】
0004688316.tif 000021
【図１７】
0004688316.tif 000022
【図１８】
0004688316.tif 000023
【図１９】
0004688316.tif 000024