(57)【要約】【課題】オブジェクトのデータ記憶量やデータ処理量の削減を図りながら、オブジェクトに陰影を付けて立体的に表現することができるようにする。【解決手段】煙単位オブジェクト７１は、４つのポリゴンによって構成された板状オブジェクトである。煙単位オブジェクト７１の内部にある頂点Ｅには、板状オブジェクトに垂直な方向の方向データが設定され、煙単位オブジェクト７１の周辺部にある頂点ＡないしＤには、板状オブジェクトに平行な方向の方向データが設定される。ゲーム装置は、ライト７３の向きと各頂点の方向データとに基づき、各頂点の色または明るさを決定した後、補間処理（およびトゥーンシェーディング処理）により、各ポリゴンの表面上にある各点の色を決定する。方向データを一般的な手法とは異なる方向に設定することにより、板状の煙単位オブジェクト７１に陰影を付けることができる。【選択図】        図１０
2004192470.tif 000002
【特許請求の範囲】
【請求項１】
３次元仮想空間に配置されたオブジェクトを、陰影付きで画面に表示させるゲーム装置であって、
複数のポリゴンによって構成される板状オブジェクトに関し、少なくとも、前記複数のポリゴンの各頂点の座標データと方向データとを設定する板状オブジェクト設定手段と、
前記３次元仮想空間に配置されるライトの向きを決定するライト方向決定手段と、
前記ライト方向決定手段で決定されたライトの向きと、前記板状オブジェクト設定手段で設定された方向データとに基づき、前記板状オブジェクトの各頂点について所定の属性値を求めた上で、当該属性値に基づき、前記板状オブジェクトの表面上にある各点の表示色を決定する表示色決定手段と、
前記表示色決定手段で決定された各点の表示色に基づき、前記板状オブジェクトを前記画面に表示させる表示制御手段とを備え、
前記板状オブジェクトの各頂点の座標データには、すべての頂点について同一平面上の座標値が設定され、前記板状オブジェクトの内部にある頂点の方向データには、前記平面に対して第１の角度を成す方向が設定され、前記板状オブジェクトの周辺部にある各頂点の方向データには、前記平面に対して前記第１の角度よりも小さい第２の角度を成す方向が設定されることを特徴とする、ゲーム装置。
【請求項２】
前記表示色決定手段は、
前記ライト方向決定手段で決定されたライトの向きと、前記板状オブジェクト設定手段で設定された方向データとに基づき、前記板状オブジェクトの各頂点の表示色を決定する頂点色決定手段と、
前記頂点色決定手段で決定された各頂点の表示色に基づき、前記板状オブジェクトの表面上にある各点の表示色を決定する表面色決定手段とを含む、請求項１に記載のゲーム装置。
【請求項３】
前記表示色決定手段は、
前記ライト方向決定手段で決定されたライトの向きと、前記板状オブジェクト設定手段で設定記憶された方向データとに基づき、前記板状オブジェクトの各頂点の明るさを決定する頂点明るさ決定手段と、
前記頂点明るさ決定手段で決定された各頂点の明るさに基づき、前記板状オブジェクトの表面上にある各点の明るさを決定する表面明るさ決定手段と、
前記表面明るさ決定手段で決定された各点の明るさを所定のしきい値と比較し、前記板状オブジェクトの表面上にある各点の表示色を少なくとも２とおりに切り替える表面色選択手段とを含む、請求項１に記載のゲーム装置。
【請求項４】
前記表示色決定手段は、前記板状オブジェクトの各頂点について求めた属性値に対して、スムースシェーディング法を適用することにより、前記板状オブジェクトの表面上にある各点の属性値を求めることを特徴とする、請求項１に記載のゲーム装置。
【請求項５】
前記第１の角度が９０度であることを特徴とする、請求項１に記載のゲーム装置。
【請求項６】
前記第２の角度が０度であることを特徴とする、請求項１に記載のゲーム装置。
【請求項７】
前記板状オブジェクトの周辺部にある頂点のうち、同じ座標データが設定された頂点の方向データには、同じ方向が設定されることを特徴とする、請求項１に記載のゲーム装置。
【請求項８】
前記板状オブジェクトの周辺部にある頂点の方向データには、前記板状オブジェクトの内部にある頂点から、前記板状オブジェクトの周辺部にある頂点へ向かう方向が設定されることを特徴とする、請求項７に記載のゲーム装置。
【請求項９】
前記板状オブジェクトは、４枚のポリゴンによって構成されることを特徴とする、請求項１に記載のゲーム装置。
【請求項１０】
前記板状オブジェクトの形状は、凸四角形であり、
前記４枚のポリゴンは、前記凸四角形の内部の１点と前記凸四角形の各頂点とをそれぞれ結んで得られる４つの三角形であることを特徴とする、請求項９に記載のゲーム装置。
【請求項１１】
前記凸四角形は、長方形であり、
前記凸四角形の内部の１点は、前記長方形の対角線の交点であることを特徴とする、請求項１０に記載のゲーム装置。
【請求項１２】
前記板状オブジェクトは、常に前記画面に正対するように制御されることを特徴とする、請求項１に記載のゲーム装置。
【請求項１３】
所定条件を満たすときに、同じ種類の複数の前記板状オブジェクトを３次元仮想空間の所定領域内に発生させる板状オブジェクト発生手段をさらに備える、請求項１または１２に記載のゲーム装置。
【請求項１４】
３次元仮想空間に配置されたオブジェクトを、陰影付きで画面に表示させる処理を、ゲーム装置に実行させるゲームプログラムであって、
複数のポリゴンによって構成される板状オブジェクトに関し、少なくとも、前記複数のポリゴンの各頂点の座標データと方向データとを設定する板状オブジェクト設定ステップと、
前記３次元仮想空間に配置されるライトの向きを決定するライト方向決定ステップと、
前記ライト方向決定ステップで決定されたライトの向きと、前記板状オブジェクト設定ステップで設定された方向データとに基づき、前記板状オブジェクトの各頂点について所定の属性値を求めた上で、当該属性値に基づき、前記板状オブジェクトの表面上にある各点の表示色を決定する表示色決定ステップと、
前記表示色決定ステップで決定された各点の表示色に基づき、前記板状オブジェクトを前記画面に表示させる表示制御ステップとを備え、
前記板状オブジェクトの各頂点の座標データには、すべての頂点について同一平面上の座標値が設定され、前記板状オブジェクトの内部にある頂点の方向データには、前記平面に対して第１の角度を成す方向が設定され、前記板状オブジェクトの周辺部にある各頂点の方向データには、前記平面に対して前記第１の角度よりも小さい第２の角度を成す方向が設定されることを特徴とする、ゲームプログラム。
【請求項１５】
前記表示色決定ステップは、
前記ライト方向決定ステップで決定されたライトの向きと、前記板状オブジェクト設定ステップで設定された方向データとに基づき、前記板状オブジェクトの各頂点の表示色を決定する頂点色決定ステップと、
前記頂点色決定ステップで決定された各頂点の表示色に基づき、前記板状オブジェクトの表面上にある各点の表示色を決定する表面色決定ステップとを含む、請求項１４に記載のゲームプログラム。
【請求項１６】
前記表示色決定ステップは、
前記ライト方向決定ステップで決定されたライトの向きと、前記板状オブジェクト設定ステップで設定された方向データとに基づき、前記板状オブジェクトの各頂点の明るさを決定する頂点明るさ決定ステップと、
前記頂点明るさ決定ステップで決定された各頂点の明るさに基づき、前記板状オブジェクトの表面上にある各点の明るさを決定する表面明るさ決定ステップと、
前記表面明るさ決定ステップで決定された各点の明るさを所定のしきい値と比較し、前記板状オブジェクトの表面上にある各点の表示色を少なくとも２とおりに切り替える表面色選択ステップとを含む、請求項１４に記載のゲームプログラム。
【請求項１７】
３次元仮想空間に配置されるオブジェクトを表現するためのデータであって、
前記オブジェクトの各頂点について、すべての頂点について同一平面上の座標値が設定された座標データと、
前記オブジェクトの各頂点について、前記オブジェクトの内部にある頂点には、前記平面に対して第１の角度を成す方向が設定され、前記オブジェクトの周辺部にある各頂点には、前記平面に対して前記第１の角度よりも小さい第２の角度を成す方向が設定された方向データとを備えた、データ。
【請求項１８】
コンピュータに、３次元仮想空間に配置されたオブジェクトを、陰影付きで画面に表示させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
複数のポリゴンによって構成される板状オブジェクトに関し、少なくとも、前記複数のポリゴンの各頂点の座標データと方向データとを設定する板状オブジェクト設定ステップと、
前記３次元仮想空間に配置されるライトの向きを決定するライト方向決定ステップと、
前記ライト方向決定ステップで決定されたライトの向きと、前記板状オブジェクト設定ステップで設定された方向データとに基づき、前記板状オブジェクトの各頂点について所定の属性値を求めた上で、当該属性値に基づき、前記板状オブジェクトの表面上にある各点の表示色を決定する表示色決定ステップと、
前記表示色決定ステップで決定された各点の表示色に基づき、前記板状オブジェクトを前記画面に表示させる表示制御ステップとを備え、
前記板状オブジェクトの各頂点の座標データには、すべての頂点について同一平面上の座標値が設定され、前記板状オブジェクトの内部にある頂点の方向データには、前記平面に対して第１の角度を成す方向が設定され、前記板状オブジェクトの周辺部にある各頂点の方向データには、前記平面に対して前記第１の角度よりも小さい第２の角度を成す方向が設定されることを特徴とする、記録媒体。
【請求項１９】
３次元仮想空間に配置されたオブジェクトを、陰影付きで画面に表示させる処理を、ゲーム装置に実行させるゲームプログラムであって、
複数のポリゴンによって構成される板状オブジェクトに関し、少なくとも、前記オブジェクトの各頂点について、すべての頂点について同一平面上の座標値が設定された座標データと、前記オブジェクトの各頂点について、前記オブジェクトの内部にある頂点には、前記平面に対して第１の角度を成す方向が設定され、前記オブジェクトの周辺部にある各頂点には、前記平面に対して前記第１の角度よりも小さい第２の角度を成す方向が設定された方向データとを含む板状オブジェクトデータを有し、
前記３次元仮想空間に配置されるライトの向きを決定するライト方向決定ステップと、
前記ライト方向決定ステップで決定されたライトの向きと、前記板状オブジェクトデータの方向データとに基づき、前記板状オブジェクトの各頂点について所定の属性値を求めた上で、当該属性値に基づき、前記板状オブジェクトの表面上にある各点の表示色を決定する表示色決定ステップと、
前記表示色決定ステップで決定された各点の表示色に基づき、前記板状オブジェクトを前記画面に表示させる表示制御ステップとを備えた、ゲームプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ゲーム装置およびゲームプログラムに関し、特に、３次元仮想空間に配置されたオブジェクトを、陰影付きで画面に表示させるゲーム装置およびゲームプログラムに関する。
【０００２】
【従来の技術】
特許文献１には、ゲーム画面に爆発画像を表示するために、爆発画像を描いたテクスチャを貼り付けた板状オブジェクトを表示するゲーム装置が開示されている。このゲーム装置では、板状オブジェクトを１枚のポリゴンによって構成することにより、データ記憶量やデータ処理量の削減が図られている。
【０００３】
【特許文献１】
特開平１０−１７９９３２号公報
【０００４】
【発明が解決しようとする課題】
しかしながら、上記ゲーム装置では、板状オブジェクトを１枚のポリゴンによって構成するため、図１３（ａ）に示すように、板状オブジェクト９１ａを照らすライト９３ａがポリゴンの前方（カメラ９２側）に位置する場合には、オブジェクト全体が明るく表示される。一方、図１３（ｂ）に示すように、板状オブジェクト９１ｂを照らすライト９３ｂがポリゴンの後方（カメラ９２の反対側）に位置する場合には、オブジェクト全体が暗く表示される。このように、板状オブジェクトには平板状の陰影が付されるので、プレイヤにはオブジェクトが平板状であることが容易に認識され、ゲームの現実感が損なわれる。
【０００５】
一方、オブジェクトを複数のポリゴンによって構成すると、このようなポリゴンを複数個、同時に画面に表示した場合に、オブジェクト同士がめり込み、ゲーム画面のちらつきの原因となる。例えば、図１４に示すように、複数のポリゴンによって構成された２つのオブジェクトを隣接して表示する場合、２つのオブジェクトが移動すると、ポリゴンの交線（図１４ではその断面をＱとする）も移動し、これに伴い、ゲーム画面にちらつきが生じる。
【０００６】
それ故に、本発明は、以下のうち、少なくともいずれか１つを目的とする。
本発明は、少数のポリゴンを使用することによりデータ記憶量やデータ処理量の削減を図りながら、陰影を立体的に表現することによりゲーム画面の現実感を向上させるゲーム装置およびゲームプログラムを提供することを目的とする。
また、本発明の他の目的は、ゲーム画面のちらつきの原因となるオブジェクト同士のめり込みを防ぐことができるゲーム装置およびゲームプログラムを提供することを目的とする。
【０００７】
【課題を解決するための手段および発明の効果】
この発明は、上記の目的を達成するために、次のように構成される。
請求項１に記載の発明によれば、ゲーム装置（実施例との対応関係を示せば、ゲーム機本体１、コントローラ２、ＤＶＤ−ＲＯＭ３および外部メモリカード４の組合せである。なお、外部メモリカード４は選択的に使用される。以下、同様に、かっこ内に実施例との対応関係を示すが、本願発明はこれに限定されるものではない。）は、３次元仮想空間に配置されたオブジェクトを、陰影付きで画面（テレビ５）に表示させるゲーム装置であって、板状オブジェクト設定手段（ステップＳ２０１またはＳ２１１を実行するＣＰＵ１０；以下、単にステップ番号のみを示す）と、ライト方向決定手段（Ｓ２０２またはＳ２１２）と、表示色決定手段（Ｓ２０４〜Ｓ２０５、または、Ｓ２１４〜Ｓ２１６）と、表示制御手段（Ｓ１０７）とを備える。板状オブジェクト設定手段は、複数のポリゴンによって構成される板状オブジェクト（煙単位オブジェクト）に関し、少なくとも、複数のポリゴンの各頂点の座標データと方向データとを設定する。ライト方向決定手段は、３次元仮想空間に配置されるライトの向きを決定する。表示色決定手段は、ライト方向決定手段で決定されたライトの向きと、板状オブジェクト設定手段によって設定された方向データとに基づき、板状オブジェクトの各頂点について所定の属性値を求めた上で、当該属性値に基づき、板状オブジェクトの表面上にある各点の表示色を決定する。表示制御手段は、表示色決定手段で決定された各点の表示色に基づき、板状オブジェクトを画面に表示させる。また、板状オブジェクトの各頂点の座標データには、すべての頂点（頂点ＡないしＥ）が同一平面（平面Ｓ）上にあるような座標値が設定される。板状オブジェクトの内部にある頂点（頂点Ｅ）の方向データには、上記平面に対して第１の角度を成す方向が設定される。板状オブジェクトの周辺部にある各頂点（頂点ＡないしＤ）の方向データには、上記平面に対して第１の角度よりも小さい第２の角度を成す方向が設定される。なお、各頂点についての属性値とは、例えば、各頂点の色または明るさである。
【０００８】
請求項２に記載の発明によれば、表示色決定手段は、頂点色決定手段（Ｓ２０４）と、表面色決定手段（Ｓ２０５）とを含む。頂点色決定手段は、ライト方向決定手段で決定されたライトの向きと、板状オブジェクト設定手段によって設定された方向データとに基づき、板状オブジェクトの各頂点の表示色を決定する。表面色決定手段は、頂点色決定手段で決定された各頂点の表示色に基づき、板状オブジェクトの表面上にある各点の表示色を決定する。
請求項１または２に記載の発明によれば、少数のポリゴンによって板状オブジェクトを構成することにより、データ記憶量やデータ処理量の削減を図るともに、陰影を立体的に表現することによりゲーム画面の現実感を向上させることができる。また、各頂点の座標が同一平面上にあるので、オブジェクトが板状（単一平面状）となり、オブジェクト同士がめり込む可能性が少なくなる。
【０００９】
請求項３に記載の発明によれば、表示色決定手段は、頂点明るさ決定手段（Ｓ２１４）と、表面明るさ決定手段（Ｓ２１５）と、表面色選択手段（Ｓ２１６）とを含む。頂点明るさ決定手段は、ライト方向決定手段で決定されたライトの向きと、板状オブジェクト設定手段によって設定された方向データとに基づき、板状オブジェクトの各頂点の明るさを決定する。表面明るさ決定手段は、頂点明るさ決定手段で決定された各頂点の明るさに基づき、板状オブジェクトの表面上にある各点の明るさを決定する。表面色選択手段は、表面明るさ決定手段で決定された各点の明るさを所定のしきい値（しきい値Ｔ）と比較し、板状オブジェクトの表面上にある各点の表示色を少なくとも２とおりに（第１および第２の表示色に）切り替える。
請求項３に記載の発明によれば、少数のポリゴンによって板状オブジェクトを構成することにより、データ記憶量やデータ処理量の削減を図るともに、陰影を立体的に表現することによりゲーム画面の現実感を向上させることができる。特に、トゥーンシェーディング法を用いて陰影が表現されるので、陰影の段階が少なくなる。このため、少数のポリゴンを用いて擬似的に陰影を表示する場合でも、陰影を違和感なく表示することができる。
【００１０】
請求項４に記載の発明によれば、表示色決定手段は（Ｓ２０５）は、板状オブジェクトの各頂点について求められた属性値に対して、スムースシェーディング法を適用することにより、板状オブジェクトの表面上にある各点の属性を求めることを特徴とする。すなわち、各頂点について求められた表示色に対してスムースシェーディング法を適用することにより、板状オブジェクトの表面上にある各点の表示色を決定する。または、各頂点について求められた明るさに対してスムースシェーディング法を適用することにより、板状オブジェクトの表面上にある各点の明るさを決定する。
請求項４に記載の発明によれば、陰影をより自然に表示することができる。
【００１１】
請求項５に記載の発明によれば、第１の角度が９０度である。
請求項６に記載の発明によれば、第２の角度が０度である。
請求項５または６に記載の発明によれば、少数のポリゴンによって板状オブジェクトを構成することにより、データ記憶量やデータ処理量の削減を図るともに、陰影を立体的に表現することによりゲーム画面の現実感を向上させることができる。
【００１２】
請求項７に記載の発明によれば、板状オブジェクト（煙単位オブジェクト５５ｂ）の周辺部にある頂点（頂点ＡないしＤ）のうち、同じ座標データが設定された頂点（頂点ＡないしＤ）の方向データには、同じ方向（図５（ｂ）に示す白抜き矢印の方向）が設定される。
【００１３】
請求項８に記載の係る発明によれば、板状オブジェクト（煙単位オブジェクト５５ｂ）の周辺部にある頂点（頂点ＡないしＤ）の方向データには、板状オブジェクトの内部にある頂点（頂点Ｅ）から、板状オブジェクトの周辺部にある頂点（頂点ＡないしＤ）へ向かう方向が設定される。
請求項７または８に記載の発明によれば、板状オブジェクトを構成する各ポリゴンの境界線では、陰影が連続的に変化する。このため、板状オブジェクト全体の陰影が連続的となって、より自然な陰影を表示することができる。
【００１４】
請求項９に記載の発明によれば、板状オブジェクト（煙単位オブジェクト）は、４枚のポリゴンによって構成される。
【００１５】
請求項１０に記載の発明によれば、板状オブジェクト（煙単位オブジェクト）の形状は、凸四角形であり、４枚のポリゴンは、凸四角形の内部の１点（頂点Ｅ）と凸四角形の各頂点（頂点ＡないしＤ）とをそれぞれ結んで得られる４つの三角形である。
【００１６】
請求項１１に記載の発明によれば、凸四角形は、長方形であり、凸四角形の内部の１点は、長方形の対角線の交点（頂点Ｅ）である。
請求項９ないし１１に記載の発明によれば、簡単な構成で本発明を実施することができる。特に、請求項９に記載の発明によれば、板状オブジェクトの上下左右から仮想的な光を照射することにより、板状オブジェクトに異なる陰影を付けることができる。
【００１７】
請求項１２に記載の発明によれば、板状オブジェクト（煙単位オブジェクト）は、常に画面に正対するように制御される。
請求項１２に記載の発明によれば、プレイヤが板状オブジェクトであることを認識することを防ぐことができる。また、複数の板状オブジェクトを表示する場合でも、各オブジェクトは互いに平行となるので、オブジェクト同士がめり込む可能性が小さくなる。したがって、ゲーム画面のちらつきを防止することができる。
【００１８】
請求項１３に記載の発明によれば、所定条件を満たすときに、同じ種類の複数の板状オブジェクトを３次元仮想空間の所定領域内に発生させる板状オブジェクト発生手段をさらに備える。
請求項１３に記載の発明によれば、所定条件を満たすときに、板状オブジェクトを集めて表示させることにより、ゲームの演出効果を高めることができる。この場合でも、オブジェクト同士がめり込む可能性が小さいので、ゲーム画面のちらつきを防止することができる。
【００１９】
請求項１４に記載の発明によれば、ゲームプログラムは、３次元仮想空間に配置されたオブジェクトを、陰影付きで画面（テレビ５）に表示させる処理を、ゲーム装置（ゲーム機本体１、コントローラ２、ＤＶＤ−ＲＯＭ３および外部メモリカード４の組合せである。なお、外部メモリカード４は選択的に使用される。）に実行させるゲームプログラムであって、板状オブジェクト記憶ステップ（Ｓ２０１またはＳ２１１）と、ライト方向決定ステップ（Ｓ２０２またはＳ２１２）と、表示色決定ステップ（Ｓ２０４〜Ｓ２０５、または、Ｓ２１４〜Ｓ２１６）と、表示制御ステップ（Ｓ１０７）とを備える。板状オブジェクト設定ステップは、複数のポリゴンによって構成される板状オブジェクト（煙単位オブジェクト）に関し、少なくとも、複数のポリゴンの各頂点の座標データと方向データとを設定する。ライト方向決定ステップは、３次元仮想空間に配置されるライトの向きを決定する。表示色決定ステップは、ライト方向ステップで決定されたライトの向きと、板状オブジェクト設定ステップで設定された方向データとに基づき、板状オブジェクトの各頂点について所定の属性値を求めた上で、当該属性値に基づき、板状オブジェクトの表面上にある各点の表示色を決定する。表示制御ステップは、表示色決定ステップで決定された各点の表示色に基づき、板状オブジェクトを画面に表示させる。また、板状オブジェクトの各頂点の座標データには、すべての頂点（頂点ＡないしＥ）が同一平面（平面Ｓ）上にあるような座標値が設定される。板状オブジェクトの内部ある頂点（頂点Ｅ）の方向データには、平面に対して第１の角度を成す方向が設定される。板状オブジェクトの周辺部にある各頂点の方向データには、平面に対して第１の角度よりも小さい第２の角度を成す方向が設定される。
【００２０】
請求項１５に記載の発明によれば、表示色決定ステップは、頂点色決定ステップ（Ｓ２０４）と、表面色決定ステップ（Ｓ２０５）を含む。頂点色決定ステップは、ライト方向ステップで決定されたライトの向きと、板状オブジェクト設定ステップで設定された方向データとに基づき、板状オブジェクトの各頂点の表示色を決定する。表面色決定ステップは、頂点色決定ステップで決定された各頂点の表示色に基づき、板状オブジェクトの表面上にある各点の表示色を決定する。
【００２１】
請求項１６に記載の発明によれば、表示色決定ステップは、頂点明るさ決定ステップ（Ｓ２１４）と、表面明るさ決定ステップ（Ｓ２１５）と、表面色選択ステップ（Ｓ２１６）とを含む。頂点明るさ決定ステップは、ライト方向決定ステップで決定されたライトの向きと、板状オブジェクト設定ステップで設定された方向データとに基づき、板状オブジェクトの各頂点の明るさを決定する。表面明るさ決定ステップは、頂点明るさ決定ステップで決定された各頂点の明るさに基づき、板状オブジェクトの表面上にある各点の明るさを決定する。表面色決定ステップは、表面明るさ決定ステップで決定された各点の明るさを所定のしきい値（しきい値Ｔ）と比較し、板状オブジェクトの表面上にある各点の表示色を少なくとも２とおりに（第１および第２の表示色に）切り替える。
請求項１４ないし１６に記載の発明によれば、少数のポリゴンによって板状オブジェクトを構成することにより、データ記憶量やデータ処理量の削減を図るともに、陰影を立体的に表現することによりゲーム画面の現実感を向上させることができる。特に、請求項１６に記載の発明によれば、トゥーンシェーディング法を用いて陰影が表現されるので、陰影の段階が少なくなる。このため、少数のポリゴンを使用して擬似的に陰影を表示する場合でも、陰影を違和感なく表示することができる。
【００２２】
請求項１７に記載の発明によれば、データは、３次元仮想空間に配置されるオブジェクトを表現するためのデータであって、オブジェクトの各頂点について、座標データと方向データとを備える。座標データには、すべての頂点について同一平面上の座標値が設定される。オブジェクトの内部にある頂点の方向データには、上記平面に対して第１の角度を成す方向が設定される。オブジェクトの周辺部にある各頂点の方向データには、上記平面に対して第１の角度よりも小さい第２の角度を成す方向が設定される。
【００２３】
請求項１８に記載の発明によれば、記録媒体は、コンピュータに、３次元仮想空間に配置されたオブジェクトを、陰影付きで画面に表示させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、板状オブジェクト設定ステップと、ライト方向決定ステップと、表示色決定ステップと、表示制御ステップとを備える。板状オブジェクト設定ステップは、複数のポリゴンによって構成される板状オブジェクトに関し、少なくとも、複数のポリゴンの各頂点の座標データと方向データとを設定する。ライト方向決定ステップは、３次元仮想空間に配置されるライトの向きを決定する。表示色決定ステップは、ライト方向決定ステップで決定されたライトの向きと、板状オブジェクト設定ステップで設定された方向データとに基づき、板状オブジェクトの各頂点について所定の属性値を求めた上で、当該属性値に基づき、板状オブジェクトの表面上にある各点の表示色を決定する。表示制御ステップは、表示色決定ステップで決定された各点の表示色に基づき、板状オブジェクトを画面に表示させる。板状オブジェクトの各頂点の座標データには、すべての頂点について同一平面上の座標値が設定され、板状オブジェクトの内部にある頂点の方向データには、上記平面に対して第１の角度を成す方向が設定され、板状オブジェクトの周辺部にある各頂点の方向データには、上記面に対して第１の角度よりも小さい第２の角度を成す方向が設定される。
【００２４】
請求項１９に記載の発明によれば、ゲームプログラムは、３次元仮想空間に配置されたオブジェクトを、陰影付きで画面に表示させる処理を、ゲーム装置に実行させるゲームプログラムであって、板状オブジェクトデータを有し、ライト方向決定ステップと、表示色決定ステップと、表示制御ステップとを備える。板状オブジェクトデータは、複数のポリゴンによって構成される板状オブジェクトに関し、少なくとも、オブジェクトの各頂点について、すべての頂点について同一平面上の座標値が設定された座標データと、オブジェクトの各頂点について、オブジェクトの内部にある頂点には、上記平面に対して第１の角度を成す方向が設定され、オブジェクトの周辺部にある各頂点には、上記平面に対して第１の角度よりも小さい第２の角度を成す方向が設定された方向データとを含む。ライト方向決定ステップは、３次元仮想空間に配置されるライトの向きを決定する。表示色決定ステップは、ライト方向決定ステップで決定されたライトの向きと、板状オブジェクトデータの方向データとに基づき、板状オブジェクトの各頂点について所定の属性値を求めた上で、当該属性値に基づき、板状オブジェクトの表面上にある各点の表示色を決定する。表示制御ステップは、表示色決定ステップで決定された各点の表示色に基づき、板状オブジェクトを画面に表示させる。
請求項１７ないし１９に記載の発明によれば、少数のポリゴンによって板状オブジェクトを構成することにより、データ記憶量やデータ処理量の削減を図るともに、陰影を立体的に表現することによりゲーム画面の現実感を向上させることができる。また、各頂点の座標が同一平面上にあるので、オブジェクトが板状（単一平面状）となり、オブジェクト同士がめり込む可能性が少なくなる。
【００２５】
【発明の実施の形態】
図１は、本発明の実施形態に係るゲーム装置を含んだゲームシステムの外観図である。図１に示すゲームシステムは、ゲーム機本体１、コントローラ２、ＤＶＤ−ＲＯＭ３、外部メモリカード４、および、テレビ５を備えている。以下に示す実施形態では、テレビ５を除いた部分が、ゲーム装置に相当する。なお、外部メモリカード４は、必要に応じて採用される。
【００２６】
ＤＶＤ−ＲＯＭ３および外部メモリカード４は、ゲーム機本体１に対して着脱可能に構成されている。コントローラ２およびテレビ５は、それぞれ、通信ケーブルによってゲーム機本体１と接続されている。ゲーム機本体１は、コントローラ２を接続するための複数のコネクタを有しており、コントローラ２は、これらのコネクタのいずれかに接続される。なお、ゲーム機本体１とコントローラ２との間の通信を、通信ケーブルを用いずに、無線を用いて行ってもよい。
【００２７】
ＤＶＤ−ＲＯＭ３は、ゲームプログラムや画像データなど、ゲームを行うために必要なデータを固定的に記憶している。プレイヤがゲームを行うときには、ＤＶＤ−ＲＯＭ３はゲーム機本体１に装着される。外部メモリカード４は、書き換え可能な記憶媒体によって構成されている。ゲーム途中の状態を保存するために、外部メモリカード４にはゲーム中の各種のデータが記録される。なお、ゲームプログラムなどを記憶するために、ＤＶＤ−ＲＯＭ３に代えて、他の記憶媒体を使用してもよい。
【００２８】
ゲーム機本体１は、ＤＶＤ−ＲＯＭ３に記録されたゲームプログラムを読み出し、ゲーム処理を実行する。コントローラ２は、ゲーム装置の入力装置である。コントローラ２は、ジョイスティック６、Ａボタン７、Ｂボタン８、スタートボタン９など、複数の操作スイッチを有し、プレイヤによるスイッチの押下などに応じて、操作入力をゲーム機本体１に出力する。テレビ５は、ゲーム機本体１から出力された映像信号を画面に表示する。また、テレビ５は、スピーカを内蔵している。テレビ５のスピーカからは、ゲーム機本体１から出力された音声信号が出力される。
【００２９】
図２は、図１に示すゲーム装置のハードウェア構成を示すブロック図である。図２に示すように、ゲーム機本体１は、演算部（ＣＰＵ１０、グラフィックスプロセッシングユニット（ＧＰＵ）１１およびデジタルシグナルプロセッサ（ＤＳＰ）１３）と、記憶部（メインメモリ１２およびサブメモリ１４）と、各種のインターフェイス（Ｉ／Ｆ）部（２０〜２３および２５）と、メモリコントローラ１５と、ＤＶＤドライブ２４とを備えている。メモリコントローラ１５は、図２に示すように演算部と記憶部とインターフェイス部とを相互に接続し、これらの構成要素間のデータ転送を制御する。
【００３０】
ＤＶＤドライブ２４は、ゲーム機本体１に装着されたＤＶＤ−ＲＯＭ３を駆動する。ＤＶＤ−ＲＯＭ３には、ゲームプログラムなどが記録されている。ＤＶＤ−ＲＯＭ３に記録されたゲームプログラムは、ＤＶＤディスクＩ／Ｆ２５とメモリコントローラ１５とを経由して、メインメモリ１２にロードされる。ＣＰＵ１０は、メインメモリ１２にロードされたゲームプログラムを実行する。ゲーム中、プレイヤは、コントローラ２のジョイスティック６を操作したり、Ａボタン７を押したりする。コントローラ２は、これらプレイヤの操作に応じて、操作入力をゲーム機本体１に出力する。コントローラ２から出力された操作入力は、コントローラＩ／Ｆ２０とメモリコントローラ１５とを経由してＣＰＵ１０に入力される。ＣＰＵ１０は、コントローラ２から入力された操作入力に応じて、所定のゲーム処理を実行する。
【００３１】
ＧＰＵ１１は、ＣＰＵ１０からの制御に従い、主に画像データの生成処理を行う。ＧＰＵ１１は、ジオメトリユニット３１、レンダリングユニット３２、描画用カラーバッファ３３および描画用Ｚバッファ３４を含んでいる。なお、描画用カラーバッファ３３および描画用Ｚバッファ３４は、ＧＰＵ１１からアクセスできるように、ＧＰＵ１１の外部、または、メインメモリ１２の内部に設けられていてもよい。ジオメトリユニット３１は、３次元仮想空間におけるオブジェクトの位置（ゲーム空間内の位置であり、３次元座標で与えられる）を決定し、レンダリングユニット３２は、ジオメトリユニット３１によって計算された３次元座標に基づき、テレビ５に表示すべき２次元画像を生成する。描画用カラーバッファ３３は、レンダリングユニット３２によって生成された２次元画像の色情報を記憶し、描画用Ｚバッファ３４は、３次元コンピュータグラフィックスで使用される奥行き情報を記憶する。
【００３２】
メインメモリ１２は、待避用カラーバッファ４１、待避用Ｚバッファ４２、および、表示用メモリ４３を含んでいる。待避用カラーバッファ４１は、レンダリングユニット３２によって生成された２次元画像の色情報を一時的に記憶し、待避用Ｚバッファ４２は、３次元コンピュータグラフィックスで使用される奥行き情報を一時的に記憶する。表示用メモリ４３は、テレビ５に表示される画面データを記憶する。メインメモリ１２は、上記以外にも、ゲームプログラムやゲームプログラムの実行に必要なデータなどを記憶する。ＣＰＵ１０およびＧＰＵ１１の動作によって生成された画像データは、最終的に表示用メモリ４３に書き込まれる。表示用メモリ４３に書き込まれた画像データは、所定のタイミングで読み出され、メモリコントローラ１５とビデオＩ／Ｆ２１とを経由してテレビ５に出力される。これにより、テレビ５には、ゲーム画面が表示される。
【００３３】
ＤＳＰ１３は、ＣＰＵ１０からの制御に従い、主に音声データの生成処理を行う。サブメモリ１４は、ＤＳＰ１３の作業用メモリである。ＤＳＰ１３によって生成された音声データは、メモリコントローラ１５とオーディオＩ／Ｆ２３とを経由して、テレビ５のスピーカ５ｂに出力される。なお、ゲーム機本体１から出力される音声信号を、テレビ５とは別のスピーカに出力してもよい。
【００３４】
以下では、本実施形態に係るゲーム装置が、一定の条件下でゲーム画面に煙を表示させる煙表示処理を行うゲームプログラムを実行する場合について説明する。煙表示処理を行うゲームプログラムは、ＤＶＤ−ＲＯＭ３に固定的に記録されている。ゲーム機本体１は、ＤＶＤ−ＲＯＭ３に記録されたゲームプログラムをメインメモリ１２上に読み出して実行し、コントローラ２から入力された操作入力に応じてゲームの状態を変化させ、ゲームの状態に基づきゲーム画面を表示する。
【００３５】
図３は、煙表示処理を含んだゲーム処理のメインフローチャートである。図３に示す処理は、主にＣＰＵ１０によって実行される。また、画面生成処理の多くの部分は、ＣＰＵ１０によって制御されるＧＰＵ１１によって実行される。ＣＰＵ１０は、始めに、ゲームの状態を初期化する（ステップＳ１０１）。すなわち、ＣＰＵ１０は、ゲームの実行に必要なデータを初期化する処理などを行う。この際、３次元仮想空間に配置されたオブジェクトの座標データなども初期化される。その後、ＣＰＵ１０は、ステップＳ１０８でゲーム処理を終了すると判断するまで、ステップＳ１０２からＳ１０７の処理を繰り返し実行する。
【００３６】
ＣＰＵ１０は、コントローラ２を用いて入力された操作入力を受け付け（ステップＳ１０２）、受け付けた操作入力に基づき、ゲームの状態を変化させる（ステップＳ１０３）。ステップＳ１０３では、３次元仮想空間に配置されたオブジェクトの座標データなどが変化する。次に、ＣＰＵ１０は、ゲームの状態に基づき、煙を画面に表示させるか否かを判断する（ステップＳ１０４）。ＣＰＵ１０は、煙を画面に表示させると判断した場合には、煙あり画面生成処理を（ステップＳ１０５）、それ以外の場合には、煙なし画面生成処理を実行する（ステップＳ１０６）。次に、ＣＰＵ１０は、生成された画面をテレビ５に表示させる（ステップＳ１０７）。次に、ＣＰＵ１０は、ゲーム処理を終了するか否かを判断する（ステップＳ１０８）。ＣＰＵ１０は、ゲーム処理を終了すると判断した場合には、ゲーム処理を終了し、それ以外の場合には、ステップＳ１０２へ進む。
【００３７】
ＣＰＵ１０が煙あり画面生成処理を実行した場合、ゲーム画面には、図４（ａ）に示すような煙画像５１が表示される。煙は現実の世界では気体であるので、ゲーム画面に現実性を持たせるため、煙画像５１はゲーム画面に半透明で表示される。すなわち、煙画像５１は、ゲームの背景画像や他のオブジェクトに所定の割合で合成して表示される。
【００３８】
ゲーム装置は、煙画像５１をゲーム画面に表示するために、図４（ｂ）に示す煙の一部に対応したオブジェクト５２（以下、煙単位オブジェクトという）を使用する。煙単位オブジェクト５２は、４つの三角形５３ａ〜ｄからなるオブジェクトであり、その表面には煙の模様を示すテクスチャ５４が貼り付けられる。ゲーム装置は、煙単位オブジェクト５２を、表示位置を少しずつずらしながら、複数個描画することにより、図４（ａ）に示す煙画像５１を生成する。
【００３９】
煙単位オブジェクトは、画面の奥行き方向にあるオブジェクトと色を混合または加算して表示されるブレンディングオブジェクトの一例である。このため、他のブレンディングオブジェクトについても、以下に示す煙あり画面生成処理と同じ処理を適用することができる。ゲーム画面に表示されるブレンディングオブジェクトとしては、煙以外に、例えば、影、水、雲、霧、光線、溶岩などが挙げられる。また、本実施形態に係るゲーム装置によって実行される煙なし画面生成処理には、本発明に固有の特徴はないので、ここでは説明を省略する。
【００４０】
図５は、煙単位オブジェクトの例を示す図である。図５に示す煙単位オブジェクト５５ａおよび５５ｂは、いずれも、４つのポリゴン（三角形ＡＢＥ、三角形ＢＣＥ、三角形ＣＤＥおよび三角形ＤＡＥ）によって構成されている。煙単位オブジェクトに含まれる５つの頂点ＡないしＥは、同一平面（以下、平面Ｓという）上にある。このようにオブジェクトに含まれるすべての頂点が同一平面上にあるオブジェクトを、板状オブジェクトという。また、図５において、頂点ＡないしＤは長方形（正方形を含む）を形成し、頂点Ｅは長方形ＡＢＣＤの対角線の交点であるとする。
【００４１】
ゲーム装置は、ゲーム中に登場するオブジェクトの位置や向きを表現するために、３次元仮想空間を有している。煙単位オブジェクトにも、他のオブジェクトと同様に、各頂点に座標データと方向データとが設定される。座標データは、３次元仮想空間における各頂点の位置を示す。方向データは、３次元仮想空間における各頂点の方向ベクトルを示し、後述するように、各頂点の色または明るさを決定するときに使用される。
【００４２】
なお、記憶媒体の一例であるＤＶＤ−ＲＯＭ３には、ローカル座標系における各頂点の座標データおよび方向データが記憶されている。３次元仮想空間における各頂点の座標は、ＤＶＤ−ＲＯＭ３に記憶されたデータ（ローカル座標系における各頂点の座標データ）に、オブジェクト全体の基準座標を加えた値となる。また、３次元仮想空間における各頂点の方向ベクトルは、ＤＶＤ−ＲＯＭ３に記憶されたデータ（ローカル座標系における各頂点の方向データ）にオブジェクト全体の基準方向ベクトルを加えた値となる。なお、オブジェクト全体の基準方向ベクトルは、通常は、オブジェクトの法線方向、すなわち、平面Ｓに垂直な方向である。また、ローカル座標系とは、オブジェクトごとに設定される座標系のことである。
【００４３】
煙単位オブジェクト５５ａおよび５５ｂの５つの頂点ＡないしＥには、それぞれ、３次元座標系で表現された座標データ（ｘ、ｙ、ｚ）が設定される。５つの頂点ＡないしＥでは、ｚ値は同じ値となる。また、煙単位オブジェクトを構成する複数のポリゴンの各頂点ごとに、方向データが設定される。煙単位オブジェクト５５ａおよび５５ｂでは、４つのポリゴンがそれぞれ３つの頂点を有するので、各ポリゴンの各頂点ごとに、合計１２個の方向データが設定される。ただし、頂点の方向データに同じ方向が設定されるときには、ゲーム装置は、同じ方向データを重複して記憶せずに、１つの方向データのみを記憶する。
【００４４】
本実施形態では、煙単位オブジェクトの内部（本実施形態では中央部）にある頂点の方向データには、平面Ｓに垂直な方向が設定され、煙単位オブジェクトの周辺部にある頂点の方向データには、平面Ｓに平行な方向が設定される。より詳細には、三角形ＡＢＥの頂点Ｅの方向データ、三角形ＢＣＥの頂点Ｅの方向データ、三角形ＣＤＥの頂点Ｅの方向データ、および、三角形ＤＡＥの頂点Ｅの方向データには、平面Ｓに垂直な方向が設定される。これら４つの方向データは同じであるので、ゲーム装置は、これら４つの方向データに共通する値を１つだけ、頂点Ｅにおける方向データとして記憶する。図５には、頂点Ｅに設定される方向データが黒塗り矢印で示されている。この黒塗り矢印は、紙面に垂直な手前方向を示しており、方向データが長方形ＡＢＣＤを含む平面Ｓと垂直であることを示している。
【００４５】
一方、三角形ＡＢＥの頂点Ａを始め、上記以外の８つの方向データには、平面Ｓに平行な方向が設定される。図５（ａ）に示す煙単位オブジェクト５５ａでは、三角形ＡＢＥの頂点Ａの方向データには、頂点Ｄから頂点Ａに向かう方向が設定される。また、三角形ＡＢＥの頂点Ｂの方向データには、頂点Ｃから頂点Ｂに向かう方向が設定される。他の６つの方向データについても、これと同様である。これら８つの方向データは互いに異なるので、ゲーム装置は、これら８つの方向データをそれぞれ別個に記憶する。図５（ａ）には、頂点ＡないしＤに設定される８つの方向データが白抜き矢印で示されている。この白抜き矢印は、方向データが長方形ＡＢＣＤを含む平面Ｓに平行であることを示している。
【００４６】
図５（ｂ）に示す煙単位オブジェクト５５ｂでは、三角形ＡＢＥの頂点Ａの方向データ、および、三角形ＤＡＥの頂点Ａの方向データには、いずれも、頂点Ｅから頂点Ａに向かう方向が設定される。他の６つの方向データについても、これと同様である。これら８つの方向データは２つずつ同じであるので、ゲーム装置は、これら８つの方向データに共通する値を４つだけ、頂点ＡないしＤの方向データとして記憶する。図５（ｂ）には、頂点ＡないしＤに設定される４つの方向データが白抜き矢印で示されている。この白抜き矢印の意味は、図５（ａ）の場合と同じである。
【００４７】
なお、頂点Ｅに設定される方向データは、平面Ｓに対して垂直であることに限定されない。また、頂点ＡないしＤに設定される方向データは、平面Ｓに平行な方向であることに限定されず、頂点Ｅに設定される方向データに比べて、平面Ｓに対して平行に近い方向であればよい。また、頂点ＡないしＤに設定される方向データは、図５では長方形ＡＢＣＤの外側を向いているが、長方形ＡＢＣＤの内側を向く方向であってもよい。
【００４８】
ゲーム装置は、３次元仮想空間にオブジェクトとカメラと射影面とを設定し、カメラから射影面にオブジェクトを射影したときの画像を、ゲーム画面として表示する。図５に示した煙単位オブジェクトには、図４（ｂ）に示した煙の模様を示すテクスチャ５４が貼り付けられる。テクスチャ付きの煙単位オブジェクトは、ゲーム装置が定義する３次元仮想空間で煙が発生した場所に、常に画面に正対するように配置される。すなわち、ゲーム装置は、図６に示すように、煙単位オブジェクト６１の法線方向と、カメラ６２から射影面６３に引いた垂線の方向とが常に一致するように制御する。
【００４９】
ゲーム装置は、３次元仮想空間に配置されたオブジェクトに対して仮想的な光を照射するためのライトを有している。ゲーム装置は、３次元仮想空間におけるライトの向きを決定し、ライトの向きやオブジェクトの各頂点の３次元仮想空間における方向データなどに基づき、オブジェクトの各頂点の色または明るさを求める。例えば、図７に示すように、オブジェクトのある頂点Ｐに当たる光の方向がＶ1 で、頂点Ｐの３次元仮想空間における方向データがＶ2 であるとする。この場合、ゲーム装置は、光の方向Ｖ1 と方向データＶ2 の成す角θ（θは図７のように定義される。すなわち、光の方向Ｖ1 と方向データＶ2 とが平行でかつ向きが逆のときに０度であり、向きが同じときに１８０度になるように定義される）を求め、θが０度に近いほど、頂点Ｐの色または明るさを明るくする。なお、θが９０度から１８０度の間の角度である場合は、頂点Ｐには光が全く当たらないものとして処理してもよく、あるいは、光が当たるものとして、その角度に応じて頂点Ｐの色または明るさを決めてもよい。
【００５０】
３次元仮想空間に配置されたオブジェクトの各頂点の色または明るさを求める方法には、様々な方法が知られているが、ゲーム装置は、これらの方向のうち、いずれの方法を選択してもよい。例えば、ゲーム装置は、ライトは無限遠にあり、光の強さおよび方向はどこでも同じであるとの条件の下で、オブジェクトの各頂点の色または明るさを決定してもよい。あるいは、ゲーム装置は、ライトはオブジェクトの比較的近くにあり、光の強さはライトからの距離の２乗に反比例し、光の方向は場所により異なるとの条件の下で、オブジェクトの各頂点の色または明るさを決定してもよい。後者の場合には、ライトの向きだけでなく、ライトの位置が設定される。なお、ライトの位置を非常に遠い位置に設定して、ライトが無限遠にあるかのように処理してもよい。
【００５１】
図８および図９は、１つの煙単位オブジェクトに対する陰影処理のフローチャートである。煙あり画面表示処理（図３のステップＳ１０５）の中では、図８に示す処理または図９に示す処理のいずれか一方が実行される。図８に示す第１の陰影処理では、一般的なシェーディング法が採用されている。図９に示す第２の陰影処理では、トゥーンシェーディング法が採用されている。ゲーム装置のＣＰＵ１０は、画面に表示すべき各煙単位オブジェクトについて、図８または図９に示す処理を実行する。
【００５２】
図８に示す第１の陰影処理では、ＣＰＵ１０は、まず、煙単位オブジェクトの各頂点に対して、３次元仮想空間における座標データと方向データとを設定する（ステップＳ２０１）。具体的には、ＤＶＤ−ＲＯＭ３に記憶されるオブジェクトのローカル座標系における座標データおよび方向データと、オブジェクト全体の基準座標データおよびオブジェクトの全体の基準方向データとに基づいて、３次元仮想空間における座標データおよび方向データが設定される。ステップＳ２０１で設定される座標データおよび方向データは、これまでに述べた条件、すなわち、１）煙単位オブジェクトは４枚の三角形によって構成される板状オブジェクトである、２）煙単位オブジェクトの内部にある頂点の方向データには、平面Ｓに垂直な方向が設定され、煙単位オブジェクトの周辺部にある頂点の方向データには、平面Ｓに平行な方向が設定される、３）煙単位オブジェクトは画面に正対する、を満たすように設定される。
【００５３】
具体的に言うと、ＤＶＤ−ＲＯＭ３には、上記１）および２）の条件を満たすように設定された、オブジェクトの各頂点のローカル座標系における座標データおよび方向データが、記憶されている。また、上記３）の条件を満たすために、オブジェクトの法線方向は、画面に正対するような方向に制御される。なお、オブジェクト全体の基準座標データは、ゲームの進行に従って変化するようにしてもよい。これにより、各煙単位オブジェクトが表示される位置が変化するため、煙画像の表示位置や形状が変化し、ゲーム画面に多様な変化を与えることができる。設定された３次元仮想空間における座標データおよび方向データは、メインメモリ１２に記憶される。
【００５４】
次に、ＣＰＵ１０は、３次元仮想空間に配置されるライトの向きを決定する（ステップＳ２０２）。なお、ステップＳ２０２では、必要に応じてライトの位置も決定される。ライトは、典型的には、煙単位オブジェクトの面のうち、画面に正対する側に光が照射されるように設定される。次に、ＣＰＵ１０は、処理対象のポリゴンを選択する（ステップＳ２０３）。すなわち、ＣＰＵ１０は、煙単位オブジェクトを構成する４つの三角形から未処理の三角形を選択する。
【００５５】
次に、ＣＰＵ１０は、ステップＳ２０２で決定したライトの向きと、ステップＳ２０３で選択したポリゴンの各頂点に設定された方向データとに基づき、選択したポリゴンの各頂点の色を決定する（ステップＳ２０４）。次に、ＣＰＵ１０は、ステップＳ２０４で決定した各頂点の色に基づき、補間処理を行うことにより、選択したポリゴンの表面上にある各点の色を決定する（ステップＳ２０５）。ステップＳ２０５では、例えば、ステップＳ２０４で決定した各頂点の色に対してスムースシェーディング法を適用することにより、選択したポリゴンの表面上にある各点の色が決定される。
【００５６】
次に、ＣＰＵ１０は、煙単位オブジェクトに含まれるすべてのポリゴンを処理したか否かを判断する（ステップＳ２０６）。ＣＰＵ１０は、すべてのポリゴンを処理した場合には、処理を終了し、それ以外の場合は、ステップＳ２０３へ進む。
【００５７】
図９に示す第２の陰影処理は、図８に示す第１の陰影処理におけるステップＳ２０４およびＳ２０５を、ステップＳ２１４ないしＳ２１６に置換したものである。図９に示す処理のうち、図８と同じ処理については説明を省略する。
【００５８】
ステップＳ２１４では、ＣＰＵ１０は、ステップＳ２１２で決定したライトの向きと、ステップＳ２１３で選択したポリゴンの各頂点に設定された方向データとに基づき、選択したポリゴンの各頂点の明るさを決定する。次に、ＣＰＵ１０は、ステップＳ２１４で決定した各頂点の明るさに基づき、補間処理を行うことにより、選択したポリゴンの表面上にある各点の明るさを決定する（ステップＳ２１５）。ステップＳ２１５では、例えば、ステップＳ２１４で決定した各頂点の明るさに対してスムースシェーディング法を適用することにより、選択したポリゴンの表面上にある各点の明るさが決定される。次に、ＣＰＵ１０は、ステップＳ２１５で決定した各点の明るさを所定のしきい値と比較し、ポリゴンの各点の表示色を決定する（ステップＳ２１６）。より詳細には、ＣＰＵ１０は、予め第１および第２の表示色としきい値Ｔとを有しており、各点の明るさがしきい値Ｔ以上である場合には第１の表示色を、それ以外の場合は第２の表示色を、その点の表示色に設定する。
【００５９】
図８または図９に示す陰影処理を実行することにより、煙単位オブジェクトに陰影を付けることができる。陰影を付けた煙単位オブジェクトは、後に行われる画面表示処理（図３のステップＳ１０７）によって、テレビ５に表示される。
【００６０】
なお、図８および図９に示す陰影処理のうち３次元画像処理の多くの部分は、ＣＰＵ１０によって制御されるＧＰＵ１１によって実行される。また、図８および図９では、説明の便宜上、ＣＰＵ１０は、各煙単位オブジェクトについて、ライトの向きを決定する処理（ステップＳ２０２およびＳ２１２）を行うこととしたが、１枚のゲーム画面を生成するために使用されるライトの個数は、一般的には１つである。したがって、この場合には、ＣＰＵ１０は、ライトの向きを決定する処理を、１枚のゲーム画面を生成するときに１回だけ行えばよい。
【００６１】
以下、図５に示す煙単位オブジェクト５５ａおよび５５ｂを用いることによる効果を説明する。図１０は、煙単位オブジェクトに陰影が付けられる様子を示す模式図である。なお、図１０には、陰影を付ける対象が煙単位オブジェクト５５ａである場合が示されている。図１０において、煙単位オブジェクト７１は、常に画面に正対する（すなわち、その法線方向が、射影面（図示せず）に垂直な方向と一致する）ように制御され、煙単位オブジェクト７１の上方にライト７３が設置されていると仮定する。
【００６２】
頂点ＡないしＥの色または明るさは、ステップＳ２０４またはＳ２１４において、ライト７３の向きや各頂点の方向データなどによって決定される。より詳細には、各頂点における光の方向と各頂点の方向データとの成す角が０度に近い程、各頂点の色または明るさは明るくなる。したがって、光の方向と三角形ＤＡＥの頂点Ａの方向データＶA1とが成す角が、光の方向と頂点Ｅの方向データＶE とが成す角より小さくなる向きにライト７３を設置した場合、頂点Ａは頂点Ｅよりも明るくなる。ポリゴンの表面上では明るさが連続的に変化することを考慮すると、この場合、三角形ＤＡＥの表面上では、辺ＤＡから頂点Ｅに向かうに従って、各点の明るさが徐々に暗くなる。同様に、三角形ＡＢＥの表面上では、頂点Ａから頂点Ｂに向かうに従って、各点の明るさが徐々に暗くなる。また、三角形ＢＣＥの表面上では、頂点Ｅから辺ＢＣに向かうに従って、各点の明るさが徐々に暗くなる。さらに、三角形ＣＤＥの表面上では、頂点Ｄから頂点Ｃに向かうに従って、各点の明るさが徐々に暗くなる。
【００６３】
また、光の方向と三角形ＤＡＥの頂点Ａの方向データＶA1とが成す角は、光の方向と三角形ＡＢＥの頂点Ａの方向データＶA2とが成す角より小さくなる。このため、三角形ＤＡＥにおける頂点Ａの付近は、三角形ＡＢＥにおける頂点Ａの付近よりも明るくなる。ポリゴンの表面上では明るさは連続的に変化することを考慮すると、全般的に見ると、三角形ＤＡＥは三角形ＡＢＥより明るくなる。同様に、三角形ＤＡＥは三角形ＣＤＥより明るくなり、三角形ＡＢＥおよび三角形ＣＤＥは、いずれも、三角形ＢＣＥより明るくなる。したがって、図１０に示す煙単位オブジェクト７１では、三角形ＤＡＥに含まれる領域Ｒ１が最も明るく、三角形ＡＢＥに含まれる領域Ｒ２、および、三角形ＣＤＥに含まれる領域Ｒ４がその次に明るく、三角形ＢＣＥに含まれる領域Ｒ３が最も暗く表示される。煙単位オブジェクト５５ｂを用いる場合も、同様に、領域Ｒ１が最も明るく、領域Ｒ２およびＲ４がその次に明るく、領域Ｒ３が最も暗く表示される。
【００６４】
このように、本実施形態に係る煙単位オブジェクトを用いることにより、板状オブジェクトに陰影を付けることができる。また、４つの三角形によって構成される煙単位オブジェクトを用いることにより、データ記憶量やデータ処理量の削減を図ることもできる。
【００６５】
図１１は、図５に示す煙単位オブジェクトに陰影を付けた結果を示す図である。図１１（ａ）は、図５に示す煙単位オブジェクト５５ａおよび５５ｂに、一般的はシェーディング法を用いて陰影を付けた結果を示す図である。図１１（ａ）に示す例では、領域Ｒ１が最も明るく、領域Ｒ２およびＲ４がその次に明るく、領域Ｒ３が最も暗く表示される。また、各領域では、辺ＤＡ側から辺ＢＣ側に向かうに従って、各点の明るさが徐々に暗くなる。また、三角形ＡＢＥの頂点Ｅの方向データと、三角形ＢＣＥの頂点Ｅの方向データと、三角形ＣＤＥの頂点Ｅの方向データと、三角形ＤＡＥの方向データとは共通であるため、頂点Ｅの周辺では、４つの領域の明るさは等しくなる。なお、煙単位オブジェクト５５ａに陰影を付けた場合には、線分ＡＥ、ＢＥ、ＣＥおよびＤＥの各両側で、各点の明るさは不連続となるが、煙単位オブジェクト５５ｂに陰影を付けた場合には、線分ＡＥ、ＢＥ、ＣＥおよびＤＥの各両側で、各点の明るさが連続的に変化する。なぜなら、煙単位オブジェクト５５ｂの場合には、例えば、線分ＡＥについては、三角形ＡＢＥの頂点Ａの方向データと三角形ＤＡＥの頂点Ａの方向データとは共通であり、かつ、三角形ＡＢＥの頂点Ｅの方向データと三角形ＤＡＥの頂点Ｅの方向データとは共通であるからである。
【００６６】
図１１（ｂ）は、図５（ｂ）に示す煙単位オブジェクト５５ｂに、トゥーンシェーディング法を用いて陰影を付けた結果を示す図である。この例では、トゥーンシェーディング法を適用した結果、煙単位オブジェクト５５ｂは、第１の表示色を有する領域Ｒ５と、第２の表示色を有する領域Ｒ６とに分割される。
【００６７】
なお、煙単位オブジェクトは板状オブジェクトであるため、オブジェクト同士がめり込んでゲーム画面がちらつく可能性は低くなる。例えば、多数の板状オブジェクトを部分オブジェクトとして３次元仮想空間に発生させる画像演出を行う場合（例えば、多数の煙単位オブジェクトを発生させて、砂煙が発生したような演出を行う場合）、比較的狭い領域内に多数のオブジェクトが存在することになるが、このように多数のオブジェクトを同時に画面に表示させる場合でも、板状オブジェクト同士がめり込む可能性は低くなる。
【００６８】
さらに、煙単位オブジェクトは常に画面に正対するように制御されるため、各煙単位オブジェクトは互いに平行となり、オブジェクト同士がめり込む可能性はさらに低くなる。例えば、図１２に示すように、カメラ７２から射影面（図示せず）に２枚の煙単位オブジェクト７１ａおよび７１ｂを射影したときの画像をゲーム画面として表示する場合、２枚の煙単位オブジェクト７１ａおよび７１ｂは互いに平行となる。このため、煙単位オブジェクト同士がめり込んで、ゲーム画面がちらつく可能性は低くなる。したがって、オブジェクト同士のめり込みによるゲーム画面のちらつきを防止することができる。
【００６９】
以上に示すように、本実施形態に係るゲーム装置は、ライトの向きと板状オブジェクトの各頂点の方向データとに基づき、板状オブジェクトの各頂点の色または明るさを求めた上で、求めた値に基づき、板状オブジェクトの表面上にある各点の表示色を決定し、決定した表示色で板状オブジェクトを画面に表示させる。また、板状オブジェクトの内部にある頂点の方向データには、板状オブジェクトを含む平面に対して第１の角度を成す方向が設定され、板状オブジェクトの周辺部にある各頂点の方向データには、板状オブジェクトを含む平面に対して第１の角度よりも小さい第２の角度を成す方向が設定される。このように方向データを一般的な手法とは異なる方向に設定することにより、板状オブジェクトに陰影を付けることができる。よって、少数のポリゴンによって板状オブジェクトを構成することにより、データ記憶量やデータ処理量の削減を図るとともに、陰影を立体的に表現することによりゲーム画面の現実感を向上させることができる。
【図面の簡単な説明】
【図１】本発明の実施形態に係るゲーム装置を含んだゲームシステムの外観図である。
【図２】本発明の実施形態に係るゲーム装置のハードウェア構成を示すブロック図である。
【図３】本発明の実施形態に係るゲーム装置のメインフローチャートである。
【図４】本発明の実施形態に係るゲーム装置で使用される煙画像および煙単位オブジェクトを示す図である。
【図５】本発明の実施形態に係るゲーム装置で使用される煙単位オブジェクトの詳細を示す図である。
【図６】本発明の実施形態に係るゲーム装置において、煙単位オブジェクトが画面に正対する様子を示す図である。
【図７】本発明の実施形態に係るゲーム装置において、オブジェクトの頂点における光の方向と当該頂点の方向データとを示す図である。
【図８】本発明の実施形態に係るゲーム装置の第１の陰影処理のフローチャートである。
【図９】本発明の実施形態に係るゲーム装置の第２の陰影処理のフローチャートである。
【図１０】本発明の実施形態に係るゲーム装置において、煙単位オブジェクトに陰影が付けられる様子を示す模式図である。
【図１１】本発明の実施形態に係るゲーム装置において、煙単位オブジェクトに陰影を付けた結果を示す図である。
【図１２】本発明の実施形態に係るゲーム装置において、板状オブジェクトが互いに平行となる様子を示す図である。
【図１３】従来のゲーム装置において、板状オブジェクトに陰影が付けられる様子を示す図である。
【図１４】従来のゲーム装置において、板状オブジェクト同士がめり込む様子を示す図である。
【符号の説明】
１…ゲーム機本体
１０…ＣＰＵ
１１…ＧＰＵ
５１…煙画像
５２、５５、６１、７１…煙単位オブジェクト
５４…テクスチャ
６２、７２…カメラ
７３…ライト
【図１】
2004192470.tif 000003
【図２】
2004192470.tif 000004
【図３】
2004192470.tif 000005
【図４】
2004192470.tif 000006
【図５】
2004192470.tif 000007
【図６】
2004192470.tif 000008
【図７】
2004192470.tif 000009
【図８】
2004192470.tif 000010
【図９】
2004192470.tif 000011
【図１０】
2004192470.tif 000012
【図１１】
2004192470.tif 000013
【図１２】
2004192470.tif 000014
【図１３】
2004192470.tif 000015
【図１４】
2004192470.tif 000016