(57)【特許請求の範囲】
【請求項１】
画像を生成するためのゲーム装置であって、
オブジェクト空間におけるマップを所与の３次元座標によって定義するマップデータを記憶する手段と、
前記所与の３次元座標と同一座標系の２次元座標成分に対してシェーディング演算パラメータを割り当てることによって、前記マップに対して任意の形状のシェーディング演算変更領域を定義する演算変更領域データを記憶する手段と、
予め用意された前記マップデータに基づいて前記オブジェクト空間内に設定された前記マップ上で移動体を移動させる移動演算を行う手段と、
前記移動演算によって算出された前記移動体の位置データと、予め用意された前記演算変更領域データとに基づいて、前記移動体が位置するシェーディング演算変更領域に対応するシェーディング演算パラメータを算出し、算出されたシェーディング演算パラメータに応じて、前記移動体に対するシェーディング演算を行う手段と、
オブジェクト空間内の所与の視点での画像を生成する手段と、
を含むことを特徴とするゲーム装置。
【請求項２】
請求項１において、
オブジェクト空間内の前記マップに相当するコース上に設定されたコースブロックの中から前記移動体が位置するコースブロックが検索され、検索されたコースブロックに関連づけて登録されたシェーディング演算変更領域が検索されることを特徴とするゲーム装置。
【請求項３】
請求項１又は２において、
前記移動体のシェーディング演算に使用されるシェーディング演算パラメータが、前記シェーディング演算変更領域に設定されるシェーディング演算パラメータと前記シェーディング演算変更領域内での前記移動体のローカル座標とに基づいて求められることを特徴とするゲーム装置。
【請求項４】
請求項１乃至３のいずれかにおいて、
前記シェーディング演算変更領域に設定されるシェーディング演算パラメータが、輝度、光源ベクトル、光源の位置、光源の種類、光源の強さ及び環境光のパラメータの少なくとも１つを含むことを特徴とするゲーム装置。
【請求項５】
請求項１乃至４のいずれかにおいて、
前記シェーディング演算変更領域が、オブジェクト空間内の３次元オブジェクトの陰となるべき領域に設定されていることを特徴とするゲーム装置。
【請求項６】
請求項１乃至５のいずれかにおいて、
前記シェーディング演算変更領域のデータが、マップデータに含まれるＸ、Ｚ座標データに基づいて求められるＸ、Ｚ座標データと、シェーディング演算パラメータとを含むことを特徴とするゲーム装置。
【請求項７】
請求項６において、
前記シェーディング演算変更領域のデータのＹ座標データの部分に、前記シェーディング演算パラメータが代入されていることを特徴とするゲーム装置。
【請求項８】
画像データを作成するための画像データ作成装置であって、
操作手段からの入力データに基づいて、マップデータを作成するマップデータ作成手段と、
操作手段からの入力データに基づいて、シェーディング演算変更領域のデータを作成する演算変更領域データ作成手段と、
作成されたマップデータに含まれるＸ、Ｙ、Ｚ座標データに基づいて、マップの確認画面をディスプレイに表示させるマップ表示手段と、
作成されたシェーディング演算変更領域のデータに含まれるＸ、Ｙ、Ｚ座標データに基づいて、シェーディング演算変更領域の確認画面をディスプレイに表示させる演算変更領域表示手段とを含み、
前記演算変更領域データ作成手段が、
前記シェーディング演算変更領域のデータのＹ座標データとして、シェーディング演算パラメータを設定し、
前記演算変更領域表示手段が、
シェーディング演算変更領域のデータのＸ、Ｚ座標データと前記シェーディング演算パラメータとに基づいて、シェーディング演算変更領域の確認画面を３次元的にディスプレイに表示させることを特徴とする画像データ作成装置。
【請求項９】
画像を生成するためのプログラムを記憶する情報記憶媒体であって、
オブジェクト空間におけるマップを所与の３次元座標によって定義するマップデータを記憶する手段と、
前記所与の３次元座標と同一座標系の２次元座標成分に対してシェーディング演算パラメータを割り当てることによって、前記マップに対して任意の形状のシェーディング演算変更領域を定義する演算変更領域データを記憶する手段と、
予め用意された前記マップデータに基づいて前記オブジェクト空間内に設定された前記マップ上で移動体を移動させる移動演算を行う手段と、
前記移動演算によって算出された前記移動体の位置データと、予め用意された前記演算変更領域データとに基づいて、前記移動体が位置するシェーディング演算変更領域に対応するシェーディング演算パラメータを算出し、算出されたシェーディング演算パラメータに応じて、前記移動体に対するシェーディング演算を行う手段と、
オブジェクト空間内の所与の視点での画像を生成する手段としてコンピュータを機能させるためのプログラムを記憶することを特徴とする情報記憶媒体。
【請求項１０】
請求項９において、
オブジェクト空間内の前記マップに相当するコース上に設定されたコースブロックの中から前記移動体が位置するコースブロックが検索され、検索されたコースブロックに関連づけて登録されたシェーディング演算変更領域が検索されることを特徴とする情報記憶媒体。
【請求項１１】
請求項９又は１０において、
前記移動体のシェーディング演算に使用されるシェーディング演算パラメータが、前記シェーディング演算変更領域に設定されるシェーディング演算パラメータと前記シェーディング演算変更領域内での前記移動体のローカル座標とに基づいて求められることを特徴とする情報記憶媒体。
【請求項１２】
請求項９乃至１１のいずれかにおいて、
前記シェーディング演算変更領域に設定されるシェーディング演算パラメータが、輝度、光源ベクトル、光源の位置、光源の種類、光源の強さ及び環境光のパラメータの少なくとも１つを含むことを特徴とする情報記憶媒体。
【請求項１３】
請求項９乃至１２のいずれかにおいて、
前記シェーディング演算変更領域が、オブジェクト空間内の３次元オブジェクトの陰となるべき領域に設定されていることを特徴とする情報記憶媒体。
【請求項１４】
請求項９乃至１３のいずれかにおいて、
前記シェーディング演算変更領域のデータが、マップデータに含まれるＸ、Ｚ座標データに基づいて求められるＸ、Ｚ座標データと、シェーディング演算パラメータとを含むことを特徴とする情報記憶媒体。
【請求項１５】
請求項１４において、
前記シェーディング演算変更領域のデータのＹ座標データの部分に、前記シェーディング演算パラメータが代入されていることを特徴とする情報記憶媒体。
【請求項１６】
画像データを作成するための画像データ作成装置に使用されるプログラムを記憶する情報記憶媒体であって、
操作手段からの入力データに基づいて、マップデータを作成するマップデータ作成手段と、
操作手段からの入力データに基づいて、シェーディング演算変更領域のデータを作成する演算変更領域データ作成手段と、
作成されたマップデータに含まれるＸ、Ｙ、Ｚ座標データに基づいて、マップの確認画面をディスプレイに表示させるマップ表示手段と、
作成されたシェーディング演算変更領域のデータに含まれるＸ、Ｙ、Ｚ座標データに基づいて、シェーディング演算変更領域の確認画面をディスプレイに表示させる演算変更領域表示手段としてコンピュータを機能させ、
前記演算変更領域データ作成手段が、
前記シェーディング演算変更領域のデータのＹ座標データとして、シェーディング演算パラメータを設定し、
前記演算変更領域表示手段が、
シェーディング演算変更領域のデータのＸ、Ｚ座標データと前記シェーディング演算パラメータとに基づいて、シェーディング演算変更領域の確認画面を３次元的にディスプレイに表示させるプログラムを記憶することを特徴とする情報記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ゲーム装置、画像データ作成ツール及び情報記憶媒体に関する。
【０００２】
【背景技術及び発明が解決しようとする課題】
従来より、仮想的な３次元空間であるオブジェクト空間内に複数のオブジェクトを配置し、オブジェクト空間内の所与の視点から見える画像を生成するゲーム装置が知られており、いわゆる仮想現実を体験できるものとして人気が高い。バイクゲームを楽しむことができるゲーム装置を例にとれば、プレーヤは、自身が運転するバイク（移動体）をオブジェクト空間内で走行させ、他のプレーヤ又はコンピュータが運転するバイク（移動体）と競争することでゲームを楽しむ。
【０００３】
さて、このようなゲーム装置では、プレーヤの仮想現実感の向上のために、よりリアルな画像を生成することが重要な技術的課題になっている。従って、バイクなどの移動体の照射面の表示（シェーディング）についても、よりリアルであることが望まれる。
【０００４】
このような照射面の表示方法に関する技術として、特開平７−１５５４６４に開示される従来技術がある。この従来技術では、まず、特定の事象（例えばトンネルの窓から太陽光が差し込む）が起きたか否かを３次元立体データに基づいて判断する。そして、特定の事象が起きた場合には、特定の事象での光源の位置情報と３次元立体データに基づいて、光源パラメータ（光源ベクトル）を求める。そして、求められた光源パラメータと上記３次元立体データとに基づいて、移動体の照射面の照度を求める。
【０００５】
しかしながら、この従来技術では、特定の事象が起きたか否かを３次元立体データに基づいて判断しなければならない。また、光源パラメータも、光源の位置情報と３次元立体データとに基づいて求めなければならない。このため、ゲーム装置の処理負担が重くなり、この種のゲーム装置に要求される処理のリアルタイム性の満足することができなくなるという問題がある。
【０００６】
本発明は、以上のような課題を解決するためになされたものであり、その目的とするところは、少ない処理負担で移動体のリアルな陰影づけを実現できるゲーム装置、画像データ作成ツール、及び情報記憶媒体を提供することにある。
【０００７】
【課題を解決するための手段】
上記課題を解決するために、本発明は、画像を生成するためのゲーム装置であって、オブジェクト空間内で移動体を移動させるための演算を行う手段と、任意の形状に設定可能な２次元のシェーディング演算変更領域をオブジェクト空間内のマップに設定しておき、前記移動体が位置するシェーディング演算変更領域に応じて、前記移動体に施すシェーディング演算を変更するための手段と、オブジェクト空間内の所与の視点での画像を生成するための手段とを含むことを特徴とする。また本発明に係る情報記憶媒体は、上記手段を実現（実行）するための情報を含むことを特徴とする。
【０００８】
本発明によれば、任意の形状に設定可能な２次元のシェーディング演算変更領域がマップに設定される。そして、移動体が位置するシェーディング演算変更領域に応じて（シェーディング演算変更領域に移動体が位置するか否かに応じて）、移動体に施すシェーディング演算が変更される。即ち、例えば、移動体がシェーディング演算変更領域に位置すると、移動体の陰影づけが暗くなるというようなシェーディング演算が行われるようになる。
【０００９】
本発明によれば、２次元のシェーディング演算変更領域を利用するため、３次元立体データを利用する従来技術に比べて、処理負担を大幅に軽減できる。
【００１０】
そして本発明によれば、シェーディング演算変更領域の形状を任意に設定できるため、例えばマップに配置される３次元オブジェクトの形状や、光源ベクトルの方向等を反映した、リアルな陰影づけを実現できるようになる。
【００１１】
なお、本発明では、シェーディング演算変更領域を１又は複数のプリミティブ面で構成してもよい。また、シェーディング演算変更領域に移動体が位置するか否かは、例えば移動体の代表点がシェーディング演算領域に位置するか否かなどに基づいて判断できる。
【００１２】
また本発明に係るゲーム装置及び情報記憶媒体は、オブジェクト空間内のコース上に設定されたコースブロックの中から前記移動体が位置するコースブロックが検索され、検索されたコースブロックに関連づけて登録されたシェーディング演算変更領域が検索されることを特徴とする。このようにすることで、移動体が位置するシェーディング演算変更領域を特定する処理を、高速化、効率化できるようになる。なお、シェーディング演算変更領域を構成するプリミティブ面を、コースブロックに登録する場合も本発明の範囲内に含まれる。
【００１３】
また本発明に係るゲーム装置及び情報記憶媒体は、前記シェーディング演算変更領域に設定されるシェーディング演算パラメータに基づいて、前記移動体のシェーディング演算に使用されるシェーディング演算パラメータが求められ、求められたシェーディング演算パラメータに基づいて前記移動体に対するシェーディング演算が行われることを特徴とする。このようにすることで、移動体に施すシェーディング演算の多様性を増すことができ、移動体の陰影づけを更にリアルなものにすることができるようになる。
【００１４】
また本発明に係るゲーム装置及び情報記憶媒体は、前記移動体のシェーディング演算に使用されるシェーディング演算パラメータが、前記シェーディング演算変更領域に設定されるシェーディング演算パラメータと前記シェーディング演算変更領域内での前記移動体のローカル座標とに基づいて求められることを特徴とする。このようにすることで、移動体に施される陰影づけを、シェーディング演算変更領域の各場所において様々に変化させることができるようになり、画像のリアル度を更に増すことができる。
【００１５】
また本発明に係るゲーム装置及び情報記憶媒体は、前記シェーディング演算変更領域に設定されるシェーディング演算パラメータが、輝度、光源ベクトル、光源の位置、光源の種類、光源の強さ及び環境光のパラメータの少なくとも１つを含むことを特徴とする。このように、様々なシェーディング演算パラメータをシェーディング演算変更領域に設定することで、よりリアルで多様なシェーディング演算を実現できるようになる。
【００１６】
また本発明に係るゲーム装置及び情報記憶媒体は、前記シェーディング演算変更領域が、オブジェクト空間内の３次元オブジェクトの陰となるべき領域に設定されていることを特徴とする。このようにすることで、移動体が３次元オブジェクトの影となる領域に進入した場合に、３次元オブジェクトの存在に起因して移動体の陰影づけが変化したように見えるようになり、プレーヤの感じる仮想現実感を向上できる。
【００１７】
また本発明に係るゲーム装置及び情報記憶媒体は、前記シェーディング演算変更領域のデータが、マップデータに含まれるＸ、Ｚ座標データに基づいて求められるＸ、Ｚ座標データと、シェーディング演算パラメータとを含むことを特徴とする。このようにすれば、マップデータを利用してシェーディング演算変更領域のデータを効率的に作成できるようになり、開発期間の短縮化を図れるようになる。なお、シェーディング演算変更領域のデータに含ませるシェーディング演算パラメータは、マップデータに含まれるシェーディング演算パラメータを流用したり、マップデータに含まれるシェーディング演算パラメータに変換処理を施すことで、得ることが望ましい。このようにすれば、シェーディング演算変更領域のデータを更に効率的に作成できるようになる。
【００１８】
また本発明に係るゲーム装置及び情報記憶媒体は、前記シェーディング演算変更領域のデータのＹ座標データの部分に、前記シェーディング演算パラメータが代入されていることを特徴とする。このようにすれば、シェーディング演算パラメータの値の大小を視覚的に確認できるようになり、シェーディング演算変更領域のデータの作成作業を効率化できる。
【００１９】
また本発明は、画像データを作成するための画像データ作成ツールであって、マップデータを作成するための手段と、シェーディング演算変更領域のデータを作成するための手段と、作成されたマップデータに含まれるＸ、Ｙ、Ｚ座標データに基づいて、マップの確認画面を表示するための手段と、作成されたシェーディング演算変更領域のデータに含まれるＸ、Ｙ、Ｚ座標データに基づいて、シェーディング演算変更領域の確認画面を表示するための手段とを含み、前記シェーディング演算変更領域のデータのＹ座標データの部分に、シェーディング演算パラメータが代入されると共に、シェーディング演算変更領域のデータのＸ、Ｚ座標データと前記シェーディング演算パラメータとに基づいて、シェーディング演算変更領域の確認画面が３次元的に表示されることを特徴とする。また本発明に係る情報記憶媒体は、上記手段を実現（実行）するための情報を含むことを特徴とする。
【００２０】
本発明によれば、シェーディング演算変更領域のデータのＹ座標データの部分に、シェーディング演算パラメータが代入される。従って、シェーディング演算パラメータの値の大小を、画像データ作成ツールの表示機能を用いて視覚的に確認できるようになり、シェーディング演算変更領域のデータの作成作業を大幅に効率化できる。
【００２１】
【発明の実施の形態】
以下、本発明の好適な実施形態について図面を用いて説明する。なお以下では、本発明をバイクゲームに適用した場合を例にとり説明するが、本発明はこれに限定されず、種々のゲームに適用できる。
【００２２】
１．構成
図１に、本実施形態を業務用ゲーム装置に適用した場合の例を示す。
【００２３】
プレーヤ１０９２は、画面１０５０上に映し出されたゲーム画像を見ながら、ハンドル１０７０や、ハンドル１０７０に設けられたアクセルやブレーキを操作したり、本物のバイクを模して作った筺体（模擬バイク）１０９０をローリングさせる。そして、プレーヤ１０９２が、アクセルやブレーキを操作することで、画面１０５０に映し出される自バイク（移動体）１１００が加速したり減速したりする。また、プレーヤ１０９２がハンドル１０７０を操舵したり筺体１０９０をローリングさせることで、キャラクタ（仮想プレーヤ）１１０２が乗る自バイク１１００が左右にコーナリングしたり、ローリングするようになる。
【００２４】
図２に、本実施形態のブロック図の一例を示す。なお同図において本実施形態のゲーム装置は、少なくとも処理部１００と記憶部１４０を含めばよく（或いは処理部１００と記憶部１４０と情報記憶媒体１５０を含めばよく）、それ以外のブロックについては、任意の構成要素とすることができる。
【００２５】
ここで処理部１００は、装置全体の制御、装置内の各ブロックへの命令の指示、ゲーム演算などの各種の処理を行うものであり、その機能は、ＣＰＵ（ＣＩＳＣ型、ＲＩＳＣ型）、ＤＳＰ、或いはＡＳＩＣ（ゲートアレイ等）などのハードウェアや、所与のプログラム（ゲームプログラム）により実現できる。
【００２６】
操作部１３０は、プレーヤが操作情報を入力するためのものであり、その機能は、図１の筺体１０９０、ハンドル１０７０、図示しないアクセル、ブレーキ、操作ボタンなどのハードウェアにより実現できる。
【００２７】
記憶部１４０は、処理部１００、画像生成部１６０、音生成部１７０、通信部１７４、Ｉ／Ｆ部１７６などのワーク領域となるもので、その機能はＲＡＭなどのハードウェアにより実現できる。
【００２８】
情報記憶媒体（コンピュータにより情報の読み取りが可能な記憶媒体）１５０は、プログラムやデータなどの情報を格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いは半導体メモリ（ＲＯＭ）などのハードウェアにより実現できる。処理部１００は、この情報記憶媒体１５０に格納される情報に基づいて本発明（本実施形態）の種々の処理を行う。即ち情報記憶媒体１５０には、本発明（本実施形態）の手段（特に処理部１００や記憶部１４０に含まれるブロック）を実現するための種々の情報が格納される。
【００２９】
なお、情報記憶媒体１５０に格納される情報の一部又は全部は、装置への電源投入時等に記憶部１４０に転送されることになる。また情報記憶媒体１５０に記憶される情報は、本発明の処理を行うためのプログラムコード、画像情報、音情報、表示物の形状情報、テーブルデータ、リストデータ、プレーヤ情報や、本発明の処理を指示するための情報、その指示に従って処理を行うための情報等の少なくとも１つを含むものである。
【００３０】
画像生成部１６０は、処理部１００からの指示等にしたがって、各種の画像を生成し表示部１６２に出力するものであり、その機能は、画像生成用ＡＳＩＣ、ＣＰＵ、或いはＤＳＰなどのハードウェアや、所与のプログラム（画像生成プログラム）、画像情報により実現できる。
【００３１】
音生成部１７０は、処理部１００からの指示等にしたがって、各種の音を生成し音出力部１７２に出力するものであり、その機能は、音生成用ＡＳＩＣ、ＣＰＵ、或いはＤＳＰなどのハードウェアや、所与のプログラム（音生成プログラム）、音情報（波形データ等）により実現できる。
【００３２】
通信部１７４は、外部装置（例えばホスト装置や他のゲーム装置）との間で通信を行うための各種の制御を行うものであり、その機能は、通信用ＡＳＩＣ、或いはＣＰＵなどのハードウェアや、所与のプログラム（通信プログラム）により実現できる。
【００３３】
なお本発明（本実施形態）の処理を実現するための情報は、ホスト装置が有する情報記憶媒体からネットワーク、通信部１７４を介してゲーム装置が有する情報記憶媒体に配信するようにしてもよい。このようなホスト装置の情報記憶媒体の使用やゲーム装置の情報記憶媒体の使用も本発明の範囲内に含まれる。
【００３４】
また処理部１００の機能の一部又は全部を、画像生成部１６０、音生成部１７０、又は通信部１７４の機能により実現するようにしてもよい。或いは、画像生成部１６０、音生成部１７０、又は通信部１７４の機能の一部又は全部を、処理部１００の機能により実現するようにしてもよい。
【００３５】
Ｉ／Ｆ部１７６は、処理部１００からの指示等にしたがってメモリーカード（広義には、携帯型ミニゲーム装置などを含む携帯型情報記憶装置）１８０との間で情報交換を行うためのインターフェースとなるものであり、その機能は、メモリーカードを挿入するためのスロットや、データ書き込み・読み出し用コントローラＩＣなどにより実現できる。なお、メモリーカード１８０との間の情報交換を赤外線などの無線を用いて実現する場合には、Ｉ／Ｆ部１７６の機能は、半導体レーザ、赤外線センサーなどのハードウェアにより実現できる。
【００３６】
処理部１００は、ゲーム演算部１１０を含む。
【００３７】
ここでゲーム演算部１１０は、コイン（代価）の受け付け処理、ゲームモードの設定処理、ゲームの進行処理、選択画面の設定処理、移動体（バイク、キャラクタ等）の位置や方向を決める処理、視点位置や視線方向を決める処理、移動体のモーションを再生する処理、オブジェクト空間へオブジェクトを配置する処理、ヒットチェック処理、ゲーム成果（成績）を演算する処理、複数のプレーヤが共通のゲーム空間でプレイするための処理、或いはゲームオーバー処理などの種々のゲーム演算処理を、操作部１３０からの操作情報、メモリーカード１８０からの情報、ゲームプログラムなどに基づいて行う。なお、本発明をバイクゲーム以外のゲームに適用した場合には、移動体としては、バイク、キャラクタ以外にも、車、飛行機、船、水上スキー、サーフボード、戦車、ロボット、宇宙船、弾等、種々のものを考えることができる。
【００３８】
ゲーム演算部１１０は、移動体演算部１１２、視点制御部１１４、シェーディング演算変更部１１６を含む。
【００３９】
ここで移動体演算部１１２は、バイクなどの移動体の移動情報（位置情報、方向情報等）を演算するものであり、例えば操作部１３０から入力される操作情報や所与のプログラムに基づき、移動体をオブジェクト空間内で移動させる処理などを行う。即ち、プレーヤ（自プレーヤ、他プレーヤ）からの操作情報や、コンピュータからの命令（所与の移動制御アルゴリズム）に基づいて、移動体をオブジェクト空間内で移動させる処理などを行う。
【００４０】
より具体的には、移動体演算部１１２は、移動体の位置や方向を例えば１フレーム（１／６０秒）毎に求める処理を行う。例えば（ｋ−１）フレームでの移動体の位置をＰＭk-1、速度をＶＭk-1、加速度をＡＭk-1、１フレームの時間を△ｔとする。するとｋフレームでの移動体の位置ＰＭk、速度ＶＭkは例えば下式（１）、（２）のように求められる。
【００４１】
ＰＭk＝ＰＭk-1＋ＶＭk-1×△ｔ              （１）
ＶＭk＝ＶＭk-1＋ＡＭk-1×△ｔ              （２）
視点制御部１１４は、移動体演算部１１２で得られた移動体の位置や方向の情報などに基づいて、視点位置や視線方向等を求める処理を行う。より具体的には、例えば、プレーヤの操作する移動体の位置又は方向に追従するように視点位置又は視線方向を変化させる処理を行う。この場合、移動体の位置又は方向に対して、例えば慣性を持ちながら視点位置又は視線方向を追従させることが望ましい。画像生成部１６０は、この視点制御部１１４により制御される視点において見える画像を生成することになる。
【００４２】
なお、視点制御部１１４は、移動体の移動とは無関係に視点を制御することもできる。
【００４３】
シェーディング演算変更部１１６は、移動体が位置するシェーディング演算変更領域（以下、適宜、単に演算変更領域と呼ぶ）に応じて、移動体に施すシェーディング演算を変更するための処理を行う。例えば移動体の２次元位置が演算変更領域内にない場合には、通常のシェーディング演算が移動体に施される。即ち、移動体の陰影づけが通常の陰影づけになる。一方、移動体の２次元位置が演算変更領域内にある場合には、移動体が位置する演算変更領域に応じたシェーディング演算が移動体に施される。即ち、移動体の陰影づけが通常よりも暗くなる。
【００４４】
ここで、上記演算変更領域（影領域）は、オブジェクト空間内のマップ上に設定される２次元の領域であり、任意の形状に設定可能になっている。また、演算変更領域に関するデータ（演算変更領域の形状を特定するためのデータや、シェーディング演算パラメータ等）は、記憶部１４０内の演算変更領域データ記憶部１４４に記憶されている。なお、マップに関するデータ（マップの形状を特定するためのデータや、マップの画像データ等）は、マップデータ記憶部１４２に記憶されている。
【００４５】
シェーディング演算変更部１１６は、コースブロック検索部１１８、移動体位置判断部１２０、パラメータ算出部１２２を含む。
【００４６】
ここで、コースブロック検索部１１８は、オブジェクト空間内のコース上に設定された複数のコースブロックの中から、移動体が位置するコースブロックを検索するための処理を行う。なお、このコースブロックは、移動体の順位決定等のために用意されるものである。
【００４７】
移動体位置判断部１２０は、演算変更領域に移動体が位置するか否かを判断する。より具体的には、まず移動体が位置するコースブロックが検索され、次に、検索されたコースブロックに関連づけて登録されている演算変更領域（狭義には演算変更領域を構成する影ポリゴン）が検索される。
【００４８】
パラメータ算出部１２２は、移動体のシェーディング演算に使用されるシェーディング演算パラメータ（例えば輝度、光源ベクトル、光源の位置、光源の種類、光源の強さ、或いは環境光等のパラメータ）を求めるための処理を行う。より具体的には、演算変更領域データ記憶部１４４には、演算変更領域に対して設定されたシェーディング演算パラメータが、演算変更領域データとして記憶されている。そして、この記憶されているシェーディング演算パラメータと、例えば演算変更領域内での移動体のローカル座標とに基づいて、移動体のシェーディング演算に使用されるシェーディング演算パラメータが求められる。そして、求められたシェーディング演算パラメータに基づいて移動体に対するシェーディング演算が行われることになる。
【００４９】
なお、本実施形態のゲーム装置は、１人のプレーヤがプレイするシングルプレーヤモードによるゲームプレイと、複数のプレーヤがプレイするマルチプレーヤモードによるゲームプレイの両方が可能になっている。
【００５０】
また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つのゲーム装置を用いて生成してもよいし、ネットワーク（伝送ライン、通信回線）などで接続された複数のゲーム装置を用いて生成してもよい。
【００５１】
２．本実施形態の特徴
図３に、本実施形態により生成されるゲーム画像の例を示す。
【００５２】
本実施形態により実現されるバイクゲームでは、プレーヤは、図３に示すようなゲーム画像を見ながら、移動体（自バイク）２０を運転してオブジェクト空間内で走行させる。そして他プレーヤやコンピュータが運転する移動体（他バイク）と競争してゲームを楽しむ。
【００５３】
図３では、移動体２０の前方にゲート（３次元オブジェクトの１つ）２８が設けられており、このゲート２８の影が画面上に表示されている。このようなゲート２８の影の領域である演算変更領域３０に移動体２０が進入した場合に、本実施形態では、移動体２０のシェーディング演算を変更するようにしている。即ち演算変更領域（影領域）３０に移動体２０が進入する前は明るかった移動体２０の陰影づけが、演算変更領域３０に移動体２０が進入すると暗くなり、出るとまた明るくなる。このようにすることで、移動体２０のよりリアルな陰影づけを実現できるようになり、プレーヤの仮想現実感を格段に向上できる。
【００５４】
より具体的には、本実施形態では、図４（Ａ）、（Ｂ）に示すように２次元の演算変更領域３０がマップ上に設定される。この演算変更領域３０は、演算変更領域３０に対応する３次元オブジェクト（図３のゲート２８）の形状等に応じて任意の形状に設定できるようになっている。そして、図４（Ａ）に示すように移動体２０が演算変更領域３０に進入していない場合には、シェーディング演算の変更処理は行われず、図４（Ｂ）に示すように移動体２０が演算変更領域３０に進入すると、移動体に施されるシェーディング演算が変更される。
【００５５】
図５に、３次元オブジェクトが木３２である場合の演算変更領域（影領域）３０の例を示す。図５では、演算変更領域３０が、３次元オブジェクトである木３２の影となるべき領域に設定されている。そして、図５では、光源ベクトルＬＣの方向がＥ１に示される方向になっていると想定されており、この想定に沿うように演算変更領域３０の形状が設定されている。
【００５６】
また図６に、３次元オブジェクトがトンネル３４である場合の演算変更領域３０の例を示す。図６では、演算変更領域３０が、３次元オブジェクトであるトンネル３４の影となるべき領域に設定されている。そして、図６では、光源ベクトルＬＣの方向がＥ２に示される方向になっていると想定されており、この想定に沿うように演算変更領域３０の形状が設定されている。
【００５７】
このように本実施形態によれば、２次元の演算変更領域３０がマップ上に予め設定されている。そして、シェーディング演算が変更されるというような特定の事象が起きたか否かを、移動体２０の２次元位置が２次元の演算変更領域３０内にあるか否かに基づいて判断される。従って、特定の事象が起きたか否かを３次元立体データに基づいて判断する特開平７−１５５４６４の従来技術に比べて、処理負担を格段に軽減できる。
【００５８】
しかも、本実施形態の演算変更領域（シェーディング演算変更領域）３０は、図５、図６に示すように任意の形状に設定可能になっているため、少ない処理負担でリアルな陰影づけを実現できる。
【００５９】
即ち図５では、木３２の形状や光源ベクトルＬＣの方向が適正に反映されるように、演算変更領域３０の形状が設定されている。これにより、木３２の３次元立体データに基づくことなく、木３２の存在により移動体２０の陰影づけが変化するという現象をリアルに表現できるようになる。
【００６０】
また図６では、トンネル３４の形状や光源ベクトルＬＣの方向が適正に反映さされるように、演算変更領域３０の形状が設定されている。例えば図６のＥ３に示すトンネル３４の入り口付近では、影となるべき演算変更領域３０がトンネル３４の外側にはみ出している。一方、Ｅ４に示すトンネル３４の出口付近では、影となるべき演算変更領域３０がトンネル３４の内側に引っ込んでいる。従って、トンネル３０の３次元立体データに基づくことなく、トンネル３０の形状や光源ベクトルＬＣの方向が反映された移動体２０へのリアルな陰影づけを実現できるようになる。
【００６１】
以上のように本実施形態では、従来技術に比べて少ない処理負担でリアルな陰影づけの実現に成功している。
【００６２】
なお、本実施形態では、演算変更領域３０を、１又は複数の影ポリゴン（広義にはポリゴン、更に広義にはプリミティブ面）により構成している。例えば図４（Ａ）では、演算変更領域３０は、影ポリゴンＰＬ０〜ＰＬ８により構成されている。このように演算変更領域３０を複数の影ポリゴンにより構成することで、演算変更領域３０の形状の設定を容易化できる。即ち、図５、図６に示すような種々の形状の演算変更領域３０を簡易に作成できるようになる。
【００６３】
また、演算変更領域３０の形状又は位置を、ゲーム状況に応じて或いは時間経過に伴い変化させるようにしてもよい。例えば図５、図６において、光源ベクトルＬＣの方向が時間経過に伴い変化するような場合には、その光源ベクトルＬＣの方向の変化が反映されるように、演算変更領域３０の形状又は位置を変化させる。このようにすることで、移動体２０に対する陰影づけを更にリアルなものにすることができるようになる。
【００６４】
さて、本実施形態では、演算変更領域に移動体が位置するか否かの判断処理を高速化、効率化するために、以下のような手法を採用している。
【００６５】
即ち、本実施形態では図７（Ａ）に示すように、オブジェクト空間内のコース４０を複数のコースブロックＣ0〜Ｃ1024に分割している。コース４０は、道のり距離で例えば１ｍ間隔毎にコースブロックに分割される。そして図７（Ｂ）において、移動体２０がコースブロックＣｊ内に位置するか否かを、ライン４２、４４の配置情報により判定する。そして、移動体２０が位置するコースブロックを特定することで、移動体２０の順位を決めたり時間延長の可否を決めている。例えば第１の移動体がコースブロックＣ18に位置し、それを追いかける第２の移動体がコースブロックＣ17に位置した場合には、第１、第２の移動体の順位を、各々、１位、２位と判断する。また所与の時間内に、あるコースブロックを通過したか否かを判定し、通過した場合にはそのプレーヤのプレイ時間を延長する。
【００６６】
そして、本実施形態では、このコースブロックに関連づけて、演算変更領域を登録している。即ち本実施形態では、まず、コース上に設定されたコースブロックの中から移動体が位置するコースブロックが検索される。次に、検索されたコースブロックに関連づけて登録されている演算変更領域（演算変更領域を構成する影ポリゴン）が呼び出され、その演算変更領域に移動体（移動体の代表点）が位置するか否かが判断される。
【００６７】
このようにすることで、移動体が位置する演算変更領域の検索処理を高速化、効率化できるようになる。移動体が位置するコースブロックをまず初めに検索することで、検索対象となる演算変更領域の数を絞り込めるからである。しかも、移動体が位置するコースブロックの検索処理は、順位の決定や時間延長の可否の決定のために、どちらにしても行われる処理である。従って、移動体が位置する演算変更領域の検索処理にコースブロックを利用しても、実質的に処理負担は増えることはない。このように、本実施形態では、コースブロックを有効利用して、演算変更領域の検索処理の高速化、効率化を実現している。
【００６８】
さて、本実施形態では、移動体２０の陰影づけを更にリアルなものにするために、以下のような手法も採用している。
【００６９】
即ち、本実施形態では、演算変更領域に対してシェーディング演算パラメータが設定される。例えば図８（Ａ）では、演算変更領域３０（狭義には影ポリゴン）の頂点ＶＥ０、ＶＥ１、ＶＥ２、ＶＥ３に対して、各々、シェーディング演算パラメータの１つである輝度パラメータＩ０、Ｉ１、Ｉ２、Ｉ３が設定されている。即ち、図２の演算変更領域データ記憶部１４４に記憶される演算変更領域データとして、各頂点の輝度パラメータが記憶される。
【００７０】
そして、本実施形態では、これらの輝度パラメータＩ０〜Ｉ３に基づいて、移動体２０のシェーディング演算に使用される輝度パラメータＩＭが求められ、求められた輝度パラメータＩＭに基づいて移動体２０に対するシェーディング演算が行われる。より具体的には、輝度パラメータＩ０〜Ｉ３と、演算変更領域３０内での移動体２０（狭義には移動体の代表点）のローカル座標（ＲＬＸ、ＲＬＺ）とに基づいて、輝度パラメータＩＭが求められ、この輝度パラメータＩＭに基づいて移動体２０のシェーディング演算が行われる。このようにすれば、演算変更領域３０の輝度パラメータＩ０〜Ｉ３が例えば図８（Ｂ）のように設定されていた場合には、この設定に沿うように、移動体２０に対して陰影づけを施すことができるようになる。これにより、移動体２０に施される陰影づけを、演算変更領域３０の各場所において様々に変化させることができるようになる。例えば、図８（Ｂ）において移動体２０が頂点ＶＥ０、ＶＥ１に近い場所に位置する場合には、移動体２０の陰影づけは暗くなり、ＶＥ２、ＶＥ３に近い場所に位置する場合には、移動体２０の陰影づけは明るくなる。このようにすることで、移動体２０に対する陰影づけを更にリアルなものにすることができる。
【００７１】
なお、演算変更領域に設定されるシェーディング演算パラメータとしては、輝度パラメータ以外にも、光源ベクトル、光源の位置、光源の種類、光源の強さ或いは環境光のパラメータ等、種々のパラメータを考えることができる。例えばシェーディング演算パラメータとして光源ベクトルの方向や、光源の位置、種類、強さ或いは環境光のパラメータを採用すれば、演算変更領域毎に光源ベクトルの方向や、光源の位置、種類、強さ或いは環境光を変化させることができ、よりリアルで多様なシェーディング演算を実現できるようになる。
【００７２】
さて、図９（Ａ）、（Ｂ）に、図２のマップデータ記憶部１４２、演算変更領域データ記憶部１４４に記憶されるマップデータ、演算変更領域データの例を示す。
【００７３】
本実施形態のマップは複数のマップポリゴンにより構成されている。そして図９（Ａ）に示すようにマップデータは、これらのマップポリゴンＰＬ０、ＰＬ１、ＰＬ２・・・の頂点ＶＥ０、ＶＥ１、ＶＥ２、ＶＥ３のＸ、Ｙ、Ｚ座標データ（Ｘ００、Ｙ００、Ｚ００、Ｘ０１、Ｙ０１、Ｚ０１・・・・）を含む。
【００７４】
なおマップデータは、このような座標データ以外にも、各マップポリゴンに設定される輝度パラメータ、テクスチャ座標パラメータ（ＵＶ座標）等を含む。
【００７５】
一方、本実施形態の演算変更領域は複数の影ポリゴンにより構成されている。ここで、本実施形態では、これらの影ポリゴンＰＬ０、ＰＬ１、ＰＬ２・・・として、マップを構成するマップポリゴンＰＬ０、ＰＬ１、ＰＬ２・・・をそのまま流用している。このようにすることで、演算変更領域データを容易に作成できるようになる。
【００７６】
そして図９（Ｂ）に示すように演算変更領域データは、演算変更領域を構成する影ポリゴンＰＬ０、ＰＬ１、ＰＬ２・・・の頂点ＶＥ０、ＶＥ１、ＶＥ２、ＶＥ３のＸ、Ｚ座標データを含む。これらのＸ、Ｚ座標データは、マップデータに含まれるＸ、Ｚ座標データをそのまま流用したものである。そして、Ｙ座標データの部分については、マップデータのＹ座標データを流用せずに、輝度パラメータＩ００、Ｉ０１、Ｉ０２・・・・を代入するようにする。
【００７７】
ここで、Ｙ座標データの部分に代入する輝度パラメータＩ００、Ｉ０１、Ｉ０２・・・・としては、マップデータに含まれる輝度パラメータをそのまま流用してもよいし、マップデータに含まれる輝度パラメータに変換処理を施したものを用いてもよい。
【００７８】
このように、本実施形態では図９（Ｂ）に示すように、演算変更領域データが、Ｘ、Ｚ座標データ（Ｘ００、Ｚ００、Ｘ０１、Ｚ０１、Ｘ０２、Ｚ０２・・・）と、シェーディング演算パラメータの１つである輝度パラメータ（Ｉ００、Ｉ０１、Ｉ０２・・・）を含む。そして、演算変更領域データが含むＸ、Ｚ座標データにより、演算変更領域の２次元形状（影ポリゴンＰＬ０、ＰＬ１、ＰＬ２・・・の２次元形状）が特定される。この場合、演算変更領域データのＸ、Ｚ座標データは、マップデータのＸ、Ｚ座標データを流用しているため（広義には、マップデータのＸ、Ｚ座標データに基づいて求められているため）、その作成は非常に容易になる。
【００７９】
更に本実施形態では図９（Ｂ）に示すように、演算変更領域データのＹ座標データの部分に、輝度パラメータＩ００、Ｉ０１、Ｉ０２・・・が代入されている。これにより、演算変更領域データにどのように輝度パラメータが設定されているかを、画像データ作成ツールを用いて視覚的に表すことが可能になり、画像データの作成作業を効率化でき、ゲーム装置の開発期間の短縮化を図れる。
【００８０】
例えば図１０に、本実施形態のゲーム装置に使用する画像データを作成する画像データ作成ツールのブロック図の例を示す。
【００８１】
図１０において、開発者は、キーボード２００、マウス２０２などの操作手段を用いて、画像データの作成に必要な種々のデータを入力したり、画像データ作成ツールへの種々の指示を行う。
【００８２】
情報記憶媒体２１６には、ツールプログラム２２６や、このツールプログラム２２６の実行のために必要な種々のデータが格納されている。
【００８３】
処理部２１０は、マップデータ作成部２１２、マップ表示部２１３、演算変更領域データ作成部２１４、演算変更領域表示部２１５を含む。
【００８４】
ここでマップデータ作成部２１２は、図９（Ａ）に示すようなマップデータを、キーボード２００、マウス２０２からの入力データなどに基づいて作成するための処理を行う。
【００８５】
マップ表示部２１３は、作成されたマップデータに含まれるＸ、Ｙ、Ｚ座標データに基づいて、マップの確認画面を表示部２１８に表示するための処理を行う。
【００８６】
演算変更領域データ作成部２１４は、演算変更領域のデータを、キーボード２００、マウス２０２からの入力データなどに基づいて作成するための処理を行う。
【００８７】
演算変更領域表示部２１５は、作成された演算変更領域のデータに含まれるＸ、Ｙ、Ｚ座標データに基づいて、演算変更領域の確認画面を表示するための処理を行う。
【００８８】
そして、本実施形態では、演算変更領域のＹ座標データの部分に、輝度パラメータ（シェーディング演算パラメータ）が代入される。そして、演算変更領域のデータのＸ、Ｚ座標データと、Ｙ座標データの部分に代入された輝度パラメータとに基づいて、演算変更領域の確認画面が３次元的に表示されることになる。
【００８９】
例えば図１１（Ａ）、（Ｂ）に、図１０の画像データ作成ツールにより作成された画像データ（マップデータ）に基づいて生成される画像（テクスチャがマッピングされた画像）の例を示す。ここで、図１１（Ａ）では、道路５０上にゲート５２の影は表示されていないが、図１１（Ｂ）では影が表示されている。そして、ゲート５２の影の領域である演算変更領域３０に移動体が進入すると、移動体の陰影づけが暗くなるように変化する。
【００９０】
図１２（Ａ）に、図１０の画像データ作成ツールによりワイヤーフレームで表示されるマップの確認画面を示す。図１２（Ａ）は、図１１（Ｂ）の道路５０（マップの１つ）の形状を確認するための画面である。
【００９１】
一方、図１２（Ｂ）に、画像データ作成ツールによりワイヤーフレーム表示される演算変更領域の確認画面の例を示す。この確認画面は、図１１（Ｂ）の演算変更領域３０の形状や、設定された輝度パラメータ（シェーディング演算パラメータ）の値を確認するための画面である。
【００９２】
本実施形態では、演算変更領域を構成する影ポリゴンのＸ、Ｚ座標データについては、マップを構成するマップポリゴンのＸ、Ｚ座標データをそのまま流用している。従って、図１２（Ａ）、（Ｂ）に示すように、マップポリゴンと影ポリゴンのＸ、Ｚ座標データは同一になり、マップと演算変更領域の２次元形状（Ｘ、Ｚ平面での形状）は同一になる。
【００９３】
そして、本実施形態では、演算変更領域のＹ座標（高さ）データの部分に輝度パラメータが代入される。そして、図１２（Ｂ）に示すように、輝度パラメータの大小が、高さの高低で把握できるように、演算変更領域の確認画面が３次元的に表示される。従って、開発者は、図１２（Ｂ）の確認画面を見ることで、輝度パラメータがどのように値になっているかを視覚的に把握できるようになる。即ち、図１２（Ｂ）において、高さが低い場所ほど（Ｙ座標データが小さい場所ほど）、移動体に対する陰影づけが暗くなる場所であるということを、開発者は視覚的に即座に把握できるようになる。これにより、演算変更領域のデータの作成作業を効率化でき、開発期間の短縮化を図れるようになる。
【００９４】
なお、図１２（Ｂ）のＦ１、Ｆ２に示す領域のように、輝度パラメータが変化しない領域（高さが変化しない領域）については、その領域に関するデータを図２の演算変更領域データ記憶部１４４に記憶しないようにすることが望ましい。このようにデータを圧縮して記憶することで、記憶部１４０の使用記憶容量を節約でき、ゲーム装置の低コスト化等を図れるようになる。
【００９５】
３．本実施形態の処理
次に、本実施形態の詳細な処理例について図１３のフローチャートを用いて説明する。
【００９６】
まず、当該フレームでの移動体の位置、方向を演算する（ステップＳ１）。
【００９７】
次に、演算された移動体の位置等に基づいて、移動体（移動体の代表点）が位置するコースブロックを検索する（ステップＳ２）。
【００９８】
例えば図１４では、道路６０の上に道路６２が交差して設けられている（道路６０、６２の立体交差）。そして、移動体２０（代表点ＲＰ）は、コースブロックＣ５２内に位置するため、コースブロックＣ５２が検索される。
【００９９】
次に、検索されたコースブロックに影ポリゴンが登録されているか否かを判断し（ステップＳ３）、登録されている場合にはステップＳ４に移行する。一方、登録されていない場合にはステップＳ８に移行し、通常の輝度演算パラメータ（シェーディング演算パラメータ）が移動体に対して設定される。
【０１００】
例えば、図１４では、移動体２０が位置するコースブロックＣ５２には、Ｇ１に示す影ポリゴン（斜線の影ポリゴン）が登録されている。従って、この場合には、ステップＳ４に移行する。一方、例えば移動体２０がコースブロックＣ５０に位置する場合には、このコースブロックＣ５０には影ポリゴンが登録されていない。従って、この場合には、ステップＳ８に移行する。
【０１０１】
次に、移動体の代表点が影ポリゴン内に位置するか否かを判断し（ステップＳ４）、位置する場合にはステップＳ５に移行する。一方、位置しない場合にはステップＳ８に移行し、通常の輝度パラメータ（シェーディング演算パラメータ）が移動体に対して設定される。
【０１０２】
移動体２０が影ポリゴン内に位置するか否かは次のように判断する。例えば図１５（Ａ）において、影ポリゴン７０の頂点ＶＥ０、ＶＥ１、ＶＥ２、ＶＥ３と移動体２０の代表点ＲＰを結ぶベクトルを、各々、Ｃ０Ｒ、Ｃ１Ｒ、Ｃ２Ｒ、Ｃ３Ｒとする。また、頂点ＶＥ０、ＶＥ１を結ぶベクトル、ＶＥ１、ＶＥ２を結ぶベクトル、ＶＥ２、ＶＥ３を結ぶベクトル、ＶＥ３、ＶＥ０を結ぶベクトルを、各々、Ｃ０１、Ｃ１２、Ｃ２３、Ｃ３０とする。すると、本実施形態では、これらのベクトル間の外積を下式のように計算する。
【０１０３】
ＯＰ０＝Ｃ０Ｒ×Ｃ０１      （３）
ＯＰ１＝Ｃ１Ｒ×Ｃ１２      （４）
ＯＰ２＝Ｃ２Ｒ×Ｃ２３      （５）
ＯＰ３＝Ｃ３Ｒ×Ｃ３０      （６）
そして、ＯＰ０、ＯＰ１、ＯＰ２、ＯＰ３のＹ成分が全て正である場合には、移動体２０の代表点ＲＰが影ポリゴン７０内に位置すると判断する。一方、ＯＰ０、ＯＰ１、ＯＰ２、ＯＰ３のＹ成分の中に１つでも負のものがある場合には、代表点ＲＰは影ポリゴン７０の外に位置すると判断する。
【０１０４】
このように、本実施形態では、移動体２０の代表点ＲＰの２次元位置が２次元の影ポリゴン（演算変更領域）内にあるか否かに基づいて、シェーディング演算を変更するか否かが判断される。従って、３次元立体データを利用する特開平７−１５５４６４の従来技術に比べて、処理負担を格段に軽減できる。
【０１０５】
移動体の代表点が影ポリゴン内に位置すると判断された場合には、影ポリゴンの座標系での代表点のローカル座標を求める（ステップＳ５）。例えば図１５（Ｂ）では、影ポリゴン７０の頂点ＶＥ０、ＶＥ１、ＶＥ２、ＶＥ３が、各々、（０、０）、（０、１）、（１、１）、（１、０）に座標変換されるような、影ポリゴン７０のローカル座標系（ＬＸ、ＬＹ）が想定される。そして、このローカル座標系（ＬＸ、ＬＹ）での代表点のローカル座標（ＲＬＸ、ＲＬＺ）が求められることになる。
【０１０６】
次に、図８（Ａ）、（Ｂ）で説明したように、影ポリゴンの頂点に設定された輝度パラメータ（広義にはシェーディング演算パラメータ）と、移動体２０の代表点のローカル座標（ＲＬＸ、ＲＬＺ）とに基づいて、移動体２０の代表点での輝度パラメータを求める（ステップＳ６）。そして、求められた輝度パラメータを移動体２０に対して設定する（ステップＳ７）。
【０１０７】
そして、最後に、シェーディング演算等の画像生成処理が実行される（ステップＳ９）。この場合、このシェーディング演算は、ステップＳ７又はＳ８で設定された輝度パラメータに基づいて行われることになる。
【０１０８】
４．ハードウェア構成
次に、本実施形態を実現できるハードウェアの構成の一例について図１６を用いて説明する。同図に示す装置では、ＣＰＵ１０００、ＲＯＭ１００２、ＲＡＭ１００４、情報記憶媒体１００６、音生成ＩＣ１００８、画像生成ＩＣ１０１０、Ｉ／Ｏポート１０１２、１０１４が、システムバス１０１６により相互にデータ送受信可能に接続されている。そして前記画像生成ＩＣ１０１０にはディスプレイ１０１８が接続され、音生成ＩＣ１００８にはスピーカ１０２０が接続され、Ｉ／Ｏポート１０１２にはコントロール装置１０２２が接続され、Ｉ／Ｏポート１０１４には通信装置１０２４が接続されている。
【０１０９】
情報記憶媒体１００６は、プログラム、表示物を表現するための画像データ、音データ等が主に格納されるものである。例えば家庭用ゲーム装置ではゲームプログラム等を格納する情報記憶媒体としてＣＤ−ＲＯＭ、ゲームカセット、ＤＶＤ等が用いられる。また業務用ゲーム装置ではＲＯＭ等のメモリが用いられ、この場合には情報記憶媒体１００６はＲＯＭ１００２になる。
【０１１０】
コントロール装置１０２２はゲームコントローラ、操作パネル等に相当するものであり、プレーヤがゲーム進行に応じて行う判断の結果を装置本体に入力するための装置である。
【０１１１】
情報記憶媒体１００６に格納されるプログラム、ＲＯＭ１００２に格納されるシステムプログラム（装置本体の初期化情報等）、コントロール装置１０２２によって入力される信号等に従って、ＣＰＵ１０００は装置全体の制御や各種データ処理を行う。ＲＡＭ１００４はこのＣＰＵ１０００の作業領域等として用いられる記憶手段であり、情報記憶媒体１００６やＲＯＭ１００２の所与の内容、あるいはＣＰＵ１０００の演算結果等が格納される。また本実施形態を実現するための論理的な構成を持つデータ構造は、このＲＡＭ又は情報記憶媒体上に構築されることになる。
【０１１２】
更に、この種の装置には音生成ＩＣ１００８と画像生成ＩＣ１０１０とが設けられていてゲーム音やゲーム画像の好適な出力が行えるようになっている。音生成ＩＣ１００８は情報記憶媒体１００６やＲＯＭ１００２に記憶される情報に基づいて効果音やバックグラウンド音楽等のゲーム音を生成する集積回路であり、生成されたゲーム音はスピーカ１０２０によって出力される。また、画像生成ＩＣ１０１０は、ＲＡＭ１００４、ＲＯＭ１００２、情報記憶媒体１００６等から送られる画像情報に基づいてディスプレイ１０１８に出力するための画素情報を生成する集積回路である。なおディスプレイ１０１８として、いわゆるヘッドマウントディスプレイ（ＨＭＤ）と呼ばれるものを使用することもできる。
【０１１３】
また、通信装置１０２４はゲーム装置内部で利用される各種の情報を外部とやりとりするものであり、他のゲーム装置と接続されてゲームプログラムに応じた所与の情報を送受したり、通信回線を介してゲームプログラム等の情報を送受することなどに利用される。
【０１１４】
そして図１〜図１５（Ｂ）で説明した種々の処理は、プログラムやデータなどの情報を格納した情報記憶媒体１００６、この情報記憶媒体１００６からの情報等に基づいて動作するＣＰＵ１０００、画像生成ＩＣ１０１０或いは音生成ＩＣ１００８等によって実現される。なお画像生成ＩＣ１０１０、音生成ＩＣ１００８等で行われる処理は、ＣＰＵ１０００あるいは汎用のＤＳＰ等によりソフトウェア的に行ってもよい。
【０１１５】
前述の図１のように本実施形態を業務用ゲーム装置に適用した場合には、装置に内蔵されるシステムボード（サーキットボード）１１０６には、ＣＰＵ、画像生成ＩＣ、音生成ＩＣ等が実装される。そして、本実施形態（本発明）を実現（実行）するための種々の情報（オブジェクト空間内で移動体を移動させるための演算を行うための情報、任意の形状に設定可能な２次元のシェーディング演算変更領域をオブジェクト空間内のマップに設定しておき、移動体が位置するシェーディング演算変更領域に応じて、移動体に施すシェーディング演算を変更するための情報、オブジェクト空間内の所与の視点での画像を生成するための情報等）は、システムボード１１０６上の情報記憶媒体である半導体メモリ１１０８に格納される。以下、これらの情報を格納情報と呼ぶ。
【０１１６】
図１７（Ａ）に、本実施形態を家庭用のゲーム装置に適用した場合の例を示す。プレーヤはディスプレイ１２００に映し出されたゲーム画像を見ながら、ゲームコントローラ１２０２、１２０４を操作してゲームを楽しむ。この場合、上記格納情報は、本体装置に着脱自在な情報記憶媒体であるＣＤ−ＲＯＭ１２０６、メモリーカード１２０８、１２０９等に格納されている。
【０１１７】
図１７（Ｂ）に、ホスト装置１３００と、このホスト装置１３００と通信回線（ＬＡＮのような小規模ネットワークや、インターネットのような広域ネットワーク）１３０２を介して接続される端末１３０４-1〜１３０４-nとを含むシステムに本実施形態を適用した場合の例を示す。この場合、上記格納情報は、例えばホスト装置１３００が制御可能な磁気ディスク装置、磁気テープ装置、半導体メモリ等の情報記憶媒体１３０６に格納されている。端末１３０４-1〜１３０４-nが、ＣＰＵ、画像生成ＩＣ、音処理ＩＣを有し、スタンドアロンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置１３００からは、ゲーム画像、ゲーム音を生成するためのゲームプログラム等が端末１３０４-1〜１３０４-nに配送される。一方、スタンドアロンで生成できない場合には、ホスト装置１３００がゲーム画像、ゲーム音を生成し、これを端末１３０４-1〜１３０４-nに伝送し端末において出力することになる。
【０１１８】
なお、図１７（Ｂ）の構成の場合に、本発明の処理を、ホスト装置と端末とで（サーバーを設ける場合にはホスト装置とサーバーと端末とで）分散して処理するようにしてもよい。また、本発明を実現するための上記格納情報を、ホスト装置の情報記憶媒体と端末の情報記憶媒体（或いはホスト装置の情報記憶媒体とサーバの情報記憶媒体と端末の情報記憶媒体）に分散して格納するようにしてもよい。
【０１１９】
また通信回線に接続する端末は、家庭用ゲーム装置であってもよいし業務用ゲーム装置であってもよい。そして、業務用ゲーム装置を通信回線に接続する場合には、業務用ゲーム装置との間で情報のやり取りが可能であると共に家庭用ゲーム装置との間でも情報のやり取りが可能な携帯型情報記憶装置（メモリーカード、携帯型ゲーム装置）を用いることが望ましい。
【０１２０】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。
【０１２１】
例えば、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の１の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
【０１２２】
また本実施形態では、シェーディング演算変更領域を１又は複数のプリミティブ面（影ポリゴン）により構成する場合について説明した。本発明のシェーディング演算変更領域は、その形状の設定の容易化のためには、このようにプリミティブ面により構成することが特に望ましいが、このようなプリミティブ面により構成しない変形実施も可能である。
【０１２３】
また本実施形態では、移動体が位置するシェーディング演算変更領域（プリミティブ面）の検索の前に、コースブロックの検索を行っている。しかしながら、このようなコースブロックの検索結果を利用することなく、移動体が位置するシェーディング演算変更領域を直接に検索する場合も本発明の範囲に含まれる。
【０１２４】
また、シェーディング演算変更領域に設定されるシェーディング演算パラメータも、本実施形態で説明したものに限定されるものではない。
【０１２５】
また、本実施形態では、３次元オブジェクトの影となる領域にシェーディング演算変更領域を設定したが、実際に表示される３次元オブジェクトとは無関係にシェーディング演算変更領域を設定するようにしてもよい。
【０１２６】
また、マップデータの構造やシェーディング演算変更領域のデータの構造も、図９（Ａ）、（Ｂ）で説明したものに限定されない。
【０１２７】
また、図１０〜図１２（Ｂ）で説明した画像データ作成ツールは、図１〜図９（Ｂ）で説明したゲーム装置で使用される画像データの作成に特に有効だが、これに限定されるものではない。
【０１２８】
また本発明はバイクゲーム以外にも種々のゲーム（車ゲーム、飛行機ゲーム、宇宙船ゲーム、格闘ゲーム、ロボット対戦ゲーム、スポーツゲーム、競争ゲーム、シューティングゲーム、ロールプレイングゲーム、音楽演奏ゲーム、ダンスゲーム、クイズゲーム等）に適用できる。
【０１２９】
また本発明は、業務用ゲーム装置、家庭用ゲーム装置、多数のプレーヤが参加する大型アトラクション装置、シミュレータ、マルチメディア端末、画像生成装置、ゲーム画像を生成するシステム基板等の種々のゲーム装置に適用できる。
【図面の簡単な説明】
【図１】本実施形態を業務用ゲーム装置に適用した場合の例を示す図である。
【図２】本実施形態のゲーム装置のブロック図の例である。
【図３】本実施形態により生成されるゲーム画像の例である。
【図４】図４（Ａ）、（Ｂ）は、演算変更領域（シェーディング演算変更領域）について説明するための図である。
【図５】３次元オブジェクトが木である場合の演算変更領域の例について説明するための図である。
【図６】３次元オブジェクトがトンネルである場合の演算変更領域の例について説明するための図である。
【図７】図７（Ａ）、（Ｂ）は、コースブロックを利用する手法について説明するための図である。
【図８】図８（Ａ）、（Ｂ）は、演算変更領域にシェーディング演算パラメータを設定する手法について説明するための図である。
【図９】図９（Ａ）、（Ｂ）は、マップデータ、演算変更領域データの例について説明するための図である。
【図１０】画像データ作成ツールのブロック図の例である。
【図１１】図１１（Ａ）、（Ｂ）は、画像データ作成ツールで作成された画像データに基づいて生成される画像の例である。
【図１２】図１２（Ａ）、（Ｂ）は、画像データ作成ツールによりワイヤーフレームで表示されるマップの確認画面、演算変更領域の確認画面の例を示す図である。
【図１３】本実施形態の詳細な処理例を示すフローチャートの一例である。
【図１４】コースブロックの検索及びコースブロックに登録された影ポリゴンの検索について説明するための図である。
【図１５】図１５（Ａ）、（Ｂ）は、移動体の代表点が影ポリゴン内に位置するか否かを判断する処理、影ポリゴンに設定された輝度パラメータから移動体の代表点での輝度パラメータを求める処理について説明するための図である。
【図１６】本実施形態を実現できるハードウェアの構成の一例を示す図である。
【図１７】図１７（Ａ）、（Ｂ）は、本実施形態が適用される種々の形態の装置の例を示す図である。
【符号の説明】
２０    移動体
３０    演算変更領域（シェーディング演算変更領域、影領域）
３２    木
３４    トンネル
４０    コース
１００  処理部
１１０  ゲーム演算部
１１２  移動体演算部
１１４  視点制御部
１１６  シェーディング演算変更部
１１８  コースブロック検索部
１２０  移動体位置判断部
１２２  パラメータ算出部
１３０  操作部
１４０  記憶部
１４２  マップデータ記憶部
１４４  演算変更領域データ記憶部
１５０  情報記憶媒体
１６０  画像生成部
１６２  表示部
１７０  音生成部
１７２  音出力部
１７４  通信部
１７６  Ｉ／Ｆ部
１８０  メモリーカード
２００  キーボード
２０２  マウス
２１０  処理部
２１２  マップデータ作成部
２１３  マップ表示部
２１４  演算変更領域データ作成部
２１５  演算変更領域表示部
２１６  情報記憶媒体
２１８  表示部
２２６  ツールプログラム
【図１】
0004001435.tif 000002
【図２】
0004001435.tif 000003
【図３】
0004001435.tif 000004
【図４】
0004001435.tif 000005
【図５】
0004001435.tif 000006
【図６】
0004001435.tif 000007
【図７】
0004001435.tif 000008
【図８】
0004001435.tif 000009
【図９】
0004001435.tif 000010
【図１０】
0004001435.tif 000011
【図１１】
0004001435.tif 000012
【図１２】
0004001435.tif 000013
【図１３】
0004001435.tif 000014
【図１４】
0004001435.tif 000015
【図１５】
0004001435.tif 000016
【図１６】
0004001435.tif 000017
【図１７】
0004001435.tif 000018