(57)【要約】【課題】複数の領域担当処理装置を有効活用して高品質な画像を生成できる画像生成システム、プログラム及び情報記憶媒体等の提供。【解決手段】画像生成システムは、複数の領域担当処理装置の各領域担当処理装置が、仮想３次元空間を分割した複数の領域の各領域のオブジェクトの制御処理及び仮想カメラから見える各領域の画像の描画処理を行い、描画処理により得られた描画画像データを送信した場合に、描画画像データを受信する通信処理部と、受信した描画画像データに基づいて画像合成処理を行って、仮想カメラから見える表示画像を生成する画像合成部を含む。【選択図】図５
2010165100.tif 000002
【特許請求の範囲】
【請求項１】
複数の領域担当処理装置の各領域担当処理装置が、仮想３次元空間を分割した複数の領域の各領域のオブジェクトの制御処理及び仮想カメラから見える前記各領域の画像の描画処理を行い、描画処理により得られた描画画像データを送信した場合に、前記描画画像データを受信する通信処理部と、
受信した前記描画画像データに基づいて画像合成処理を行って、前記仮想カメラから見える表示画像を生成する画像合成部と、
を含むことを特徴とする画像生成システム。
【請求項２】
請求項１において、
前記仮想カメラの管理処理を行う管理処理部を含み、
前記管理処理部は、
前記仮想カメラの情報を前記各領域担当処理装置に送信し、
前記各領域担当処理装置は、
受信した前記仮想カメラの情報に基づいて、前記仮想カメラから見える前記各領域の画像の描画処理を行うことを特徴とする画像生成システム。
【請求項３】
請求項２において、
前記管理処理部は、
操作者が操作する操作オブジェクトの情報に基づいて、前記仮想カメラの情報を取得し、前記各領域担当処理装置に送信することを特徴とする画像生成システム。
【請求項４】
請求項１乃至３のいずれかにおいて、
前記複数の領域担当処理装置を含むことを特徴とする画像生成システム。
【請求項５】
請求項４において、
操作者が操作する操作オブジェクトの管理処理を行う管理処理部を含み、
前記複数の領域担当処理装置のうち、前記操作オブジェクトの制御処理を行う領域担当処理装置は、
制御処理後の前記操作オブジェクトの情報を、前記管理処理部に送信することを特徴とする画像生成システム。
【請求項６】
請求項４又は５において、
前記各領域担当処理装置は、
担当する領域から移動オブジェクトが出た場合に、前記移動オブジェクトの情報を、他の領域を担当する領域担当処理装置に知らせるための処理を行うことを特徴とする画像生成システム。
【請求項７】
請求項６において、
前記各領域担当処理装置は、
前記移動オブジェクトの情報として、前記移動オブジェクトの移動情報及び制御用情報の少なくとも１つを、前記他の領域を担当する領域担当処理装置に知らせるための処理を行うことを特徴とする画像生成システム。
【請求項８】
請求項４乃至７のいずれかにおいて、
前記各領域担当処理装置は、
領域間を移動する移動オブジェクトのモデルデータを記憶するモデルデータ記憶部を含むことを特徴とする画像生成システム。
【請求項９】
請求項１乃至８のいずれかにおいて、
前記通信処理部は、
前記各領域担当処理装置から、前記描画画像データとして画像データ及び奥行きデータを受信し、
前記画像合成部は、
受信した前記奥行きデータに基づいて画像合成処理を行うことを特徴とする画像生成システム。
【請求項１０】
請求項１乃至８のいずれかにおいて、
前記画像合成部は、
前記仮想カメラから遠い領域から順に、前記描画画像データに基づく画像合成処理を行うことを特徴とする画像生成システム。
【請求項１１】
請求項１乃至１０のいずれかにおいて、
前記通信処理部は、
前記表示画像の領域のうち前記各領域担当処理装置により画像が描画された描画領域を特定するための描画領域特定情報を、前記各領域担当処理装置から受信し、
前記画像合成部は、
受信した前記描画領域特定情報により特定される描画領域に、前記各領域担当処理装置から受信した前記描画画像データに基づく画像を合成する処理を行うことを特徴とする画像生成システム。
【請求項１２】
請求項１乃至１１のいずれかにおいて、
前記各領域担当処理装置での描画画像が書き込まれる複数の受信用バッファと、
表示用バッファとを含み、
前記画像合成部は、
前記複数の受信用バッファの描画画像を合成した画像を前記表示用バッファに書き込むことを特徴とする画像生成システム。
【請求項１３】
請求項１乃至１１のいずれかにおいて、
複数の分割領域に分割された受信用バッファを含み、
前記画像合成部は、
各サブ画像合成部が、前記複数の分割領域の各分割領域の書き込み処理を担当する複数のサブ画像合成部と、
メイン画像合成部とを含み、
前記各サブ画像合成部は、
前記各領域担当処理装置から受信した前記描画画像データに基づいて、担当する分割領域への書き込み処理を行い、
前記メイン画像合成部は、
前記受信用バッファの前記複数の分割領域の描画画像を合成する処理を行うことを特徴とする画像生成システム。
【請求項１４】
複数の領域担当処理装置の各領域担当処理装置が、仮想３次元空間を分割した複数の領域の各領域のオブジェクトの制御処理及び仮想カメラから見える前記各領域の画像の描画処理を行い、描画処理により得られた描画画像データを送信した場合に、前記描画画像データを受信する通信処理部と、
受信した前記描画画像データに基づいて画像合成処理を行って、前記仮想カメラから見える表示画像を生成する画像合成部として、
コンピュータを機能させることを特徴とするプログラム。
【請求項１５】
コンピュータ読み取り可能な情報記憶媒体であって、請求項１４に記載のプログラムを記憶したことを特徴とする情報記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像生成システム、プログラム及び情報記憶媒体等に関する。
【背景技術】
【０００２】
近年、いわゆる並列コンピューティングで画像（映像）を生成するシステムが提案されている（例えば特許文献１）。このような並列コンピューティングの画像生成手法として、大規模なシステムを用いて長時間をかけてプリレンダによりＣＧ画像を生成する第１の手法と、比較的小さな規模で密に結合されたハードウェア上でインタラクティブ性のある画像を生成する第２の手法がある。
【０００３】
しかしながら、上記の第１の手法では、描画対象となるオブジェクト数が多くなると、物理演算やモーション制御等で計算されたデータが膨大な量になる。従って、この膨大な量のデータを共有し、当該共有データを用いて画面更新時間内に破綻無く画像を描画することは非常に困難になる。このため、リアルタイムで画像を生成することは難しく、プリレンダによるＣＧ画像を生成するしかなかった。
【０００４】
また、上記の第２の手法では、第１の手法のような問題は生じないが、そもそも、扱える情報の量が少ないため、画面更新時間内に描画できるオブジェクト数も少なく、出力される画像の品質は低くなりがちであった。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−３３４１１０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の幾つかの態様によれば、複数の領域担当処理装置を有効活用して高品質な画像を生成できる画像生成システム、プログラム及び情報記憶媒体等を提供できる。
【課題を解決するための手段】
【０００７】
本発明は、複数の領域担当処理装置の各領域担当処理装置が、仮想３次元空間を分割した複数の領域の各領域のオブジェクトの制御処理及び仮想カメラから見える前記各領域の画像の描画処理を行い、描画処理により得られた描画画像データを送信した場合に、前記描画画像データを受信する通信処理部と、受信した前記描画画像データに基づいて画像合成処理を行って、前記仮想カメラから見える表示画像を生成する画像合成部とを含む画像生成システムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラム、又は該プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体に関係する。
【０００８】
本発明によれば、各領域担当処理装置は、仮想３次元空間を分割した複数の領域の各領域のオブジェクトの制御処理及び仮想カメラから見える各領域の画像の描画処理を行う。そして描画処理により得られた描画画像データを送信する。すると通信処理部が、送信された描画画像データを受信し、画像合成部が、受信した描画画像データに基づいて画像合成処理を行って、仮想カメラから見える表示画像を生成する。このようにすれば、各領域でのオブジェクトの制御処理や描画処理は、その領域を担当する領域担当処理装置により実行される。そして、画像合成部が、領域担当処理装置からの描画画像データに基づく画像合成を行うだけで、表示画像を合成できる。従って、複数の領域担当処理装置を有効活用して、高品質な画像を生成できるようになる。
【０００９】
また本発明では、前記仮想カメラの管理処理を行う管理処理部を含み、前記管理処理部は、前記仮想カメラの情報を前記各領域担当処理装置に送信し、前記各領域担当処理装置は、受信した前記仮想カメラの情報に基づいて、前記仮想カメラから見える前記各領域の画像の描画処理を行ってもよい。
【００１０】
このようにすれば、管理処理部により仮想カメラの制御を一元的に管理でき、各領域担当処理装置は、管理処理部からの仮想カメラの情報に基づいて、各領域の画像の描画処理を実行できるようになる。
【００１１】
また本発明では、前記管理処理部は、操作者が操作する操作オブジェクトの情報に基づいて、前記仮想カメラの情報を取得し、前記各領域担当処理装置に送信してもよい。
【００１２】
このようにすれば、操作者により操作される操作オブジェクトの情報に応じて、仮想カメラの情報が設定され、仮想カメラから見える各領域の画像を描画できるようになる。
【００１３】
また本発明では、前記複数の領域担当処理装置を含んでもよい。
【００１４】
また本発明では、操作者が操作する操作オブジェクトの管理処理を行う管理処理部を含み、前記複数の領域担当処理装置のうち、前記操作オブジェクトの制御処理を行う領域担当処理装置は、制御処理後の前記操作オブジェクトの情報を、前記管理処理部に送信してもよい。
【００１５】
このようにすれば、例えばその担当領域に操作オブジェクトが存在する領域担当処理装置が、制御処理後の操作オブジェクトの情報を管理処理部に送信することで、管理処理部は、操作オブジェクトの情報を取得できる。これにより、操作者による操作オブジェクトの操作に応じて変化する表示画像の生成等が可能になる。
【００１６】
また本発明では、前記各領域担当処理装置は、担当する領域から移動オブジェクトが出た場合に、前記移動オブジェクトの情報を、他の領域を担当する領域担当処理装置に知らせるための処理を行ってもよい。
【００１７】
このようにすれば、担当領域から移動オブジェクトが出た場合に、例えばその移動オブジェクトがその担当領域入った他の領域担当処理装置は、当該移動オブジェクトの情報を取得できるようになり、当該移動オブジェクトの制御処理や描画処理が可能になる。
【００１８】
また本発明では、前記各領域担当処理装置は、前記移動オブジェクトの情報として、前記移動オブジェクトの移動情報及び制御用情報の少なくとも１つを、前記他の領域を担当する領域担当処理装置に知らせるための処理を行ってもよい。
【００１９】
このようにすれば、他の領域担当処理装置は、取得した移動情報や制御用情報を用いて、移動オブジェクトの制御処理等を実現できるようになる。
【００２０】
また本発明では、前記各領域担当処理装置は、領域間を移動する移動オブジェクトのモデルデータを記憶するモデルデータ記憶部を含んでもよい。
【００２１】
このようにすれば、領域間を移動オブジェクトが移動した場合にも、移動オブジェクトのモデルデータについては通信しなくても済むようになるため、通信負荷を軽減できる。
【００２２】
また本発明では、前記通信処理部は、前記各領域担当処理装置から、前記描画画像データとして画像データ及び奥行きデータを受信し、前記画像合成部は、受信した前記奥行きデータに基づいて画像合成処理を行ってもよい。
【００２３】
このようにすれば、各領域担当処理装置で生成された奥行きデータを有効活用して、描画画像の画像合成処理における隠面消去等を実現できる。
【００２４】
また本発明では、前記画像合成部は、前記仮想カメラから遠い領域から順に、前記描画画像データに基づく画像合成処理を行ってもよい。
【００２５】
このようにすれば、簡素な処理で描画画像の画像合成処理を実現できる。
【００２６】
また本発明では、前記通信処理部は、前記表示画像の領域のうち前記各領域担当処理装置により画像が描画された描画領域を特定するための描画領域特定情報を、前記各領域担当処理装置から受信し、前記画像合成部は、受信した前記描画領域特定情報により特定される描画領域に、前記各領域担当処理装置から受信した前記描画画像データに基づく画像を合成する処理を行ってもよい。
【００２７】
このようにすれば、描画領域特定情報により特定される領域に描画画像を書き込むだけで済むため、画像合成部の処理負荷を軽減できる。
【００２８】
また本発明では、前記各領域担当処理装置での描画画像が書き込まれる複数の受信用バッファと、表示用バッファとを含み、前記画像合成部は、前記複数の受信用バッファの描画画像を合成した画像を前記表示用バッファに書き込んでもよい。
【００２９】
このようにすれば、待ち時間を最小限に抑えて、描画画像データを各受信用バッファに書き込むことが可能になる。
【００３０】
また本発明では、複数の分割領域に分割された受信用バッファを含み、前記画像合成部は、各サブ画像合成部が、前記複数の分割領域の各分割領域の書き込み処理を担当する複数のサブ画像合成部と、メイン画像合成部とを含み、前記各サブ画像合成部は、前記各領域担当処理装置から受信した前記描画画像データに基づいて、担当する分割領域への書き込み処理を行い、前記メイン画像合成部は、前記受信用バッファの前記複数の分割領域の描画画像を合成する処理を行ってもよい。
【００３１】
このようにすれば、画像合成の並列化を容易化でき、複数のサブ画像合成装置を用いて品質の高い表示画像を生成できるようになる。
【図面の簡単な説明】
【００３２】
【図１】本実施形態の画像生成システムの構成例。
【図２】複数の領域及びそれを担当する複数の領域担当処理装置の説明図。
【図３】領域担当処理装置の構成例。
【図４】画像生成システムのハードウェア構成例。
【図５】画像生成システムの画像生成手法の説明図。
【図６】本実施形態の動作を説明するためのデータフロー図。
【図７】本実施形態の動作を説明するためのデータフロー図。
【図８】図８（Ａ）、図８（Ｂ）は移動オブジェクトが領域の外に出た場合の処理の説明図。
【図９】拡張領域を設定する手法の説明図。
【図１０】図１０（Ａ）、図１０（Ｂ）は本実施形態の画像生成手法の説明図。
【図１１】本実施形態の画像生成手法の説明図。
【図１２】本実施形態の画像生成手法の他の例の説明図。
【図１３】複数の受信用バッファを設ける手法の説明図。
【図１４】受信用バッファを複数の分割領域に分割する手法の説明図。
【発明を実施するための形態】
【００３３】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００３４】
１．画像生成システムの構成例
図１に本実施形態の画像生成システムの構成例を示す。画像生成システムは通信処理部２０、画像合成部３０を含む。また領域担当処理装置１０-1〜１０-nや管理処理部４０を含むことができる。或いは受信用バッファ５０や表示用バッファ６０を含んでもよい。なお本実施形態は図１の構成に限定されず、その構成要素の一部（例えば領域担当処理装置、管理処理部、受信用バッファ、表示用バッファ等）を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。
【００３５】
複数の領域担当処理装置（グリッドコンピュータ）１０-1〜１０-nの各領域担当処理装置（以下、適宜、領域担当処理装置１０と呼ぶ）は、仮想３次元空間（ゲーム空間、ゲームフィールド）を分割した複数の領域（例えばグリッド領域）の各領域のオブジェクトの制御処理を行う。具体的には、各領域に存在する操作オブジェクト（例えばキャラクタ）や移動オブジェクト（例えば弾、ボール）などのオブジェクトについての移動処理や動作（モーション）処理等の制御処理を行う。また仮想カメラから見える各領域の画像の描画処理を行う。具体的には、仮想カメラから見た場合に表示画像に映し出されるその領域の画像の描画処理を行う。即ち、仮想カメラの視点、視線方向で、その領域に存在するオブジェクトを描画して、描画画像データを生成する。
【００３６】
通信処理部２０は、有線や無線のネットワーク（伝送路）を介して外部（例えば領域担当処理装置、管理処理部）との間で通信を行うものであり、その機能は、通信用ＡＳＩＣ又は通信用プロセッサなどのハードウェアや、通信用ファームウェアにより実現できる。具体的には通信処理部２０は、各領域担当処理装置１０が、各領域の画像の描画処理を行い、描画処理により得られた描画画像データを送信した場合に、その描画画像データを受信する。
【００３７】
なおネットワークは、インターネットのような広域ネットワーク（ＷＡＮ）であってもよいし、広域ネットワークに接続される局所的なネットワーク（ＬＡＮ）であってもよい。また例えばＣＰＵとメモリが実装された回路ボード間を接続するネットワークであってもよいし、集積回路装置（ＩＣ）間を接続する更に局所的なネットワークであってもよい。
【００３８】
画像合成部３０は種々の画像合成処理を行う。具体的には各領域担当処理装置１０から受信した描画画像データに基づいて画像合成処理を行って、仮想カメラから見える表示画像を生成する。即ち領域担当処理装置１０-1〜１０-nの描画画像を合成して、フレーム画像である表示画像を生成する。
【００３９】
例えば通信処理部２０が、各領域担当処理装置１０から、描画画像データとして画像データ及び奥行きデータ（Ｚ値等）を受信したとする。この場合には画像合成部３０は、受信した奥行きデータに基づいて画像合成処理を行うことで、表画像を生成する。或いは画像合成部３０は、仮想カメラから遠い領域から順に（例えば領域の代表点のＺ値が近い順に）、描画画像データに基づく画像合成処理を行って、表示画像を生成してもよい。
【００４０】
また例えば通信処理部２０が、表示画像の領域のうち各領域担当処理装置１０により画像が描画された描画領域を特定するための描画領域特定情報（描画位置や描画サイズを特定する情報）を、各領域担当処理装置１０から受信したとする。この場合には画像合成部３０は、受信した描画領域特定情報により特定される描画領域に、各領域担当処理装置１０から受信した描画画像データに基づく画像を合成する。
【００４１】
なお受信用バッファ５０は、各領域担当処理装置１０での描画画像が書き込まれるバッファであり、表示用バッファ６０は、表示画像を表示するためのバッファである。例えば各領域担当処理装置１０から描画画像データを受信すると、その描画画像データに対応する描画画像が受信用バッファ５０に書き込まれる。そして画像合成部３０は、この受信用バッファ５０に書き込まれた描画画像を合成して、表示画像を生成する。この表示画像は表示用バッファ６０により、表示部１００を介して操作者（プレーヤ）に表示される。この場合に受信用バッファ５０と表示用バッファ６０は、受信用と表示用が交互に入れ替わるダブルバッファ構造とすることができる。
【００４２】
この場合に、受信用バッファ５０として複数の受信用バッファを設け、画像合成部３０が、これらの複数の受信用バッファの描画画像を合成した画像を、表示用バッファ６０に書き込んでもよい。或いは受信用バッファ５０を複数の分割領域に分割し、画像合成部３０に複数のサブ画像合成部と、メイン画像合成部を設ける。そして各サブ画像合成部が、各領域担当処理装置１０から受信した描画画像データに基づいて、担当する分割領域への書き込み処理を行い、メイン画像合成部は、受信用バッファ５０の複数の分割領域の描画画像を合成するようにしてもよい。
【００４３】
管理処理部４０は種々の管理処理を行うものであり、例えば操作オブジェクトの管理処理や仮想カメラの管理処理を行う。ここで操作オブジェクトの管理処理は操作オブジェクト管理部４４が行い、仮想カメラの管理処理は仮想カメラ管理部４６が行う。
【００４４】
例えば管理処理部４０は、仮想カメラの情報（視点情報や視線情報）を、各領域担当処理装置１０に送信する。具体的には、操作者（例えばプレーヤ）が操作する操作オブジェクト（例えばキャラクタ）の情報（移動情報等）に基づいて、仮想カメラの情報を取得して、各領域担当処理装置１０に送信する。すると各領域担当処理装置１０は、受信した仮想カメラの情報に基づいて、仮想カメラから見える各領域の画像の描画処理を行う。即ち仮想カメラ情報で設定される視点、視線の仮想カメラで領域内のオブジェクトを描画する。
【００４５】
図２に、複数の領域Ｒ１〜Ｒnと、これらの領域Ｒ１〜Ｒnでの処理を担当する領域担当処理装置１０-1〜１０-nの例を示す。領域Ｒ１〜Ｒnは仮想３次元空間（オブジェクト空間、ゲーム空間）を分割した領域である。図２では仮想３次元空間を複数のグリッド領域に分割している。また図２では説明を簡素化するために２次元的に分割した例を示しているが、領域は３次元的な分割とすることができる。例えば高さ方向においても複数の領域に分割してもよい。また領域の分割形状は、図２のようなグリッド形状には限定されず、グリッド形状以外の種々の形状を採用できる。
【００４６】
領域担当処理装置１０-1〜１０-nは領域Ｒ１〜Ｒnの対応する領域についてのオブジェクトの制御処理や描画処理を担当する。例えば領域担当処理装置１０-1は、領域Ｒ１に存在するオブジェクトの制御処理（移動処理、動作処理等）を実行する。また仮想カメラＶＣの視点で、領域Ｒ１に存在するオブジェクトを描画する。そして、得られた描画画像データ（仮想カメラＶＣから見える領域Ｒ１の描画画像のデータ）を送信する。他の領域Ｒ２〜Ｒnを担当する領域担当処理装置１０-2〜１０-nの処理も同様である。
【００４７】
図３に領域担当処理装置１０の構成例を示す。領域担当処理装置１０は、処理部２００、記憶部２２０、通信処理部２３０を含む。この領域担当処理装置１０は、例えばサーバのような情報処理装置により実現してもよいし、ＣＰＵ（マイクロコンピュータ）とメモリが実装された回路ボードにより実現したり、並列コンピューティングを実現するプロセッサ等の集積回路装置により実現してもよい。なお、領域担当処理装置１０は図３の構成に限定されず、その構成要素の一部を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。
【００４８】
処理部２００（プロセッサ）は、例えば仮想カメラの情報、操作オブジェクト（キャラクタ等）の操作情報、プログラムなどに基づいて、オブジェクト制御処理、ゲーム処理、画像生成処理、或いは音生成処理などを行う。処理部２００は記憶部２２０をワーク領域として各種処理を行う。この処理部２００の機能は、各種プロセッサ（ＣＰＵ、ＧＰＵ等）、ＡＳＩＣ（ゲートアレイ等）などのハードウェアや、プログラムにより実現できる。
【００４９】
処理部２００は、オブジェクト空間設定部２１０、オブジェクト制御部２１２、描画部２１４を含む。なおこれらの構成要素の一部を省略したり、他の構成要素（例えばゲーム処理部、音生成部）を追加するなどの種々の変形実施が可能である。
【００５０】
オブジェクト空間設定部２１０は、各種オブジェクト（ポリゴン、自由曲面又はサブディビジョンサーフェイスなどのプリミティブ面で構成されるオブジェクト）をオブジェクト空間（仮想３次元空間）に配置設定する処理を行う。即ちワールド座標系でのオブジェクトの位置や回転角度（向き、方向と同義）を決定し、その位置（Ｘ、Ｙ、Ｚ）にその回転角度（Ｘ、Ｙ、Ｚ軸回りでの回転角度）でオブジェクトを配置する。具体的には、記憶部２２０のモデルデータ記憶部２２２には、モデルオブジェクトの形状や画像を規定する各種モデルデータ（ポリゴンデータ、テクスチャデータ等）が記憶される。また記憶部２２０のオブジェクトデータ記憶部２２４には、オブジェクトの位置、回転角度、移動速度、移動方向等のデータであるオブジェクトデータがオブジェクト番号に対応づけて記憶される。そしてこのオブジェクトデータは、オブジェクト制御部２１２のオブジェクト制御処理（移動演算処理）により順次更新される。なお、オブジェクトとしては、人、ロボット、車、戦闘機、ミサイル、弾等を表す移動オブジェクトや、マップ（地形）、建物、コース（道路）、樹木、壁などを表す固定オブジェクトがある。またオブジェクトとして非表示のオブジェクトを設けてもよい。
【００５１】
オブジェクト制御部２１２は、オブジェクトを移動させるための処理や、オブジェクトを動作させるための処理を行う。即ち、図１の管理処理部４０から受信した操作オブジェクトの操作情報や、プログラム（移動・動作アルゴリズム）や、各種データ（モーションデータ）などに基づいて、オブジェクト（移動オブジェクト）をオブジェクト空間内で移動させたり、オブジェクトを動作（モーション、アニメーション）させる処理を行う。具体的には、オブジェクトの移動情報（位置、回転角度、速度、或いは加速度）や動作情報（パーツオブジェクトの位置、或いは回転角度）を、１フレーム（１／６０秒）毎に順次求めるシミュレーション処理（物理演算）を行う。なおフレームは、移動・動作処理（シミュレーション処理）や画像生成処理を行う時間の単位である。
【００５２】
例えばオブジェクト制御部２１２は、モーションデータに基づいて、オブジェクトのモーションを再生する処理を行う。即ち、オブジェクト（スケルトン）を構成する各パーツオブジェクト（スケルトンを構成する骨）の位置又は回転角度（方向）等を含むモーションデータを用いて、オブジェクトの各パーツオブジェクト（骨）を動かすことで（スケルトン形状を変形させることで）、オブジェクトのモーションを再生する。
【００５３】
描画部２１４は移動オブジェクトや固定オブジェクトなどのオブジェクトの描画処理を行う。例えば処理部２００で行われる種々の処理（シミュレーション処理、ゲーム処理）の結果に基づいて描画処理を行い、これにより描画画像を生成する。いわゆる３次元ゲーム画像を生成する場合には、まずオブジェクトの各頂点の頂点データ（頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等）が生成され、これらのデータに基づいて、頂点処理（頂点シェーダによるシェーディング）が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理（テッセレーション、曲面分割、ポリゴン分割）を行うようにしてもよい。
【００５４】
頂点処理（頂点シェーダ処理）では、頂点処理プログラム（頂点シェーダプログラム、第１のシェーダプログラム）に従って、頂点の移動処理や、座標変換（ワールド座標変換、
カメラ座標変換）、クリッピング処理、あるいは透視変換等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更（更新、調整）する。そして、頂点処理後の頂点データに基づいてラスタライズ（走査変換）が行われ、ポリゴン（プリミティブ）の面とピクセルとが対応づけられる。そしてラスタライズに続いて、画像を構成するピクセル（表示画面を構成するフラグメント）を描画するピクセル処理（ピクセルシェーダによるシェーディング、フラグメント処理）が行われる。
【００５５】
ピクセル処理（ピクセルシェーダ処理）では、ピクセル処理プログラム（ピクセルシェーダプログラム、第２のシェーダプログラム）に従って、図示しないテクスチャ記憶部に記憶されるテクスチャの読出し（テクスチャマッピング）、色データの設定／変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定する。そして透視変換されたモデルの描画色を描画バッファ２２６（ピクセル単位で画像情報を記憶できるバッファ。ＶＲＡＭ、レンダリングターゲット、フレームバッファ）に出力（描画）する。即ち、ピクセル処理では、画像情報（色、法線、輝度、α値等）をピクセル単位で設定あるいは変更するパーピクセル処理を行う。これにより、オブジェクト空間内において仮想カメラ（所与の視点）から見える画像が生成される。
【００５６】
なお頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、ポリゴン（プリミティブ）の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ（頂点シェーダやピクセルシェーダ）により実現される。プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、従来のハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。
【００５７】
記憶部２２０は、処理部２００や通信処理部２３０などのワーク領域となるもので、その機能はＲＡＭ（ＤＲＡＭ、ＶＲＡＭ）などにより実現できる。この記憶部２２０が含むモデルデータ記憶部２２２は、オブジェクト（例えば領域間を移動する移動オブジェクト）のモデルデータを記憶する。またオブジェクトデータ記憶部２２４は、リアルタイムに更新されるオブジェクトデータを記憶する。
【００５８】
通信処理部２３０は、有線や無線のネットワーク（伝送路）を介して外部（例えば図１の通信処理部２０、管理処理部４０）との間で通信を行うものであり、その機能は、通信用ＡＳＩＣ又は通信用プロセッサなどのハードウェアや、通信用ファームウェアにより実現できる。
【００５９】
例えば領域担当処理装置１０の担当領域にキャラクタ等の操作オブジェクト（操作者の操作対象となるオブジェクト）が存在し、領域担当処理装置１０が操作オブジェクトの制御処理を担当していたとする。この場合には領域担当処理装置１０は、制御処理後（移動処理後）の操作オブジェクトの情報（位置、方向等の移動情報）を、通信処理部２３０を介して図１の管理処理部４０に送信する。また領域担当処理装置１０は、担当する領域から移動オブジェクトが出た場合に、移動オブジェクトの情報を、他の領域を担当する領域担当処理装置に知らせるための処理を行う。即ち移動オブジェクトの情報を通信処理部２３０を介して送信し、例えば管理処理部４０等を介して他の領域担当処理装置に知らせる。この場合の移動オブジェクトの情報としては、移動オブジェクトの位置情報や方向情報等の移動情報や、モーション情報等の制御用情報がある。
【００６０】
図４に本実施形態の画像生成システムのハードウェア構成例を示す。図４では、図１の管理処理部４０が、管理サーバ等の管理処理装置４２により実現され、画像合成部３０が、画像合成装置３２により実現される。
【００６１】
図４において領域担当処理装置１０-1〜１０-n（グリッドコンピュータ）は、領域Ｒ１〜Ｒn（グリッド）に存在するオブジェクト（物体）の情報を有している。そして管理処理装置４２からネットワーク（ネットワークスイッチ２２）を介して仮想カメラＶＣの情報を受信する。そして仮想カメラＶＣから見える領域Ｒ１〜Ｒnの画像を描画し、得られた描画画像データを、ネットワークを介して画像合成装置３２に送信する。すると画像合成装置３２は、受信した描画画像データに基づいて画像合成処理を行って、表示部１００の表示画像を生成する。
【００６２】
具体的には図５において、平面をグリッドを切って、各グリッドに領域担当処理装置１０-1〜１０-nを配置設定する。各領域担当処理装置１０は、仮想カメラ情報を管理処理装置４２から受信すると、自身の担当領域（担当グリッド）のオブジェクトのみをレンダリングする。そして各領域担当処理装置１０は、担当分の処理が完了すると、例えばＲＧＢ（ＲＧＢα）の画像データと奥行きデータ（Ｚ値）を含む描画画像データを、画像合成装置３２に送信する。この際に例えば自身が描画を担当してない空白分をトリミングした描画画像データを送信してもよい。
【００６３】
画像合成装置３２は、各領域担当処理装置１０の描画画像の合成処理を行う。そして合成処理が終了すると、受信用バッファ５０（フレームバッファ）が表示用バッファ６０に切り替わり、操作者が見る表示部１００に表示画像が表示される。
【００６４】
以上の本実施形態の画像生成システムによれば、各領域担当処理装置は、例えばグリッド等で区切られた自身の担当領域の処理だけを行えば済むため、有限の短い時間で処理を終えることができ、大規模な並列コンピューティングを容易に実現できる。また領域担当処理装置からは描画画像データが送信されるため、ネットワークのデータ転送量は描画画像データ量以上にならなくて済む。従って、有限の短い時間でデータを転送することができ、ネットワークのデータ転送量の不足に起因する不具合を防止できる。また画像合成装置（画像合成部）は、転送されて来た各領域担当処理装置の描画画像を合成すれば済むため、並列処理が容易になる。即ち画像合成処理装置が行う処理は、ピクセル単位の奥行きデータによる並べ替えと合成だけで済むため、処理を単純化できる。従って本実施形態によれば、大規模な演算処理結果を比較的短時間で実行し、これまでにない高品質な動画を生成することが可能になる。
【００６５】
なお本実施形態の画像生成システムのハードウェア構成としては種々のものを想定できる。例えば領域担当処理装置や画像合成装置や管理処理装置は、ＣＰＵやメモリ等が実装された回路ボードや、集積回路装置であってもよく、この場合には、ネットワークは、回路ボード上の配線や集積回路装置の接続線により実現される。
【００６６】
また例えば領域担当処理装置として、インターネット等のネットワークに接続された家庭用ゲーム装置を用いてもよい。この場合には、ネットワークには接続されているが、ネットワークを実際には利用していない家庭用ゲーム装置を、ネットワークの中から検索し、これらの検索された家庭用ゲーム装置を領域担当処理装置に割り当てる。そして、このサービスを利用するプレーヤの家庭用ゲーム装置に接続される表示部（テレビ等）に対して、生成された表示画像を表示する。即ちプレーヤが、その家庭用ゲーム装置のゲームコントローラを操作すると、その操作情報が、他の領域担当処理装置である他の家庭用ゲーム装置に伝えられ、他の家庭用ゲーム装置が、担当する領域に存在するオブジェクトの制御処理や描画処理を実行する。そして、その処理結果に基づく描画画像が、例えばゲームメーカ等が運営する画像合成用のサーバ（画像合成装置）に送信され、画像合成用のサーバが描画画像を合成して表示画像を生成する。そして画像合成用のサーバは、生成された表示画像を、当該サービスを利用するプレーヤの家庭用ゲーム装置に対してネットワークを介して送信する。これにより、当該プレーヤが見る表示部に対して高品質なゲーム画像を表示できるようになる。
【００６７】
２．動作
次に本実施形態の動作について図６、図７のデータフロー図等を用いて詳細に説明する。図６は、図１の操作オブジェクト管理部４４、仮想カメラ管理部４６、領域担当処理装置１０、画像合成部３０の間のデータフロー図である。
【００６８】
まず操作オブジェクト管理部４４が、プレーヤが操作するキャラクタ等の操作オブジェクトの位置、方向を仮想カメラ管理部４６に知らせる（ステップＳ１）。すると仮想カメラ管理部４６は、操作オブジェクトの位置、方向から、仮想カメラ情報を生成し、仮想カメラ情報を、すべての領域担当処理装置１０-1〜１０-nに送信する（ステップＳ２、Ｓ３）。例えば三人称視点の場合には、操作オブジェクトに仮想カメラが追従するように仮想カメラの視点位置、視線方向を求める。一方、一人称視点の場合には、操作オブジェクトの視点に仮想カメラを設定すればよい。
【００６９】
各領域担当処理装置１０は、仮想カメラ情報を受信すると、受信した仮想カメラ情報に基づいて、担当領域のオブジェクトを仮想カメラから見た時の画像を描画する（ステップＳ４、Ｓ５）。そして生成された描画画像を画像合成部３０（画像合成装置３２）に送信する（ステップＳ６）。すると画像合成部３０は、受信した描画画像を合成して、表示画像を生成して、表示部１００に出力する（ステップＳ７、Ｓ８）。
【００７０】
また領域担当処理装置がキャラクタ等の操作オブジェクトを担当する処理装置である場合には、操作オブジェクト管理部４４は、操作オブジェクトの操作情報を、操作オブジェクトが存在する領域の担当処理装置に知らせる（ステップＳ９、Ｓ１０）。即ち図示しない操作部を用いて操作者（プレーヤ）が操作オブジェクトの操作を行うと、その操作情報が、操作オブジェクトが存在する領域の担当処理装置に知らされる。
【００７１】
操作情報を受信した領域担当処理装置１０は、操作情報に基づいて、自身の領域に存在する操作オブジェクトの移動や動作などの制御処理を実行する（ステップＳ１１）。また担当領域のオブジェクト（例えば他のキャラクタや弾等の移動オブジェクト）の物理演算などの制御処理を実行する（ステップＳ１２）。そして操作オブジェクトの最終的な位置、方向を操作オブジェクト管理部４４に知らせ、操作オブジェクト管理部４４は、操作オブジェクトの最終的な位置、方向を、当該フレームの情報として保存する（ステップＳ１３、Ｓ１４）。また操作オブジェクト管理部４４は、領域境界を越えた移動オブジェクトの別領域への登録処理を行う（ステップ１５）。即ち移動オブジェクトが領域を出た場合に、移動オブジェクトの情報を他の領域の担当処理装置に知らせるための処理を行う。
【００７２】
図７に領域担当処理装置ＣＰ１、ＣＰ２、ＣＰ３と画像合成部３０の間のデータフロー図である。図７では、説明を簡単にするために領域担当処理装置が３つである場合の例を示す。
【００７３】
領域担当処理装置ＣＰ３は、担当領域の描画処理が終了すると、描画終了宣言を画像合成部３０に伝え、画像合成部３０が保存する（ステップＳ２１、Ｓ２２）。そして画像合成部３０は、領域担当処理装置ＣＰ３に対して画像送信のリクエストを出し、ＣＰ３が画像を送信する（ステップＳ２３、Ｓ２４）。画像合成部３０は、画像を受信すると、その合成を行う（ステップＳ２５）。
【００７４】
同様に領域担当処理装置ＣＰ１は、担当領域の描画処理が終了すると、描画終了宣言を画像合成部３０に伝え、画像合成部３０が保存する（ステップＳ２６、Ｓ２７）。そして画像合成部３０は、領域担当処理装置ＣＰ１に対して画像送信のリクエストを出し、ＣＰ１が画像を送信する（ステップＳ２８、Ｓ２９）。画像合成部３０は、画像を受信すると、その合成を行う（ステップＳ３０）。
【００７５】
また領域担当処理装置ＣＰ２は、担当領域の描画処理が終了すると、描画終了宣言を画像合成部３０に伝え、画像合成部３０が保存する（ステップＳ３１、Ｓ３２）。そして画像合成部３０は、領域担当処理装置ＣＰ２に対して画像送信のリクエストを出し、ＣＰ２が画像を送信する（ステップＳ３３、Ｓ３４）。画像合成部３０は、画像を受信すると、その合成を行う（ステップＳ３５）。このようにして領域担当処理装置ＣＰ１〜ＣＰ３の描画画像が合成され、表示画像が生成されるようになる。
【００７６】
本実施形態では図６のステップＳ３、Ｓ４に示すように、管理処理部（仮想カメラ管理部）は、仮想カメラの情報を各領域担当処理装置に送信する。具体的にはステップＳ１、Ｓ２に示すように、管理処理部は、操作オブジェクトの情報に基づいて、仮想カメラの情報を取得し、各領域担当処理装置に送信する。そしてステップＳ５に示すように各領域担当処理装置は、受信した仮想カメラの情報に基づいて、仮想カメラから見える各領域の画像を描画する。このようにすれば各領域担当処理装置が仮想カメラを管理しなくても、管理処理部により仮想カメラの制御を一元的に管理できるようになる。そして各領域担当処理装置は、管理処理部から仮想カメラ情報を受信することで、仮想カメラから見た各領域の画像を生成できるようになる。
【００７７】
またステップＳ１１、Ｓ１３、Ｓ１４に示すように、操作オブジェクトの制御処理を行う領域担当処理装置は、制御処理後の操作オブジェクトの情報を、管理処理部（操作オブジェクト管理部）に送信する。そして管理処理部は、受信した操作オブジェクトの情報を保存する。このようにすれば、保存した操作オブジェクトの位置、方向等の情報を、例えば次のフレームにおいて、ステップＳ１に示すように仮想カメラ管理部に伝えたり、ステップＳ１０に示すように領域担当処理装置に伝えることが可能になる。このようにすれば各領域担当処理装置１０が操作オブジェクトの制御等を管理しなくても、管理処理部により操作オブジェクトの制御等を一元的に管理できるようになる。
【００７８】
またステップＳ１５に示すように、各領域担当処理装置は、担当領域から移動オブジェクトが出た場合に、その移動オブジェクトの情報を、他の領域を担当する領域担当処理装置に知らせるための処理を行う。
【００７９】
例えば図８（Ａ）では、移動オブジェクトＭＯＢは、領域Ｒ５から出て、隣の領域Ｒ４に移動している。この場合に領域Ｒ５の担当処理装置は、移動オブジェクトＭＯＢの情報として、ＭＯＢの移動情報や制御用情報を、領域Ｒ４の担当処理装置に知らせるための処理を行う。ここで図８（Ｂ）に示すように、移動オブジェクトＭＯＢの移動情報は、ＭＯＢの位置（Ｘ、Ｙ、Ｚ）、方向（θＸ、θＹ、θＺ）、速度（ＶＸ、ＶＹ、ＶＺ）、加速度（ＡＸ、ＡＹ、ＡＺ）などの情報である。また制御用情報は、モーション番号、モーションマトリックス（関節の角度情報）、ＡＩ（Artificial Intelligence）情報などである。
【００８０】
例えば移動オブジェクトＭＯＢが領域Ｒ５に存在する場合には、領域Ｒ５の担当処理装置がＭＯＢを制御する。このため領域Ｒ４の担当処理装置は移動オブジェクトＭＯＢの移動情報や制御用情報を知ることができない。
【００８１】
この点、本実施形態では、移動オブジェクトＭＯＢが領域Ｒ５からＲ４に移動すると、ＭＯＢの移動情報や制御用情報が領域Ｒ４の担当処理装置に知らされる。従って領域Ｒ４の担当処理装置は、ＭＯＢの位置、方向、速度、加速度などの移動情報を用いて、領域Ｒ５で実行されていた物理演算等を受け継いで実行できる。また移動オブジェクトＭＯＢのモーション再生が行われていた場合には、領域Ｒ４の担当処理装置は、領域Ｒ５を出た時のモーション番号を知ることで、次に再生するモーションを特定して、モーション再生を引き続き実行できる。また、物理演算等により基準モーションを補正するモーション生成を行っている場合には、領域Ｒ５でのモーションマトリックスを用いることで、モーション生成（基準モーションとのモーション合成）を実行できる。また移動オブジェクトＭＯＢが、所定のＡＩにしたがって動作する場合には、領域Ｒ５で適用されていたＡＩ情報を用いることで、領域Ｒ４においてもそのＡＩにしたがって移動オブジェクトＭＯＢを動作させることができる。
【００８２】
なお、各領域を実際の大きさよりも拡張した領域（緩衝領域、糊代領域）を設定するようにしてもよい。例えば図９では、領域Ｒ５よりも広い拡張領域Ｒ５’が設定されており、領域Ｒ５の担当処理装置は、移動オブジェクトＭＯＢが拡張領域Ｒ５’を超えるまで、ＭＯＢの制御を担当する。このようにすれば、例えば移動オブジェクトＭＯＢが領域の境界付近で移動する場合に、制御が不安定になるなどの不具合が発生することを防止できる。
【００８３】
３．画像生成手法
次に本実施形態の画像生成手法の具体例について説明する。
【００８４】
図１０（Ａ）では、操作オブジェクトに追従する仮想カメラＶＣは、領域Ｒ５に存在している。そして仮想カメラＶＣの視点からは、領域Ｒ５、Ｒ４、Ｒ１、Ｒ２のオブジェクトが見えている。この場合に領域Ｒ５、Ｒ４、Ｒ１、Ｒ２の担当処理装置は、各領域に存在するオブジェクトを仮想カメラＶＣの視点で描画することで、仮想カメラＶＣから見える描画画像を生成する。そして図５（Ｂ）に示すように、画像合成部は、領域Ｒ５、Ｒ４、Ｒ１、Ｒ２の担当処理装置により生成された描画画像を合成して、表示画像を生成する。このようにすれば、Ｒ５、Ｒ４、Ｒ１、Ｒ２の各領域内に多数のオブジェクトが存在する場合にも、各領域の担当処理装置により並列にオブジェクトの制御処理及び描画処理が実行されるため、従来では生成できなかった高品質な動画を生成できる。
【００８５】
即ち、これまでの画像生成システムでは、ゲームフィールド上に多数のキャラクタ等のオブジェクトが存在する場合に、これらの多数のオブジェクトの全てを制御して、精細な画像を生成することは難しかった。
【００８６】
この点、本実施形態によれば、これらの多数のオブジェクトの制御処理や描画処理が複数の領域担当処理装置により分担して実行されるため、ゲームフィールド上に多数のオブジェクトが登場するような動画を生成できる。また本実施形態によれば、このような動画を、プリレンダではなくリアルタイム（インタラクティブ）に生成することが可能になる。例えば操作者がゲームコントローラなどの操作部により操作を行うと、その操作の影響がゲームフィールド上の全てのオブジェクトに及ぶような動画も生成できる。例えば操作者が、爆発物のスイッチを押す操作を行うことで、ゲームフィールド上の全てのオブジェクトが爆風で吹き飛ぶというような動画の生成も可能になる。
【００８７】
さて領域担当処理装置からの描画画像データに基づく画像の合成手法としては、種々の手法が考えられる。
【００８８】
例えば図１１では、画像合成部は、各領域担当処理装置から描画画像データとして画像データ及び奥行きデータを受信する。ここで画像データとしては、例えばＲＧＢデータや半透明合成用のα値が考えられる。また奥行きデータとしては、Ｚ比較用のＺ値が考えられる。画像合成部は、このようなＲＧＢ（ＲＧＢα）データと奥行きデータを受信すると、受信した奥行きデータに基づいて画像合成処理を行う。具体的には図１１のように奥行きデータであるＺ値に基づくＺ比較処理を行い、ＲＧＢデータを描画する。即ち、元の画像のＺプレーンのＺ値と、各領域担当処理装置の描画画像のＺ値を比較し、仮想カメラから見て手前側にあると判断されたピクセルについては、各領域担当処理装置からのＲＧＢデータを描画する。このとき必要であればα値に基づく半透明合成処理を行う。
【００８９】
図１１の手法によれば、各領域担当処理装置の描画処理により得られたＺ値を有効活用して、描画画像の合成処理を実現できる。この場合に、ピクセル単位で隠面消去が行われるため、高品質な表示画像の生成が可能になる。
【００９０】
なお、処理の簡素化や処理負荷の軽減を図るためには、画像合成部が、仮想カメラから遠い領域から順に、描画画像データに基づく画像合成処理を行うようにしてもよい。例えば図１２において、ＰＲ１〜ＰＲ９は、領域Ｒ１〜Ｒ９の代表点である。またＺＲ１、ＺＲ２、ＺＲ４、ＺＲ５は、仮想カメラＶＣの座標系における領域Ｒ１、Ｒ２、Ｒ４、Ｒ５の代表点ＰＲ１、ＰＲ２、ＰＲ４、ＰＲ５のＺ値である。そしてこれらのＺ値ＺＲ１、ＺＲ２、ＺＲ４、ＺＲ５に基づき判断すると、領域Ｒ１が最も遠く、領域Ｒ５が最も近いと判断される。従って、この場合には、まずＲ１の領域担当処理装置の描画画像を描画し、次にＲ２の領域担当処理装置の描画画像を描画し、次にＲ４の領域担当処理装置の描画画像を描画し、最後にＲ５の領域担当処理装置の描画画像を描画する。このようにすれば、描画画像データにＺ値を含ませなくても、適正な隠面消去処理を実現できる。
【００９１】
なお、各領域担当処理装置の描画領域を特定するための描画領域特定情報を、各領域担当処理装置が画像合成部に送信するようにしてもよい。例えば図１１において、描画領域の座標（Ｘ１、Ｙ１）、（Ｘ２、Ｙ２）、（Ｘ３、Ｙ３）、（Ｘ４、Ｙ４）を描画領域特定情報として送信する。この場合に、描画領域以外の画像についてはトリミングして送信してもよい。そして画像合成部は、この描画領域特定情報により特定される描画領域に、各領域担当処理装置からの描画画像を合成する。このようにすれば、画像合成部は、描画領域特定情報により特定される領域に描画画像を書き込むだけで済むため、処理を単純・簡素化でき、画像合成部の処理負荷を軽減できる。
【００９２】
なお描画領域特定情報としては種々の態様の情報を想定できる。例えば描画領域の原点と大きさにより特定してもよい。或いは、描画領域を含むようなバウンディングボリュームを設定して、このバウンディングボリュームにより描画領域を特定するようにしてもよい。
【００９３】
さて、前述の図５のようにネットワーク（ネットワークスイッチ２２）に対して多数の領域担当処理装置１０-1〜１０-nが接続された場合に、ネットワークのデータ転送がボトルネックになって、受信用バッファへの描画画像データの書き込みに長い待ち時間が発生してしまうおそれがある。
【００９４】
そこで図１３では、領域担当処理装置での描画画像が書き込まれる複数の受信用バッファ５０-1〜５０-mを設けている。そして複数の受信用バッファ５０-1〜５０-mに対応して設けられた複数のサブ画像合成部により、受信用バッファ５０-1〜５０-mの各々に対する描画画像の合成処理を行う。例えば第１のサブ画像合成装置（画像合成部）が第１の受信用バッファ５０-1に対して描画画像を書き込んでいる時に、他の領域担当処理装置から描画画像のデータを受信した場合には、処理が空いている第２のサブ画像合成装置が第２の受信用バッファ５０-2に対してその描画画像を書き込む。またこの描画処理の際に、他の領域担当処理装置から描画画像のデータを受信した場合には、処理が空いている第３のサブ画像合成装置が第３の受信用バッファ５０-3に対してその描画画像を書き込む。そしてメインの画像合成装置は、受信用バッファ５０-1〜５０-mの描画画像を合成した画像を表示用バッファ６０に書き込んで、表示画像を生成する。
【００９５】
このようにすれば、複数の領域担当処理装置から同時に複数の描画画像データが送られて来た場合にも、待ち時間を最小限に抑えて、描画画像データを受信用バッファに書き込むことが可能になる。従って、ネットワークのデータ転送がボトルネックになって受信用バッファへの描画画像データの書き込みに長い待ち時間が発生してしまうという事態を解消できる。
【００９６】
また図１４では、受信用バッファ５０が複数の分割領域に分割されている。具体的にはグリッド状に分割されている。そしてサブ画像合成装置３４-1〜３４-kの各サブ画像合成装置は、複数の分割領域の各分割領域の書き込み処理を担当する。例えば第１の分割領域については第１のサブ画像合成装置３４-1が担当し、第２の分割領域については第２のサブ画像合成装置３４-2が担当する。
【００９７】
そして各サブ画像合成装置（サブ画像合成部）は、各領域担当処理装置から受信した描画画像データに基づいて、担当する分割領域への描画画像の書き込み処理を行う。例えば第１のサブ画像合成装置３４-1は、各領域担当処理装置から描画画像データを受信して、第１の分割領域に描画画像を書き込む。また第２のサブ画像合成装置３４-2は、各領域担当処理装置から描画画像データを受信して、第２の分割領域に描画画像を書き込む。
【００９８】
そしてメイン画像合成装置（メイン画像合成部）は、受信用バッファ５０の複数の分割領域の描画画像を合成する処理を行う。即ちサブ画像合成装置３４-1〜３４-kが担当する第１〜第kの分割領域の描画画像を合成した表示画像を、表示用バッファ６０に書き込む。
【００９９】
このようにすれば、各サブ画像合成装置が担当する領域のサイズを小さくできるため、サブ画像合成装置のパフォーマンスがそれほど高くなくても、描画画像の書き込み処理を短い時間で完了することができる。従って、画像合成の並列化を容易化でき、複数のサブ画像合成装置を用いて品質の高い表示画像を生成できるようになる。
【０１００】
なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また、画像合成手法、通信手法、処理の並列化手法等も、本実施形態で説明したものに限定されず、これらと均等な手法も本発明の範囲に含まれる。
【符号の説明】
【０１０１】
１０、１０-1〜１０-n  領域担当処理装置、２０  通信処理部、
２２  ネットワークスイッチ、３０  画像合成部、３２  画像合成装置、
３４-1〜３４-k  サブ画像合成装置、３６  メイン画像合成装置、
４０  管理処理部、  ４２  管理処理装置、４４  操作オブジェクト管理部、
４６  仮想カメラ管理部、５０、５０-1〜５０-m  受信用バッファ、
６０  表示用バッファ、１００  表示部、２００  処理部、
２１０  オブジェクト空間設定部、２１２  オブジェクト制御部、２１４  描画部、
２２０  記憶部、２２２  モデルデータ記憶部、２２４、オブジェクトデータ記憶部、
２２６  描画バッファ、２３０  通信処理部
【図１】
2010165100.tif 000003
【図２】
2010165100.tif 000004
【図３】
2010165100.tif 000005
【図４】
2010165100.tif 000006
【図５】
2010165100.tif 000007
【図６】
2010165100.tif 000008
【図７】
2010165100.tif 000009
【図８】
2010165100.tif 000010
【図９】
2010165100.tif 000011
【図１０】
2010165100.tif 000012
【図１１】
2010165100.tif 000013
【図１２】
2010165100.tif 000014
【図１３】
2010165100.tif 000015
【図１４】
2010165100.tif 000016