JP4782583B2 - Program, information storage medium, and image generation system - Google Patents

Program, information storage medium, and image generation system Download PDF

Info

Publication number
JP4782583B2
JP4782583B2 JP2006047511A JP2006047511A JP4782583B2 JP 4782583 B2 JP4782583 B2 JP 4782583B2 JP 2006047511 A JP2006047511 A JP 2006047511A JP 2006047511 A JP2006047511 A JP 2006047511A JP 4782583 B2 JP4782583 B2 JP 4782583B2
Authority
JP
Japan
Prior art keywords
map texture
texture
reflection
unit
processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2006047511A
Other languages
Japanese (ja)
Other versions
JP2007226575A (en
Inventor
公次 松尾
池田  進一
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Namco Ltd
Bandai Namco Entertainment Inc
Original Assignee
Namco Ltd
Namco Bandai Games Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Namco Ltd, Namco Bandai Games Inc filed Critical Namco Ltd
Priority to JP2006047511A priority Critical patent/JP4782583B2/en
Publication of JP2007226575A publication Critical patent/JP2007226575A/en
Application granted granted Critical
Publication of JP4782583B2 publication Critical patent/JP4782583B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Description

本発明は、プログラム、情報記憶媒体及び画像生成システムに関する。   The present invention relates to a program, an information storage medium, and an image generation system.

従来より、キャラクタ、車などのオブジェクトが配置設定されるオブジェクト空間内(仮想的な3次元空間)において仮想カメラ(所与の視点)から見える画像を生成する画像生成システム(ゲームシステム)が知られており、いわゆる仮想現実を体験できるものとして人気が高い。サッカーゲームを楽しめる画像生成システムを例にとれば、プレーヤは、スクリーン上に映し出されたキャラクタを操作し、ドリブルをしたりシュートをしたりしてゲームを楽しむ。   Conventionally, an image generation system (game system) that generates an image that can be viewed from a virtual camera (a given viewpoint) in an object space (virtual three-dimensional space) in which objects such as characters and cars are arranged and set is known. It is very popular for experiencing so-called virtual reality. Taking an image generation system for enjoying a soccer game as an example, the player enjoys the game by manipulating the characters displayed on the screen and dribbling or shooting.

このような画像生成システムでは、生成される画像のリアル性への要求が、年々、高まっている。従って、キャラクタの肌(表面)のライティングや凹凸についても、リアルに表現できることが望ましい。   In such an image generation system, the demand for realism of the generated image is increasing year by year. Therefore, it is desirable that the lighting and unevenness of the character's skin (surface) can be expressed realistically.

しかしながら、これまでの画像生成システムでは、キャラクタの肌の色を表すテクスチャを繰り返しマッピングして、キャラクタ画像を生成していた。従って、生成されるキャラクタ画像が、ポリゴンで作った人工的な画像になってしまい、プレーヤの仮想現実感を今ひとつ向上できないという課題があった。
特開2001−325605号公報
However, in conventional image generation systems, a character image is generated by repeatedly mapping a texture representing the character's skin color. Therefore, the generated character image becomes an artificial image made of polygons, and there is a problem that the virtual reality of the player cannot be improved.
JP 2001-325605 A

本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、ライティング処理やバンプ処理によるリアルな画像の生成を可能にするプログラム、情報記憶媒体及び画像生成システムを提供することにある。   The present invention has been made in view of the problems as described above. An object of the present invention is to provide a program, an information storage medium, and an image generation system that enable generation of a realistic image by lighting processing or bump processing. It is to provide.

本発明は、画像を生成する画像生成システムであって、立体形状の複数のパーツオブジェクトにより構成されるキャラクタが移動するオブジェクト空間の設定を行うオブジェクト空間設定部と、テクスチャを記憶するテクスチャ記憶部と、照明モデルと光源情報に基づいてライティング処理を行うライティング処理部とを含み、前記テクスチャ記憶部は、前記複数のパーツオブジェクトのうちの第1のパーツオブジェクトの展開図に対応した色パターンを有し、前記第1のパーツオブジェクトの表面の色がテクセルに設定されるカラーマップテクスチャと、前記第1のパーツオブジェクトの展開図に対応した反射情報パターンを有し、反射情報がテクセルに設定される反射マップテクスチャとを記憶し、前記ライティング処理部は、前記反射マップテクスチャのテクセルに設定された前記反射情報と前記照明モデルと前記光源情報に基づいて、前記第1のパーツオブジェクトのライティング処理を行う画像生成システムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラム、又は該プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体に関係する。   The present invention is an image generation system for generating an image, an object space setting unit for setting an object space in which a character composed of a plurality of three-dimensional part objects moves, a texture storage unit for storing textures, A lighting processing unit that performs lighting processing based on the illumination model and the light source information, and the texture storage unit has a color pattern corresponding to a developed view of a first part object of the plurality of part objects. A reflection having a color map texture in which the surface color of the first part object is set to a texel and a reflection information pattern corresponding to a development view of the first part object, and the reflection information being set in the texel A map texture, and the lighting processing unit Tsu based the reflection information set to texels flop texture and the lighting model to the light source information, related to the image generation system performs lighting processing of the first part object. The present invention also relates to a program that causes a computer to function as each of the above-described units, or a computer-readable information storage medium that stores the program.

本発明によれば、第1のパーツオブジェクトの各部分の画像をカラーマップテクスチャに詳細に描くことが可能になる。従って、同じテクスチャを繰り返しマッピングする手法に比べて、より写実的な画像を生成できる。また第1のパーツオブジェクトの各部分の反射情報の状態を反射マップテクスチャに詳細に描くことも可能になる。従って、第1のパーツオブジェクトの各部分のうちライティング処理領域に対応するテクセルに対して反射情報を描くだけで、第1のパーツオブジェクトの各部分での光沢表現を実現できる。この結果、反射マップテクスチャの反射情報パターンを変えるだけで、種々のパターンの画像表現が可能になる。またカラーマップテクスチャに所与の画像パターンが描かれた場合に、反射マップテクスチャのテクセルに対して、その画像パターンに対応した反射情報を書き込むことも可能になる。   According to the present invention, the image of each part of the first part object can be drawn in detail on the color map texture. Therefore, a more realistic image can be generated as compared with the method of repeatedly mapping the same texture. It is also possible to draw the state of the reflection information of each part of the first part object in detail on the reflection map texture. Therefore, it is possible to realize gloss expression in each part of the first part object only by drawing the reflection information with respect to the texel corresponding to the lighting processing area among the parts of the first part object. As a result, it is possible to represent various patterns of images simply by changing the reflection information pattern of the reflection map texture. Also, when a given image pattern is drawn on the color map texture, it is possible to write reflection information corresponding to the image pattern to the texel of the reflection map texture.

また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記第1のパーツオブジェクトは、前記キャラクタの腕、顔、足、又は武器のオブジェクトであり、前記ライティング処理部は、前記反射マップテクスチャのテクセルに設定された前記反射情報と前記照明モデルと前記光源情報に基づいて、前記キャラクタの腕、顔、足、又は武器のオブジェクトのライティング処理を行うようにしてもよい。   In the image generation system, the program, and the information storage medium according to the present invention, the first part object is an object of the character's arm, face, foot, or weapon, and the lighting processing unit includes the reflection map texture. Based on the reflection information, the illumination model, and the light source information set in the texel, lighting processing of the character arm, face, foot, or weapon object may be performed.

このようにすれば、キャラクタの腕、顔、足、又は武器に対するリアルなライティング処理が可能になる。   In this way, a realistic writing process for the character's arm, face, foot, or weapon becomes possible.

また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記反射マップテクスチャのテクセルのうち、前記ライティング処理が行われるライティング処理領域以外の領域に対応するテクセルでは、前記ライティング処理のスペキュラ演算を無効にする第1の値が設定され、前記ライティング処理部は、前記反射情報が第1の値に設定されている場合に、前記スペキュラ演算を無効にするようにしてもよい。   Further, in the image generation system, the program, and the information storage medium according to the present invention, among the texels of the reflection map texture, in the texels corresponding to regions other than the lighting processing region where the lighting processing is performed, the specular calculation of the lighting processing is performed. A first value to be invalidated is set, and the lighting processing unit may invalidate the specular calculation when the reflection information is set to the first value.

このようにすれば、反射マップテクスチャの反射情報をマスク情報として活用し、スペキュラ画像が生成されると不自然になる部分等においてスペキュラ演算を無効にできる。   In this way, the reflection information of the reflection map texture can be used as mask information, and the specular calculation can be invalidated in a portion that becomes unnatural when a specular image is generated.

また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記テクスチャ記憶部は、前記反射マップテクスチャのαプレーンに、前記反射情報として反射率を記憶し、前記ライティング処理部は、前記αプレーンの前記反射率で光が鏡面反射するライティング処理を行うようにしてもよい。   In the image generation system, the program, and the information storage medium according to the present invention, the texture storage unit stores a reflectance as the reflection information in an α plane of the reflection map texture, and the lighting processing unit includes the α plane. A lighting process in which light is specularly reflected at the reflectance described above may be performed.

このようにすれば、反射マップテクスチャのαプレーンを利用して、光の鏡面反射の反射率を制御できる。   In this way, the reflectance of the specular reflection of light can be controlled using the α plane of the reflection map texture.

また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記テクスチャ記憶部は、前記反射マップテクスチャの色プレーンに、前記反射情報として光沢色を記憶し、前記ライティング処理部は、前記色プレーンの前記光沢色で光が鏡面反射するライティング処理を行うようにしてもよい。   In the image generation system, the program, and the information storage medium according to the present invention, the texture storage unit stores a glossy color as the reflection information in a color plane of the reflection map texture, and the lighting processing unit includes the color plane. It is also possible to perform a lighting process in which light is specularly reflected in the glossy color.

このようにすれば、反射マップテクスチャの色プレーンを利用して、第1のパーツオブジェクトの表面の光沢色を制御できる。   In this way, the gloss color of the surface of the first part object can be controlled using the color plane of the reflection map texture.

また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記テクスチャ記憶部は、前記第1のパーツオブジェクトの展開図に対応した法線ベクトルパターンを有し、法線ベクトル情報がテクセルに設定される法線マップテクスチャを記憶し、前記法線マップテクスチャに基づいて、前記第1のパーツオブジェクトの表面の凹凸を表すためのバンプ処理を行うバンプ処理部を含んでもよい(該バンプ処理部としてとして、コンピュータを機能させてもよい)。   In the image generation system, the program, and the information storage medium according to the present invention, the texture storage unit has a normal vector pattern corresponding to the development view of the first part object, and the normal vector information is set in the texel. A normal map texture to be stored, and based on the normal map texture, a bump processing unit that performs bump processing to represent the unevenness of the surface of the first part object may be included (as the bump processing unit) As a computer.

このようにすれば、ライティング処理による第1のパーツオブジェクトの表面の光沢表現のみならず、表面の凹凸表現も実現でき、画像のリアル度を向上できる。   In this way, not only the glossy expression of the surface of the first part object by the lighting process but also the uneven expression of the surface can be realized, and the realism of the image can be improved.

また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、頂点単位で処理を行う頂点シェーダ部と、ピクセル単位で処理を行うピクセルシェーダ部とを含み(該頂点シェーダ部、ピクセルシェーダ部としてコンピュータを機能させ)、前記ピクセルシェーダ部が含む前記ライティング処理部が、前記ライティング処理を行うようにしてもよい。   The image generation system, program, and information storage medium according to the present invention include a vertex shader unit that performs processing in units of vertices and a pixel shader unit that performs processing in units of pixels (the computer as the vertex shader unit and pixel shader unit). And the lighting processing unit included in the pixel shader unit may perform the lighting processing.

このようにすれば、ライティング処理をピクセルシェーダ部により実現でき、ピクセル単位での精度の高い光沢表現が可能になる。   In this way, lighting processing can be realized by the pixel shader unit, and glossy expression with high accuracy in units of pixels becomes possible.

また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、頂点単位で処理を行う頂点シェーダ部と、ピクセル単位で処理を行うピクセルシェーダ部とを含み(該頂点シェーダ部、ピクセルシェーダ部としてコンピュータを機能させ)、前記ピクセルシェーダ部が含む前記ライティング処理部が前記ライティング処理を行い、前記ピクセルシェーダ部が含む前記バンプ処理部が前記バンプ処理を行うようにしてもよい。   The image generation system, program, and information storage medium according to the present invention include a vertex shader unit that performs processing in units of vertices and a pixel shader unit that performs processing in units of pixels (the computer as the vertex shader unit and pixel shader unit). The lighting processing unit included in the pixel shader unit may perform the lighting processing, and the bump processing unit included in the pixel shader unit may perform the bump processing.

このようにすれば、ライティング処理及びバンプ処理の両方をピクセルシェーダ部により実現でき、ライティング処理とバンプ処理が連動したピクセル単位の処理が可能になる。   In this way, both the lighting process and the bump process can be realized by the pixel shader unit, and a process in units of pixels in which the lighting process and the bump process are linked becomes possible.

また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記頂点シェーダ部は、第1、第2の従法線ベクトルをワールド座標系に座標変換し、前記ピクセルシェーダ部は、前記法線マップテクスチャにより得られた法線ベクトルを、前記第1、第2の従法線ベクトルに基づきワールド座標系に座標変換し、前記バンプ処理部は、座標変換後の法線ベクトルに基づいて前記バンプ処理を行うようにしてもよい。   In the image generation system, the program, and the information storage medium according to the present invention, the vertex shader unit converts the first and second normal vectors into a world coordinate system, and the pixel shader unit includes the normal line. The normal vector obtained by the map texture is coordinate-converted into a world coordinate system based on the first and second subnormal vectors, and the bump processing unit is configured to convert the bump based on the normal vector after the coordinate conversion. Processing may be performed.

このようにワールド座標系に座標変換したベクトルにより演算すれば、演算精度を向上できる。そして第1、第2の従法線ベクトルを用いて法線ベクトルをワールド座標系に座標変換すれば、座標変換後の法線ベクトルを用いたバンプ処理を実現できるようになる。   Thus, if it calculates by the vector coordinate-transformed to the world coordinate system, a calculation precision can be improved. If the normal vector is coordinate-converted into the world coordinate system using the first and second subnormal vectors, bump processing using the normal vector after the coordinate conversion can be realized.

また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記キャラクタのパラメータを演算するパラメータ演算部と、演算された前記パラメータに基づいて、前記反射マップテクスチャを変化させて、前記第1のパーツオブジェクトの表面のうち前記ライティング処理が行われるライティング処理領域の面積及び形状の少なくとも1つを変化させる変化処理部を含んでもよい(該パラメータ演算部、変化処理部としてコンピュータを機能させてもよい)。   In the image generation system, the program, and the information storage medium according to the present invention, the parameter calculation unit that calculates the parameter of the character, the reflection map texture is changed based on the calculated parameter, and the first It may include a change processing unit that changes at least one of the area and shape of the lighting processing area where the lighting processing is performed on the surface of the part object (the computer may function as the parameter calculation unit and the change processing unit). ).

このようにすれば、演算されたパラメータに応じて、ライティング処理領域の面積や形状がリアルタイムに変化する。従って、第1のパーツオブジェクトの表面のリアルな光沢表現が可能になる。   In this way, the area and shape of the lighting processing region change in real time according to the calculated parameters. Therefore, realistic glossy expression of the surface of the first part object is possible.

また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記テクスチャ記憶部は、前記第1のパーツオブジェクトの展開図に対応した法線ベクトルパターンを有し、法線ベクトル情報がテクセルに設定される法線マップテクスチャを記憶し、前記法線マップテクスチャに基づいて、前記第1のパーツオブジェクトの表面の凹凸を表すためのバンプ処理を行うバンプ処理部を含み(該バンプ処理部としてコンピュータを機能させ)、前記変化処理部は、前記反射マップテクスチャが変化した場合に、前記反射マップテクスチャの変化に連動して前記法線マップテクスチャを変化させてもよい。   In the image generation system, the program, and the information storage medium according to the present invention, the texture storage unit has a normal vector pattern corresponding to the development view of the first part object, and the normal vector information is set in the texel. A bump processing unit that stores a normal map texture to be processed and performs a bump process for representing the unevenness of the surface of the first part object based on the normal map texture (a computer as the bump processing unit) And the change processing unit may change the normal map texture in conjunction with the change of the reflection map texture when the reflection map texture changes.

このようにすれば、ライティング処理領域でのライティング処理の変化に連動して、ライティング処理領域での凹凸状態も変化するようになり、画像のリアル度を向上できる。   In this way, the uneven state in the lighting processing area changes in conjunction with the change in the lighting processing area, and the realism of the image can be improved.

また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記第1のパーツオブジェクトに対するヒットイベントが発生した場合に、ヒット領域を検出するヒットチェック部と、検出された前記ヒット領域に対応するテクセル領域において、前記反射マップテクスチャを変化させる変化処理部とを含んでもよい(該ヒットチェック部、変化処理部としてコンピュータを機能させてもよい)。   In the image generation system, the program, and the information storage medium according to the present invention, when a hit event occurs for the first part object, a hit check unit that detects a hit area and the detected hit area correspond to the hit area. The texel area may include a change processing unit that changes the reflection map texture (the computer may function as the hit check unit and the change processing unit).

このようにすれば、ヒットイベントが発生した場合に、ヒット領域での光沢も変化するようになり、多様な画像表現が可能になる。   In this way, when a hit event occurs, the gloss in the hit area also changes, and various image representations are possible.

また本発明は、画像を生成する画像生成システムであって、立体形状の複数のパーツオブジェクトにより構成されるキャラクタが移動するオブジェクト空間の設定を行うオブジェクト空間設定部と、テクスチャを記憶するテクスチャ記憶部と、バンプ処理を行うバンプ処理部とを含み、前記テクスチャ記憶部は、前記複数のパーツオブジェクトのうちの第1のパーツオブジェクトの展開図に対応した色パターンを有し、前記第1のパーツオブジェクトの表面の色がテクセルに設定されるカラーマップテクスチャと、前記第1のパーツオブジェクトの展開図に対応した法線ベクトルパターンを有し、法線ベクトルの情報がテクセルに設定される法線マップテクスチャとを記憶し、前記バンプ処理部は、前記法線マップテクスチャに基づいて、前記第1のパーツオブジェクトの表面の凹凸を表すためのバンプ処理を行う画像生成システムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラム、又は該プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体に関係する。   The present invention also provides an image generation system for generating an image, an object space setting unit for setting an object space in which a character composed of a plurality of three-dimensional part objects moves, and a texture storage unit for storing textures And a bump processing unit that performs a bump process, wherein the texture storage unit has a color pattern corresponding to a developed view of a first part object of the plurality of part objects, and the first part object A color map texture in which the surface color of texel is set to texel and a normal vector pattern corresponding to the development drawing of the first part object, and information on the normal vector is set to texel And the bump processing unit determines whether or not the previous map is based on the normal map texture. Relating to an image generation system for performing bump processing for representing the irregularities in the surface of the first part object. The present invention also relates to a program that causes a computer to function as each of the above-described units or a computer-readable information storage medium that stores the program.

本発明によれば、第1のパーツオブジェクトの各部分の画像をカラーマップテクスチャに詳細に描くことができるため、より写実的な画像を生成できる。また第1のパーツオブジェクトの各部分の法線ベクトル情報を法線マップテクスチャに詳細に描くことも可能になる。従って、第1のパーツオブジェクトの各部分のうち凹凸を表現したい領域に対して法線ベクトル情報を描くだけで、第1のパーツオブジェクトの各部分での凹凸表現を実現でき、多様な画像を生成できる。またカラーマップテクスチャに所与の画像パターンが描かれた場合に、法線マップテクスチャのテクセルに対して、その画像パターンに対応した法線ベクトル情報を書き込むことも可能になる。   According to the present invention, since the image of each part of the first part object can be drawn in detail on the color map texture, a more realistic image can be generated. It is also possible to draw the normal vector information of each part of the first part object in detail on the normal map texture. Therefore, by simply drawing normal vector information for the area of the first part object that you want to represent the unevenness, you can realize the unevenness expression in each part of the first part object and generate various images. it can. Further, when a given image pattern is drawn on the color map texture, it is possible to write normal vector information corresponding to the image pattern into the texel of the normal map texture.

また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記第1のパーツオブジェクトに対するヒットイベントが発生した場合に、ヒット領域を検出するヒットチェック部と、検出された前記ヒット領域に対応するテクセル領域において、前記法線マップテクスチャを変化させる変化処理部を含んでもよい(該ヒットチェック部、変化処理部としてコンピュータを機能させてもよい)。   In the image generation system, the program, and the information storage medium according to the present invention, when a hit event occurs for the first part object, a hit check unit that detects a hit area and the detected hit area correspond to the hit area. The texel region may include a change processing unit that changes the normal map texture (the computer may function as the hit check unit and the change processing unit).

このようにすれば、ヒットイベントが発生した場合に、ヒット領域での凹凸状態も変化するようになり、多様な画像表現が可能になる。   In this way, when a hit event occurs, the uneven state in the hit area also changes, and various image representations are possible.

また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、頂点単位で処理を行う頂点シェーダ部と、ピクセル単位で処理を行うピクセルシェーダ部を含み(該頂点シェーダ部、ピクセルシェーダ部としてコンピュータを機能させ)、前記ピクセルシェーダ部が含む前記バンプ処理部が前記バンプ処理を行ってもよい。   The image generation system, program, and information storage medium according to the present invention include a vertex shader unit that performs processing in units of vertices and a pixel shader unit that performs processing in units of pixels (a computer as the vertex shader unit and pixel shader unit). The bump processing unit included in the pixel shader unit may perform the bump processing.

このようにすれば、バンプ処理をピクセルシェーダ部により実現でき、ピクセル単位での精度の高い凹凸表現が可能になる。   In this way, bump processing can be realized by the pixel shader unit, and high-precision unevenness can be expressed in units of pixels.

以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。   Hereinafter, this embodiment will be described. In addition, this embodiment demonstrated below does not unduly limit the content of this invention described in the claim. In addition, all the configurations described in the present embodiment are not necessarily essential configuration requirements of the present invention.

1.構成
図1に本実施形態の画像生成システム(ゲームシステム)の機能ブロック図の例を示す。なお本実施形態の画像生成システムは図1の構成要素(各部)の一部を省略した構成としてもよい。
1. Configuration FIG. 1 shows an example of a functional block diagram of an image generation system (game system) of the present embodiment. Note that the image generation system of the present embodiment may have a configuration in which some of the components (each unit) in FIG. 1 are omitted.

操作部160は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、或いはタッチパネル型ディスプレイなどにより実現できる。記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAM(VRAM)などにより実現できる。   The operation unit 160 is for a player to input operation data, and the function can be realized by a lever, a button, a touch panel display, or the like. The storage unit 170 serves as a work area for the processing unit 100, the communication unit 196, and the like, and its function can be realized by a RAM (VRAM) or the like.

情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、ハードディスク、或いはメモリ(ROM)などにより実現できる。処理部100は、情報記憶媒体180に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体180には、本実施形態の各部としてコンピュータを機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶される。   An information storage medium 180 (a computer-readable medium) stores programs, data, and the like, and its function can be realized by an optical disk (CD, DVD), hard disk, memory (ROM), or the like. The processing unit 100 performs various processes of the present embodiment based on a program (data) stored in the information storage medium 180. That is, the information storage medium 180 stores a program for causing a computer to function as each unit of the present embodiment (a program for causing a computer to execute processing of each unit).

表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、タッチパネル型ディスプレイ、或いはHMD(ヘッドマウントディスプレイ)などにより実現できる。音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。   The display unit 190 outputs an image generated according to the present embodiment, and its function can be realized by a CRT, LCD, touch panel display, HMD (head mounted display), or the like. The sound output unit 192 outputs the sound generated by the present embodiment, and its function can be realized by a speaker, headphones, or the like.

携帯型情報記憶装置194は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置194としては、メモリカードや携帯型ゲーム装置などがある。通信部196は外部(例えばホスト装置や他の画像生成システム)との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどにより実現できる。   The portable information storage device 194 stores player personal data, game save data, and the like. Examples of the portable information storage device 194 include a memory card and a portable game device. The communication unit 196 performs various controls for communicating with the outside (for example, a host device or other image generation system), and functions thereof are hardware such as various processors or communication ASICs, programs, and the like. It can be realized by.

なお本実施形態の各部としてコンピュータを機能させるためのプログラム(データ)は、ホスト装置(サーバー)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180(あるいは記憶部170)に配信してもよい。このようなホスト装置(サーバー)による情報記憶媒体の使用も本発明の範囲内に含めることができる。   A program (data) for causing a computer to function as each unit of the present embodiment is distributed from the information storage medium of the host device (server) to the information storage medium 180 (or storage unit 170) via the network and communication unit 196. May be. Use of an information storage medium by such a host device (server) can also be included in the scope of the present invention.

処理部100(プロセッサ)は、操作部160からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの処理を行う。ここでゲーム処理としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。この処理部100は記憶部170(主記憶部172)をワーク領域として各種処理を行う。処理部100の機能は、各種プロセッサ(CPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。   The processing unit 100 (processor) performs processing such as game processing, image generation processing, or sound generation processing based on operation data and programs from the operation unit 160. Here, as the game process, a process for starting a game when a game start condition is satisfied, a process for advancing the game, a process for placing an object such as a character or a map, a process for displaying an object, and a game result are calculated. There is a process or a process of ending a game when a game end condition is satisfied. The processing unit 100 performs various processes using the storage unit 170 (main storage unit 172) as a work area. The functions of the processing unit 100 can be realized by hardware such as various processors (CPU, DSP, etc.), ASIC (gate array, etc.), and programs.

処理部100は、オブジェクト空間設定部110、移動・動作処理部112、仮想カメラ制御部114、パラメータ演算部116、変化処理部118、ヒットチェック部119、描画部120、音生成部130を含む。なおこれらの一部を省略する構成としてもよい。   The processing unit 100 includes an object space setting unit 110, a movement / motion processing unit 112, a virtual camera control unit 114, a parameter calculation unit 116, a change processing unit 118, a hit check unit 119, a drawing unit 120, and a sound generation unit 130. Note that some of these may be omitted.

オブジェクト空間設定部110は、キャラクタ(人、ロボット等)、スタジアム、建物、樹木、壁、マップ(地形)などの表示物を表す各種オブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェイスなどのプリミティブ面で構成されるオブジェクト)をオブジェクト空間に配置設定する処理を行う。即ちワールド座標系でのオブジェクトの位置や回転角度(向き、方向と同義)を決定し、その位置(X、Y、Z)にその回転角度(X、Y、Z軸回りでの回転角度)でオブジェクトを配置する。具体的には、記憶部170のモデルデータ記憶部176には、移動体オブジェクト(キャラクタ)、固定物オブジェクト(ビル)、背景オブジェクト(マップ、天球)のモデルデータが記憶されている。そしてオブジェクト空間設定部110は、このモデルデータを用いてオブジェクト空間へのオブジェクトの設定(配置)処理を行う。   The object space setting unit 110 is composed of various objects (polygons, free-form surfaces, subdivision surfaces, etc.) representing display objects such as characters (people, robots, etc.), stadiums, buildings, trees, walls, maps (terrain). The object is placed and set in the object space. In other words, the position and rotation angle of the object in the world coordinate system (synonymous with direction and direction) are determined, and the rotation angle (rotation angle around the X, Y, and Z axes) is determined at that position (X, Y, Z). Place the object. Specifically, the model data storage unit 176 of the storage unit 170 stores model data of a moving object (character), a fixed object (building), and a background object (map, celestial sphere). Then, the object space setting unit 110 performs an object setting (arrangement) process in the object space using the model data.

移動・動作処理部112は、オブジェクト(キャラクタ等)の移動・動作演算(移動・動作シミュレーション)を行う。即ち操作部160によりプレーヤが入力した操作データや、プログラム(移動・動作アルゴリズム)や、各種データ(モーションデータ)などに基づいて、オブジェクト(モデルオブジェクト)をオブジェクト空間内で移動させたり、オブジェクトを動作(モーション、アニメーション)させる処理を行う。具体的には、オブジェクトの移動情報(位置、回転角度、速度、或いは加速度)や動作情報(パーツオブジェクトの位置、或いは回転角度)を、1フレーム(1/60秒)毎に順次求めるシミュレーション処理を行う。なおフレームは、オブジェクトの移動・動作処理(シミュレーション処理)や画像生成処理を行う時間の単位である。   The movement / motion processing unit 112 performs movement / motion calculation (movement / motion simulation) of an object (such as a character). That is, an object (model object) is moved in the object space or an object is moved based on operation data input by the player through the operation unit 160, a program (movement / motion algorithm), various data (motion data), or the like. Perform processing (motion, animation). Specifically, a simulation process for sequentially obtaining object movement information (position, rotation angle, speed, or acceleration) and motion information (part object position or rotation angle) every frame (1/60 second). Do. A frame is a unit of time for performing object movement / motion processing (simulation processing) and image generation processing.

仮想カメラ制御部114は、オブジェクト空間内の所与(任意)の視点から見える画像を生成するための仮想カメラ(視点)の制御処理を行う。具体的には、仮想カメラの位置(X、Y、Z)又は回転角度(X、Y、Z軸回りでの回転角度)を制御する処理(視点位置、視線方向あるいは画角を制御する処理)を行う。   The virtual camera control unit 114 performs a virtual camera (viewpoint) control process for generating an image viewed from a given (arbitrary) viewpoint in the object space. Specifically, processing for controlling the position (X, Y, Z) or rotation angle (rotation angle about the X, Y, Z axis) of the virtual camera (processing for controlling the viewpoint position, the line-of-sight direction or the angle of view) I do.

例えば仮想カメラによりオブジェクト(例えばキャラクタ、ボール、車)を後方から撮影する場合には、オブジェクトの位置又は回転の変化に仮想カメラが追従するように、仮想カメラの位置又は回転角度(仮想カメラの向き)を制御する。この場合には、移動・動作処理部112で得られたオブジェクトの位置、回転角度又は速度などの情報に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた回転角度で回転させたり、予め決められた移動経路で移動させる制御を行ってもよい。この場合には、仮想カメラの位置(移動経路)又は回転角度を特定するための仮想カメラデータに基づいて仮想カメラを制御する。   For example, when an object (eg, character, ball, car) is photographed from behind using a virtual camera, the position or rotation angle of the virtual camera (the direction of the virtual camera is set so that the virtual camera follows changes in the position or rotation of the object. ) To control. In this case, the virtual camera can be controlled based on information such as the position, rotation angle, or speed of the object obtained by the movement / motion processing unit 112. Alternatively, the virtual camera may be controlled to rotate at a predetermined rotation angle or to move along a predetermined movement path. In this case, the virtual camera is controlled based on the virtual camera data for specifying the position (movement path) or rotation angle of the virtual camera.

パラメータ演算部116は、ゲーム処理に用いる各種のパラメータを演算する。例えばパラメータ演算部116は、キャラクタに関するパラメータ(ステータスパラメータ)を演算する。具体的には、キャラクタの体力(スタミナ)パラメータや、運動量(移動量、移動情報)パラメータや、時間経過(運動時間)パラメータを演算する。ここで体力パラメータは、キャラクタの残りの体力を表すパラメータであり、キャラクタの移動・動作の継続や、時間経過に伴って減少する。また運動量パラメータは、キャラクタの運動の度合いを量的に表すパラメータであり、キャラクタが移動・動作することで増加する。また時間経過パラメータは、キャラクタに関する時間の経過を表すパラメータであり、例えばキャラクタが移動・動作(運動)を開始してからの時間経過に伴い増加する。   The parameter calculation unit 116 calculates various parameters used for game processing. For example, the parameter calculation unit 116 calculates a parameter (status parameter) related to the character. Specifically, the physical strength (stamina) parameter, the exercise amount (movement amount, movement information) parameter, and the elapsed time (exercise time) parameter of the character are calculated. Here, the physical strength parameter is a parameter representing the remaining physical strength of the character, and decreases with the continuation of the movement / motion of the character or with the passage of time. The momentum parameter is a parameter that quantitatively represents the degree of movement of the character, and increases as the character moves and moves. The time lapse parameter is a parameter representing the passage of time related to the character, and increases with the passage of time after the character starts moving / motion (exercise), for example.

変化処理部118は、パラメータ演算部116で演算されたパラメータに基づいて、反射マップテクスチャを変化させる処理を行う。例えば演算されたパラメータに基づいて、反射マップテクスチャの差し替え(切り替え)を行ったり、反射マップテクスチャの反射情報の書き換えを行う。そしてこのように反射マップテクスチャを変化させることで、ライティング処理領域の面積、形状や、光の反射率や、光沢色を変化させる。具体的には、パラメータ演算部116で演算された体力パラメータが少なくなるほど、或いは運動量パラメータが大きくなるほど、或いは時間経過パラメータが大きくなるほど、ライティング処理領域の面積(キャラクタ表面での占有面積)を大きくする処理を行う。   The change processing unit 118 performs a process of changing the reflection map texture based on the parameter calculated by the parameter calculation unit 116. For example, the reflection map texture is replaced (switched) or the reflection information of the reflection map texture is rewritten based on the calculated parameters. By changing the reflection map texture in this way, the area, shape, light reflectance, and gloss color of the lighting processing region are changed. Specifically, the area of the lighting processing area (occupied area on the character surface) is increased as the physical strength parameter calculated by the parameter calculation unit 116 decreases, the momentum parameter increases, or the time lapse parameter increases. Process.

また変化処理部118は、パラメータ演算部116で演算されたパラメータに基づいて、法線マップテクスチャを変化させる処理を行う。例えば演算されたパラメータに基づいて、法線マップテクスチャの差し替え(切り替え)を行ったり、法線マップテクスチャの法線ベクトル情報の書き換えを行う。また変化処理部118は、反射マップテクスチャが変化した場合に、反射マップテクスチャの変化に連動して法線マップテクスチャを変化させる処理を行う。例えば反射マップテクスチャの変化により、ライティング処理領域の面積、形状等が変化した場合には、この面積、形状等の変化に連動して、ライティング処理領域での法線マップテクスチャを変化させる。   The change processing unit 118 performs processing for changing the normal map texture based on the parameter calculated by the parameter calculation unit 116. For example, the normal map texture is replaced (switched) or the normal vector information of the normal map texture is rewritten based on the calculated parameters. The change processing unit 118 performs processing for changing the normal map texture in conjunction with the change of the reflection map texture when the reflection map texture is changed. For example, when the area, shape, etc. of the lighting processing region changes due to a change in the reflection map texture, the normal map texture in the lighting processing region is changed in conjunction with the change in the area, shape, etc.

ヒットチェック部119はキャラクタについてのヒットチェック処理を行う。具体的には、キャラクタ(モデルオブジェクト)と、他のオブジェクト(プリミティブ)との間のヒットチェック処理を行う。ここで他のオブジェクトは、他のキャラクタや、他のキャラクタのパーツオブジェクトや、ボール等のプレイ対象物や、キャラクタに対する攻撃物等である。他のオブジェクトは、表示されるオブジェクトであってもよいし、表示されない仮想的なオブジェクトであってもよい。またヒットチェック処理によるヒット領域の検出は、例えばキャラクタの面と他のオブジェクトの移動軌道との交点を求めることで実現できる。なお、他のオブジェクトとのヒットチェックの対象となるキャラクタのオブジェクトは、表示用のモデルオブジェクトであってもよいし、ヒットチェック用のモデルオブジェクト(簡易オブジェクト)であってもよい。ここで表示用モデルオブジェクトは、画面に実際に表示されるモデルオブジェクトである。またヒットチェック用モデルオブジェクト(ヒットボリューム、ヒットボックス)は、ヒットチェックのために表示用モデルオブジェクトとは別に用意され、表示用モデルオブジェクトの形状を簡略化したモデルオブジェクト(ポリゴン数、頂点数が少ないオブジェクト)である。   The hit check unit 119 performs a hit check process for the character. Specifically, hit check processing is performed between a character (model object) and another object (primitive). Here, the other object is another character, a part object of the other character, a play object such as a ball, an attack against the character, or the like. Other objects may be displayed objects or virtual objects that are not displayed. The hit area detection by the hit check process can be realized, for example, by obtaining the intersection of the character plane and the movement trajectory of another object. Note that the character object to be hit-checked with another object may be a model object for display or a model object (simple object) for hit check. Here, the display model object is a model object actually displayed on the screen. The model objects for hit check (hit volume, hit box) are prepared separately from the model object for display for hit check, and the model object (the number of polygons and vertices is simplified) that simplifies the shape of the model object for display. Object).

そして本実施形態ではヒットチェック部119は、キャラクタを構成する第1のパーツオブジェクトに対するヒットイベント(キャラクタに他のオブジェクトがヒットするイベント)が発生した場合に、ヒット位置であるヒット領域を検出する。すると変化処理部118は、検出されたヒット領域に対応するテクセル領域において、反射マップテクスチャや法線マップテクスチャを変化させる処理を行う。具体的には、反射マップテクスチャや法線マップテクスチャのテクセルのうち、ヒット領域に対応する部分のテクセルの反射情報や法線ベクトル情報を書き換える。   In this embodiment, the hit check unit 119 detects a hit area that is a hit position when a hit event (an event in which another object hits the character) occurs for the first part object constituting the character. Then, the change processing unit 118 performs a process of changing the reflection map texture or the normal map texture in the texel area corresponding to the detected hit area. Specifically, the reflection information and normal vector information of the texel corresponding to the hit area among the texels of the reflection map texture and normal map texture are rewritten.

描画部120は、処理部100で行われる種々の処理(ゲーム処理)の結果に基づいて描画処理を行い、これにより画像を生成し、表示部190に出力する。いわゆる3次元ゲーム画像を生成する場合には、まずモデル(オブジェクト)の各頂点の頂点データ(頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)を含むモデルデータが入力され、入力されたモデルデータに含まれる頂点データに基づいて、頂点処理(頂点シェーダによるシェーディング)が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理(テッセレーション、曲面分割、ポリゴン分割)を行うようにしてもよい。   The drawing unit 120 performs drawing processing based on the results of various processing (game processing) performed by the processing unit 100, thereby generating an image and outputting the image to the display unit 190. When generating a so-called three-dimensional game image, model data including vertex data (vertex position coordinates, texture coordinates, color data, normal vector, α value, etc.) of each vertex of the model (object) is first input. Based on the vertex data included in the input model data, vertex processing (shading by a vertex shader) is performed. When performing the vertex processing, vertex generation processing (tessellation, curved surface division, polygon division) for re-dividing the polygon may be performed as necessary.

描画部120は、オブジェクトを描画する際にジオメトリ処理、隠面消去処理、αブレンディング等を行う。   The drawing unit 120 performs geometry processing, hidden surface removal processing, α blending, and the like when drawing an object.

ジオメトリ処理では、オブジェクトに対して、座標変換、クリッピング処理、透視投影変換、或いは光源計算等の処理が行われる。そして、ジオメトリ処理後(透視投影変換後)のモデルデータ(オブジェクトの頂点の位置座標、テクスチャ座標、色データ、法線ベクトル、或いはα値等)は、記憶部170に保存される。   In the geometry processing, processing such as coordinate conversion, clipping processing, perspective projection conversion, or light source calculation is performed on the object. Then, model data (positional coordinates of object vertices, texture coordinates, color data, normal vectors, α values, etc.) after geometry processing (after perspective projection conversion) is stored in the storage unit 170.

隠面消去処理としては、描画ピクセルのZ値(奥行き情報)が格納されるZバッファ(奥行きバッファ)を用いたZバッファ法(奥行き比較法、Zテスト)による隠面消去処理を行うことができる。すなわちオブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Zバッファに格納されるZ値を参照する。そして参照されたZバッファのZ値と、プリミティブの描画ピクセルでのZ値とを比較し、描画ピクセルでのZ値が、仮想カメラから見て手前側となるZ値(例えば小さなZ値)である場合には、その描画ピクセルの描画処理を行うとともにZバッファのZ値を新たなZ値に更新する。   As the hidden surface removal processing, hidden surface removal processing can be performed by a Z buffer method (depth comparison method, Z test) using a Z buffer (depth buffer) in which Z values (depth information) of drawing pixels are stored. . That is, when drawing pixels corresponding to the primitive of the object are drawn, the Z value stored in the Z buffer is referred to. Then, the Z value of the referenced Z buffer is compared with the Z value at the drawing pixel of the primitive, and the Z value at the drawing pixel is a Z value (for example, a small Z value) on the near side when viewed from the virtual camera. In some cases, the drawing process of the drawing pixel is performed and the Z value of the Z buffer is updated to a new Z value.

αブレンディング(α合成)は、α値(A値)に基づく半透明合成処理(通常αブレンディング、加算αブレンディング又は減算αブレンディング等)のことである。   α blending (α synthesis) is a translucent synthesis process (usually α blending, addition α blending, subtraction α blending, or the like) based on an α value (A value).

なお、α値は、各ピクセル(テクセル、ドット)に関連づけて記憶できる情報であり、例えば色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度(透明度、不透明度と等価)、バンプ情報などとして使用できる。   The α value is information that can be stored in association with each pixel (texel, dot), for example, plus alpha information other than color information. The α value can be used as mask information, translucency (equivalent to transparency and opacity), bump information, and the like.

描画部120は、頂点シェーダ部(頂点処理部)122、ピクセルシェーダ部(ピクセル処理部)124を含む。   The drawing unit 120 includes a vertex shader unit (vertex processing unit) 122 and a pixel shader unit (pixel processing unit) 124.

頂点シェーダ部122は、頂点単位の処理(per vertex processing)である頂点処理を行う。この頂点処理では、頂点処理プログラム(頂点シェーダプログラム、第1のシェーダプログラム)に従って、頂点の移動処理、座標変換処理(ワールド座標変換、カメラ座標変換、頂点座標変換)、ライティング処理、或いはデータ出力処理(レジスタ格納処理)等が行われる。そして、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データが変更(更新、調整)される。そして、頂点処理後の頂点データに基づいてラスタライズ(走査変換)が行われ、ポリゴン(プリミティブ)の面とピクセルとが対応づけられる。   The vertex shader unit 122 performs vertex processing which is processing per vertex (per vertex processing). In this vertex processing, according to a vertex processing program (vertex shader program, first shader program), vertex movement processing, coordinate conversion processing (world coordinate conversion, camera coordinate conversion, vertex coordinate conversion), lighting processing, or data output processing (Register storage processing) is performed. Then, based on the processing result, the vertex data given for the vertex group constituting the object is changed (updated, adjusted). Then, rasterization (scan conversion) is performed based on the vertex data after the vertex processing, and the surface of the polygon (primitive) is associated with the pixel.

そしてこのラスタライズに続いて、ピクセルシェーダ部124は、ピクセル単位の処理(per pixel processing)であるピクセル処理を行う。このピクセル処理(ピクセルシェーダによるシェーディング、フラグメント処理)では、ピクセル処理プログラム(ピクセルシェーダプログラム、第2のシェーダプログラム)に従って、テクスチャのフェッチ(テクスチャマッピング)、ライティング処理、色データの設定/変更、半透明合成、アンチエイリアス等が行われる。そして画像を構成するピクセルの最終的な描画色を決定し、透視変換されたオブジェクトの描画色を描画バッファ174(ピクセル単位で画像情報を記憶できるバッファ。VRAM、レンダリングターゲット)に出力(描画)する。即ち、ピクセル処理では、画像情報(色、法線、輝度、α値等)をピクセル単位で設定あるいは変更するパーピクセル処理を行う。これにより、オブジェクト空間内において仮想カメラ(所与の視点)から見える画像が生成される。   Following this rasterization, the pixel shader unit 124 performs pixel processing, which is per pixel processing. In this pixel processing (shading by pixel shader, fragment processing), texture fetching (texture mapping), lighting processing, color data setting / changing, translucency according to the pixel processing program (pixel shader program, second shader program) Synthesis, anti-aliasing, etc. are performed. Then, the final drawing color of the pixels constituting the image is determined, and the drawing color of the perspective-transformed object is output (drawn) to the drawing buffer 174 (buffer that can store image information in units of pixels; VRAM, rendering target). . That is, in pixel processing, per-pixel processing for setting or changing image information (color, normal, luminance, α value, etc.) in units of pixels is performed. Thereby, an image that can be seen from the virtual camera (given viewpoint) in the object space is generated.

なお頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、ポリゴン(プリミティブ)の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ(頂点シェーダやピクセルシェーダ)により実現できる。プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、従来のハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。   The vertex processing and the pixel processing can be realized by hardware that enables a polygon (primitive) drawing process to be programmed by a shader program described in a shading language, that is, a so-called programmable shader (vertex shader or pixel shader). Programmable shaders can be programmed with vertex-level processing and pixel-level processing, so that the degree of freedom of drawing processing is high, and expressive power is greatly improved compared to conventional hardware-based fixed drawing processing. Can do.

そして本実施形態ではオブジェクト空間設定部110が、キャラクタ(モデルオブジェクト)が移動するオブジェクト空間の設定を行う。またテクスチャ記憶部178が、キャラクタ(モデルオブジェクト)を構成する複数のパーツオブジェクトのうちの第1のパーツオブジェクトの展開図に対応した色パターンを有し、第1のパーツオブジェクトの表面の色がテクセルに設定される展開図方式のカラーマップテクスチャを記憶する。また第1のパーツオブジェクトの展開図に対応した反射情報パターンを有し、反射情報がテクセルに設定される展開図方式の反射マップテクスチャを記憶する。   In this embodiment, the object space setting unit 110 sets an object space in which the character (model object) moves. Further, the texture storage unit 178 has a color pattern corresponding to the developed view of the first part object among the plurality of part objects constituting the character (model object), and the surface color of the first part object is texel. Stores the color map texture of the development scheme set to “1”. Further, a reflection map texture having a reflection information pattern corresponding to the development drawing of the first part object and reflection information set in the texel is stored.

そしてピクセルシェーダ部124が含むライティング処理部126がライティング処理を行う。具体的にはこのライティング処理は、光源情報(ライトベクトル、光源色、明るさ、光源タイプ等)、照明モデル、法線ベクトル、オブジェクトのマテリアル・パラメータ(色、材質)などを用いて行われる。なお照明モデルとしては、アンビエント光とディフューズ光だけを考慮したランバードの照明モデルや、アンビエント光、ディフューズ光に加えてスペキュラ光も考慮するフォンの照明モデルやブリン・フォンの照明モデルなどがある。   The lighting processing unit 126 included in the pixel shader unit 124 performs the lighting process. Specifically, this lighting processing is performed using light source information (light vector, light source color, brightness, light source type, etc.), illumination model, normal vector, object material parameters (color, material), and the like. As lighting models, there are lumbard lighting models that consider only ambient light and diffuse light, phon lighting models that consider specular light in addition to ambient light and diffuse light, and Brin phon lighting models. .

そして本実施形態ではライティング処理部126が、テクスチャ記憶部178に記憶される反射マップテクスチャのテクセルに設定された反射情報と、照明モデル(照明モデルの演算式)と、光源情報(ライトベクトル)に基づいて、第1のパーツオブジェクトのライティング処理を行う。例えばキャラクタの表面のうち、ライティング処理が行われる領域として設定されるライティング処理領域(例えば液体付着領域)において、光沢(光の反射)を表現するためのライティング処理(スペキュラ演算)を行う。例えば反射マップテクスチャの反射情報(反射率)をマスク情報として用いて、反射情報によりライティング処理領域とそれ以外の領域を判別し、判別されたライティング処理領域に対して、反射情報と照明モデルと光源情報に基づくライティング処理を行う。例えば、反射マップテクスチャのテクセルのうち、ライティング処理領域以外の領域に対応するテクセルでは、スペキュラ演算を無効にする第1の値(例えば0の値)が設定され、ライティング処理領域に対応するテクセルでは、第1の値以外の値(例えば0より大きく、1以下の値)に設定される。そして反射情報が第1の値に設定されている場合に、スペキュラ演算により得られるスペキュラ値を0にする。一方、反射情報が第1の値以外の値に設定される場合には、その値を反射率としてスペキュラ演算を行う。   In this embodiment, the lighting processing unit 126 uses the reflection information set in the texels of the reflection map texture stored in the texture storage unit 178, the illumination model (the lighting model arithmetic expression), and the light source information (light vector). Based on this, the lighting process of the first part object is performed. For example, a lighting process (specular calculation) for expressing gloss (reflection of light) is performed in a lighting process area (for example, a liquid adhesion area) set as an area where the lighting process is performed on the surface of the character. For example, using the reflection information (reflectance) of the reflection map texture as mask information, the lighting processing area and other areas are discriminated based on the reflection information, and the reflection information, lighting model, and light source are determined for the determined lighting processing area. Perform lighting processing based on information. For example, among the texels of the reflection map texture, a texel corresponding to a region other than the lighting processing region is set with a first value (for example, a value of 0) that invalidates the specular calculation, and a texel corresponding to the lighting processing region. , A value other than the first value (for example, a value greater than 0 and 1 or less) is set. When the reflection information is set to the first value, the specular value obtained by the specular calculation is set to zero. On the other hand, when the reflection information is set to a value other than the first value, the specular calculation is performed using that value as the reflectance.

なお第1のパーツオブジェクトは、キャラクタの例えば腕、顔(頭)、足、又は武器(剣、拳銃等)のオブジェクトであり、ライティング処理部126は、反射マップテクスチャのテクセルに設定された反射情報と照明モデルと光源情報に基づいて、キャラクタの腕、顔、足、又は武器のオブジェクトのライティング処理を行う。   Note that the first part object is, for example, an arm, face (head), foot, or weapon (sword, handgun, etc.) object of the character, and the lighting processing unit 126 reflects the reflection information set in the texel of the reflection map texture. Based on the lighting model and the light source information, lighting processing is performed on the character's arm, face, foot, or weapon object.

また本実施形態ではテクスチャ記憶部178が、第1のパーツオブジェクトの表面の凹凸(バンプ)を表すための法線マップテクスチャを記憶する。具体的には、第1のパーツオブジェクトの展開図に対応した法線ベクトルパターンを有し、法線ベクトルの情報がテクセルに設定される展開図方式の法線マップテクスチャを記憶する。そしてピクセルシェーダ部124が含むバンプ処理部128は、テクスチャ記憶部178からフェッチした法線マップテクスチャに基づいて、第1のオブジェクトの表面の凹凸を表すためのバンプ処理を行う。具体的には、法線マップテクスチャのテクセルに設定された法線ベクトルの情報に基づいて、ライティング処理領域においてバンプ処理を行い、第1のパーツオブジェクトの表面にあたかも凹凸があるかのように見える、シェーディング処理を施す。なおライティング処理部126やバンプ処理部128をピクセルシェーダ部124に含ませない変形実施も可能である。   In the present embodiment, the texture storage unit 178 stores a normal map texture for representing the unevenness (bump) on the surface of the first part object. Specifically, it stores a normal map texture of a development map method having a normal vector pattern corresponding to the development drawing of the first part object, and information of the normal vector set in the texel. The bump processing unit 128 included in the pixel shader unit 124 performs a bump process for representing the unevenness of the surface of the first object based on the normal map texture fetched from the texture storage unit 178. Specifically, bump processing is performed in the lighting processing area based on the information of the normal vector set in the texel of the normal map texture, and the surface of the first part object appears as if there is an unevenness. The shading process is performed. Note that a modification may be made in which the lighting processing unit 126 and the bump processing unit 128 are not included in the pixel shader unit 124.

音生成部130は、処理部100で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部192に出力する。   The sound generation unit 130 performs sound processing based on the results of various processes performed by the processing unit 100, generates game sounds such as BGM, sound effects, or sounds, and outputs the game sounds to the sound output unit 192.

なお、本実施形態の画像生成システムは、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末(ゲーム機、携帯電話)を用いて分散処理により生成してもよい。   Note that the image generation system of the present embodiment may be a system dedicated to the single player mode in which only one player can play, or may be a system having a multiplayer mode in which a plurality of players can play. Further, when a plurality of players play, game images and game sounds to be provided to the plurality of players may be generated using one terminal, or connected via a network (transmission line, communication line) or the like. Alternatively, it may be generated by distributed processing using a plurality of terminals (game machine, mobile phone).

2.本実施形態の手法
2.1 展開図方式のテクスチャによるライティング処理
図2(A)に、キャラクタを構成する第1のパーツオブジェクトPOBの例を示す。実際のキャラクタのパーツオブジェクトは、多数のポリゴンにより複雑に形成されているが、図2(A)では説明を簡素化するために、パーツオブジェクトPOBが6角柱である場合の例を示している。
2. 2. Method of this Embodiment 2.1 Lighting Processing Using Texture in a Development View Method FIG. 2A shows an example of a first part object POB constituting a character. Although an actual character part object is formed in a complex manner by a large number of polygons, FIG. 2A shows an example in which the part object POB is a hexagonal prism in order to simplify the description.

本実施形態ではキャラクタは、立体形状の複数のパーツオブジェクト(部位オブジェクト)により構成される。具体的には、キャラクタの右腕、左腕、頭(顔)、右足、左足、武器、又は胴等を表すパーツオブジェクトにより構成される。そしてこれらのパーツオブジェクトに対して、各パーツオブジェクトの展開図に対応したカラーマップテクスチャ、反射マップテクスチャ、法線マップテクスチャが用意されて、各パーツオブジェクトにマッピングされる。   In the present embodiment, the character is composed of a plurality of three-dimensional part objects (part objects). Specifically, it is composed of part objects representing a character's right arm, left arm, head (face), right foot, left foot, weapon, or torso. For these part objects, a color map texture, a reflection map texture, and a normal map texture corresponding to the development of each part object are prepared and mapped to each part object.

例えば図2(B)(C)に、図2(A)の6角柱のパーツオブジェクトPOBにマッピングされる展開図方式のカラーマップテクスチャ、反射マップテクスチャの例を示す。図2(B)のカラーマップテクスチャは、パーツオブジェクトPOBの展開図に対応した色パターンを有し、パーツオブジェクトPOBの表面の色がテクセルに設定されるテクスチャである。また図2(C)の反射マップテクスチャは、パーツオブジェクトPOBの展開図に対応した反射情報パターンを有し、パーツオブジェクトPOBにマッピングすべき反射情報がテクセルに設定されるテクスチャである。本実施形態ではライティング処理部126が、反射マップテクスチャのテクセルに設定された反射情報と照明モデルと光源情報に基づいて、パーツオブジェクトPOBのライティング処理を行う。   For example, FIGS. 2B and 2C show examples of color map textures and reflection map textures in a developed view that are mapped to the hexagonal column part object POB in FIG. The color map texture of FIG. 2B has a color pattern corresponding to the development view of the part object POB, and is a texture in which the surface color of the part object POB is set to texel. The reflection map texture of FIG. 2C has a reflection information pattern corresponding to the development view of the part object POB, and is a texture in which reflection information to be mapped to the part object POB is set in the texel. In the present embodiment, the lighting processing unit 126 performs the lighting processing of the part object POB based on the reflection information, the illumination model, and the light source information set in the texel of the reflection map texture.

例えば本実施形態ではキャラクタ(パーツオブジェクト)の肌(広義には表面)に付着する汗(広義には液体、水分)の画像表現を以下の手法により実現している。なお以下では、本実施形態の手法を、キャラクタの表面に付着する液体の光の反射に適用した場合を例にとり説明するが、本実施形態の手法はこれに限定されず、液体以外の物体による光の反射にも適用できる。例えばキャラクタが着る服による光の反射や、キャラクタが身につける装飾品による光の反射や、キャラクタが所持する武器(例えば剣、銃)の表面での光の反射にも、本実施形態の手法は適用できる。また以下では、キャラクタに付着する液体が汗である場合を例にとり説明するが、本実施形態の液体は汗に限定されない。例えば雨のしずくや、キャラクタの目から流れる涙等であってもよい。或いは海から出現する半漁人等のモンスターの表面に付着する液体等であってもよい。   For example, in the present embodiment, image representation of sweat (liquid, moisture in a broad sense) adhering to the skin (surface in a broad sense) of a character (part object) is realized by the following method. In the following description, the method of the present embodiment is described as an example in which the method of the present invention is applied to the reflection of light of the liquid adhering to the surface of the character. However, the method of the present embodiment is not limited to this and depends on an object other than the liquid. It can also be applied to light reflection. For example, the method of the present embodiment is also applicable to the reflection of light by clothes worn by a character, the reflection of light by ornaments worn by the character, and the reflection of light on the surface of a weapon (eg, sword, gun) possessed by the character. Is applicable. Hereinafter, a case where the liquid adhering to the character is sweat will be described as an example, but the liquid of the present embodiment is not limited to sweat. For example, it may be rain drops or tears flowing from the eyes of the character. Or the liquid etc. which adhere to the surface of monsters, such as a half fisherman who emerges from the sea, may be sufficient.

本実施形態ではキャラクタの汗を表現するために、図3(A)に模式的に示される反射マップテクスチャをテクスチャ記憶部178に記憶する。この反射マップテクスチャでは、そのテクセルに、汗の光沢(テカリ)を表現するための反射情報が設定される。この反射情報としては、汗での光の反射率や、汗での反射光の光沢色(光源色)などが考えられる。この反射情報は、液体により光が反射する領域と反射しない領域を区別するためのマスク情報としても機能することができる。   In this embodiment, in order to express the sweat of the character, the reflection map texture schematically shown in FIG. 3A is stored in the texture storage unit 178. In this reflection map texture, reflection information for expressing the gloss of sweat (shine) is set in the texel. As this reflection information, the reflectance of light with sweat, the glossy color (light source color) of the reflected light with sweat, and the like can be considered. This reflection information can also function as mask information for distinguishing between a region where light is reflected by a liquid and a region where light is not reflected.

例えば図3(A)では、キャラクタの肌(表面)のうち汗(液体)が付着する領域として設定される汗付着領域(広義にはライティング処理領域)に対応する反射マップテクスチャのテクセル(テクセル領域)において、反射率Ksが例えば1.0(最大値)に設定される。これにより、キャラクタの汗付着領域には反射率Ks=1.0の反射マップテクスチャがマッピングされるようになる。一方、汗付着領域(ライティング処理領域)以外の領域に対応するテクセルでは、ライティング処理のスペキュラ演算を無効にする第1の値である例えば0.0(最小値)に、反射率Ksが設定される。これにより、この領域には反射率Ks=0.0の反射マップテクスチャがマッピングされるようになる。そしてこのように反射率Ks(反射情報)が0.0(第1の値)に設定されると、ライティング処理部126によるスペキュラ演算が無効にされて、スペキュラ値が0になる。なお図3(A)では、反射マップテクスチャのテクセルに設定される反射率Ksが0.0と1.0である場合を示しているが、これの中間の値をテクセルに設定してもよい。例えば反射率Ks=1.0である領域からKs=0.0である領域に向かって、反射率Ksが徐々に減少するようなグラディエーション設定を行ってもよい。   For example, in FIG. 3A, a texel (texel area) of a reflection map texture corresponding to a sweat adhesion area (lighting processing area in a broad sense) set as an area to which sweat (liquid) adheres in the skin (surface) of the character. ), The reflectance Ks is set to 1.0 (maximum value), for example. As a result, a reflection map texture having a reflectance Ks = 1.0 is mapped onto the sweat adhesion region of the character. On the other hand, in a texel corresponding to an area other than the sweat adhesion area (lighting processing area), the reflectance Ks is set to, for example, 0.0 (minimum value), which is a first value that invalidates the specular calculation of the lighting processing. The As a result, a reflection map texture having a reflectance Ks = 0.0 is mapped in this area. When the reflectance Ks (reflection information) is set to 0.0 (first value) in this way, the specular calculation by the lighting processing unit 126 is invalidated and the specular value becomes zero. FIG. 3A shows the case where the reflectance Ks set in the texel of the reflection map texture is 0.0 and 1.0, but an intermediate value between them may be set in the texel. . For example, the gradient setting may be performed such that the reflectance Ks gradually decreases from the region where the reflectance Ks = 1.0 toward the region where Ks = 0.0.

さて、現実世界での照光現象をシミュレートするための数学的モデルとして、この種の画像生成システムでは種々の照明モデルが用いられている。図3(B)に、光源が平行光である場合の照明モデルの例を示す。このブリン・フォンの照明モデル(鏡面反射モデル)は例えば下式(1)で表すことができる。   Now, as a mathematical model for simulating an illumination phenomenon in the real world, various illumination models are used in this type of image generation system. FIG. 3B shows an example of an illumination model when the light source is parallel light. This Brin Fong illumination model (specular reflection model) can be expressed by the following equation (1), for example.

I=Ks×(N・H)×Is+Kd×(N・L)×Id+Ka×Ia (1)
ここでKs、Kd、Kaは、各々、スペキュラ光、ディフューズ光、アンビエント光についての反射率(反射係数)であり、Is、Id、Iaは、スペキュラ光、ディフューズ光、アンビエント光の強度(輝度、色)である。Nはオブジェクトの法線ベクトルであり、Lは光源LSのライトベクトルであり、Hはハーフベクトルであり、Pは鏡面反射指数(ハイライト特性係数)である。またハーフベクトルHは、H=(E+L)/|E+L|と表すことができる。
I = Ks * (N * H) P * Is + Kd * (N * L) * Id + Ka * Ia (1)
Here, Ks, Kd, and Ka are reflectivities (reflection coefficients) for specular light, diffuse light, and ambient light, respectively, and Is, Id, and Ia are intensities of specular light, diffuse light, and ambient light ( Brightness, color). N is a normal vector of the object, L is a light vector of the light source LS, H is a half vector, and P is a specular reflection index (highlight characteristic coefficient). The half vector H can be expressed as H = (E + L) / | E + L |.

このブリン・フォンの照明モデルでは、スペキュラ光の強さは法線ベクトルNとハーフベクトルHの内積のべき乗で表される。従って、法線ベクトルNとハーフベクトルHの向きが近くなる場所ほど、スペキュラ光が強くなる。また鏡面反射指数Pが例えば10以下というように小さい場合には、広い範囲にわたって鏡面反射のハイライトが広がり、鏡面反射指数Pが例えば100ぐらいに大きい場合には、ハイライトが小さな点になる。   In the Brin von lighting model, the intensity of specular light is expressed by the power of the inner product of the normal vector N and the half vector H. Accordingly, the specular light becomes stronger as the direction of the normal vector N and the half vector H becomes closer. Further, when the specular reflection index P is as small as 10 or less, for example, the specular reflection highlight spreads over a wide range, and when the specular reflection index P is as large as about 100, the highlight becomes a small point.

本実施形態の照明モデルは下式(2)で表されるようなフォンの照明モデルであってもよい。   The illumination model of the present embodiment may be a phone illumination model represented by the following equation (2).

I=Ks×(L・R)×Is+Kd×(N・L)×Id+Ka×Ia (2)
ここでRは反射ベクトルであり、R=−E+2(N・E)Nの式により求めることができる。このフォンの照明モデルでは、スペキュラ光の強さはライトベクトルLと反射ベクトルRの内積のべき乗で表される。従って、ライトベクトルLと反射ベクトルRの向きが近くなる場所ほど、スペキュラ光が強くなる。
I = Ks * (L * R) P * Is + Kd * (N * L) * Id + Ka * Ia (2)
Here, R is a reflection vector, and can be obtained by the equation R = −E + 2 (N · E) N. In this Phong illumination model, the intensity of specular light is expressed as the power of the inner product of the light vector L and the reflection vector R. Therefore, the specular light becomes stronger as the direction of the light vector L and the reflection vector R becomes closer.

なお本実施形態の照明モデルは上式(1)(2)の照明モデルに限定されない。例えば上式(1)(2)の照明モデルに対して明るさ補正等を行ってもよいし、上式(1)(2)とは異なる式で表される照明モデルを用いてもよい。   In addition, the illumination model of this embodiment is not limited to the illumination model of said Formula (1) (2). For example, brightness correction or the like may be performed on the illumination models of the above formulas (1) and (2), or an illumination model represented by a formula different from the above formulas (1) and (2) may be used.

そして本実施形態ではライティング処理部126が、図3(A)の反射マップテクスチャの反射情報と、図3(B)の照明モデルと、光源情報に基づいて、キャラクタの表面のライティング処理を行っている。具体的には汗付着領域において汗の光の反射を表すためのライティング処理を行っている。   In this embodiment, the lighting processing unit 126 performs lighting processing on the surface of the character based on the reflection information of the reflection map texture in FIG. 3A, the illumination model in FIG. 3B, and the light source information. Yes. Specifically, a lighting process is performed to represent the reflection of sweat light in the sweat adhesion region.

例えば比較例の手法として、キャラクタの汗付着領域に汗の色の着色処理を行うことで、汗を表現する手法が考えられる。具体的には汗付着領域に汗のカラーマップテクスチャをマッピングする。   For example, as a method of a comparative example, a method of expressing sweat by performing a coloring process of sweat color on a sweat adhesion region of a character is conceivable. Specifically, a sweat color map texture is mapped to the sweat adhesion region.

しかしながら、この比較例の手法では、視線ベクトル、ライトベクトル、キャラクタの位置・方向関係が変化しても、汗の光沢は変化せず、常に同じような汗の画像が生成されるため、リアル感に乏しい。   However, in this comparative method, even if the line-of-sight vector, light vector, and character position / direction relationship change, the sweat gloss does not change, and the same sweat image is always generated. It is scarce.

これに対して本実施形態の手法によれば、視線ベクトル、ライトベクトル、キャラクタの位置・方向関係が変化すると、それに応じて汗での光の反射の具合が変化するようになる。例えば図3(B)において、ハーフベクトルHとキャラクタの法線ベクトルNのなす角度(或いはLとRのなす角度)が0度に近い位置・方向関係になると、汗付着領域において汗の光が強く反射して見える画像が生成される。一方、ハーフベクトルHと法線ベクトルNのなす角度(或いはLとRのなす角度)が大きくなる位置・方向関係になると、汗付着領域における汗の光の反射が弱い画像が生成される。従って、比較例の手法に比べて、生成される画像のリアル度を格段に向上できる。   On the other hand, according to the method of the present embodiment, when the line-of-sight vector, the light vector, and the position / direction relationship of the character change, the degree of reflection of light by sweat changes accordingly. For example, in FIG. 3B, when the angle formed by the half vector H and the normal vector N of the character (or the angle formed by L and R) is close to 0 degrees, the light of sweat is generated in the sweat adhesion region. An image that appears strongly reflected is generated. On the other hand, when the positional relationship between the half vector H and the normal vector N (or the angle between L and R) is large, an image in which the reflection of sweat light in the sweat adhesion region is weak is generated. Therefore, compared to the method of the comparative example, the realism of the generated image can be significantly improved.

例えば本実施形態をサッカーゲーム等のスポーツゲームに適用した場合を考える。この場合に、キャラクタがスタジアムのフィールド上を移動した時に、キャラクタの肌の法線ベクトルNの方向と、スタジアムに配置された照明からのライトベクトルLの方向と、キャラクタを追う仮想カメラの視線ベクトルEの位置・方向関係に応じて、キャラクタの汗の光具合がリアルタイムに変化する。従って、あたかも本当の人間がサッカーをプレイしているかのような見える仮想現実感をプレーヤに与えることができる。   For example, consider a case where the present embodiment is applied to a sports game such as a soccer game. In this case, when the character moves on the field of the stadium, the direction of the normal vector N of the skin of the character, the direction of the light vector L from the lighting arranged in the stadium, and the line-of-sight vector of the virtual camera that follows the character Depending on the position / direction relationship of E, the light of the character's sweat changes in real time. Therefore, it is possible to give the player a virtual reality that looks as if a real person is playing soccer.

また本実施形態では、反射マップテクスチャの反射情報である反射率Ksが0.0に設定されると、その部分に光があたっても、スペキュラ演算が無効になり、光の鏡面反射が起こらないようになる。従って、鏡面反射が起きると不自然になる部分については、Ks=0.0に設定するだけでスペキュラ演算を無効にできるようになり、キャラクタのデザインを容易化できる。   In the present embodiment, when the reflectance Ks, which is the reflection information of the reflection map texture, is set to 0.0, the specular calculation is invalidated even if the portion is exposed to light, and no specular reflection of light occurs. It becomes like this. Therefore, the specular calculation can be invalidated only by setting Ks = 0.0 for a portion that becomes unnatural when specular reflection occurs, and the character design can be facilitated.

2.2 展開図方式のテクスチャの詳細例
図4、図5、図6に、各々、本実施形態で使用されるカラーマップテクスチャ、反射マップテクスチャ、法線マップテクスチャの詳細例を示す。これらのテクスチャは、キャラクタを構成する複数のパーツオブジェクトのうちの腕のパーツオブジェクトにマッピングされるテクスチャである。
2.2 Detailed example of texture in developed view method FIGS. 4, 5, and 6 show detailed examples of the color map texture, reflection map texture, and normal map texture used in this embodiment, respectively. These textures are textures mapped to arm part objects among a plurality of part objects constituting the character.

例えば図4のカラーマップテクスチャは、腕パーツオブジェクト(広義には第1のパーツオブジェクト)の展開図に対応した色パターン(テクスチャ色のパターン)を有する。そして腕パーツオブジェクトの表面の色がカラーマップテクスチャのテクセルに設定される。即ち閉じた図形である立体形状の腕パーツオブジェクトを、開いた図形である展開図にした場合に、この展開図に対してマッピングされるべき色パターンを有するカラーマップテクスチャを用意する。別の言い方をすれば、腕パーツオブジェクトを包み込むようにマッピングされる1枚のカラーマップテクスチャを用意する。例えば図4のカラーマップテクスチャは、腕(広義には部位)の表の部分と裏の部分は異なる色パターンになっており、腕の下腕部分と上腕部分も異なる色パターンになっている。そしてこのように腕の各部分の色パターンが異なる展開図方式のカラーマップテクスチャを、腕パーツオブジェクトを包み込むようにマッピングする。   For example, the color map texture of FIG. 4 has a color pattern (texture color pattern) corresponding to a development view of an arm part object (first part object in a broad sense). Then, the color of the surface of the arm part object is set in the texel of the color map texture. That is, when a three-dimensional arm part object that is a closed figure is turned into an expanded view that is an open figure, a color map texture having a color pattern to be mapped to the developed view is prepared. In other words, one color map texture is prepared which is mapped so as to wrap the arm part object. For example, in the color map texture of FIG. 4, the front and back portions of the arms (parts in a broad sense) have different color patterns, and the lower arm portions and upper arm portions of the arms also have different color patterns. In this way, the color map texture of the development scheme in which the color pattern of each part of the arm is different is mapped so as to wrap the arm part object.

例えば図9(A)の比較例の手法では、パーツオブジェクトPOBが複数のポリゴンPLにより構成される。そしてこれらの複数の各ポリゴンPLに対して、肌の模様を表すカラーマップテクスチャTEXを繰り返しマッピングすることで腕の画像を生成する。   For example, in the method of the comparative example of FIG. 9A, the part object POB is composed of a plurality of polygons PL. An arm image is generated by repeatedly mapping the color map texture TEX representing the skin pattern on each of the plurality of polygons PL.

この比較例の手法では、テクスチャの使用記憶容量を節約できるという利点がある。しかしながら、腕の各部分での肌の模様が同じになるため、生成される画像が単調になる。従って、ポリゴンで作った人工的に見えるキャラクタ画像が生成されてしまい、プレーヤの仮想現実感を向上できない。   The method of this comparative example has an advantage that the storage capacity of the texture can be saved. However, since the skin pattern in each part of the arm is the same, the generated image is monotonous. Therefore, an artificially visible character image made of polygons is generated, and the virtual reality of the player cannot be improved.

これに対して図4に示すようなカラーマップテクスチャを用いれば、腕の各部分のディテール画像をカラーマップテクスチャに描くことができる。従って、図9(A)の比較例の手法に比べて、生成される腕の画像のリアル度を格段に向上できる。そして本当の人間の肌の色を持つようなリアルなキャラクタ画像を生成でき、プレーヤの仮想現実感を向上できる。   On the other hand, if a color map texture as shown in FIG. 4 is used, a detail image of each part of the arm can be drawn on the color map texture. Therefore, compared to the method of the comparative example in FIG. 9A, the realism of the generated arm image can be significantly improved. Then, a real character image having a real human skin color can be generated, and the virtual reality of the player can be improved.

そして本実施形態では図5に示すように、図4のカラーマップテクスチャと同様に、反射マップテクスチャについても展開図方式のテクスチャを用いている。この図5の反射マップテクスチャは、腕パーツオブジェクトの展開図に対応した反射情報パターン(マスクパターン)を有する。そして腕パーツオブジェクトの表面にマッピングすべき反射情報が反射マップテクスチャのテクセルに設定される。即ち、閉じた図形である腕パーツオブジェクトの展開図に対してマッピングされるべき反射情報パターンを有する反射マップテクスチャを用意する。別の言い方をすれば、腕パーツオブジェクトを包み込むようにマッピングされる1枚の反射マップテクスチャを用意する。例えば図5の反射マップテクスチャは、腕の表の部分と裏の部分は異なる反射情報パターンになっており、腕の下腕部分と上腕部分も異なる反射情報パターンになっている。そして、このように腕の各部分の反射情報パターンが異なる展開図方式の反射マップテクスチャを、腕パーツオブジェクトを包み込むようにマッピングする。   In this embodiment, as shown in FIG. 5, similarly to the color map texture of FIG. 4, a development map type texture is used for the reflection map texture. The reflection map texture of FIG. 5 has a reflection information pattern (mask pattern) corresponding to the development view of the arm part object. Then, the reflection information to be mapped on the surface of the arm part object is set in the texel of the reflection map texture. That is, a reflection map texture having a reflection information pattern to be mapped to a developed view of an arm part object that is a closed figure is prepared. In other words, one reflection map texture is prepared which is mapped so as to enclose the arm part object. For example, in the reflection map texture of FIG. 5, the front and back portions of the arms have different reflection information patterns, and the lower arm portion and the upper arm portion of the arms also have different reflection information patterns. Then, the reflection map texture of the development view method in which the reflection information pattern of each part of the arm is different is mapped so as to wrap the arm part object.

例えば図9(B)の比較例の手法では、円の中心に近づくほど明るくなり、円の中心から遠ざかるほど暗くなる反射マップテクスチャを用意する。そしてハーフベクトルHと法線ベクトルLの方向が一致する場合には、円の中心付近の反射情報(反射率=1.0)がフェッチされてマッピングされる。一方、ハーフベクトルHと法線ベクトルLの方向が一致しない場合には、円の輪郭付近の反射情報(反射率=0.0)がフェッチされてマッピングされる。   For example, in the method of the comparative example in FIG. 9B, a reflection map texture is prepared that becomes brighter as it approaches the center of the circle and becomes darker as it moves away from the center of the circle. When the directions of the half vector H and the normal vector L coincide, reflection information (reflectance = 1.0) near the center of the circle is fetched and mapped. On the other hand, when the directions of the half vector H and the normal vector L do not match, the reflection information (reflectance = 0.0) near the contour of the circle is fetched and mapped.

しかしながらこの比較例の手法では、ハーフベクトルHと法線ベクトルLが一致する場所にハイライトが生成されるというような単調なスペキュラ効果しか実現できない。従って、キャラクタの汗による光のスペキュラ効果を実現するのが困難となる。   However, in the method of this comparative example, only a monotone specular effect in which a highlight is generated at a place where the half vector H and the normal vector L coincide with each other can be realized. Therefore, it becomes difficult to realize the specular effect of light due to the sweat of the character.

これに対して本実施形態では、腕パーツオブジェクトの各部分のうちライティング処理領域に対応する反射マップテクスチャのテクセル領域に対して、高い反射率の反射情報を描くだけで、ライティング処理領域での光のスペキュラ効果を実現できる。従って、反射マップテクスチャの反射情報パターンを変えるだけで、種々の反射パターンのスペキュラ効果を表現でき、リアルなキャラクタ画像を生成できる。例えば図4のカラーマップテクスチャにおいて、筋肉の筋を表す画像パターンを描いたとする。この場合には、図5の反射マップテクスチャにおいて、筋肉の筋を表すパターン画像に対応する領域のテクセルに対して、キャラクタの汗を表現するために、高い反射率の反射情報を書き込む。即ちカラーマップテクスチャに所与の画像パターンが描かれた場合に、反射マップテクスチャのテクセル(その画像パターンが描かれた領域に対応するテクセル)に対して、その画像パターンに対応した反射情報を書き込む。このようにすれば、キャラクタの腕の筋肉の筋に沿って例えば汗等が流れているかのように見える画像を生成できる。   On the other hand, in the present embodiment, the light in the lighting processing area is simply drawn on the texel area of the reflection map texture corresponding to the lighting processing area in each part of the arm part object. The specular effect can be realized. Accordingly, by changing the reflection information pattern of the reflection map texture, the specular effect of various reflection patterns can be expressed, and a realistic character image can be generated. For example, it is assumed that an image pattern representing muscle muscles is drawn in the color map texture of FIG. In this case, in the reflection map texture of FIG. 5, reflection information having a high reflectance is written to the texels in the region corresponding to the pattern image representing the muscle muscles in order to express the sweat of the character. That is, when a given image pattern is drawn on the color map texture, the reflection information corresponding to the image pattern is written to the texel of the reflection map texture (texel corresponding to the area where the image pattern is drawn). . In this way, it is possible to generate an image that looks as if sweat or the like is flowing along the muscles of the arm muscles of the character.

また本実施形態では図6に示すように、図4のカラーマップテクスチャや図5の反射マップテクスチャと同様に、法線マップテクスチャについても展開図方式のテクスチャを用いている。この図6の法線マップテクスチャは、腕パーツオブジェクトの展開図に対応した法線ベクトルパターン(マスクパターン)を有する。そして腕パーツオブジェクトの表面にマッピングすべき法線ベクトルが法線マップテクスチャのテクセルに設定される。即ち、展開図の図形に対してマッピングされるべき法線ベクトルパターンを有する法線マップテクスチャを用意する。別の言い方をすれば、腕パーツオブジェクトを包み込むようにマッピングされる1枚の法線マップテクスチャを用意する。そしてこのように腕の各部分の法線ベクトルパターンが異なる展開図方式の法線マップテクスチャを、腕パーツオブジェクトを包み込むようにマッピングする。   Further, in the present embodiment, as shown in FIG. 6, similarly to the color map texture of FIG. 4 and the reflection map texture of FIG. The normal map texture of FIG. 6 has a normal vector pattern (mask pattern) corresponding to the developed view of the arm part object. The normal vector to be mapped to the surface of the arm part object is set in the texel of the normal map texture. That is, a normal map texture having a normal vector pattern to be mapped to a developed figure is prepared. In other words, one normal map texture that is mapped so as to wrap around the arm part object is prepared. In this way, the normal map texture of the developed view method in which the normal vector pattern of each part of the arm is different is mapped so as to wrap the arm part object.

図7に本実施形態により生成されるキャラクタの腕の画像の例を示す。図7では、キャラクタの腕の汗の光沢がリアルに表現されている。そして図3(B)の法線ベクトルNとハーフベクトルH(或いはLとR)の方向が一致すると、汗付着領域(ライティング処理領域)での汗の光沢が増し、これらのベクトルの方向が一致しなくなると、汗付着領域での汗の光沢が減るようになる。また図7では、キャラクタの筋肉の筋等にそって汗の光沢が表現される。また本実施形態では汗の凹凸を法線マップテクスチャを用いて表現しているため、平面的ではなく立体的に見える汗が表現される。   FIG. 7 shows an example of an arm image of a character generated by this embodiment. In FIG. 7, the gloss of sweat of the arm of the character is expressed realistically. When the directions of the normal vector N and the half vector H (or L and R) in FIG. 3B coincide with each other, the gloss of sweat in the sweat adhesion region (lighting processing region) increases, and the directions of these vectors are equal. Failure to do so reduces the gloss of sweat in the sweat adhesion area. Further, in FIG. 7, the gloss of sweat is expressed along the muscle muscles of the character. In the present embodiment, since the unevenness of sweat is expressed using a normal map texture, sweat that appears stereoscopically rather than planarly is expressed.

図8に本実施形態により生成されるキャラクタの顔(頭)の画像の例を示す。図8では、キャラクタの顔のひたいや、目の下や、唇の上に汗付着領域(ライティング処理領域)が設定される。そして本実施形態では、ライティング処理部126が、これらの汗付着領域において、汗の光沢を表すためのライティング処理を行い、バンプ処理部128が、汗の凹凸を表すためのバンプ処理を、これらの汗付着領域において行う。こうすることで、これらの汗付着領域では、汗の光沢のみならず汗(肌)の凹凸も表現されるようになる。即ち、ライトにより光る汗が、あたかも肌(皮膚)の凹凸に沿って付着しているかのように見える画像を生成でき、本物の肌に汗が付着しているかのような印象をプレーヤに与えることができる。   FIG. 8 shows an example of a character face (head) image generated by the present embodiment. In FIG. 8, a sweat adhesion region (lighting processing region) is set on the face of the character, below the eyes, and above the lips. In this embodiment, the lighting processing unit 126 performs lighting processing for expressing the gloss of sweat in these sweat adhesion areas, and the bump processing unit 128 performs bump processing for expressing the unevenness of sweat. Perform in the sweat adhesion area. By doing so, in these sweat adhesion regions, not only the gloss of sweat but also the unevenness of sweat (skin) comes to be expressed. In other words, it is possible to generate an image that looks as if the sweat shining with the light is attached along the unevenness of the skin (skin), giving the player the impression that the sweat is attached to the real skin. Can do.

この点、図9(B)の手法では、ライティング処理とバンプ処理を連動させた処理を実現できないため、図8のような画像を生成することは難しい。これに対して本実施形態では、ライティング処理部126、バンプ処理部128がピクセルシェーダ部124に含まれ、これらのライティング処理部126、バンプ処理部128が、反射マップテクスチャと法線マップテクスチャを用いてピクセル単位でのライティング処理とバンプ処理を行う。従ってライティング処理とバンプ処理を連動させた処理を実現でき、図8のような汗の光沢と汗の凹凸の両方が表現された画像を生成できる。   In this regard, with the method of FIG. 9B, it is difficult to generate an image as shown in FIG. 8 because it is not possible to realize a process that links the lighting process and the bump process. On the other hand, in this embodiment, the lighting processing unit 126 and the bump processing unit 128 are included in the pixel shader unit 124, and the lighting processing unit 126 and the bump processing unit 128 use the reflection map texture and the normal map texture. To perform lighting processing and bump processing in units of pixels. Therefore, it is possible to realize a process in which the lighting process and the bump process are linked, and an image in which both the gloss of sweat and the unevenness of sweat are expressed as shown in FIG. 8 can be generated.

また図8において、例えば、目の上の隈の部分や鼻の穴の部分や顎の下の部分において、スペキュラ効果が現れると不自然な画像になる。この点、本実施形態では、これらの部分においては、Ks=0.0に設定することで、スペキュラ演算を無効にできる。従って、光源からの光がこの部分にあたったとしても、この部分では鏡面反射が生じないようになり、より自然でリアルな画像を少ない処理負荷で生成できる。   In FIG. 8, for example, an unnatural image appears when the specular effect appears in the eyelid area, the nostril area, or the chin area. In this regard, in this embodiment, the specular calculation can be invalidated by setting Ks = 0.0 in these portions. Therefore, even if light from the light source hits this portion, specular reflection does not occur in this portion, and a more natural and realistic image can be generated with a small processing load.

2.3 反射マップテクスチャ
図10は反射マップテクスチャの説明図である。図10ではテクスチャ記憶部178が、反射マップテクスチャのαプレーンに、反射情報として反射率(反射係数)を記憶している。そしてライティング処理部126は、汗付着領域(ライティング処理領域)において、αプレーンの反射率で光が鏡面反射するライティング処理を行う。一方、テクスチャ記憶部178は、反射マップテクスチャの色プレーンに、反射情報として汗等の光沢色(光源色)を記憶する。例えば反射マップテクスチャのR、G、Bプレーンのテクセルに、光沢色のR、G、Bデータが記憶される。そしてライティング処理部126は、汗付着領域において、色プレーンの光沢色で光が鏡面反射するライティング処理を行う。
2.3 Reflection Map Texture FIG. 10 is an explanatory diagram of the reflection map texture. In FIG. 10, the texture storage unit 178 stores the reflectance (reflection coefficient) as reflection information in the α plane of the reflection map texture. The lighting processing unit 126 performs a lighting process in which light is specularly reflected at the reflectance of the α plane in the sweat adhesion region (lighting processing region). On the other hand, the texture storage unit 178 stores glossy color (light source color) such as sweat as reflection information in the color plane of the reflection map texture. For example, glossy R, G, and B data are stored in texels on the R, G, and B planes of the reflection map texture. The lighting processing unit 126 performs a lighting process in which light is specularly reflected by the glossy color of the color plane in the sweat adhesion region.

図10の反射マップテクスチャによれば、αプレーンに設定される反射率を用いて、汗付着領域での光の反射の強度を制御できる。一方、R、G、Bの色プレーンに設定される光沢色に基づいて、汗により反射する色を制御できる。例えば黄色の肌を有するキャラクタでは、汗の光沢色を黄色に設定したり、白の肌のキャラクタでは、汗の光沢色を青みがかった色に設定するなどの制御が可能になる。これにより、更にリアルな画像を生成できる。   According to the reflection map texture of FIG. 10, it is possible to control the intensity of light reflection in the sweat adhesion region using the reflectance set in the α plane. On the other hand, the color reflected by sweat can be controlled based on the glossy colors set in the R, G, and B color planes. For example, a character with yellow skin can be controlled to set the glossy color of sweat to yellow, and a character with white skin can be set to set the glossy color of sweat to a bluish color. Thereby, a more realistic image can be generated.

なお図10では、反射マップテクスチャの反射情報として光沢色を設定しているが、これらの光沢色を設定せずに、反射率のみを設定するようにしてもよい。またαプレーンに設定される反射情報は反射率そのものでもあってもよいし、反射率と等価なパラメータ(マスクパラメータ)であってもよい。また反射率をR、G、Bのいずれかの色プレーンに設定する変形実施も可能である。   In FIG. 10, the glossy color is set as the reflection information of the reflection map texture, but it is also possible to set only the reflectance without setting these glossy colors. The reflection information set in the α plane may be the reflectance itself or a parameter (mask parameter) equivalent to the reflectance. Further, a modification in which the reflectance is set to any one of R, G, and B color planes is also possible.

2.4 法線マップテクスチャ
本実施形態ではキャラクタの汗(肌)の凹凸を表すための法線マップテクスチャに基づいて、汗付着領域(ライティング処理領域)においてバンプ処理を行っている。この場合に図11に示すように、反射マップテクスチャでは、汗付着領域において反射率Ksが高い値に設定されると共に、この法線マップテクスチャにおいても、汗付着領域において凹凸を表現する法線ベクトルに設定されている。具体的には法線マップテクスチャでは、バンプ用の法線ベクトルNBのX、Y、Z座標(頂点座標系での座標)が、各々、テクスチャのR、G、Bプレーンに記憶される。従って、法線ベクトルNBが全てZ方向を向いているような平らな面では、法線ベクトルNBのX、Y座標(R、G成分)が0になり、Z座標(B成分)だけが値を持つため、法線マップテクスチャの色は青になる。一方、図11のA1に示すように凹凸がある面では、バンプ用の法線ベクトルNBのX、Y座標が値を有するため、法線マップテクスチャの色は青とは異なる色になる。そして本実施形態では図11のA2に示すように、反射率Ksが高い値に設定されている汗付着領域において、法線ベクトルNBのX、Y座標が値を有しており、青以外の色になっている。そしてこのような法線ベクトルNBを用いてシェーディングを行うことで、A1に示すような汗の形状を疑似表現できる。これにより図7、図8に示すようなリアルな画像を生成できる。
2.4 Normal Map Texture In this embodiment, bump processing is performed in the sweat adhesion region (lighting processing region) based on the normal map texture for representing the unevenness of the character's sweat (skin). In this case, as shown in FIG. 11, in the reflection map texture, the reflectance Ks is set to a high value in the sweat adhesion region, and also in this normal map texture, a normal vector that expresses irregularities in the sweat adhesion region. Is set to Specifically, in the normal map texture, the X, Y, and Z coordinates (coordinates in the vertex coordinate system) of the bump normal vector NB are stored in the R, G, and B planes of the texture, respectively. Accordingly, on a flat surface where all the normal vectors NB are oriented in the Z direction, the X and Y coordinates (R and G components) of the normal vector NB are 0, and only the Z coordinate (B component) is the value. Therefore, the normal map texture color is blue. On the other hand, as shown by A1 in FIG. 11, since the X and Y coordinates of the bump normal vector NB have values, the color of the normal map texture is different from blue. In this embodiment, as shown in A2 of FIG. 11, in the sweat adhesion region where the reflectance Ks is set to a high value, the X and Y coordinates of the normal vector NB have values, and other than blue It is colored. Then, by performing shading using such a normal vector NB, a sweat shape as shown in A1 can be pseudo-expressed. Thereby, a realistic image as shown in FIGS. 7 and 8 can be generated.

2.5 頂点シェーダ、ピクセルシェーダ
図12(A)に頂点シェーダ部122、ピクセルシェーダ部124の詳細な構成例を示す。頂点シェーダ部122(頂点処理部)の機能は、例えばベクトル演算ユニットなどのハードウェアと、図12(B)に示すような頂点シェーダプログラム(頂点処理プログラム)により実現できる。この頂点シェーダプログラムには頂点毎の処理を行うための変数、関数等が記述されている。またピクセルシェーダ部124(ピクセル処理部)の機能も、例えばベクトル演算ユニットなどのハードウェアと、図12(B)に示すようなピクセルシェーダプログラム(ピクセル処理プログラム)により実現できる。このピクセルシェーダプログラムにはピクセル毎の処理を行うための変数、関数等が記述されている。
2.5 Vertex Shader and Pixel Shader FIG. 12A shows a detailed configuration example of the vertex shader unit 122 and the pixel shader unit 124. The function of the vertex shader unit 122 (vertex processing unit) can be realized by hardware such as a vector operation unit and a vertex shader program (vertex processing program) as shown in FIG. This vertex shader program describes variables, functions, and the like for performing processing for each vertex. The function of the pixel shader unit 124 (pixel processing unit) can also be realized by hardware such as a vector operation unit and a pixel shader program (pixel processing program) as shown in FIG. This pixel shader program describes variables, functions, and the like for performing processing for each pixel.

図12(A)では頂点シェーダ部122は、座標変換部10と出力部12を含む。ここで座標変換部10は種々の座標系への座標変換を行う。具体的には例えば図13(A)に示すように、頂点座標PV、視線ベクトルE、ライトベクトルL、法線ベクトルN、従法線ベクトル(接ベクトル)T、従法線ベクトルBを、例えばローカル座標系からワールド座標系に変換する。なおこれらのベクトル等の一部のみをワールド座標系に変換してもよい。出力部12は変換後の頂点座標PV、視線ベクトルE、ライトベクトルL等を出力レジスタに格納してピクセルシェーダ部124に渡す。   In FIG. 12A, the vertex shader unit 122 includes a coordinate conversion unit 10 and an output unit 12. Here, the coordinate conversion unit 10 performs coordinate conversion to various coordinate systems. Specifically, for example, as shown in FIG. 13A, vertex coordinates PV, line-of-sight vector E, light vector L, normal vector N, normal vector (tangent vector) T, and normal vector B are Convert from the local coordinate system to the world coordinate system. Only a part of these vectors may be converted to the world coordinate system. The output unit 12 stores the vertex coordinates PV, the line-of-sight vector E, the light vector L and the like after conversion in an output register and passes them to the pixel shader unit 124.

ラスタライズ処理部123はラスタライズ(走査線変換)処理を行う。具体的にはラスタライズ処理部123には、頂点シェーダ部122から加工済みの頂点データが入力される。そしてラスタライズ処理部123は、加工済みの頂点データに基づいて、ポリゴンを構成するピクセルの生成処理を行う。この場合に例えば、頂点データに含まれる頂点座標、各種ベクトル(法線ベクトル等)、頂点色、頂点テクスチャ座標等の補間処理(線形補間等)が行われ、ピクセル座標や、ピクセルでの各種ベクトルや、ピクセル色や、ピクセルでのテクスチャ座標等が求められる。   The rasterization processing unit 123 performs rasterization (scan line conversion) processing. Specifically, processed raster data is input from the vertex shader unit 122 to the rasterization processing unit 123. Then, the rasterize processing unit 123 performs a process for generating pixels constituting the polygon based on the processed vertex data. In this case, for example, interpolation processing (linear interpolation, etc.) such as vertex coordinates, various vectors (normal vectors, etc.), vertex colors, vertex texture coordinates, etc. included in the vertex data is performed. In addition, the pixel color, texture coordinates in the pixel, and the like are obtained.

ピクセルシェーダ部124はテクスチャフェッチ部20(テクスチャマッピング部)とピクセル加工処理部22を含む。テクスチャフェッチ部20は、テクスチャのフェッチ処理(マッピング、サンプリング処理)を行う。具体的には、ピクセルのテクスチャ座標等を用いてテクスチャ記憶部178からテクスチャのデータを読み出す。   The pixel shader unit 124 includes a texture fetch unit 20 (texture mapping unit) and a pixel processing unit 22. The texture fetch unit 20 performs texture fetch processing (mapping and sampling processing). Specifically, texture data is read from the texture storage unit 178 using the texture coordinates of the pixels.

ピクセル加工処理部22は、ピクセルデータに対する種々の加工処理を行う。そしてこの加工処理により、ピクセル(フラグメント)の色が決定される。そして加工処理(ピクセルシェーダ)の後に、例えばシザーテスト、アルファテスティング、深度テスト又はステンシルテストなどを実行して、そのピクセル(フラグメント)が表示されるのか否かを最終的に決定する。なおそのピクセルが表示されることが決まった後に、更にピクセルデータの加工処理(フォグ、半透明合成、アンチエイリアス)が行われて、加工処理後のピクセルデータがフレームバッファに書き込まれることになる。   The pixel processing unit 22 performs various processing processes on the pixel data. By this processing, the color of the pixel (fragment) is determined. Then, after the processing (pixel shader), for example, a scissor test, alpha testing, depth test or stencil test is executed to finally determine whether or not the pixel (fragment) is displayed. Note that after the pixel is determined to be displayed, further pixel data processing (fog, translucent synthesis, anti-aliasing) is performed, and the processed pixel data is written into the frame buffer.

本実施形態では、ライティング処理部126、バンプ処理部128がピクセルシェーダ部124(ピクセル加工処理部22)に含まれて、ピクセル単位のライティング処理、バンプ処理を行う。従ってキャラクタのパーツオブジェクトの各ピクセルの最終的な色を、図5、図6に示すような展開図方式の反射マップテクスチャ、法線マップテクスチャを用いたピクセル単位のライティング処理、バンプ処理により求めることができる。従ってキャラクタの汗の光沢と表面の凹凸の両方が表現された画像の生成が容易になる。   In this embodiment, a lighting processing unit 126 and a bump processing unit 128 are included in the pixel shader unit 124 (pixel processing processing unit 22), and perform lighting processing and bump processing in units of pixels. Accordingly, the final color of each pixel of the character's part object is obtained by a pixel-based lighting process and a bump process using a reflection map texture and a normal map texture of a development map system as shown in FIGS. Can do. Therefore, it is easy to generate an image in which both the gloss of the character's sweat and the unevenness of the surface are expressed.

さて本実施形態では図13(A)に示すように、頂点シェーダ部122が、第1、第2の従法線ベクトルT、B等を、ワールド座標系に座標変換する。そしてピクセルシェーダ部124は、法線マップテクスチャにより得られた法線ベクトルNBを、第1、第2の従法線ベクトルT、Bに基づきワールド座標系に座標変換する。具体的にはバンプ用の法線ベクトルNBのX座標、Y座標をNBX、NBYとした場合に、NBX×T+NBY×Bの式で表される座標変換を行う。そしてバンプ処理部128は、座標変換後の法線ベクトルNBに基づいてバンプ処理を行う。   In the present embodiment, as shown in FIG. 13A, the vertex shader unit 122 converts the first and second normal vectors T, B and the like into the world coordinate system. Then, the pixel shader unit 124 converts the normal vector NB obtained from the normal map texture into the world coordinate system based on the first and second subordinate vectors T and B. Specifically, when the X-coordinate and Y-coordinate of the normal vector NB for bumps are set to NBX and NBY, coordinate conversion represented by the formula NBX × T + NBY × B is performed. The bump processing unit 128 performs bump processing based on the normal vector NB after coordinate conversion.

例えば図13(B)に頂点座標系(接ベクトル空間)の例を示す。この頂点座標系はオブジェクトOBの頂点毎に計算した従法線ベクトルT、Bを基底ベクトルとした座標系である。この頂点座標系では、全ての頂点において、法線ベクトルはZ軸の正の方向を向く。また従法線ベクトルT(接ベクトル)はX軸に沿った方向を向き、従法線ベクトルBはY軸に沿った方向を向く。   For example, FIG. 13B shows an example of a vertex coordinate system (tangent vector space). This vertex coordinate system is a coordinate system in which the normal vectors T and B calculated for each vertex of the object OB are base vectors. In this vertex coordinate system, the normal vector is oriented in the positive direction of the Z axis at all vertices. Further, the binormal vector T (tangent vector) points in the direction along the X axis, and the binormal vector B points in the direction along the Y axis.

法線マップテクスチャを用いたバンプ処理(バンプマップ)を行う場合には、頂点シェーダ部122が、視線ベクトルEやライトベクトルLを頂点座標系(接ベクトル空間)に座標変換するのが一般的である。このようにすれば、法線マップテクスチャの法線ベクトルNBのX、Y座標をそのままテクスチャ座標U、Vとして使用できるからである。   When performing bump processing (bump map) using a normal map texture, the vertex shader unit 122 generally performs coordinate conversion of the line-of-sight vector E and the light vector L into the vertex coordinate system (tangent vector space). is there. This is because the X and Y coordinates of the normal vector NB of the normal map texture can be used as texture coordinates U and V as they are.

この点、本実施形態では頂点シェーダ部122が、視線ベクトルE、ライトベクトルL等を頂点座標系ではなくワールド座標系に座標変換して出力している。このようにワールド座標系を用いることで、これらのベクトルを用いた演算の精度を向上できる。   In this regard, in this embodiment, the vertex shader unit 122 performs coordinate conversion of the line-of-sight vector E, the light vector L, and the like into the world coordinate system instead of the vertex coordinate system, and outputs them. By using the world coordinate system in this way, the accuracy of calculations using these vectors can be improved.

しかしながら、これらのベクトルがワールド座標系のベクトルであると、法線マップテクスチャの法線ベクトルNBのX、Y座標をそのままテクスチャ座標U、Vとして使用できないという問題がある。   However, if these vectors are vectors in the world coordinate system, there is a problem that the X and Y coordinates of the normal vector NB of the normal map texture cannot be used as the texture coordinates U and V as they are.

そこで本実施形態では図13(A)に示すように、頂点シェーダ部122が従法線ベクトルT、Bについてもワールド座標系に変換する。そしてピクセルシェーダ部124が、法線マップテクスチャの法線ベクトルNBを、座標変換後の従法線ベクトルT、Bに基づいて、例えばNBX×T+NBY×Bの式でワールド座標系に座標変換する。このようにすれば、図6に示す法線マップテクスチャを、図4、図5のカラーマップテクスチャ、反射マップテクスチャと同様の座標系で取り扱って、キャラクタの腕パーツオブジェクトにマッピングできるようになり、処理を簡素化できる。   Therefore, in the present embodiment, as shown in FIG. 13A, the vertex shader unit 122 also converts the normal vectors T and B into the world coordinate system. Then, the pixel shader unit 124 converts the normal vector NB of the normal map texture into the world coordinate system using, for example, the formula NBX × T + NBY × B based on the subordinate normal vectors T and B after the coordinate conversion. In this way, the normal map texture shown in FIG. 6 can be handled in the same coordinate system as the color map texture and reflection map texture of FIGS. 4 and 5, and mapped to the arm part object of the character. Processing can be simplified.

2.6 反射マップテクスチャ、法線マップテクスチャの変化
図7、図8の画像において、常に同じ固定の場所の汗付着領域にキャラクタの汗が付着すると、画像のリアル度に欠けるという課題がある。
2.6 Changes in Reflection Map Texture and Normal Map Texture In the images of FIGS. 7 and 8, there is a problem that if the sweat of the character always adheres to the sweat adhesion region at the same fixed location, the image lacks realism.

そこで本実施形態ではパラメータ演算部116がキャラクタのステータスパラメータ等のパラメータを演算する。そして変化処理部118が、演算されたパラメータに基づいて、図14のB1、B2、B3に模式的に示すように反射マップテクスチャを変化させて、汗付着領域(ライティング処理領域)の面積(大きさ)、形状(外形形状)や、光の反射率や、光沢色などを変化させる。例えば図14のB1では、反射率が大きな値(例えばKs=1.0)に設定されるテクセルの領域は小さく、汗付着領域の面積も小さい。そして図14のB2、B3では、反射率が大きな値に設定されるテクセルの領域が徐々に大きくなると共にその形状も変化する。これにより汗付着領域の面積も大きくなり、その形状も変化する。従って、図14のB1で発生した汗の粒が徐々に大きくなり、下側に流れ落ちて行くというリアルな画像を生成できる。   Therefore, in this embodiment, the parameter calculation unit 116 calculates parameters such as a character status parameter. Then, the change processing unit 118 changes the reflection map texture as schematically shown in B1, B2, and B3 in FIG. 14 based on the calculated parameters, and the area (large size) of the sweat adhesion region (lighting processing region). ), Shape (outer shape), light reflectance, gloss color, and the like are changed. For example, in B1 of FIG. 14, the texel region where the reflectance is set to a large value (for example, Ks = 1.0) is small, and the area of the sweat adhesion region is also small. And in B2 and B3 of FIG. 14, the area | region of the texel in which a reflectance is set to a big value becomes large gradually, and the shape also changes. This increases the area of the sweat adhesion region and changes its shape. Accordingly, it is possible to generate a realistic image in which the sweat particles generated in B1 of FIG. 14 gradually increase and flow downward.

また本実施形態では変化処理部118が、反射マップテクスチャが変化した場合に、反射マップテクスチャの変化に連動して法線マップテクスチャを変化させる。例えば汗付着領域(ライティング処理領域)の面積、形状が変化した場合に、汗付着領域の面積、形状の変化に連動して汗付着領域(ライティング処理領域)での法線マップテクスチャを変化させる。具体的には図14のB1、B2、B3に示すように汗付着領域(汗付着領域に対応するテクセル領域)の面積、形状が変化した場合に、それに連動してC1、C2、C3に示すように法線マップテクスチャを変化させる。即ち汗付着領域における汗の凹凸が画像表現されるように、汗付着領域での法線マップテクスチャの法線ベクトルNB(X、Y座標)を変化させる。例えば図14のC1では、汗の発生場所においてのみ法線マップテクスチャの色が青以外の色になり、それ以外の領域では青になる。そして図14のC2、C3では、法線マップテクスチャが青以外の色となる領域の面積が、徐々に増えて行く。こうすることで、発生した汗の粒が徐々に大きくなり、下側に流れ落ちて行く様子をリアルに表現できる。   In this embodiment, when the reflection map texture changes, the change processing unit 118 changes the normal map texture in conjunction with the change of the reflection map texture. For example, when the area and shape of the sweat adhesion region (lighting processing region) change, the normal map texture in the sweat adhesion region (lighting processing region) is changed in conjunction with the change in the area and shape of the sweat adhesion region. Specifically, as shown in B1, B2, and B3 of FIG. 14, when the area and shape of the sweat adhesion region (the texel region corresponding to the sweat adhesion region) change, it is shown in C1, C2, and C3 in conjunction with it. To change the normal map texture. That is, the normal vector NB (X, Y coordinates) of the normal map texture in the sweat adhesion region is changed so that the sweat unevenness in the sweat adhesion region is represented as an image. For example, in C1 of FIG. 14, the color of the normal map texture is a color other than blue only at the place where sweat is generated, and is blue in other regions. In C2 and C3 in FIG. 14, the area of the region where the normal map texture is a color other than blue gradually increases. By doing so, it is possible to realistically express how the generated sweat particles gradually increase and flow downward.

なお反射マップテクスチャや法線マップテクスチャを変化させる処理(テクスチャアニメーション)は、テクスチャの差し替えで実現してもよいし、テクスチャの書き換えで実現してもよい。   Note that the processing (texture animation) for changing the reflection map texture or the normal map texture may be realized by replacing the texture or by rewriting the texture.

テクスチャの差し替えで実現する場合には、複数枚の反射マップテクスチャ、法線マップテクスチャを予め用意しておく、そしてこれらの複数枚の反射マップテクスチャ、法線マップテクスチャの中から、演算されたパラメータに対応するテクスチャを順次選択してテクスチャ記憶部178から読み出すことで、図14のB1〜B3、C1〜C3に示すようなテクスチャアニメーションを実現する。   When realizing by replacing texture, prepare multiple reflection map textures and normal map textures in advance, and calculate the parameters calculated from these multiple reflection map textures and normal map textures. Texture textures as shown in B1 to B3 and C1 to C3 in FIG. 14 are realized by sequentially selecting textures corresponding to the above and reading them from the texture storage unit 178.

一方、テクスチャの書き換えで実現する場合には、汗付着領域に対応する反射マップテクスチャ、法線マップテクスチャのテクセルの値を、リアルタイムに書き替えることで、テクスチャアニメーションを実現する。具体的には、例えば基本となる反射マップテクスチャ、法線マップテクスチャを用意しておく。そして汗が発生したと判断された場合には、図14のB1、C1に示すように汗の発生場所に対応する領域のテクセルの反射情報、法線ベクトルを書き換える。例えばその領域の反射率が高くなるように反射情報を書き換え、その領域で凹凸が見えるように法線ベクトルを書き換える。そして演算されたキャラクタのパラメータの値に応じて、図14のB2、B3、C2、C3に示すように、汗付着領域に対応する領域のテクセルの反射情報、法線ベクトルを順次書き換えて行く。このようにすれば、複数枚のテクスチャを用意する必要がなくなるため、メモリの使用記憶容量を節約したテクスチャアニメーションが可能になる。   On the other hand, when it is realized by rewriting the texture, the texture animation is realized by rewriting the texel values of the reflection map texture and the normal map texture corresponding to the sweat adhesion region in real time. Specifically, for example, a basic reflection map texture and normal map texture are prepared. If it is determined that sweat has occurred, the reflection information and normal vector of the texel in the area corresponding to the place where the sweat occurs are rewritten as shown in B1 and C1 of FIG. For example, the reflection information is rewritten so that the reflectance of the region becomes high, and the normal vector is rewritten so that irregularities can be seen in the region. Then, according to the calculated parameter value of the character, as shown in B2, B3, C2, and C3 in FIG. 14, the texel reflection information and the normal vector in the region corresponding to the sweat adhesion region are sequentially rewritten. In this way, it is not necessary to prepare a plurality of textures, and texture animation that saves the storage capacity of the memory becomes possible.

なお反射マップテクスチャの変化に連動させて法線マップテクスチャを変化させるとは、例えば反射マップテクスチャの差し替えを行った場合に、それと同じタイミング(ほぼ同じタイミング)で法線マップテクスチャの差し替えを行うことである。或いは、反射マップテクスチャの書き換えを行った場合に、それと同じタイミング(ほぼ同じタイミング)で法線マップテクスチャの書き換えを行うことである。この場合に、タイミングのみならず、書き換える場所も、反射マップテクスチャと法線マップテクスチャとでほぼ同じ場所にする。こうすることで、汗の光沢と汗の凹凸が連動して変化して行く様子を表現できる。   Note that changing the normal map texture in conjunction with the change in the reflection map texture means replacing the normal map texture at the same timing (almost the same timing) when the reflection map texture is replaced, for example. It is. Alternatively, when the reflection map texture is rewritten, the normal map texture is rewritten at the same timing (substantially the same timing). In this case, not only the timing but also the place to be rewritten is almost the same in the reflection map texture and the normal map texture. By doing this, it is possible to express how the gloss of sweat and the unevenness of sweat change in conjunction with each other.

次にキャラクタのパラメータの演算手法について説明する。本実施形態ではパラメータ演算部116が、キャラクタの体力パラメータ、運動量パラメータ、或いは時間経過パラメータ等を演算する。そして体力パラメータが少なくなるほど、或いは運動量パラメータが大きくなるほど、或いは時間経過パラメータが長くなるほど、汗のライティング処理が行われる汗付着領域の面積(総面積)を大きくする。こうすれば、キャラクタの体力が減ったり、運動量が増えたり、運動時間が長くなるにつれて、キャラクタの汗付着領域の占有面積が増え、キャラクタの汗の量が増える様子をリアルに表現できる。   Next, a method for calculating character parameters will be described. In the present embodiment, the parameter calculation unit 116 calculates a physical strength parameter, an exercise amount parameter, a time lapse parameter, or the like of the character. Then, as the physical strength parameter decreases, the momentum parameter increases, or the time lapse parameter increases, the area (total area) of the sweat adhesion region where the sweat writing process is performed is increased. In this way, as the character's physical strength decreases, the amount of exercise increases, or the exercise time increases, the occupation area of the character's sweat adhesion region increases, and the character's amount of sweat increases in a realistic manner.

図15(A)〜図16(B)に本実施形態で使用されるテーブルデータの例を示す。例えば図15(A)(B)(C)は、各々、キャラクタの体力パラメータPP、運動量パラメータPE、時間経過パラメータPTと、汗量パラメータPS1、PS2、PS3とを対応づけるテーブルデータである。例えば図15(A)ではキャラクタの体力パラメータPPの値が減少するにつれて汗量パラメータPS1の値が上昇する。また図15(B)ではキャラクタの運動量パラメータPEの値が上昇するにつれて、汗量パラメータPS2の値が増加する。また図15(C)ではキャラクタの時間経過パラメータ(運動時間パラメータ)PTの値が増えるにつれて、汗量パラメータPS3の値が上昇する。   FIG. 15A to FIG. 16B show examples of table data used in this embodiment. For example, FIGS. 15A, 15 </ b> B, and 15 </ b> C are table data that associates the physical strength parameter PP, the exercise amount parameter PE, and the time passage parameter PT of the character with the sweat amount parameters PS <b> 1, PS <b> 2, and PS <b> 3, respectively. For example, in FIG. 15A, the value of the sweat amount parameter PS1 increases as the value of the physical strength parameter PP of the character decreases. In FIG. 15B, the value of the sweat amount parameter PS2 increases as the value of the character's exercise amount parameter PE increases. In FIG. 15C, the value of the sweat amount parameter PS3 increases as the value of the time lapse parameter (exercise time parameter) PT of the character increases.

そしてこのようなパラメータPS1、PS2、PS3に基づいて、総合的な汗量(液体量)パラメータPS=F(PS1、PS2、PS3)が求められる。ここでF(PS1、PS2、PS3)は、PS1、PS2、PS3を引数とする所定の関数である。このような関数としては、例えばF(PS1、PS2、PS3)=k1×PS1+k2×PS2+k3×PS3などが考えられる。   Based on these parameters PS1, PS2, and PS3, a total sweat amount (liquid amount) parameter PS = F (PS1, PS2, PS3) is obtained. Here, F (PS1, PS2, PS3) is a predetermined function having PS1, PS2, and PS3 as arguments. As such a function, for example, F (PS1, PS2, PS3) = k1 * PS1 + k2 * PS2 + k3 * PS3 can be considered.

そして図16(A)のテーブルデータは、演算された汗量パラメータPSと、テクスチャアニメーションのために用意された複数枚の反射マップテクスチャRFTEX01、RFTEX02、RFTEX03・・・・、法線マップテクスチャNTEX01、NTEX02、NTEX03・・・とを対応付けるテーブルデータである。即ち汗量パラメータPSの値が増加するにつれて、ライティング処理のフェッチ対象となる反射マップテクスチャを、RFTEX01、RFTEX02、RFTEX03・・・・というように順次差し替える。そしてこれらの反射マップテクスチャの差し替えに連動して、バンプ処理のフェッチ対象となる法線マップテクスチャも、NTEX01、NTEX02、NTEX03・・・というように順次差し替える。これにより図14のB1〜B3、C1〜C3に示すようなテクスチャアニメーションが実現され、キャラクタの体力が減ったり、運動量が増えたり、運動時間が経過するにつれて、キャラクタの肌の汗の量が増えて行く画像表現を実現できる。   The table data of FIG. 16A includes the calculated sweat amount parameter PS and a plurality of reflection map textures RFTEX01, RFTEX02, RFTEX03,..., A normal map texture NTEX01, prepared for texture animation. Table data that associates NTEX02, NTEX03,... That is, as the value of the sweat amount parameter PS increases, the reflection map texture to be fetched in the lighting process is sequentially replaced as RFTEX01, RFTEX02, RFTEX03,. In conjunction with the replacement of these reflection map textures, the normal map texture to be fetched by the bump processing is also sequentially replaced as NTEX01, NTEX02, NTEX03,. As a result, texture animation as shown in B1 to B3 and C1 to C3 in FIG. 14 is realized, and the amount of sweat on the character's skin increases as the character's physical strength decreases, the amount of exercise increases, or the exercise time elapses. The image expression that goes on can be realized.

なお、キャラクタが移動するゲーム空間(オブジェクト空間)での気象の状態を、汗量パラメータPSに反映させてもよい。例えば図16(B)のテーブルデータでは、ゲーム空間(スタジアム)の天候、温度と、天候係数が対応づけられている。   The weather condition in the game space (object space) in which the character moves may be reflected in the sweat amount parameter PS. For example, in the table data of FIG. 16B, the weather and temperature of the game space (stadium) are associated with the weather coefficient.

例えば天候が晴れで、温度が高い場合には、気象係数が大きくなり、これにより汗量パラメータPSの上昇率が大きくなる。従って、汗付着領域の面積の増加率が大きくなり、キャラクタが汗をかきやすくなる様子を表現できる。また例えば天候が曇りで、温度が低い場合には、気象係数が小さくなり、これにより汗量パラメータPSの上昇率が小さくなる。従って、汗付着領域の面積の増加率が小さくなり、キャラクタが汗をかきにくくなる様子を表現できる。   For example, when the weather is fine and the temperature is high, the weather coefficient increases, thereby increasing the rate of increase of the sweat amount parameter PS. Therefore, the rate of increase in the area of the sweat adhesion region is increased, and it is possible to express how the character is likely to sweat. In addition, for example, when the weather is cloudy and the temperature is low, the weather coefficient becomes small, and thereby the rate of increase of the sweat amount parameter PS becomes small. Therefore, the rate of increase in the area of the sweat adhesion region is reduced, and it is possible to express how the character is less likely to sweat.

なお汗量パラメータPSを、このような天候係数以外の係数により制御してもよい。例えばキャラクタの緊張度、試合の緊迫度、観客・声援の多さなどを表す係数を用意し、この係数によって汗量パラメータPSを制御してもよい。   The sweat volume parameter PS may be controlled by a coefficient other than the weather coefficient. For example, a coefficient indicating the character's tension level, game tightness level, audience / cheering level, and the like may be prepared, and the sweat amount parameter PS may be controlled by this coefficient.

2.7 ヒット領域での反射マップテクスチャ、法線マップテクスチャの変化
本実施形態では、図17(A)に示すようにパーツオブジェクトPOBに対するヒットイベントが発生すると、D1に示すヒット領域(ヒット位置)が検出される。そして図17(B)のD2に示すように、検出されたヒット領域に対応するテクセルの領域において、反射マップテクスチャを変化させる処理が行われる。即ちそのテクセルに設定される反射情報が書き換えられる。また図17(C)のD3に示すように、検出されたヒット領域に対応するテクセルの領域において、法線マップテクスチャを変化させる処理が行われる。即ちそのテクセルに設定される法線ベクトルの情報が書き換えられる。
2.7 Changes in Reflection Map Texture and Normal Map Texture in Hit Area In this embodiment, when a hit event occurs for the part object POB as shown in FIG. 17A, a hit area (hit position) shown in D1 Is detected. Then, as shown by D2 in FIG. 17B, a process of changing the reflection map texture is performed in the area of the texel corresponding to the detected hit area. That is, the reflection information set in the texel is rewritten. Further, as indicated by D3 in FIG. 17C, a process of changing the normal map texture is performed in the texel region corresponding to the detected hit region. That is, the normal vector information set in the texel is rewritten.

即ち本実施形態では図17(B)(C)に示すような展開図方式の反射マップテクスチャ、法線マップテクスチャが用意されて、図17(A)に示すパーツオブジェクトPOBに対して包み込むようにマッピングされる。従って、図17(A)のD1に示すヒット領域と図17(B)(C)のD2、D3に示すテクセル領域が1対1に対応するようになる。このため、図17(A)のD1のヒット領域に対応する反射マップテクスチャ、法線マップテクスチャのテクセル領域(D2、D3)を容易に特定できる。従って、特定されたD2、D3のテクセル領域の反射情報、法線ベクトル情報を容易に書き換えることができる。   That is, in the present embodiment, a reflection map texture and a normal map texture of a development view method as shown in FIGS. 17B and 17C are prepared and wrapped around the part object POB shown in FIG. To be mapped. Accordingly, the hit area indicated by D1 in FIG. 17A and the texel areas indicated by D2 and D3 in FIGS. 17B and 17C have a one-to-one correspondence. Therefore, the texel regions (D2, D3) of the reflection map texture and the normal map texture corresponding to the hit region D1 in FIG. 17A can be easily specified. Therefore, it is possible to easily rewrite the reflection information and normal vector information of the specified D2 and D3 texel regions.

例えば図17(A)のヒットイベントとしては、他のキャラクタのパンチやキックがキャラクタにヒットしたイベントが考えられる。このようなヒットイベントが発生した場合には、そのヒット領域に対応する反射マップテクスチャのテクセルの反射率を例えば大きな値に設定する。またヒット領域に対応する法線マップテクスチャのテクセルの法線ベクトル情報を、図11のA1に示すように書き換える。このようにすれば、パンチやキックがヒットした領域に、バンプ処理によるコブができ、そのコブがライティング処理により光って見える画像を生成できる。   For example, as a hit event in FIG. 17A, an event in which a punch or kick of another character hits the character can be considered. When such a hit event occurs, the reflectance of the texel of the reflection map texture corresponding to the hit area is set to a large value, for example. Further, the normal vector information of the texel of the normal map texture corresponding to the hit area is rewritten as indicated by A1 in FIG. In this way, a bump can be formed by bump processing in an area where a punch or kick has been hit, and an image can be generated in which the bump appears to be lit by lighting processing.

また本実施形態では、反射マップテクスチャを用いたライティング処理は行わずに、カラーマップテクスチャを用いた色の設定処理と、法線マップテクスチャを用いたバンプ処理だけを行うようにしてもよい。即ち反射マップテクスチャの書き換え処理は行わずに、カラーマップテクスチャと法線マップテクスチャの書き換え処理だけを行うようにしてもよい。例えば銃から発射された弾がキャラクタにヒットした場合に、そのヒット領域に対応するカラーマップテクスチャのテクセルの色を、弾が当たったことを表す弾痕色に書き換える。同様にそのヒット領域に対応する法線マップテクスチャのテクセルの法線ベクトル情報を、ヒット領域の表面が窪んで見える情報に書き換える。こうすれば、弾がヒットした領域に弾痕が発生し、その弾痕がバンプ処理により窪んで見える画像を生成できる。   In the present embodiment, the lighting process using the reflection map texture may not be performed, but only the color setting process using the color map texture and the bump process using the normal map texture may be performed. That is, the rewrite processing of the color map texture and the normal map texture may be performed without performing the rewrite processing of the reflection map texture. For example, when a bullet fired from a gun hits a character, the color of the texel of the color map texture corresponding to the hit area is rewritten to a bullet hole color indicating that the bullet has hit. Similarly, the normal vector information of the texel of the normal map texture corresponding to the hit area is rewritten to information that the surface of the hit area appears to be depressed. By doing so, it is possible to generate an image in which a bullet hole is generated in the area where the bullet is hit and the bullet hole is depressed by the bump processing.

特に図17(A)(B)(C)の展開図方式のテクスチャを用いたライティング処理やバンプ処理は、ピクセルシェーダ部124により行うことで、処理を効率化できる。例えば本実施形態の比較例として、弾痕表現用のテクスチャを用意し、弾のヒット位置に弾痕表現用のテクスチャをマッピングする手法が考えられる。しかしながら、この比較例の手法によると、弾のヒット位置を特定してテクスチャをマッピングする処理が必要になり、処理負荷が重くなる。これに対して、展開図方式のテクスチャを用いたピクセルシェーダ処理によれば、図17(B)(C)のD2、D3に示すように反射マップテクスチャ、法線マップテクスチャの書き換え処理を行い、書き換え処理後のテクスチャをピクセルシェーダ部124に転送するだけで済む。この場合に図17(A)のD1のヒット領域と図17(B)(C)のD2、D3のテクセル領域は1対1に対応しているため、書き換え処理を行う領域の特定は容易である。またピクセル単位で処理を行うピクセルシェーダ部124は、ヒット領域の位置について意識する必要がなくなる。従って、ピクセルシェーダ部124の処理負荷を軽減でき、全体としての処理負荷も軽減できる。   In particular, the pixel shader unit 124 performs lighting processing and bump processing using textures in the development schemes of FIGS. 17A, 17 </ b> B, and 17 </ b> C, so that processing efficiency can be improved. For example, as a comparative example of the present embodiment, a method of preparing a bullet hole expression texture and mapping the bullet hole expression texture to the bullet hit position is conceivable. However, according to the method of this comparative example, it is necessary to perform a process of mapping the texture by specifying the bullet hit position, which increases the processing load. On the other hand, according to the pixel shader processing using the texture of the development scheme, the rewrite processing of the reflection map texture and the normal map texture is performed as shown in D2 and D3 of FIGS. It is only necessary to transfer the texture after the rewriting process to the pixel shader unit 124. In this case, since the hit area of D1 in FIG. 17A and the texel areas of D2 and D3 in FIGS. 17B and 17C have a one-to-one correspondence, it is easy to specify the area to be rewritten. is there. Further, the pixel shader unit 124 that performs processing in units of pixels does not need to be aware of the position of the hit area. Therefore, the processing load of the pixel shader unit 124 can be reduced, and the overall processing load can also be reduced.

2.8 詳細な処理例
次に本実施形態の詳細な処理例を図18のフローチャートを用いて説明する。
2.8 Detailed Processing Example Next, a detailed processing example of this embodiment will be described with reference to the flowchart of FIG.

まずキャラクタの移動・動作処理を行う(ステップS1)。具体的には、操作部160からの操作データやプログラムなどに基づいて、1フレームごとのキャラクタの位置の変化、方向の変化、動作(モーション)の変化が、リアルタイムに演算される。   First, character movement / motion processing is performed (step S1). Specifically, based on operation data from the operation unit 160, a program, and the like, a change in character position, a change in direction, and a change in motion (motion) for each frame are calculated in real time.

次にキャラクタの体力パラメータ、運動量パラメータ、時間経過パラメータを演算する(ステップS2)。例えばキャラクタの移動量や動作量に応じて、キャラクタの体力パラメータを徐々に減少させる演算を行う。またキャラクタの移動速度や加速度などに基づいてキャラクタの運動量パラメータを演算する。また試合開始後、時間経過パラメータのカウント動作を開始して、時間経過パラメータを演算する。そして演算された体力パラメータ、運動量パラメータ、時間経過パラメータに基づいて、例えば図15(A)(B)(C)のような手法により汗量パラメータを演算する(ステップS3)。   Next, the physical strength parameter, the momentum parameter, and the time passage parameter of the character are calculated (step S2). For example, a calculation for gradually decreasing the physical strength parameter of the character is performed according to the amount of movement and the amount of movement of the character. Further, the momentum parameter of the character is calculated based on the moving speed and acceleration of the character. In addition, after the game starts, the time elapsed parameter counting operation is started to calculate the time elapsed parameter. Then, based on the calculated physical strength parameter, exercise amount parameter, and time lapse parameter, the sweat amount parameter is calculated by a method such as that shown in FIGS. 15A, 15B, and 15C (step S3).

次に、図17(A)で説明したように、ヒットイベントが発生したか否かを判定し、ヒットイベントが発生した場合には、ヒット領域の位置を特定する(ステップS4)。   Next, as described with reference to FIG. 17A, it is determined whether or not a hit event has occurred. If a hit event has occurred, the position of the hit area is specified (step S4).

次に頂点シェーダプログラムによる頂点シェーダ処理を開始する(ステップS5)。具体的には、図13(B)で説明した各頂点の従法線ベクトルを取得する(ステップS6)。次に、頂点座標、視線ベクトル、ライトベクトル、法線ベクトル、従法線ベクトルをローカル座標系からワールド座標系に座標変換して出力レジスタに格納し、ピクセルシェーダ部に渡す(ステップS7)。   Next, vertex shader processing by the vertex shader program is started (step S5). Specifically, the binormal vector of each vertex described in FIG. 13B is acquired (step S6). Next, the vertex coordinates, the line-of-sight vector, the light vector, the normal vector, and the normal vector are coordinate-converted from the local coordinate system to the world coordinate system, stored in the output register, and passed to the pixel shader unit (step S7).

次に、ステップS3で演算された汗量パラメータ(キャラクタのパラメータ)や、ステップS4で特定されたヒット領域の位置に基づいて、図4、図5、図6に示すような展開図方式のカラーマップテクスチャ、反射マップテクスチャ、法線マップテクスチャを書き換えて、VRAM(ピクセルシェーダ側)等に転送する(ステップS8)。例えば図17(B)(C)で説明した手法により、反射マップテクスチャの反射情報や法線マップテクスチャの法線ベクトル情報を書き換えて、転送する。   Next, based on the sweat amount parameter (character parameter) calculated in step S3 and the position of the hit area specified in step S4, the color of the development scheme as shown in FIG. 4, FIG. 5, and FIG. The map texture, reflection map texture, and normal map texture are rewritten and transferred to the VRAM (pixel shader side) or the like (step S8). For example, the reflection information of the reflection map texture and the normal vector information of the normal map texture are rewritten and transferred by the method described with reference to FIGS.

次に、ピクセルシェーダ処理を開始する(ステップS9)。具体的には、図4、図5、図6に例示されるような展開図方式のカラーマップテクスチャ、反射マップテクスチャ、法線マップテクスチャをフェッチする(ステップS10)。そして図13(A)(B)で説明したように、フェッチした法線マップテクスチャから読み込んだバンプ用の法線ベクトルを、従法線ベクトルを用いてワールド座標系に座標変換する(ステップS11)。次に、図3(B)で説明した照明モデルを用いてライティング処理を行い、スペキュラ値、ディフューズ値、アンビエント値を演算する(ステップS12)。この際に、フェッチした反射マップテクスチャから読み込んだ反射情報をスペキュラ値に反映させる。例えば射情報である反射率が0.0である場合には、スペキュラ値を0にする。また反射率が0.0ではない場合には、その反射率に対応したスペキュラ値を求める。そして最後に、演算されたスペキュラ値、ディフューズ値、アンビエント値、フェッチされたカラーマップテクスチャの色情報等に基づいて、最終的なカラーを求めて出力する(ステップS13)。   Next, pixel shader processing is started (step S9). Specifically, a color map texture, a reflection map texture, and a normal map texture of a development view scheme as exemplified in FIGS. 4, 5, and 6 are fetched (step S10). Then, as described in FIGS. 13A and 13B, the bump normal vector read from the fetched normal map texture is coordinate-converted into the world coordinate system using the sub normal vector (step S11). . Next, lighting processing is performed using the illumination model described in FIG. 3B, and a specular value, a diffuse value, and an ambient value are calculated (step S12). At this time, the reflection information read from the fetched reflection map texture is reflected in the specular value. For example, the specular value is set to 0 when the reflectance, which is the shooting information, is 0.0. If the reflectance is not 0.0, a specular value corresponding to the reflectance is obtained. Finally, the final color is obtained and output based on the calculated specular value, diffuse value, ambient value, color information of the fetched color map texture, and the like (step S13).

3.ハードウェア構成
図19に本実施形態を実現できるハードウェア構成の例を示す。メインプロセッサ900は、DVD982(情報記憶媒体。CDでもよい。)に格納されたプログラム、通信インターフェース990を介してダウンロードされたプログラム、或いはROM950に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などを実行する。コプロセッサ902は、メインプロセッサ900の処理を補助するものであり、マトリクス演算(ベクトル演算)を高速に実行する。例えばオブジェクトを移動させたり動作(モーション)させる物理シミュレーションに、マトリクス演算処理が必要な場合には、メインプロセッサ900上で動作するプログラムが、その処理をコプロセッサ902に指示(依頼)する。
3. Hardware Configuration FIG. 19 shows an example of a hardware configuration capable of realizing this embodiment. The main processor 900 operates based on a program stored in a DVD 982 (information storage medium, which may be a CD), a program downloaded via the communication interface 990, a program stored in the ROM 950, or the like. Perform processing, sound processing, etc. The coprocessor 902 assists the processing of the main processor 900, and executes matrix operation (vector operation) at high speed. For example, when a matrix calculation process is required for a physical simulation for moving or moving an object, a program operating on the main processor 900 instructs (requests) the process to the coprocessor 902.

ジオメトリプロセッサ904は、メインプロセッサ900上で動作するプログラムからの指示に基づいて、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、マトリクス演算を高速に実行する。データ伸張プロセッサ906は、圧縮された画像データや音データのデコード処理を行ったり、メインプロセッサ900のデコード処理をアクセレートする。これにより、オープニング画面やゲーム画面において、MPEG方式等で圧縮された動画像を表示できる。   The geometry processor 904 performs geometry processing such as coordinate conversion, perspective conversion, light source calculation, and curved surface generation based on an instruction from a program operating on the main processor 900, and executes matrix calculation at high speed. The data decompression processor 906 performs decoding processing of compressed image data and sound data, and accelerates the decoding processing of the main processor 900. Thereby, a moving image compressed by the MPEG method or the like can be displayed on the opening screen or the game screen.

描画プロセッサ910は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画(レンダリング)処理を実行する。オブジェクトの描画の際には、メインプロセッサ900は、DMAコントローラ970を利用して、描画データを描画プロセッサ910に渡すと共に、必要であればテクスチャ記憶部924にテクスチャを転送する。すると描画プロセッサ910は、描画データやテクスチャに基づいて、Zバッファなどを利用した隠面消去を行いながら、オブジェクトをフレームバッファ922に描画する。また描画プロセッサ910は、αブレンディング(半透明処理)、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエイリアシング、シェーディング処理なども行う。頂点シェーダやピクセルシェーダなどのプログラマブルシェーダが実装されている場合には、シェーダプログラムに従って、頂点データの作成・変更(更新)やピクセル(あるいはフラグメント)の描画色の決定を行う。1フレーム分の画像がフレームバッファ922に書き込まれるとその画像はディスプレイ912に表示される。   The drawing processor 910 executes drawing (rendering) processing of an object composed of primitive surfaces such as polygons and curved surfaces. When drawing an object, the main processor 900 uses the DMA controller 970 to pass the drawing data to the drawing processor 910 and, if necessary, transfers the texture to the texture storage unit 924. Then, the drawing processor 910 draws the object in the frame buffer 922 while performing hidden surface removal using a Z buffer or the like based on the drawing data and texture. The drawing processor 910 also performs α blending (translucent processing), depth cueing, mip mapping, fog processing, bilinear filtering, trilinear filtering, anti-aliasing, shading processing, and the like. When a programmable shader such as a vertex shader or a pixel shader is installed, the vertex data is created / changed (updated) and the drawing color of a pixel (or fragment) is determined according to the shader program. When an image for one frame is written in the frame buffer 922, the image is displayed on the display 912.

サウンドプロセッサ930は、多チャンネルのADPCM音源などを内蔵し、BGM、効果音、音声などのゲーム音を生成し、スピーカ932を介して出力する。ゲームコントローラ942やメモリカード944からのデータはシリアルインターフェース940を介して入力される。   The sound processor 930 includes a multi-channel ADPCM sound source and the like, generates game sounds such as BGM, sound effects, and sounds, and outputs them through the speaker 932. Data from the game controller 942 and the memory card 944 is input via the serial interface 940.

ROM950にはシステムプログラムなどが格納される。業務用ゲームシステムの場合にはROM950が情報記憶媒体として機能し、ROM950に各種プログラムが格納される。なおROM950の代わりにハードディスクを利用してもよい。RAM960は各種プロセッサの作業領域となる。DMAコントローラ970は、プロセッサ、メモリ間でのDMA転送を制御する。DVDドライブ980(CDドライブでもよい。)は、プログラム、画像データ、或いは音データなどが格納されるDVD982(CDでもよい。)にアクセスする。通信インターフェース990はネットワーク(通信回線、高速シリアルバス)を介して外部との間でデータ転送を行う。   The ROM 950 stores system programs and the like. In the case of an arcade game system, the ROM 950 functions as an information storage medium, and various programs are stored in the ROM 950. A hard disk may be used instead of the ROM 950. The RAM 960 is a work area for various processors. The DMA controller 970 controls DMA transfer between the processor and the memory. The DVD drive 980 (may be a CD drive) accesses a DVD 982 (may be a CD) in which programs, image data, sound data, and the like are stored. The communication interface 990 performs data transfer with the outside via a network (communication line, high-speed serial bus).

なお本実施形態の各部(各手段)の処理は、その全てをハードウェアのみにより実現してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。   The processing of each unit (each unit) in this embodiment may be realized entirely by hardware, or may be realized by a program stored in an information storage medium or a program distributed via a communication interface. Also good. Alternatively, it may be realized by both hardware and a program.

そして本実施形態の各部の処理をハードウェアとプログラムの両方により実現する場合には、情報記憶媒体には、ハードウェア(コンピュータ)を本実施形態の各部として機能させるためのプログラムが格納される。より具体的には、上記プログラムが、ハードウェアである各プロセッサ902、904、906、910、930に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ902、904、906、910、930は、その指示と渡されたデータとに基づいて本発明の各部の処理を実現する。   When the processing of each part of this embodiment is realized by both hardware and a program, a program for causing the hardware (computer) to function as each part of this embodiment is stored in the information storage medium. More specifically, the program instructs the processors 902, 904, 906, 910, and 930, which are hardware, and passes data if necessary. Each processor 902, 904, 906, 910, 930 realizes the processing of each unit of the present invention based on the instruction and the passed data.

なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語(ライティング処理領域、液体、第1のパーツオブジェクト等)と共に記載された用語(液体付着領域・汗付着領域、汗、腕パーツオブジェクト等)は、明細書または図面のいかなる箇所においても、その異なる用語に置き換えることができる。   Although the present embodiment has been described in detail as described above, it will be easily understood by those skilled in the art that many modifications can be made without departing from the novel matters and effects of the present invention. Accordingly, all such modifications are intended to be included in the scope of the present invention. For example, in the specification or drawings, terms (liquid adhesion area / sweat adhesion area, sweat, arm parts) described at least once together with different terms (lighting processing area, liquid, first part object, etc.) in a broader sense or the same meaning Object etc.) may be replaced by the different terms anywhere in the specification or drawings.

またライティング処理、バンプ処理、照明モデル、パラメータの演算手法も本実施形態で説明したものに限定されず、これらと均等な処理、手法も本発明の範囲に含まれる。また本発明は種々のゲームに適用できる。また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレイヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード、携帯電話等の種々の画像生成システムに適用できる。   Also, the lighting processing, bump processing, lighting model, and parameter calculation method are not limited to those described in this embodiment, and processing and methods equivalent to these are also included in the scope of the present invention. The present invention can be applied to various games. Further, the present invention is applied to various image generation systems such as a business game system, a home game system, a large attraction system in which a large number of players participate, a simulator, a multimedia terminal, a system board for generating game images, and a mobile phone. it can.

本実施形態の画像生成システムの機能ブロック図の例。The example of a functional block diagram of the image generation system of this embodiment. 図2(A)(B)(C)は展開図方式のテクスチャを用いる本実施形態の手法の説明図。FIGS. 2A, 2B, and 2C are explanatory diagrams of the technique of the present embodiment that uses the texture of the development view method. 図3(A)(B)は本実施形態のライティング処理の説明図。FIGS. 3A and 3B are explanatory diagrams of the lighting processing of the present embodiment. カラーマップテクスチャの例。Example of color map texture. 反射マップテクスチャの例。Example of reflection map texture. 法線マップテクスチャの例。Example of normal map texture. 本実施形態により生成されたキャラクタの腕の画像の例。The example of the arm image of the character produced | generated by this embodiment. 本実施形態により生成されたキャラクタの顔の画像の例。The example of the image of the face of the character produced | generated by this embodiment. 図9(A)(B)は比較例の手法の説明図。9A and 9B are explanatory diagrams of the method of the comparative example. 反射マップテクスチャの説明図。Explanatory drawing of a reflection map texture. 法線マップテクスチャの説明図。Explanatory drawing of a normal map texture. 図12(A)(B)は頂点シェーダ部、ピクセルシェーダ部の説明図。12A and 12B are explanatory diagrams of a vertex shader unit and a pixel shader unit. 図13(A)(B)はワールド座標系への座標変換処理の説明図。13A and 13B are explanatory diagrams of the coordinate conversion process to the world coordinate system. 反射マップテクスチャ、法線マップテクスチャを変化させる手法の説明図。Explanatory drawing of the method of changing a reflection map texture and a normal map texture. 図15(A)(B)(C)はテーブルデータの例。15A, 15B, and 15C are examples of table data. 図16(A)(B)はテーブルデータの例。16A and 16B show examples of table data. 図17(A)(B)(C)はヒット領域の位置に基づいて反射マップテクスチャ、法線マップテクスチャを書き換える手法の説明図。17A, 17B, and 17C are explanatory diagrams of a technique for rewriting the reflection map texture and the normal map texture based on the position of the hit area. 本実施形態の処理の詳細例。The detailed example of the process of this embodiment. ハードウェア構成例。Hardware configuration example.

符号の説明Explanation of symbols

10 座標変換部、12 出力部、20 テクスチャフェッチ部、
22 ピクセル加工処理部、100 処理部、110 オブジェクト空間設定部、
112 移動・動作処理部、114 仮想カメラ制御部、116 パラメータ演算部、
118 変化処理部、119 ヒットチェック部、120 描画部、
122 頂点シェーダ部、123 ラスタライズ処理部、124 ピクセルシェーダ部、
126 ライティング処理部、128 バンプ処理部、130 音生成部、
160 操作部、170 記憶部、172 主記憶部、174 描画バッファ、
176 モデルデータ記憶部、178 テクスチャ記憶部、
180 情報記憶媒体、190 表示部、192 音出力部、
194 携帯型情報記憶装置、196 通信部
10 coordinate conversion unit, 12 output unit, 20 texture fetch unit,
22 pixel processing unit, 100 processing unit, 110 object space setting unit,
112 movement / motion processing unit, 114 virtual camera control unit, 116 parameter calculation unit,
118 change processing unit, 119 hit check unit, 120 drawing unit,
122 vertex shader section, 123 rasterization processing section, 124 pixel shader section,
126 lighting processing unit, 128 bump processing unit, 130 sound generation unit,
160 operation unit, 170 storage unit, 172 main storage unit, 174 drawing buffer,
176 model data storage unit, 178 texture storage unit,
180 information storage medium, 190 display unit, 192 sound output unit,
194 Portable information storage device, 196 communication unit

Claims (17)

画像を生成するためのプログラムであって、
立体形状の複数のパーツオブジェクトにより構成されるキャラクタが移動するオブジェクト空間の設定を行うオブジェクト空間設定部と、
前記複数のパーツオブジェクトのうちの第1のパーツオブジェクトの展開図に対応した色パターンを有し、前記第1のパーツオブジェクトの表面の色がテクセルに設定される展開図方式のカラーマップテクスチャと、前記第1のパーツオブジェクトの展開図に対応した反射情報パターンを有し、反射情報がテクセルに設定される展開図方式の反射マップテクスチャとを記憶するテクスチャ記憶部と、
前記第1のパーツオブジェクトに対するヒットイベントが発生した場合に、ヒット領域を検出するヒットチェック部と、
検出された前記ヒット領域に対応するテクセル領域において、展開図方式の前記反射マップテクスチャを変化させる変化処理部と、
頂点単位で処理を行う頂点シェーダ部と、
ピクセル単位で処理を行うピクセルシェーダ部として、
コンピュータを機能させ、
前記変化処理部による変化処理後の前記反射マップテクスチャが前記ピクセルシェーダ部側に転送され、
前記ピクセルシェーダ部が含むライティング処理部が、前記ヒット領域に対応するテクセル領域での前記反射情報が書き換えられた変化処理後の前記反射マップテクスチャをフェッチし、フェッチされた前記反射マップテクスチャと、現実世界での照光現象をシミュレートするための数学的モデルの演算式である照明モデルと、光源情報とに基づいて、前記第1のパーツオブジェクトのライティング処理をピクセル単位で行うことを特徴とするプログラム。
A program for generating an image,
An object space setting unit for setting an object space in which a character composed of a plurality of three-dimensional part objects moves;
A color map texture of a development view method having a color pattern corresponding to a development view of a first part object of the plurality of part objects, wherein a color of a surface of the first part object is set to a texel; A texture storage unit for storing a reflection map texture of a development map method having a reflection information pattern corresponding to the development drawing of the first part object, and reflection information set in a texel;
A hit check unit that detects a hit area when a hit event occurs for the first part object;
In the texel region corresponding to the detected hit region, a change processing unit that changes the reflection map texture of the development view method,
A vertex shader that performs processing in units of vertices;
As a pixel shader that performs processing in units of pixels,
Make the computer work,
The reflection map texture after the change processing by the change processing unit is transferred to the pixel shader unit side,
The lighting processing unit included in the pixel shader unit fetches the reflection map texture after the change processing in which the reflection information in the texel region corresponding to the hit region is rewritten, and the fetched reflection map texture and real A program characterized in that the lighting processing of the first part object is performed in units of pixels based on an illumination model which is a mathematical model arithmetic expression for simulating illumination phenomena in the world and light source information. .
請求項1において、
前記第1のパーツオブジェクトは、前記キャラクタの腕、顔、足、又は武器のオブジェクトであり、
前記ライティング処理部は、
前記反射マップテクスチャのテクセルに設定された前記反射情報と前記照明モデルと前記光源情報に基づいて、前記キャラクタの腕、顔、足、又は武器のオブジェクトのライティング処理を行うことを特徴とするプログラム。
In claim 1,
The first part object is an object of the character's arm, face, foot, or weapon,
The lighting processing unit
A program for performing a lighting process on an arm, face, foot, or weapon object of the character based on the reflection information, the illumination model, and the light source information set in the texel of the reflection map texture.
請求項1又は2において、
前記反射マップテクスチャのテクセルのうち、前記ライティング処理が行われるライティング処理領域以外の領域に対応するテクセルでは、前記ライティング処理のスペキュラ演算を無効にする第1の値が設定され、
前記ライティング処理部は、
前記反射情報が第1の値に設定されている場合に、前記スペキュラ演算を無効にすることを特徴とするプログラム。
In claim 1 or 2,
Among the texels of the reflection map texture, a texel corresponding to a region other than the lighting processing region where the lighting processing is performed is set with a first value that disables the specular calculation of the lighting processing,
The lighting processing unit
A program that invalidates the specular calculation when the reflection information is set to a first value.
請求項1乃至3のいずれかにおいて、
前記テクスチャ記憶部は、
前記反射マップテクスチャのαプレーンに、前記反射情報として反射率を記憶し、
前記ライティング処理部は、
前記αプレーンの前記反射率で光が鏡面反射するライティング処理を行うことを特徴とするプログラム。
In any one of Claims 1 thru | or 3,
The texture storage unit
In the α plane of the reflection map texture, the reflectance is stored as the reflection information,
The lighting processing unit
A program for performing a lighting process in which light is specularly reflected by the reflectance of the α plane.
請求項4において、
前記テクスチャ記憶部は、
前記反射マップテクスチャの色プレーンに、前記反射情報として光沢色を記憶し、
前記ライティング処理部は、
前記色プレーンの前記光沢色で光が鏡面反射するライティング処理を行うことを特徴とするプログラム。
In claim 4,
The texture storage unit
A gloss color is stored as the reflection information in the color plane of the reflection map texture,
The lighting processing unit
A program for performing a lighting process in which light is specularly reflected by the glossy color of the color plane.
請求項1乃至5のいずれかにおいて、
前記テクスチャ記憶部は、
前記第1のパーツオブジェクトの展開図に対応した法線ベクトルパターンを有し、法線ベクトル情報がテクセルに設定される展開図方式の法線マップテクスチャを記憶し、
前記ピクセルシェーダ部が含むバンプ処理部が、展開図方式の前記法線マップテクスチャに基づいて、前記第1のパーツオブジェクトの表面の凹凸を表すためのバンプ処理をピクセル単位で行うことを特徴とするプログラム。
In any one of Claims 1 thru | or 5,
The texture storage unit
Having a normal vector pattern corresponding to a development view of the first part object, storing a normal map texture of a development view method in which normal vector information is set in a texel;
The bump processing unit included in the pixel shader unit performs a bump process for expressing the irregularities on the surface of the first part object on a pixel basis, based on the normal map texture of a development view method. program.
請求項6において、
前記頂点シェーダ部は、
オブジェクトの各頂点に設定される座標系であって各頂点の法線ベクトルがZ軸の正の方向を向く座標系において、X軸に沿った方向を向くベクトルを接ベクトルとし、Y軸に沿った方向を向くベクトルを従法線ベクトルとした場合に、前記接ベクトル及び前記従法線ベクトルをワールド座標系に座標変換し、
前記ピクセルシェーダ部は、
前記法線マップテクスチャにより得られた法線ベクトルを、前記接ベクトル及び前記従法線ベクトルに基づきワールド座標系に座標変換し、座標変換後の法線ベクトルに基づいて前記バンプ処理を行うことを特徴とするプログラム。
In claim 6,
The vertex shader part is
In the coordinate system that is set for each vertex of the object and the normal vector of each vertex points in the positive direction of the Z-axis, the vector that points in the direction along the X-axis is the tangent vector, and along the Y-axis If the vector facing the direction is a binormal vector, the tangent vector and the binormal vector are coordinate-converted to the world coordinate system,
The pixel shader unit includes:
The normal vector obtained by the normal map texture is coordinate-converted into a world coordinate system based on the tangent vector and the sub normal vector, and the bump processing is performed based on the normal vector after the coordinate conversion. A featured program.
画像を生成するためのプログラムであって、
立体形状の複数のパーツオブジェクトにより構成されるキャラクタが移動するオブジェクト空間の設定を行うオブジェクト空間設定部と、
前記複数のパーツオブジェクトのうちの第1のパーツオブジェクトの展開図に対応した色パターンを有し、前記第1のパーツオブジェクトの表面の色がテクセルに設定される展開図方式のカラーマップテクスチャと、前記第1のパーツオブジェクトの展開図に対応した反射情報パターンを有し、反射情報がテクセルに設定される展開図方式の反射マップテクスチャとを記憶するテクスチャ記憶部と、
前記キャラクタのパラメータを演算するパラメータ演算部と、
演算された前記パラメータに基づいて、展開図方式の前記反射マップテクスチャを変化させて、前記第1のパーツオブジェクトの表面のうちイティング処理が行われるライティング処理領域の面積及び形状の少なくとも1つを変化させる変化処理部と、
頂点単位で処理を行う頂点シェーダ部と、
ピクセル単位で処理を行うピクセルシェーダ部として、
コンピュータを機能させ、
前記変化処理部による変化処理後の前記反射マップテクスチャが前記ピクセルシェーダ部側に転送され、
前記ピクセルシェーダ部が含むライティング処理部が、前記ライティング処理領域の面積及び形状の少なくとも1つが前記パラメータに基づき変化する変化処理後の前記反射マップテクスチャをフェッチし、フェッチされた前記反射マップテクスチャと、現実世界での照光現象をシミュレートするための数学的モデルの演算式である照明モデルと、光源情報とに基づいて、前記第1のパーツオブジェクトのライティング処理をピクセル単位で行うことを特徴とするプログラム。
A program for generating an image,
An object space setting unit for setting an object space in which a character composed of a plurality of three-dimensional part objects moves;
A color map texture of a development view method having a color pattern corresponding to a development view of a first part object of the plurality of part objects, wherein a color of a surface of the first part object is set to a texel; A texture storage unit for storing a reflection map texture of a development map method having a reflection information pattern corresponding to the development drawing of the first part object, and reflection information set in a texel;
A parameter calculation unit for calculating the parameters of the character;
On the basis of the calculated the parameters, by changing the reflection map texture development view scheme, the-Lighting processing of the surface of the first part object is at least one of area and shape of the lighting processing area is performed A change processing unit to change;
A vertex shader that performs processing in units of vertices;
As a pixel shader that performs processing in units of pixels,
Make the computer work,
The reflection map texture after the change processing by the change processing unit is transferred to the pixel shader unit side,
A lighting processing unit included in the pixel shader unit fetches the reflection map texture after the change processing in which at least one of the area and shape of the lighting processing region changes based on the parameter, and the fetched reflection map texture; The lighting process of the first part object is performed in units of pixels based on an illumination model that is an arithmetic expression of a mathematical model for simulating an illumination phenomenon in the real world and light source information. program.
請求項8において、
前記テクスチャ記憶部は、
前記第1のパーツオブジェクトの展開図に対応した法線ベクトルパターンを有し、法線ベクトル情報がテクセルに設定される展開図方式の法線マップテクスチャを記憶し、
前記変化処理部は、
前記反射マップテクスチャが変化した場合に、前記反射マップテクスチャの変化に連動して前記法線マップテクスチャを変化させ、
前記変化処理部による変化処理後の前記反射マップテクスチャと前記法線マップテクスチャが前記ピクセルシェーダ部側に転送され、
前記ピクセルシェーダ部が含むバンプ処理部が、変化処理後の前記法線マップテクスチャをフェッチし、フェッチされた前記法線マップテクスチャに基づいて、前記第1のパーツオブジェクトの表面の凹凸を表すためのバンプ処理をピクセル単位で行うことを特徴とするプログラム。
In claim 8,
The texture storage unit
Having a normal vector pattern corresponding to a development view of the first part object, storing a normal map texture of a development view method in which normal vector information is set in a texel;
The change processing unit
When the reflection map texture changes, the normal map texture is changed in conjunction with the change of the reflection map texture,
The reflection map texture and the normal map texture after the change processing by the change processing unit are transferred to the pixel shader unit side,
A bump processing unit included in the pixel shader unit fetches the normal map texture after the change processing, and represents the unevenness of the surface of the first part object based on the fetched normal map texture. A program characterized by performing bump processing in units of pixels.
画像を生成するためのプログラムであって、
立体形状の複数のパーツオブジェクトにより構成されるキャラクタが移動するオブジェクト空間の設定を行うオブジェクト空間設定部と、
前記複数のパーツオブジェクトのうちの第1のパーツオブジェクトの展開図に対応した色パターンを有し、前記第1のパーツオブジェクトの表面の色がテクセルに設定される展開図方式のカラーマップテクスチャと、前記第1のパーツオブジェクトの展開図に対応した法線ベクトルパターンを有し、法線ベクトル情報がテクセルに設定される展開図方式の法線マップテクスチャを記憶するテクスチャ記憶部と、
前記第1のパーツオブジェクトに対するヒットイベントが発生した場合に、ヒット領域を検出するヒットチェック部と、
検出された前記ヒット領域に対応するテクセル領域において、展開図方式の前記法線マップテクスチャを変化させる変化処理部と、
頂点単位で処理を行う頂点シェーダ部と、
ピクセル単位で処理を行うピクセルシェーダ部として、
コンピュータを機能させ、
前記変化処理部による変化処理後の前記法線マップテクスチャが前記ピクセルシェーダ部側に転送され、
前記ピクセルシェーダ部が含むバンプ処理部が、前記ヒット領域に対応するテクセル領域での法線ベクトル情報が書き換えられた変化処理後の前記法線マップテクスチャをフェッチし、フェッチされた前記法線マップテクスチャに基づいて、前記第1のパーツオブジェクトの表面の凹凸を表すためのバンプ処理をピクセル単位で行うことを特徴とするプログラム。
A program for generating an image,
An object space setting unit for setting an object space in which a character composed of a plurality of three-dimensional part objects moves;
A color map texture of a development view method having a color pattern corresponding to a development view of a first part object of the plurality of part objects, wherein a color of a surface of the first part object is set to a texel; A texture storage unit that stores a normal map texture of a development view method having a normal vector pattern corresponding to the development view of the first part object, and normal vector information set in a texel;
A hit check unit that detects a hit area when a hit event occurs for the first part object;
In the texel region corresponding to the detected hit region, a change processing unit that changes the normal map texture of the development scheme,
A vertex shader that performs processing in units of vertices;
As a pixel shader that performs processing in units of pixels,
Make the computer work,
The normal map texture after the change processing by the change processing unit is transferred to the pixel shader unit side,
The bump processing unit included in the pixel shader unit fetches the normal map texture after the change processing in which normal vector information in the texel region corresponding to the hit region is rewritten, and the fetched normal map texture Based on the above, a program for performing bump processing for expressing the irregularities on the surface of the first part object in units of pixels.
請求項10において、
前記頂点シェーダ部は、
オブジェクトの各頂点に設定される座標系であって各頂点の法線ベクトルがZ軸の正の方向を向く座標系において、X軸に沿った方向を向くベクトルを接ベクトルとし、Y軸に沿った方向を向くベクトルを従法線ベクトルとした場合に、前記接ベクトル及び前記従法線ベクトルをワールド座標系に座標変換し、
前記ピクセルシェーダ部は、
前記法線マップテクスチャにより得られた法線ベクトルを、前記接ベクトル及び前記従法線ベクトルに基づきワールド座標系に座標変換し、座標変換後の法線ベクトルに基づいて前記バンプ処理を行うことを特徴とするプログラム。
In claim 10,
The vertex shader part is
In the coordinate system that is set for each vertex of the object and the normal vector of each vertex points in the positive direction of the Z-axis, the vector that points in the direction along the X-axis is the tangent vector, and along the Y-axis If the vector facing the direction is a binormal vector, the tangent vector and the binormal vector are coordinate-converted to the world coordinate system,
The pixel shader unit includes:
The normal vector obtained by the normal map texture is coordinate-converted into a world coordinate system based on the tangent vector and the sub normal vector, and the bump processing is performed based on the normal vector after the coordinate conversion. A featured program.
コンピュータ読み取り可能な情報記憶媒体であって、請求項1乃至11のいずれかに記載のプログラムを記憶したことを特徴とする情報記憶媒体。   A computer-readable information storage medium, wherein the program according to any one of claims 1 to 11 is stored. 画像を生成する画像生成システムであって、
立体形状の複数のパーツオブジェクトにより構成されるキャラクタが移動するオブジェクト空間の設定を行うオブジェクト空間設定部と、
前記複数のパーツオブジェクトのうちの第1のパーツオブジェクトの展開図に対応した色パターンを有し、前記第1のパーツオブジェクトの表面の色がテクセルに設定される展開図方式のカラーマップテクスチャと、前記第1のパーツオブジェクトの展開図に対応した反射情報パターンを有し、反射情報がテクセルに設定される展開図方式の反射マップテクスチャとを記憶するテクスチャ記憶部と、
前記第1のパーツオブジェクトに対するヒットイベントが発生した場合に、ヒット領域を検出するヒットチェック部と、
検出された前記ヒット領域に対応するテクセル領域において、展開図方式の前記反射マップテクスチャを変化させる変化処理部と、
頂点単位で処理を行う頂点シェーダ部と、
ピクセル単位で処理を行うピクセルシェーダ部とを含み、
前記変化処理部による変化処理後の前記反射マップテクスチャが前記ピクセルシェーダ部側に転送され、
前記ピクセルシェーダ部が含むライティング処理部が、前記ヒット領域に対応するテクセル領域での前記反射情報が書き換えられた変化処理後の前記反射マップテクスチャをフェッチし、フェッチされた前記反射マップテクスチャと、現実世界での照光現象をシミュレートするための数学的モデルの演算式である照明モデルと、光源情報とに基づいて、前記第1のパーツオブジェクトのライティング処理をピクセル単位で行うことを特徴とする画像生成システム。
An image generation system for generating an image,
An object space setting unit for setting an object space in which a character composed of a plurality of three-dimensional part objects moves;
A color map texture of a development view method having a color pattern corresponding to a development view of a first part object of the plurality of part objects, wherein a color of a surface of the first part object is set to a texel; A texture storage unit for storing a reflection map texture of a development map method having a reflection information pattern corresponding to the development drawing of the first part object, and reflection information set in a texel;
A hit check unit that detects a hit area when a hit event occurs for the first part object;
In the texel region corresponding to the detected hit region, a change processing unit that changes the reflection map texture of the development view method,
A vertex shader that performs processing in units of vertices;
A pixel shader that performs processing in units of pixels,
The reflection map texture after the change processing by the change processing unit is transferred to the pixel shader unit side,
The lighting processing unit included in the pixel shader unit fetches the reflection map texture after the change processing in which the reflection information in the texel region corresponding to the hit region is rewritten, and the fetched reflection map texture and real An image characterized in that the lighting process of the first part object is performed in units of pixels based on an illumination model that is a mathematical model arithmetic expression for simulating illumination phenomena in the world and light source information. Generation system.
画像を生成する画像生成システムであって、
立体形状の複数のパーツオブジェクトにより構成されるキャラクタが移動するオブジェクト空間の設定を行うオブジェクト空間設定部と、
前記複数のパーツオブジェクトのうちの第1のパーツオブジェクトの展開図に対応した色パターンを有し、前記第1のパーツオブジェクトの表面の色がテクセルに設定される展開図方式のカラーマップテクスチャと、前記第1のパーツオブジェクトの展開図に対応した反射情報パターンを有し、反射情報がテクセルに設定される展開図方式の反射マップテクスチャとを記憶するテクスチャ記憶部と、
前記キャラクタのパラメータを演算するパラメータ演算部と、
演算された前記パラメータに基づいて、展開図方式の前記反射マップテクスチャを変化させて、前記第1のパーツオブジェクトの表面のうちイティング処理が行われるライティング処理領域の面積及び形状の少なくとも1つを変化させる変化処理部と、
頂点単位で処理を行う頂点シェーダ部と、
ピクセル単位で処理を行うピクセルシェーダ部とを含み、
前記変化処理部による変化処理後の前記反射マップテクスチャが前記ピクセルシェーダ部側に転送され、
前記ピクセルシェーダ部が含むライティング処理部が、前記ライティング処理領域の面積及び形状の少なくとも1つが前記パラメータに基づき変化する変化処理後の前記反射マップテクスチャをフェッチし、フェッチされた前記反射マップテクスチャと、現実世界での照光現象をシミュレートするための数学的モデルの演算式である照明モデルと、光源情報とに基づいて、前記第1のパーツオブジェクトのライティング処理をピクセル単位で行うことを特徴とする画像生成システム。
An image generation system for generating an image,
An object space setting unit for setting an object space in which a character composed of a plurality of three-dimensional part objects moves;
A color map texture of a development view method having a color pattern corresponding to a development view of a first part object of the plurality of part objects, wherein a color of a surface of the first part object is set to a texel; A texture storage unit for storing a reflection map texture of a development map method having a reflection information pattern corresponding to the development drawing of the first part object, and reflection information set in a texel;
A parameter calculation unit for calculating the parameters of the character;
On the basis of the calculated the parameters, by changing the reflection map texture development view scheme, the-Lighting processing of the surface of the first part object is at least one of area and shape of the lighting processing area is performed A change processing unit to change;
A vertex shader that performs processing in units of vertices;
A pixel shader that performs processing in units of pixels,
The reflection map texture after the change processing by the change processing unit is transferred to the pixel shader unit side,
A lighting processing unit included in the pixel shader unit fetches the reflection map texture after the change processing in which at least one of the area and shape of the lighting processing region changes based on the parameter, and the fetched reflection map texture; The lighting process of the first part object is performed in units of pixels based on an illumination model that is an arithmetic expression of a mathematical model for simulating an illumination phenomenon in the real world and light source information. Image generation system.
請求項14において、
前記テクスチャ記憶部は、
前記第1のパーツオブジェクトの展開図に対応した法線ベクトルパターンを有し、法線ベクトル情報がテクセルに設定される展開図方式の法線マップテクスチャを記憶し、
前記変化処理部は、
前記反射マップテクスチャが変化した場合に、前記反射マップテクスチャの変化に連動して前記法線マップテクスチャを変化させ、
前記変化処理部による変化処理後の前記反射マップテクスチャと前記法線マップテクスチャが前記ピクセルシェーダ部側に転送され、
前記ピクセルシェーダ部が含むバンプ処理部が、変化処理後の前記法線マップテクスチャをフェッチし、フェッチされた前記法線マップテクスチャに基づいて、前記第1のパーツオブジェクトの表面の凹凸を表すためのバンプ処理をピクセル単位で行うことを特徴とする画像生成システム。
In claim 14,
The texture storage unit
Having a normal vector pattern corresponding to a development view of the first part object, storing a normal map texture of a development view method in which normal vector information is set in a texel;
The change processing unit
When the reflection map texture changes, the normal map texture is changed in conjunction with the change of the reflection map texture,
The reflection map texture and the normal map texture after the change processing by the change processing unit are transferred to the pixel shader unit side,
A bump processing unit included in the pixel shader unit fetches the normal map texture after the change processing, and represents the unevenness of the surface of the first part object based on the fetched normal map texture. An image generation system that performs bump processing in units of pixels.
画像を生成する画像生成システムであって、
立体形状の複数のパーツオブジェクトにより構成されるキャラクタが移動するオブジェクト空間の設定を行うオブジェクト空間設定部と、
前記複数のパーツオブジェクトのうちの第1のパーツオブジェクトの展開図に対応した色パターンを有し、前記第1のパーツオブジェクトの表面の色がテクセルに設定される展開図方式のカラーマップテクスチャと、前記第1のパーツオブジェクトの展開図に対応した法線ベクトルパターンを有し、法線ベクトル情報がテクセルに設定される展開図方式の法線マップテクスチャを記憶するテクスチャ記憶部と、
前記第1のパーツオブジェクトに対するヒットイベントが発生した場合に、ヒット領域を検出するヒットチェック部と、
検出された前記ヒット領域に対応するテクセル領域において、展開図方式の前記法線マップテクスチャを変化させる変化処理部と、
頂点単位で処理を行う頂点シェーダ部と、
ピクセル単位で処理を行うピクセルシェーダ部とを含み、
前記変化処理部による変化処理後の前記法線マップテクスチャが前記ピクセルシェーダ部側に転送され、
前記ピクセルシェーダ部が含むバンプ処理部が、前記ヒット領域に対応するテクセル領域での法線ベクトル情報が書き換えられた変化処理後の前記法線マップテクスチャをフェッチし、フェッチされた前記法線マップテクスチャに基づいて、前記第1のパーツオブジェクトの表面の凹凸を表すためのバンプ処理をピクセル単位で行うことを特徴とする画像生成システム。
An image generation system for generating an image,
An object space setting unit for setting an object space in which a character composed of a plurality of three-dimensional part objects moves;
A color map texture of a development view method having a color pattern corresponding to a development view of a first part object of the plurality of part objects, wherein a color of a surface of the first part object is set to a texel; A texture storage unit that stores a normal map texture of a development view method having a normal vector pattern corresponding to the development view of the first part object, and normal vector information set in a texel;
A hit check unit that detects a hit area when a hit event occurs for the first part object;
In the texel region corresponding to the detected hit region, a change processing unit that changes the normal map texture of the development scheme,
A vertex shader that performs processing in units of vertices;
A pixel shader that performs processing in units of pixels,
The normal map texture after the change processing by the change processing unit is transferred to the pixel shader unit side,
The bump processing unit included in the pixel shader unit fetches the normal map texture after the change processing in which normal vector information in the texel region corresponding to the hit region is rewritten, and the fetched normal map texture The image generation system according to claim 1, wherein bump processing for expressing irregularities on the surface of the first part object is performed in units of pixels.
請求項16において、
前記頂点シェーダ部は、
オブジェクトの各頂点に設定される座標系であって各頂点の法線ベクトルがZ軸の正の方向を向く座標系において、X軸に沿った方向を向くベクトルを接ベクトルとし、Y軸に沿った方向を向くベクトルを従法線ベクトルとした場合に、前記接ベクトル及び前記従法線ベクトルをワールド座標系に座標変換し、
前記ピクセルシェーダ部は、
前記法線マップテクスチャにより得られた法線ベクトルを、前記接ベクトル及び前記従法線ベクトルに基づきワールド座標系に座標変換し、座標変換後の法線ベクトルに基づいて前記バンプ処理を行うことを特徴とする画像生成システム。
In claim 16,
The vertex shader part is
In the coordinate system that is set for each vertex of the object and the normal vector of each vertex points in the positive direction of the Z-axis, the vector that points in the direction along the X-axis is the tangent vector, and along the Y-axis If the vector facing the direction is a binormal vector, the tangent vector and the binormal vector are coordinate-converted to the world coordinate system,
The pixel shader unit includes:
The normal vector obtained by the normal map texture is coordinate-converted into a world coordinate system based on the tangent vector and the sub normal vector, and the bump processing is performed based on the normal vector after the coordinate conversion. A featured image generation system.
JP2006047511A 2006-02-23 2006-02-23 Program, information storage medium, and image generation system Active JP4782583B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006047511A JP4782583B2 (en) 2006-02-23 2006-02-23 Program, information storage medium, and image generation system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006047511A JP4782583B2 (en) 2006-02-23 2006-02-23 Program, information storage medium, and image generation system

Publications (2)

Publication Number Publication Date
JP2007226575A JP2007226575A (en) 2007-09-06
JP4782583B2 true JP4782583B2 (en) 2011-09-28

Family

ID=38548333

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006047511A Active JP4782583B2 (en) 2006-02-23 2006-02-23 Program, information storage medium, and image generation system

Country Status (1)

Country Link
JP (1) JP4782583B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5061177B2 (en) * 2009-12-24 2012-10-31 株式会社ソニー・コンピュータエンタテインメント Image processing apparatus, image data generation apparatus, image processing method, image data generation method, and data structure of image file
US8947448B2 (en) * 2009-12-24 2015-02-03 Sony Corporation Image processing device, image data generation device, image processing method, image data generation method, and data structure of image file
CN113509731A (en) * 2021-05-19 2021-10-19 网易(杭州)网络有限公司 Fluid model processing method and device, electronic equipment and storage medium

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6771264B1 (en) * 1998-08-20 2004-08-03 Apple Computer, Inc. Method and apparatus for performing tangent space lighting and bump mapping in a deferred shading graphics processor
JP3604312B2 (en) * 1999-12-28 2004-12-22 株式会社スクウェア・エニックス Computer-readable recording medium having recorded video game program, object drawing method in video game, and video game apparatus
JP3442344B2 (en) * 2000-05-17 2003-09-02 株式会社ナムコ GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP3972784B2 (en) * 2002-09-30 2007-09-05 ソニー株式会社 Image processing apparatus and method
JP4305903B2 (en) * 2003-07-10 2009-07-29 株式会社バンダイナムコゲームス Image generation system, program, and information storage medium
JP2005209217A (en) * 2005-02-07 2005-08-04 Namco Ltd Game system and information storage medium

Also Published As

Publication number Publication date
JP2007226575A (en) 2007-09-06

Similar Documents

Publication Publication Date Title
JP4734138B2 (en) Program, information storage medium, and image generation system
JP4734137B2 (en) Program, information storage medium, and image generation system
JP4804122B2 (en) Program, texture data structure, information storage medium, and image generation system
JP4776017B2 (en) Program, information storage medium, and image generation system
JP3748451B1 (en) Program, information storage medium, and image generation system
JP4824514B2 (en) Program, information storage medium, and image generation system
JP4782583B2 (en) Program, information storage medium, and image generation system
JP2006323512A (en) Image generation system, program, and information storage medium
JP4743770B2 (en) Image generation system, program, and information storage medium
JP4488346B2 (en) Program, information storage medium, and image generation system
JP3297410B2 (en) Image generation system and information storage medium
JP5253118B2 (en) Image generation system, program, and information storage medium
JP4707078B2 (en) Image generation system, program, and information storage medium
JP4913399B2 (en) Program, information storage medium, and image generation system
JP2004341570A (en) Image generation system, program and information storage medium
JP4574058B2 (en) Image generation system, program, and information storage medium
JP4056035B2 (en) Image generation system, program, and information storage medium
JP3254195B2 (en) Image generation system and information storage medium
JP2010033288A (en) Image generation system, program and information storage medium
JP4592087B2 (en) Image generation system, program, and information storage medium
US7724255B2 (en) Program, information storage medium, and image generation system
JP4662260B2 (en) Program, information storage medium, and image generation system
JP4865471B2 (en) Program, information storage medium, and image generation system
JP2003162734A (en) Game system and information storage medium
JP2007164729A (en) Image generation system, program and information storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110125

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110325

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110419

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110512

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110705

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110707

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140715

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4782583

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140715

Year of fee payment: 3

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250