(57)【要約】【課題】芝生などの画像のリアルな表現を可能にするプログラム等の提供。【解決手段】画像生成システムは、第１〜第Ｎのテクスチャを記憶するテクスチャ記憶部と、第１〜第Ｎのテクスチャがマッピングされる第１〜第Ｎのオブジェクトを描画する描画部を含む。第１のテクスチャのテクセルのうち第１のグループに属するテクセルについては０よりも大きなα1がα値に設定され、第Ｋ−１（２≦Ｋ≦Ｎ）のテクスチャにおいて０よりも大きなαK-1にα値が設定されるテクセルと同じテクスチャ座標で指定される第Ｋのテクスチャのテクセルについては、αK-1以下のαKにα値が設定される。描画部は、第Ｋ−１のテクスチャがマッピングされる第Ｋ−１のオブジェクトの上に、第Ｋのテクスチャがマッピングされる第Ｋのオブジェクトが描画されるように、第１〜第Ｎのオブジェクトを描画する。【選択図】図１１
2007164651.tif 000002
【特許請求の範囲】
【請求項１】
画像を生成するためのプログラムであって、
第１〜第Ｎ（Ｎは２以上の整数）のテクスチャを記憶するテクスチャ記憶部と、
前記第１〜第Ｎのテクスチャがマッピングされる第１〜第Ｎのオブジェクトを描画する描画部として、
コンピュータを機能させ、
前記テクスチャ記憶部は、
前記第１のテクスチャのテクセルのうち第１のグループに属するテクセルについては、０よりも大きなα1にα値が設定されるように、前記第１のテクスチャを記憶し、
第Ｋ−１（２≦Ｋ≦Ｎ）のテクスチャにおいて０よりも大きなαK-1にα値が設定されるテクセルと同じテクスチャ座標で指定される第Ｋのテクスチャのテクセルについては、前記αK-1以下のαKにα値が設定されるように、第２〜第Ｎのテクスチャを記憶し、
前記描画部は、
前記第Ｋ−１のテクスチャがマッピングされる第Ｋ−１のオブジェクトの上に、前記第Ｋのテクスチャがマッピングされる第Ｋのオブジェクトが描画されるように、前記第１〜第Ｎのオブジェクトを描画することを特徴とするプログラム。
【請求項２】
請求項１において、
前記テクスチャ記憶部は、
前記αK-1に対する前記αKの減衰率が少なくとも２つのテクセルで異なるように、前記第１〜第Ｎのテクスチャを記憶することを特徴とするプログラム。
【請求項３】
請求項１又は２において、
前記テクスチャ記憶部は、
前記第１のテクスチャのテクセルのうち第２のグループに属するテクセルについては、０のα値が設定されるように、前記第１のテクスチャを記憶することを特徴とするプログラム。
【請求項４】
請求項３において、
前記テクスチャ記憶部は、
前記第１のテクスチャにおいて０のα値が設定されるテクセルと同じテクスチャ座標で指定される第２〜第Ｎのテクスチャのテクセルについては、０のα値が設定されるように、前記第２〜第Ｎのテクスチャを記憶することを特徴とするプログラム。
【請求項５】
請求項３又は４において、
前記テクスチャ記憶部は、
０よりも大きなα値α1に設定されるテクセルの周囲のテクセルについては、０のα値に設定されるように、前記第１のテクスチャを記憶することを特徴とするプログラム。
【請求項６】
請求項１乃至５のいずれかにおいて、
前記描画部は、
下地オブジェクトを描画し、前記下地オブジェクトの上に前記第１〜第Ｎのオブジェクトを描画し、前記第１〜第Ｎのテクスチャに設定されるα値に基づいて、前記下地オブジェクトの色と、第１〜第Ｎのオブジェクトの色とのブレンディング処理を行うことを特徴とするプログラム。
【請求項７】
請求項６において、
前記下地オブジェクトは、地面を表現するためのオブジェクトであることを特徴とするプログラム。
【請求項８】
請求項７において、
前記第１〜第Ｎのオブジェクトは、前記地面の上の芝生を表現するためのオブジェクトであることを特徴とするプログラム。
【請求項９】
請求項１乃至８のいずれかにおいて、
仮想カメラの視線方向、視点位置を制御する仮想カメラ制御部と、
α値演算部として、
コンピュータを機能させ、
前記テクスチャ記憶部は、
明るい色の帯状パターンと暗い色の帯状パターンとが第１の座標軸方向に沿って並ぶ第１の帯状パターンテクスチャと、明るい色の帯状パターンと暗い色の帯状パターンとが第２の座標軸方向に沿って並ぶ第２の帯状パターンテクスチャを記憶し、
前記α値演算部は、
前記仮想カメラの視線方向に基づいて、前記第１、第２の帯状パターンテクスチャの色のブレンド率であるα値αＡＢを演算し、
前記描画部は、
前記第１の帯状パターンテクスチャの色と前記第２の帯状パターンテクスチャの色とを前記αＡＢに基づいてブレンドするαブレンディング処理を行いながら、前記第１、第２の帯状パターンテクスチャがマッピングされる前記第１〜第Ｎのオブジェクトを描画することを特徴とするプログラム。
【請求項１０】
画像を生成するためのプログラムであって、
仮想カメラの視線方向、視点位置を制御する仮想カメラ制御部と、
明るい色の帯状パターンと暗い色の帯状パターンとが第１の座標軸方向に沿って並ぶ第１の帯状パターンテクスチャと、明るい色の帯状パターンと暗い色の帯状パターンとが第２の座標軸方向に沿って並ぶ第２の帯状パターンテクスチャを記憶するテクスチャ記憶部と、
前記仮想カメラの視線方向に基づいて、前記第１、第２の帯状パターンテクスチャの色のブレンド率であるα値αＡＢを演算するα値演算部と、
前記第１の帯状パターンテクスチャの色と前記第２の帯状パターンテクスチャの色とを前記αＡＢに基づいてブレンドするαブレンディング処理を行いながら、前記第１、第２の帯状パターンテクスチャがマッピングされるオブジェクトを描画する描画部として、
コンピュータを機能させることを特徴とするプログラム。
【請求項１１】
請求項１０において、
前記描画部は、
下地オブジェクトを描画し、前記下地オブジェクトの上に、前記第１、第２の帯状パターンテクスチャがマッピングされるオブジェクトを描画することを特徴とするプログラム。
【請求項１２】
請求項１１において、
前記下地オブジェクトは、地面を表現するためのオブジェクトであることを特徴とするプログラム。
【請求項１３】
請求項１２において、
前記第１、第２の帯状パターンテクスチャがマッピングされるオブジェクトは、前記地面の上の芝生を表現するためのオブジェクトであることを特徴とするプログラム。
【請求項１４】
コンピュータ読み取り可能な情報記憶媒体であって、請求項１乃至１３のいずれかに記載のプログラムを記憶したことを特徴とする情報記憶媒体。
【請求項１５】
画像を生成する画像生成システムであって、
第１〜第Ｎ（Ｎは２以上の整数）のテクスチャを記憶するテクスチャ記憶部と、
前記第１〜第Ｎのテクスチャがマッピングされる第１〜第Ｎのオブジェクトを描画する描画部とを含み、
前記テクスチャ記憶部は、
前記第１のテクスチャのテクセルのうち第１のグループに属するテクセルについては、０よりも大きなα1にα値が設定されるように、前記第１のテクスチャを記憶し、
第Ｋ−１（２≦Ｋ≦Ｎ）のテクスチャにおいて０よりも大きなαK-1にα値が設定されるテクセルと同じテクスチャ座標で指定される第Ｋのテクスチャのテクセルについては、前記αK-1以下のαKにα値が設定されるように、第２〜第Ｎのテクスチャを記憶し、
前記描画部は、
前記第Ｋ−１のテクスチャがマッピングされる第Ｋ−１のオブジェクトの上に、前記第Ｋのテクスチャがマッピングされる第Ｋのオブジェクトが描画されるように、前記第１〜第Ｎのオブジェクトを描画することを特徴とする画像生成システム。
【請求項１６】
画像を生成する画像生成システムであって、
仮想カメラの視線方向、視点位置を制御する仮想カメラ制御部と、
明るい色の帯状パターンと暗い色の帯状パターンとが第１の座標軸方向に沿って並ぶ第１の帯状パターンテクスチャと、明るい色の帯状パターンと暗い色の帯状パターンとが第２の座標軸方向に沿って並ぶ第２の帯状パターンテクスチャを記憶するテクスチャ記憶部と、
前記仮想カメラの視線方向に基づいて、前記第１、第２の帯状パターンテクスチャの色のブレンド率であるα値αＡＢを演算するα値演算部と、
前記第１の帯状パターンテクスチャの色と前記第２の帯状パターンテクスチャの色とを前記αＡＢに基づいてブレンドするαブレンディング処理を行いながら、前記第１、第２の帯状パターンテクスチャがマッピングされるオブジェクトを描画する描画部とを含むことを特徴とする画像生成システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム、情報記憶媒体及び画像生成システムに関する。
【背景技術】
【０００２】
従来より、キャラクタなどのオブジェクトが配置設定されるオブジェクト空間内（仮想的な３次元空間）において仮想カメラ（所与の視点）から見える画像を生成する画像生成システム（ゲームシステム）が知られており、いわゆる仮想現実を体験できるものとして人気が高い。サッカーゲームを楽しめる画像生成システムを例にとれば、プレーヤは、画面に映し出されたキャラクタを操作し、フィールド上でドリブルをしたりシュートをしたりしてゲームを楽しむ。
【０００３】
ところで、このようなサッカーゲームなどでは、競技場のフィールドの地面の芝生についてもリアルに表現できることが望ましい。
【０００４】
しかしながら、これまでの画像生成システムでは、このような芝生の表現は、芝生の画像が描かれた１枚のテクスチャを地面のオブジェクトにマッピングすることで実現していた。このため、芝生の深さなどをリアルに表現することができず、プレーヤの仮想現実感を今ひとつ向上できなかった。また２枚のポリゴンを用いて水面を表現する従来技術も知られているが、この従来技術では、２枚のポリゴン間でのα値の相関関係については考慮されていないため、リアルな芝生画像の生成は難しいという課題がある。
【特許文献１】特開平１１−９００４４号公報
【特許文献２】特開平１０−１９８８１９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、芝生などの画像のリアルな表現を可能にするプログラム、情報記憶媒体及び画像生成システムを提供することにある。
【課題を解決するための手段】
【０００６】
本発明は、画像を生成する画像生成システムであって、第１〜第Ｎ（Ｎは２以上の整数）のテクスチャを記憶するテクスチャ記憶部と、前記第１〜第Ｎのテクスチャがマッピングされる第１〜第Ｎのオブジェクトを描画する描画部とを含み、前記テクスチャ記憶部は、前記第１のテクスチャのテクセルのうち第１のグループに属するテクセルについては、０よりも大きなα1にα値が設定されるように、前記第１のテクスチャを記憶し、第Ｋ−１（２≦Ｋ≦Ｎ）のテクスチャにおいて０よりも大きなαK-1がα値に設定されるテクセルと同じテクスチャ座標で指定される第Ｋのテクスチャのテクセルについては、前記αK-1以下のαKにα値が設定されるように、第２〜第Ｎのテクスチャを記憶し、前記描画部は、前記第Ｋ−１のテクスチャがマッピングされる第Ｋ−１のオブジェクトの上に、前記第Ｋのテクスチャがマッピングされる第Ｋのオブジェクトが描画されるように、前記第１〜第Ｎのオブジェクトを描画する画像生成システムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラムに関係する。また本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶（記録）した情報記憶媒体に関係する。
【０００７】
本発明によれば、第１のテクスチャでは、第１のグループに属する複数のテクセルについては、０よりも大きなα1にα値が設定される。なおα1は第１のテクスチャの複数のテクセルにおいて異なる値であってもよいし、同じ値であってもよい。また第１のテクスチャのテクセルが属するグループは、第１のグループだけであってもよいし、それ以外の第２のグループ等があってもよい。
【０００８】
そしてＫ＝２とした場合に、第２のテクスチャ（第Ｋのテクスチャ）では、第１のテクスチャ（第Ｋ−１のテクスチャ）においてα1にα値が設定されるテクセルと同じテクスチャ座標のテクセルについては、α1以下のα2にα値が設定される。なおα2は第２のテクスチャの複数のテクセルにおいて異なる値であってもよいし、同じ値であってもよい。同様にＫ＝３とした場合に、第３のテクスチャ（第Ｋのテクスチャ）では、第２のテクスチャ（第Ｋ−１のテクスチャ）において０より大きなα2にα値が設定されるテクセルと同じテクスチャ座標のテクセルについては、α2以下のα3にα値が設定される。なおα3は第３のテクスチャの複数のテクセルにおいて異なる値であってもよいし、同じ値であってもよい。
【０００９】
そして本発明では、第１のオブジェクト（第Ｋ−１のオブジェクト）の上に第２のオブジェクト（第Ｋのオブジェクト）が描画され、第２のオブジェクト（第Ｋ−１のオブジェクト）の上に第３のオブジェクト（第Ｋのオブジェクト）が描画されるというように、第１〜第Ｎのテクスチャがマッピングされる第１〜第Ｎのオブジェクト（レイヤー・オブジェクト）が描画される。従って第１〜第Ｎのテクスチャに設定されるα値を用いたブレンディング処理（α合成処理）等を行うことで、芝生等の画像のリアルな表現が可能になる。
【００１０】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記テクスチャ記憶部は、前記αK-1に対する前記αKの減衰率が少なくとも２つのテクセルで異なるように、前記第１〜第Ｎのテクスチャを記憶するようにしてもよい。
【００１１】
このようにすれば、第１〜第Ｎのテクスチャの各テクセル（第１のグループのテクセル）におけるα値が、下のレイヤーのオブジェクトから上のレイヤーのオブジェクトに向かって異なる減衰率で減少するようになる。従って、芝生の草等の長さが不規則に変化する様子を表現できるようになり、よりリアルな画像を生成できる。
【００１２】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記テクスチャ記憶部は、前記第１のテクスチャのテクセルのうち第２のグループに属するテクセルについては、０のα値が設定されるように、前記第１のテクスチャを記憶するようにしてもよい。
【００１３】
このようにすれば、第２のグループのテクセルの下にある画像が透けて見えるリアルな画像を生成できる。
【００１４】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記テクスチャ記憶部は、前記第１のテクスチャにおいて０のα値が設定されるテクセルと同じテクスチャ座標で指定される第２〜第Ｎのテクスチャのテクセルについては、０のα値が設定されるように、前記第２〜第Ｎのテクスチャを記憶するようにしてもよい。
【００１５】
このようにすれば、例えば上方向から見た場合等に、第２のグループのテクセルの下にある画像が透けて見えるようになり、更にリアルな画像を生成できる。
【００１６】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記テクスチャ記憶部は、０よりも大きなα値に設定α1されるテクセルの周囲のテクセルについては、０のα値に設定されるように、前記第１のテクスチャを記憶するようにしてもよい。
【００１７】
このようにすれば、例えばテクスチャマッピングのバイリニア補間等を利用して、リアルな画像を生成できるようになる。
【００１８】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記描画部は、下地オブジェクトを描画し、前記下地オブジェクトの上に前記第１〜第Ｎのオブジェクトを描画し、前記第１〜第Ｎのテクスチャに設定されるα値に基づいて、前記下地オブジェクトの色と第１〜第Ｎのオブジェクトの色とのブレンディング処理を行うようにしてもよい。
【００１９】
このようにすれば、下地オブジェクトの色と第１〜第Ｎのオブジェクトの色とがブレンドされた色の画像を生成できるようになる。なお第１〜第Ｎのオブジェクトの色は、第１〜第Ｎのオブジェクトの頂点色として設定される色であってもよいし、第１〜第Ｎのテクスチャに設定される色であってもよい。或いは第１〜第Ｎのテクスチャとは別に用意され、第１〜第Ｎのオブジェクトにマッピングされるテクスチャ（例えば第１、第２の帯状パターンテクスチャ）に設定される色であってもよい。
【００２０】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記下地オブジェクトは、地面を表現するためのオブジェクトであってもよい。
【００２１】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記第１〜第Ｎのオブジェクトは、前記地面の上の芝生を表現するためのオブジェクトであってもよい。
【００２２】
なお下地オブジェクトは、地面を表現するオブジェクト以外であってもよいし、第１〜第Ｎのオブジェクトは、芝生以外の画像を表現するためのオブジェクトであってもよい。
【００２３】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、仮想カメラの視線方向、視点位置を制御する仮想カメラ制御部と、α値演算部とを含み（仮想カメラ制御部、α値演算部としてコンピュータを機能させ）、前記テクスチャ記憶部は、明るい色の帯状パターンと暗い色の帯状パターンとが第１の座標軸方向に沿って並ぶ第１の帯状パターンテクスチャと、明るい色の帯状パターンと暗い色の帯状パターンとが第２の座標軸方向に沿って並ぶ第２の帯状パターンテクスチャを記憶し、前記α値演算部は、前記仮想カメラの視線方向に基づいて、前記第１、第２の帯状パターンテクスチャの色のブレンド率であるα値αＡＢを演算し、前記描画部は、前記第１の帯状パターンテクスチャの色と前記第２の帯状パターンテクスチャの色とを前記αＡＢに基づいてブレンドするαブレンディング処理を行いながら、前記第１、第２の帯状パターンテクスチャがマッピングされる前記第１〜第Ｎのオブジェクトを描画するようにしてもよい。
【００２４】
また本発明は、画像を生成する画像生成システムであって、仮想カメラの視線方向、視点位置を制御する仮想カメラ制御部と、明るい色の帯状パターンと暗い色の帯状パターンとが第１の座標軸方向に沿って並ぶ第１の帯状パターンテクスチャと、明るい色の帯状パターンと暗い色の帯状パターンとが第２の座標軸方向に沿って並ぶ第２の帯状パターンテクスチャを記憶するテクスチャ記憶部と、前記仮想カメラの視線方向に基づいて、前記第１、第２の帯状パターンテクスチャの色のブレンド率であるα値αＡＢを演算するα値演算部と、前記第１の帯状パターンテクスチャの色と前記第２の帯状パターンテクスチャの色とを前記αＡＢに基づいてブレンドするαブレンディング処理を行いながら、前記第１、第２の帯状パターンテクスチャがマッピングされるオブジェクトを描画する描画部とを含む画像生成システムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラムに関係する。また本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるプログラムを記憶（記録）した情報記憶媒体に関係する。
【００２５】
本発明によれば、仮想カメラの視線方向に基づいてα値αＡＢが求められる。具体的には例えば視線方向のベクトルと所与の方向のベクトル（例えば第１又は第２の座標軸方向の単位ベクトル）との内積等に基づいてα値αＡＢが求められる。そして求められたα値αＡＢに基づいて第１の帯状パターンテクスチャの色と第２の帯状パターンテクスチャの色がブレンドされてオブジェクトが描画される。このようにすれば、仮想カメラの視線方向に応じて、第１の帯状パターンテクスチャの色と第２の帯状パターンテクスチャの色のブレンド率が変化するようになり、例えば芝目等のリアルな画像を生成できるようになる。
【００２６】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記描画部は、下地オブジェクトを描画し、前記下地オブジェクトの上に、前記第１、第２の帯状パターンテクスチャがマッピングされるオブジェクトを描画するようにしてもよい。
【００２７】
また本発明では、前記下地オブジェクトは、地面を表現するためのオブジェクトであってもよい。
【００２８】
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記第１、第２の帯状パターンテクスチャがマッピングされるオブジェクトは、前記地面の上の芝生を表現するためのオブジェクトであってもよい。
【００２９】
なお下地オブジェクトは、地面を表現するオブジェクト以外であってもよいし、第１、第２の帯状パターンテクスチャがマッピングされるオブジェクトは、芝生以外の画像を表現するためのオブジェクトであってもよい。
【発明を実施するための最良の形態】
【００３０】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【００３１】
１．構成
図１に本実施形態の画像生成システム（ゲームシステム）の機能ブロック図の例を示す。なお本実施形態の画像生成システムは図１の構成要素（各部）の一部を省略した構成としてもよい。
【００３２】
操作部１６０は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、ステアリング、マイク、タッチパネル型ディスプレイ、或いは筺体などにより実現できる。記憶部１７０は、処理部１００や通信部１９６などのワーク領域となるもので、その機能はＲＡＭ（ＶＲＡＭ）などにより実現できる。
【００３３】
情報記憶媒体１８０（コンピュータにより読み取り可能な媒体）は、プログラムやデータなどを格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、ハードディスク、或いはメモリ（ＲＯＭ）などにより実現できる。処理部１００は、情報記憶媒体１８０に格納されるプログラム（データ）に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体１８０には、本実施形態の各部としてコンピュータを機能させるためのプログラム（各部の処理をコンピュータに実行させるためのプログラム）が記憶される。
【００３４】
表示部１９０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴ、ＬＣＤ、タッチパネル型ディスプレイ、或いはＨＭＤ（ヘッドマウントディスプレイ）などにより実現できる。音出力部１９２は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
【００３５】
携帯型情報記憶装置１９４は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置１９４としては、メモリカードや携帯型ゲーム装置などがある。通信部１９６は外部（例えばホスト装置や他の画像生成システム）との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【００３６】
なお本実施形態の各部としてコンピュータを機能させるためのプログラム（データ）は、ホスト装置（サーバー）が有する情報記憶媒体からネットワーク及び通信部１９６を介して情報記憶媒体１８０（あるいは記憶部１７０）に配信してもよい。このようなホスト装置（サーバー）の情報記憶媒体の使用も本発明の範囲内に含めることができる。
【００３７】
処理部１００（プロセッサ）は、操作部１６０からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの処理を行う。ここでゲーム処理としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。この処理部１００は記憶部１７０（主記憶部１７２）をワーク領域として各種処理を行う。処理部１００の機能は各種プロセッサ（ＣＰＵ、ＤＳＰ等）、ＡＳＩＣ（ゲートアレイ等）などのハードウェアや、プログラムにより実現できる。
【００３８】
処理部１００は、オブジェクト空間設定部１１０、移動・動作処理部１１２、仮想カメラ制御部１１４、α値演算部１１６、描画部１２０、音生成部１３０を含む。なおこれらの一部を省略する構成としてもよい。
【００３９】
オブジェクト空間設定部１１０は、キャラクタ、ボール、芝生、地面（フィールド）、競技場などの表示物を表す各種オブジェクト（ポリゴン、自由曲面又はサブディビジョンサーフェイスなどの１又は複数のプリミティブ面で構成されるオブジェクト）をオブジェクト空間に配置設定する処理を行う。即ちワールド座標系でのオブジェクトの位置や回転角度（向き、方向と同義）を決定し、その位置（Ｘ、Ｙ、Ｚ）にその回転角度（Ｘ、Ｙ、Ｚ軸回りでの回転角度）でオブジェクトを配置する。具体的には、記憶部１７０のモデルデータ記憶部１７６には、移動体オブジェクト（キャラクタ、ボール）、背景オブジェクト（芝生、地面、競技場、天球）のモデルデータが記憶されている。そしてオブジェクト空間設定部１１０は、このモデルデータを用いてオブジェクト空間へのオブジェクトの設定（配置）処理を行う。
【００４０】
移動・動作処理部１１２は、オブジェクト（キャラクタ又はボール等）の移動・動作演算（移動・動作シミュレーション）を行う。即ち操作部１６０によりプレーヤが入力した操作データや、プログラム（移動・動作アルゴリズム）や、各種データ（モーションデータ）などに基づいて、オブジェクト（モデルオブジェクト）をオブジェクト空間内で移動させたり、オブジェクトを動作（モーション、アニメーション）させる処理を行う。具体的には、オブジェクトの移動情報（位置、回転角度、速度、或いは加速度）や動作情報（パーツオブジェクトの位置、或いは回転角度）を、１フレーム（１／６０秒）毎に順次求めるシミュレーション処理を行う。なおフレームは、オブジェクトの移動・動作処理（シミュレーション処理）や画像生成処理を行う時間の単位である。
【００４１】
仮想カメラ制御部１１４は、オブジェクト空間内の所与（任意）の視点から見える画像を生成するための仮想カメラ（視点）の制御処理を行う。具体的には、仮想カメラの位置（Ｘ、Ｙ、Ｚ）又は回転角度（Ｘ、Ｙ、Ｚ軸回りでの回転角度）を制御する処理（視点位置、視線方向あるいは画角を制御する処理）を行う。
【００４２】
例えば仮想カメラによりオブジェクト（例えばキャラクタ、ボール、車）を後方から撮影する場合には、オブジェクトの位置又は回転の変化に仮想カメラが追従するように、仮想カメラの位置又は回転角度（仮想カメラの向き）を制御する。この場合には、移動・動作処理部１１２で得られたオブジェクトの位置、回転角度又は速度などの情報に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた回転角度で回転させたり、予め決められた移動経路で移動させる制御を行ってもよい。この場合には、仮想カメラの位置（移動経路）又は回転角度を特定するための仮想カメラデータに基づいて仮想カメラを制御する。なお、仮想カメラ（視点）が複数存在する場合には、それぞれの仮想カメラについて上記の制御処理が行われる。
【００４３】
α値演算部１１６はα値の演算処理を行う。具体的には仮想カメラ制御部１１４で得られた仮想カメラの視線方向（視線方向ベクトル）に基づいてα値を演算する。
【００４４】
描画部１２０は、処理部１００で行われる種々の処理（ゲーム処理）の結果に基づいて描画処理を行い、これにより画像を生成し、表示部１９０に出力する。いわゆる３次元ゲーム画像を生成する場合には、まずモデル（オブジェクト）の各頂点の頂点データ（頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等）を含むモデルデータが入力され、入力されたモデルデータに含まれる頂点データに基づいて、頂点処理（頂点シェーダによるシェーディング）が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理（テッセレーション、曲面分割、ポリゴン分割）を行うようにしてもよい。
【００４５】
頂点処理では、頂点処理プログラム（頂点シェーダプログラム、第１のシェーダプログラム）に従って、頂点の移動処理や、座標変換（ワールド座標変換、カメラ座標変換）、クリッピング処理、あるいは透視変換等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更（更新、調整）する。そして、頂点処理後の頂点データに基づいてラスタライズ（走査変換）が行われ、ポリゴン（プリミティブ）の面とピクセルとが対応づけられる。そしてラスタライズに続いて、画像を構成するピクセル（表示画面を構成するフラグメント）を描画するピクセル処理（ピクセルシェーダによるシェーディング、フラグメント処理）が行われる。
【００４６】
ピクセル処理では、ピクセル処理プログラム（ピクセルシェーダプログラム、第２のシェーダプログラム）に従って、テクスチャの読出し（テクスチャマッピング）、色データの設定／変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定し、透視変換されたモデルの描画色を描画バッファ１７４（ピクセル単位で画像情報を記憶できるバッファ。ＶＲＡＭ、レンダリングターゲット）に出力（描画）する。即ち、ピクセル処理では、画像情報（色、法線、輝度、α値等）をピクセル単位で設定あるいは変更するパーピクセル処理を行う。これにより、オブジェクト空間内において仮想カメラ（所与の視点）から見える画像が生成される。
【００４７】
なお頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、ポリゴン（プリミティブ）の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ（頂点シェーダやピクセルシェーダ）により実現される。プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、従来のハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。
【００４８】
描画部１２０は、ジオメトリ処理部１２２、隠面消去部１２４、αブレンディング部１２６、テクスチャマッピング部１２８を含む。
【００４９】
ジオメトリ処理部１２２は、オブジェクトに対して、座標変換、クリッピング処理、透視投影変換、或いは光源計算等のジオメトリ処理を行う。そして、ジオメトリ処理後（透視投影変換後）のモデルデータ（オブジェクトの頂点の位置座標、テクスチャ座標、色データ（輝度データ）、法線ベクトル、或いはα値等）は、記憶部１７０に保存される。
【００５０】
隠面消去部１２４は、描画ピクセルのＺ値（奥行き情報）が格納されるＺバッファ（奥行きバッファ）を用いたＺバッファ法（奥行き比較法、Ｚテスト）による隠面消去処理を行う。即ちオブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Ｚバッファに格納されるＺ値を参照する。そして参照されたＺバッファのＺ値と、プリミティブの描画ピクセルでのＺ値とを比較し、描画ピクセルでのＺ値が、仮想カメラから見て手前側となるＺ値（例えば小さなＺ値）である場合には、その描画ピクセルの描画処理を行うと共にＺバッファのＺ値を新たなＺ値に更新する。
【００５１】
αブレンディング部１２６はαブレンディング処理を行う。ここでαブレンディング処理は、α値（Ａ値）に基づいて行う処理であり、通常αブレンディング、加算αブレンディング或いは減算αブレンディングなどがある。例えば通常αブレンディングの場合には下式の処理を行う。
【００５２】
ＲQ＝（１−α）×Ｒ1＋α×Ｒ2
ＧQ＝（１−α）×Ｇ1＋α×Ｇ2
ＢQ＝（１−α）×Ｂ1＋α×Ｂ2
一方、加算αブレンディングの場合には下式の処理を行う。
【００５３】
ＲQ＝Ｒ1＋α×Ｒ2
ＧQ＝Ｇ1＋α×Ｇ2
ＢQ＝Ｂ1＋α×Ｂ2
また、減算αブレンディングの場合には下式の処理を行う。
【００５４】
ＲQ＝Ｒ1−α×Ｒ2
ＧQ＝Ｇ1−α×Ｇ2
ＢQ＝Ｂ1−α×Ｂ2
ここで、Ｒ1、Ｇ1、Ｂ1は、描画バッファ１７４（フレームバッファ）に既に描画されている画像（元画像）のＲＧＢ成分であり、Ｒ2、Ｇ2、Ｂ2は、描画バッファ１７４に描画すべき画像のＲＧＢ成分である。また、ＲQ、ＧQ、ＢQは、αブレンディングにより得られる画像のＲＧＢ成分である。なおα値は、各ピクセル（テクセル、ドット）に関連づけて記憶できる情報であり、例えば色情報以外のプラスアルファの情報である。α値は、半透明度（透明度、不透明度と等価）情報、マスク情報、或いはバンプ情報などとして使用できる。
【００５５】
テクスチャマッピング部１２８はテクスチャマッピング（テクスチャサンプリング）処理を行う。ここでテクスチャマッピング処理は、テクスチャ記憶部１７８に記憶されるテクスチャ（テクセル値）をオブジェクトにマッピングする処理である。具体的には、オブジェクト（プリミティブ面）の頂点等に設定（付与）されるテクスチャ座標等を用いてテクスチャ記憶部１７８からテクスチャ（色、α値などの表面プロパティ）を読み出す。そして、２次元の画像又はパターンであるテクスチャをオブジェクトにマッピングする。この場合に、ピクセルとテクセルとを対応づける処理やバイリニア補間（テクセル補間）などを行う。
【００５６】
そして本実施形態ではテクスチャ記憶部１７８は、第１〜第Ｎ（Ｎは２以上の整数。或いはＮは３又は４以上の整数）のテクスチャ（テクスチャデータ）を記憶する。この第１〜第Ｎのテクスチャは芝生を表現するためのテクスチャであり、α値のプレーンを有する。そして描画部１２０は、この第１〜第Ｎのテクスチャをテクスチャ記憶部１７８から読み出し、読み出された第１〜第Ｎのテクスチャを第１〜第Ｎのオブジェクトにマッピングし、これらの第１〜第Ｎのオブジェクトを描画バッファ１７４に描画する。この第１〜第Ｎのオブジェクトは芝生（地面の上の芝生）を表現するためのオブジェクトであり、１又は複数のプリミティブ面により構成される。
【００５７】
具体的にはテクスチャ記憶部１７８では、第１のテクスチャのテクセルのうち第１のグループに属するテクセル（複数のテクセル）については、０よりも大きなα1にα値が設定される。例えば第１のテクスチャのテクセルのうち第１のグループに属する第１〜第Ｉのテクセルでは、０よりも大きなα1にα値が設定される。一方、第１のテクスチャのテクセルのうち第２のグループに属する第Ｉ＋１〜第Ｊのテクセルでは、例えば０のα値が設定される。この場合、０よりも大きなα1にα値が設定されるテクセル（第１のグループに属するテクセル）の周囲（例えば上下左右）のテクセルについては、０のα値が設定されるようにすることができる。
【００５８】
なお第１〜第Ｉのテクセルのα値は、例えばα1＝１．０というように同じ値であってもよいし、違う値であってもよい。また本実施形態では、α値が０であるということは透明を意味し、α値が１．０であるということは不透明を意味しており、この意味と同様の意味を持つαの値は本発明の範囲に含まれる。
【００５９】
またテクスチャ記憶部１７８では、第Ｋ−１（２≦Ｋ≦Ｎ）のテクスチャにおいて０よりも大きなαK-1にα値が設定されるテクセルと同じテクスチャ座標の第Ｋのテクスチャのテクセルについては、αK-1以下のαK（αK-1より小さなαK）にα値が設定される。例えば第１のテクスチャ（第Ｋ−１のテクスチャ）において０よりも大きなα1にα値が設定されるテクセルと同じテクスチャ座標の第２のテクスチャ（第Ｋのテクスチャ）のテクセルについては、α1以下のα2にα値が設定される。また第２のテクスチャ（第Ｋ−１のテクスチャ）において０よりも大きなα2にα値が設定されるテクセルと同じテクスチャ座標の第３のテクスチャ（第Ｋのテクスチャ）のテクセルについては、α2以下のα3にα値が設定される。第４〜第Ｎのテクスチャについても同様である。
【００６０】
この場合に、第１のテクスチャにおいて０のα値が設定されるテクセルと同じテクスチャ座標で指定される第２〜第Ｎのテクスチャのテクセルについては、例えばα値が０に設定される。またαK-1に対するαKの減衰率が少なくとも２つのテクセルで異なるように、第１〜第Ｎのテクスチャが記憶される。例えば第１のテクセルでのα値の減衰率と第２のテクセルでのα値の減衰率が異なるようにする。
【００６１】
描画部１２０は、第Ｋ−１のテクスチャがマッピングされる第Ｋ−１のオブジェクトの上に、第Ｋのテクスチャがマッピングされる第Ｋのオブジェクトが描画されるように、第１〜第Ｎのオブジェクトを描画する。例えば第１のテクスチャがマッピングされる第１のオブジェクトを描画し、この第１のオブジェクトの上に、第２のテクスチャがマッピングされる第２のオブジェクトを描画する。また第２のオブジェクトの上に、第３のテクスチャがマッピングされる第３のオブジェクトを描画する。第４〜第Ｎのオブジェクトについても同様である。
【００６２】
また描画部１２０は、下地オブジェクトを描画バッファ１７４に描画する。具体的には下地テクスチャがマッピングされた下地オブジェクトを描画する。そして描画された下地オブジェクトの上に第１〜第Ｎのオブジェクトを順次描画する。更に具体的には、第１〜第Ｎのテクスチャに設定されるα値に基づいて、下地オブジェクトの色と第１〜第Ｎのオブジェクトの色（芝生等のテクスチャの色）とのブレンディング処理を行う。
【００６３】
なお下地オブジェクトは例えば地面（マップ）等を表現するためのオブジェクトである。また下地オブジェクトを基準として、第１のオブジェクトは最も低い位置に配置され、第Ｎのオブジェクトは最も高い位置に配置される。
【００６４】
また本実施形態ではテクスチャ記憶部１７８が、明るい色（輝度が高い色）の帯状パターンと暗い色（輝度が低い色）の帯状パターンとが第１の座標軸方向（例えばＹ軸）に沿って交互に並ぶ第１の帯状パターンテクスチャ（横の芝目を表すためのテクスチャ）を記憶する。また明るい色の帯状パターンと暗い色の帯状パターンとが第２の座標軸方向（例えばＸ軸）に沿って交互に並ぶ第２の帯状パターンテクスチャ（縦の芝目を表すためのテクスチャ）を記憶する。なお３つ以上の帯状パターンテクスチャを記憶するようにしてもよい。
【００６５】
そしてα値演算部１１６は、仮想カメラの視線方向に基づいてα値αＡＢを演算する。また描画部１２０（αブレンディング部１２６）は、第１の帯状パターンテクスチャの色と第２の帯状パターンテクスチャの色とをαＡＢに基づいてブレンドするブレンディング処理（α合成処理）を行う。そして描画部１２０（テクスチャマッピング部１２８）は、第１、第２の帯状パターンテクスチャを第１〜第Ｎのオブジェクトにマッピングして描画する。
【００６６】
音生成部１３０は、処理部１００で行われる種々の処理の結果に基づいて音処理を行い、ＢＧＭ、効果音、又は音声などのゲーム音を生成し、音出力部１９２に出力する。
【００６７】
なお、本実施形態の画像生成システムは、１人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つの端末を用いて生成してもよいし、ネットワーク（伝送ライン、通信回線）などで接続された複数の端末（ゲーム機、携帯電話）を用いて分散処理により生成してもよい。
【００６８】
２．本実施形態の手法
２．１  芝生画像の表現
図２に示すように本実施形態では、テクスチャ記憶部１７８がテクスチャＴＥＸ１〜ＴＥＸ６（広義には第１〜第Ｎのテクスチャ）を記憶する。これらのＴＥＸ１〜ＴＥＸ６はα値のプレーンを有するテクスチャである。そして描画部１２０は、これらのテクスチャＴＥＸ１〜ＴＥＸ６がマッピングされるオブジェクトＯＢ１〜ＯＢ６（広義には第１〜第Ｎのオブジェクト）を描画する。具体的には、競技場の地面（フィールド）等を表す地面オブジェクトＯＢＧ（広義には下地オブジェクト）に地面テクスチャＴＥＸＧ（広義には下地テクスチャ）をマッピングして描画バッファ１７４に描画する。そしてこの地面オブジェクトＯＢＧの上に、テクスチャＴＥＸ１〜ＴＥＸ６のα値を用いたαブレンディング処理を行いながら、複数レイヤーに重ねられたオブジェクトＯＢ１〜ＯＢ６を描画する。
【００６９】
更に具体的には、サッカー競技場のフィールドの芝生用のテクスチャとして図３に示すようなＴＥＸＡが用意される。このＴＥＸＡは芝生の色を表すテクスチャであり、競技場のフィールド全体の芝生の色を１枚のテクスチャで表している。本実施形態では、このテクスチャＴＥＸＡの色と、地面オブジェクトＯＢＧの色とを、テクスチャＴＥＸ１〜ＴＥＸ６に設定されたα値を用いてブレンドする。このために本実施形態では図３に示すように、テクスチャＴＥＸ１〜ＴＥＸ６がマッピングされるオブジェクトＯＢ１〜ＯＢ６をリピートしながら、フィールドを敷き詰めるように描画する。
【００７０】
図４にテクスチャＴＥＸ１、ＴＥＸ２、ＴＥＸ３・・・のα値のパターンの例を示す。例えばテクスチャＴＥＸ１のテクセルのうち、Ａ１、Ａ２、Ａ３に示すテクセルは第１のグループに属し、０よりも大きなα1＝１．０にα値が設定されている。このようにα1＝１．０となる第１のグループのテクセルは、芝生のうち草がある部分を表している。
【００７１】
一方、ＴＥＸ１のテクセルのうち、Ｂ１、Ｂ２、Ｂ３、Ｂ４に示すテクセルは第２のグループに属し、０のα値が設定されている。このようにα値が０となる第２のグループのテクセルは、芝生のうち穴が空いて地面が見える部分を表している。
【００７２】
テクスチャＴＥＸ１（第Ｋ−１のテクスチャ）においてα1＝１．０に設定されているＡ１〜Ａ３のテクセルと同じテクスチャ座標（テクスチャアドレス）のテクスチャＴＥＸ２（第Ｋのテクスチャ）のテクセルについては、図４のＣ１、Ｃ２、Ｃ３に示すようにα1＝１．０よりも小さなα2＝０．８、０．６、０．７にα値が設定されている。例えばＡ１、Ｃ１では、１．０から０．８にα値が減少し、Ａ２、Ｃ２では、１．０から０．６にα値が減少している。
【００７３】
この場合に本実施形態では、α1（αK-1）に対するα2（αK）の減衰率が少なくとも２つのテクセルで異なるようになっている。例えばα1に対するα2の減衰率は、Ａ１、Ｃ１では８０パーセントとなり、Ａ２、Ｃ２では６０パーセントとなる。
【００７４】
またテクスチャＴＥＸ２（第Ｋ−１のテクスチャ）においてα2＝０．８、０．６、０．７にα値が設定されているＣ１〜Ｃ３のテクセルと同じテクスチャ座標で指定されるテクスチャＴＥＸ３（第Ｋのテクスチャ）のテクセルについては、図４のＥ１、Ｅ２、Ｅ３に示すように、α2＝０．８、０．６、０．７よりも小さなα3＝０．６、０．３、０．４にα値が設定されている。例えばＣ１、Ｅ１では０．８から０．６にα値が減少し、Ｃ２、Ｅ２では０．６から０．３にα値が減少している。
【００７５】
この場合にも本実施形態では、α2（αK-1）に対するα3（αK）の減衰率が少なくとも２つのテクセルで異なるようになっている。例えばα2に対するα3の減衰率は、Ｃ１、Ｅ１では７５パーセントとなり、Ｃ２、Ｅ２では５０パーセントとなっている。
【００７６】
更に図４のＢ１、Ｄ１、Ｆ１や、Ｂ２、Ｄ２、Ｆ２に示すように、テクスチャＴＥＸ１においてα値が０に設定されるテクセルと同じテクスチャ座標で指定されるテクスチャＴＥＸ２、ＴＥＸ３（第２〜第Ｎのテクスチャ）のテクセルについても、α値が０に設定される。
【００７７】
図５〜図１０にテクスチャＴＥＸ１〜ＴＥＸ６の具体例を示す。例えば図５のテクスチャＴＥＸ１において、白の色のテクセルはα＝１．０に設定されているテクセル（第１のグループに属するテクセル）であり、黒の色のテクセルはα＝０．０に設定されているテクセル（第２のグループに属するテクセル）である。また図６のテクスチャＴＥＸ２では白い色のテクセル（α＝１．０のテクセル）が減っており、図７のテクスチャＴＥＸ３では更に減っている。そして図１０のテクスチャＴＥＸ６ではほとんどのテクセルが黒の色のテクセル（α＝０のテクセル）になっている。
【００７８】
図１１に示すように本実施形態では、地面オブジェクトＯＢＧの上にオブジェクトＯＢ１が描画される。そしてＯＢ１の上にＯＢ２が描画され、ＯＢ２の上にＯＢ３が描画され、ＯＢ３の上にＯＢ４が描画され、ＯＢ４の上にＯＢ５が描画され、ＯＢ５の上にＯＢ６が描画される。
【００７９】
そして第１のグループのテクセルＴ１、Ｔ３、Ｔ５、Ｔ７、Ｔ９については、テクスチャＴＥＸ１のα値が１．０に設定される。また第２のグループのテクセルＴ２、Ｔ４、Ｔ６、Ｔ８については、テクスチャＴＥＸ１のα値が０に設定される。
【００８０】
またテクセルＴ１については、テクスチャＴＥＸ１、ＴＥＸ２、ＴＥＸ３、ＴＥＸ４・・・・に行くに従って、α値が１．０、０．７、０．３、０というように減衰する。同様にテクセルＴ３については、α値が１．０、０．５、０というように減衰し、テクセルＴ５については、α値が１．０、０．８、０．５、０．２、０というように減衰する。
【００８１】
図１１のように本実施形態では、α値の減衰率がテクセル同士で異なっている。このようにすることで、芝生の草の長さの長短を表現することが可能になり、リアルな芝生画像を生成できる。
【００８２】
またテクセルＴ２、Ｔ４、Ｔ６、Ｔ８では、上方から見た場合には地面オブジェクトＯＢＧの色が見えるようになる。また斜め方向から見た場合には、オブジェクトＯＢ１〜ＯＢ６のうちα値が０よりも大きい部分での芝生の色（図３のＴＥＸＡの色）と、地面オブジェクトＯＢＧの色とがブレンドされて見えるようになる。従って、芝生の深さを表現することが可能になり、生成される画像のリアル度を向上できる。
【００８３】
なお図１１の各テクセルＴ１〜Ｔ９のα値は以下のような手法により決定できる。例えばテクスチャＴＥＸ１のα値が０であるテクセルＴ２、Ｔ４、Ｔ６、Ｔ８については、他のテクスチャＴＥＸ２〜ＴＥＸ６でのα値も０に設定する。なおＴＥＸ１のうち、どのテクセルを０のα値に設定し、どのテクセルを１．０のα値に設定するかは、乱数等を用いて決定できる。
【００８４】
一方、テクスチャＴＥＸ１のα値が１．０であるテクセルＴ１、Ｔ３、Ｔ５、Ｔ７、Ｔ９については、芝生の長さが設定される。例えばテクセルＴ１、Ｔ３、Ｔ５、Ｔ７、Ｔ９の芝生の長さは、各々、３、２、４、６、３に設定される。そしてこれらのテクセルＴ１、Ｔ３、Ｔ７、Ｔ９では、各々、長さ３、２、４、６、３を越えた所でα値が０になるように、各テクスチャＴＥＸ１〜ＴＥＸ６でのα値を乱数等を用いて決定する。こうすることで、不規則に草の長さが設定された芝生を表現できる。
【００８５】
また本実施形態では図１２（Ａ）に示すように、０よりも大きなα値に設定されているテクセル（第１のグループのテクセル）の周囲のテクセルについては、０のα値のテクセル（第２のグループのテクセル）になるように設定してる。
【００８６】
例えば図１２（Ａ）では、α値が１．０であるテクセルＴＡの上下左右の周囲のテクセルＴＢ、ＴＣ、ＴＤ、ＴＥのα値は０に設定されている。なお図１２（Ａ）ではテクセルＴＦ、ＴＧ、ＴＨ、ＴＩについてもα値が０に設定されているが、これらのα値については１．０に設定するようにしてもよい。
【００８７】
図１２（Ａ）に示すようにテクセルのα値を設定してテクスチャマッピングを行うと、バイリニア補間（テクセル補間）により、生成されるピクセルの画像は例えば図１２（Ｂ）のような画像になる。即ち四角のテクセルが丸い図形の画像に見えるようになる。またテクセルＴＡのα値が例えば０．８である場合には、図１２（Ｃ）に示すように、図１２（Ｂ）に比べて小さな丸い図形に見えるようになる。従って、例えば芝生の画像を斜め方向から見た場合に、図１２（Ｄ）に示すように見え、丸みを帯びた芝生の草の形状を擬似的に表現できる。
【００８８】
例えば図１２（Ａ）においてαが１．０になるテクセルが隣り合うと、ピクセルの画像は楕円形状になってしまい、不自然な画像になってしまう。これに対して図１２（Ａ）に示すように、α値が１．０のテクセルの周囲のテクセルのα値を０に設定すれば、円柱状の１本１本の草の形状を擬似的に表現できるようになる。
【００８９】
以上のように本実施形態では、テクスチャマッピングのバイリニア補間を利用することで、リアルな芝生画像の生成に成功している。例えば図１３、図１４、図１５、図１６に本実施形態により生成される画像の例を示す。図１３、図１４は、競技場の芝生を上方から見た図であり、図１３は視点が芝生から遠い場合の図であり、図１４は視点を芝生に近づけた場合の図である。また図１５、図１６は、競技場の芝生を斜め上方向から見た図であり、図１５は視点が芝生から遠い場合の図であり、図１６は視点を芝生に近づけた場合の図である。このように本実施形態によれば、芝生の１本１本の草のモデル等を用意しなくても、あたかも本物の芝生が生えているかのように見えるリアルな画像の生成が可能になる。
【００９０】
２．２  芝目の表現
本実施形態では芝生の芝目を表現するために以下のような手法を採用している。例えば図１７では、第１の帯状パターンのテクスチャＴＥＸＡ（第１の芝目パターンのテクスチャ）と、第２の帯状パターンのテクスチャＴＥＸＢ（第２の芝目パターンのテクスチャ）が用意される。
【００９１】
具体的にはテクスチャＴＥＸＡでは、明るい色（例えば白っぽい色）の帯状パターン（テクスチャパターン）と、暗い色（例えば緑っぽい色）の帯状パターン（テクスチャパターン）とがＹ軸（広義には第１の座標軸）方向に沿って交互に並んでいる。別の言い方をすれば、ＴＥＸＡはＸ軸方向の芝目パターンのテクスチャになっている。またテクスチャＴＥＸＢでは、明るい色の帯状パターンと暗い色の帯状パターンとがＸ軸（広義には第２の座標軸）方向に沿って交互に並んでいる。別の言い方をすれば、ＴＥＸＢはＹ軸方向の芝目パターンのテクスチャになっている。
【００９２】
そして本実施形態では、これらのテクスチャＴＥＸＡとＴＥＸＢの色を、仮想カメラＶＣの視線方向ＶＬに基づき求められたα値αＡＢによりブレンドする。
【００９３】
具体的には図１８のＧ１では、仮想カメラＶＣの視線方向ＶＬは（Ｘ、Ｙ）＝（１、０）の方向に向いており、この場合にはαＡＢ＝１．０になる。即ちテクスチャＴＥＸＡの色はαＡＢ＝１．０の割合でブレンドされ、テクスチャＴＥＸＢの色は（１−αＡＢ）＝０の割合でブレンドされる。そしてテクスチャＴＥＸＡの色をＣＡ、ＴＥＸＢの色をＣＢとすると、ブレンディング処理後の色ＣＢＬは、ＣＢＬ＝ＣＡ×αＡＢ＋ＣＢ×（１−αＡＢ）＝ＣＡになる。従って仮想カメラＶＣからは、テクスチャＴＥＸＡで表されるＸ軸方向の芝目が強く見えるようになり、リアルな芝目画像を生成できる。
【００９４】
また図１８のＧ２では、仮想カメラＶＣの視線方向ＶＬは（Ｘ、Ｙ）＝（１、１）の方向に向いており、この場合にはαＡＢ＝０．５になる。即ちテクスチャＴＥＸＡ、ＴＥＸＢの色は共に０．５の割合でブレンドされる。従って、ブレンディング処理後の色ＣＢＬは、ＣＢＬ＝ＣＡ×αＡＢ＋ＣＢ×（１−αＡＢ）＝ＣＡ×０．５＋ＣＢ×０．５になる。従って仮想カメラＶＣからは、テクスチャＴＥＸＡで表されるＸ軸方向の芝目と、テクスチャＴＥＸＢで表されるＹ軸方向の芝目とが混ざり合って見えるようになり、リアルな芝目画像を生成できる。
【００９５】
また図１８のＧ３では、仮想カメラＶＣの視線方向ＶＬは（Ｘ、Ｙ）＝（０、１）の方向に向いており、この場合にはαＡＢ＝０になる。即ちテクスチャＴＥＸＡ、ＴＥＸＢの色は、各々、０、１．０の割合でブレンドされる。従って、ブレンディング処理後の色ＣＢＬは、ＣＢＬ＝ＣＡ×αＡＢ＋ＣＢ×（１−αＡＢ）＝ＣＢになる。従って仮想カメラＶＣからは、テクスチャＴＥＸＢで表されるＹ軸方向の芝目が強く見えるようになり、リアルな芝目画像を生成できる。
【００９６】
同様にＧ４、Ｇ５、Ｇ６の場合にはαＡＢは、各々、０．５、１．０、０になる。従って、αブレンディング処理後の色ＣＢＬは、各々、ＣＡ×０．５＋ＣＢ×０．５、ＣＡ、ＣＢになる。
【００９７】
なお図１９に本実施形態で生成される画像の例を示す。図１９は、図１８のＧ１に示すように仮想カメラＶＣの視線方向ＶＬが向いている時に生成される画像の例である。図１９では、テクスチャＴＥＸＡの色とＴＥＸＢの色がブレンドされ、Ｘ軸方向の芝目とＹ軸方向の芝目とが混ざり合って見えるリアルな画像が生成されている。
【００９８】
以上のように本実施形態の手法によれば、仮想カメラＶＣの視線方向ＶＬに基づいてα値αＡＢを求め、このαＡＢに基づいてテクスチャＴＥＸＡとＴＥＸＢの色をブレンドするという簡素で負荷の軽い処理で、芝目が表現されたリアルな芝生画像を生成できる。
【００９９】
なお本実施形態では、図１７、図１８の手法で得られた色ＣＢＬと、地面オブジェクトＯＢＧの色ＣＧとを、図２のテクスチャＴＥＸ１〜ＴＥＸ６に設定されたα値に基づいてブレンドすることで、最終的な芝生画像の色を求めている。
【０１００】
２．３  詳細な処理例
次に本実施形態の詳細な処理例を図２０のフローチャートを用いて説明する。
【０１０１】
まず、キャラクタ（移動体オブジェクト）の位置、方向を演算する（ステップＳ１）。このキャラクタは、サッカーゲームを例にとればサッカー選手を表すキャラクタである。
【０１０２】
次に、仮想カメラの位置、視線方向を求める（ステップＳ２）。この場合、仮想カメラの位置、視線方向は、キャラクタの位置、方向に基づいて求めてもよいし、キャラクタの位置、方向とは無関係に仮想カメラの制御プログラムに基づいて仮想カメラの位置、視線線方向を求めてもよい。
【０１０３】
次に、ステップＳ２で求められた仮想カメラの視線方向ＶＬに基づいて、帯状パターンテクスチャＴＥＸＡ、ＴＥＸＢのブレンド率であるα値αＡＢを求める（ステップＳ３）。具体的には、αＡＢ＝ａｂｓ（ＶＬ・Ｓ）の演算式でαＡＢを求める。ここで、Ｓは、例えばＸ方向を向く単位ベクトルである。またａｂｓ（Ｑ）はＱの絶対値を求める関数である。またＶＬ・ＳはベクトルＶＬとＳの内積を意味する。
【０１０４】
次に地面オブジェクトを描画する（ステップＳ４）。そしてキャラクタを描画する（ステップＳ５）。
【０１０５】
次にＫ＝１に設定する（ステップＳ６）。そして第ＫのテクスチャＴＥＸＫがマッピングされる第ＫのオブジェクトＯＢＫを描画する（ステップＳ７）。この場合のαブレンディングの式は下式のようになる。
【０１０６】
ＣＯＬ＝ＣＧ×（１−α）＋｛ＣＡ×αＡＢ＋ＣＢ×（１−αＡＢ）｝×α
ここで、ＣＯＬは最終的な結果色であり、ＣＧは地面の色であり、αはテクスチャＴＥＸＫに設定されるα値（図２のＴＥＸ１〜ＴＥＸ６に設定されるα値）である。またＣＡは帯状パターンテクスチャＴＥＸＡの色であり、ＣＢは帯状パターンテクスチャＴＥＸＢの色であり、αＡＢは、ＴＥＸＡとＴＥＸＢの色のブレンド率である。
【０１０７】
次にＫを１だけインクリメントする（ステップＳ８）。そしてＫがＮよりも大きいか否かを判断し（ステップＳ９）、ＫがＮ以下である場合にはステップＳ７に戻る。一方、ＫがＮよりも大きい場合には処理を終了する。
【０１０８】
３．ハードウェア構成
図２１に本実施形態を実現できるハードウェア構成の例を示す。メインプロセッサ９００は、ＤＶＤ９８２（情報記憶媒体。ＣＤでもよい。）に格納されたプログラム、通信インターフェース９９０を介してダウンロードされたプログラム、或いはＲＯＭ９５０に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などを実行する。コプロセッサ９０２は、メインプロセッサ９００の処理を補助するものであり、マトリクス演算（ベクトル演算）を高速に実行する。例えばオブジェクトを移動させたり動作（モーション）させる物理シミュレーションに、マトリクス演算処理が必要な場合には、メインプロセッサ９００上で動作するプログラムが、その処理をコプロセッサ９０２に指示（依頼）する。
【０１０９】
ジオメトリプロセッサ９０４は、メインプロセッサ９００上で動作するプログラムからの指示に基づいて、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、マトリクス演算を高速に実行する。データ伸張プロセッサ９０６は、圧縮された画像データや音データのデコード処理を行ったり、メインプロセッサ９００のデコード処理をアクセレートする。これにより、オープニング画面やゲーム画面において、ＭＰＥＧ方式等で圧縮された動画像を表示できる。
【０１１０】
描画プロセッサ９１０は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画（レンダリング）処理を実行する。オブジェクトの描画の際には、メインプロセッサ９００は、ＤＭＡコントローラ９７０を利用して、描画データを描画プロセッサ９１０に渡すと共に、必要であればテクスチャ記憶部９２４にテクスチャを転送する。すると描画プロセッサ９１０は、描画データやテクスチャに基づいて、Ｚバッファなどを利用した隠面消去を行いながら、オブジェクトをフレームバッファ９２２に描画する。また描画プロセッサ９１０は、αブレンディング（半透明処理）、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエイリアシング、シェーディング処理なども行う。頂点シェーダやピクセルシェーダなどのプログラマブルシェーダが実装されている場合には、シェーダプログラムに従って、頂点データの作成・変更（更新）やピクセル（あるいはフラグメント）の描画色の決定を行う。１フレーム分の画像がフレームバッファ９２２に書き込まれるとその画像はディスプレイ９１２に表示される。
【０１１１】
サウンドプロセッサ９３０は、多チャンネルのＡＤＰＣＭ音源などを内蔵し、ＢＧＭ、効果音、音声などのゲーム音を生成し、スピーカ９３２を介して出力する。ゲームコントローラ９４２やメモリカード９４４からのデータはシリアルインターフェース９４０を介して入力される。
【０１１２】
ＲＯＭ９５０にはシステムプログラムなどが格納される。業務用ゲームシステムの場合にはＲＯＭ９５０が情報記憶媒体として機能し、ＲＯＭ９５０に各種プログラムが格納される。なおＲＯＭ９５０の代わりにハードディスクを利用してもよい。ＲＡＭ９６０は各種プロセッサの作業領域となる。ＤＭＡコントローラ９７０は、プロセッサ、メモリ間でのＤＭＡ転送を制御する。ＤＶＤドライブ９８０（ＣＤドライブでもよい。）は、プログラム、画像データ、或いは音データなどが格納されるＤＶＤ９８２（ＣＤでもよい。）にアクセスする。通信インターフェース９９０はネットワーク（通信回線、高速シリアルバス）を介して外部との間でデータ転送を行う。
【０１１３】
なお本実施形態の各部（各手段）の処理は、その全てをハードウェアのみにより実現してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【０１１４】
そして本実施形態の各部の処理をハードウェアとプログラムの両方により実現する場合には、情報記憶媒体には、ハードウェア（コンピュータ）を本実施形態の各部として機能させるためのプログラムが格納される。より具体的には、上記プログラムが、ハードウェアである各プロセッサ９０２、９０４、９０６、９１０、９３０に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ９０２、９０４、９０６、９１０、９３０は、その指示と渡されたデータとに基づいて本発明の各部の処理を実現する。
【０１１５】
なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語（下地オブジェクト、下地テクスチャ、第１の座標軸、第２の座標軸等）と共に記載された用語（地面オブジェクト、地面テクスチャ、Ｙ軸、Ｘ軸等）は、明細書または図面のいかなる箇所においても、その異なる用語に置き換えることができる。
【０１１６】
また本実施形態では芝生の画像表現に本発明の手法を適用した場合について説明したが本発明はこれに限定されず、他の画像表現にも適用可能である。またテクスチャマッピング手法やテクスチャのα値設定手法も本実施形態で説明した手法には限定されない。
【０１１７】
また本発明は種々のゲームに適用できる。また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレイヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード、携帯電話等の種々の画像生成システムに適用できる。
【図面の簡単な説明】
【０１１８】
【図１】本実施形態の画像生成システムの機能ブロック図の例。
【図２】本実施形態の描画手法の説明図。
【図３】本実施形態の描画手法の説明図。
【図４】テクスチャに設定されるα値のパターン例。
【図５】テクスチャＴＥＸ１の具体例。
【図６】テクスチャＴＥＸ２の具体例。
【図７】テクスチャＴＥＸ３の具体例。
【図８】テクスチャＴＥＸ４の具体例。
【図９】テクスチャＴＥＸ５の具体例。
【図１０】テクスチャＴＥＸ６の具体例。
【図１１】テクスチャのα値の設定手法の説明図。
【図１２】図１２（Ａ）（Ｂ）（Ｃ）（Ｄ）はバイリニア補間を利用する手法の説明図。
【図１３】本実施形態により生成される画像の例。
【図１４】本実施形態により生成される画像の例。
【図１５】本実施形態により生成される画像の例。
【図１６】本実施形態により生成される画像の例。
【図１７】芝目を表現する手法の説明図。
【図１８】芝目を表現する手法の説明図。
【図１９】本実施形態により生成される画像の例。
【図２０】本実施形態の処理の詳細例。
【図２１】ハードウェア構成例。
【符号の説明】
【０１１９】
１００  処理部、１１０  オブジェクト空間設定部、１１２  移動・動作処理部、
１１４  仮想カメラ制御部、１１６  α値演算部、１２０  描画部、
１２２  ジオメトリ処理部、１２４  隠面消去部、１２６  αブレンディング部、
１２８  テクスチャマッピング部、１３０  音生成部、１６０  操作部、
１７０  記憶部、１７２  主記憶部、１７４  描画バッファ、
１７６  モデルデータ記憶部、１７８  テクスチャ記憶部、
１８０  情報記憶媒体、１９０  表示部、１９２  音出力部、
１９４  携帯型情報記憶装置、１９６  通信部
【図１】
2007164651.tif 000003
【図２】
2007164651.tif 000004
【図３】
2007164651.tif 000005
【図４】
2007164651.tif 000006
【図５】
2007164651.tif 000007
【図６】
2007164651.tif 000008
【図７】
2007164651.tif 000009
【図８】
2007164651.tif 000010
【図９】
2007164651.tif 000011
【図１０】
2007164651.tif 000012
【図１１】
2007164651.tif 000013
【図１２】
2007164651.tif 000014
【図１７】
2007164651.tif 000015
【図１８】
2007164651.tif 000016
【図２０】
2007164651.tif 000017
【図２１】
2007164651.tif 000018
【図１３】
2007164651.tif 000019
【図１４】
2007164651.tif 000020
【図１５】
2007164651.tif 000021
【図１６】
2007164651.tif 000022
【図１９】
2007164651.tif 000023