(57)【要約】【課題】少ない演算負荷で精度のよい物理シミュレーションが可能な画像生成システム、プログラム及び情報記憶媒体を提供することである。【解決手段】仮想３次元空間内に存在する事物についての物理シミュレーション演算をおこなう物理シミュレーション演算処理部１２０と、前記物理シミュレーション演算結果得られた物理値に基づき、仮想３次元空間におけるオブジェクトの配置情報及びゲームパラメータの少なくとも一方を演算するゲーム処理部１１０と、所定の描画周期で仮想３次元空間を仮想カメラから見た画像を生成する画像生成処理部１３０とを含無。物理シミュレーション演算処理部１２０は、第１の物理シミュレーション演算を第１の周期で行い、第１の物理シミュレーション演算手段によって演算された物理値を使用して、第１の周期とは異なる第２の周期で第２の物理シミュレーション演算を行う。【選択図】    図４
2004329791.tif 000002
【特許請求の範囲】
【請求項１】
画像生成を行うシステムであって、
仮想３次元空間内に存在する事物についての物理シミュレーション演算をおこなう物理シミュレーション演算手段と、
前記物理シミュレーション演算結果得られた物理値に基づき、仮想３次元空間におけるオブジェクトの配置情報及びゲームパラメータの少なくとも一方を演算する手段と、
所定の描画周期で、仮想３次元空間を仮想カメラから見た画像を生成する画像生成手段とを含み、
前記物理シミュレーション演算手段は、
第１の物理シミュレーション演算を第１の周期で行い、第１の物理シミュレーション演算によって得られた物理値を使用して、第１の周期とは異なる第２の周期で第２の物理シミュレーション演算を行うことを特徴とする画像生成システム。
【請求項２】
画像生成を行うシステムであって、
仮想３次元空間内に存在する事物についての物理シミュレーション演算をおこなう物理シミュレーション演算手段と、
前記物理シミュレーション演算結果得られた物理値に基づき、仮想３次元空間におけるオブジェクトの配置情報を演算する手段と、
所定の描画周期で、前記オブジェクトが配置された仮想３次元空間を仮想カメラから見た画像を生成する画像生成手段とを含み、
前記物理シミュレーション演算手段は、
第１のオブジェクトに関する第１の物理シミュレーション演算を第１の周期で行い、第１のオブジェクトに連動して動く第２のオブジェクトに関する第２の物理シミュレーション演算を、第１の周期とは異なる第２の周期で行うことを特徴とする画像生成システム。
【請求項３】
請求項１乃至２のいずれかにおいて、
前記第１の物理シミュレーション演算手段は、
前記第２の物理シミュレーション演算手段によって演算された物理値を使用して、第１の物理シミュレーション演算を行うことを特徴とする画像生成システム。
【請求項４】
請求項１乃至３のいずれかにおいて、
前記第１の周期及び前記第２の周期の少なくとも一方は、前記所定の描画周期よりも短いことを特徴とする画像生成システム。
【請求項５】
請求項１乃至４のいずれかにおいて、
前記第１の周期及び前記第２の周期の少なくとも一方は、前記所定の描画周期よりも長いことを特徴とする画像生成システム。
【請求項６】
請求項１乃至５のいずれかにおいて、
前記物理値は、
仮想３次元空間に存在する所与のオブジェクトの速度、加速度、力、位置、回転速度、回転加速度、トルク、回転量の少なくとも１つを含むことを特徴とする画像生成システム。
【請求項７】
コンピュータを、
仮想３次元空間内に存在する事物についての物理シミュレーション演算をおこなう物理シミュレーション演算手段と、
前記物理シミュレーション演算結果得られた物理値に基づき、仮想３次元空間におけるオブジェクトの配置情報及びゲームパラメータの少なくとも一方を演算する手段と、
所定の描画周期で、仮想３次元空間を仮想カメラから見た画像を生成する画像生成手段と、
して機能させるプログラムであって、
前記物理シミュレーション演算手段が、
第１の物理シミュレーション演算を第１の周期で行い、第１の物理シミュレーション演算によって得られた物理値を使用して、第１の周期とは異なる第２の周期で第２の物理シミュレーション演算を行うことを特徴とするプログラム。
【請求項８】
コンピュータを、
仮想３次元空間内に存在する事物についての物理シミュレーション演算をおこなう物理シミュレーション演算手段と、
前記物理シミュレーション演算結果得られた物理値に基づき、仮想３次元空間におけるオブジェクトの配置情報を演算する手段と、
所定の描画周期で、前記オブジェクトが配置された仮想３次元空間を仮想カメラから見た画像を生成する画像生成手段と、
として機能させるプログラムであって、
前記物理シミュレーション演算手段が、
第１のオブジェクトに関する第１の物理シミュレーション演算を第１の周期で行い、第１のオブジェクトに連動して動く第２のオブジェクトに関する第２の物理シミュレーション演算を、第１の周期とは異なる第２の周期で行うことを特徴とするプログラム。
【請求項９】
請求項７乃至８のいずれかにおいて、
前記第１の物理シミュレーション演算手段は、
前記第２の物理シミュレーション演算手段によって演算された物理値を使用して、第１の物理シミュレーション演算を行うことを特徴とするプログラム。
【請求項１０】
請求項７乃至９のいずれかにおいて、
前記第１の周期及び前記第２の周期の少なくとも一方は、前記所定の描画周期よりも短いことを特徴とするプログラム。
【請求項１１】
請求項７乃至１０のいずれかにおいて、
前記第１の周期及び前記第２の周期の少なくとも一方は、前記所定の描画周期よりも長いことを特徴とするプログラム。
【請求項１２】
請求項７乃至１１のいずれかにおいて、
前記物理値は、
仮想３次元空間に存在する所与のオブジェクトの速度、加速度、力、位置、回転速度、回転加速度、トルク、回転量の少なくとも１つを含むことを特徴とするプログラム。
【請求項１３】
コンピュータにより読みとり可能な情報記憶媒体であって、請求項７乃至１２のいずれかに記載のプログラムを記憶することを特徴とする情報記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像生成システム、プログラム及び情報記憶媒体に関する。
【０００２】
【背景技術】
従来より自動車やバイク等の運転シミュレーションを行うレーシングゲーム等が人気を博している。
【０００３】
かかるレーシングゲーム等において、自動車の動きをシミュレーションする場合、アクセルの開度とそのときのエンジンの回転数からエンジン出力トルクを計算し、その力でエンジンとタイヤを回転させ、そのタイヤの回転速度と路面速度からタイヤのグリップ力を計算し、４輪分のグリップ力から車体の加速度を計算し、車速を変化させる。
【０００４】
すなわち、タイヤやエンジンや車体の動きについて物理シミュレーション演算を行って上記各値の単位時間当たりの変化量を求め、その値を基に他の値を次次に演算していくことで、アクセルの開度やエンジンの回転数やエンジン出力トルクやタイヤの回転量やタイヤの回転速度や路面速度やタイヤのグリップ力や車体の加速度等を求める方法が取られる。
【０００５】
【特許文献１】
特開２０００−２９６２６４号
【０００６】
【発明が解決しようとする課題】
一般にかかる物理シミュレーションの演算周期は通常ゲームで使われている単位時間（描画周期）である１／６０秒である。
【０００７】
ところが自動車の例でいうと、車体に対してタイヤの質量が小さいため、この単位時間（描画周期）内にタイヤが高速に回転してしまい、グリップ力をうまく計算することができなかった。このため、タイヤの回転が安定せず不自然に回転するタイヤの画像が生成されてしまうことになる。
【０００８】
かかる自体を回避するため、物理シミュレーションの演算周期を短くすると、演算負荷が増大してしまうという問題点があった。
【０００９】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、少ない演算負荷で精度のよい物理シミュレーションが可能な画像生成システム、プログラム及び情報記憶媒体を提供することである。
【００１０】
【課題を解決するための手段】
（１）本発明は、画像生成を行うシステムであって、
仮想３次元空間内に存在する事物についての物理シミュレーション演算をおこなう物理シミュレーション演算手段と、
前記物理シミュレーション演算結果得られた物理値に基づき、仮想３次元空間におけるオブジェクトの配置情報及びゲームパラメータの少なくとも一方を演算する手段と、
所定の描画周期で、仮想３次元空間を仮想カメラから見た画像を生成する画像生成手段とを含み、
前記物理シミュレーション演算手段は、
第１の物理シミュレーション演算を第１の周期で行い、第１の物理シミュレーション演算によって得られた物理値を使用して、第１の周期とは異なる第２の周期で第２の物理シミュレーション演算を行うことを特徴とする。
【００１１】
また本発明に係るプログラムは、コンピュータにより実行可能なプログラム（情報記憶媒体又は搬送波に具現化されるプログラム）であって、上記手段をコンピュータに実現させる（上記手段としてコンピュータを機能させる）ことを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより読み取り可能（使用可能）な情報記憶媒体であって、上記手段をコンピュータに実現させる（上記手段としてコンピュータを機能させる）ためのプログラムを含むことを特徴としている。
【００１２】
第１の物理シミュレーション演算と第２の物理シミュレーションは、例えば１つのオブジェクトやパーツオブジェクトについての異なる物理値（同じこ物理値を２種類用意して使い分けている場合でもよい）について行う場合でもよい。また異なるオブジェクトについての物理シミュレーションを行う場合でもよい。
【００１３】
また物理シミュレーション演算は、表示される事物（オブジェクト）に関するものでもよいし、例えば車のエンジン等のように他の物体の内部にあって表示されないもの（画像が生成されないもの）に関するものでもよい。また力やエネルギーや熱等のように目に見えないもの（画像が生成されないもの）に関するものについての物理シミュレーションでもよい。
【００１４】
また物理値は直接的に画像生成に関係しないゲームパラメータとして使用する場合でもよい。
【００１５】
物理シミュレーション演算とは、運動方程式やエネルギー保存の法則やその他の現実世界の物理法則を用いて、現実世界の物理現象をシミュレーションするための演算である。物理値とは物理シミュレーション演算に用いる値である。
【００１６】
本実施の形態によれば、周期の異なる物理シミュレーション演算間で物理値の受け渡しを行って、物理シミュレーションを行うことができる。このため相関関係を有する複数の物理シミュレーションに演算についても、少ない演算負荷で精度のよい物理シミュレーションが可能な画像生成システム、プログラム及び情報記憶媒体を提供することができる。
【００１７】
（２）本発明は、画像生成を行うシステムであって、
仮想３次元空間内に存在する事物についての物理シミュレーション演算をおこなう物理シミュレーション演算手段と、
前記物理シミュレーション演算結果得られた物理値に基づき、仮想３次元空間におけるオブジェクトの配置情報を演算する手段と、
所定の描画周期で、前記オブジェクトが配置された仮想３次元空間を仮想カメラから見た画像を生成する画像生成手段とを含み、
前記物理シミュレーション演算手段は、
第１のオブジェクトに関する第１の物理シミュレーション演算を第１の周期で行う第１の物理シミュレーション演算手段と、
第１のオブジェクトに連動して動く第２のオブジェクトに関する第２の物理シミュレーション演算を、第１の周期とは異なる第２の周期で行う第２の物理シミュレーション演算手段とを含むことを特徴とする。
【００１８】
また本発明に係るプログラムは、コンピュータにより実行可能なプログラム（情報記憶媒体又は搬送波に具現化されるプログラム）であって、上記手段をコンピュータに実現させる（上記手段としてコンピュータを機能させる）ことを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより読み取り可能（使用可能）な情報記憶媒体であって、上記手段をコンピュータに実現させる（上記手段としてコンピュータを機能させる）ためのプログラムを含むことを特徴としている。
【００１９】
第１のオブジェクトと第２のオブジェクトは、例えば１つのオブジェクトを構成するパーツオブジェクト（例えば移動体の一部）でもよいし、別個に存在するが連動して動くオブジェクトでもよい。
【００２０】
また第１のオブジェクトと第２のオブジェクトは、表示される事物（オブジェクト）でもよいし、例えば車のエンジン等のように他の物体の内部にあって表示されないもの（画像が生成されないもの）でもよい。また力やエネルギーや熱等のように目に見えないもの（画像が生成されないもの）でもよい。
【００２１】
物理シミュレーション演算とは、運動方程式やエネルギー保存の法則やその他の現実世界の物理法則を用いて、現実世界の物理現象をシミュレーションするための演算である。物理値とは物理シミュレーション演算に用いる値である。
【００２２】
本実施の形態によれば、周期の異なる物理シミュレーション演算間で物理値の受け渡しを行って、物理シミュレーションを行うことができる。このため連動して動く複数のオブジェクトの物理シミュレーションを、少ない演算負荷で精度のよい物理シミュレーションが可能な画像生成システム、プログラム及び情報記憶媒体を提供することができる。
【００２３】
（３）また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、
前記第１の物理シミュレーション演算手段は、
前記第２の物理シミュレーション演算手段によって演算された物理値を使用して、第１の物理シミュレーション演算を行うことを特徴とする。
【００２４】
（４）また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、前記第１の周期及び前記第２の周期の少なくとも一方は、前記所定の描画周期よりも短いことを特徴とする。
【００２５】
本発明によれば必要な物理シミュレーション演算についてのみ前記所定の描画周期よりも短くすることができる。このため、例えば演算周期が短くしないと不自然な画像が生成される物理シミュレーションについてのみ前記所定の描画周期よりも短くすることができる。従って少ない演算負荷で精度のよい画像を生成することができる。
【００２６】
（５）また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、前記第１の周期及び前記第２の周期の少なくとも一方は、前記所定の描画周期よりも長いことを特徴とする。
【００２７】
本発明によれば演算周期が描画周期よりも長くても画像に不自然さが発生しないような物理ミュレーション演算の演算周期については前記所定の描画周期よりも長くすることができる。従って少ない演算負荷で自然な画像を生成することができる。
【００２８】
（６）また本発明に係る画像生成システム、プログラム及び情報記憶媒体は、
前記物理値は、
仮想３次元空間に存在する所与のオブジェクトの速度、加速度、力、位置、回転速度、回転加速度、トルク、回転量の少なくとも１つを含むことを特徴とする。
【００２９】
【発明の実施の形態】
以下、本発明の好適な実施形態について図面を用いて説明する。
【００３０】
なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を何ら限定するものではない。また本実施形態で説明される構成の全てが本発明の解決手段として必須であるとは限らない。
【００３１】
１．構成
図１に、本実施形態の画像生成システム（例えばゲームシステム）１０の機能ブロック図の一例を示す。
【００３２】
なお同図において本実施形態は、少なくとも処理部１００を含めばよく（或いは処理部１００と記憶部１７０、或いは処理部１００と記憶部１７０と情報記憶媒体１８０を含めばよく）、それ以外のブロック（例えば操作部１６０、表示部１９０、音出力部１９２、携帯型情報記憶装置１９４、通信部１９６）については、任意の構成要素とすることができる。
【００３３】
ここで処理部１００は、システム全体の制御、システム内の各ブロックへの命令の指示、ゲーム処理、画像処理、又は音処理などの各種の処理を行うものであり、その機能は、各種プロセッサ（ＣＰＵ、ＤＳＰ等）、或いはＡＳＩＣ（ゲートアレイ等）などのハードウェアや、所与のプログラム（ゲームプログラム）により実現できる。
【００３４】
操作部１６０は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、筐体などのハードウェアにより実現できる。
【００３５】
記憶部１７０は、メインメモリ（主記憶部等）１７２やフレームバッファ（描画バッファ等）１７４等を含み、処理部１００や通信部１９６などのワーク領域となるもので、その機能はＲＡＭなどのハードウェアにより実現できる。
【００３６】
情報記憶媒体（コンピュータにより使用可能な記憶媒体）１８０は、プログラムやデータなどの情報を格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ（ＲＯＭ）などのハードウェアにより実現できる。処理部１００は、この情報記憶媒体１８０に格納される情報に基づいて本発明（本実施形態）の種々の処理を行う。即ち情報記憶媒体１８０には、本発明（本実施形態）の手段（特に処理部１００に含まれるブロック）を実行するための情報（プログラム或いはデータ）が格納される。
【００３７】
なお、情報記憶媒体１８０に格納される情報の一部又は全部は、システムへの電源投入時等に記憶部１７０に転送されることになる。また情報記憶媒体１８０に記憶される情報は、本発明の処理を行うためのプログラム、画像データ、音データ、表示物の形状データ、テーブルデータ、リストデータ、本発明の処理を指示するための情報、その指示に従って処理を行うための情報等の少なくとも１つを含むものである。
【００３８】
表示部１９０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴ、ＬＣＤ、或いはＨＭＤ（ヘッドマウントディスプレイ）などのハードウェアにより実現できる。
【００３９】
音出力部１９２は、本実施形態により生成された音を出力するものであり、その機能は、スピーカなどのハードウェアにより実現できる。
【００４０】
携帯型情報記憶装置１９４は、プレーヤの個人データやセーブデータなどが記憶されるものであり、この携帯型情報記憶装置１９４としては、メモリカードや携帯型ゲーム装置などを考えることができる。
【００４１】
通信部１９６は、外部（例えばホスト装置や他の画像生成システム）との間で通信を行うための各種の制御を行うものであり、その機能は、各種プロセッサ、或いは通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【００４２】
なお本発明（本実施形態）の手段を実行するためのプログラム或いはデータは、ホスト装置（サーバ）が有する情報記憶媒体からネットワーク及び通信部１９６を介して情報記憶媒体１８０に配信するようにしてもよい。このようなホスト装置（サーバ）の情報記憶媒体の使用も本発明の範囲内に含まれる。
【００４３】
処理部１００は、ゲーム処理部１１０、物理シミュレーション演算処理部１２０、画像生成部１３０、音生成部１５０を含む。
【００４４】
ここでゲーム処理部１１０は、コイン（代価）の受け付け処理、各種モードの設定処理、ゲームの進行処理、選択画面の設定処理、オブジェクト（１又は複数のプリミティブ面）の位置や回転角度（Ｘ、Ｙ又はＺ軸回りの回転角度）を求める処理、オブジェクトを動作させる処理（モーション処理）、視点の位置（仮想カメラの位置）や視線角度（仮想カメラの回転角度）を求める処理、マップオブジェクトなどのオブジェクトをオブジェクト空間へ配置する処理、ヒットチェック処理、ゲーム結果（成果、成績）を演算する処理、複数のプレーヤが共通のゲーム空間でプレイするための処理、或いはゲームオーバ処理などの種々のゲーム処理を、操作部１６０からの操作データや、携帯型情報記憶装置１９４からの個人データ、保存データや、ゲームプログラムなどに基づいて行う。
【００４５】
ゲーム処理部は物理シミュレーション演算処理部１２０を含む。
【００４６】
物理シミュレーション演算処理部１２０は、第１の周期で第１の物理シミュレーション演算処理を行い、第１の物理シミュレーション演算によって演算された物理値を使用して、第１の周期とは異なる第２の周期で第２の物理シミュレーション演算処理を行うようにしてもよい。
【００４７】
また第１のオブジェクトに関して第１の物理シミュレーション演算処理を行い、第１のオブジェクトに連動して動く第２のオブジェクトに関して第２の物理シミュレーション演算を、第１の周期とは異なる第２の周期で行うようにしてもよい。
【００４８】
また前記第２の物理シミュレーション演算処理によって演算された物理値を使用して、第１の物理シミュレーション演算処理を行うようにしてもよい。
【００４９】
また前記第１の周期及び前記第２の周期の少なくとも一方を、前記所定の描画周期よりも短くして物理シミュレーション演算を行うようにしてもよい。
【００５０】
また前記第１の周期及び前記第２の周期の少なくとも一方を、前記所定の描画周期よりも長いくして物理シミュレーション演算を行うようにしてもよい。
【００５１】
画像生成部１３０は、ゲーム処理部１１０からの指示等にしたがって各種の画像処理を行い、例えばオブジェクト空間内で仮想カメラ（視点）から見える画像を生成して、表示部１９０に出力する。
【００５２】
音生成部１５０は、ゲーム処理部１１０からの指示等にしたがって各種の音処理を行い、ＢＧＭ、効果音、又は音声などの音を生成し、音出力部１９２に出力する。
【００５３】
なお、ゲーム処理部１１０、仮想オブジェクト配置処理部１２０、画像生成部１３０、音生成部１５０の機能は、その全てをハードウェアにより実現してもよいし、その全てをプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【００５４】
画像生成部１３０は、ジオメトリ処理部（３次元演算部）１３２、描画部（レンダリング部）１４０を含む。
【００５５】
ここで、ジオメトリ処理部１３２は、座標変換、クリッピング処理、透視変換、或いは光源計算などの種々のジオメトリ処理（３次元演算）を行う。そして、本実施形態では、ジオメトリ処理後（透視変換後）のオブジェクトデータ（オブジェクトの頂点座標、頂点テクスチャ座標、或いは輝度データ等）は、記憶部１７０の主記憶部１７２に格納されて、保存される。
【００５６】
描画部１４０は、ジオメトリ処理後（透視変換後）のオブジェクトデータと、記憶部１７０に記憶されるテクスチャとに基づいて、オブジェクトを描画バッファ１７４に描画する。これにより、オブジェクトが移動するオブジェクト空間において、仮想カメラ（視点）から見える画像が描画（生成）されるようになる。
【００５７】
なお、本実施形態の画像生成システムは、１人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、このようなシングルプレーヤモードのみならず、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
【００５８】
また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つの端末を用いて生成してもよいし、ネットワーク（伝送ライン、通信回線）などで接続された複数の端末を用いて生成してもよい。
【００５９】
２．本実施形態の特徴と処理
本実施の形態の特徴と処理を図面を用いて説明する。
【００６０】
図２は、本実施の形態のゲーム画面の一例である。
【００６１】
本実施の形態ではプレーヤの入力を反映して又はコンピュータの制御により走行する車の画像２００を生成する。本実施の形態では車２００を構成するタイヤ（画像生成される事物）２２０、車体（画像生成される事物）２１０、エンジン（内部にあるため、画像生成されない事物）の動きについては、物理シミュレーション演算を行って、前記物理シミュレーション演算結果得られた物理値（例えばにタイヤ、エンジン、車体等の速度、加速度、力、位置、回転速度、回転加速度、トルク、回転量等）に基づき、仮想３次元空間におけるオブジェクト（タイヤや車体）の配置情報及びゲームパラメータ（エンジンの出力トルク等）を演算し、所定の描画周期で、図２に示すような仮想３次元空間を仮想カメラから見た画像を生成する。
【００６２】
図３（Ａ）（Ｂ）は、本実施の形態の物理シミュレーション演算について説明するための図である。
【００６３】
本実施の形態で行う物理シミュレーション演算には、第１の物理シミュレーション演算３２０と第２の物理シミュレーション演算３３０と第３の物理シミュレーション演算３１０が含まれる。
【００６４】
ここで第１の物理シミュレーション演算３２０は１／５４０秒毎（第１の周期）に行われ、第２の物理シミュレーション演算３３０は１／６０秒毎（第２の周期）に行われ、第３の物理シミュレーション演算３１０は１／１８０秒毎（第３の周期）に行われる。このように本実施の形態では、複数の物理シミュレーション演算が異なる周期で実行される。
【００６５】
第１の物理シミュレーション演算３２０は、タイヤ３２２（仮想３次元空間に存在する事物であって、画像が生成される第１のオブジェクト）に関する物理値の物理シミュレーション演算であり、タイヤの回転数３２６からタイヤの周速３２４を演算する。そしてタイヤ周速３２４（物理値の一例）と第２の物理シミュレーション演算３３０によって得られた車体移動速度３３４（物理値の一例）からタイヤ摩擦力３２２（物理値の一例）を演算する。そして第３の物理シミュレーション演算３１０によって得られたエンジン出力トルク３１４（物理値の一例）とタイヤ摩擦反動力３２２’（物理値の一例）からタイヤの角加速度（物理値の一例）を演算し、タイヤの角加速度（物理値の一例）からタイヤの回転数３２６（物理値の一例）を演算する。
【００６６】
このように第１の物理シミュレーション演算３２０は、演算周期の異なる他の物理シミュレーション演算によって得られた物理値を使用する。
【００６７】
また第２の物理シミュレーション演算３３０は、車体３３２（仮想３次元空間に存在する事物であって、画像が生成される第２のオブジェクト）に関する物理値の物理シミュレーション演算であり、第１の物理シミュレーション演算３２０によって得られたタイヤ摩擦力３２２（物理値の一例）から加速度（物理値の一例）を演算し、移動速度３３４（物理値の一例）を演算する。
【００６８】
このように第２の物理シミュレーション演算３２０は、演算周期の異なる他の物理シミュレーション演算によって得られた物理値を使用する。
【００６９】
また第３の物理シミュレーション演算３３０は、エンジン３１２（仮想３次元空間に存在する事物であって、画像が生成されない）についての物理シミュレーション演算であり、第１の物理シミュレーション演算３２０によって得られたタイヤの回転数３２６を使用して、タイヤ回転数３２６から出力トルク３１４を演算する。
【００７０】
このように第３の物理シミュレーション演算３１０は、演算周期の異なる他の物理シミュレーション演算によって得られた物理値を使用する。
【００７１】
またここでタイヤ３２２（第１のオブジェクト）と車体３３２（第２のオブジェクト）はいずれも車というオブジェクトを構成するパーツオブジェクトであり、連動して動くオブジェクトである。すなわち本実施の形態では、第１のオブジェクト（例えばタイヤ）の動きに関する第１の物理シミュレーション演算３２０を第１の周期で行い、第１のオブジェクト（例えばタイヤ）に連動して動く第２のオブジェクト（例えば車体）の動きに関する第２の物理シミュレーション演算３３０を、第１の周期（１／５４０秒）とは異なる第２の周期（１／６０秒）で行っている。
【００７２】
そして前記物理シミュレーション演算結果得られた物理値に基づき、仮想３次元空間におけるオブジェクトの配置情報及びゲームパラメータの少なくとも一方を演算し、所定の描画周期で、仮想３次元空間を仮想カメラから見た画像を生成する。
【００７３】
ここで所定の描画周期は１／６０秒である。従って車体に関する第２の物理シミュレーション演算３３０は描画周期と同じ周期であり、タイヤに関する第１の物理シミュレーション演算３２０は描画周期よりも短い。
【００７４】
一般にかかる物理シミュレーションの演算周期は通常ゲームで使われている描画周期に合わせる。しかし自動車の場合、車体３３２に対してタイヤ３２２の質量が小さいため、演算周期当たりのタイヤ摩擦力が大きくなりすぎてタイヤが高速に回転してしまい不自然な画像が生成され、またグリップ力をうまく計算することができなかった。
【００７５】
従って本実施の形態では、タイヤに関する物理シミュレーションの演算周期を短くして、演算周期当たりのタイヤ摩擦力が大きくなりすぎるのを防止している。このためタイヤに関する物理シミュレーションの演算（第１の物理シミュレーション演算３２０）については演算量が増加するが、車体の物理シミュレーション演算（第２の物理シミュレーション演算３３０）については、演算周期は１／６０秒のままなので、演算量の増加はない。
【００７６】
このように本実施の形態では、演算周期の短縮が必要な物理シミュレーション演算についてのみ演算周期の短縮しているので、少ない演算負荷で精度のよい物理シミュレーションを行うことができる。
【００７７】
図４は、本実施の形態の物理シミュレーション演算処理について説明するための図である。
【００７８】
まず車体の計算１回当たりの計算上の経過時間（ｄｔ−ｂ）、エンジンの計算１回当たりの計算上の経過時間（ｄｔ−ｅ）、タイヤの計算１回当たりの計算上の経過時間（ｄｔ−ｔ）にそれぞれ、車体の演算周期（第２の物理シミュレーションの演算周期）、エンジンの演算周期（第３の物理シミュレーションの演算周期）、タイヤの演算周期（第１の物理シミュレーションの演算周期）をセットする（ステップＳ１０）。
【００７９】
本実施の形態では、車体の計算１回当たりにエンジンの物理シミュレーションを３回を行い、エンジンの物理シミュレーション１回当たりにタイヤの物理シミュレーションを３回行うように物理シミュレーションの演算周期を定めているので具体的には以下のようにして、ｄｔ−ｂ、ｄｔ−ｅ、ｄｔ−ｔを算出するようにしてもよい。
【００８０】
車体の物理シミュレーション１回当たりの計算上の経過時間（ｄｔ−ｂ）に１／１秒当たりの車体の物理シミュレーション回数（Ｌｂ）をセットする。すなわちＬｂ＝６０とするとｄｔ−ｂ＝１／６０となる。
【００８１】
またエンジンの物理シミュレーション１回当たりの計算上の経過時間（ｄｔ−ｅ）に車体の物理シミュレーション１回当たりの計算上の経過時間（ｄｔ−ｂ）１／車体の物理シミュレーション１回当たりのエンジンの物理シミュレーション回数（Ｌｅ）をセットする。ここでエンジンの１秒当たりの物理シミュレーション回数は１８０なので車体の物理シミュレーション１回当たりのエンジンの計算回数（Ｌｅ）＝３である。すなわちｄｔ−ｅ＝１／１８０となる。
【００８２】
またタイヤの物理シミュレーション１回当たりの計算上の経過時間（ｄｔ−ｅ）にエンジンの物理シミュレーション１回当たりの計算上の経過時間（ｄｔ−ｅ）１／エンジンの物理シミュレーション１回当たりのタイヤの物理シミュレーション回数（Ｌｔ）をセットする。ここでタイヤの１秒当たりの物理シミュレーション回数は５４０なのでエンジンの物理シミュレーション１回当たりのタイヤの物理シミュレーション回数（Ｌｅ）＝３である。すなわちｄｔ−ｔ＝１／５４０となる。
【００８３】
次に、ループカウンタｉに車体の物理シミュレーション１回当たりのエンジンの物理シミュレーション回数（Ｌｅ）をセットする（ステップＳ２０）。ループカウンタｉは車体の物理シミュレーション１回当たりのエンジンのループ回数をカウントするカウンタである。
【００８４】
次にタイヤの摩擦力総計（Ｆｔ−ｓｕｍ）に初期値０をセットする（ステップＳ３０）。
【００８５】
次にタイヤの回転数ｗｔからエンジンの出力トルクＴｅを求める（ステップＳ４０）。
【００８６】
次に、ループカウンタｊにエンジンの物理シミュレーション１回当たりのタイヤの物理シミュレーション回数（Ｌｔ）をセットする（ステップＳ５０）。ループカウンタｊはエンジンの物理シミュレーション１回当たりのタイヤのループ回数をカウントするカウンタである。
【００８７】
次にｗｔと車体速度Ｖｂからタイヤ摩擦力Ｆｔを求める（ステップＳ６０）。
【００８８】
次に求めたタイヤ摩擦力Ｆｔをタイヤの摩擦力総計（Ｆｔ−ｓｕｍ）に加算する（ステップＳ７０）。
【００８９】
次に、タイヤ角加速度ａｗｔに（エンジン出力トルクＴｅ−タイヤ摩擦力Ｆｔ×タイヤ半径Ｒｔ）／タイヤイナーシャＩｔをセットし、タイヤの回転数（ここではエンジンの回転数と同義）ｗｔを、ｗｔ＋タイヤの角加速度ａｗｔ×ｄｔ−ｔに更新する（ステップＳ８０）。
【００９０】
次にループカウンタｊをデクリメントする（ステップＳ９０）。
【００９１】
そしてｊ＝０になるまでステップＳ６０〜Ｓ１００の処理を繰り返す（ステップＳ１００）。
【００９２】
次にループカウンタｉをデクリメントする（ステップＳ１１０）。
【００９３】
そしてｉ＝０になるまでステップＳ４０〜Ｓ１２０の処理を繰り返す（ステップＳ１００）。
【００９４】
次にタイヤの摩擦力平均（Ｆｔ−ａｖ）にタイヤの摩擦力総計（Ｆｔ−ｓｕｍ）／Ｌｅ／Ｌｔをセットする（ステップＳ１３０）。
【００９５】
次に車体加速度Ａにタイヤの摩擦力平均（Ｆｔ−ａｖ）／車体質量Ｍをセットし、車体速度ＶｂをＶｂ＋Ａ×ｄｔ−ｂで更新する（ステップＳ１４０）。
【００９６】
ここでステップＳ１０〜Ｓ１４０（ステップＳ４０〜ステップＳ１２０のループ処理を除く）が車体の物理シミュレーション演算部分である。ステップＳ４０〜ステップＳ２０のループ処理（ステップＳ６０〜ステップＳ１００のループ処理を除く）がエンジンの物理シミュレーション演算部分である。またステップＳ６０〜ステップＳ１００のループ処理がタイヤの物理シミュレーション演算部分である。
【００９７】
ここでステップＳ１０〜Ｓ１４０（ステップＳ４０〜ステップＳ１２０のループ処理を除く）の車体の物理シミュレーション演算部分では、例えば、タイヤの物理シミュレーション演算部分（ステップＳ７０）で得られた物理値であるタイヤの摩擦力総計（Ｆｔ−ｓｕｍ）を使用して物理シミュレーション演算を行っている。
【００９８】
またステップＳ６０〜Ｓ１００のタイヤの物理シミュレーション演算部分では、例えば、車体の物理シミュレーション演算部分（ステップＳ１４０）で得られた物理値である車体速度タイヤの摩擦力総計（Ｆｔ−ｓｕｍ）や、エンジンの物理シミュレーション演算部分（ステップＳ４０）で得られた物理値であるエンジン出力トルク（Ｔｅ）を使用して物理シミュレーション演算を行っている。
【００９９】
またステップＳ４０〜Ｓ１２０（ステップＳ６０〜ステップＳ１００のループ処理を除く）のエンジンの物理シミュレーション演算部分では、例えば、タイヤの物理シミュレーション演算部分（ステップＳ８０）で得られた物理値であるタイヤの回転数（Ｔｅ）を使用して物理シミュレーション演算を行っている。
【０１００】
このようにすることで、周期の異なる他の物理シミュレーション演算で得られた物理値を使用して物理シミュレーション演算を行うようにしてもよい。
【０１０１】
本実施の形態ではそれぞれの物理シミュレーション演算の演算周期のちがいをループ回数の違いで実現している。このため物理シミュレーション演算の演算周期の長い部分については、短い部分比べ演算量が少なくてすむ。
【０１０２】
３．ハードウェア構成
次に、本実施形態を実現できるハードウェアの構成の一例について図５を用いて説明する。
【０１０３】
メインプロセッサ９００は、ＣＤ９８２（情報記憶媒体）に格納されたプログラム、通信インターフェース９９０を介して転送されたプログラム、或いはＲＯＭ９５０（情報記憶媒体の１つ）に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などの種々の処理を実行する。
【０１０４】
コプロセッサ９０２は、メインプロセッサ９００の処理を補助するものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算（ベクトル演算）を高速に実行する。例えば、オブジェクトを移動させたり動作（モーション）させるための物理シミュレーションに、マトリクス演算などの処理が必要な場合には、メインプロセッサ９００上で動作するプログラムが、その処理をコプロセッサ９０２に指示（依頼）する。
【０１０５】
ジオメトリプロセッサ９０４は、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算（ベクトル演算）を高速に実行する。例えば、座標変換、透視変換、光源計算などの処理を行う場合には、メインプロセッサ９００で動作するプログラムが、その処理をジオメトリプロセッサ９０４に指示する。
【０１０６】
データ伸張プロセッサ９０６は、圧縮された画像データや音データを伸張するデコード処理を行ったり、メインプロセッサ９００のデコード処理をアクセレートする処理を行う。これにより、オープニング画面、インターミッション画面、エンディング画面、或いはゲーム画面などにおいて、所与の画像圧縮方式で圧縮された動画像を表示できるようになる。なお、デコード処理の対象となる画像データや音データは、ＲＯＭ９５０、ＣＤ９８２に格納されたり、或いは通信インターフェース９９０を介して外部から転送される。
【０１０７】
描画プロセッサ９１０は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画（レンダリング）処理を高速に実行するものである。オブジェクトの描画の際には、メインプロセッサ９００は、ＤＭＡコントローラ９７０の機能を利用して、オブジェクトデータを描画プロセッサ９１０に渡すと共に、必要であればテクスチャ記憶部９２４にテクスチャを転送する。すると、描画プロセッサ９１０は、これらのオブジェクトデータやテクスチャに基づいて、Ｚバッファなどを利用した陰面消去を行いながら、オブジェクトをフレームバッファ９２２に高速に描画する。また、描画プロセッサ９１０は、αブレンディング（半透明処理）、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエリアシング、シェーディング処理なども行うことができる。そして、１フレーム分の画像がフレームバッファ９２２に書き込まれると、その画像はディスプレイ９１２に表示される。
【０１０８】
サウンドプロセッサ９３０は、多チャンネルのＡＤＰＣＭ音源などを内蔵し、ＢＧＭ、効果音、音声などの高品位のゲーム音を生成する。生成されたゲーム音は、スピーカ９３２から出力される。
【０１０９】
ゲームコントローラ９４２からの操作データや、メモリカード９４４からのセーブデータ、個人データは、シリアルインターフェース９４０を介してデータ転送される。
【０１１０】
ＲＯＭ９５０にはシステムプログラムなどが格納される。なお、業務用ゲームシステムの場合には、ＲＯＭ９５０が情報記憶媒体として機能し、ＲＯＭ９５０に各種プログラムが格納されることになる。なお、ＲＯＭ９５０の代わりにハードディスクを利用するようにしてもよい。
【０１１１】
ＲＡＭ９６０は、各種プロセッサの作業領域として用いられる。
【０１１２】
ＤＭＡコントローラ９７０は、プロセッサ、メモリ（ＲＡＭ、ＶＲＡＭ、ＲＯＭ等）間でのＤＭＡ転送を制御するものである。
【０１１３】
ＣＤドライブ９８０は、プログラム、画像データ、或いは音データなどが格納されるＣＤ９８２（情報記憶媒体）を駆動し、これらのプログラム、データへのアクセスを可能にする。
【０１１４】
通信インターフェース９９０は、ネットワークを介して外部との間でデータ転送を行うためのインターフェースである。この場合に、通信インターフェース９９０に接続されるネットワークとしては、通信回線（アナログ電話回線、ＩＳＤＮ）、高速シリアルバスなどを考えることができる。そして、通信回線を利用することでインターネットを介したデータ転送が可能になる。また、高速シリアルバスを利用することで、他のゲームシステム、他のゲームシステムとの間でのデータ転送が可能になる。
【０１１５】
なお、本発明の各手段は、その全てを、ハードウェアのみにより実行してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムのみにより実行してもよい。或いは、ハードウェアとプログラムの両方により実行してもよい。
【０１１６】
そして、本発明の各手段をハードウェアとプログラムの両方により実行する場合には、情報記憶媒体には、本発明の各手段をハードウェアを利用して実行するためのプログラムが格納されることになる。より具体的には、上記プログラムが、ハードウェアである各プロセッサ９０２、９０４、９０６、９１０、９３０等に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ９０２、９０４、９０６、９１０、９３０等は、その指示と渡されたデータとに基づいて、本発明の各手段を実行することになる。
【０１１７】
図６（Ａ）に、本実施形態を業務用ゲームシステムに適用した場合の例を示す。プレーヤは、ディスプレイ１１００上に映し出されたゲーム画像を見ながら、レバー１１０２、ボタン１１０４等を操作してゲームを楽しむ。内蔵されるシステムボード（サーキットボード）１１０６には、各種プロセッサ、各種メモリなどが実装される。そして、本発明の各手段を実行するための情報（プログラム又はデータ）は、システムボード１１０６上の情報記憶媒体であるメモリ１１０８に格納される。以下、この情報を格納情報と呼ぶ。
【０１１８】
図６（Ｂ）に、本実施形態を家庭用のゲームシステムに適用した場合の例を示す。プレーヤはディスプレイ１２００に映し出されたゲーム画像を見ながら、ゲームコントローラ１２０２、１２０４を操作してゲームを楽しむ。この場合、上記格納情報は、本体システムに着脱自在な情報記憶媒体であるＣＤ１２０６、或いはメモリカード１２０８、１２０９等に格納されている。
【０１１９】
図６（Ｃ）に、ホスト装置１３００と、このホスト装置１３００とネットワーク１３０２（ＬＡＮのような小規模ネットワークや、インターネットのような広域ネットワーク）を介して接続される端末１３０４−１〜１３０４−ｎとを含むシステムに本実施形態を適用した場合の例を示す。この場合、上記格納情報は、例えばホスト装置１３００が制御可能な磁気ディスク装置、磁気テープ装置、メモリ等の情報記憶媒体１３０６に格納されている。端末１３０４−１〜１３０４−ｎが、スタンドアロンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置１３００からは、ゲーム画像、ゲーム音を生成するためのゲームプログラム等が端末１３０４−１〜１３０４−ｎに配送される。一方、スタンドアロンで生成できない場合には、ホスト装置１３００がゲーム画像、ゲーム音を生成し、これを端末１３０４−１〜１３０４−ｎに伝送し端末において出力することになる。
【０１２０】
なお、図６（Ｃ）の構成の場合に、本発明の各手段を、ホスト装置（サーバー）と端末とで分散して実行するようにしてもよい。また、本発明の各手段を実行するための上記格納情報を、ホスト装置（サーバー）の情報記憶媒体と端末の情報記憶媒体に分散して格納するようにしてもよい。
【０１２１】
またネットワークに接続する端末は、家庭用ゲームシステムであってもよいし業務用ゲームシステムであってもよい。そして、業務用ゲームシステムをネットワークに接続する場合には、業務用ゲームシステムとの間で情報のやり取りが可能であると共に家庭用ゲームシステムとの間でも情報のやり取りが可能なセーブ用情報記憶装置（メモリカード、携帯型ゲーム装置）を用いることが望ましい。
【０１２２】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。
【０１２３】
たとえば本実施の形態では、車の車体とタイヤとエンジンを例に取り物理シミュレーションの周期を異ならせる場合について説明したがこれに限られない。また物理値の例も本実施の形態で例示したもの以外でもよい。
【０１２４】
また例えば本実施の形態では連動して動くオブジェクトの例として車体とタイヤをあげたがこれに限られない。仮想３次元空間に存在し、連動して動く他のオブジェクトでもよい。例え荷物（第１のオブジェクト）をぶら下げたヘリコプター（第２のオブジェクト）の画像を生成するの場合にも適用できる。こ場合荷物の動きの物理シミュレーションは、ヘリコプターの動きの物理シミュレーションより短い周期で演算することができる。
【０１２５】
また惑星の軌道計算を行う場合にも使用でき、この場合軽い星の軌道計算（物理シミュレーション）は重い星の軌道計算（物理シミュレーション演算）より短い周期で計算することができる。
【０１２６】
また本実施の形態では、いずれかの物理シミュレーションの演算周期が描画周期よりも短い場合を例にとり説明したがこれに限られない。
【０１２７】
例えばいずれかの物理シミュレーションの演算周期が描画周期よりも長い場合でもよい。
【０１２８】
例えば複数の花びらが舞い散る画像を生成するとき、花びらを２群にわけ、画像更新周期に対し、花びらの速度計算（物理シミュレーション演算）は２倍の周期にして２群について交互に行い、花びらの移動計算は、毎画像周期全部行うようにしてもよい。このようにすることで演算処理負荷を軽減することができる。
【０１２９】
また上記例のように１つのオブジェクト（例えば花びら）の異なる物理値（例えば速度と位置）について、異なる周期で物理シミュレーション演算を行う場合でもよい。
【０１３０】
例えば、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の１の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
【０１３１】
また、本発明は種々のゲーム（格闘ゲーム、シューティングゲーム、ロボット対戦ゲーム、スポーツゲーム、競争ゲーム、ロールプレイングゲーム、音楽演奏ゲーム、ダンスゲーム等）に適用できる。
【０１３２】
また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード等の種々のゲームシステムに適用できる。
【図面の簡単な説明】
【図１】本実施形態の画像生成システム（例えばゲームシステム）の機能ブロック図の一例である。
【図２】本実施の形態のゲーム画面の一例である。
【図３】図３（Ａ）（Ｂ）は、本実施の形態の物理シミュレーション演算について説明するための図である。
【図４】本実施の形態の物理シミュレーション演算処理について説明するための図である。
【図５】本実施形態を実現できるハードウェアの構成の一例を示す図である。
【図６】図６（Ａ）、（Ｂ）、（Ｃ）は、本実施形態が適用される種々の形態のシステムの例を示す図である。
【符号の説明】
１０    画像生成システム
１００  処理部
１１０  ゲーム処理部
１２０  物理シミュレーション演算処理部
１３０  画像生成部
１５０  音生成部
１６０  操作部
１７０  記憶部
１７２  メインメモリ
１７４  フレームバッファ
１８０  情報記憶媒体
１９０  表示部
１９２  音出力部
１９４  携帯型情報記憶装置
１９６  通信部
【図１】
2004329791.tif 000003
【図２】
2004329791.tif 000004
【図３】
2004329791.tif 000005
【図４】
2004329791.tif 000006
【図５】
2004329791.tif 000007
【図６】
2004329791.tif 000008