(57)【特許請求の範囲】
【請求項１】
画像生成を行う画像生成システムであって、
オブジェクト空間に配置された視点を基準としてオブジェクトに対してジオメトリ処理を施すジオメトリ処理部と、
ジオメトリ処理後のオブジェクトの画像を含むフレーム画像をフレームバッファの描画領域に描画することによって、周期Ｔ毎に描画領域の書き換えを行う描画部とを含み、
表示画面が複数の分割画面に分割される画面分割モード時に、オブジェクト空間に各分割画面に対応する複数の視点が配置され、
前記描画部が、
前記画面分割モード時に、前記複数の視点のそれぞれから見えるべき画像のそれぞれを複数のフレーム画像として、前記フレームバッファを前記複数の分割画面に対応させて分割した複数の分割描画領域のそれぞれに対して、周期Ｎ×Ｔ毎（Ｎは２以上の整数）に各分割描画領域に対応する各フレーム画像を描画することによって全ての分割描画領域の書き換えを行うことを特徴とする画像生成システム。
【請求項２】
請求項１において、
前記複数の分割描画領域の境界が前記複数の分割画面の境界の一部又は全部と一致するように、前記フレームバッファの描画領域が前記複数の分割描画領域に分割されていることを特徴とする画像生成システム。
【請求項３】
請求項１又は２において、
フレームバッファが描画領域と表示領域を有し、
前記描画部が、
フレームバッファの描画領域の奇数走査ラインのフレーム画像と偶数走査ラインのフレーム画像のいずれか一方を、周期Ｔ毎に交互に、フレームバッファの表示領域にコピーすることを特徴とする画像生成システム。
【請求項４】
請求項１乃至３のいずれかにおいて、
前記描画部が、
フレームバッファの描画領域を複数の分割描画領域に分割して周期Ｎ×Ｔ毎に全ての描画領域の書き換えを行う場合には、フレームバッファの描画領域を分割せずに周期Ｔ毎に全ての描画領域の書き換えを行う場合に比べて精細度を高めた画像を前記複数のフレーム画像として前記複数の分割描画領域に描画することを特徴とする画像生成システム。
【請求項５】
画像生成を行う画像生成システムであって、
オブジェクトに対してジオメトリ処理を施すジオメトリ処理部と、
ジオメトリ処理後のオブジェクトの画像を含むフレーム画像をフレームバッファの描画領域に描画し、周期Ｔ毎に描画領域の書き換えを行う描画部と、
移動オブジェクトの移動情報を求め、移動オブジェクトをオブジェクト空間内で移動させるシミュレーション処理を行う移動処理部とを含み、
前記描画部が、
第１のモードでは周期Ｔ毎に描画領域の書き換えを行い、
第２のモードでは周期Ｎ×Ｔ毎（Ｎは２以上の整数）に描画領域の書き換えを行い、
前記移動処理部が、
第２のモード時に周期Ｎ×Ｔ毎に描画領域の書き換えが行われている場合にも、前記シミュレーション処理を周期Ｔ毎に行うことを特徴とする画像生成システム。
【請求項６】
画像生成を行う画像生成システムであって、
オブジェクトに対してジオメトリ処理を施すジオメトリ処理部と、
ジオメトリ処理後のオブジェクトの画像を含むフレーム画像をフレームバッファの描画領域に描画し、周期Ｔ毎に描画領域の書き換えを行う描画部と、
操作データを受け付ける処理を行う受け付け部とを含み、
前記描画部が、
第１のモードでは周期Ｔ毎に描画領域の書き換えを行い、
第２のモードでは周期Ｎ×Ｔ毎（Ｎは２以上の整数）に描画領域の書き換えを行い、
前記受け付け部が、
第２のモード時に周期Ｎ×Ｔ毎に描画領域の書き換えが行われている場合にも、前記操作データを受け付ける処理を周期Ｔ毎に行うことを特徴とする画像生成システム。
【請求項７】
画像生成を行う画像生成システムであって、
オブジェクトに対してジオメトリ処理を施すジオメトリ処理部と、
ジオメトリ処理後のオブジェクトの画像を含むフレーム画像をフレームバッファの描画領域に描画し、周期Ｔ毎に描画領域の書き換えを行う描画部と、
オブジェクトのモーション再生処理を行う再生処理部とを含み、
前記描画部が、
第１のモードでは周期Ｔ毎に描画領域の書き換えを行い、
第２のモードでは周期Ｎ×Ｔ毎（Ｎは２以上の整数）に描画領域の書き換えを行い、
前記再生処理部が、
第２のモード時に周期Ｎ×Ｔ毎に描画領域の書き換えが行われている場合にも、前記オブジェクトのモーション再生処理を周期Ｔ毎に行うことを特徴とする画像生成システム。
【請求項８】
画像生成を行う画像生成システムであって、
オブジェクトに対してジオメトリ処理を施すジオメトリ処理部と、
ジオメトリ処理後のオブジェクトの画像を含むフレーム画像をフレームバッファの描画領域に描画し、周期Ｔ毎に描画領域の書き換えを行う描画部と、
パラメータ値を演算する処理を行う演算処理部とを含み、
前記描画部が、
第１のモードでは周期Ｔ毎に描画領域の書き換えを行い、
第２のモードでは周期Ｎ×Ｔ毎（Ｎは２以上の整数）に描画領域の書き換えを行い、
前記演算処理部が、
第２のモード時に周期Ｎ×Ｔ毎に描画領域の書き換えが行われている場合にも、パラメータ値を演算する処理を周期Ｔ毎に行うことを特徴とする画像生成システム。
【請求項９】
画像を生成するためのプログラムであって、
オブジェクト空間に配置された視点を基準としてオブジェクトに対してジオメトリ処理を施すジオメトリ処理部と、
ジオメトリ処理後のオブジェクトの画像を含むフレーム画像をフレームバッファの描画領域に描画することによって、周期Ｔ毎に描画領域の書き換えを行う描画部として、
コンピュータを機能させると共に、
前記ジオメトリ処理部が、
表示画面が複数の分割画面に分割される画面分割モード時にオブジェクト空間に配置された複数の視点を基準として、各視点から見えるオブジェクトに対してジオメトリ処理を施し、
前記描画部が、
前記画面分割モード時に、前記複数の視点のそれぞれから見えるべき画像のそれぞれを複数のフレーム画像として、前記フレームバッファを前記複数の分割画面に対応させて分割した複数の分割描画領域のそれぞれに対して、周期Ｎ×Ｔ毎（Ｎは２以上の整数）に各分割描画領域に対応する各フレーム画像を描画することによって全ての分割描画領域の書き換えを行うことを特徴とするプログラム。
【請求項１０】
請求項９において、
前記複数の分割描画領域の境界が前記複数の分割画面の境界の一部又は全部と一致するように、前記フレームバッファの描画領域が前記複数の分割描画領域に分割されていることを特徴とするプログラム。
【請求項１１】
請求項９又は１０において、
フレームバッファが描画領域と表示領域を有し、
前記描画部が、
フレームバッファの描画領域の奇数走査ラインのフレーム画像と偶数走査ラインのフレーム画像のいずれか一方を、周期Ｔ毎に交互に、フレームバッファの表示領域にコピーすることを特徴とするプログラム。
【請求項１２】
請求項９乃至１１のいずれかにおいて、
前記描画部が、
フレームバッファの描画領域を複数の分割描画領域に分割して周期Ｎ×Ｔ毎に全ての描画領域の書き換えを行う場合には、フレームバッファの描画領域を分割せずに周期Ｔ毎に全ての描画領域の書き換えを行う場合に比べて精細度を高めた画像を前記複数のフレーム画像として前記複数の分割描画領域に描画することを特徴とするプログラム。
【請求項１３】
画像を生成するためのプログラムであって、
オブジェクトに対してジオメトリ処理を施すジオメトリ処理部と、
ジオメトリ処理後のオブジェクトの画像を含むフレーム画像をフレームバッファの描画領域に描画し、周期Ｔ毎に描画領域の書き換えを行う描画部と、
移動オブジェクトの移動情報を求め、移動オブジェクトをオブジェクト空間内で移動させるシミュレーション処理を行う移動処理部として、
コンピュータを機能させると共に、
前記描画部が、
第１のモードでは周期Ｔ毎に描画領域の書き換えを行い、
第２のモードでは周期Ｎ×Ｔ毎（Ｎは２以上の整数）に描画領域の書き換えを行い、
前記移動処理部が、
第２のモード時に周期Ｎ×Ｔ毎に描画領域の書き換えが行われている場合にも、前記シミュレーション処理を周期Ｔ毎に行うことを特徴とするプログラム。
【請求項１４】
画像を生成するためのプログラムであって、
オブジェクトに対してジオメトリ処理を施すジオメトリ処理部と、
ジオメトリ処理後のオブジェクトの画像を含むフレーム画像をフレームバッファの描画領域に描画し、周期Ｔ毎に描画領域の書き換えを行う描画部と、
操作データを受け付ける処理を行う受け付け部として、
コンピュータを機能させると共に、
前記描画部が、
第１のモードでは周期Ｔ毎に描画領域の書き換えを行い、
第２のモードでは周期Ｎ×Ｔ毎（Ｎは２以上の整数）に描画領域の書き換えを行い、
前記受け付け部が、
第２のモード時に周期Ｎ×Ｔ毎に描画領域の書き換えが行われている場合にも、前記操作データを受け付ける処理を周期Ｔ毎に行うことを特徴とするプログラム。
【請求項１５】
画像を生成するためのプログラムであって、
オブジェクトに対してジオメトリ処理を施すジオメトリ処理部と、
ジオメトリ処理後のオブジェクトの画像を含むフレーム画像をフレームバッファの描画領域に描画し、周期Ｔ毎に描画領域の書き換えを行う描画部と、
オブジェクトのモーション再生処理を行う再生処理部として、
コンピュータを機能させると共に、
前記描画部が、
第１のモードでは周期Ｔ毎に描画領域の書き換えを行い、
第２のモードでは周期Ｎ×Ｔ毎（Ｎは２以上の整数）に描画領域の書き換えを行い、
前記再生処理部が、
第２のモード時に周期Ｎ×Ｔ毎に描画領域の書き換えが行われている場合にも、前記オブジェクトのモーション再生処理を周期Ｔ毎に行うことを特徴とするプログラム。
【請求項１６】
画像を生成するためのプログラムであって、
オブジェクトに対してジオメトリ処理を施すジオメトリ処理部と、
ジオメトリ処理後のオブジェクトの画像を含むフレーム画像をフレームバッファの描画領域に描画し、周期Ｔ毎に描画領域の書き換えを行う描画部と、
パラメータ値を演算する処理を行う演算処理部として、
コンピュータを機能させると共に、
前記描画部が、
第１のモードでは周期Ｔ毎に描画領域の書き換えを行い、
第２のモードでは周期Ｎ×Ｔ毎（Ｎは２以上の整数）に描画領域の書き換えを行い、
前記演算処理部が、
第２のモード時に周期Ｎ×Ｔ毎に描画領域の書き換えが行われている場合にも、パラメータ値を演算する処理を周期Ｔ毎に行うことを特徴とするプログラム。
【請求項１７】
コンピュータ読み取り可能な情報記憶媒体であって、請求項９乃至１６のいずれかのプログラムを記憶したことを特徴とする情報記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像生成システム、プログラム及び情報記憶媒体に関する。
【背景技術】
【０００２】
従来より、仮想的な３次元空間であるオブジェクト空間内において所与の視点（仮想カメラ）から見える画像を生成する画像生成システム（ゲームシステム）が知られており、いわゆる仮想現実を体験できるものとして人気が高い。競争ゲーム（カーゲーム）を楽しむことができる画像生成システムを例にとれば、プレーヤは、操作部（ステアリング、シフトレバー、アクセルペダル、ブレーキペダル等）を用いて移動オブジェクト（自プレーヤ移動オブジェクト、自車）を操作し、他のプレーヤ（コンピュータプレーヤ又は他の人間プレーヤ）が操作する移動オブジェクト（他プレーヤ移動オブジェクト、他車）と競争することでゲームを楽しむ。
【０００３】
さて、このような画像生成システムでは、１フレーム周期に全てのオブジェクトの描画処理を完了しなければならないという課題がある。このような課題を解決する従来技術としては、例えば、視点からの距離に応じて移動オブジェクトの精密度（ポリゴン数）を変化させるＬＯＤ（Level  Of  Detail）と呼ばれる技術や、視点から近い順に移動オブジェクトに付された順序番号に基づいて移動オブジェクトの精密度を変化させる技術などがある。
【特許文献１】国際公開第９６／０８２９８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、例えば、マルチプレーヤゲーム用に表示画面を分割する場合などにおいては、上記のような従来技術を用いても、１フレーム周期に描画処理を完了させることが間に合わなくなる場合がある。
【０００５】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、画面分割モード等のモードにおいて高品質な画像を生成できる画像生成システム、プログラム及び情報記憶媒体を提供することにある。
【課題を解決するための手段】
【０００６】
本発明は、画像生成を行う画像生成システムであって、オブジェクトに対してジオメトリ処理を施すジオメトリ処理部と、ジオメトリ処理後のオブジェクトの画像を含むフレーム画像をフレームバッファの描画領域に描画し、周期Ｔ毎に描画領域の書き換えを行う描画部とを含み、前記描画部が、表示画面が複数の画面に分割される画面分割モード時に、周期Ｎ×Ｔ毎（Ｎは２以上の整数）に描画領域の書き換えを行う画像生成システムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラムに関係する。また本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶（記録）した情報記憶媒体に関係する。
【０００７】
本発明によれば、画面分割モード時においては、周期Ｔ（例えばフレーム周期）ではなく周期Ｎ×Ｔ毎に描画領域（全描画領域）の書き換えが行われる（描画領域の更新周期がＮ×Ｔになる）。従って、画面分割モード時における描画処理に時間的な余裕が生まれ、高品質な画像を生成できるようになる。なお画面分割モードにおいても、画面分割数が少ない場合（例えば２画面分割又は３画面分割等）には、周期Ｔ毎に描画領域の書き換えを行ってもよい。
【０００８】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記画面分割モード時には、表示画面が第１〜第Ｋのプレーヤ用（Ｋは２以上の整数）の第１〜第Ｋの画面に分割され、前記描画部が、オブジェクト空間において第１〜第Ｋのプレーヤの視点から見えるべき第１〜第Ｋの画像を、第１〜第Ｋの画面に対応する、フレームバッファの第１〜第Ｋの描画領域に描画するようにしてもよい。
【０００９】
このように表示画面を分割し、各プレーヤの視点から見えるべき画像を分割画面に表示する手法では、プレーヤの人数が増えるほど描画処理の負荷が重くなってしまう。しかしながら本発明では、このような場合にも、周期Ｎ×Ｔ毎に描画処理が行われるようになるため、高品質な画像を生成できる。
【００１０】
なお、本発明の画面分割モードは、上記のようなマルチプレーヤゲーム用に表示画面が分割されるモードには限定されない。
【００１１】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、移動オブジェクトの移動情報を求め、移動オブジェクトをオブジェクト空間内で移動させる処理を行う移動処理部を含み（該移動処理部として機能させるプログラム又は該プログラムを記憶した情報記憶媒体であって）、前記移動処理部が、画面分割モード時に周期Ｎ×Ｔ毎に描画領域の書き換えが行われている場合にも、移動オブジェクトの移動情報を求める処理を周期Ｔ毎に行うようにしてもよい。
【００１２】
このようにすれば、描画領域の書き換えについては周期Ｎ×Ｔ毎に行われている場合にも、移動処理については周期Ｔ毎に行われるようになり、移動処理の演算精度については維持できる。また描画領域の描画周期が変化した場合にも、移動処理の処理内容（プログラム）については変更しなくても済むようになる。
【００１３】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、フレームバッファが第１〜第Ｎの描画領域を有し、前記描画部が、第１〜第Ｎの描画領域を第１〜第Ｎの描画領域の順に周期Ｔ毎に順次書き換えることで、全描画領域の書き換えを周期Ｎ×Ｔ毎に行うようにしてもよい。
【００１４】
本発明によれば、第１の描画領域が書き換えられ、次に第２の描画領域の書き換えられ・・・次に第Ｎの描画領域が書き換えられるというように、周期Ｔ毎に第１〜第Ｎの描画領域が順次書き換えられる（順次描画される）。これにより、全描画領域の書き換えを周期Ｎ×Ｔ毎に行う処理を実現できる。
【００１５】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記画面分割モード時には、表示画面が第１〜第Ｋのプレーヤ用（Ｋは２以上の整数）の第１〜第Ｋの画面に分割され、前記描画部が、オブジェクト空間において第１〜第Ｋのプレーヤの視点から見えるべき第１〜第Ｋの画像を、第１〜第Ｋの画面に対応する、フレームバッファの第１〜第Ｋの描画領域に描画し、前記第１〜第Ｎの描画領域の境界が、前記第１〜第Ｋの描画領域の境界の一部又は全部と一致するようにしてもよい。
【００１６】
このようにすれば、第１〜第Ｋの画面の境界の一部又は全部が、第１〜第Ｎの描画領域の境界と一致するようになるため、その境界において表示物にずれが生じる事態の発生を防止できる。
【００１７】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、フレームバッファが描画領域と表示領域を有し、前記描画部が、フレームバッファの描画領域の奇数走査ラインのフレーム画像と偶数走査ラインのフレーム画像のいずれか一方を、周期Ｔ毎に交互に、フレームバッファの表示領域にコピーしてもよい。
【００１８】
このようにすれば、例えばインタレース走査方式の場合に、フレームバッファの表示領域の大きさを小さくすることが可能になり、メモリ容量を節約できる。
【００１９】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記描画部が、周期Ｎ×Ｔ毎に描画領域の書き換えを行う場合には、周期Ｔ毎に描画領域の書き換えを行う場合に比べて、より高精細のフレーム画像を描画領域に描画してもよい。
【００２０】
また本発明は、画像生成を行う画像生成システムであって、オブジェクトに対してジオメトリ処理を施すジオメトリ処理部と、ジオメトリ処理後のオブジェクトの画像を含むフレーム画像をフレームバッファの描画領域に描画し、周期Ｔ毎に描画領域の書き換えを行う描画部とを含み、前記描画部が、第１のモードでは周期Ｔ毎に描画領域の書き換えを行い、第２のモードでは周期Ｎ×Ｔ毎（Ｎは２以上の整数）に描画領域の書き換えを行うと共に、周期Ｔ毎に描画領域の書き換えを行う場合に比べて、より高精細のフレーム画像を描画領域に描画する画像生成システムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラムに関係する。また本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶（記録）した情報記憶媒体に関係する。
【００２１】
本発明によれば、第１のモードでは周期Ｔ毎に描画領域（全描画領域）の書き換えが行われる（描画領域の更新周期がＴになる）。一方、第２のモードでは周期Ｎ×Ｔ毎に描画領域（全描画領域）の書き換えが行われるようになる（描画領域の更新周期がＮ×Ｔになる）。そして第２のモードでは、第１のモードに比べて高精細の描画処理が行われる。従って、描画周期は長くなるものの、描画フレーム画像の精細度については向上できるようになる。
【発明を実施するための最良の形態】
【００２２】
以下、本実施形態について図面を用いて説明する。
【００２３】
なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００２４】
１．構成
図１に、本実施形態の画像生成システム（ゲームシステム）の機能ブロック図の例を示す。なお、本実施形態の画像生成システムは、図１の構成要素（各部）を全て含む必要はなく、その一部（例えば操作部１６０、携帯型情報記憶装置１９４又は通信部１９６等）を省略した構成としてもよい。
【００２５】
操作部１６０は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、ステアリング、シフトレバー、アクセルペダル、ブレーキペダル、マイク、センサー、タッチパネル、或いは筺体などのハードウェアにより実現できる。
【００２６】
記憶部１７０は、処理部１００や通信部１９６などのワーク領域となるもので、その機能はＲＡＭなどのハードウェアにより実現できる。
【００２７】
情報記憶媒体１８０（コンピュータにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ（ＲＯＭ）などのハードウェアにより実現できる。処理部１００は、この情報記憶媒体１８０に格納されるプログラム（データ）に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体１８０には、本実施形態の各部としてコンピュータを機能させるためのプログラム（各部の処理をコンピュータに実行させるためのプログラム）が記憶（記録、格納）される。
【００２８】
表示部１９０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴ、ＬＣＤ、タッチパネル、或いはＨＭＤ（ヘッドマウントディスプレイ）などのハードウェアにより実現できる。
【００２９】
音出力部１９２は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどのハードウェアにより実現できる。
【００３０】
携帯型情報記憶装置１９４は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置１９４としては、メモリカードや携帯型ゲーム装置などがある。
【００３１】
通信部１９６は、外部（例えばホスト装置や他の画像生成システム）との間で通信を行うための各種の制御を行うものであり、その機能は、各種プロセッサ又は通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【００３２】
なお本実施形態の各部としてコンピュータを機能させるためのプログラム（データ）は、ホスト装置（サーバー）が有する情報記憶媒体からネットワーク及び通信部１９６を介して情報記憶媒体１８０（記憶部１７０）に配信するようにしてもよい。このようなホスト装置（サーバー）の情報記憶媒体の使用も本発明の範囲内に含まれる。
【００３３】
処理部１００（プロセッサ）は、操作部１６０からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの各種の処理を行う。この場合、処理部１００は、記憶部１７０内の主記憶部１７２をワーク領域として使用して、各種の処理を行う。この処理部１００の機能は、各種プロセッサ（ＣＰＵ、ＤＳＰ等）又はＡＳＩＣ（ゲートアレイ等）などのハードウェアや、プログラム（ゲームプログラム）により実現できる。
【００３４】
処理部１００が行うゲーム処理としては、例えば、ゲームに登場するオブジェクト（表示物）を配置する処理、オブジェクトを移動させる処理、オブジェクトを動作させる処理（モーション再生処理）、オブジェクトを表示する処理、ゲームを進行させる処理、或いはゲーム結果を演算する処理などがある。
【００３５】
処理部１００は、モード設定部１１０、移動処理部１１２、動作処理部１１４、ジオメトリ処理部１１６、描画部（画像生成部）１２０、音生成部１３０を含む。
【００３６】
モード設定部１１０は、ゲームにおける各種のモードを設定するための処理を行う。具体的には、モード設定画面を表示するための処理、操作部１６０によりプレーヤがモード設定画面で入力した操作データを受け付ける処理、或いは受け付けた操作データに基づいてモードを決定する処理などを行う。
【００３７】
モード設定部１１０により設定されるモードとしては、ゲームに参加するプレーヤの人数（画面分割数）についてのモード（１人プレーヤモード〜４人プレーヤモード）、フレームレート（１秒間当たりのフレーム数、Frame  Per  Second）の設定モード、或いは描画の精細度（ポリゴン数、マップ分割数、又はレンダリング方式等）の設定モードなどがある。
【００３８】
移動処理部１１２（シミュレーション演算部）は、移動オブジェクト（オブジェクト）の移動情報（位置情報、方向情報、速度情報或いは加速度情報）を求める処理を行う。即ち、操作部１６０によりプレーヤが入力した操作データやゲームプログラムなどに基づいて、移動オブジェクトをオブジェクト空間内で移動させる処理を行う。
【００３９】
より具体的には、移動処理部１１２は、移動オブジェクトの位置や回転角度（方向）を例えば１フレーム（１／６０秒等）毎に変化させる。例えば（ｋ−１）フレームでの移動オブジェクトの位置（Ｘ、Ｙ又はＺ座標）、回転角度（Ｘ、Ｙ又はＺ軸回りの回転角度）をＰk-1、θk-1とし、オブジェクトの１フレームでの位置変化量（速度）、回転変化量（回転速度）をΔＰ、Δθとする。するとｋフレームでの移動オブジェクトの位置Ｐk、回転角度θkは例えば下式（１）、（２）のように求められる。
【００４０】
Ｐk＝Ｐk-1＋ΔＰ              （１）
θk＝θk-1＋Δθ              （２）
なお移動処理部１１２で行われる処理は上式（１）（２）の処理に限定されず、（１）（２）と均等な処理でもよい。
【００４１】
動作処理部１１４（シミュレーション演算部）は、移動オブジェクトの動作情報（移動オブジェクトの各パーツの位置情報、方向情報）を求める処理を行う。即ち、操作部１６０によりプレーヤが入力した操作データやゲームプログラムなどに基づいて、移動オブジェクトを動作（モーション、アニメーション）させる処理を行う。
【００４２】
より具体的には、動作処理部１１４は、移動オブジェクトのモーションをモーションデータに基づいて再生する処理等を行う。即ち、移動オブジェクト（モデルオブジェクト、スケルトン、キャラクタ）を構成する各パーツオブジェクト（スケルトンを構成する骨）の位置又は回転角度（方向）等を含むモーションデータを、記憶部１７０（モーションデータ記憶部）から読み出す。そして、移動オブジェクトの各パーツオブジェクト（骨）を動かすことで（スケルトン形状を変形させることで）、移動オブジェクトのモーションを再生する。
【００４３】
ジオメトリ処理部１１６はオブジェクトに対してジオメトリ処理を施す。より具体的には、座標変換、クリッピング処理、透視変換、或いは光源計算等のジオメトリ処理を行う。そしてジオメトリ処理結果に基づいて、描画データ（プリミティブ面の頂点の位置座標、テクスチャ座標、色データ、法線ベクトル、或いはα値等）を作成し、作成された描画データ（プリミティブ面データ）を描画部１２０に出力する。
【００４４】
描画部１２０は、処理部１００で行われる種々の処理の結果に基づいて描画処理を行い、これにより画像を生成し、表示部１６０に出力する。より具体的には、ジオメトリ処理部１１６からの描画データ（プリミティブ面データ）に基づいて、ジオメトリ処理後のオブジェクト（１又は複数のプリミティブ面）の画像を、フレームバッファ（ピクセル単位で画像情報を記憶できるバッファ）１７４に描画する。更に具体的には、ジオメトリ処理後のオブジェクトの画像を含むフレーム画像（１画面分の画像）をフレームバッファ１７４（ＶＲＡＭ）の描画領域（描画用に確保された領域）に描画し、周期Ｔ（フレーム周期。例えば１／６０秒）毎に描画領域の書き換え（更新）を行う。これにより、オブジェクト空間内において仮想カメラ（所与の視点）から見える画像が生成されるようになる。
【００４５】
そして本実施形態では描画部１２０が、画面分割モード（表示画面が複数の画面に分割されるモード）時において、周期Ｎ×Ｔ毎（Ｎは２以上の整数）に描画領域の書き換えを行う。より具体的には、表示画面が分割されない通常モードでは、周期Ｔ毎に（フレームレートＦＰＳで）、フレームバッファ１７４の描画領域の書き換えを行う。一方、画面分割モードでは、周期Ｎ×Ｔ毎に（ＦＰＳ／Ｎで）、描画領域の書き換えを行う。別の言い方をすれば表示画面の分割数に応じて（設定されるモードに応じて）、描画周期（フレームレート）を変化させる。このようにすることで、描画処理に時間的な余裕ができるため、画面分割モード時においても高品質な画像を生成できる。
【００４６】
なお画面分割モードの設定はモード設定部１１０により行われる。また、描画周期がＴ（フレーム周期）からＮ×Ｔ（フレーム周期のＮ倍）に切り替えられる画面分割数は任意である。例えば通常モードから２画面分割モードになった時に描画周期をＴからＮ×Ｔに切り替えてもよいし、２画面分割モードから３画面分割モードになった時、或いは３画面分割モードから４画面分割モードになった時に、ＴからＮ×Ｔに切り替えてもよいし、また画面分割数が増えるにつれて、周期Ｎ×ＴのＮを次第に増やすようにしてもよい。
【００４７】
また描画部１２０は、第１のモード（例えばフレームレートが大きく設定されるモード、描画処理の精細度が低精細に設定されるモード、画面分割数が少なく設定されるモード、或いは参加プレーヤ又は移動オブジェクトの数が少なく設定されるモード）では、周期Ｔ（フレームレートＦＰＳ）毎にフレームバッファ１７４の描画領域の書き換えを行う。一方、第２のモード（例えばフレームレートが小さく設定されるモード、描画処理の精細度が高精細に設定されるモード、画面分割数が多く設定されるモード、或いは参加プレーヤ又は移動オブジェクトの数が多く設定されるモード）では、周期Ｎ×Ｔ毎（Ｎは２以上の整数）に描画領域の書き換えを行うと共に、より高精細のフレーム画像（オブジェクトのポリゴン数が多い、表示されるオブジェクトの数が多い、或いはレンダリングの精度が高いフレーム画像）を描画領域に描画する。このようにすることで、描画周期（フレームレート）とＬＯＤ（Level  Of  detail）とのトレードオフを図ることができる。
【００４８】
音生成部１３０は、処理部１００で行われる種々の処理の結果に基づいて音処理を行い、ＢＧＭ、効果音、又は音声などのゲーム音を生成し、音出力部１９２に出力する。
【００４９】
なお、本実施形態の画像生成システムは、１人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、このようなシングルプレーヤモードのみならず、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
【００５０】
また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つの端末を用いて生成してもよいし、ネットワーク（伝送ライン、通信回線）などで接続された複数の端末（ゲーム機、携帯電話）を用いて生成してもよい。
【００５１】
２．本実施形態の手法
次に本実施形態の手法について図面を用いて説明する。
【００５２】
２．１  画面分割数に応じた描画周期の制御
本実施形態では、画面分割数に応じて描画周期（フレームレート）を制御している。
【００５３】
図２（Ａ）に、表示画面ＳＣ（表示部の画面）が分割されない通常モード時のゲーム画像の例を示す。プレーヤはこの表示画面ＳＣに表示されるゲーム画像を見ながら、操作部を用いて移動オブジェクトＭＯＢ（車等）を操作し、コース上で走行させる。そして表示画面ＳＣには、オブジェクト空間（仮想３次元空間）においてそのプレーヤの視点から見える画像（フレーム画像）が表示される。
【００５４】
一方、図２（Ｂ）に、表示画面が複数の画面に分割される画面分割モード時のゲーム画像の例を示す。図２（Ｂ）では、表示画面ＳＣが第１、第２、第３、第４のプレーヤ（以下、適宜１Ｐ、２Ｐ、３Ｐ、４Ｐプレーヤと呼ぶ）用の画面ＳＣ１、ＳＣ２、ＳＣ３、ＳＣ４に分割されている。
【００５５】
そして図３に示すように、これらの画面ＳＣ１〜ＳＣ４（広義には第１〜第Ｋの画面）には、オブジェクト空間において１Ｐ〜４Ｐプレーヤ（広義には第１〜第Ｋのプレーヤ）の視点ＶＰ１〜ＶＰ４から見える画像が表示される。即ち、オブジェクト空間において１Ｐ〜４Ｐプレーヤの視点から見えるべき画像（第１〜第Ｋの画像、透視変換画像）が、画面ＳＣ１〜ＳＣ４に対応する、フレームバッファの描画領域ＤＲ１〜ＤＲ４に描画される。
【００５６】
そして１Ｐ〜４Ｐプレーヤは、これらの画面ＳＣ１〜ＳＣ４に表示される画像（１Ｐ〜４Ｐプレーヤ用の画像）を見ながら、操作部を用いて移動オブジェクトＭＯＢ１〜ＭＯＢ４を操作し、マルチプレーヤゲーム（競争ゲーム、対戦ゲーム、協力ゲーム）を楽しむ。
【００５７】
さて図２（Ｂ）に示す画面分割モードでは、１Ｐ〜４Ｐプレーヤ用の移動オブジェクトＭＯＢ１〜ＭＯＢ４や、マップ、建物、空などの背景についても、画面ＳＣ１〜ＳＣ４に表示しなければならない。即ち図２（Ｂ）では、図２（Ａ）と同じ描画データ量の表示物を４セット分描画しなければならない。従って、図２（Ａ）に比べて描画処理の負荷は４倍程度になってしまう。このため、ＬＯＤなどの技術により描画データ量を減らしても、１フレーム周期Ｔ（例えば１／６０秒）内で描画処理を完了できないおそれがあることが判明した。
【００５８】
そこで本実施形態では画面分割数に応じて描画周期（フレームレート）を可変に制御する手法を採用している。
【００５９】
具体的には図４に示すように、通常モード時（図２（Ａ））には、周期Ｔ（フレーム周期）毎にフレームバッファの描画領域の書き換え（全描画領域の画像データの書き換え。描画領域の書き換えの開始）を行う。即ち全てのフレーム１、２、３、４、５、６・・・において描画領域の書き換え（更新）を行う。別の言い方をすれば描画領域の更新周期をＴに設定する。
【００６０】
一方、画面分割モード時（図２（Ｂ））には、例えば周期２Ｔ（広義にはＮ×Ｔ。以下も同様）毎に描画領域の書き換え（全描画領域の画像データの書き換え。描画領域の書き換えの開始）を行う。即ち例えば奇数フレーム１、３、５・・・（又は偶数フレーム２、４、６・・・）の開始（垂直同期割り込み）に同期して、描画領域の書き換え（更新）を開始する。別の言い方をすれば画面更新周期を２Ｔ（Ｎ×Ｔ）に設定する。
【００６１】
このようにすれば、画面分割モード時においては、周期Ｔではなく周期２Ｔの期間内に、描画領域の書き換え処理（画像データの描画処理）を完了できればよいことになる。従って、描画処理に時間的な余裕が生じ、例えば４セット分のオブジェクト（移動オブジェクト、背景オブジェクト）を描画しなければならない４画面分割モードでも、描画周期内に全てのオブジェクトを描画することが可能になる。これにより、表示されないオブジェクトが生じたり、映像が分解写真のように飛び飛びになってしまうような事態が発生するのを防止できる。
【００６２】
なお図４では、通常モード時における描画周期をＴとし、４画面分割モード時における描画周期を２Ｔとしているが、描画周期Ｎ×ＴのＮの設定は任意である。例えば、２画面分割モード又は３画面分割モードになったときに、描画周期をＴから２Ｔに切り替えてもよい。或いは、２画面分割モードではＮ＝２に設定し、３画面分割モード以上ではＮ＞３に設定することも可能である。
【００６３】
またフレーム周期Ｔは、表示部の垂直同期割り込み（垂直同期信号）に基づいて決められる。具体的にはフレーム周期Ｔは、垂直同期割り込み（ＶＳＹＮＣ）の第１のパルスがアクティブになってから次の第２のパルスがアクティブになるまでの間の期間である。例えばフレームレートＦＰＳ（Frame  Per  Second）が６０である場合には、Ｔ＝１／６０秒になる。従って周期Ｔ毎に描画領域を更新する場合には、垂直同期割り込みがアクティブになる毎に、描画領域の更新を１回行い、周期Ｎ×Ｔ毎に描画領域を更新する場合には、垂直同期割り込みがＮ回アクティブになる毎に、描画領域の更新を１回行うことになる。
【００６４】
また図２（Ｂ）、図３では、マルチプレーヤゲームの各プレーヤ用に表示画面を分割する例について説明したが、本実施形態の画面分割モードはこれに限定されない。例えば、サブ画面（バックミラーに映る画像、又は双眼鏡やスコープなどの光学機器を介して見える画像などが表示される画面）とメイン画面に分割するような画面分割モードにも、本実施形態の原理は適用できる。
【００６５】
２．２  移動オブジェクトの移動処理
本実施形態では図４に示すように描画周期（フレームレート）については画面分割数に応じて変化させている。しかしながら、その一方で、移動オブジェクトの移動処理（シミュレーション処理、パラメータの数値演算処理、操作データを受け付ける処理、動作処理）の周期については、画面分割数に依らずに一定にしている。
【００６６】
より具体的には図５のＡ１に示すように、操作部からの操作データ等に基づいて移動オブジェクトＭＯＢの移動情報（位置、方向、速度又は加速度等）を求め、ＭＯＢをオブジェクト空間内で移動させる処理については、例えばフレーム周期Ｔ毎に行う。即ちフレーム１、２、３、４、５・・・における移動オブジェクトＭＯＢの位置Ｐ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５・・・、方向（角度）Ｄ１、Ｄ２、Ｄ３、Ｄ４、Ｄ５・・・を所定のアルゴリズムに従ったシミュレーション演算（数値演算）により求める。例えば、フレーム２での位置Ｐ２は、フレーム１での位置Ｐ１と、フレーム１での速度（フレーム周期Ｔで移動する距離）に基づき求めることができる（前述の式（１）（２）参照）。そして、この速度は、加速度や空力抵抗や摩擦抵抗などに基づき求めることができ、加速度は、アクセルの踏み具合（エンジン出力）やブレーキの踏み具合（ブレーキング能力）などに基づき求めることができる。
【００６７】
一方、図５のＡ２に示すように、描画領域の書き換え（描画領域への描画）については、周期２×Ｔ（Ｎ×Ｔ）毎に行う。即ち例えば奇数フレーム１、３、５・・・（又は偶数フレーム２、４、６・・・）の開始に同期して、描画処理の書き換えを開始する。
【００６８】
このようにすれば、移動オブジェクトＭＯＢの移動処理については、短い周期Ｔ毎に行われるため、正確な数値演算が可能になる。従って、移動オブジェクトＭＯＢの動きが不自然になったり、数値演算の誤差が大きくなりすぎてしまう事態を防止できる。一方、描画領域の書き換えは周期２Ｔ毎に行われるため、描画処理に時間的な余裕ができ、高品質な画像を生成できる。更に、描画領域の書き換えを周期Ｔ毎に行う場合と周期２Ｔ毎に行う場合とで、移動処理（シミュレーション処理）のプログラムモジュールについては、共通に使用できる。従って、プログラムの開発労力の軽減化や開発期間の短縮化を図れる。
【００６９】
なお、描画領域の書き換えを周期Ｎ×Ｔ毎に行っている場合にも周期Ｔ毎に行うことが望ましい処理は、移動オブジェクトの移動処理に限定されない。例えば、操作データを受け付ける処理（サンプリングする処理）、オブジェクトのモーション再生処理、或いはステータスパラメータなどの各種パラメータ値を演算する処理なども、周期Ｔ毎に行うことが望ましい。
【００７０】
２．３  分割された描画領域毎の描画処理
本実施形態では、フレームバッファに第１〜第Ｎの描画領域を確保する。そして、第１〜第Ｎの描画領域を、例えば第１〜第Ｎの描画領域の順に、周期Ｔ毎に順次書き換えて行くことで、周期Ｎ×Ｔ毎の全描画領域の書き換えを実現している。
【００７１】
具体的には図６に示すように、フレーム１では上側の第１の描画領域ＤＲＡの書き換えを行い、フレーム２では下側の第２の描画領域ＤＲＢの書き換えを行う。同様に、フレーム３、４、５では、描画領域ＤＲＡ、ＤＲＢ、ＤＲＡの順で書き換えを行う。即ち描画領域ＤＲＡ、ＤＲＢを周期Ｔ毎に交互に書き換える（半分ずつ書き換える）。このようにすれば、結局、全描画領域の書き換えは、周期２Ｔ（Ｎ×Ｔ）毎に完了するようになる。従って、画面分割モード時等に描画領域の書き換えを周期２Ｔ（Ｎ×Ｔ）毎に行う手法を、簡単に実現できるようになる。
【００７２】
なお図６ではフレームバッファの描画領域を２分割にした場合を示したが、３分割以上にしてもよい。例えば、描画領域を、第１、第２、第３、第４の描画領域に分割した場合には、フレーム１では第１の描画領域、フレーム２では第２の描画領域、フレーム３では第３の描画領域、フレーム４では第４の描画領域、フレーム５では第１の描画領域、フレーム６では第２の描画領域というように、描画領域を書き換えればよい。
【００７３】
またフレームバッファ（ＶＲＡＭ）に、描画領域（描画バッファ）に加えて表示領域（表示バッファ）を確保する場合には、フレームバッファの描画領域の書き換えの前に、フレームバッファの描画領域からフレームバッファの表示領域へと、フレーム画像（既に書き換えが完了したフレーム画像）をコピーする。この場合のコピーは例えば全てのフレームで行う。また表示部には、フレームバッファの表示領域に記憶されるフレーム画像が表示される。
【００７４】
そしてインタレース方式の場合には、フレームバッファの描画領域の奇数走査ラインのフレーム画像と、偶数走査ラインのフレーム画像のいずれか一方を、周期Ｔ毎に交互に、フレームバッファの表示領域にコピーする。
【００７５】
より具体的には図７に示すように、例えば奇数フレーム１、３、５・・・では、奇数走査ラインのフレーム画像を描画領域から表示領域にコピーし、偶数フレーム２、４、６・・・では、偶数走査ラインのフレーム画像を描画領域から表示領域にコピーする。このようにすれば図７に示すように表示領域の大きさ（メモリ容量）を描画領域の半分にすることができ、メモリ容量を節約できる。
【００７６】
即ち、描画領域を分割せずに全描画領域を周期２Ｔ毎に書き換える手法では、表示領域は、周期２Ｔの期間に亘ってフレーム画像を保持しておく必要があるため、表示領域の大きさを描画領域と同じ大きさに設定する必要がある。
【００７７】
これに対して、図６、図７の手法では、全描画領域の半分の領域であるＤＲＡ又はＤＲＢだけを書き換えればよいため、周期Ｔ内で書き換えを完了できる。従って、周期Ｔ毎に描画領域から表示領域へとフレーム画像をコピーしても、描画途中の画像がコピーされてしまうというような不具合が生じない。従って、表示領域の大きさを描画領域の半分に設定しても、上記のような不具合が生じなくなり、描画領域を分割せずに全描画領域を周期２Ｔ毎に書き換える手法に比べて、表示領域の大きさを小さくでき、メモリ容量を節約できる。
【００７８】
さて、図６のように描画領域を分割して描画処理を行う場合には、分割描画領域の境界と、分割画面（分割画面に対応する描画領域）の境界とを、少なくとも一部において一致させることが望ましい。
【００７９】
具体的には図８（Ａ）に示すように、図２（Ｂ）の分割画面ＳＣ１〜ＳＣ４（第１〜第Ｋの画面）に対応する描画領域ＤＲ１〜ＤＲ４（第１〜第Ｋの描画領域）における境界ＢＤ１３と、図６の手法で交互に書き換えられる上半分の描画領域ＤＲＡと下半分の描画領域ＤＲＢ（第１〜第Ｎの描画領域）の境界ＢＤＡＢとが一致するようにする。或いは、左半分の描画領域ＤＲＣと右半分の描画領域ＤＲＤを交互に書き換える場合には、図８（Ｂ）に示すように、描画領域ＤＲ１〜ＤＲ４における境界ＢＤ１２と、描画領域ＤＲＣ、ＤＲＤの境界ＢＤＣＤとが一致するようにする。
【００８０】
このようにすれば、例えば図８（Ｃ）のように境界ＢＤ１３（ＢＤＡＢ）で表示物にずれが生じて画像が低品質化してしまう事態を防止できる。即ち、図８（Ａ）の手法によれば、描画領域ＤＲＡ、ＤＲＢの境界ＢＤＡＢは、図２（Ｂ）の分割画面ＳＣ１、ＳＣ２とＳＣ３、ＳＣ４の境界ＢＤＳＣ（ＢＤ１３）に一致するようになる。そして、この境界ＢＤＳＣの上側と下側には、異なるプレーヤのゲーム画像を表示されるため、図８（Ｃ）に示すような表示物のずれは、元々、問題にならない。従って、表示物のずれにより画像が低品質化してしまう事態を防止でき、高品質な画像を生成できる。
【００８１】
２．４  ＬＯＤとのトレードオフ
周期Ｎ×Ｔ毎に描画領域を書き換える手法は、ＬＯＤとのトレードオフとしても用いることができる。
【００８２】
例えば図９のように、第１のモードにおいては、周期Ｔ毎に描画領域の書き換えを行う。一方、第２のモードにおいては、周期２Ｔ（Ｎ×Ｔ）毎に描画領域の書き換えを行うと共に、周期Ｔ毎に描画領域の書き換えを行う場合に比べて、より高精細（高精密度）のフレーム画像を描画領域に描画する。
【００８３】
即ち第１のモードでは、通常の精細度で描画処理が行われるため、周期Ｔ（フレーム周期）に同期して描画領域の書き換えを行っても、周期Ｔ内で描画処理を完了させることができる。一方、第２のモードでは、高精細で描画処理が行われるため、周期Ｔ内では描画処理を完了できないおそれがある。しかしながら図９の手法では第２のモードにおいては周期２Ｔ内に描画領域の書き換えを完了すればよいため、高精細モードであっても描画処理を無事に完了できる。
【００８４】
従って、例えばフレーム画像の精細度よりもフレームレートの速さを優先する場合には、第１のモードで描画処理を行う。一方、フレームレートの速さよりもフレーム画像の精細度を優先する場合には、第２のモードで描画処理を行う。このようにすれば、プレーヤに種々の選択枝を与えることができ、生成される画像のバラエティ度を増すことができる。
【００８５】
なおフレーム画像の精細度を制御する手法としては種々の手法がある。例えば図１０（Ａ）に示すように移動オブジェクトのポリゴン数（広義にはプリミティブ面数）を変化させて、描画処理の精細度を制御してもよい。例えば第１のモードではポリゴン数の少ない移動オブジェクトを使用し、第２のモードではポリゴン数の多い移動オブジェクトを使用する。
【００８６】
また、図１０（Ｂ）に示すようにマップ（地形を表現するマップ）の分割数を変化させて、描画処理の精細度を制御してもよい。例えば、第１のモードでは分割数の少ないマップを使用し、第２のモードでは分割数の多いマップを使用する。
【００８７】
また、表示画面に表示するオブジェクト（表示物）の数を変化させて、描画処理の精細度を制御してもよい。例えば第１のモードでは、登場するオブジェクトの数を少なくし、第２のモードではオブジェクト数を多くする。
【００８８】
また、オブジェクトにマッピングするテクスチャの種類を変化させて、描画処理の精細度を制御してもよい。例えば第１のモードでは、通常の精細度のテクスチャをオブジェクトにマッピングし、第２のモードでは高精細なテクスチャをオブジェクトにマッピングする。
【００８９】
また、レンダリング方式を変化させて、描画処理の精細度を制御してもよい。例えば、第１のモードでは、通常の精細度のフレーム画像を生成できるレンダリング方式を採用し、第２のモードでは、高精細なフレーム画像を生成できるレンダリング方式を採用する。より具体的には、例えば第１のモードではグーローシェーディングの照明モデルでレンダリングを行い、第２のモードではフォンシェーディングの照明モデルでレンダリングを行う。或いは第１のモードでは通常の光源数でシェーディング処理を行い、第２のモードでは光源数を増やしてシェーディング処理を行う。或いは第１のモードでは処理負荷が低い影生成アルゴリズムを採用し、第２のモードでは処理負荷は高いがリアルな影を生成できる影生成アルゴリズムを採用する。
【００９０】
なお、第１、第２のモードの切り替えは、プレーヤがモード設定画面で選択することで行ってもよいし、ゲームの進行状況や、ゲーム場面や、ゲームの内容などに応じて、コンピュータ（プログラム）が自動的に切り替えてもよい。
【００９１】
３．本実施形態の処理
次に、本実施形態の処理の詳細例について、図１１〜図１３のフローチャートを用いて説明する。
【００９２】
図１１は、画面分割数に応じて描画周期を変化させる処理を実現するフローチャートである。
【００９３】
まず、プレーヤの人数の設定が行われる（ステップＳ１）。そして、ｉを０に設定する（ステップＳ２）。そしてプレーヤの人数が３〜４人か否かを判断し（ステップＳ３）、３〜４人（３〜４画面分割）の場合にはＮを２に設定し、１〜２人（画面分割無し。２画面分割）の場合には、Ｎ＝１に設定する（ステップＳ４、Ｓ５）。
【００９４】
次にｉが０か否かを判断する（ステップＳ６）。そして、ｉが０の場合には、フレームバッファの描画領域から表示領域へのフレーム画像（画像データ）のコピーを行う（ステップＳ７）。一方、ｉが０ではない場合にはステップＳ７の処理を省略する。
【００９５】
次に図５で説明した移動オブジェクトの移動処理（１フレーム単位の数値パラメータ類の演算を行うシミュレーション処理）を行う（ステップＳ８）。
【００９６】
次に、ｉが０か否かを判断し（ステップＳ９）、ｉが０の場合には全描画領域の描画・書き換え処理を行う（ステップＳ１０）。一方、ｉが０ではない場合には、ステップＳ１０の処理を省略する。
【００９７】
次に、ｉをｉ＋１にインクリメントする（ステップＳ１１）。そして、Ｎがｉに等しいか否かを判断し（ステップＳ１２）、等しい場合にはｉを０に設定する（ステップＳ１３）。そして、その他の処理を行う（ステップＳ１４）。
【００９８】
そして、次のフレームが始まっているか否かを判断する（ステップＳ１５）。例えば、垂直同期割り込みが発生している場合には、次のフレームが始まっていると判断できる。そして、次のフレームが始まっている場合には、ゲーム終了か否かを判断し（ステップＳ１６）、ゲーム終了ではない場合にはステップＳ６に戻る。
【００９９】
図１１の処理によれば、３〜４画面分割の時には、例えば最初のフレーム（奇数フレーム）ではステップＳ７、Ｓ１０のコピー及び描画・書き換え処理が行われ、次のフレーム（偶数フレーム）ではステップＳ７、Ｓ１０のコピー及び描画・書き換え処理が行われないようになる。一方、画面分割無し又は２画面分割の場合には、どのフレームにおいてもステップＳ７、Ｓ１０のコピー及び描画・書き換え処理が行われるようになる。これにより図４で説明した手法を実現できる。
【０１００】
図１２は図６で説明した処理を実現するフローチャートである。
【０１０１】
まず、プレーヤの人数の設定が行われる（ステップＳ２１）。そして、ｉを２に設定する（ステップＳ２２）。
【０１０２】
次に、フレームバッファの描画領域から表示領域へのフレーム画像のコピーを行う（ステップＳ２３）。そして図５で説明した移動オブジェクトの移動処理（シミュレーション処理）を行う（ステップＳ２４）。
【０１０３】
次に、プレーヤの人数が３〜４人か否かを判断し（ステップＳ２５）、１〜２人（画画面分割無し、２画面分割）の場合には、全描画領域の描画・書き換え処理を行う（ステップＳ２６）。
【０１０４】
一方、３〜４人（３〜４画面分割）の場合には、ｉが１か否かを判断する（ステップＳ２７）。そしてｉが１の場合には上側の第１の描画領域（ＤＲＡ）の描画・書き換え処理を行う（ステップＳ２８）。一方、ｉが１ではない場合には下側の第２の描画領域（ＤＲＢ）の描画・書き換え処理を行う（ステップＳ２９）。
【０１０５】
次に、ｉをｉ−１にデクリメントし（ステップＳ３０）、ｉが０か否かを判断する（ステップＳ３１）。そして、ｉが０の場合には、ｉを２に設定し直す（ステップＳ３２）。一方、ｉが０ではない場合にはステップＳ３２の処理を省略する。
【０１０６】
次に、その他の処理を行う（ステップＳ３３）。そして次のフレームが始まっているか否かを判断する（ステップＳ３４）。そして、次のフレームが始まっている場合には、ゲーム終了か否かを判断し（ステップＳ３５）、ゲーム終了ではない場合にはステップＳ２３に戻る。
【０１０７】
図１２の処理によれば、３〜４画面分割の時には、例えば最初のフレーム（奇数フレーム）では、ステップＳ２８の第１の描画領域の描画・書き換え処理が行われ、次のフレーム（偶数フレーム）では、ステップＳ２９の第２の描画領域の描画・書き換え処理が行われるようになる。一方、画面分割無し又は２画面分割の場合には、どのフレームにおいてもステップＳ２６の全画面領域の描画・書き換え処理が行われるようになる。これにより図６で説明した手法を実現できる。
【０１０８】
図１３は図９で説明した処理を実現するフローチャートである。
【０１０９】
まず、ｉを０に設定する（ステップＳ４１）。またフレームレート（描画周期）の設定が行われる（ステップＳ４２）。
【０１１０】
次に、設定されたフレームレートが３０ＦＰＳ（Frame  Per  Second）か否かを判断し（ステップＳ４３）、フレームレートが３０ＦＰＳの場合にはＮを２に設定する（ステップＳ４４）。一方、フレームレートが６０ＦＰＳの場合にはＮを１に設定する（ステップＳ４５）。
【０１１１】
次に、ｉが０か否かを判断し（ステップＳ４６）、ｉが０ならばフレームバッファの描画領域から表示領域へのコピーを行う（ステップＳ４７）。一方、ｉが０ではない場合にはステップＳ４７の処理を省略する。
【０１１２】
次に、移動処理（シミュレーション処理）を行う（ステップＳ４８）。そして、ｉが０か否かを判断し（ステップＳ４９）、ｉが０の場合には、Ｎが１か否かを判断する（ステップＳ５０）。そして、Ｎが１の場合には、通常の精細度の描画処理で描画領域の描画・書き換えを行う（ステップＳ５１）。一方、Ｎが１ではない場合には、高精細の描画処理で描画領域の描画・書き換えを行う（ステップＳ５２）。なお、ｉが０ではない場合にはステップＳ５０、Ｓ５１、Ｓ５２の処理を省略する。
【０１１３】
次に、ｉをｉ＋１にインクリメントする（ステップＳ５３）。そして、Ｎがｉと等しいか否かを判断し（ステップＳ５４）、等しい場合にはｉを０に設定する（ステップＳ５５）。一方、等しくない場合にはステップＳ５５の処理を省略する。
【０１１４】
次に、その他の処理を行う（ステップＳ５６）。そして次のフレームが始まっているか否かを判断する（ステップＳ５７）。そして、次のフレームが始まっている場合には、ゲーム終了か否かを判断し（ステップＳ５８）、ゲーム終了ではない場合にはステップＳ４６に戻る。
【０１１５】
図１３の処理によれば、フレームレートが３０ＦＰＳの場合（第２のモードの場合）には、例えば最初のフレーム（奇数フレーム）では、ステップＳ５２の高精細の描画・書き換え処理が行われ、次のフレーム（偶数フレーム）では、ステップＳ５２の描画・書き換え処理は行われないようになる。一方、フレームレートが６０ＦＰＳの場合（第１のモードの場合）には、どのフレームにおいても、ステップＳ５１の通常の精細度の描画・書き換え処理が行われるようになる。これにより図９で説明した手法を実現できる。
【０１１６】
４．ハードウェア構成
次に、本実施形態を実現できるハードウェアの構成の一例について図１４を用いて説明する。
【０１１７】
メインプロセッサ９００は、ＣＤ９８２（情報記憶媒体）に格納されたプログラム、通信インターフェース９９０を介して転送されたプログラム、或いはＲＯＭ９５０（情報記憶媒体の１つ）に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などの種々の処理を実行する。
【０１１８】
コプロセッサ９０２は、メインプロセッサ９００の処理を補助するものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算（ベクトル演算）を高速に実行する。例えば、オブジェクトを移動させたり動作（モーション）させるための物理シミュレーションに、マトリクス演算などの処理が必要な場合には、メインプロセッサ９００上で動作するプログラムが、その処理をコプロセッサ９０２に指示（依頼）する。
【０１１９】
ジオメトリプロセッサ９０４は、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算（ベクトル演算）を高速に実行する。例えば、座標変換、透視変換、光源計算などの処理を行う場合には、メインプロセッサ９００で動作するプログラムが、その処理をジオメトリプロセッサ９０４に指示する。
【０１２０】
データ伸張プロセッサ９０６は、圧縮された画像データや音データを伸張するデコード処理を行ったり、メインプロセッサ９００のデコード処理をアクセレートする処理を行う。これにより、オープニング画面、インターミッション画面、エンディング画面、或いはゲーム画面などにおいて、ＭＰＥＧ方式等で圧縮された動画像を表示できるようになる。なお、デコード処理の対象となる画像データや音データは、ＲＯＭ９５０、ＣＤ９８２に格納されたり、或いは通信インターフェース９９０を介して外部から転送される。
【０１２１】
描画プロセッサ９１０は、ポリゴンや曲面などのプリミティブ（プリミティブ面）で構成されるオブジェクトの描画（レンダリング）処理を高速に実行するものである。オブジェクトの描画の際には、メインプロセッサ９００は、ＤＭＡコントローラ９７０の機能を利用して、オブジェクトデータを描画プロセッサ９１０に渡すと共に、必要であればテクスチャ記憶部９２４にテクスチャを転送する。すると、描画プロセッサ９１０は、これらのオブジェクトデータやテクスチャに基づいて、Ｚバッファなどを利用した隠面消去を行いながら、オブジェクトをフレームバッファ９２２に高速に描画する。また、描画プロセッサ９１０は、αブレンディング（半透明処理）、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエリアシング、シェーディング処理なども行うことができる。そして、１フレーム分の画像がフレームバッファ９２２に書き込まれると、その画像はディスプレイ９１２に表示される。
【０１２２】
サウンドプロセッサ９３０は、多チャンネルのＡＤＰＣＭ音源などを内蔵し、ＢＧＭ、効果音、音声などの高品位のゲーム音を生成する。生成されたゲーム音は、スピーカ９３２から出力される。
【０１２３】
ゲームコントローラ９４２（レバー、ボタン、筺体、パッド型コントローラ又はガン型コントローラ等）からの操作データや、メモリカード９４４からのセーブデータ、個人データは、シリアルインターフェース９４０を介してデータ転送される。
【０１２４】
ＲＯＭ９５０にはシステムプログラムなどが格納される。なお、業務用ゲームシステムの場合には、ＲＯＭ９５０が情報記憶媒体として機能し、ＲＯＭ９５０に各種プログラムが格納されることになる。なお、ＲＯＭ９５０の代わりにハードディスクを利用するようにしてもよい。
【０１２５】
ＲＡＭ９６０は、各種プロセッサの作業領域として用いられる。
【０１２６】
ＤＭＡコントローラ９７０は、プロセッサ、メモリ（ＲＡＭ、ＶＲＡＭ、ＲＯＭ等）間でのＤＭＡ転送を制御するものである。
【０１２７】
ＣＤドライブ９８０は、プログラム、画像データ、或いは音データなどが格納されるＣＤ９８２（情報記憶媒体）を駆動し、これらのプログラム、データへのアクセスを可能にする。
【０１２８】
通信インターフェース９９０は、ネットワークを介して外部との間でデータ転送を行うためのインターフェースである。この場合に、通信インターフェース９９０に接続されるネットワークとしては、通信回線（アナログ電話回線、ＩＳＤＮ）、高速シリアルバスなどを考えることができる。そして、通信回線を利用することでインターネットを介したデータ転送が可能になる。また、高速シリアルバスを利用することで、他の画像生成システムとの間でのデータ転送が可能になる。
【０１２９】
なお、本実施形態の各部（各手段）は、その全てを、ハードウェアのみにより実現してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムのみにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【０１３０】
そして、本実施形態の各部をハードウェアとプログラムの両方により実現する場合には、情報記憶媒体には、ハードウェア（コンピュータ）を本実施形態の各部として機能させるためのプログラムが格納されることになる。より具体的には、上記プログラムが、ハードウェアである各プロセッサ９０２、９０４、９０６、９１０、９３０等に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ９０２、９０４、９０６、９１０、９３０等は、その指示と渡されたデータとに基づいて、本発明の各部を実現することになる。
【０１３１】
図１５（Ａ）に、本実施形態を業務用ゲームシステム（画像生成システム）に適用した場合の例を示す。プレーヤは、ディスプレイ１１００上に映し出されたゲーム画像を見ながら、操作部１１０２（レバー、ボタン）を操作してゲームを楽しむ。内蔵されるシステムボード（サーキットボード）１１０６には、各種プロセッサ、各種メモリなどが実装される。そして、本実施形態の各部を実現するためのプログラム（データ）は、システムボード１１０６上の情報記憶媒体であるメモリ１１０８に格納される。以下、このプログラムを格納プログラム（格納情報）と呼ぶ。
【０１３２】
図１５（Ｂ）に、本実施形態を家庭用のゲームシステム（画像生成システム）に適用した場合の例を示す。プレーヤはディスプレイ１２００に映し出されたゲーム画像を見ながら、コントローラ１２０２、１２０４などを操作してゲームを楽しむ。この場合、上記格納プログラム（格納情報）は、本体システムに着脱自在な情報記憶媒体であるＣＤ１２０６、或いはメモリカード１２０８、１２０９などに格納されている。
【０１３３】
図１５（Ｃ）に、ホスト装置１３００と、このホスト装置１３００とネットワーク１３０２（ＬＡＮのような小規模ネットワークや、インターネットのような広域ネットワーク）を介して接続される端末１３０４-１〜１３０４-n（ゲーム機、携帯電話）とを含むシステムに本実施形態を適用した場合の例を示す。この場合、上記格納プログラム（格納情報）は、例えばホスト装置１３００が制御可能な磁気ディスク装置、磁気テープ装置、メモリなどの情報記憶媒体１３０６に格納されている。端末１３０４-１〜１３０４-nが、スタンドアロンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置１３００からは、ゲーム画像、ゲーム音を生成するためのゲームプログラム等が端末１３０４-１〜１３０４-nに配送される。一方、スタンドアロンで生成できない場合には、ホスト装置１３００がゲーム画像、ゲーム音を生成し、これを端末１３０４-１〜１３０４-nに伝送し端末において出力することになる。
【０１３４】
なお、図１５（Ｃ）の構成の場合に、本実施形態の各部を、ホスト装置（サーバー）と端末とで分散して実現するようにしてもよい。また、本実施形態の各部を実現するための上記格納プログラム（格納情報）を、ホスト装置（サーバー）の情報記憶媒体と端末の情報記憶媒体に分散して格納するようにしてもよい。
【０１３５】
またネットワークに接続する端末は、家庭用ゲームシステムであってもよいし業務用ゲームシステムであってもよい。
【０１３６】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。
【０１３７】
例えば、明細書又は図面中の記載において広義な用語（第１〜第Ｋの画面、第１〜第Ｋのプレーヤ、Ｎ×Ｔ、プリミティブ面、シミュレーション処理、第１〜第Ｎの描画領域等）として引用された用語（画面ＳＣ１〜ＳＣ４、１Ｐ〜４Ｐプレーヤ、２Ｔ、ポリゴン、移動処理、描画領域ＤＲＡ・ＤＲＢ等）は、明細書又は図面中の他の記載においても広義な用語に置き換えることができる。
【０１３８】
また画面や描画領域の分割数や分割の仕方も、本実施形態で説明したものに限定されず、種々の変形実施が可能である。
【０１３９】
また描画処理（書き換え処理）、コピー処理の順序や手法等も、本実施形態で説明したものに限定されず、種々の変形実施が可能である。
【０１４０】
また、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の１の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
【０１４１】
また、本発明は種々のゲーム（格闘ゲーム、競争ゲーム、シューティングゲーム、ロボット対戦ゲーム、スポーツゲーム、ロールプレイングゲーム等）に適用できる。
【０１４２】
また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード等の種々の画像生成システム（ゲームシステム）に適用できる。
【図面の簡単な説明】
【０１４３】
【図１】本実施形態の画像生成システムの機能ブロック図である。
【図２】図２（Ａ）（Ｂ）は画面分割モードの説明図である。
【図３】画面分割モード時の画像生成手法の説明図である。
【図４】画面分割数に応じてフレームレートを変える手法の説明図である。
【図５】移動処理（シミュレーション処理）の説明図である。
【図６】描画領域を分割して書き換える手法の説明図である。
【図７】インタレース走査方式の場合のコピー手法の説明図である。
【図８】図８（Ａ）（Ｂ）（Ｃ）は境界を一致させる手法の説明図である。
【図９】描画処理の精細度に応じてフレームレートを変える手法の説明図である。
【図１０】図１０（Ａ）（Ｂ）は描画精細度を変える手法の説明図である。
【図１１】本実施形態の処理のフローチャート例である。
【図１２】本実施形態の処理のフローチャート例である。
【図１３】本実施形態の処理のフローチャート例である。
【図１４】ハードウェア構成例である。
【図１５】図１５（Ａ）〜（Ｃ）は種々の形態のシステム例である。
【符号の説明】
【０１４４】
１００  処理部、１１０  モード設定部、１１２  移動処理部、
１１４  動作処理部、１１６  ジオメトリ処理部、１２０  描画部、
１３０  音生成部、１６０  操作部、１７０  記憶部、１７２  主記憶部、
１７４  フレームバッファ、１８０  情報記憶媒体、１９０  表示部
１９２  音出力部、１９４  携帯型情報記憶装置、１９６  通信部
【図１】
0004447000.tif 000002
【図２】
0004447000.tif 000003
【図３】
0004447000.tif 000004
【図４】
0004447000.tif 000005
【図５】
0004447000.tif 000006
【図６】
0004447000.tif 000007
【図７】
0004447000.tif 000008
【図８】
0004447000.tif 000009
【図９】
0004447000.tif 000010
【図１０】
0004447000.tif 000011
【図１１】
0004447000.tif 000012
【図１２】
0004447000.tif 000013
【図１３】
0004447000.tif 000014
【図１４】
0004447000.tif 000015
【図１５】
0004447000.tif 000016