JP2007226575A - プログラム、情報記憶媒体及び画像生成システム - Google Patents

プログラム、情報記憶媒体及び画像生成システム Download PDF

Info

Publication number
JP2007226575A
JP2007226575A JP2006047511A JP2006047511A JP2007226575A JP 2007226575 A JP2007226575 A JP 2007226575A JP 2006047511 A JP2006047511 A JP 2006047511A JP 2006047511 A JP2006047511 A JP 2006047511A JP 2007226575 A JP2007226575 A JP 2007226575A
Authority
JP
Japan
Prior art keywords
texture
processing
reflection
unit
map texture
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.)
Granted
Application number
JP2006047511A
Other languages
English (en)
Other versions
JP4782583B2 (ja
Inventor
Koji Matsuo
公次 松尾
Shinichi Ikeda
池田  進一
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.)
Bandai Namco Entertainment Inc
Original Assignee
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 Bandai Games Inc filed Critical Namco Bandai Games Inc
Priority to JP2006047511A priority Critical patent/JP4782583B2/ja
Publication of JP2007226575A publication Critical patent/JP2007226575A/ja
Application granted granted Critical
Publication of JP4782583B2 publication Critical patent/JP4782583B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Image Generation (AREA)

Abstract

【課題】ライティング処理やバンプ処理によるリアルな画像の生成を可能にするプログラム、情報記憶媒体及び画像生成システムの提供。
【解決手段】 画像生成システムは、オブジェクト空間設定部とテクスチャ記憶部とライティング処理部を含む。テクスチャ記憶部は、キャラクタの第1のパーツオブジェクトの展開図に対応した色パターンを有し、第1のパーツオブジェクトの表面の色がテクセルに設定されるカラーマップテクスチャと、第1のパーツオブジェクトの展開図に対応した反射情報パターンを有し、反射情報がテクセルに設定される反射マップテクスチャとを記憶する。ライティング処理部は、反射マップテクスチャのテクセルに設定された反射情報と照明モデルと光源情報に基づいて第1のパーツオブジェクトのライティング処理を行う。
【選択図】 図2

Description

本発明は、プログラム、情報記憶媒体及び画像生成システムに関する。
従来より、キャラクタ、車などのオブジェクトが配置設定されるオブジェクト空間内(仮想的な3次元空間)において仮想カメラ(所与の視点)から見える画像を生成する画像生成システム(ゲームシステム)が知られており、いわゆる仮想現実を体験できるものとして人気が高い。サッカーゲームを楽しめる画像生成システムを例にとれば、プレーヤは、スクリーン上に映し出されたキャラクタを操作し、ドリブルをしたりシュートをしたりしてゲームを楽しむ。
このような画像生成システムでは、生成される画像のリアル性への要求が、年々、高まっている。従って、キャラクタの肌(表面)のライティングや凹凸についても、リアルに表現できることが望ましい。
しかしながら、これまでの画像生成システムでは、キャラクタの肌の色を表すテクスチャを繰り返しマッピングして、キャラクタ画像を生成していた。従って、生成されるキャラクタ画像が、ポリゴンで作った人工的な画像になってしまい、プレーヤの仮想現実感を今ひとつ向上できないという課題があった。
特開2001−325605号公報
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、ライティング処理やバンプ処理によるリアルな画像の生成を可能にするプログラム、情報記憶媒体及び画像生成システムを提供することにある。
本発明は、画像を生成する画像生成システムであって、立体形状の複数のパーツオブジェクトにより構成されるキャラクタが移動するオブジェクト空間の設定を行うオブジェクト空間設定部と、テクスチャを記憶するテクスチャ記憶部と、照明モデルと光源情報に基づいてライティング処理を行うライティング処理部とを含み、前記テクスチャ記憶部は、前記複数のパーツオブジェクトのうちの第1のパーツオブジェクトの展開図に対応した色パターンを有し、前記第1のパーツオブジェクトの表面の色がテクセルに設定されるカラーマップテクスチャと、前記第1のパーツオブジェクトの展開図に対応した反射情報パターンを有し、反射情報がテクセルに設定される反射マップテクスチャとを記憶し、前記ライティング処理部は、前記反射マップテクスチャのテクセルに設定された前記反射情報と前記照明モデルと前記光源情報に基づいて、前記第1のパーツオブジェクトのライティング処理を行う画像生成システムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラム、又は該プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体に関係する。
本発明によれば、第1のパーツオブジェクトの各部分の画像をカラーマップテクスチャに詳細に描くことが可能になる。従って、同じテクスチャを繰り返しマッピングする手法に比べて、より写実的な画像を生成できる。また第1のパーツオブジェクトの各部分の反射情報の状態を反射マップテクスチャに詳細に描くことも可能になる。従って、第1のパーツオブジェクトの各部分のうちライティング処理領域に対応するテクセルに対して反射情報を描くだけで、第1のパーツオブジェクトの各部分での光沢表現を実現できる。この結果、反射マップテクスチャの反射情報パターンを変えるだけで、種々のパターンの画像表現が可能になる。またカラーマップテクスチャに所与の画像パターンが描かれた場合に、反射マップテクスチャのテクセルに対して、その画像パターンに対応した反射情報を書き込むことも可能になる。
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記第1のパーツオブジェクトは、前記キャラクタの腕、顔、足、又は武器のオブジェクトであり、前記ライティング処理部は、前記反射マップテクスチャのテクセルに設定された前記反射情報と前記照明モデルと前記光源情報に基づいて、前記キャラクタの腕、顔、足、又は武器のオブジェクトのライティング処理を行うようにしてもよい。
このようにすれば、キャラクタの腕、顔、足、又は武器に対するリアルなライティング処理が可能になる。
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記反射マップテクスチャのテクセルのうち、前記ライティング処理が行われるライティング処理領域以外の領域に対応するテクセルでは、前記ライティング処理のスペキュラ演算を無効にする第1の値が設定され、前記ライティング処理部は、前記反射情報が第1の値に設定されている場合に、前記スペキュラ演算を無効にするようにしてもよい。
このようにすれば、反射マップテクスチャの反射情報をマスク情報として活用し、スペキュラ画像が生成されると不自然になる部分等においてスペキュラ演算を無効にできる。
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記テクスチャ記憶部は、前記反射マップテクスチャのαプレーンに、前記反射情報として反射率を記憶し、前記ライティング処理部は、前記αプレーンの前記反射率で光が鏡面反射するライティング処理を行うようにしてもよい。
このようにすれば、反射マップテクスチャのαプレーンを利用して、光の鏡面反射の反射率を制御できる。
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記テクスチャ記憶部は、前記反射マップテクスチャの色プレーンに、前記反射情報として光沢色を記憶し、前記ライティング処理部は、前記色プレーンの前記光沢色で光が鏡面反射するライティング処理を行うようにしてもよい。
このようにすれば、反射マップテクスチャの色プレーンを利用して、第1のパーツオブジェクトの表面の光沢色を制御できる。
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記テクスチャ記憶部は、前記第1のパーツオブジェクトの展開図に対応した法線ベクトルパターンを有し、法線ベクトル情報がテクセルに設定される法線マップテクスチャを記憶し、前記法線マップテクスチャに基づいて、前記第1のパーツオブジェクトの表面の凹凸を表すためのバンプ処理を行うバンプ処理部を含んでもよい(該バンプ処理部としてとして、コンピュータを機能させてもよい)。
このようにすれば、ライティング処理による第1のパーツオブジェクトの表面の光沢表現のみならず、表面の凹凸表現も実現でき、画像のリアル度を向上できる。
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、頂点単位で処理を行う頂点シェーダ部と、ピクセル単位で処理を行うピクセルシェーダ部とを含み(該頂点シェーダ部、ピクセルシェーダ部としてコンピュータを機能させ)、前記ピクセルシェーダ部が含む前記ライティング処理部が、前記ライティング処理を行うようにしてもよい。
このようにすれば、ライティング処理をピクセルシェーダ部により実現でき、ピクセル単位での精度の高い光沢表現が可能になる。
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、頂点単位で処理を行う頂点シェーダ部と、ピクセル単位で処理を行うピクセルシェーダ部とを含み(該頂点シェーダ部、ピクセルシェーダ部としてコンピュータを機能させ)、前記ピクセルシェーダ部が含む前記ライティング処理部が前記ライティング処理を行い、前記ピクセルシェーダ部が含む前記バンプ処理部が前記バンプ処理を行うようにしてもよい。
このようにすれば、ライティング処理及びバンプ処理の両方をピクセルシェーダ部により実現でき、ライティング処理とバンプ処理が連動したピクセル単位の処理が可能になる。
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記頂点シェーダ部は、第1、第2の従法線ベクトルをワールド座標系に座標変換し、前記ピクセルシェーダ部は、前記法線マップテクスチャにより得られた法線ベクトルを、前記第1、第2の従法線ベクトルに基づきワールド座標系に座標変換し、前記バンプ処理部は、座標変換後の法線ベクトルに基づいて前記バンプ処理を行うようにしてもよい。
このようにワールド座標系に座標変換したベクトルにより演算すれば、演算精度を向上できる。そして第1、第2の従法線ベクトルを用いて法線ベクトルをワールド座標系に座標変換すれば、座標変換後の法線ベクトルを用いたバンプ処理を実現できるようになる。
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記キャラクタのパラメータを演算するパラメータ演算部と、演算された前記パラメータに基づいて、前記反射マップテクスチャを変化させて、前記第1のパーツオブジェクトの表面のうち前記ライティング処理が行われるライティング処理領域の面積及び形状の少なくとも1つを変化させる変化処理部を含んでもよい(該パラメータ演算部、変化処理部としてコンピュータを機能させてもよい)。
このようにすれば、演算されたパラメータに応じて、ライティング処理領域の面積や形状がリアルタイムに変化する。従って、第1のパーツオブジェクトの表面のリアルな光沢表現が可能になる。
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記テクスチャ記憶部は、前記第1のパーツオブジェクトの展開図に対応した法線ベクトルパターンを有し、法線ベクトル情報がテクセルに設定される法線マップテクスチャを記憶し、前記法線マップテクスチャに基づいて、前記第1のパーツオブジェクトの表面の凹凸を表すためのバンプ処理を行うバンプ処理部を含み(該バンプ処理部としてコンピュータを機能させ)、前記変化処理部は、前記反射マップテクスチャが変化した場合に、前記反射マップテクスチャの変化に連動して前記法線マップテクスチャを変化させてもよい。
このようにすれば、ライティング処理領域でのライティング処理の変化に連動して、ライティング処理領域での凹凸状態も変化するようになり、画像のリアル度を向上できる。
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記第1のパーツオブジェクトに対するヒットイベントが発生した場合に、ヒット領域を検出するヒットチェック部と、検出された前記ヒット領域に対応するテクセル領域において、前記反射マップテクスチャを変化させる変化処理部とを含んでもよい(該ヒットチェック部、変化処理部としてコンピュータを機能させてもよい)。
このようにすれば、ヒットイベントが発生した場合に、ヒット領域での光沢も変化するようになり、多様な画像表現が可能になる。
また本発明は、画像を生成する画像生成システムであって、立体形状の複数のパーツオブジェクトにより構成されるキャラクタが移動するオブジェクト空間の設定を行うオブジェクト空間設定部と、テクスチャを記憶するテクスチャ記憶部と、バンプ処理を行うバンプ処理部とを含み、前記テクスチャ記憶部は、前記複数のパーツオブジェクトのうちの第1のパーツオブジェクトの展開図に対応した色パターンを有し、前記第1のパーツオブジェクトの表面の色がテクセルに設定されるカラーマップテクスチャと、前記第1のパーツオブジェクトの展開図に対応した法線ベクトルパターンを有し、法線ベクトルの情報がテクセルに設定される法線マップテクスチャとを記憶し、前記バンプ処理部は、前記法線マップテクスチャに基づいて、前記第1のパーツオブジェクトの表面の凹凸を表すためのバンプ処理を行う画像生成システムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラム、又は該プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体に関係する。
本発明によれば、第1のパーツオブジェクトの各部分の画像をカラーマップテクスチャに詳細に描くことができるため、より写実的な画像を生成できる。また第1のパーツオブジェクトの各部分の法線ベクトル情報を法線マップテクスチャに詳細に描くことも可能になる。従って、第1のパーツオブジェクトの各部分のうち凹凸を表現したい領域に対して法線ベクトル情報を描くだけで、第1のパーツオブジェクトの各部分での凹凸表現を実現でき、多様な画像を生成できる。またカラーマップテクスチャに所与の画像パターンが描かれた場合に、法線マップテクスチャのテクセルに対して、その画像パターンに対応した法線ベクトル情報を書き込むことも可能になる。
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、前記第1のパーツオブジェクトに対するヒットイベントが発生した場合に、ヒット領域を検出するヒットチェック部と、検出された前記ヒット領域に対応するテクセル領域において、前記法線マップテクスチャを変化させる変化処理部を含んでもよい(該ヒットチェック部、変化処理部としてコンピュータを機能させてもよい)。
このようにすれば、ヒットイベントが発生した場合に、ヒット領域での凹凸状態も変化するようになり、多様な画像表現が可能になる。
また本発明に係る画像生成システム、プログラム及び情報記憶媒体では、頂点単位で処理を行う頂点シェーダ部と、ピクセル単位で処理を行うピクセルシェーダ部を含み(該頂点シェーダ部、ピクセルシェーダ部としてコンピュータを機能させ)、前記ピクセルシェーダ部が含む前記バンプ処理部が前記バンプ処理を行ってもよい。
このようにすれば、バンプ処理をピクセルシェーダ部により実現でき、ピクセル単位での精度の高い凹凸表現が可能になる。
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
1.構成
図1に本実施形態の画像生成システム(ゲームシステム)の機能ブロック図の例を示す。なお本実施形態の画像生成システムは図1の構成要素(各部)の一部を省略した構成としてもよい。
操作部160は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、或いはタッチパネル型ディスプレイなどにより実現できる。記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAM(VRAM)などにより実現できる。
情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、ハードディスク、或いはメモリ(ROM)などにより実現できる。処理部100は、情報記憶媒体180に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体180には、本実施形態の各部としてコンピュータを機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶される。
表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、タッチパネル型ディスプレイ、或いはHMD(ヘッドマウントディスプレイ)などにより実現できる。音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
携帯型情報記憶装置194は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置194としては、メモリカードや携帯型ゲーム装置などがある。通信部196は外部(例えばホスト装置や他の画像生成システム)との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
なお本実施形態の各部としてコンピュータを機能させるためのプログラム(データ)は、ホスト装置(サーバー)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180(あるいは記憶部170)に配信してもよい。このようなホスト装置(サーバー)による情報記憶媒体の使用も本発明の範囲内に含めることができる。
処理部100(プロセッサ)は、操作部160からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの処理を行う。ここでゲーム処理としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、キャラクタやマップなどのオブジェクトを配置する処理、オブジェクトを表示する処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。この処理部100は記憶部170(主記憶部172)をワーク領域として各種処理を行う。処理部100の機能は、各種プロセッサ(CPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
処理部100は、オブジェクト空間設定部110、移動・動作処理部112、仮想カメラ制御部114、パラメータ演算部116、変化処理部118、ヒットチェック部119、描画部120、音生成部130を含む。なおこれらの一部を省略する構成としてもよい。
オブジェクト空間設定部110は、キャラクタ(人、ロボット等)、スタジアム、建物、樹木、壁、マップ(地形)などの表示物を表す各種オブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェイスなどのプリミティブ面で構成されるオブジェクト)をオブジェクト空間に配置設定する処理を行う。即ちワールド座標系でのオブジェクトの位置や回転角度(向き、方向と同義)を決定し、その位置(X、Y、Z)にその回転角度(X、Y、Z軸回りでの回転角度)でオブジェクトを配置する。具体的には、記憶部170のモデルデータ記憶部176には、移動体オブジェクト(キャラクタ)、固定物オブジェクト(ビル)、背景オブジェクト(マップ、天球)のモデルデータが記憶されている。そしてオブジェクト空間設定部110は、このモデルデータを用いてオブジェクト空間へのオブジェクトの設定(配置)処理を行う。
移動・動作処理部112は、オブジェクト(キャラクタ等)の移動・動作演算(移動・動作シミュレーション)を行う。即ち操作部160によりプレーヤが入力した操作データや、プログラム(移動・動作アルゴリズム)や、各種データ(モーションデータ)などに基づいて、オブジェクト(モデルオブジェクト)をオブジェクト空間内で移動させたり、オブジェクトを動作(モーション、アニメーション)させる処理を行う。具体的には、オブジェクトの移動情報(位置、回転角度、速度、或いは加速度)や動作情報(パーツオブジェクトの位置、或いは回転角度)を、1フレーム(1/60秒)毎に順次求めるシミュレーション処理を行う。なおフレームは、オブジェクトの移動・動作処理(シミュレーション処理)や画像生成処理を行う時間の単位である。
仮想カメラ制御部114は、オブジェクト空間内の所与(任意)の視点から見える画像を生成するための仮想カメラ(視点)の制御処理を行う。具体的には、仮想カメラの位置(X、Y、Z)又は回転角度(X、Y、Z軸回りでの回転角度)を制御する処理(視点位置、視線方向あるいは画角を制御する処理)を行う。
例えば仮想カメラによりオブジェクト(例えばキャラクタ、ボール、車)を後方から撮影する場合には、オブジェクトの位置又は回転の変化に仮想カメラが追従するように、仮想カメラの位置又は回転角度(仮想カメラの向き)を制御する。この場合には、移動・動作処理部112で得られたオブジェクトの位置、回転角度又は速度などの情報に基づいて、仮想カメラを制御できる。或いは、仮想カメラを、予め決められた回転角度で回転させたり、予め決められた移動経路で移動させる制御を行ってもよい。この場合には、仮想カメラの位置(移動経路)又は回転角度を特定するための仮想カメラデータに基づいて仮想カメラを制御する。
パラメータ演算部116は、ゲーム処理に用いる各種のパラメータを演算する。例えばパラメータ演算部116は、キャラクタに関するパラメータ(ステータスパラメータ)を演算する。具体的には、キャラクタの体力(スタミナ)パラメータや、運動量(移動量、移動情報)パラメータや、時間経過(運動時間)パラメータを演算する。ここで体力パラメータは、キャラクタの残りの体力を表すパラメータであり、キャラクタの移動・動作の継続や、時間経過に伴って減少する。また運動量パラメータは、キャラクタの運動の度合いを量的に表すパラメータであり、キャラクタが移動・動作することで増加する。また時間経過パラメータは、キャラクタに関する時間の経過を表すパラメータであり、例えばキャラクタが移動・動作(運動)を開始してからの時間経過に伴い増加する。
変化処理部118は、パラメータ演算部116で演算されたパラメータに基づいて、反射マップテクスチャを変化させる処理を行う。例えば演算されたパラメータに基づいて、反射マップテクスチャの差し替え(切り替え)を行ったり、反射マップテクスチャの反射情報の書き換えを行う。そしてこのように反射マップテクスチャを変化させることで、ライティング処理領域の面積、形状や、光の反射率や、光沢色を変化させる。具体的には、パラメータ演算部116で演算された体力パラメータが少なくなるほど、或いは運動量パラメータが大きくなるほど、或いは時間経過パラメータが大きくなるほど、ライティング処理領域の面積(キャラクタ表面での占有面積)を大きくする処理を行う。
また変化処理部118は、パラメータ演算部116で演算されたパラメータに基づいて、法線マップテクスチャを変化させる処理を行う。例えば演算されたパラメータに基づいて、法線マップテクスチャの差し替え(切り替え)を行ったり、法線マップテクスチャの法線ベクトル情報の書き換えを行う。また変化処理部118は、反射マップテクスチャが変化した場合に、反射マップテクスチャの変化に連動して法線マップテクスチャを変化させる処理を行う。例えば反射マップテクスチャの変化により、ライティング処理領域の面積、形状等が変化した場合には、この面積、形状等の変化に連動して、ライティング処理領域での法線マップテクスチャを変化させる。
ヒットチェック部119はキャラクタについてのヒットチェック処理を行う。具体的には、キャラクタ(モデルオブジェクト)と、他のオブジェクト(プリミティブ)との間のヒットチェック処理を行う。ここで他のオブジェクトは、他のキャラクタや、他のキャラクタのパーツオブジェクトや、ボール等のプレイ対象物や、キャラクタに対する攻撃物等である。他のオブジェクトは、表示されるオブジェクトであってもよいし、表示されない仮想的なオブジェクトであってもよい。またヒットチェック処理によるヒット領域の検出は、例えばキャラクタの面と他のオブジェクトの移動軌道との交点を求めることで実現できる。なお、他のオブジェクトとのヒットチェックの対象となるキャラクタのオブジェクトは、表示用のモデルオブジェクトであってもよいし、ヒットチェック用のモデルオブジェクト(簡易オブジェクト)であってもよい。ここで表示用モデルオブジェクトは、画面に実際に表示されるモデルオブジェクトである。またヒットチェック用モデルオブジェクト(ヒットボリューム、ヒットボックス)は、ヒットチェックのために表示用モデルオブジェクトとは別に用意され、表示用モデルオブジェクトの形状を簡略化したモデルオブジェクト(ポリゴン数、頂点数が少ないオブジェクト)である。
そして本実施形態ではヒットチェック部119は、キャラクタを構成する第1のパーツオブジェクトに対するヒットイベント(キャラクタに他のオブジェクトがヒットするイベント)が発生した場合に、ヒット位置であるヒット領域を検出する。すると変化処理部118は、検出されたヒット領域に対応するテクセル領域において、反射マップテクスチャや法線マップテクスチャを変化させる処理を行う。具体的には、反射マップテクスチャや法線マップテクスチャのテクセルのうち、ヒット領域に対応する部分のテクセルの反射情報や法線ベクトル情報を書き換える。
描画部120は、処理部100で行われる種々の処理(ゲーム処理)の結果に基づいて描画処理を行い、これにより画像を生成し、表示部190に出力する。いわゆる3次元ゲーム画像を生成する場合には、まずモデル(オブジェクト)の各頂点の頂点データ(頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)を含むモデルデータが入力され、入力されたモデルデータに含まれる頂点データに基づいて、頂点処理(頂点シェーダによるシェーディング)が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理(テッセレーション、曲面分割、ポリゴン分割)を行うようにしてもよい。
描画部120は、オブジェクトを描画する際にジオメトリ処理、隠面消去処理、αブレンディング等を行う。
ジオメトリ処理では、オブジェクトに対して、座標変換、クリッピング処理、透視投影変換、或いは光源計算等の処理が行われる。そして、ジオメトリ処理後(透視投影変換後)のモデルデータ(オブジェクトの頂点の位置座標、テクスチャ座標、色データ、法線ベクトル、或いはα値等)は、記憶部170に保存される。
隠面消去処理としては、描画ピクセルのZ値(奥行き情報)が格納されるZバッファ(奥行きバッファ)を用いたZバッファ法(奥行き比較法、Zテスト)による隠面消去処理を行うことができる。すなわちオブジェクトのプリミティブに対応する描画ピクセルを描画する際に、Zバッファに格納されるZ値を参照する。そして参照されたZバッファのZ値と、プリミティブの描画ピクセルでのZ値とを比較し、描画ピクセルでのZ値が、仮想カメラから見て手前側となるZ値(例えば小さなZ値)である場合には、その描画ピクセルの描画処理を行うとともにZバッファのZ値を新たなZ値に更新する。
αブレンディング(α合成)は、α値(A値)に基づく半透明合成処理(通常αブレンディング、加算αブレンディング又は減算αブレンディング等)のことである。
なお、α値は、各ピクセル(テクセル、ドット)に関連づけて記憶できる情報であり、例えば色情報以外のプラスアルファの情報である。α値は、マスク情報、半透明度(透明度、不透明度と等価)、バンプ情報などとして使用できる。
描画部120は、頂点シェーダ部(頂点処理部)122、ピクセルシェーダ部(ピクセル処理部)124を含む。
頂点シェーダ部122は、頂点単位の処理(per vertex processing)である頂点処理を行う。この頂点処理では、頂点処理プログラム(頂点シェーダプログラム、第1のシェーダプログラム)に従って、頂点の移動処理、座標変換処理(ワールド座標変換、カメラ座標変換、頂点座標変換)、ライティング処理、或いはデータ出力処理(レジスタ格納処理)等が行われる。そして、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データが変更(更新、調整)される。そして、頂点処理後の頂点データに基づいてラスタライズ(走査変換)が行われ、ポリゴン(プリミティブ)の面とピクセルとが対応づけられる。
そしてこのラスタライズに続いて、ピクセルシェーダ部124は、ピクセル単位の処理(per pixel processing)であるピクセル処理を行う。このピクセル処理(ピクセルシェーダによるシェーディング、フラグメント処理)では、ピクセル処理プログラム(ピクセルシェーダプログラム、第2のシェーダプログラム)に従って、テクスチャのフェッチ(テクスチャマッピング)、ライティング処理、色データの設定/変更、半透明合成、アンチエイリアス等が行われる。そして画像を構成するピクセルの最終的な描画色を決定し、透視変換されたオブジェクトの描画色を描画バッファ174(ピクセル単位で画像情報を記憶できるバッファ。VRAM、レンダリングターゲット)に出力(描画)する。即ち、ピクセル処理では、画像情報(色、法線、輝度、α値等)をピクセル単位で設定あるいは変更するパーピクセル処理を行う。これにより、オブジェクト空間内において仮想カメラ(所与の視点)から見える画像が生成される。
なお頂点処理やピクセル処理は、シェーディング言語によって記述されたシェーダプログラムによって、ポリゴン(プリミティブ)の描画処理をプログラム可能にするハードウェア、いわゆるプログラマブルシェーダ(頂点シェーダやピクセルシェーダ)により実現できる。プログラマブルシェーダでは、頂点単位の処理やピクセル単位の処理がプログラム可能になることで描画処理内容の自由度が高く、従来のハードウェアによる固定的な描画処理に比べて表現力を大幅に向上させることができる。
そして本実施形態ではオブジェクト空間設定部110が、キャラクタ(モデルオブジェクト)が移動するオブジェクト空間の設定を行う。またテクスチャ記憶部178が、キャラクタ(モデルオブジェクト)を構成する複数のパーツオブジェクトのうちの第1のパーツオブジェクトの展開図に対応した色パターンを有し、第1のパーツオブジェクトの表面の色がテクセルに設定される展開図方式のカラーマップテクスチャを記憶する。また第1のパーツオブジェクトの展開図に対応した反射情報パターンを有し、反射情報がテクセルに設定される展開図方式の反射マップテクスチャを記憶する。
そしてピクセルシェーダ部124が含むライティング処理部126がライティング処理を行う。具体的にはこのライティング処理は、光源情報(ライトベクトル、光源色、明るさ、光源タイプ等)、照明モデル、法線ベクトル、オブジェクトのマテリアル・パラメータ(色、材質)などを用いて行われる。なお照明モデルとしては、アンビエント光とディフューズ光だけを考慮したランバードの照明モデルや、アンビエント光、ディフューズ光に加えてスペキュラ光も考慮するフォンの照明モデルやブリン・フォンの照明モデルなどがある。
そして本実施形態ではライティング処理部126が、テクスチャ記憶部178に記憶される反射マップテクスチャのテクセルに設定された反射情報と、照明モデル(照明モデルの演算式)と、光源情報(ライトベクトル)に基づいて、第1のパーツオブジェクトのライティング処理を行う。例えばキャラクタの表面のうち、ライティング処理が行われる領域として設定されるライティング処理領域(例えば液体付着領域)において、光沢(光の反射)を表現するためのライティング処理(スペキュラ演算)を行う。例えば反射マップテクスチャの反射情報(反射率)をマスク情報として用いて、反射情報によりライティング処理領域とそれ以外の領域を判別し、判別されたライティング処理領域に対して、反射情報と照明モデルと光源情報に基づくライティング処理を行う。例えば、反射マップテクスチャのテクセルのうち、ライティング処理領域以外の領域に対応するテクセルでは、スペキュラ演算を無効にする第1の値(例えば0の値)が設定され、ライティング処理領域に対応するテクセルでは、第1の値以外の値(例えば0より大きく、1以下の値)に設定される。そして反射情報が第1の値に設定されている場合に、スペキュラ演算により得られるスペキュラ値を0にする。一方、反射情報が第1の値以外の値に設定される場合には、その値を反射率としてスペキュラ演算を行う。
なお第1のパーツオブジェクトは、キャラクタの例えば腕、顔(頭)、足、又は武器(剣、拳銃等)のオブジェクトであり、ライティング処理部126は、反射マップテクスチャのテクセルに設定された反射情報と照明モデルと光源情報に基づいて、キャラクタの腕、顔、足、又は武器のオブジェクトのライティング処理を行う。
また本実施形態ではテクスチャ記憶部178が、第1のパーツオブジェクトの表面の凹凸(バンプ)を表すための法線マップテクスチャを記憶する。具体的には、第1のパーツオブジェクトの展開図に対応した法線ベクトルパターンを有し、法線ベクトルの情報がテクセルに設定される展開図方式の法線マップテクスチャを記憶する。そしてピクセルシェーダ部124が含むバンプ処理部128は、テクスチャ記憶部178からフェッチした法線マップテクスチャに基づいて、第1のオブジェクトの表面の凹凸を表すためのバンプ処理を行う。具体的には、法線マップテクスチャのテクセルに設定された法線ベクトルの情報に基づいて、ライティング処理領域においてバンプ処理を行い、第1のパーツオブジェクトの表面にあたかも凹凸があるかのように見える、シェーディング処理を施す。なおライティング処理部126やバンプ処理部128をピクセルシェーダ部124に含ませない変形実施も可能である。
音生成部130は、処理部100で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部192に出力する。
なお、本実施形態の画像生成システムは、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末(ゲーム機、携帯電話)を用いて分散処理により生成してもよい。
2.本実施形態の手法
2.1 展開図方式のテクスチャによるライティング処理
図2(A)に、キャラクタを構成する第1のパーツオブジェクトPOBの例を示す。実際のキャラクタのパーツオブジェクトは、多数のポリゴンにより複雑に形成されているが、図2(A)では説明を簡素化するために、パーツオブジェクトPOBが6角柱である場合の例を示している。
本実施形態ではキャラクタは、立体形状の複数のパーツオブジェクト(部位オブジェクト)により構成される。具体的には、キャラクタの右腕、左腕、頭(顔)、右足、左足、武器、又は胴等を表すパーツオブジェクトにより構成される。そしてこれらのパーツオブジェクトに対して、各パーツオブジェクトの展開図に対応したカラーマップテクスチャ、反射マップテクスチャ、法線マップテクスチャが用意されて、各パーツオブジェクトにマッピングされる。
例えば図2(B)(C)に、図2(A)の6角柱のパーツオブジェクトPOBにマッピングされる展開図方式のカラーマップテクスチャ、反射マップテクスチャの例を示す。図2(B)のカラーマップテクスチャは、パーツオブジェクトPOBの展開図に対応した色パターンを有し、パーツオブジェクトPOBの表面の色がテクセルに設定されるテクスチャである。また図2(C)の反射マップテクスチャは、パーツオブジェクトPOBの展開図に対応した反射情報パターンを有し、パーツオブジェクトPOBにマッピングすべき反射情報がテクセルに設定されるテクスチャである。本実施形態ではライティング処理部126が、反射マップテクスチャのテクセルに設定された反射情報と照明モデルと光源情報に基づいて、パーツオブジェクトPOBのライティング処理を行う。
例えば本実施形態ではキャラクタ(パーツオブジェクト)の肌(広義には表面)に付着する汗(広義には液体、水分)の画像表現を以下の手法により実現している。なお以下では、本実施形態の手法を、キャラクタの表面に付着する液体の光の反射に適用した場合を例にとり説明するが、本実施形態の手法はこれに限定されず、液体以外の物体による光の反射にも適用できる。例えばキャラクタが着る服による光の反射や、キャラクタが身につける装飾品による光の反射や、キャラクタが所持する武器(例えば剣、銃)の表面での光の反射にも、本実施形態の手法は適用できる。また以下では、キャラクタに付着する液体が汗である場合を例にとり説明するが、本実施形態の液体は汗に限定されない。例えば雨のしずくや、キャラクタの目から流れる涙等であってもよい。或いは海から出現する半漁人等のモンスターの表面に付着する液体等であってもよい。
本実施形態ではキャラクタの汗を表現するために、図3(A)に模式的に示される反射マップテクスチャをテクスチャ記憶部178に記憶する。この反射マップテクスチャでは、そのテクセルに、汗の光沢(テカリ)を表現するための反射情報が設定される。この反射情報としては、汗での光の反射率や、汗での反射光の光沢色(光源色)などが考えられる。この反射情報は、液体により光が反射する領域と反射しない領域を区別するためのマスク情報としても機能することができる。
例えば図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が徐々に減少するようなグラディエーション設定を行ってもよい。
さて、現実世界での照光現象をシミュレートするための数学的モデルとして、この種の画像生成システムでは種々の照明モデルが用いられている。図3(B)に、光源が平行光である場合の照明モデルの例を示す。このブリン・フォンの照明モデル(鏡面反射モデル)は例えば下式(1)で表すことができる。
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|と表すことができる。
このブリン・フォンの照明モデルでは、スペキュラ光の強さは法線ベクトルNとハーフベクトルHの内積のべき乗で表される。従って、法線ベクトルNとハーフベクトルHの向きが近くなる場所ほど、スペキュラ光が強くなる。また鏡面反射指数Pが例えば10以下というように小さい場合には、広い範囲にわたって鏡面反射のハイライトが広がり、鏡面反射指数Pが例えば100ぐらいに大きい場合には、ハイライトが小さな点になる。
本実施形態の照明モデルは下式(2)で表されるようなフォンの照明モデルであってもよい。
I=Ks×(L・R)×Is+Kd×(N・L)×Id+Ka×Ia (2)
ここでRは反射ベクトルであり、R=−E+2(N・E)Nの式により求めることができる。このフォンの照明モデルでは、スペキュラ光の強さはライトベクトルLと反射ベクトルRの内積のべき乗で表される。従って、ライトベクトルLと反射ベクトルRの向きが近くなる場所ほど、スペキュラ光が強くなる。
なお本実施形態の照明モデルは上式(1)(2)の照明モデルに限定されない。例えば上式(1)(2)の照明モデルに対して明るさ補正等を行ってもよいし、上式(1)(2)とは異なる式で表される照明モデルを用いてもよい。
そして本実施形態ではライティング処理部126が、図3(A)の反射マップテクスチャの反射情報と、図3(B)の照明モデルと、光源情報に基づいて、キャラクタの表面のライティング処理を行っている。具体的には汗付着領域において汗の光の反射を表すためのライティング処理を行っている。
例えば比較例の手法として、キャラクタの汗付着領域に汗の色の着色処理を行うことで、汗を表現する手法が考えられる。具体的には汗付着領域に汗のカラーマップテクスチャをマッピングする。
しかしながら、この比較例の手法では、視線ベクトル、ライトベクトル、キャラクタの位置・方向関係が変化しても、汗の光沢は変化せず、常に同じような汗の画像が生成されるため、リアル感に乏しい。
これに対して本実施形態の手法によれば、視線ベクトル、ライトベクトル、キャラクタの位置・方向関係が変化すると、それに応じて汗での光の反射の具合が変化するようになる。例えば図3(B)において、ハーフベクトルHとキャラクタの法線ベクトルNのなす角度(或いはLとRのなす角度)が0度に近い位置・方向関係になると、汗付着領域において汗の光が強く反射して見える画像が生成される。一方、ハーフベクトルHと法線ベクトルNのなす角度(或いはLとRのなす角度)が大きくなる位置・方向関係になると、汗付着領域における汗の光の反射が弱い画像が生成される。従って、比較例の手法に比べて、生成される画像のリアル度を格段に向上できる。
例えば本実施形態をサッカーゲーム等のスポーツゲームに適用した場合を考える。この場合に、キャラクタがスタジアムのフィールド上を移動した時に、キャラクタの肌の法線ベクトルNの方向と、スタジアムに配置された照明からのライトベクトルLの方向と、キャラクタを追う仮想カメラの視線ベクトルEの位置・方向関係に応じて、キャラクタの汗の光具合がリアルタイムに変化する。従って、あたかも本当の人間がサッカーをプレイしているかのような見える仮想現実感をプレーヤに与えることができる。
また本実施形態では、反射マップテクスチャの反射情報である反射率Ksが0.0に設定されると、その部分に光があたっても、スペキュラ演算が無効になり、光の鏡面反射が起こらないようになる。従って、鏡面反射が起きると不自然になる部分については、Ks=0.0に設定するだけでスペキュラ演算を無効にできるようになり、キャラクタのデザインを容易化できる。
2.2 展開図方式のテクスチャの詳細例
図4、図5、図6に、各々、本実施形態で使用されるカラーマップテクスチャ、反射マップテクスチャ、法線マップテクスチャの詳細例を示す。これらのテクスチャは、キャラクタを構成する複数のパーツオブジェクトのうちの腕のパーツオブジェクトにマッピングされるテクスチャである。
例えば図4のカラーマップテクスチャは、腕パーツオブジェクト(広義には第1のパーツオブジェクト)の展開図に対応した色パターン(テクスチャ色のパターン)を有する。そして腕パーツオブジェクトの表面の色がカラーマップテクスチャのテクセルに設定される。即ち閉じた図形である立体形状の腕パーツオブジェクトを、開いた図形である展開図にした場合に、この展開図に対してマッピングされるべき色パターンを有するカラーマップテクスチャを用意する。別の言い方をすれば、腕パーツオブジェクトを包み込むようにマッピングされる1枚のカラーマップテクスチャを用意する。例えば図4のカラーマップテクスチャは、腕(広義には部位)の表の部分と裏の部分は異なる色パターンになっており、腕の下腕部分と上腕部分も異なる色パターンになっている。そしてこのように腕の各部分の色パターンが異なる展開図方式のカラーマップテクスチャを、腕パーツオブジェクトを包み込むようにマッピングする。
例えば図9(A)の比較例の手法では、パーツオブジェクトPOBが複数のポリゴンPLにより構成される。そしてこれらの複数の各ポリゴンPLに対して、肌の模様を表すカラーマップテクスチャTEXを繰り返しマッピングすることで腕の画像を生成する。
この比較例の手法では、テクスチャの使用記憶容量を節約できるという利点がある。しかしながら、腕の各部分での肌の模様が同じになるため、生成される画像が単調になる。従って、ポリゴンで作った人工的に見えるキャラクタ画像が生成されてしまい、プレーヤの仮想現実感を向上できない。
これに対して図4に示すようなカラーマップテクスチャを用いれば、腕の各部分のディテール画像をカラーマップテクスチャに描くことができる。従って、図9(A)の比較例の手法に比べて、生成される腕の画像のリアル度を格段に向上できる。そして本当の人間の肌の色を持つようなリアルなキャラクタ画像を生成でき、プレーヤの仮想現実感を向上できる。
そして本実施形態では図5に示すように、図4のカラーマップテクスチャと同様に、反射マップテクスチャについても展開図方式のテクスチャを用いている。この図5の反射マップテクスチャは、腕パーツオブジェクトの展開図に対応した反射情報パターン(マスクパターン)を有する。そして腕パーツオブジェクトの表面にマッピングすべき反射情報が反射マップテクスチャのテクセルに設定される。即ち、閉じた図形である腕パーツオブジェクトの展開図に対してマッピングされるべき反射情報パターンを有する反射マップテクスチャを用意する。別の言い方をすれば、腕パーツオブジェクトを包み込むようにマッピングされる1枚の反射マップテクスチャを用意する。例えば図5の反射マップテクスチャは、腕の表の部分と裏の部分は異なる反射情報パターンになっており、腕の下腕部分と上腕部分も異なる反射情報パターンになっている。そして、このように腕の各部分の反射情報パターンが異なる展開図方式の反射マップテクスチャを、腕パーツオブジェクトを包み込むようにマッピングする。
例えば図9(B)の比較例の手法では、円の中心に近づくほど明るくなり、円の中心から遠ざかるほど暗くなる反射マップテクスチャを用意する。そしてハーフベクトルHと法線ベクトルLの方向が一致する場合には、円の中心付近の反射情報(反射率=1.0)がフェッチされてマッピングされる。一方、ハーフベクトルHと法線ベクトルLの方向が一致しない場合には、円の輪郭付近の反射情報(反射率=0.0)がフェッチされてマッピングされる。
しかしながらこの比較例の手法では、ハーフベクトルHと法線ベクトルLが一致する場所にハイライトが生成されるというような単調なスペキュラ効果しか実現できない。従って、キャラクタの汗による光のスペキュラ効果を実現するのが困難となる。
これに対して本実施形態では、腕パーツオブジェクトの各部分のうちライティング処理領域に対応する反射マップテクスチャのテクセル領域に対して、高い反射率の反射情報を描くだけで、ライティング処理領域での光のスペキュラ効果を実現できる。従って、反射マップテクスチャの反射情報パターンを変えるだけで、種々の反射パターンのスペキュラ効果を表現でき、リアルなキャラクタ画像を生成できる。例えば図4のカラーマップテクスチャにおいて、筋肉の筋を表す画像パターンを描いたとする。この場合には、図5の反射マップテクスチャにおいて、筋肉の筋を表すパターン画像に対応する領域のテクセルに対して、キャラクタの汗を表現するために、高い反射率の反射情報を書き込む。即ちカラーマップテクスチャに所与の画像パターンが描かれた場合に、反射マップテクスチャのテクセル(その画像パターンが描かれた領域に対応するテクセル)に対して、その画像パターンに対応した反射情報を書き込む。このようにすれば、キャラクタの腕の筋肉の筋に沿って例えば汗等が流れているかのように見える画像を生成できる。
また本実施形態では図6に示すように、図4のカラーマップテクスチャや図5の反射マップテクスチャと同様に、法線マップテクスチャについても展開図方式のテクスチャを用いている。この図6の法線マップテクスチャは、腕パーツオブジェクトの展開図に対応した法線ベクトルパターン(マスクパターン)を有する。そして腕パーツオブジェクトの表面にマッピングすべき法線ベクトルが法線マップテクスチャのテクセルに設定される。即ち、展開図の図形に対してマッピングされるべき法線ベクトルパターンを有する法線マップテクスチャを用意する。別の言い方をすれば、腕パーツオブジェクトを包み込むようにマッピングされる1枚の法線マップテクスチャを用意する。そしてこのように腕の各部分の法線ベクトルパターンが異なる展開図方式の法線マップテクスチャを、腕パーツオブジェクトを包み込むようにマッピングする。
図7に本実施形態により生成されるキャラクタの腕の画像の例を示す。図7では、キャラクタの腕の汗の光沢がリアルに表現されている。そして図3(B)の法線ベクトルNとハーフベクトルH(或いはLとR)の方向が一致すると、汗付着領域(ライティング処理領域)での汗の光沢が増し、これらのベクトルの方向が一致しなくなると、汗付着領域での汗の光沢が減るようになる。また図7では、キャラクタの筋肉の筋等にそって汗の光沢が表現される。また本実施形態では汗の凹凸を法線マップテクスチャを用いて表現しているため、平面的ではなく立体的に見える汗が表現される。
図8に本実施形態により生成されるキャラクタの顔(頭)の画像の例を示す。図8では、キャラクタの顔のひたいや、目の下や、唇の上に汗付着領域(ライティング処理領域)が設定される。そして本実施形態では、ライティング処理部126が、これらの汗付着領域において、汗の光沢を表すためのライティング処理を行い、バンプ処理部128が、汗の凹凸を表すためのバンプ処理を、これらの汗付着領域において行う。こうすることで、これらの汗付着領域では、汗の光沢のみならず汗(肌)の凹凸も表現されるようになる。即ち、ライトにより光る汗が、あたかも肌(皮膚)の凹凸に沿って付着しているかのように見える画像を生成でき、本物の肌に汗が付着しているかのような印象をプレーヤに与えることができる。
この点、図9(B)の手法では、ライティング処理とバンプ処理を連動させた処理を実現できないため、図8のような画像を生成することは難しい。これに対して本実施形態では、ライティング処理部126、バンプ処理部128がピクセルシェーダ部124に含まれ、これらのライティング処理部126、バンプ処理部128が、反射マップテクスチャと法線マップテクスチャを用いてピクセル単位でのライティング処理とバンプ処理を行う。従ってライティング処理とバンプ処理を連動させた処理を実現でき、図8のような汗の光沢と汗の凹凸の両方が表現された画像を生成できる。
また図8において、例えば、目の上の隈の部分や鼻の穴の部分や顎の下の部分において、スペキュラ効果が現れると不自然な画像になる。この点、本実施形態では、これらの部分においては、Ks=0.0に設定することで、スペキュラ演算を無効にできる。従って、光源からの光がこの部分にあたったとしても、この部分では鏡面反射が生じないようになり、より自然でリアルな画像を少ない処理負荷で生成できる。
2.3 反射マップテクスチャ
図10は反射マップテクスチャの説明図である。図10ではテクスチャ記憶部178が、反射マップテクスチャのαプレーンに、反射情報として反射率(反射係数)を記憶している。そしてライティング処理部126は、汗付着領域(ライティング処理領域)において、αプレーンの反射率で光が鏡面反射するライティング処理を行う。一方、テクスチャ記憶部178は、反射マップテクスチャの色プレーンに、反射情報として汗等の光沢色(光源色)を記憶する。例えば反射マップテクスチャのR、G、Bプレーンのテクセルに、光沢色のR、G、Bデータが記憶される。そしてライティング処理部126は、汗付着領域において、色プレーンの光沢色で光が鏡面反射するライティング処理を行う。
図10の反射マップテクスチャによれば、αプレーンに設定される反射率を用いて、汗付着領域での光の反射の強度を制御できる。一方、R、G、Bの色プレーンに設定される光沢色に基づいて、汗により反射する色を制御できる。例えば黄色の肌を有するキャラクタでは、汗の光沢色を黄色に設定したり、白の肌のキャラクタでは、汗の光沢色を青みがかった色に設定するなどの制御が可能になる。これにより、更にリアルな画像を生成できる。
なお図10では、反射マップテクスチャの反射情報として光沢色を設定しているが、これらの光沢色を設定せずに、反射率のみを設定するようにしてもよい。またαプレーンに設定される反射情報は反射率そのものでもあってもよいし、反射率と等価なパラメータ(マスクパラメータ)であってもよい。また反射率をR、G、Bのいずれかの色プレーンに設定する変形実施も可能である。
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.5 頂点シェーダ、ピクセルシェーダ
図12(A)に頂点シェーダ部122、ピクセルシェーダ部124の詳細な構成例を示す。頂点シェーダ部122(頂点処理部)の機能は、例えばベクトル演算ユニットなどのハードウェアと、図12(B)に示すような頂点シェーダプログラム(頂点処理プログラム)により実現できる。この頂点シェーダプログラムには頂点毎の処理を行うための変数、関数等が記述されている。またピクセルシェーダ部124(ピクセル処理部)の機能も、例えばベクトル演算ユニットなどのハードウェアと、図12(B)に示すようなピクセルシェーダプログラム(ピクセル処理プログラム)により実現できる。このピクセルシェーダプログラムにはピクセル毎の処理を行うための変数、関数等が記述されている。
図12(A)では頂点シェーダ部122は、座標変換部10と出力部12を含む。ここで座標変換部10は種々の座標系への座標変換を行う。具体的には例えば図13(A)に示すように、頂点座標PV、視線ベクトルE、ライトベクトルL、法線ベクトルN、従法線ベクトル(接ベクトル)T、従法線ベクトルBを、例えばローカル座標系からワールド座標系に変換する。なおこれらのベクトル等の一部のみをワールド座標系に変換してもよい。出力部12は変換後の頂点座標PV、視線ベクトルE、ライトベクトルL等を出力レジスタに格納してピクセルシェーダ部124に渡す。
ラスタライズ処理部123はラスタライズ(走査線変換)処理を行う。具体的にはラスタライズ処理部123には、頂点シェーダ部122から加工済みの頂点データが入力される。そしてラスタライズ処理部123は、加工済みの頂点データに基づいて、ポリゴンを構成するピクセルの生成処理を行う。この場合に例えば、頂点データに含まれる頂点座標、各種ベクトル(法線ベクトル等)、頂点色、頂点テクスチャ座標等の補間処理(線形補間等)が行われ、ピクセル座標や、ピクセルでの各種ベクトルや、ピクセル色や、ピクセルでのテクスチャ座標等が求められる。
ピクセルシェーダ部124はテクスチャフェッチ部20(テクスチャマッピング部)とピクセル加工処理部22を含む。テクスチャフェッチ部20は、テクスチャのフェッチ処理(マッピング、サンプリング処理)を行う。具体的には、ピクセルのテクスチャ座標等を用いてテクスチャ記憶部178からテクスチャのデータを読み出す。
ピクセル加工処理部22は、ピクセルデータに対する種々の加工処理を行う。そしてこの加工処理により、ピクセル(フラグメント)の色が決定される。そして加工処理(ピクセルシェーダ)の後に、例えばシザーテスト、アルファテスティング、深度テスト又はステンシルテストなどを実行して、そのピクセル(フラグメント)が表示されるのか否かを最終的に決定する。なおそのピクセルが表示されることが決まった後に、更にピクセルデータの加工処理(フォグ、半透明合成、アンチエイリアス)が行われて、加工処理後のピクセルデータがフレームバッファに書き込まれることになる。
本実施形態では、ライティング処理部126、バンプ処理部128がピクセルシェーダ部124(ピクセル加工処理部22)に含まれて、ピクセル単位のライティング処理、バンプ処理を行う。従ってキャラクタのパーツオブジェクトの各ピクセルの最終的な色を、図5、図6に示すような展開図方式の反射マップテクスチャ、法線マップテクスチャを用いたピクセル単位のライティング処理、バンプ処理により求めることができる。従ってキャラクタの汗の光沢と表面の凹凸の両方が表現された画像の生成が容易になる。
さて本実施形態では図13(A)に示すように、頂点シェーダ部122が、第1、第2の従法線ベクトルT、B等を、ワールド座標系に座標変換する。そしてピクセルシェーダ部124は、法線マップテクスチャにより得られた法線ベクトルNBを、第1、第2の従法線ベクトルT、Bに基づきワールド座標系に座標変換する。具体的にはバンプ用の法線ベクトルNBのX座標、Y座標をNBX、NBYとした場合に、NBX×T+NBY×Bの式で表される座標変換を行う。そしてバンプ処理部128は、座標変換後の法線ベクトルNBに基づいてバンプ処理を行う。
例えば図13(B)に頂点座標系(接ベクトル空間)の例を示す。この頂点座標系はオブジェクトOBの頂点毎に計算した従法線ベクトルT、Bを基底ベクトルとした座標系である。この頂点座標系では、全ての頂点において、法線ベクトルはZ軸の正の方向を向く。また従法線ベクトルT(接ベクトル)はX軸に沿った方向を向き、従法線ベクトルBはY軸に沿った方向を向く。
法線マップテクスチャを用いたバンプ処理(バンプマップ)を行う場合には、頂点シェーダ部122が、視線ベクトルEやライトベクトルLを頂点座標系(接ベクトル空間)に座標変換するのが一般的である。このようにすれば、法線マップテクスチャの法線ベクトルNBのX、Y座標をそのままテクスチャ座標U、Vとして使用できるからである。
この点、本実施形態では頂点シェーダ部122が、視線ベクトルE、ライトベクトルL等を頂点座標系ではなくワールド座標系に座標変換して出力している。このようにワールド座標系を用いることで、これらのベクトルを用いた演算の精度を向上できる。
しかしながら、これらのベクトルがワールド座標系のベクトルであると、法線マップテクスチャの法線ベクトルNBのX、Y座標をそのままテクスチャ座標U、Vとして使用できないという問題がある。
そこで本実施形態では図13(A)に示すように、頂点シェーダ部122が従法線ベクトルT、Bについてもワールド座標系に変換する。そしてピクセルシェーダ部124が、法線マップテクスチャの法線ベクトルNBを、座標変換後の従法線ベクトルT、Bに基づいて、例えばNBX×T+NBY×Bの式でワールド座標系に座標変換する。このようにすれば、図6に示す法線マップテクスチャを、図4、図5のカラーマップテクスチャ、反射マップテクスチャと同様の座標系で取り扱って、キャラクタの腕パーツオブジェクトにマッピングできるようになり、処理を簡素化できる。
2.6 反射マップテクスチャ、法線マップテクスチャの変化
図7、図8の画像において、常に同じ固定の場所の汗付着領域にキャラクタの汗が付着すると、画像のリアル度に欠けるという課題がある。
そこで本実施形態ではパラメータ演算部116がキャラクタのステータスパラメータ等のパラメータを演算する。そして変化処理部118が、演算されたパラメータに基づいて、図14のB1、B2、B3に模式的に示すように反射マップテクスチャを変化させて、汗付着領域(ライティング処理領域)の面積(大きさ)、形状(外形形状)や、光の反射率や、光沢色などを変化させる。例えば図14のB1では、反射率が大きな値(例えばKs=1.0)に設定されるテクセルの領域は小さく、汗付着領域の面積も小さい。そして図14のB2、B3では、反射率が大きな値に設定されるテクセルの領域が徐々に大きくなると共にその形状も変化する。これにより汗付着領域の面積も大きくなり、その形状も変化する。従って、図14のB1で発生した汗の粒が徐々に大きくなり、下側に流れ落ちて行くというリアルな画像を生成できる。
また本実施形態では変化処理部118が、反射マップテクスチャが変化した場合に、反射マップテクスチャの変化に連動して法線マップテクスチャを変化させる。例えば汗付着領域(ライティング処理領域)の面積、形状が変化した場合に、汗付着領域の面積、形状の変化に連動して汗付着領域(ライティング処理領域)での法線マップテクスチャを変化させる。具体的には図14のB1、B2、B3に示すように汗付着領域(汗付着領域に対応するテクセル領域)の面積、形状が変化した場合に、それに連動してC1、C2、C3に示すように法線マップテクスチャを変化させる。即ち汗付着領域における汗の凹凸が画像表現されるように、汗付着領域での法線マップテクスチャの法線ベクトルNB(X、Y座標)を変化させる。例えば図14のC1では、汗の発生場所においてのみ法線マップテクスチャの色が青以外の色になり、それ以外の領域では青になる。そして図14のC2、C3では、法線マップテクスチャが青以外の色となる領域の面積が、徐々に増えて行く。こうすることで、発生した汗の粒が徐々に大きくなり、下側に流れ落ちて行く様子をリアルに表現できる。
なお反射マップテクスチャや法線マップテクスチャを変化させる処理(テクスチャアニメーション)は、テクスチャの差し替えで実現してもよいし、テクスチャの書き換えで実現してもよい。
テクスチャの差し替えで実現する場合には、複数枚の反射マップテクスチャ、法線マップテクスチャを予め用意しておく、そしてこれらの複数枚の反射マップテクスチャ、法線マップテクスチャの中から、演算されたパラメータに対応するテクスチャを順次選択してテクスチャ記憶部178から読み出すことで、図14のB1〜B3、C1〜C3に示すようなテクスチャアニメーションを実現する。
一方、テクスチャの書き換えで実現する場合には、汗付着領域に対応する反射マップテクスチャ、法線マップテクスチャのテクセルの値を、リアルタイムに書き替えることで、テクスチャアニメーションを実現する。具体的には、例えば基本となる反射マップテクスチャ、法線マップテクスチャを用意しておく。そして汗が発生したと判断された場合には、図14のB1、C1に示すように汗の発生場所に対応する領域のテクセルの反射情報、法線ベクトルを書き換える。例えばその領域の反射率が高くなるように反射情報を書き換え、その領域で凹凸が見えるように法線ベクトルを書き換える。そして演算されたキャラクタのパラメータの値に応じて、図14のB2、B3、C2、C3に示すように、汗付着領域に対応する領域のテクセルの反射情報、法線ベクトルを順次書き換えて行く。このようにすれば、複数枚のテクスチャを用意する必要がなくなるため、メモリの使用記憶容量を節約したテクスチャアニメーションが可能になる。
なお反射マップテクスチャの変化に連動させて法線マップテクスチャを変化させるとは、例えば反射マップテクスチャの差し替えを行った場合に、それと同じタイミング(ほぼ同じタイミング)で法線マップテクスチャの差し替えを行うことである。或いは、反射マップテクスチャの書き換えを行った場合に、それと同じタイミング(ほぼ同じタイミング)で法線マップテクスチャの書き換えを行うことである。この場合に、タイミングのみならず、書き換える場所も、反射マップテクスチャと法線マップテクスチャとでほぼ同じ場所にする。こうすることで、汗の光沢と汗の凹凸が連動して変化して行く様子を表現できる。
次にキャラクタのパラメータの演算手法について説明する。本実施形態ではパラメータ演算部116が、キャラクタの体力パラメータ、運動量パラメータ、或いは時間経過パラメータ等を演算する。そして体力パラメータが少なくなるほど、或いは運動量パラメータが大きくなるほど、或いは時間経過パラメータが長くなるほど、汗のライティング処理が行われる汗付着領域の面積(総面積)を大きくする。こうすれば、キャラクタの体力が減ったり、運動量が増えたり、運動時間が長くなるにつれて、キャラクタの汗付着領域の占有面積が増え、キャラクタの汗の量が増える様子をリアルに表現できる。
図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の値が上昇する。
そしてこのようなパラメータ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などが考えられる。
そして図16(A)のテーブルデータは、演算された汗量パラメータPSと、テクスチャアニメーションのために用意された複数枚の反射マップテクスチャRFTEX01、RFTEX02、RFTEX03・・・・、法線マップテクスチャNTEX01、NTEX02、NTEX03・・・とを対応付けるテーブルデータである。即ち汗量パラメータPSの値が増加するにつれて、ライティング処理のフェッチ対象となる反射マップテクスチャを、RFTEX01、RFTEX02、RFTEX03・・・・というように順次差し替える。そしてこれらの反射マップテクスチャの差し替えに連動して、バンプ処理のフェッチ対象となる法線マップテクスチャも、NTEX01、NTEX02、NTEX03・・・というように順次差し替える。これにより図14のB1〜B3、C1〜C3に示すようなテクスチャアニメーションが実現され、キャラクタの体力が減ったり、運動量が増えたり、運動時間が経過するにつれて、キャラクタの肌の汗の量が増えて行く画像表現を実現できる。
なお、キャラクタが移動するゲーム空間(オブジェクト空間)での気象の状態を、汗量パラメータPSに反映させてもよい。例えば図16(B)のテーブルデータでは、ゲーム空間(スタジアム)の天候、温度と、天候係数が対応づけられている。
例えば天候が晴れで、温度が高い場合には、気象係数が大きくなり、これにより汗量パラメータPSの上昇率が大きくなる。従って、汗付着領域の面積の増加率が大きくなり、キャラクタが汗をかきやすくなる様子を表現できる。また例えば天候が曇りで、温度が低い場合には、気象係数が小さくなり、これにより汗量パラメータPSの上昇率が小さくなる。従って、汗付着領域の面積の増加率が小さくなり、キャラクタが汗をかきにくくなる様子を表現できる。
なお汗量パラメータPSを、このような天候係数以外の係数により制御してもよい。例えばキャラクタの緊張度、試合の緊迫度、観客・声援の多さなどを表す係数を用意し、この係数によって汗量パラメータPSを制御してもよい。
2.7 ヒット領域での反射マップテクスチャ、法線マップテクスチャの変化
本実施形態では、図17(A)に示すようにパーツオブジェクトPOBに対するヒットイベントが発生すると、D1に示すヒット領域(ヒット位置)が検出される。そして図17(B)のD2に示すように、検出されたヒット領域に対応するテクセルの領域において、反射マップテクスチャを変化させる処理が行われる。即ちそのテクセルに設定される反射情報が書き換えられる。また図17(C)のD3に示すように、検出されたヒット領域に対応するテクセルの領域において、法線マップテクスチャを変化させる処理が行われる。即ちそのテクセルに設定される法線ベクトルの情報が書き換えられる。
即ち本実施形態では図17(B)(C)に示すような展開図方式の反射マップテクスチャ、法線マップテクスチャが用意されて、図17(A)に示すパーツオブジェクトPOBに対して包み込むようにマッピングされる。従って、図17(A)のD1に示すヒット領域と図17(B)(C)のD2、D3に示すテクセル領域が1対1に対応するようになる。このため、図17(A)のD1のヒット領域に対応する反射マップテクスチャ、法線マップテクスチャのテクセル領域(D2、D3)を容易に特定できる。従って、特定されたD2、D3のテクセル領域の反射情報、法線ベクトル情報を容易に書き換えることができる。
例えば図17(A)のヒットイベントとしては、他のキャラクタのパンチやキックがキャラクタにヒットしたイベントが考えられる。このようなヒットイベントが発生した場合には、そのヒット領域に対応する反射マップテクスチャのテクセルの反射率を例えば大きな値に設定する。またヒット領域に対応する法線マップテクスチャのテクセルの法線ベクトル情報を、図11のA1に示すように書き換える。このようにすれば、パンチやキックがヒットした領域に、バンプ処理によるコブができ、そのコブがライティング処理により光って見える画像を生成できる。
また本実施形態では、反射マップテクスチャを用いたライティング処理は行わずに、カラーマップテクスチャを用いた色の設定処理と、法線マップテクスチャを用いたバンプ処理だけを行うようにしてもよい。即ち反射マップテクスチャの書き換え処理は行わずに、カラーマップテクスチャと法線マップテクスチャの書き換え処理だけを行うようにしてもよい。例えば銃から発射された弾がキャラクタにヒットした場合に、そのヒット領域に対応するカラーマップテクスチャのテクセルの色を、弾が当たったことを表す弾痕色に書き換える。同様にそのヒット領域に対応する法線マップテクスチャのテクセルの法線ベクトル情報を、ヒット領域の表面が窪んで見える情報に書き換える。こうすれば、弾がヒットした領域に弾痕が発生し、その弾痕がバンプ処理により窪んで見える画像を生成できる。
特に図17(A)(B)(C)の展開図方式のテクスチャを用いたライティング処理やバンプ処理は、ピクセルシェーダ部124により行うことで、処理を効率化できる。例えば本実施形態の比較例として、弾痕表現用のテクスチャを用意し、弾のヒット位置に弾痕表現用のテクスチャをマッピングする手法が考えられる。しかしながら、この比較例の手法によると、弾のヒット位置を特定してテクスチャをマッピングする処理が必要になり、処理負荷が重くなる。これに対して、展開図方式のテクスチャを用いたピクセルシェーダ処理によれば、図17(B)(C)のD2、D3に示すように反射マップテクスチャ、法線マップテクスチャの書き換え処理を行い、書き換え処理後のテクスチャをピクセルシェーダ部124に転送するだけで済む。この場合に図17(A)のD1のヒット領域と図17(B)(C)のD2、D3のテクセル領域は1対1に対応しているため、書き換え処理を行う領域の特定は容易である。またピクセル単位で処理を行うピクセルシェーダ部124は、ヒット領域の位置について意識する必要がなくなる。従って、ピクセルシェーダ部124の処理負荷を軽減でき、全体としての処理負荷も軽減できる。
2.8 詳細な処理例
次に本実施形態の詳細な処理例を図18のフローチャートを用いて説明する。
まずキャラクタの移動・動作処理を行う(ステップS1)。具体的には、操作部160からの操作データやプログラムなどに基づいて、1フレームごとのキャラクタの位置の変化、方向の変化、動作(モーション)の変化が、リアルタイムに演算される。
次にキャラクタの体力パラメータ、運動量パラメータ、時間経過パラメータを演算する(ステップS2)。例えばキャラクタの移動量や動作量に応じて、キャラクタの体力パラメータを徐々に減少させる演算を行う。またキャラクタの移動速度や加速度などに基づいてキャラクタの運動量パラメータを演算する。また試合開始後、時間経過パラメータのカウント動作を開始して、時間経過パラメータを演算する。そして演算された体力パラメータ、運動量パラメータ、時間経過パラメータに基づいて、例えば図15(A)(B)(C)のような手法により汗量パラメータを演算する(ステップS3)。
次に、図17(A)で説明したように、ヒットイベントが発生したか否かを判定し、ヒットイベントが発生した場合には、ヒット領域の位置を特定する(ステップS4)。
次に頂点シェーダプログラムによる頂点シェーダ処理を開始する(ステップS5)。具体的には、図13(B)で説明した各頂点の従法線ベクトルを取得する(ステップS6)。次に、頂点座標、視線ベクトル、ライトベクトル、法線ベクトル、従法線ベクトルをローカル座標系からワールド座標系に座標変換して出力レジスタに格納し、ピクセルシェーダ部に渡す(ステップS7)。
次に、ステップS3で演算された汗量パラメータ(キャラクタのパラメータ)や、ステップS4で特定されたヒット領域の位置に基づいて、図4、図5、図6に示すような展開図方式のカラーマップテクスチャ、反射マップテクスチャ、法線マップテクスチャを書き換えて、VRAM(ピクセルシェーダ側)等に転送する(ステップS8)。例えば図17(B)(C)で説明した手法により、反射マップテクスチャの反射情報や法線マップテクスチャの法線ベクトル情報を書き換えて、転送する。
次に、ピクセルシェーダ処理を開始する(ステップS9)。具体的には、図4、図5、図6に例示されるような展開図方式のカラーマップテクスチャ、反射マップテクスチャ、法線マップテクスチャをフェッチする(ステップS10)。そして図13(A)(B)で説明したように、フェッチした法線マップテクスチャから読み込んだバンプ用の法線ベクトルを、従法線ベクトルを用いてワールド座標系に座標変換する(ステップS11)。次に、図3(B)で説明した照明モデルを用いてライティング処理を行い、スペキュラ値、ディフューズ値、アンビエント値を演算する(ステップS12)。この際に、フェッチした反射マップテクスチャから読み込んだ反射情報をスペキュラ値に反映させる。例えば射情報である反射率が0.0である場合には、スペキュラ値を0にする。また反射率が0.0ではない場合には、その反射率に対応したスペキュラ値を求める。そして最後に、演算されたスペキュラ値、ディフューズ値、アンビエント値、フェッチされたカラーマップテクスチャの色情報等に基づいて、最終的なカラーを求めて出力する(ステップS13)。
3.ハードウェア構成
図19に本実施形態を実現できるハードウェア構成の例を示す。メインプロセッサ900は、DVD982(情報記憶媒体。CDでもよい。)に格納されたプログラム、通信インターフェース990を介してダウンロードされたプログラム、或いはROM950に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などを実行する。コプロセッサ902は、メインプロセッサ900の処理を補助するものであり、マトリクス演算(ベクトル演算)を高速に実行する。例えばオブジェクトを移動させたり動作(モーション)させる物理シミュレーションに、マトリクス演算処理が必要な場合には、メインプロセッサ900上で動作するプログラムが、その処理をコプロセッサ902に指示(依頼)する。
ジオメトリプロセッサ904は、メインプロセッサ900上で動作するプログラムからの指示に基づいて、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、マトリクス演算を高速に実行する。データ伸張プロセッサ906は、圧縮された画像データや音データのデコード処理を行ったり、メインプロセッサ900のデコード処理をアクセレートする。これにより、オープニング画面やゲーム画面において、MPEG方式等で圧縮された動画像を表示できる。
描画プロセッサ910は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画(レンダリング)処理を実行する。オブジェクトの描画の際には、メインプロセッサ900は、DMAコントローラ970を利用して、描画データを描画プロセッサ910に渡すと共に、必要であればテクスチャ記憶部924にテクスチャを転送する。すると描画プロセッサ910は、描画データやテクスチャに基づいて、Zバッファなどを利用した隠面消去を行いながら、オブジェクトをフレームバッファ922に描画する。また描画プロセッサ910は、αブレンディング(半透明処理)、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエイリアシング、シェーディング処理なども行う。頂点シェーダやピクセルシェーダなどのプログラマブルシェーダが実装されている場合には、シェーダプログラムに従って、頂点データの作成・変更(更新)やピクセル(あるいはフラグメント)の描画色の決定を行う。1フレーム分の画像がフレームバッファ922に書き込まれるとその画像はディスプレイ912に表示される。
サウンドプロセッサ930は、多チャンネルのADPCM音源などを内蔵し、BGM、効果音、音声などのゲーム音を生成し、スピーカ932を介して出力する。ゲームコントローラ942やメモリカード944からのデータはシリアルインターフェース940を介して入力される。
ROM950にはシステムプログラムなどが格納される。業務用ゲームシステムの場合にはROM950が情報記憶媒体として機能し、ROM950に各種プログラムが格納される。なおROM950の代わりにハードディスクを利用してもよい。RAM960は各種プロセッサの作業領域となる。DMAコントローラ970は、プロセッサ、メモリ間でのDMA転送を制御する。DVDドライブ980(CDドライブでもよい。)は、プログラム、画像データ、或いは音データなどが格納されるDVD982(CDでもよい。)にアクセスする。通信インターフェース990はネットワーク(通信回線、高速シリアルバス)を介して外部との間でデータ転送を行う。
なお本実施形態の各部(各手段)の処理は、その全てをハードウェアのみにより実現してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
そして本実施形態の各部の処理をハードウェアとプログラムの両方により実現する場合には、情報記憶媒体には、ハードウェア(コンピュータ)を本実施形態の各部として機能させるためのプログラムが格納される。より具体的には、上記プログラムが、ハードウェアである各プロセッサ902、904、906、910、930に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ902、904、906、910、930は、その指示と渡されたデータとに基づいて本発明の各部の処理を実現する。
なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語(ライティング処理領域、液体、第1のパーツオブジェクト等)と共に記載された用語(液体付着領域・汗付着領域、汗、腕パーツオブジェクト等)は、明細書または図面のいかなる箇所においても、その異なる用語に置き換えることができる。
またライティング処理、バンプ処理、照明モデル、パラメータの演算手法も本実施形態で説明したものに限定されず、これらと均等な処理、手法も本発明の範囲に含まれる。また本発明は種々のゲームに適用できる。また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレイヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード、携帯電話等の種々の画像生成システムに適用できる。
本実施形態の画像生成システムの機能ブロック図の例。 図2(A)(B)(C)は展開図方式のテクスチャを用いる本実施形態の手法の説明図。 図3(A)(B)は本実施形態のライティング処理の説明図。 カラーマップテクスチャの例。 反射マップテクスチャの例。 法線マップテクスチャの例。 本実施形態により生成されたキャラクタの腕の画像の例。 本実施形態により生成されたキャラクタの顔の画像の例。 図9(A)(B)は比較例の手法の説明図。 反射マップテクスチャの説明図。 法線マップテクスチャの説明図。 図12(A)(B)は頂点シェーダ部、ピクセルシェーダ部の説明図。 図13(A)(B)はワールド座標系への座標変換処理の説明図。 反射マップテクスチャ、法線マップテクスチャを変化させる手法の説明図。 図15(A)(B)(C)はテーブルデータの例。 図16(A)(B)はテーブルデータの例。 図17(A)(B)(C)はヒット領域の位置に基づいて反射マップテクスチャ、法線マップテクスチャを書き換える手法の説明図。 本実施形態の処理の詳細例。 ハードウェア構成例。
符号の説明
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 通信部

Claims (18)

  1. 画像を生成するためのプログラムであって、
    立体形状の複数のパーツオブジェクトにより構成されるキャラクタが移動するオブジェクト空間の設定を行うオブジェクト空間設定部と、
    テクスチャを記憶するテクスチャ記憶部と、
    照明モデルと光源情報に基づいてライティング処理を行うライティング処理部として、
    コンピュータを機能させ、
    前記テクスチャ記憶部は、
    前記複数のパーツオブジェクトのうちの第1のパーツオブジェクトの展開図に対応した色パターンを有し、前記第1のパーツオブジェクトの表面の色がテクセルに設定されるカラーマップテクスチャと、前記第1のパーツオブジェクトの展開図に対応した反射情報パターンを有し、反射情報がテクセルに設定される反射マップテクスチャとを記憶し、
    前記ライティング処理部は、
    前記反射マップテクスチャのテクセルに設定された前記反射情報と前記照明モデルと前記光源情報に基づいて、前記第1のパーツオブジェクトのライティング処理を行うことを特徴とするプログラム。
  2. 前記第1のパーツオブジェクトは、前記キャラクタの腕、顔、足、又は武器のオブジェクトであり、
    前記ライティング処理部は、
    前記反射マップテクスチャのテクセルに設定された前記反射情報と前記照明モデルと前記光源情報に基づいて、前記キャラクタの腕、顔、足、又は武器のオブジェクトのライティング処理を行うことを特徴とするプログラム。
  3. 請求項1又は2において、
    前記反射マップテクスチャのテクセルのうち、前記ライティング処理が行われるライティング処理領域以外の領域に対応するテクセルでは、前記ライティング処理のスペキュラ演算を無効にする第1の値が設定され、
    前記ライティング処理部は、
    前記反射情報が第1の値に設定されている場合に、前記スペキュラ演算を無効にすることを特徴とするプログラム。
  4. 請求項1乃至3のいずれかにおいて、
    前記テクスチャ記憶部は、
    前記反射マップテクスチャのαプレーンに、前記反射情報として反射率を記憶し、
    前記ライティング処理部は、
    前記αプレーンの前記反射率で光が鏡面反射するライティング処理を行うことを特徴とするプログラム。
  5. 請求項4において、
    前記テクスチャ記憶部は、
    前記反射マップテクスチャの色プレーンに、前記反射情報として光沢色を記憶し、
    前記ライティング処理部は、
    前記色プレーンの前記光沢色で光が鏡面反射するライティング処理を行うことを特徴とするプログラム。
  6. 請求項1乃至5のいずれかにおいて、
    前記テクスチャ記憶部は、
    前記第1のパーツオブジェクトの展開図に対応した法線ベクトルパターンを有し、法線ベクトル情報がテクセルに設定される法線マップテクスチャを記憶し、
    前記法線マップテクスチャに基づいて、前記第1のパーツオブジェクトの表面の凹凸を表すためのバンプ処理を行うバンプ処理部として、
    コンピュータを機能させることを特徴とするプログラム。
  7. 請求項1乃至5のいずれかにおいて、
    頂点単位で処理を行う頂点シェーダ部と、
    ピクセル単位で処理を行うピクセルシェーダ部として、
    コンピュータを機能させ、
    前記ピクセルシェーダ部が含む前記ライティング処理部が、前記ライティング処理を行うことを特徴とするプログラム。
  8. 請求項6において、
    頂点単位で処理を行う頂点シェーダ部と、
    ピクセル単位で処理を行うピクセルシェーダ部として、
    コンピュータを機能させ、
    前記ピクセルシェーダ部が含む前記ライティング処理部が前記ライティング処理を行い、前記ピクセルシェーダ部が含む前記バンプ処理部が前記バンプ処理を行うことを特徴とするプログラム。
  9. 請求項8において、
    前記頂点シェーダ部は、
    第1、第2の従法線ベクトルをワールド座標系に座標変換し、
    前記ピクセルシェーダ部は、
    前記法線マップテクスチャにより得られた法線ベクトルを、前記第1、第2の従法線ベクトルに基づきワールド座標系に座標変換し、
    前記バンプ処理部は、
    座標変換後の法線ベクトルに基づいて前記バンプ処理を行うことを特徴とするプログラム。
  10. 請求項1乃至9のいずれかにおいて、
    前記キャラクタのパラメータを演算するパラメータ演算部と、
    演算された前記パラメータに基づいて、前記反射マップテクスチャを変化させて、前記第1のパーツオブジェクトの表面のうち前記ライティング処理が行われるライティング処理領域の面積及び形状の少なくとも1つを変化させる変化処理部として、
    コンピュータを機能させることを特徴とするプログラム。
  11. 請求項10において、
    前記テクスチャ記憶部は、
    前記第1のパーツオブジェクトの展開図に対応した法線ベクトルパターンを有し、法線ベクトル情報がテクセルに設定される法線マップテクスチャを記憶し、
    前記法線マップテクスチャに基づいて、前記第1のパーツオブジェクトの表面の凹凸を表すためのバンプ処理を行うバンプ処理部として、
    コンピュータを機能させ、
    前記変化処理部は、
    前記反射マップテクスチャが変化した場合に、前記反射マップテクスチャの変化に連動して前記法線マップテクスチャを変化させることを特徴とするプログラム。
  12. 請求項1乃至9のいずれかにおいて、
    前記第1のパーツオブジェクトに対するヒットイベントが発生した場合に、ヒット領域を検出するヒットチェック部と、
    検出された前記ヒット領域に対応するテクセル領域において、前記反射マップテクスチャを変化させる変化処理部として、
    コンピュータを機能させることを特徴とするプログラム。
  13. 画像を生成するためのプログラムであって、
    立体形状の複数のパーツオブジェクトにより構成されるキャラクタが移動するオブジェクト空間の設定を行うオブジェクト空間設定部と、
    テクスチャを記憶するテクスチャ記憶部と、
    バンプ処理を行うバンプ処理部として、
    コンピュータを機能させ、
    前記テクスチャ記憶部は、
    前記複数のパーツオブジェクトのうちの第1のパーツオブジェクトの展開図に対応した色パターンを有し、前記第1のパーツオブジェクトの表面の色がテクセルに設定されるカラーマップテクスチャと、前記第1のパーツオブジェクトの展開図に対応した法線ベクトルパターンを有し、法線ベクトルの情報がテクセルに設定される法線マップテクスチャとを記憶し、
    前記バンプ処理部は、
    前記法線マップテクスチャに基づいて、前記第1のパーツオブジェクトの表面の凹凸を表すためのバンプ処理を行うことを特徴とするプログラム。
  14. 請求項13において、
    前記第1のパーツオブジェクトに対するヒットイベントが発生した場合に、ヒット領域を検出するヒットチェック部と、
    検出された前記ヒット領域に対応するテクセル領域において、前記法線マップテクスチャを変化させる変化処理部として、
    コンピュータを機能させることを特徴とするプログラム。
  15. 請求項13又は14において、
    頂点単位で処理を行う頂点シェーダ部と、
    ピクセル単位で処理を行うピクセルシェーダ部として、
    コンピュータを機能させ、
    前記ピクセルシェーダ部が含む前記バンプ処理部が前記バンプ処理を行うことを特徴とするプログラム。
  16. コンピュータ読み取り可能な情報記憶媒体であって、請求項1乃至15のいずれかに記載のプログラムを記憶したことを特徴とする情報記憶媒体。
  17. 画像を生成する画像生成システムであって、
    立体形状の複数のパーツオブジェクトにより構成されるキャラクタが移動するオブジェクト空間の設定を行うオブジェクト空間設定部と、
    テクスチャを記憶するテクスチャ記憶部と、
    照明モデルと光源情報に基づいてライティング処理を行うライティング処理部とを含み、
    前記テクスチャ記憶部は、
    前記複数のパーツオブジェクトのうちの第1のパーツオブジェクトの展開図に対応した色パターンを有し、前記第1のパーツオブジェクトの表面の色がテクセルに設定されるカラーマップテクスチャと、前記第1のパーツオブジェクトの展開図に対応した反射情報パターンを有し、反射情報がテクセルに設定される反射マップテクスチャとを記憶し、
    前記ライティング処理部は、
    前記反射マップテクスチャのテクセルに設定された前記反射情報と前記照明モデルと前記光源情報に基づいて、前記第1のパーツオブジェクトのライティング処理を行うことを特徴とする画像生成システム。
  18. 画像を生成する画像生成システムであって、
    立体形状の複数のパーツオブジェクトにより構成されるキャラクタが移動するオブジェクト空間の設定を行うオブジェクト空間設定部と、
    テクスチャを記憶するテクスチャ記憶部と、
    バンプ処理を行うバンプ処理部とを含み、
    前記テクスチャ記憶部は、
    前記複数のパーツオブジェクトのうちの第1のパーツオブジェクトの展開図に対応した色パターンを有し、前記第1のパーツオブジェクトの表面の色がテクセルに設定されるカラーマップテクスチャと、前記第1のパーツオブジェクトの展開図に対応した法線ベクトルパターンを有し、法線ベクトルの情報がテクセルに設定される法線マップテクスチャとを記憶し、
    前記バンプ処理部は、
    前記法線マップテクスチャに基づいて、前記第1のパーツオブジェクトの表面の凹凸を表すためのバンプ処理を行うことを特徴とする画像生成システム。
JP2006047511A 2006-02-23 2006-02-23 プログラム、情報記憶媒体及び画像生成システム Active JP4782583B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006047511A JP4782583B2 (ja) 2006-02-23 2006-02-23 プログラム、情報記憶媒体及び画像生成システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006047511A JP4782583B2 (ja) 2006-02-23 2006-02-23 プログラム、情報記憶媒体及び画像生成システム

Publications (2)

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

Family

ID=38548333

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006047511A Active JP4782583B2 (ja) 2006-02-23 2006-02-23 プログラム、情報記憶媒体及び画像生成システム

Country Status (1)

Country Link
JP (1) JP4782583B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011134100A (ja) * 2009-12-24 2011-07-07 Sony Computer Entertainment Inc 画像処理装置、画像データ生成装置、画像処理方法、画像データ生成方法、および画像ファイルのデータ構造
US20120313960A1 (en) * 2009-12-24 2012-12-13 Sony Computer Entertainment Inc. Image processing device, image data generation device, image processing method, image data generation method, and data structure of image file
CN113509731A (zh) * 2021-05-19 2021-10-19 网易(杭州)网络有限公司 流体模型处理方法及装置、电子设备、存储介质
CN113509731B (zh) * 2021-05-19 2024-06-04 网易(杭州)网络有限公司 流体模型处理方法及装置、电子设备、存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001188920A (ja) * 1999-12-28 2001-07-10 Square Co Ltd ビデオゲーム用のプログラムを記録したコンピュータ読み取り可能な記録媒体、ビデオゲームにおけるオブジェクト描画方法及びビデオゲーム装置
JP2001325605A (ja) * 2000-05-17 2001-11-22 Namco Ltd ゲームシステム及び情報記憶媒体
JP2004126692A (ja) * 2002-09-30 2004-04-22 Sony Corp 画像処理装置およびその方法
JP2004272928A (ja) * 1998-08-20 2004-09-30 Apple Computer Inc 進歩したディファード・シェーディング・グラフィクス・パイプライン・プロセッサ
JP2005032140A (ja) * 2003-07-10 2005-02-03 Namco Ltd 画像生成システム、プログラム及び情報記憶媒体
JP2005209217A (ja) * 2005-02-07 2005-08-04 Namco Ltd ゲームシステム及び情報記憶媒体

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004272928A (ja) * 1998-08-20 2004-09-30 Apple Computer Inc 進歩したディファード・シェーディング・グラフィクス・パイプライン・プロセッサ
JP2001188920A (ja) * 1999-12-28 2001-07-10 Square Co Ltd ビデオゲーム用のプログラムを記録したコンピュータ読み取り可能な記録媒体、ビデオゲームにおけるオブジェクト描画方法及びビデオゲーム装置
JP2001325605A (ja) * 2000-05-17 2001-11-22 Namco Ltd ゲームシステム及び情報記憶媒体
JP2004126692A (ja) * 2002-09-30 2004-04-22 Sony Corp 画像処理装置およびその方法
JP2005032140A (ja) * 2003-07-10 2005-02-03 Namco Ltd 画像生成システム、プログラム及び情報記憶媒体
JP2005209217A (ja) * 2005-02-07 2005-08-04 Namco Ltd ゲームシステム及び情報記憶媒体

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011134100A (ja) * 2009-12-24 2011-07-07 Sony Computer Entertainment Inc 画像処理装置、画像データ生成装置、画像処理方法、画像データ生成方法、および画像ファイルのデータ構造
US20120313960A1 (en) * 2009-12-24 2012-12-13 Sony Computer Entertainment Inc. Image processing device, image data generation device, 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 (zh) * 2021-05-19 2021-10-19 网易(杭州)网络有限公司 流体模型处理方法及装置、电子设备、存储介质
CN113509731B (zh) * 2021-05-19 2024-06-04 网易(杭州)网络有限公司 流体模型处理方法及装置、电子设备、存储介质

Also Published As

Publication number Publication date
JP4782583B2 (ja) 2011-09-28

Similar Documents

Publication Publication Date Title
JP4734138B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP4734137B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP4804122B2 (ja) プログラム、テクスチャデータ構造、情報記憶媒体及び画像生成システム
JP4776017B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP3748451B1 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP4824514B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP4743770B2 (ja) 画像生成システム、プログラム、及び情報記憶媒体
JP4782583B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP2006323512A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP3297410B2 (ja) 画像生成システム及び情報記憶媒体
JP4488346B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP5253118B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4707078B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2001229403A (ja) ゲームシステム及び情報記憶媒体
JP2004341570A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4913399B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP4574058B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4056035B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP3254195B2 (ja) 画像生成システム及び情報記憶媒体
JP2010033288A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4592087B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
US7724255B2 (en) Program, information storage medium, and image generation system
JP4865471B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP2003162734A (ja) ゲームシステム及び情報記憶媒体
JP2007164729A (ja) 画像生成システム、プログラム及び情報記憶媒体

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