(57)【特許請求の範囲】
【請求項１】
オブジェクト空間における所与の視点から見た画像を生成するためのプログラムであって、
前記オブジェクト空間に対して雲オブジェクトを設定するオブジェクト空間設定部と、
パターン生成空間に所与のランダムパターンを発生させ、発生させたランダムパターンに基づいて雲情報を演算する雲情報演算部と、
求められた雲情報を反映させた雲オブジェクトを描画する描画部として、
コンピュータを機能させ、
前記雲情報演算部が、
前記パターン生成空間を切断する切断面の位置を、時間経過に応じて第１の座標軸に沿って変化させることにより、前記パターン生成空間の切断面に現れるパターンを変化させるともに、
前記パターン生成空間の切断面に現れるパターンに基づいて前記雲情報を求めることを特徴とするプログラム。
【請求項２】
請求項１において、
前記雲情報演算部が、
所与のスケーリングパラメータに基づいて前記パターン生成空間上での広さが異なる複数の切断面に現れるパターンを取得するともに、
前記複数の切断面に現れるパターンを合成した合成パターンに基づいて前記雲情報を求めることを特徴とするプログラム。
【請求項３】
請求項２において、
前記雲情報演算部が、
前記複数の切断面に現れるパターンを合成する際に、各パターンに対して異なる合成率パラメータを乗算してから合成することを特徴とするプログラム。
【請求項４】
請求項１において、
前記雲情報演算部が、
所与のしきい値パラメータに基づいて前記パターン生成空間の切断面に現れるパターンに対してフィルタリングを行うことにより雲の形状を決定することを特徴とするプログラム。
【請求項５】
請求項２又は３において、
前記雲情報演算部が、
所与のしきい値パラメータに基づいて前記合成パターンに対してフィルタリングを行うことにより雲の形状を決定すること特徴とするプログラム。
【請求項６】
請求項１〜５のいずれかにおいて、
前記雲情報演算部が、
前記パターン生成空間の切断面の位置を前記第１の座標軸とは異なる第２の座標軸及び第３の座標軸の少なくとも一方に沿って変動させることにより、前記パターン生成空間の切断面に現れるパターンを変化させることを特徴とするプログラム。
【請求項７】
請求項１〜６のいずれかにおいて、
雲の色及び透明度の少なくとも一方とインデックス番号との対応関係を設定したカラールックアップテーブルが用意されており、
前記描画部が、
所与の色範囲指定パラメータと前記雲情報とに基づいて得られるインデックス番号をテクセルに設定したインデックステクスチャを作成し、
前記雲オブジェクトに対して前記カラールックアップテーブルを参照しながら前記インデックステクスチャをマッピングすることを特徴とするプログラム。
【請求項８】
請求項１〜７のいずれかにおいて、
前記オブジェクト空間内に設定される光源の光源情報を設定する光源情報設定部としてコンピュータを機能させ、
前記光源情報設定部が、
前記オブジェクト空間内での気象条件、経過時間、及び発生イベントの少なくともいずれか一つに応じて、前記光源情報のうち前記雲オブジェクトを照明する光源の色及び明るさの少なくとも一方を変化させることを特徴とするプログラム。
【請求項９】
コンピュータにより読み取り可能な情報記憶媒体であって、請求項１〜８のいずれかに記載のプログラムを記憶することを特徴とする情報記憶媒体。
【請求項１０】
オブジェクト空間における所与の視点から見た画像を生成するための画像生成システムであって、
前記オブジェクト空間に対して雲オブジェクトを設定するオブジェクト空間設定部と、
パターン生成空間に所与のランダムパターンを発生させ、発生させたランダムパターンに基づいて雲情報を演算する雲情報演算部と、
求められた雲情報を反映させた雲オブジェクトを描画する描画部と、
を含み、
前記雲情報演算部が、
前記パターン生成空間を切断する切断面の位置を、時間経過に応じて第１の座標軸に沿って変化させることにより、前記パターン生成空間の切断面に現れるパターンを変化させるともに、
前記パターン生成空間の切断面に現れるパターンに基づいて前記雲情報を求めることを特徴とする画像生成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム、情報記憶媒体及び画像生成システムに関する。
【背景技術】
【０００２】
従来より、キャラクタなどのオブジェクトが配置設定されるオブジェクト空間（仮想的な３次元空間）において仮想カメラ（所与の視点）から見える画像を生成する画像生成システム（ゲームシステム）が知られており、いわゆる仮想現実を体験できるものとして人気が高い。プレーヤがキャラクタを操作してオブジェクト空間を移動させたり、キャラクタに何らかの行動を行わせたりするアクションゲームのゲーム画像を生成する画像生成システムを例にとれば、プレーヤの仮想現実感の向上のためには、雲などの自然環境についてもリアルに表現できることが好ましい。
【０００３】
特に雲など上空に存在するものは、仮想カメラの視界画像の中でも比較的大きな面積を占有するため、その存在が画像の中で目立ちやすい。このため、雲など上空の様子をリアルタイムに変化させる表現ができる技術が望まれていた。例えば、従来では雲をリアルタイムに変化させるようにする場合には、予め用意された複数枚のテクスチャを用いてアニメーションさせることによって対処していた。しかしながら、このような手法では大量のテクスチャのデータを格納するメモリ領域を確保する必要があり、メモリの使用制限があるシステムでは十分にその特徴を生かすことができないという課題があった。
【特許文献１】特開２００２−２９８１５８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本発明は上記事情に鑑みてなされたものであり、その目的は、リアルタイムに雲が変化する様子を表現した高品質な画像を生成することができるプログラム、情報記憶媒体及び画像生成システムを提供することにある。
【課題を解決するための手段】
【０００５】
（１）本発明は、オブジェクト空間における所与の視点から見た画像を生成するための画像生成システムであって、前記オブジェクト空間に対して雲オブジェクトを設定するオブジェクト空間設定部と、パターン生成空間に所与のランダムパターンを発生させ、発生させたランダムパターンに基づいて雲情報を演算する雲情報演算部と、求められた雲情報を反映させた雲オブジェクトを描画する描画部と、を含み、前記雲情報演算部が、前記パターン生成空間を切断する切断面の位置を、時間経過に応じて第１の座標軸に沿って変化させることにより、前記パターン生成空間の切断面に現れるパターンを変化させるともに、前記パターン生成空間の切断面に現れるパターンに基づいて前記雲情報を求める画像生成システムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラム及びそのようなプログラムを記憶する情報記憶媒体に関係する。
【０００６】
本発明において雲オブジェクトには、板状の多角形ポリゴンなどに加えてパーティクルの集合体なども含まれる。また雲情報は、板状の多角形ポリゴンにマッピングされるテクスチャの情報やパーティクルの生成情報（発生、消滅、移動に関与する情報）などが含まれる。
【０００７】
本発明によれば、所与のランダムパターンを発生させたパターン生成空間の切断面に現れるパターンを雲オブジェクトに反映される雲情報の演算に用いる。このとき切断面は、パターン生成空間のＹ座標成分を時間経過に応じて変化させることでパターン生成空間上での位置が変化する。このようにして切断面の位置を時間経過に応じて変化させることにより、リアルタイムに変化する雲を表現することができる。
【０００８】
（２）また本発明の画像生成システム、プログラム及び情報記憶媒体では、前記雲情報演算部が、所与のスケーリングパラメータに基づいて前記パターン生成空間上での広さが異なる複数の切断面に現れるパターンを取得するともに、前記複数の切断面に現れるパターンを合成した合成パターンに基づいて前記雲情報を求めるようにしてもよい。このようにすれば、複数の切断面に現れるパターンを合成することによって、雲情報を求める基礎となるパターンのランダム性を向上させることができるため、より実際の自然環境に近い雲を表現することができる。
【０００９】
（３）また本発明の画像生成システム、プログラム及び情報記憶媒体では、前記雲情報演算部が、前記複数の切断面に現れるパターンを合成する際に、各パターンに対して異なる合成率パラメータを乗算してから合成するようにしてもよい。このようにすれば、複数の切断面に現れるパターンの合成比率を変えるだけで、パターンのランダム性を向上させて同じような雲ができないようにすることができる。
【００１０】
（４）また本発明の画像生成システム、プログラム及び情報記憶媒体では、前記雲情報演算部が、所与のしきい値パラメータに基づいて前記パターン生成空間の切断面に現れるパターンあるいは前記合成パターンに対してフィルタリングを行うことにより雲の形状を決定するようにしてもよい。例えば、しきい値パラメータをオブジェクト空間内での気象条件、経過時間、あるいは発生イベント等に応じて変化させるようにすれば、オブジェクト空間内での状況に適した雲を表現することができるようになる。
【００１１】
（５）また本発明の画像生成システム、プログラム及び情報記憶媒体では、前記雲情報演算部が、前記パターン生成空間の切断面の位置を前記第１の座標軸とは異なる第２の座標軸及び第３の座標軸の少なくとも一方に沿って変動させることにより、前記パターン生成空間の切断面に現れるパターンを変化させるようにしてもよい。このようにすれば、例えば、オブジェクト空間内での気象条件、経過時間、あるいは発生イベント等に応じて、雲が移動する様子を表現することができる。この場合、雲の動き方で間接的に風向きなどを画像を見る者に感じさせることができるようになる。
【００１２】
（６）また本発明の画像生成システム、プログラム及び情報記憶媒体では、雲の色及び透明度の少なくとも一方とインデックス番号との対応関係を設定したカラールックアップテーブルが用意されており、前記描画部が、所与の色範囲指定パラメータと前記雲情報とに基づいて得られるインデックス番号をテクセルに設定したインデックステクスチャを作成し、前記雲オブジェクトに対して前記カラールックアップテーブルを参照しながら前記インデックステクスチャをマッピングするようにしてもよい。例えば、オブジェクト空間内での気象条件、経過時間、あるいは発生イベント等に応じて、色範囲指定パラメータを変動させるようにすれば、状況に応じたリアルな雲を表現することができるようになり利便性が高い。
【００１３】
（７）また本発明の画像生成システムでは、前記オブジェクト空間内に設定される光源の光源情報を設定する光源情報設定部を含み、前記光源情報設定部が、前記オブジェクト空間内での気象条件、経過時間、及び発生イベントの少なくともいずれか一つに応じて、前記光源情報のうち前記雲オブジェクトを照明する光源の色及び明るさの少なくとも一方を変化させるようにしてもよい。また本発明のプログラム及び情報記憶媒体では、上記光源情報設定部としてコンピュータを機能させるようにしてもよい。このようにすれば、状況に応じたリアルな雲を表現することができる。例えば、朝焼けや夕焼けで赤く照らされた雲などを表現することができる。
【発明を実施するための最良の形態】
【００１４】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００１５】
図１に本実施形態の画像生成システム（ゲームシステム）の機能ブロック図の例を示す。なお本実施形態の画像生成システムは図１の構成要素（各部）の一部を省略した構成としてもよい。
【００１６】
操作部１６０は、プレーヤがプレーヤオブジェクト（移動体オブジェクトの一例、プレーヤが操作するプレーヤキャラクタ）の操作データを入力するためのものであり、その機能は、レバー、ボタン、ステアリング、マイク、タッチパネル型ディスプレイ、或いは筺体などにより実現できる。記憶部１７０は、処理部１００や通信部１９６などのワーク領域となるもので、その機能はＲＡＭ（ＶＲＡＭ）などにより実現できる。
【００１７】
情報記憶媒体１８０（コンピュータにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ（ＲＯＭ）などにより実現できる。処理部１００は、情報記憶媒体１８０に格納されるプログラム（データ）に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体１８０には、本実施形態の各部としてコンピュータを機能させるためのプログラム（各部の処理をコンピュータに実行させるためのプログラム）が記憶される。
【００１８】
表示部１９０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴ、ＬＣＤ、タッチパネル型ディスプレイ、或いはＨＭＤ（ヘッドマウントディスプレイ）などにより実現できる。音出力部１９２は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
【００１９】
携帯型情報記憶装置１９４は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置１９４としては、メモリカードや携帯型ゲーム装置などがある。通信部１９６は外部（例えばホスト装置や他の画像生成システム）との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【００２０】
なお本実施形態の各部としてコンピュータを機能させるためのプログラム（データ）は、ホスト装置（サーバー）が有する情報記憶媒体からネットワーク及び通信部１９６を介して情報記憶媒体１８０（記憶部１７０）に配信してもよい。このようなホスト装置（サーバー）の情報記憶媒体の使用も本発明の範囲内に含めることができる。
【００２１】
処理部１００（プロセッサ）は、操作部１６０からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの処理を行う。ここでゲーム処理としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。この処理部１００は記憶部１７０内の主記憶部１７２をワーク領域として各種処理を行う。処理部１００の機能は各種プロセッサ（ＣＰＵ、ＤＳＰ等）、ＡＳＩＣ（ゲートアレイ等）などのハードウェアや、プログラムにより実現できる。
【００２２】
処理部１００は、オブジェクト空間設定部１１０、移動・動作処理部１１２、仮想カメラ制御部１１４、雲情報演算部１１６、気象条件設定部１１８、光源情報設定部１１９、描画部１２０、音生成部１３０を含む。なおこれらの一部を省略する構成としてもよい。
【００２３】
オブジェクト空間設定部１１０は、キャラクタ、建物、球場、車、樹木、柱、壁、マップ（地形）などの表示物を表す各種オブジェクト（ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブで構成されるオブジェクト）をオブジェクト空間に配置設定する処理を行う。即ちワールド座標系でのオブジェクトの位置や回転角度（向き、方向と同義）を決定し、その位置（Ｘ、Ｙ、Ｚ）にその回転角度（Ｘ、Ｙ、Ｚ軸回りでの回転角度）でオブジェクトを配置する。特に本実施形態では、オブジェクト空間設定部１１０が、オブジェクト空間に対して雲オブジェクトを設定する。雲オブジェクトは、板状の多角形ポリゴン（例えば、矩形ポリゴン）であったり、パーティクル（粒子状のオブジェクト）の集合体であったりする。
【００２４】
移動・動作処理部１１２は、オブジェクト（キャラクタ、車、電車又は飛行機等）の移動・動作演算（移動・動作シミュレーション）を行う。すなわち操作部１６０によりプレーヤが入力した操作データや、プログラム（移動・動作アルゴリズム）や、各種データ（モーションデータ）などに基づいて、オブジェクトをオブジェクト空間内で移動させたり、オブジェクトを動作（モーション、アニメーション）させたりする処理を行う。具体的には、オブジェクトの移動情報（位置、回転角度、速度、或いは加速度）や動作情報（オブジェクトを構成する各パーツの位置、或いは回転角度）を、１フレーム（１／６０秒）毎に順次求めるシミュレーション処理を行う。なおフレームは、オブジェクトの移動・動作処理（シミュレーション処理）や画像生成処理を行う時間の単位である。
【００２５】
仮想カメラ制御部１１４は、オブジェクト空間内の所与（任意）の視点から見える画像を生成するための仮想カメラ（視点）の制御処理を行う。具体的には、仮想カメラの位置（Ｘ、Ｙ、Ｚ）又は回転角度（Ｘ、Ｙ、Ｚ軸回りでの回転角度）を制御する処理（視点位置、視線方向あるいは画角を制御する処理）を行う。
【００２６】
例えば仮想カメラによりオブジェクト（例えばキャラクタ、ボール、車）を後方から撮影する場合には、オブジェクトの位置又は回転の変化に仮想カメラが追従するように、仮想カメラの位置又は回転角度（仮想カメラの向き）を制御する。この場合には、移動・動作処理部１１２で得られたオブジェクトの位置、回転角度又は速度などの情報に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた回転角度で回転させたり、予め決められた移動経路で移動させる制御を行ってもよい。この場合には、仮想カメラの位置（移動経路）又は回転角度を特定するための仮想カメラデータに基づいて仮想カメラを制御する。なお、仮想カメラ（視点）が複数存在する場合には、それぞれの仮想カメラについて上記の制御処理が行われる。
【００２７】
雲情報演算部１１６は、パターン生成空間に所与のランダムパターン（ノイズパターン）を発生させ、発生させたランダムパターンに基づいて雲情報を演算する処理を行う。本実施形態では、ランダムパターンとして、パーリンノイズを発生させている。なおランダムパターンは、パーリンノイズに限らずに任意のランダム関数（ノイズ関数）により求めることができる。
【００２８】
雲情報演算部１１６は、ランダムパターン（例えば、パーリンノイズ）を発生させた３次元のパターン生成空間の切断面に現れるパターンに基づいて雲情報を演算する。ここでいう雲情報には、雲オブジェクトに貼り付けられるテクスチャの情報（テクセルパターン）や、雲オブジェクトがパーティクルの集合体である場合には、パーティクルの生成情報（発生、消滅、移動に関する情報）などが相当する。そして雲情報演算部１１６は、パターン生成空間を切断する切断面の第１の座標軸成分（Ｙ軸成分）を時間経過に応じて変化させることにより、パターン生成空間の切断面を第１の座標軸（Ｙ軸）に沿って移動させる。
【００２９】
また雲情報演算部１１６は、所与のスケーリングパラメータに基づいてパターン生成空間上での広さが異なる複数の切断面に現れるパターンを取得するともに、複数の切断面に現れるパターンを合成する処理を行う。この場合には、合成パターンに基づいて雲情報を求める。また複数の切断面に現れるパターンを合成する際には、各パターンに対して異なる合成率パラメータを乗算してから合成処理を行うようにしてもよい。
【００３０】
また雲情報演算部１１６は、所与のしきい値パラメータに基づいてパターン生成空間の切断面に現れるパターンに対してフィルタリングを行うことにより雲の形状を決定する。例えば、雲の発生状況に応じてしきい値パラメータを変動させることによって、まだらに雲ができている様子や雲が密集している様子などが表現できる。
【００３１】
また雲情報演算部１１６は、パターン生成空間の切断面を第１の座標軸（Ｙ軸）とは異なる第２の座標軸（Ｘ軸）及び第３の座標軸（Ｚ軸）の少なくとも一方の軸方向に移動させることにより、パターン生成空間の切断面の位置を変更する処理を行う。例えば、気象条件等に応じて切断面の位置を変更するようにすれば、オブジェクト空間の上空での風向きを間接的に認識させることができるようになる。
【００３２】
光源情報設定部１１９は、オブジェクト空間内に設定される光源の光源情報（光源の位置、向き、色、明るさ等）を設定する処理を行う。特に本実施形態では、オブジェクト空間内での気象条件、経過時間、及び発生イベントの少なくとも一つに応じて、光源情報のうち雲オブジェクトを照明する光源（例えば、環境光：アンビエント）の色及び明るさの少なくとも一方を変化させる処理を行っている。このようにすれば、リアルな朝焼けや夕焼けなどの各種表現を行うことができるようになる。
【００３３】
描画部１２０は、処理部１００で行われる種々の処理（ゲーム処理）の結果に基づいて描画処理を行い、これにより画像を生成し、表示部１９０に出力する。いわゆる３次元ゲーム画像を生成する場合には、まずオブジェクト（モデル）の各頂点の頂点データ（頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等）を含むオブジェクトデータ（モデルデータ）が入力され、入力されたオブジェクトデータに含まれる頂点データに基づいて、頂点処理が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理（テッセレーション、曲面分割、ポリゴン分割）を行うようにしてもよい。頂点処理では、頂点の移動処理や、座標変換（ワールド座標変換、カメラ座標変換）、クリッピング処理、透視変換、あるいは光源処理等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更（更新、調整）する。そして、頂点処理後の頂点データに基づいてラスタライズ（走査変換）が行われ、ポリゴン（プリミティブ）の面とピクセルとが対応づけられる。そしてラスタライズに続いて、画像を構成するピクセル（表示画面を構成するフラグメント）を描画するピクセル処理（フラグメント処理）が行われる。ピクセル処理では、テクスチャの読出し（テクスチャマッピング）、色データの設定／変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定し、透視変換されたオブジェクトの描画色を描画バッファ１７４（ピクセル単位で画像情報を記憶できるバッファ。ＶＲＡＭ、レンダリングターゲット）に出力（描画）する。すなわち、ピクセル処理では、画像情報（色、法線、輝度、α値等）をピクセル単位で設定あるいは変更するパーピクセル処理を行う。これにより、オブジェクト空間内に設定された仮想カメラ（所与の視点）から見える画像が生成される。なお、仮想カメラ（視点）が複数存在する場合には、それぞれの仮想カメラから見える画像を分割画像として１画面に表示できるように画像を生成することができる。
【００３４】
なお描画部１２０が行う頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、ポリゴン（プリミティブ）の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ（頂点シェーダやピクセルシェーダ）により実現されてもよい。プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、ハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。
【００３５】
そして描画部１２０は、オブジェクトを描画する際に、ジオメトリ処理、テクスチャマッピング、隠面消去処理、αブレンディング等を行う。
【００３６】
ジオメトリ処理では、オブジェクトに対して、座標変換、クリッピング処理、透視投影変換、或いは光源計算等の処理が行われる。そして、ジオメトリ処理後（透視投影変換後）のオブジェクトデータ（オブジェクトの頂点の位置座標、テクスチャ座標、色データ（輝度データ）、法線ベクトル、或いはα値等）は、主記憶部１７２に保存される。
【００３７】
テクスチャマッピングは、記憶部１７０のテクスチャ記憶部１７８に記憶されるテクスチャ（テクセル値）をオブジェクトにマッピングするための処理である。具体的には、オブジェクトの頂点に設定（付与）されるテクスチャ座標等を用いて記憶部１７０のテクスチャ記憶部１７８からテクスチャ（色（ＲＧＢ）、α値などの表面プロパティ）を読み出す。そして、２次元の画像であるテクスチャをオブジェクトにマッピングする。この場合に、ピクセルとテクセルとを対応づける処理や、テクセルの補間としてバイリニア補間などを行う。
【００３８】
特に本実施形態の画像生成システムでは、カラーパレット記憶部１７９に記憶されるインデックスカラー・テクスチャマッピング用のカラールックアップテーブル（ＣＬＵＴ）を用いたテクスマッピングをサポートしている。インデックスカラー・テクスチャマッピングは、テクセルに対してインデックス番号（インデックス色）を設定したインデックステクスチャを、インデックス番号と画像情報（Ｒ成分、Ｇ成分、Ｂ成分、Ａ成分（α成分））とを対応づけるカラールックアップテーブル（ＣＬＵＴ）を参照しながら、仮想オブジェクト（例えば、矩形ポリゴン等の多角形ポリゴン）に対してテクスチャマッピングする手法である。
【００３９】
そして本実施形態では、描画部１２０が、上述のインデックスカラー・テクスチャマッピングの機能を利用して、雲の基本色（光源の影響を考慮する前の色）を決定する。具体的には、カラーパレット記憶部１７９に、雲の色及び透明度の少なくとも一方とインデックス番号との対応関係を設定したカラールックアップテーブル（ＣＬＵＴ）が予め用意されている。そして、所与の色範囲指定パラメータと、雲情報演算部１１６で求めた雲情報とに基づいて求められたインデックス情報をテクセルに設定したインデックステクスチャを作成して、テクスチャ記憶部１７８に格納する。最終的には、雲オブジェクト（例えば、矩形のポリゴン）に対してカラーパレット記憶部１７９に格納されているカラールックアップテーブル（ＣＬＵＴ）を参照しながらテクスチャ記憶部１７８に格納したインデックステクスチャをマッピングする処理を行う。
【００４０】
隠面消去処理としては、描画ピクセルのＺ値（奥行き情報）が格納されるＺバッファ（奥行きバッファ）を用いたＺバッファ法（奥行き比較法、Ｚテスト）による隠面消去処理を行うことができる。すなわちオブジェクトのプリミティブ（面の最小単位）に対応する描画ピクセルを描画する際に、Ｚバッファに格納されるＺ値を参照する。そして参照されたＺバッファのＺ値と、プリミティブの描画ピクセルでのＺ値とを比較し、描画ピクセルでのＺ値が、仮想カメラから見て手前側となるＺ値（例えば小さなＺ値）である場合には、その描画ピクセルの描画処理を行うとともにＺバッファのＺ値を新たなＺ値に更新する。
【００４１】
αブレンディング（α合成）は、α値（Ａ値）に基づく半透明合成処理（通常αブレンディング、加算αブレンディング又は減算αブレンディング等）のことである。例えば、通常αブレンディングでは、α値を合成の強さとして線形補間を行うことにより２つの色を合成した色を求める処理を行う。
【００４２】
なお、α値は、各ピクセル（テクセル、ドット）に関連づけて記憶できる情報であり、例えばＲＧＢの各色成分の輝度を表す色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度（透明度、不透明度と等価）、バンプ情報などとして使用できる。
【００４３】
音生成部１３０は、処理部１００で行われる種々の処理の結果に基づいて音処理を行い、ＢＧＭ、効果音、又は音声などのゲーム音を生成し、音出力部１９２に出力する。
【００４４】
なお、本実施形態の画像生成システムは、１人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つの端末を用いて生成してもよいし、ネットワーク（伝送ライン、通信回線）などで接続された複数の端末（ゲーム機、携帯電話）を用いて分散処理により生成してもよい。
【００４５】
２．本実施形態の手法
本実施の形態では、図２に示すような空に漂う雲が、リアルタイムに変化する様子を表現するために以下のような手法を採用している。
【００４６】
まず本実施の形態では、図３（Ａ）に示すように、オブジェクト空間内に仮想カメラに追従して移動する天球オブジェクトを設定しており、その天球オブジェクト内の空に相当する位置（所与の位置）に矩形ポリゴンからなる雲オブジェクトＣＯＢを配置して仮想カメラから見えるシーンを描画することにより図２に示すような画像を生成している。
【００４７】
なお、雲オブジェクトは天球オブジェクト内に複数設定してもよく、例えば、図３（Ｂ）に示すように、高層の雲を表現する雲オブジェクトＣＯＢ０と低層の雲を表現する雲オブジェクトＣＯＢ１とを地表からの高さを変えて設定するようにしてもよい。このようにすれば、雲の高さに応じた空模様の変化を表現することができるようになる。
【００４８】
また本実施形態では、図４に示すように、パーリンノイズを所与のパターン生成空間に発生させて、そのパターン生成空間にできたノイズの濃さの分布状態に基づいて雲の厚みや形状に相当する雲パターン（雲情報の一例）を求めている。
【００４９】
パーリンノイズとは、Ｋｅｎ Ｐｅｒｌｉｎ氏によって開発された自然界の不規則なノイズを発生させる手法であって、パーリンノイズを発生させる場合、下式のような関数の和によりノイズの濃さＮを求めることができる。
【００５０】
Ｎ＝Σｆ(x)≒Σ(amplitude*interpolate(random(x*frequency))
上式において「x」は任意のパラメータ、「amplitude」は振幅（乱数値の最大値と最小値との差）、「frequency」は周波数（乱数値のサンプリング周期）、「interpolate」は乱数値間の補間を行うことを表す。すなわちパーリンノイズは、異なる振幅と周波数（波長）をもつノイズ関数（フラクタル関数）の和である。本実施形態では、このようなパーリンノイズの生成アルゴリズムを３次元のパターン生成空間（Ｘ，Ｙ，Ｚ）に拡張している。例えば、整数座標値を持つ８つの点（３次元格子を作る８つの点）に対して求めたノイズの濃さＮを、線形補間、３角関数による補間、エルミート補間等により平滑化計算を行うことで３次元パターン生成空間における任意の座標点（Ｘ，Ｙ，Ｚ）のノイズの濃さＮを求めることができる。
【００５１】
次に図５〜図８を参照しながら、時間経過に応じて変化する雲のパターン（雲情報）を求めるための手法を説明する。
【００５２】
本実施形態では、時間経過に応じてプロシージャルに雲パターンを表現したテクスチャを作成するために、図５に示すように、パターン生成空間のＸＺ座標平面（第２の座標軸成分と第３の座標軸成分とで規定される平面）に沿って形成される切断面ＦのＹ座標値（第１の座標軸成分の値）を時間経過に応じて変化させることにより切断面ＦをＹ軸（第１の座標軸）に沿って移動させている。これにより切断面Ｆに現れるパーリンノイズのパターンＰ（ノイズパターン）が時間経過に応じて変化する。この切断面Ｆに現れるパターンＰにおけるノイズの濃さＮの分布を雲の濃さに置き換えることでリアルタイムに変化する雲パターンを取得することができるようになる。
【００５３】
ただし、単純に切断面Ｆに現れるパターンＰを取得して、そのまま雲パターンとしたのではリアリティに欠けてしまったり、パターン性が見えてしまったりするため、本実施形態の手法では様々な工夫を施している。
【００５４】
まず本実施形態の手法では、風向きなどの気象条件に応じて雲の様子が変化することを表現するために、図６（Ａ）に示すように、パターン生成空間の切断面Ｆの位置をずらした切断面Ｆ´に現れるパターンを取得することができるようになっている。この場合、時間経過に応じてＸ軸方向（図６（Ｂ）のベクトルＶｘの向き：第２の座標軸方向）及びＺ軸方向（図６（Ｂ）のベクトルＶｚの向き：第３の座標軸方向）の少なくとも一方に沿って切断面Ｆの位置を移動させることができる。このようにすれば、オブジェクト空間内であたかも実際の風が吹いているかのような錯覚を画像の観察者に与えることができるようになる。また切断面ＦをＸ軸方向あるいはＺ軸方向などに移動させる場合には、気象条件などに応じて各軸方向への移動量（ベクトルＶｘ、Ｖｚの大きさ）を変化させるようにしてもよい。例えば、天候がよい場合には、移動量を少なくし、天候が悪い場合には、移動量を多くすることで気象条件に応じた適切な表現を行うことができるようになる。
【００５５】
また本実施形態の手法では、パターンのランダム性を向上させるため、図７に示すように、複数の切断面Ｆ１、Ｆ２に現れるパーリンノイズのパターンＰ１、Ｐ２を合成する手法を採用している。
【００５６】
具体的には、パターン生成空間上での切断面の広さ（面積）をスケーリングパラメータを用いてスケーリングすることにより、複数の広さが異なる切断面Ｆ１、Ｆ２に現れるノイズパターンを同一サイズのフィールドに落とし込むことによってノイズパターンＰ１、Ｐ２を得る。次に、ノイズパターンＰ１、Ｐ２を、例えば加算合成するなどして合成ノイズパターンＳＰを得る。このときノイズパターンＰ１、Ｐ２のそれぞれに合成の強さとして、互いに異なる合成率パラメータを乗算することで、表現したい雲の形態に合わせて各ノイズパターンの影響度を調整している。例えば、比較的はっきりとした形状の雲を表現したい場合には、図７に示す例では、ノイズパターンＰ１の合成率パラメータを高めに設定すればよく、また例えば、まだらに広がって形状のあいまいな雲を表現したい場合には、図７に示す例では、ノイズパターンＰ２の合成率パラメータを高めに設定すればよい。
【００５７】
また本実施形態では、雲の形状を最終的に決定するパラメータとしてしきい値パラメータを用意しており、このしきい値パラメータを利用して合成ノイズパターンＳＰに対してフィルタリングを行う手法を採用している。具体的には、図８に示すように、合成ノイズパターンＳＰのノイズの濃さＮの中からしきい値パラメータＮｔｈ以下の領域を所与の値（例えば、０）にクランプすることで雲パターンＣＰを求めて雲の形状を決定する。各パターンにおけるノイズの濃さＮの分布はノイズ関数（ランダム関数）によりランダムに変化するものであるので、しきい値パラメータを変化させることで、気象条件など状況に応じた雲の形状を持った雲パターンＣＰを得ることができるようになる。例えば、しきい値パラメータＮｔｈを低くすれば、広範囲にわたって空が雲に覆われている様子を表現する雲パターンＣＰを得ることができ、しきい値パラメータＮｔｈを高くすれば、雲がまだらに散在する様子を表現する雲パターンＣＰを得ることができる。また、しきい値パラメータＮｔｈも時間経過などに応じて変化させれば、より自然環境に近い上空の雲の様子をシミュレートすることができる。なおしきい値パラメータＮｔｈを用いたフィルタリングは合成ノイズパターンＳＰに対して行うばかりでなく、パターン生成空間の切断面に現れるノイズパターンＰに対して個別に行うようにしてもよい。
【００５８】
次に図９〜図１１を参照しながら、本実施形態の手法で行っている雲の色の決定手法について説明する。
【００５９】
まず本実施の形態では、図９（Ａ）に示すように、雲の色（Ｒ、Ｇ、Ｂ）と雲の透明度（Ａ：α値）との対応関係が設定されたカラールックアップテーブル（ＣＬＵＴ）を用意している。カラールックアップテーブルでは、２５６階調分の色のデータ（（Ｒ０、Ｇ０、Ｂ０）〜（Ｒ２５５、Ｇ２５５、Ｂ２５５））と透明度のデータ（Ａ０〜Ａ２５５）とが２５６段階のインデックス番号（０〜２５５）に対応づけられている。
【００６０】
そして本実施形態では、状況に応じて雲の色及び透明度の範囲を決めることができるようにするために、テクスチャで使用するインデックス番号の範囲を変化させる処理を行っている。
【００６１】
具体的には、ダイナミックレンジパラメータ（第１の色範囲指定パラメータ）とオフセットパラメータ（第２の色範囲指定パラメータ）とを用いて図５〜図８までの処理により得られた雲パターンＣＰにおけるノイズの濃さＮをインデックス番号に変換する処理を行っている。ダイナミックレンジパラメータ及びオフセットパラメータは、オブジェクト空間内での経過時間、気象条件、発生イベント等、様々な要因に基づいて変動させることができる。このようにすれば、状況に応じて雲の色や透明度を柔軟に変化させることができるため、リアルな雲を表現することができるようになり利便性が高い。
【００６２】
具体的には、図９（Ｂ）に示すように、雲パターンＣＰにおけるノイズの濃さＮを所与の値域（例えば、０〜１の範囲）に正規化してからダイナミックレンジパラメータを乗算することで、雲の色や透明度を如何なる変化幅で変化させるかを決める色の帯域（ダイナミックレンジ）を決定する。例えば、正規化された０〜１の範囲に対してダイナミックレンジパラメータとして１２８を乗算すると、０〜１２８という１２９段階のインデックス番号をノイズの濃さＮに対応づけることができる。これにより仮のインデックス番号を決めることができる。
【００６３】
次にオフセットパラメータでインデックス番号の初期値をオフセットする。例えば、オフセットパラメータが２０である場合には、０〜１２８の仮のインデックス番号は、２０〜１４８にオフセットされる。こうして得られたオフセット後のインデックス番号をテクセルの値として設定することによりインデックステクスチャＴＥＸ（雲パターンテクスチャ）を得ることができる。なおインデックス番号を求める際には、オフセットによってカラールックアップテーブル（ＣＬＵＴ）に対応づけられている２５６段階のインデックス番号の範囲を越えることがないように、オフセット後のインデックス番号は、最小値が０を下回る場合には、０でクランプされ、最大値が２５５を上回る場合には、２５５でクランプされるようにする。
【００６４】
そして図１０に示すように、雲パターンＣＰから得たインデックステクスチャＴＥＸをカラールックアップテーブル（ＣＬＵＴ）を参照しながら、雲オブジェクトＣＯＢ（頂点Ｖ１〜Ｖ４からなる矩形ポリゴン）にテクスチャマッピングを施すことでリアルタイムに変化する雲の様子を表現することができる。
【００６５】
また本実施形態では、雲オブジェクトＣＯＢを照明する光源ＬＳの色あるいは明るさを状況に応じて変化させている。例えば、オブジェクト空間内での時間の経過状態（朝、昼、夜など）、気象条件（晴れ、曇り、雨など）、あるいは光源ＬＳの高さ（太陽の高さ）などに応じて光源ＬＳの色や明るさを変えて雲オブジェクトＣＯＢのシェーディングを行うことで、朝焼けや夕焼けによって赤く染まった雲などを表現することができるようになる。また上述した場合に限られず、オブジェクト空間内で発生するイベント（例えば、特殊なキャラクタの登場シーン）などに応じてその演出効果を高めるために、光源ＬＳの色を変えるようにしてもよい。さらに雲の量や雲の厚みなどをパラメータとして用意しておき、これに応じてパターン生成空間に発生させるノイズのパターンを変化させるような場合に、その雲の量や雲の厚みに相当するパラメータに応じて光源ＬＳの色あるいは明るさを変化させるようにしてもよい。天気が晴れで雲の量が少ないときには環境光を明るく設定し、天気が曇りや雨で雲の量が多いときには環境光を暗く設定することにより、気象条件に合わせたオブジェクト空間内の明るさを表現することができる。
【００６６】
以上に説明した本実施形態の雲の表現手法では、以下のような特徴を有することにより、リアルタイムに変化する雲を表現することができる。
【００６７】
まず時間パラメータと所与のパターン生成空間に発生させたパーリンノイズのパターンとに基づいて雲の濃さを示すパターンを求めている。具体的には、パターン生成空間のＸＺ平面に沿った断面に現れるパターンを求めている。断面のＹ座標を時間パラメータにより変化させることで、時間経過に応じて断面に現れるパターンが変化する。
【００６８】
次に、パターン生成空間のどこを切り取るかを決めるパラメータとしてスケーリングパラメータが用意されており、スケーリングパラメータを利用してパターン生成空間上での広さが異なる複数の断面を取得して、各断面から得られる雲の濃さパターンを合成して１の合成パターンを求めている。
【００６９】
次に、複数の雲の濃さパターンを合成する際の合成の強さ（合成比率）として、各パターンに異なるパワーパラメータを乗算してから合成している。
【００７０】
次に、しきい値パラメータが用意されていて、しきい値パラメータに基づいて雲の濃さパターンの中から薄い部分をクランプすることでフィルタリングを行って雲の最終形状を決定している。
【００７１】
次に、雲の色及び透明度の変化範囲を決めるダイナミックレンジパラメータ及びオフセットパラメータが用意されていて、ダイナミックレンジパラメータ及びオフセットパラメータに基づいて、雲の濃さパターン（合成パターンでもよい）をインデックステクスチャ（雲パターンテクスチャ）に変換している。これにより雲の基本色の変化範囲が状況に応じて可変できる。そして、矩形の雲ポリゴンに、予め用意したカラールックアップテーブル（ＣＬＵＴ）を参照しながら、インデックスカラーテクスチャマッピングを行うことにより、様々な状況に応じた雲の色を表現している。
【００７２】
雲ポリゴンのシェーディングを行うに際して、環境光（アンビエント）の色や明るさをイベントや時間等に応じて変化させている。こうすることで、例えば夕焼けや朝日などによって赤色やオレンジ色に染められた雲を表現することができる。
【００７３】
３．本実施形態の処理
次に、本実施形態の詳細な処理例について図１２のフローチャートを用いて説明する。
【００７４】
まずパーリンノイズを発生させたパターン生成空間（Ｘ，Ｙ，Ｚ）を設定し、時間Ｔに応じてＹ座標を決定することにより、決定されたＹ座標における切断面（ＸＺ平面）に基づいて２種類のノイズパターンＰ１、Ｐ２を求める（ステップＳ１０）。ノイズパターンＰ１，Ｐ２は、図７に示すように、パターン生成空間上での広さが異なる切断面に現れるパターンを同一フィールドにスケーリング（拡大あるいは縮小）したものである。
【００７５】
次に、ノイズパターンＰ１に合成率Ａ１を乗算し、ノイズパターンＰ２に合成率Ａ２を乗算した上で、図７に示すようにノイズパターンＰ１、Ｐ２を合成する（ステップＳ１１）。
【００７６】
次に、ノイズパターンＰ１、Ｐ２を合成して得られる合成パターンＳＰを、図８に示したように、しきい値Ｎｔｈでフィルタリングして雲パターンＣＰを求めて、雲の形状を決定する（ステップＳ１２）。
【００７７】
次に、図９（Ｂ）に示すように、ダイナミックレンジパラメータとオフセットパラメータとに基づいて、雲パターンＣＰにおける最終的なノイズの濃さＮをインデックス番号に変換したインデックステクスチャＴＥＸを生成する（ステップＳ１３）。
【００７８】
次に、仮想カメラと共にオブジェクト空間内を移動する天球オブジェクト内の所定位置に矩形の雲ポリゴン（雲オブジェクトＣＯＢ）を設定して、雲ポリゴンに対する環境光（アンビエント）の影響を計算する（ステップＳ１４）。
【００７９】
最後に、雲ポリゴンに対して、雲の色（Ｒ、Ｇ、Ｂ）及び透明度（Ａ）を設定したカラールックアップテーブル（ＣＬＵＴ）を参照しながら、インデックステクスチャＴＥＸ（雲パターンテクスチャ）をテクスチャマッピングして、雲ポリゴンを描画することにより（ステップＳ１５）、雲の画像を得ることができる。
【００８０】
４．ハードウェア構成
図１３に本実施形態を実現できるハードウェア構成の例を示す。メインプロセッサ９００は、ＤＶＤ９８２（情報記憶媒体。ＣＤでもよい。）に格納されたプログラム、通信インターフェース９９０を介してダウンロードされたプログラム、或いはＲＯＭ９５０に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などを実行する。コプロセッサ９０２は、メインプロセッサ９００の処理を補助するものであり、マトリクス演算（ベクトル演算）を高速に実行する。例えばオブジェクトを移動あるいは動作（モーション）させる物理シミュレーションに、マトリクス演算処理が必要な場合には、メインプロセッサ９００上で動作するプログラムが、その処理をコプロセッサ９０２に指示（依頼）する。
【００８１】
ジオメトリプロセッサ９０４は、メインプロセッサ９００上で動作するプログラムからの指示に基づいて、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、マトリクス演算を高速に実行する。データ伸張プロセッサ９０６は、圧縮された画像データや音データのデコード処理を行ったり、メインプロセッサ９００のデコード処理をアクセラレートしたりする。これにより、オープニング画面やゲーム画面において、ＭＰＥＧ方式等で圧縮された動画像を表示できる。
【００８２】
描画プロセッサ９１０は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画（レンダリング）処理を実行する。オブジェクトの描画の際には、メインプロセッサ９００は、ＤＭＡコントローラ９７０を利用して、描画データを描画プロセッサ９１０に渡すと共に、必要であればテクスチャ記憶部９２４にテクスチャを転送する。すると描画プロセッサ９１０は、描画データやテクスチャに基づいて、Ｚバッファなどを利用した隠面消去を行いながら、オブジェクトをフレームバッファ９２２に描画する。また描画プロセッサ９１０は、αブレンディング（半透明処理）、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエイリアシング、シェーディング処理なども行う。頂点シェーダやピクセルシェーダなどのプログラマブルシェーダが実装されている場合には、シェーダプログラムに従って、頂点データの作成・変更（更新）やピクセル（あるいはフラグメント）の描画色の決定を行う。１フレーム分の画像がフレームバッファ９２２に書き込まれるとその画像はディスプレイ９１２に表示される。
【００８３】
サウンドプロセッサ９３０は、多チャンネルのＡＤＰＣＭ音源などを内蔵し、ＢＧＭ、効果音、音声などのゲーム音を生成し、スピーカ９３２を介して出力する。ゲームコントローラ９４２やメモリカード９４４からのデータはシリアルインターフェース９４０を介して入力される。
【００８４】
ＲＯＭ９５０にはシステムプログラムなどが格納される。業務用ゲームシステムの場合にはＲＯＭ９５０が情報記憶媒体として機能し、ＲＯＭ９５０に各種プログラムが格納される。なおＲＯＭ９５０の代わりにハードディスクを利用してもよい。ＲＡＭ９６０は各種プロセッサの作業領域となる。ＤＭＡコントローラ９７０は、プロセッサ、メモリ間でのＤＭＡ転送を制御する。ＤＶＤドライブ９８０（ＣＤドライブでもよい。）は、プログラム、画像データ、或いは音データなどが格納されるＤＶＤ９８２（ＣＤでもよい。）にアクセスする。通信インターフェース９９０はネットワーク（通信回線、高速シリアルバス）を介して外部との間でデータ転送を行う。
【００８５】
なお本実施形態の各部（各手段）の処理は、その全てをハードウェアのみにより実現してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【００８６】
そして本実施形態の各部の処理をハードウェアとプログラムの両方により実現する場合には、情報記憶媒体には、ハードウェア（コンピュータ）を本実施形態の各部として機能させるためのプログラムが格納される。より具体的には、上記プログラムが、ハードウェアである各プロセッサ９０２、９０４、９０６、９１０、９３０に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ９０２、９０４、９０６、９１０、９３０は、その指示と渡されたデータとに基づいて本発明の各部の処理を実現する。
【００８７】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。例えば、明細書又は図面中の記載において広義や同義な用語として引用された用語は、明細書又は図面中の他の記載においても広義や同義な用語に置き換えることができる。
【００８８】
また雲情報の演算手法や雲情報をオブジェクトに反映させる手法は、上記実施形態で説明したものに限らず、上記手法と均等な手法を用いてもよい。
【００８９】
また上記実施形態では、パターン生成空間の切断面に現れるパターンを利用して雲オブジェクトに貼り付けられる雲パターンテクスチャを生成する場合について説明したが、パターン生成空間の切断面に現れるパターンを利用して雲パーティクルを生成して、雲パーティクルの集合体によって雲オブジェクトを構成するような場合にも適用することが可能である。
【００９０】
また上記実施形態では、雲オブジェクトに対して雲パターンに基づいて生成されたテクスチャをマッピングする場合を例に取り説明したが、そのテクスチャを天球オブジェクトに対してマッピングするようにしてもよい。
【００９１】
また上記実施形態では、雲を表現する手法について説明したが、本実施の形態で示した手法は、フォグ処理に適用してもよい。例えば、パターン生成空間の切断面に現れるパターンをフォグのむら（不均一性）を表現するための情報として利用することができる。
【００９２】
また本発明は種々のゲーム（アクションゲーム、レーシングゲーム、格闘ゲーム、シューティングゲーム、ロボット対戦ゲーム、スポーツゲーム、競争ゲーム、ロールプレイングゲーム、シミュレーションゲーム、音楽演奏ゲーム、ダンスゲーム等）に適用できる。また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード、携帯電話等の種々の画像生成システムに適用できる。
【図面の簡単な説明】
【００９３】
【図１】本実施形態の画像生成システムの機能ブロック図。
【図２】本実施形態の手法を適用して生成した画像の例。
【図３】本実施形態の手法を説明するための図。
【図４】本実施形態の手法を説明するための図。
【図５】本実施形態の手法を説明するための図。
【図６】本実施形態の手法を説明するための図。
【図７】本実施形態の手法を説明するための図。
【図８】本実施形態の手法を説明するための図。
【図９】本実施形態の手法を説明するための図。
【図１０】本実施形態の手法を説明するための図。
【図１１】本実施形態の手法を説明するための図。
【図１２】本実施形態の具体的な処理の例を示すフローチャート。
【図１３】ハードウェア構成の例。
【符号の説明】
【００９４】
ＣＯＢ  雲オブジェクト、
ＣＬＵＴ  カラールックアップテーブル、
ＴＥＸ  テクスチャ（インデックステクスチャ）、
１００  処理部、
１１０  オブジェクト空間設定部、１１２  移動・動作処理部、
１１４  仮想カメラ制御部、１１６  雲情報演算部、１１８  光源情報設定部、
１２０  描画部、１３０  音生成部、
１６０  操作部、１７０  記憶部、
１７２  主記憶部、１７４  描画バッファ、１７６  オブジェクトデータ記憶部、
１７８  テクスチャ記憶部、１７９  カラーパレット記憶部、
１８０  情報記憶媒体、１９０  表示部、１９２  音出力部、
１９４  携帯型情報記憶装置、１９６  通信部
【図１】
0004651527.tif 000002
【図３】
0004651527.tif 000003
【図４】
0004651527.tif 000004
【図５】
0004651527.tif 000005
【図６】
0004651527.tif 000006
【図７】
0004651527.tif 000007
【図８】
0004651527.tif 000008
【図９】
0004651527.tif 000009
【図１０】
0004651527.tif 000010
【図１１】
0004651527.tif 000011
【図１２】
0004651527.tif 000012
【図１３】
0004651527.tif 000013
【図２】
0004651527.tif 000014