(57)【特許請求の範囲】
【請求項１】
プロセッサによる演算・制御により、当該プロセッサを備える装置に対して、仮想空間に配置されたオブジェクトの色情報に基づくレンダリングを行わせることにより、当該オブジェクトの画像を生成させるためのプログラムであって、
前記オブジェクトのうち、前記オブジェクトに予め設定されている色情報が所与の色条件を満たす部分を検出する検出手段、
前記検出手段により検出されなかった部分には輝度処理によるハイライト表示を施さず、検出された部分又はその周辺に輝度処理によるハイライト表示を施す輝度処理手段、
として前記装置を機能させるためのプログラム。
【請求項２】
プロセッサによる演算・制御により、当該プロセッサを備える装置に対して、仮想空間に配置されたオブジェクトの色情報に基づくレンダリングを行わせることにより、当該オブジェクトの画像を生成させるためのプログラムであって、
前記オブジェクトのうち、前記オブジェクトに予め設定されている色情報が所与の色条件を満たす部分を検出する検出手段、
前記検出手段により検出された部分には輝度処理によるハイライト表示を施さず、検出されなかった部分又はその周辺に輝度処理によるハイライト表示を施す輝度処理手段、
として前記装置を機能させるためのプログラム。
【請求項３】
請求項１又は２記載のプログラムであって、
複数のプリミティブ面によって前記オブジェクトを形成するオブジェクト形成手段として前記装置を機能させ、
前記検出手段が、前記各プリミティブ面それぞれに設定された色情報に基づいて、前記色条件を満たすプリミティブ面を検出するように前記装置を機能させる、
ためのプログラム。
【請求項４】
請求項１〜３の何れかに記載のプログラムであって、
前記輝度処理の対象部分の反射係数を決定する反射係数決定手段として前記装置に機能させ、
前記輝度処理手段が、前記反射係数決定手段により決定された反射係数に基づいて前記輝度処理によるハイライト表示を行うように前記装置を機能させる、
ためのプログラム。
【請求項５】
請求項４記載のプログラムであって、
前記反射係数決定手段が、前記輝度処理の対象部分の色情報によって表される色の明度、彩度または色相の度合に応じて、反射係数を決定するように前記装置を機能させるためのプログラム。
【請求項６】
請求項１〜５の何れかに記載のプログラムであって、
前記オブジェクトの色情報を可変する色情報可変手段として前記装置を機能させるためのプログラム。
【請求項７】
請求項６記載のプログラムであって、
前記オブジェクトは眼を表現するためのオブジェクトであり、
前記色情報可変手段が、前記オブジェクトの内、眼の黒目の範囲を変更するように色情報を可変するように前記装置を機能させるためのプログラム。
【請求項８】
請求項１〜７の何れかに記載のプログラムであって、
前記オブジェクトを含む複数のパーツオブジェクトによって１のキャラクタを形成するキャラクタ形成手段として前記装置を機能させるためのプログラム。
【請求項９】
請求項１〜８の何れかに記載のプログラムを記憶する情報記憶媒体。
【請求項１０】
仮想空間にオブジェクトを配置するとともに、当該オブジェクトの色情報に基づくレンダリングを行うことにより、当該オブジェクトの画像を生成する画像生成装置であって、
前記オブジェクトのうち、前記オブジェクトに予め設定されている色情報が所与の色条件を満たす部分を検出する検出手段と、
前記検出手段により検出されなかった部分には輝度処理によるハイライト表示を施さず、検出された部分又はその周辺に輝度処理によるハイライト表示を施す輝度処理手段と、
を備える画像生成装置。
【請求項１１】
仮想空間にオブジェクトを配置するとともに、当該オブジェクトの色情報に基づくレンダリングを行うことにより、当該オブジェクトの画像を生成する画像生成装置であって、
前記オブジェクトのうち、前記オブジェクトに予め設定されている色情報が所与の色条件を満たす部分を検出する検出手段、
前記検出手段により検出された部分には輝度処理によるハイライト表示を施さず、検出されなかった部分又はその周辺に輝度処理によるハイライト表示を施す輝度処理手段と、
を備える画像生成装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、仮想空間に配置されるオブジェクトの画像を生成する画像生成装置等に関する。
【０００２】
【従来の技術】
従来より、三次元コンピュータグラフィックスを用いて仮想空間の画像を生成する画像生成装置が知られている。このような画像生成装置は、複数のポリゴン（プリミティブ面の一種）から構成されるオブジェクトを仮想空間に配置するとともに、この仮想空間を所与の視点から見た画像を生成する装置である。
【０００３】
また、よりリアリスティックな画像を生成するために、輝度処理が行われるのが一般的である。輝度処理とは、例えば、シェーディングと呼ばれる陰影処理のことを意味し、仮想空間に設定される光源の光線方向と、オブジェクトを構成するポリゴンの向きとに基づいて、当該ポリゴンの色情報を変化させ、当該ポリゴン表面の濃淡を表現するといった処理である。
【０００４】
さて、画像生成装置の１つであるゲーム装置においては、オブジェクトとして、人間を模したキャラクタオブジェクト（以下、本明細書において、単に「キャラクタ」という。）がよく利用される。このキャラクタは、頭部や胴部、手、脚といった各部位を表すオブジェクトを連接・構成することによってモデリングされる。キャラクタを構成するオブジェクトのうち、輝度処理の対象となるオブジェクトの１つとして、眼のオブジェクトがある（以下、本明細書において、説明の簡明のため、各部位の名称をもって説明するが、実際には当該部位を形成するためのオブジェクトを指すものである。）。眼は、キャラクタの印象を特徴づけるものであるため、より精密に描画される。眼に対して輝度処理が行われるのもそのためである。
【０００５】
【発明が解決しようとする課題】
しかしながら、眼に対して輝度処理を行った場合に、光線の反射部分（以下、「ハイライト」という。）の影響で、眼の印象が損なわれる事態が生じる。例えば、眼の黒目の部分にハイライトを描画（すなわち、輝度処理を行うこと。）した場合には、眼がどの方向を向いて、キャラクタがどの方向を見ているのかが分かり難くなる、といった弊害が生じる。すなわち、リアリスティックな画像を生成するためとはいえ、ハイライトを描画することによって、却って心象の悪い画像を生成することになる場合がある。ゲーム装置においては、そのゲームのプレーヤが、キャラクタになった気持ちでプレイしたり、キャラクタに対する愛着を持ってプレイしたりする。このため、プレーヤにとっては、キャラクタの画像の変化に敏感になり、キャラクタに対する心象は変化しやすいものとなる。従って、ゲーム装置においては特に問題となる。
【０００６】
本発明の課題は、輝度処理を行うか否かを制御して、適切な輝度処理を施すことである。
【０００７】
【課題を解決するための手段】
以上の課題を解決するため、第１の発明は、プロセッサによる演算・制御により、当該プロセッサを備える装置に対して、仮想空間に配設されたオブジェクトの色情報に基づくレンダリングを行わせることにより、当該オブジェクトの画像を生成させる画像生成情報であって、
前記オブジェクトに複数の特定位置（例えば、実施の形態におけるポリゴンの頂点）を決定し、その特定位置それぞれについて、各特定位置の色情報が所与の色条件（例えば、図１５の判定条件データ４４０）を満たすか否かを判定する判定手段と、前記判定手段により満たすと判定された特定位置またはその特定位置周辺に輝度処理を施す輝度処理手段と、を機能させるための情報を含む画像生成情報である。
【０００８】
また、第２の発明は、プロセッサによる演算・制御により、当該プロセッサを備える装置に対して、仮想空間に配設されたオブジェクトの色情報に基づくレンダリングを行わせることにより、当該オブジェクトの画像を生成させる画像生成情報であって、
前記オブジェクトに複数の特定位置（例えば、実施の形態におけるポリゴンの頂点）を決定し、その特定位置それぞれについて、各特定位置の色情報が所与の色条件（例えば、図１５の判定条件データ４４０）を満たすか否かを判定する判定手段と、前記判定手段により満たさないと判定された特定位置またはその特定位置周辺に輝度処理を施す輝度処理手段と、を機能させるための情報を含む画像生成情報である。
【０００９】
また、第１０の発明は、仮想空間にオブジェクトを配設するとともに、当該オブジェクトの色情報に基づくレンダリングを行うことにより、当該オブジェクトの画像を生成する画像生成装置であって、
前記オブジェクトに複数の特定位置（例えば、実施の形態におけるポリゴンの頂点）を決定し、その特定位置それぞれについて、各特定位置の色情報が所与の色条件（例えば、図１５の判定条件データ４４０）を満たすか否かを判定する判定手段と、前記判定手段により満たすと判定された特定位置またはその特定位置周辺に輝度処理を施す輝度処理手段と、を備える画像生成装置である。
【００１０】
また、第１１の発明は、仮想空間にオブジェクトを配設するとともに、当該オブジェクトの色情報に基づくレンダリングを行うことにより、当該オブジェクトの画像を生成する画像生成装置であって、
前記オブジェクトに複数の特定位置（例えば、実施の形態におけるポリゴンの頂点）を決定し、その特定位置それぞれについて、各特定位置の色情報が所与の色条件（例えば、図１５の判定条件データ４４０）を満たすか否かを判定する判定手段と、前記判定手段により満たさないと判定された特定位置またはその特定位置周辺に輝度処理を施す輝度処理手段と、を備える画像生成装置である。
【００１１】
この第１，２，１０，１１の発明によれば、オブジェクトにおける特定位置の色情報に応じて輝度処理を施すか否かを判定し、判定結果に基づいて特定位置または特定位置の周辺に対して輝度処理を施すことができる。これにより、例えば、画像生成装置において、色条件として黒色を設定し、黒色の色情報を持つ特定位置に対して輝度処理を行わせる、或いは、行わせないようにすることができる。従って、輝度処理を施したい範囲、或いは、施したくない範囲の色情報を色条件としさえすればよいため、容易に輝度処理を行わせるか否かを制御することができる。
【００１２】
第３の発明は、第１又は２の発明の画像生成情報であって、
複数のプリミティブ面（例えば、実施の形態におけるポリゴン）によって前記オブジェクトを形成するオブジェクト形成手段（例えば、図７のゲーム演算部２１０）を前記装置に機能させるための情報と、前記判定手段が、前記各プリミティブ面の代表点または前記各プリミティブ面の頂点の位置を前記特定位置として前記判定を行うための情報と、を含む画像生成情報である。
【００１３】
この第３の発明によれば、プリミティブ面の代表点または各頂点の色情報に応じて輝度処理を施すか否かを判定する。プリミティブ面の代表点または各頂点には、一般的に色情報が設定されている。このため、この設定されている色情報を利用することにより、当該プリミティブ面に輝度処理を施すか否かの判定をより容易に実現することができる。
【００１４】
尚、プリミティブ面とは、オブジェクトを構成する面のことを言う。モデルがサーフェスモデルであるならば、プリミティブ面はそのモデルを構成するポリゴンであり、そのモデルを構成するポリゴンは複数であっても単数であってもよい。また、モデルがソリッドモデルであるならば、プリミティブ面はそのモデルの表面を構成する面である。
【００１５】
第４の発明は、第１〜３の何れかの発明の画像生成情報であって、
前記特定位置の反射係数を決定する反射係数決定手段を前記装置に機能させるための情報と、前記輝度処理手段が、前記反射係数決定手段により決定された反射係数に基づいて前記輝度処理を行うための情報と、を含む画像生成情報である。
【００１６】
この第４の発明によれば、特定位置の色情報によって輝度処理を施すか否かを判定することができるが、さらに、その輝度処理を施す程度を設定することができる。即ち、反射係数決定手段が決定した反射係数を係数として用いることにより、輝度処理によってハイライトが表示される、そのハイライトの色の程度を調節することが可能となる。
【００１７】
なお、反射係数決定手段による反射係数の決定は、次のように行うこととしてもよい。すなわち、第５の発明として、前記反射係数決定手段が、前記特定位置の色情報によって表される色の明度、彩度または色相の度合に応じて、反射係数を決定することとしてもよい。
【００１８】
第６の発明は、第１〜５の何れかの発明の画像生成情報であって、
前記特定位置の色情報を可変する色情報可変手段を前記装置に機能させるための情報を含む画像生成情報である。
【００１９】
この第６の発明によれば、例えば、特定位置の色情報を可変することによってオブジェクトの色情報を可変させる場合、オブジェクト自体の色情報が変化するとともに、輝度処理を施すか否かの判定結果も変わることとなる。すなわち、オブジェクトの色情報が変化するが、その変化に対して、いわば追従するように、自動的に、輝度処理を施す範囲を変えることができる。
【００２０】
第７の発明は、第６の発明の画像生成情報であって、
前記オブジェクトは眼を表現するためのオブジェクトであり、
前記色情報可変手段が、前記複数の特定位置の内、前記眼の黒目の部分に位置する特定位置の色情報を可変するための情報を含む画像生成情報である。
【００２１】
例えば、眼のオブジェクトをよりリアリスティックに表現する場合、眼の黒目の内、瞳孔の範囲を拡縮したい場合がある。この第７の発明によれば、眼の黒目の部分に位置する特定位置の色情報を可変するため、黒目の内、瞳孔の部分に位置する特定位置の色情報を黒色とするといった、眼に関するよりリアリスティックな画像を生成することができる。また、第６の発明の効果も具備することは勿論である。
【００２２】
第８の発明は、第１〜７の何れかの発明の画像生成情報であって、
前記オブジェクトを含む複数のパーツオブジェクトによって１のキャラクタを形成するキャラクタ形成手段を前記装置に機能させるための情報を含む画像生成情報である。
【００２３】
この第８の発明によれば、１のキャラクタを構成する複数のパーツオブジェクトのうち、例えば１つのパーツオブジェクトに対して、判定手段および輝度処理手段を機能させるようにしてもよい。
【００２４】
第９の発明は、第１〜８の何れかの発明の画像生成情報を記憶する情報記憶媒体である。
【００２５】
この第９の発明によれば、情報記憶媒体に記憶された画像生成情報をプロセッサが演算・制御することによって、第１〜８の発明と同様の作用効果を奏することが可能である。
【００２６】
【発明の実施の形態】
以下、図を参照して本発明を適用した実施の形態を詳細に説明する。尚、以下では、本発明を画像生成装置の１つである家庭用のゲーム装置に適用した場合を例にとって説明するとともに、キャラクタの眼に対する処理を例に説明するが、本発明が適用されるものはこれに限られるものではない。
【００２７】
図１は、本実施の形態の家庭用のゲーム装置の外観図である。図１において、プレーヤは、ディスプレイ１２００に映し出されたゲーム画像を見ながら、ゲームコントローラ１２０２、１２０４を操作することによって、キャラクタを操作して所与のゲームを楽しむ。この場合、ゲームプログラム等のゲームを行うために必要な情報は、本体装置１２１０に着脱自在な情報記憶媒体であるＣＤ−ＲＯＭ１２０６、ＩＣカード１２０８、メモリカード１２１２等に格納されている。
【００２８】
図２は、ゲーム装置によって生成された、キャラクタの頭部の画像の一例を示す図である。キャラクタの頭部は、複数のオブジェクトが配置・構成されることによって形成されている。眼７は、頭部を構成するオブジェクトの１つである。眼７は、キャラクタの頭部に形成される眼孔８の内部に配置されており、図３に示すような形状をしている。図３において、眼７の内、開口部（眼孔８に相当）の部分が、頭部から表出し、図２の画像のように表されている。すなわち、眼孔８内において、眼７は多少回転可能に構成されている。尚、眼７や、眼７を含む頭部や、頭部を含むキャラクタは、全てポリゴンを連接・構成することによって形成されている。
【００２９】
図４は、図２の眼孔８（開口部）内の眼７の部分を拡大して、模式的に表した図である。眼７は、瞳孔７１２や虹彩７１４等を含む黒目７１と、白目７３との大きく２つの部分により構成される。図４において白線による三角形の網の目状に表現されているものが黒目７１であり、白線によって囲まれる１つの三角形が１つのポリゴンを表している。黒目７１の内、瞳孔７１２や虹彩７１４は、ポリゴンの色の変化によって表現されるものであって、固定的なものではない。
【００３０】
より具体的に説明すると、黒目７１を構成する各ポリゴンには、色が設定される。この結果、瞳孔７１２と虹彩７１４とが、黒目７１に存在することをプレーヤが認識する。そして、黒目７１を構成する各ポリゴンの色は、可変される。例えば、ゲーム空間（仮想空間）が明るい場所として設定されている場合と、暗い場所として設定されている場合とで、黒目７１を構成する各ポリゴンの色が可変される。この結果、プレーヤは、瞳孔７１２と虹彩７１４の範囲が変更されたと認識し、例えば、瞳孔が開いた、と認識することになる。
【００３１】
また、図４において、黒目７１に対して輝度処理が施された結果、ハイライト９が描画されている。図５及び図６は、図４におけるハイライト９の位置が変化した場合の例を示す図であり、図５が本実施の形態による処理を施さなかった場合を示し、図６が本実施の形態による処理を施した場合を示している。
【００３２】
本実施の形態によれば、黒目７１のうち、ハイライト９が描画されない部分が存在する。黒目７１を形成するポリゴンのうち、黒色のポリゴン、即ち瞳孔７１２の部分である。瞳孔７１２は、キャラクタの視線がどちらを向いているのかを表現するためのものであり、プレーヤに対してキャラクタの印象を特徴づける重要な要素である。このため、黒目７１内にハイライト９が描画される場合であっても、瞳孔７１２内には描画しないようにしているものである。
【００３３】
尚、図３に示すように、白目７３は、四角形のポリゴンによって形成される。白目７３の範囲は固定的なものである。
【００３４】
図７は、ゲーム装置の機能ブロック図である。ゲーム装置は、操作部１０、処理部２０、表示部３０、記憶部４０および一時記憶部５０を備えて構成される。
【００３５】
操作部１０は、ゲームにおけるキャラクタの動作や、進行方向等を指示入力するためのものであり、入力された指示信号は処理部２０に出力される。図１に示すゲームコントローラ１２０２，１２０４等が操作部１０に該当する。
【００３６】
処理部２０は、ゲーム装置全体の制御、装置内の各ブロックへの命令の指示、ゲーム処理、画像処理、音処理等の各種処理を行うものであり、その機能は、各種プロセッサ（ＣＰＵ、ＤＳＰ等）、あるいはＡＳＩＣ（ゲートアレイ等）等のハードウェアや、所与のプログラム等により実現できる。また、処理部２０には、主に、ゲーム演算部２１０、画像生成部２２０が含まれる。
【００３７】
ゲーム演算部２１０は、ゲームの進行処理、仮想空間上での各オブジェクトやキャラクタの位置や向きを決定する処理、視点の位置や視線方向等を求める処理、光源の位置を決定する処理、光源の光線方向や光の強度を決定する処理等、種々の処理を操作部１０から入力される操作信号や、記憶部４０から読み出すゲーム情報４２等に基づいて実行する。
【００３８】
また、ゲーム演算部２１０は、眼配置部２１２を有しており、眼配置部２１２は、仮想空間における眼７の位置や向き等を決定して仮想空間に配置する処理を１フレーム（１／６０秒）ごとに実行する。具体的には、仮想空間はワールド座標系（Ｘ，Ｙ，Ｚ）と呼ばれる座標系で定義されている。一方、眼７は、ローカル座標系（ｘ，ｙ，ｚ）と呼ばれる座標系で、その構成が定義づけられ、ローカル系座標データ４２２として記憶部４０内に記憶されている。眼配置部２１２は、仮想空間（ワールド座標系）における眼７の位置や向き等を決定すると、ローカル系座標データ４２２からローカル座標系上に定義された、眼７を構成する各ポリゴンの位置情報を読み出し、所定の行列変換演算を行うことによって、ワールド座標系（仮想空間）上に眼７を構成する各ポリゴンの位置座標を展開する。ワールド座標系上の位置座標は、一時記憶部５０にワールド系座標データ５１２として一時記憶される。
【００３９】
図８は、眼７を構成する２つのポリゴンＰ１，Ｐ２の模式図である。ポリゴンＰ１は、頂点Ａ1，Ａ2，Ａ3によって定義され、ポリゴンＰ２は、頂点Ａ1，Ａ3，Ａ4によって定義される。図９は、ローカル系座標データ４２２のデータ構成例を示す図である。眼７を構成するポリゴンごとに、当該ポリゴンを定義する頂点のローカル座標系上の座標データが記憶されている。例えば、ポリゴンは、座標（Ａ1ｘ，Ａ1ｙ，Ａ1ｚ）の頂点Ａ1と、座標（Ａ2ｘ，Ａ2ｙ，Ａ2ｚ）の頂点Ａ2と、座標（Ａ3ｘ，Ａ3ｙ，Ａ3ｚ）の頂点Ａ3とによって定義される。
【００４０】
尚、１つのポリゴンに対して３つの頂点が対応づけられている場合には、そのポリゴンは、三角形のポリゴンを意味する。即ち、黒目７１を形成するためのポリゴンである。一方、１つのポリゴンに対して４つの頂点が対応づけられている場合（例えば、ポリゴンＰ１０）には、そのポリゴンは、四角形のポリゴンを意味する。即ち、白目７３を形成するためのポリゴンである。
【００４１】
図１０は、ワールド系座標データ５１２のデータ構成例を示す図である。眼７を構成するポリゴンごとに、当該ポリゴンを定義する頂点のワード座標系上の座標データが記憶されている。例えば、ポリゴンＰ１は、座標（Ａ1Ｘ，Ａ1Ｙ，Ａ1Ｚ）の頂点Ａ1と、座標（Ａ2Ｘ，Ａ2Ｙ，Ａ2Ｚ）の頂点Ａ2と、座標（Ａ3Ｘ，Ａ3Ｙ，Ａ3Ｚ）の頂点Ａ3とによって定義される。
【００４２】
また、眼配置部２１２は、１フレーム（１／６０秒）ごとに、眼７を構成するポリゴンの、各頂点の法線ベクトルをワールド座標系に変換する処理を行う。図１１は、ローカル系法線データ４２４のデータ構成例である。ローカル系法線データ４２４は、眼７を構成する各ポリゴンの各頂点と、法線ベクトルとを対応付けて記憶する。ここで、法線ベクトルは、単位ベクトルとして正規化されたベクトルであって、そのベクトルの始点をローカル座標系の原点においた場合の終点の座標によって表されている。図１１において、例えば、頂点Ａ1の法線ベクトルＶ1は（Ｖ1ｘ，Ｖ1ｙ，Ｖ1ｚ）である。
【００４３】
なお、図８に示す通り、１つの頂点が複数のポリゴンを定義する基礎となる場合がある。例えば、頂点Ａ1は、ポリゴンＰ１とＰ２とを定義する基礎となっている。但し、頂点Ａ1の法線ベクトルＶ1は１つである。この法線ベクトルＶ1に基づいて、ポリゴンＰ１，Ｐ２に対する輝度計算がなされる。
【００４４】
眼配置部２１２は、ポリゴンの頂点の座標データと同様に、法線ベクトルについても、所定の行列変換演算を行うことによって、ワールド座標系上に展開する。ワールド座標系上に展開された法線ベクトルは、一時記憶部５０にワールド系法線データ５１４として一時記憶される。図１２は、ワールド系法線データ５１４のデータ構成例である。ワールド系法線データ５１４は、ローカル系法線データ４２４と同様に、眼７を構成する各ポリゴンの各頂点と、法線ベクトルとを対応付けて記憶する。図１２において、例えば、頂点Ａ1の法線ベクトルＶ1は（Ｖ1Ｘ，Ｖ1Ｙ，Ｖ1Ｚ）である。
【００４５】
画像生成部２２０は、ゲーム演算部２１０から入力される指示信号、各種座標データ等に基づき、ゲーム画像を生成する処理を実行するものであり、ＣＰＵ、ＤＳＰ、画像生成専用のＩＣ、メモリなどのハードウェアにより構成される。具体的には、画像生成部２２０は、前方、後方クリッピングを実行してビューボリュームを決定する処理、視点に基づく各ポリゴンの座標変換処理（透視投影変換処理）、輝度計算を含む輝度処理等のレンダリング処理を実行することによりゲーム画像を生成する。そして、生成したゲーム画像を画像データとして表示部３０に出力して表示させる。
【００４６】
また、画像生成部２２０は、ハイライト表示部２２２を有しており、ハイライト表示部２２２が、眼７に対する輝度処理を実行する。すなわち、ハイライト表示部２２２は、ゲーム演算部２１０によって設定された視点の視線方向と、同じくゲーム演算部２１０によって設定された光源の光線方向と、眼７を構成する各ポリゴンの頂点の法線データ（ワールド系法線データ５１４）とに基づいて、内積演算等することによって輝度計算を行う。尚、この輝度計算自体の計算方法は公知の手法（例えば、グローシェーディング）を用いてよい。
【００４７】
図１３は、ポリゴン色情報４２６のデータ構成例を示す図である。ポリゴン色情報４２６は、眼７を構成する各ポリゴンの頂点に設定された色情報を格納したものである。また、各ポリゴンの色情報は、各ポリゴンを構成する頂点の内、代表の頂点の色情報となる。このため、１つのポリゴンに配色される色は１色である。但し、１つのポリゴンであっても、輝度処理等によってグラデーション（階調表現）がなされる場合がある。
【００４８】
尚、ここで、色情報は、Ｒ（赤）、Ｇ（緑）、Ｂ（青）の３原色それぞれの明度（０〜２５５の整数値）によって表される。（Ｒ，Ｇ，Ｂ）＝（０，０，０）の場合には黒色を、（Ｒ，Ｇ，Ｂ）＝（２５５，２５５，２５５）の場合には白色を表す。
【００４９】
例えば、図１３において、ポリゴンＰ１の色は、頂点Ａ1の色情報（０，０，０）により、黒色である。ポリゴンＰ１は、図９に示したように、３つの頂点によって定義される三角形のポリゴンであるため、黒目７１を形成するためのポリゴンである。また、ポリゴンＰ１０の色は、頂点Ａ10の色情報（２５５，２５５，２５５）により、白色である。ポリゴンＰ１０は、図９に示したように、４つの頂点によって定義される四角形のポリゴンであるため、白目７３を形成するためのポリゴンである。ポリゴンＰ３は、頂点Ａ3の色情報（７０，５０，５０）により、こげ茶色である。ポリゴンＰ３は、図９に示したように、３つの頂点によって定義される三角形のポリゴンであるため、黒目７１を形成するためのポリゴンである。但し、黒色でないため、虹彩の部分を表現するためのポリゴンである。
【００５０】
図１４は、頂点輝度情報４２８のデータ構成例を示す図である。頂点輝度情報４２８は、眼７を構成する各ポリゴンの頂点に設定された輝度の色情報を格納したものである。輝度色情報とは、ハイライト表示部２２２による輝度処理によって、当該ポリゴンに描画される色の色情報のことである。より具体的には、ハイライト表示部２２２は、眼７を構成する各ポリゴンの頂点の法線ベクトル等に基づいて輝度計算を行い、輝度を決定し、決定した輝度に基づいてハイライトを描画する。この際、ハイライトの色は、この頂点輝度情報４２８の色情報に基づいて決定される。より分かり易く説明すると、輝度処理によってグラデーションがかけられる場合に、そのグラデーションに用いる色が、頂点輝度情報４２８の色情報の色であって、ポリゴンの色（ポリゴン色情報４２６）に混色されることとなる。
【００５１】
また、ハイライト表示部２２２は、ハイライト表示プログラム４６０に従って、ハイライト表示処理を実行する。ハイライト表示処理とは、眼７を形成する各ポリゴンについて、ハイライト表示するか否かの判定を行い、この処理によってハイライト表示すると判定したポリゴンに対してのみハイライト表示、すなわち輝度処理を行う。
【００５２】
図１５は、ハイライト表示判定処理に用いられる判定条件データ４４０を示す図である。同図において、判定条件データ４４０には、判定条件として、「（Ｒ，Ｇ，Ｂ）＝（０，０，０）」が格納されている。すなわち、Ｒ，Ｇ，Ｂそれぞれの明度が“０”であることが条件とされている。ハイライト表示部２２は、各ポリゴン色情報４２６と、判定条件データ４４０とを比較することによって、判定条件データ４４０に合致するポリゴンに対しては、輝度処理（ハイライト表示）は行わず、判定条件データ４４０に合致しないポリゴンに対してのみ輝度処理（ハイライト表示）を行う。
【００５３】
記憶部４０は、ゲーム装置の駆動に係るプログラムやデータ等を記憶するものであり、ＣＤ−ＲＯＭ、ゲームカセット、ＩＣカード、ＭＯ、ＦＤ、ＤＶＤ、メモリ、ハードディスク等のハードウェアにより実現できる。記憶部４０は、ゲーム情報４２を記憶する。ゲーム情報４２とは、ゲーム装置等の電子計算機（コンピュータ）による処理の用に供する、プログラムに準じた情報の意である。また、ゲーム情報４２には、眼７を形成するためのオブジェクトデータである、眼オブジェクトデータ４２０と、判定条件データ４４０と、ハイライト表示プログラム４６０とが含まれる。
【００５４】
一時記憶部５０は、ＲＡＭ（Random Access Memory）等で構成され、ワールド系座標データ５１２とワールド系法線データ５１４を含む眼オブジェクトデータ５１０が記憶される。尚、このワールド系座標データ５１２と、ワールド系法線データ５１４とは、眼配置部２１２によって、１フレーム毎に更新される。
【００５５】
表示部３０は、ＣＲＴ（ブラウン管：Cathode Ray Tube）、ＬＣＤ（液晶ディスプレイ：Liquid Crystal Display）等で構成され、処理部２０の画像生成部２２０によって生成された画像データを表示するものである。
【００５６】
図１６は、ハイライト表示プログラム４６０を読み出して実行することにより、ハイライト表示部２２２が実行するハイライト表示処理の動作を説明するためのフローチャートである。このハイライト表示処理は、１フレーム毎に実行されるものであり、ゲーム演算部２１０による処理が終了した後に実行される。
【００５７】
まずハイライト表示部２２２は、眼７を形成するポリゴンの内、１つのポリゴンを選択する（ステップＳ１）。そして、選択したポリゴンの色を、ポリゴン色情報４２６から読み出して（ステップＳ２）、判定条件データ４４０の判定条件を満足するか否かを判定する（ステップＳ３）。満足しないと判定した場合には、当該ポリゴンに対する輝度処理を実行する。
【００５８】
具体的には、当該ポリゴンの定義の基礎となっている頂点座標をワールド系座標データ５１２から読み出すとともに、読み出した各頂点の法線ベクトルをワールド系法線データ５１４から読み出す。そして、ゲーム演算部２１０によって既に決定されている光源の位置や光線方向、視点の位置や視点の方向、視野等に基づいて、当該ポリゴンの各頂点に対する輝度を計算する。そして、当該各頂点の輝度色情報と、当該ポリゴンの色情報とを、計算した輝度に基づいて混色することにより、当該ポリゴンに対するハイライトを表現する。
【００５９】
ステップＳ４の処理の後、又は、ステップＳ３において満足しないと判定された場合には、ハイライト表示部２２２は、眼７を形成する全てのポリゴンに対して処理を行ったか否かを判定する（ステップＳ５）。行ったと判定した場合には、ハイライト表示処理を終了し、行っていないと判定した場合には、ステップＳ１〜Ｓ５の処理を繰り返し実行する。
【００６０】
図１７は、本実施の形態のハイライト表示処理を適用した場合のキャラクタの頭部と、適用しなかった場合の頭部との画像を示す図である。同図中、左側の頭部が、本実施の形態のハイライト表示処理を適用したものである。図中右側の頭部においては、眼の黒目の内、瞳孔の部分にまでハイライトが表示されてしまっているが、図中左側の頭部においては、瞳孔の部分にハイライトが表示されていない様子が分かる。右側のようなキャラクタの画像を表示した場合には、プレーヤに対して、不可思議な印象を与えかねず、また、キャラクタの視線が何れの方向を向いているか分かり難い。
【００６１】
次に、本実施の形態を実現できるハードウェアの構成の一例について図１８を用いて説明する。同図に示す装置では、ＣＰＵ１０００、ＲＯＭ１００２、ＲＡＭ１００４、情報記憶媒体１００６、音生成ＩＣ１００８、画像生成ＩＣ１０１０、Ｉ／Ｏポート１０１２，１０１４が、システムバス１０１６により相互にデータ入出力可能に接続されている。そして画像生成ＩＣ１０１０には表示装置１０１８が接続され、音生成ＩＣ１００８にはスピーカ１０２０が接続され、Ｉ／Ｏポート１０１２にはコントロール装置１０２２が接続され、Ｉ／Ｏポート１０１４には通信装置１０２４が接続されている。
【００６２】
情報記憶媒体１００６は、プログラム、表示物を表現するための画像データ、音データ、プレイデータ等が主に格納されるものであり、図７における記憶部４０に相当する。例えば本実施の形態を実現するものがパーソナルコンピュータである場合には、ゲームプログラム等を格納する情報記憶媒体としてＣＤ−ＲＯＭ、ＤＶＤ等が、家庭用ゲーム装置である場合には、これらの他にゲームカセット等が用いられる。また業務用ゲーム装置として実現する場合には、ＲＯＭ等のメモリやハードディスクが用いられ、この場合には情報記憶媒体１００６はＲＯＭ１００２になる。
【００６３】
コントロール装置１０２２はゲームコントローラ、操作パネル等に相当するものであり、プレーヤがゲームの進行に応じて行う判断の結果を装置本体に入力するための装置である。図７における操作部１０がこれに該当する。
【００６４】
情報記憶媒体１００６に格納されるプログラム、ＲＯＭ１００２に格納されるシステムプログラム（装置本体の初期化情報等）、コントロール装置１０２２から入力される信号等に従って、ＣＰＵ１０００は装置全体の制御や各種データ処理を行う。ＲＡＭ１００４はこのＣＰＵ１０００の作業領域等として用いられる記憶手段であり、情報記憶媒体１００６やＲＯＭ１００２の所与の内容、あるいはＣＰＵ１０００の演算結果等が格納される。図７における一時記憶部５０が、このＲＡＭ１００４に該当する。
【００６５】
更に、この装置には音生成ＩＣ１００８と画像生成ＩＣ１０１０とが設けられていてゲーム音やゲーム画像の好適な出力が行えるようになっている。音生成ＩＣ１００８は情報記憶媒体１００６やＲＯＭ１００２に記憶される情報に基づいて効果音やＢＧＭ音楽等のゲーム音を生成する集積回路であり、生成されたゲーム音はスピーカ１０２０によって出力される。また、画像生成ＩＣ１０１０は、ＲＡＭ１００４、ＲＯＭ１００２、情報記憶媒体１００６等から送られる画像情報に基づいて表示装置１０１８に出力するための画素情報を生成する集積回路である。また表示装置１０１８は、ＣＲＴ、ＬＣＤ、ＴＶ、プラズマディスプレイ、液晶プラズマディスプレイ、プロジェクター等により実現される。
【００６６】
また、通信装置１０２４は装置内部で利用される各種の情報を外部とやりとりするものであり、他の装置と接続されてゲームプログラム等に応じた所与の情報を送受したり、通信回線を介してゲームプログラム等の情報を送受すること等に利用される。
【００６７】
そして、図１〜図１５を参照して説明した種々の処理は、図１６のフローチャートに示した処理等を行うプログラムを格納した情報記憶媒体１００６と、該プログラムに従って動作するＣＰＵ１０００、画像生成ＩＣ１０１０、音生成ＩＣ１００８等によって実現される。なお画像生成ＩＣ１０１０等で行われる処理は、ＣＰＵ１０００あるいは汎用のＤＳＰ等によりソフトウェア的に行うこととしてもよい。
【００６８】
図１９に、ホスト装置１３００と、このホスト装置１３００と通信回線１３０２を介して接続される端末１３０４−１〜１３０４−ｎとを含むゲーム装置に本実施の形態を適用した場合の例を示す。
【００６９】
この場合、ゲーム情報４２は、例えば、ホスト装置１３００が制御可能な磁気ディスク装置、磁気テープ装置、メモリ等の情報記憶媒体１３０６に格納されている。端末１３０４−１〜１３０４−ｎが、ＣＰＵ、画像生成ＩＣ、音生成ＩＣを有し、スタンドアロンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置１３００からは、ゲーム情報４２等が通信回線１３０２を介して端末１３０４−１〜１３０４−ｎに配信される。一方、スタンドアロンで生成できない場合には、ホスト装置１３００がゲーム画像、ゲーム音を生成し、これを端末１３０４−１〜１３０４−ｎに伝送し、端末において出力することになる。
【００７０】
以上のように、本実施の形態によれば、眼７の黒目７１は、複数のポリゴンによって形成される。そして、各ポリゴンの色によって瞳孔７１２と虹彩７１４とが表現される。このとき、眼７に対しては輝度処理が行われ、ハイライトが表示されるが、同じ黒目７１のポリゴンであるにも関わらず、瞳孔７１２の部分にはハイライトが表示されないように、輝度処理が制御される。このため、ハイライトを表示する対象に応じて、適切なハイライトの表示を行うことができる。
【００７１】
また、黒目７１を形成するポリゴンの色情報（ポリゴン色情報４２６）を可変することによって瞳孔の大きさが変化することとなるが、瞳孔の大きさの変化に応じて、自動的にハイライトが表示される範囲も変化することとなる。このため、ハイライトを表示させるか否かの判定を簡略化することができる。
【００７２】
尚、本発明は、上記実施の形態の内容に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更可能である。
【００７３】
例えば、判定条件データ４４０を、“（Ｒ，Ｇ，Ｂ）＝（０，０，０）”としたが、“Ｒ＜２００ and Ｇ＞１０ and Ｂ＞１０”等としてもよい。この場合、赤色が強い部分に対してはハイライトを表示させ、それ以外の部分に対してはハイライトを表示させないことが可能となる。
【００７４】
これにより、例えば、キャラクタの頭部に対して、赤（Ｒ）の明度が高く、緑（Ｇ）や青（Ｂ）の明度の低い部分、すなわち唇に対してのみハイライトを表示させ、唇が光っている様子を表現することができる。このような、特定の色のポリゴン（或いはオブジェクト）に対して、ハイライトを表示させるといったことが可能である。
【００７５】
また、上述した輝度計算において、単に輝度を算出することとして説明したが、次のように輝度を算出することとしてもよい。即ち、上述した輝度計算において算出された値に、反射係数を乗算することによって、輝度を算出する。より具体的には、反射係数決定データとして、例えば、図２０に示すようなデータ（条件）を設定する。同図によれば、Ｒ値が“２００”〜“２５５”の時、ハイライト表示部２２２は反射係数を最高値（例えば、“１”）に設定する。そしてＲ値が“５０”〜“１９９”の時は、Ｒ値の減少に伴って反射係数も減少させ、Ｒ値が“０”〜“４９”の時は反射係数を最低値（例えば、“０”）とする。
【００７６】
そして、ハイライト表示部２２２は、ポリゴン色情報４２６に記憶されているポリゴンの色情報に応じて、当該ポリゴンの反射係数を、反射係数決定データに基づいて決定する。例えば、図２０において、当該ポリゴンの赤（Ｒ）の明度が“２５５”であった場合には、当該ポリゴンに対する反射係数を“１”とする。
【００７７】
そして、上述した輝度計算により算出された値に対して、反射係数（この場合、“１”）を乗算することによって、輝度とする。この反射係数によれば、ハイライト表示部２２２が、ハイライトを表示するか否かを判定するのみならず、ハイライトをどの程度表示するか否かを決定することができる。すなわち、ポリゴンの色情報に対して混色する輝度の色情報の度合を、当該ポリゴンの色情報によって制御することが可能となる。
【００７８】
例えば、上述した唇の例で考えると、図２０の反射係数決定データの場合には、より赤色の明度の高いポリゴンに対しては、ハイライトの色が強くかかるが、赤色（Ｒ）の明度の低いポリゴンに対しては、ハイライトの色を抑えるといった、ハイライトの色のかかる程度を制御することができる。なお、この反射係数決定データによって決定される反射係数の範囲は、“０”〜“１”に限らず、“０”〜“２”などであってもよい。上限を“１”以上とした場合には、ハイライトをより強くかけることが可能となる。
【００７９】
また、判定条件データ４４０や、上述した反射係数決定データは、ＲＧＢの明度に対する条件として説明したが、明度の他、彩度や色相を用いた条件としてよいことは勿論である。尚、ＲＧＢそれぞれの明度の値から、彩度や色相を求める計算は公知である。
【００８０】
また、上記の実施の形態においては、眼７のオブジェクトに対する実施の形態を説明したが、他のオブジェクトに対して同様の処理を行うこととしてもよいことは勿論である。更に、キャラクタを構成するオブジェクト（眼や唇のオブジェクトであってもよいし、頭部や脚部といったオブジェクトであってもよい。以下、「パーツオブジェクト」という。）の内、本処理を適用するパーツオブジェクトを特定し、その特定したパーツオブジェクトに対してのみ、本処理を行うようにしてもよい。
【００８１】
また、頂点輝度情報４２８として、全ての頂点の輝度色情報を（Ｒ，Ｇ，Ｂ）＝（２５５，２５５，２５５）の白色として図示したが、白色（２５５，２５５，２５５）に限らず、所望の色情報としてよいことは勿論である。この輝度色情報を例えば、黄色相当の色情報に設定することにより、黄色のハイライトを表示することが可能となる。
【００８２】
また、上述した説明においては、色情報は、Ｒ（赤）、Ｇ（緑）、Ｂ（青）の３つの明度として説明したが、この他に透明度情報（いわゆるα値）を含めてよいことは勿論である。例えば、ポリゴン色情報４２６として、各ポリゴンの透明度情報を記憶させ、ハイライト表示部２２２による輝度処理の際、この透明度情報に基づいて輝度処理を行うこととしてもよい。
【００８３】
また、ポリゴン色情報４２６に示した通り、各ポリゴンの色情報を、当該ポリゴンの頂点の代表点の色情報とすることとしたが、頂点の色情報に関わらず、各ポリゴンに対して直接、色情報が設定されることとしてもよい。また、代表点を頂点のうちの１つとしたが、当該ポリゴンの中心位置を代表点とし、この代表点に対する色情報を設定することとしてもよい。
【００８４】
【発明の効果】
本発明によれば、オブジェクトにおける特定位置の色情報に応じて輝度処理を施すか否かを判定し、判定結果に基づいて特定位置または特定位置の周辺に対して輝度処理を施すことができる。これにより、例えば、前記判定のための色条件として黒色を設定し、黒色の色情報を持つ特定位置に対して輝度処理を行わせる、或いは、行わせないようにすることができる。従って、輝度処理を施したい範囲、或いは、施したくない範囲の色情報を色条件としさえすればよいため、容易に輝度処理を行わせるか否かを制御することができる。
【図面の簡単な説明】
【図１】家庭用のゲーム装置の外観図。
【図２】キャラクタの頭部の画像の一例を示す図。
【図３】眼のオブジェクトを説明するための図。
【図４】眼のオブジェクトを説明するための図。
【図５】眼のオブジェクトに対するハイライトの位置の変化を説明するための図。
【図６】眼のオブジェクトに対するハイライトの位置の変化を説明するための図。
【図７】ゲーム装置の機能ブロック図。
【図８】眼のオブジェクトを構成する２つのポリゴンの模式図。
【図９】ローカル系座標データのデータ構成例を示す図。
【図１０】ワールド系座標データのデータ構成例を示す図。
【図１１】ローカル系法線データのデータ構成例を示す図。
【図１２】ワールド系法線データのデータ構成例を示す図。
【図１３】ポリゴン色情報のデータ構成例を示す図。
【図１４】頂点輝度情報のデータ構成例を示す図。
【図１５】判定条件データの一例を示す図。
【図１６】ハイライト表示処理の動作を説明するためのフローチャート。
【図１７】実施の形態を適用した場合および適用しなかった場合の画像例を示す図。
【図１８】実施の形態を実現できるハードウェア構成の一例を示す図。
【図１９】ホスト装置と通信回線を介して接続されるゲーム端末に本実施の形態を適用した場合の一例を示す図である。
【図２０】反射係数決定データの一例を示す図。
【符号の説明】
７    眼
７１  黒目
７１２  瞳孔
７１４  虹彩
７３  白目
１０  操作部
２０  処理部
２１０  ゲーム演算部
２１２  眼配置部
２２０  画像生成部
２２２  ハイライト表示部
３０  表示部
４０  記憶部
４２  ゲーム情報
４２０  眼オブジェクトデータ
４２２  ローカル系座標データ
４２４  ローカル系法線データ
４２６  ポリゴン色情報
４２８  頂点輝度情報
４４０  判定条件データ
４６０  ハイライト表示プログラム
５０  一時記憶部
５１０  眼オブジェクトデータ
５１２  ワールド系座標データ
５１４  ワールド系法線データ
【図１】
0003866587.tif 000002
【図２】
0003866587.tif 000003
【図３】
0003866587.tif 000004
【図４】
0003866587.tif 000005
【図５】
0003866587.tif 000006
【図６】
0003866587.tif 000007
【図７】
0003866587.tif 000008
【図８】
0003866587.tif 000009
【図９】
0003866587.tif 000010
【図１０】
0003866587.tif 000011
【図１１】
0003866587.tif 000012
【図１２】
0003866587.tif 000013
【図１３】
0003866587.tif 000014
【図１４】
0003866587.tif 000015
【図１５】
0003866587.tif 000016
【図１６】
0003866587.tif 000017
【図１７】
0003866587.tif 000018
【図１８】
0003866587.tif 000019
【図１９】
0003866587.tif 000020
【図２０】
0003866587.tif 000021