JP4006243B2 - 画像生成情報、ゲーム情報、情報記憶媒体、画像生成装置、およびゲーム装置 - Google Patents

画像生成情報、ゲーム情報、情報記憶媒体、画像生成装置、およびゲーム装置 Download PDF

Info

Publication number
JP4006243B2
JP4006243B2 JP2002052301A JP2002052301A JP4006243B2 JP 4006243 B2 JP4006243 B2 JP 4006243B2 JP 2002052301 A JP2002052301 A JP 2002052301A JP 2002052301 A JP2002052301 A JP 2002052301A JP 4006243 B2 JP4006243 B2 JP 4006243B2
Authority
JP
Japan
Prior art keywords
eyeball
information
character
game
eye
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.)
Expired - Lifetime
Application number
JP2002052301A
Other languages
English (en)
Other versions
JP2003256866A (ja
Inventor
典宏 ▲高▼見
秀明 武田
克倫 板井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Namco Ltd
Bandai Namco Entertainment Inc
Original Assignee
Namco Ltd
Namco Bandai Games Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Namco Ltd, Namco Bandai Games Inc filed Critical Namco Ltd
Priority to JP2002052301A priority Critical patent/JP4006243B2/ja
Publication of JP2003256866A publication Critical patent/JP2003256866A/ja
Application granted granted Critical
Publication of JP4006243B2 publication Critical patent/JP4006243B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Image Generation (AREA)
  • Processing Or Creating Images (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、キャラクタを含む仮想空間の画像を生成するための画像生成情報、ゲーム情報、係る画像生成情報またはゲーム情報を記憶する情報記憶媒体、およびキャラクタを含む仮想空間の画像を生成する装置等に関する。
【0002】
【発明の背景】
コンピュータ等の装置を用いて、3次元の仮想空間を構築し、係る仮想空間の画像を生成する技術が多く開発されている。係る技術では、オブジェクトを仮想空間内に配置し、これらオブジェクトを仮想空間内に設定した視点に基づいて描画して、画像を生成している。なお、一般にオブジェクトには、建物や机、木、車などの物体の他、人などの動物も含まれる。以下では、動物を形象するオブジェクトを他のオブジェクトと区別するために、「キャラクタ」と表記する。
【0003】
各オブジェクトやキャラクタの形状は、一般に、ポリゴンと呼ばれる三角形や四角形の平面を複数繋ぎ合わせたモデルにより定義される。そして、これらのモデルを構成する個々のポリゴンと視点との位置関係、ポリゴン同士の位置関係、各ポリゴンの色情報などに基づいて係るモデルを描画している。
【0004】
ところで、上述のようにコンピュータを用いて仮想空間の画像を生成する際には、モデルの質感をリアルに表現したり、仮想空間全体を写実的に表現するために、現実世界における物理法則に基づく光学処理を施すことがある。具体的には、仮想空間内に光源の位置を設定し、係る光源、視点、モデルを形成する各ポリゴン、などの位置および向きの関係に基づく光線反射の計算を行ったり、各ポリゴンの輝度処理を行うなどして、モデルの鏡面性やハイライトを表現することがある。
【0005】
【発明が解決しようとする課題】
コンピュータによる仮想空間の画像生成においては、上述のように物理法則に基づく処理を行って、現実性、写実性を追及することが多くある。しかし、その一方で、現実世界には存在しない空想上の物体を表現したり、或いは現実世界に存在する物体をデフォルメして表現するような場合もある。
【0006】
例えば、キャラクタの顔について、顔面全体に対する目の占める割合を、現実世界における多くの人よりも著しく大きくし、係るキャラクタのかわいらしさを強調することがある。このように目を大きく設定すれば、係るキャラクタの頭部における目の配置と、現実の人の頭部における目の配置との間に差異が生じる。一般的な人の場合、左右の眼孔部分(即ち、眼球が配置される頭部の穴)の開口方向は、それぞれ頭部前方を向き、尚且つ略平行となっている。即ち、頭部表面に現れる眼球の部分(いわゆる目として見える部分)は、左右ほぼ等しい方向を向いている。一方、目の大きいキャラクタの場合、頭部を占める目の割合が高いため、眼孔部分を頭部の形状にそって配置することとなり、頭部表面に現れる眼球の部分の向きが左右で異なる。それ故、上記キャラクタの眼球のハイライトを物理法則に基づいて表現すると、左右の眼球の輝き方が現実世界に見られるような輝き方とは異なることとなり、見る人に違和感を与える恐れがある。
【0007】
特に、プレーヤの操作入力に応答してリアルタイムに画像を生成するタイプのゲーム装置においては、物理法則とは無関係に法則性なしに、尤らしく反射やハイライトを表現することは困難である。即ち、現実世界では見られないようなデフォルメされたモデルについて、そのモデルの形状とは無関係に、尤らしい位置にハイライトを表現したり、妥当な反射を実行することは、画像をリアルタイムに生成する制約上、困難な問題であった。
【0008】
本発明の課題は、仮想空間の画像を生成する装置において、モデルの形状に関わらず、理想的な反射や輝度処理を実現することである。
【0009】
【課題を解決するための手段】
請求項1に記載の発明は、プロセッサによる演算・制御により、光源と物体の配置位置および向きとに基づいて当該物体の輝度処理を行う輝度処理手段(例えば、図11の輝度処理部122)と、前記物体を含む仮想空間の画像を生成する手段(例えば、図11の画像生成部120)と、を前記プロセッサを備える装置(例えば、図1のゲーム装置1)に対して機能させるための画像生成情報であって、前記輝度処理手段が、前記物体の向きに代えて、当該物体の基準向きを用いて前記輝度処理を行う(例えば、図14の眼球輝度処理)ように、前記装置に機能させるための情報を含むことを特徴とする。
なお、画像生成情報とは、電子計算機(コンピュータ)による処理の用に供する、プログラムに準じた情報の意である。
【0010】
請求項8に記載の発明は、光源と物体の配置位置および向きとに基づいて当該物体の輝度処理を行う輝度処理手段(例えば、図11の輝度処理部122)と、前記物体を含む仮想空間の画像を生成する手段(例えば、図11の画像生成部120)と、を備える画像生成装置(例えば、図1のゲーム装置1)であって、前記輝度処理手段は、前記物体の向きに代えて、当該物体の基準向きを用いて前記輝度処理を行う(例えば、図14の眼球輝度処理)ことを特徴とする。
【0011】
この請求項1または8に記載の発明によれば、物体の輝度処理をする際に、係る物体の向きに代えて、当該物体の基準向きを用いる。故に、仮想空間に配置する物体の位置および向きについて、従来に知られた輝度処理の方法では実現することのないはずの輝きを、係る従来に知られた輝度処理の方法を用いて実現することが可能となる。
【0012】
ところで、コンピュータグラフィックスの技術において、輝度処理を実行する際には、一般的に、仮想空間に配置した物体の法線ベクトルを用いて行うことがある。そこで、請求項2に記載の発明のように、請求項1に記載の画像生成情報において、複数のプリミティブ面によって前記物体を形成する手段を、前記装置に機能させるための情報と、前記輝度処理手段が、前記物体が前記基準向きに配置されたときの、当該物体を形成するプリミティブ面の頂点の法線ベクトル(例えば、本実施の形態における仮法線ベクトル)に基づいて、前記輝度処理を行うように、前記装置に機能させるための情報を含むこととしてもよい。
【0013】
ここで、プリミティブとは、コンピュータグラフィックスにおいて広く用いられる幾何形状(基本要素)の意であって、プリミティブ面とは、係る幾何形状の内、面を意味する。例えば、複数の頂点により形成されるポリゴンと呼ばれる平面も含む。
【0014】
また、請求項3に記載の発明のように、請求項1または2に記載の画像生成情報において、開口方向が非平行な眼孔部を複数有するとともに、各眼孔部に眼球を配置したキャラクタを前記仮想空間に配置するキャラクタ配置手段(例えば、図11のキャラクタ制御部112)を前記装置に機能させるための情報と、前記複数の眼孔部に配置される眼球それぞれを前記物体とするための手段を前記装置に機能させるための情報と、前記輝度処理手段が、前記複数の眼孔部に配置される眼球それぞれの向きに代えて、前記基準向きを用いて、前記眼球それぞれについて前記輝度処理を行う、ように前記装置に機能させるための情報と、を含むこととしてもよい。
【0015】
この請求項3に記載の発明によれば、キャラクタについて、眼球が配置される複数の眼孔部の開口方向が非平行となっている。そして、個々の眼球の輝度処理をする際には、眼球の向きに代えて、基準向きを用いて行う。顔面に対する目の占める割合の高い、目の大きいキャラクタの場合、頭部の形状に合わせて目(眼球)を配置すれば、目の開口方向が左右で非平行になり、現実世界における人の目の配置とは異なる。係るキャラクタを表現する際にも、人の目の眼球運動に基づく眼球の向きを基準向きとしてキャラクタの眼球の輝度処理を実行すれば、現実世界での目のハイライトと同等の違和感のないハイライトを実現することが可能となる。
【0016】
請求項4に記載の発明は、プロセッサによる演算・制御により、反射体と視点との位置関係に応じて当該反射体に映る被反射物を表現する反射表現手段と、前記反射体を含む仮想空間の画像を前記視点に基づいて生成する手段と、を前記プロセッサを備える装置に対して機能させるための画像生成情報であって、前記反射表現手段が、前記反射体の向きに代えて、前記反射体の基準向きを用いて当該反射体に映る被反射物を決定する、ように前記装置に機能させるための情報を含むことを特徴とする。
【0017】
請求項9に記載の発明は、反射体と視点との位置関係に応じて当該反射体に映る被反射物を表現する反射表現手段と、前記反射体を含む仮想空間の画像を前記視点に基づいて生成する手段と、を備える画像生成装置であって、前記反射表現手段は、前記反射体の向きに代えて、当該反射体の基準向きを用いて当該反射体に映る被反射物を決定することを特徴とする。
【0018】
この請求項4または9に記載の発明によれば、物体の表面に映る被反射物を決定する処理において、係る物体の向きに代えて、当該物体の基準向きを用いる。故に、仮想空間に配置する物体の位置および向きについて、従来に知られた反射の計算方法では実現することのないはずの反射を、係る従来に知られた計算方法を用いて実現することが可能となる。
【0019】
なお、反射の計算においては、物体表面の法線ベクトルを用いて計算を行うことが一般的である。故に、請求項5に記載の発明のように、請求項4に記載の画像生成情報において、複数のプリミティブ面によって前記物体を形成する手段を、前記装置に機能させるための情報と、前記反射表現手段が、前記反射体が基準向きに配置されたときの、当該反射体の頂点の法線ベクトルに基づいて、当該反射体に映る被反射物を決定する、ように前記装置に機能させるための情報を含むこととしてもよい。
【0020】
請求項6に記載の発明は、プロセッサによる演算・制御により、操作入力に応答してキャラクタをリアルタイムに動作させ、前記キャラクタが登場するゲームを実行する手段と、視点に基づいて前記キャラクタを含む仮想空間の画像を生成する手段と、を前記プロセッサを備える装置(例えば、図11のゲーム装置1)に機能させるためのゲーム情報であって、前記キャラクタが、開口方向が非平行な眼孔部を複数有するとともに、各眼孔部に眼球を配置して前記キャラクタを構成するキャラクタ構成手段と、前記各眼球にハイライトを描画する際に、前記各眼孔部に対する相対的に同じ位置にハイライトを描画するハイライト手段と、を前記装置に機能させるための情報を含むことを特徴とする。
なお、ゲーム情報とは、ゲーム装置等の電子計算機(コンピュータ)による処理の用に供する、プログラムに準じた情報の意である。
【0021】
請求項10に記載の発明は、操作入力に応答してキャラクタをリアルタイムに動作させ、前記キャラクタが登場するゲームを実行する手段と、視点に基づいて前記キャラクタを含む仮想空間の画像を生成する手段と、を備えるゲーム装置であって、前記キャラクタが、開口方向が非平行な眼孔部を複数有するとともに、各眼孔部に眼球を配置して前記キャラクタを構成するキャラクタ構成手段と、前記各眼球にハイライトを描画する際に、前記各眼孔部に対する相対的に同じ位置にハイライトを描画するハイライト手段と、を更に備えることを特徴とする。
【0022】
この請求項6または10に記載の発明によれば、仮想空間に配置するキャラクタは、開口方向が非平行な複数の眼孔部を有し、係る眼孔部にそれぞれ眼球が配置されている。係る眼球のハイライトを表現する際には、各眼孔部に対する相対的に同じ位置にハイライトを描画する。故に、現実世界における一般的な人に見られる目のハイライトと同様なハイライトを実現することが可能となる。
【0023】
なお、請求項7に記載の発明のように、情報記憶媒体に対して、請求項1から5の何れかに記載の画像生成情報または、請求項6に記載のゲーム情報を記憶することとしても良いことは勿論である。
【0024】
【発明の実施の形態】
以下に、本実施の形態について図面を参照して説明する。
なお以下では、家庭用のゲーム装置1により3次元の仮想空間を用いたゲームを実行する場合を例に説明する。また、以下では、人型キャラクタの眼球のハイライト(特に明るい部分や白く見える部分)を表現する場合を例に説明するが、以下の場合に限定する必要はない。
【0025】
図1は、家庭用のゲーム装置1の一例を示す図である。同図によれば、ゲーム装置1は、ディスプレイ2、ゲームコントローラ3,4等が着脱自在な構成になっている。また、ゲーム装置1に着脱自在な情報記憶媒体であるCD−ROM5、ICカード6、メモリカード7および、ゲーム装置1本体が備える情報記憶媒体等に、システムプログラムやゲームプログラム、ゲームデータ、本実施の形態を実現する為に必要な情報等のゲーム情報が格納されている。
【0026】
プレーヤは、ディスプレイ2に表示されるゲーム画像を見ながらゲームコントローラ3,4を操作して仮想空間内に存在するキャラクタの動作を指示したり、各種選択を行ってゲームを楽しむ。
【0027】
一方、ゲーム装置1の処理系は、ゲームコントローラ3,4から入力される信号やゲーム情報に基づいて、1フレーム毎に3次元の仮想空間の画像(ゲーム画像)を生成して、ディスプレイ2に表示させる。なお、仮想空間内には各種キャラクタやオブジェクトを配置し、ゲームコントローラ3,4から入力される信号やゲーム情報に基づいて、上記キャラクタやオブジェクトの存在位置や向き、動作等を1フレーム毎に決定する。
【0028】
さて、本実施の形態は、キャラクタの眼球のハイライトを尤らしく表現することを特徴としている。その際、ゲーム装置1の処理系は、仮想空間における光源とキャラクタの眼球との位置関係に応じた輝度処理を行って、キャラクタの目の妥当な部分を輝かせる。
【0029】
以下では、原則的に物体の輝度を次ぎのように決定する。
図2は、仮想空間における光源の光線ベクトルL14と、物体10の表面との位置関係の一例を示す図である。図2における(X,Y,Z)は、仮想空間の座標系(以下、ワールド座標系という)を示している。また、光線ベクトルL14の大きさは、大きさ”1”である。
【0030】
さて、物体10表面上の点12の輝度は、光線ベクトルL14の逆ベクトル(−L14´)と、点12における物体10の法線ベクトルN16(大きさ”1”)との内積(cosθ)によって決定する。このとき、内積の絶対値|cosθ|が1に近いほど物体10における点12の輝度が高く、内積の絶対値が0に近いほど輝度が低くなるように設定する。なお、この計算方法は、現実世界における拡散反射の概念とほぼ同等の計算方法である。
【0031】
また、本実施の形態では、ゲームに登場させるキャラクタの顔面における左右の目を比較的大きく表現する。
図3は、本実施の形態におけるキャラクタ20の顔面の一例を示す図である。図3によれば、キャラクタ20の右目22と左目24は、鼻26や唇28と比較して著しく大きい。このように左右の目22、24を大きく設定することで、キャラクタ20をかわいらしく、また幻想的に表現する。
【0032】
ところで人の頭部は一般にいびつな形状をしている。具体的に、頭部は、その前方の目が配置される部分は平面的であるものの、目尻から耳にかけて、更に耳から後頭部へと湾曲しており、頭部の水平断面は閉曲線を成している。
【0033】
図4(a)は、現実世界における一般的な人の頭部30について、左右の眼球32,34を含む水平断面を模式的に描いたものである。また(b)は、(a)に示す頭部30の正面(即ち顔面)の模式図である。一般的な人の眼孔部(即ち、眼球が配置される頭部の穴)は左右それぞれ頭部前方に配置されており、尚且つ、その開口面は左右で略平行となっている。
【0034】
ここで、眼孔部の開口面とは、まぶたを開いたときのいわゆる目の縁(目の輪郭線)を含む面の意である。なお以下では、まぶたを開いたときに頭部表面に現れる眼球の部分を単に「目」という。また、眼孔部の開口面、即ち目の縁は、厳密には平面的ではないが、以下では説明の簡便化のため平面的なものとし、係る眼孔部の開口面を眼孔開口面という。
【0035】
なお、図4(a)においては、直線32hが眼球32に対する眼孔開口面を示し、直線34hが眼球34に対する眼孔開口面を示しており、左右の眼孔開口面32h,34hは略平行に配置されている。このとき、左右の目32´,34´における相対的に同等な部分の法線ベクトルは、それぞれ略平行な向きを指している。例えば、図4(a)、(b)に示す頭部30の左目34´の中心にある点38の法線ベクトル42と、右目32´の中心にある点36の法線ベクトル40は、略平行になっている。故に、上記拡散反射の計算方法によって眼球のハイライトを計算すれば、各眼球に平行な光線を投射したとき、左右の目の同等な部分が同様に輝くことがわかる。
【0036】
一方、図3に示したように、キャラクタの左右の目22、24を現実世界における人の平均的な目のサイズよりも大きく設定した場合、眼球の大きさと頭部の形状との関係上、左右の眼孔開口面の向きは平行にならず、それぞれ略放射した方向を向くこととなる。
【0037】
図4(c)は、目の大きいキャラクタの左右の眼球52,54を含む頭部50の水平断面を模式的に描いたものである。また(d)は、(c)に示す頭部50の正面(即ち顔面)の模式図である。(c)においては、直線52hが眼球52に対する眼孔開口面を示し、直線54hが眼球54に対する眼孔開口面を示している。このように、左右の眼球を比較的大きく設定し、頭部の形状に合わせて各眼球を配置すると、左右の眼孔開口面52h,54hは非平行となる。従って、左右の目52´,54´における相対的に同一な部分の法線ベクトルは、それぞれ異なる方向を向くこととなる。例えば、図4(d)に示す頭部50の左目54´の中心にある点58の法線ベクトル72と、右目52´の中心にある点56の法線ベクトル70は、互いに異なる方向を向いている。
【0038】
この場合において、平行な光線ベクトルに対する各眼球の輝度を、上記計算方法に基づいて決定すれば、左右の各眼球がばらばらな光り方をすることとなる。例えば、図4(c)、(d)において、左目54´の中心点58における法線ベクトル72は、右目52´の中心点56の法線ベクトル70とは異なる向きを指すが、右目52´の中心からずれた点60の法線ベクトル74と略平行になっている。故にこれらの眼球に平行な光線ベクトルを投射したときに、左目54´の中心58の輝度が高ければ、それと法線ベクトルの向きが等しい右目52´の位置60の輝度が高くなり、左右の目52´、54´の異なる部分が輝くこととなる。
【0039】
このように、目の大きいキャラクタを表現する場合において、上述の計算方法に基づいて眼球の輝度を決定すると、現実の世界における人の目のハイライトとは異なるハイライトを表現することとなり、ゲーム画像を見るプレーヤに対して違和感を与える恐れがある。
【0040】
このとき、目の大きさに合わせて頭部を大きく設計すれば、目の配置が一般的な人の目の配置と同等になるが、目が大きいというキャラクタの特徴が消滅する。また、頭部の形状を変えずに左右の眼孔開口面の向きが平行となるように設計すれば、目が飛び出たようになり、若しくは目が落ち窪んだようになり、キャラクタの美観が損なわれる。
【0041】
そこで、本実施の形態では、左右の眼孔開口面が略平行となる状態、即ち、左右の目が頭部前方に略平行に配置されたと仮定したときの眼球の向きを基準向きとし、係る基準向きに配置された眼球の法線ベクトルを用いて、実際の向きに配置された眼球の輝度処理を行う。なお、眼球の向きとは、瞳孔(本来、瞳孔は面であるが、ここでは黒目における中心点とする)の法線ベクトルの向きを指すこととする。
【0042】
但し一般的に、眼球は、目の縁(輪郭)内を上下左右に自由に移動させ得るものであるから、キャラクタの眼球についても、眼孔開口面の向きに関わらずゲーム実行中に自由に眼球の向きを変更できるようにしてもよい。これに伴い、本実施の形態では、「基準向き」を、キャラクタの頭部や仮想空間に対して絶対的に定めるのではなく、実際の眼球のあらゆる向きに対する相対的な向きとして設定する。
【0043】
以下に、本実施の形態における「基準向き」の定義を説明する。
図5は、眼球の「実際の向き」と「基準向き」との関係を説明する為の図である。
図5(a)は、実際の眼孔開口面の向きと、理想的な眼孔開口面の向きの関係を示す図であり、頭部の水平断面を示している。(a)において、頭部における鼻頭と後頭部とを結ぶ直線80と垂直に交わる直線54h´が理想的な眼孔開口面を示し、頭部に沿って引かれた直線54hが、眼球54の実際の眼孔開口面を示している。(a)によれば、実際の眼孔開口面54hと理想的な眼孔開口面54h´は、角度ψを成している。以下では、係る角度を「変移角」という。
【0044】
図5(b)は、(a)に示す設定のもとでの、左目54´における黒目の位置に対する、眼球54の「実際の向き」と「基準向き」との関係を示す図である。(b)において、眼球の実際の向きをDで表記し、対応する眼球の基準向きをDSによって表記する。また、各向きD、DSは、頭部の形状を定義するための座標系(xH,yH,zH)における向きを示している。
【0045】
さて、本実施の形態では、眼孔開口面の実際の配置と理想的な配置とで、「目の縁」に対する黒目の位置が等しくなるように、眼球の「実際の向き」と「基準向き」とを対応付ける。
【0046】
具体的に図5(b)を参照して、黒目を左目54´の中央に配置する場合を例に説明する。実際の左目54´の向き(即ち、眼孔開口面54hの向き)に対しては、瞳孔の法線ベクトルが眼孔開口面54hに垂直となるように眼球54を配置すれば、黒目を左目54´の中央に配置できる。同様に、理想的な左目54´の向き(即ち、理想的な眼孔開口面54h´の向き)に対しては、瞳孔の法線ベクトルが眼孔開口面54h´に垂直となるように眼球54を配置すれば、黒目を目の縁54´の中央に配置できる。このように、瞳孔(黒目)が目の同等な部分に位置するように、「実際の向き」と「基準向き」とを対応付ける。
即ち本実施の形態では、基準向きDSを、「頭部の鉛直方向(図5(b)におけるyHの方向)を軸として眼球の実際の向きDを±ψ回転させたもの」として定義する。ここで、符号+はzH−xH平面における左回りを意味し、符号−は右回りを意味する。例えば、眼球54の場合には、符号は−となる。
【0047】
この「基準向き」の定義によれば、眼球の法線ベクトルを変移角ψの分だけ傾けて設定すれば、眼球を何れの向きに配置しても、必ず基準向きに配置された場合の法線ベクトルを用いた輝度処理を行うことができる。以下では、眼球の法線ベクトルを変移角ψの分だけ傾けたベクトルを、仮法線ベクトルという。
【0048】
図6(a)は、眼孔開口面52h´、54h´が理想的な位置に配置された場合の、眼球の各頂点の法線ベクトルを示す図である。また、(b)は、実際の向きに眼孔開口面52h、54hが配置された場合の、眼球の各頂点の仮法線ベクトルを示す図である。なお、(a)に示す眼球も、(b)に示す眼球も、いずれも黒目が目の中央に位置するための方向を向いている。即ち、(a)に示す眼球の向きは、(b)に示す眼球の向きに対する基準向きとなっている。
【0049】
図6(a)によれば、左右の眼球52,54上の相対的に同一な部分の法線ベクトルはそれぞれ略平行となっている。例えば、右目52の左方向の点PR1における法線ベクトルNR1は、左目54の左方向の点PL1における法線ベクトルNL1と略平行であり、同様に、右目52中央の点PR2の法線ベクトルNR2は、左目54中央の点PL2の法線ベクトルNL2と略平行に、右目52の点PR3の法線ベクトルNR2は、左目54の点PL3の法線ベクトルNL3と略平行になっている。
【0050】
一方、図6(b)によれば、眼球上の各点PR1〜点PR3、点PL1〜点PL3の仮法線ベクトルは、眼球が基準向きに配置されたときの法線ベクトルNR1〜NR3、NL1〜NL3と一致する。故に、左右の眼球52,54の相対的に同一な部分の仮法線ベクトルはそれぞれ略平行な向きとなり、係る仮法線ベクトルを用いて輝度計算を行えば、現実世界における人の目のハイライトと何ら変わることないキャラクタの目のハイライトを表現することができる。
【0051】
ところで、本実施の形態では、眼球の形状をポリゴンモデルによって定義する。また、輝度の計算は、各ポリゴンを形成する頂点の一つ一つに対して実行する。具体的には、各頂点に予め基調色と光彩色とを設定し、ゲーム実行中に、上記計算方法に基づいて頂点の輝度を算出し、係る輝度に基づいて頂点の基調色と光彩色の合成率を決定し、頂点の色を決定する。また、ポリゴンの表面全体の色は、各頂点の色を補間して決定する。
【0052】
図7は、眼球のポリゴンモデル(以下、眼球モデルという)の一部を示す図であり、頭部の形状に従って眼球モデル92,94を配置し、頭部から俯瞰したときの一例を示している。なお、本実施の形態では、各眼球モデル92,94を球形状ではなく、図7に示す形状とする。これは、左右の各眼球を、それぞれ瞳孔部分における垂線に対して垂直に切断したときの、瞳孔を含む側の部分である。以下では、係る眼球の切断面96,98を、便宜上、眼球底面という。
【0053】
本実施の形態では、眼球モデルにおける頂点の一つ一つに対して仮法線ベクトルを設定する。
【0054】
なお、頭部の形状に合わせて配置された眼球モデルの各頂点には、当該眼球モデルの法線ベクトルを変移角ψだけ傾けたものを、仮法線ベクトルとして設定するわけであるが、各頂点の法線ベクトルは、その頂点を含む全てのポリゴンの法線ベクトルを平均したものとする。例えば、図8における、六つの三角形のポリゴンS1〜S6に含まれる頂点pの法線ベクトルは、各ポリゴンS1〜S6の各法線ベクトルの平均によって決定する。
【0055】
次ぎに、各眼球モデルを定義する座標系(x,y,z)における仮法線ベクトルの向きについて説明する。以下では、眼球モデルを定義する為の座標系を眼球座標系という。
【0056】
図9(a)は、図7に示した左目の眼球モデル94の断面を示す模式図である。なお、眼球座標系の原点oは、眼球底面98の中心にあることとし、(a)に示す断面は、眼球座標系の原点oと瞳孔P3を含む断面である。更に、(a)においては、眼球座標系のz軸が眼球底面98と垂直の関係にあり、y軸の正方向を眼球モデル94における上向きとする。さて、眼球モデル94における頂点P1の法線ベクトルはN1であり、頂点P2の法線ベクトルはN2であり、頂点P3の法線ベクトルはN3であり、頂点P4の法線ベクトルはN4であり、頂点P5の法線ベクトルはN5である。
【0057】
このとき、図5(a)に示したように、眼孔開口面の変移角がψである場合には、眼球座標系における眼球モデル94および仮法線ベクトルを、図9(b)若しくは(c)に示すように設定する。
【0058】
図9(b)は、眼球座標系において、(a)に示す眼球モデル94を変移角ψだけy軸周りの正方向(左回り)に回転させた一例を示す図である。この場合には、y軸回転変換前の各頂点P1〜P5の法線ベクトルN1〜N5(即ち(a)に示す各頂点の法線ベクトル)をそのまま、回転変換後の各頂点P´1〜P´5の仮法線ベクトルとして設定する。
【0059】
図9(c)は、眼球座標系において、眼球モデル94の向きを維持させたままで、各頂点P1〜P5の法線ベクトルの向きを変移角ψだけy軸方向を軸として負方向(左回り)に回転させた一例を示す図である。この場合には、各頂点P1〜P5の一つ一つについて、対応する法線ベクトルN1〜N5をy軸回転させて、その回転後の各ベクトルN´1〜N´5を各頂点の仮法線ベクトルとして設定する。
【0060】
図10は、仮法線ベクトルを用いた場合と、通常の法線ベクトルを用いた場合の描画結果の比較を示す図である。なお、左右二つのキャラクタ82,84は、頭部に対する左右の眼球の配置構成が等しい。また、図10は、各キャラクタ82,84にそれぞれに平行光線を投射して描画したものである。但し、左側のキャラクタ82については、上記仮法線ベクトルを用いて眼球の輝度処理を行い、右側のキャラクタ84については、通常の法線ベクトルを用いて眼球の輝度処理を行った。その結果、左側のキャラクタ82では、左右の目の図中右方にハイライトが表現されているのに対し、右側のキャラクタ84では、左右の目のハイライトが異なる位置に表現されている。このように、目の大きいキャラクタについて、眼球の法線ベクトルを用いて輝度処理をすれば、違和感の有るハイライトを表現することとなるが、仮法線ベクトルを用いて輝度処理を行うことで、尤らしいハイライトを表現することが可能となる。
【0061】
本実施の形態におけるゲーム装置1の機能構成について説明する。
図11は、ゲーム装置1の機能ブロックの一例を示す図である。
図11によれば、ゲーム装置1は、処理部100と、入力部200と、表示部300と、情報記憶媒体400と、一時記憶部500と、を備える。
【0062】
処理部100は、システム全体の制御、システム内の各機能部への命令の指示、入力部200から入力される操作信号や情報記憶媒体400に記憶されたゲーム情報410に基づいてゲームを進行するための処理の他、画像処理、音処理等の各種処理を行うものであり、その機能は、各種プロセッサ(CPU、DSP等)やASIC(ゲートアレイ等)等のハードウェア、あるいは所与のプログラムにより実現できる。また、処理部100は、主に、ゲーム演算部110と画像生成部120とを含み、入力部200から入力される操作信号に応じた処理をゲーム演算部110に実行させ、更に、その処理結果に基づく画像を画像生成部120に生成させる。
【0063】
ゲーム演算部110は、ゲームにおける各種選択用の画面の設定処理や、ゲームの進行処理、仮想空間に存在する各キャラクタやオブジェクト等の座標、向き、動作などを決定する処理、視点の位置および向きを決定する処理、などの種々のゲーム処理を実行する。なお、これらの処理は、入力部200から入力される操作信号や、情報記憶媒体400に格納されたゲーム情報410に基づいて実行する。また、ゲーム演算部110は、キャラクタ制御部112を含み、情報記憶媒体400に格納されたゲーム情報410に基づいて機能させる。
【0064】
画像生成部120は、ゲーム演算部110によって決定された情報に基づいて1フレーム毎にゲーム画像をリアルタイムに生成する処理を実行するものであり、CPU、DSP、画像生成専用のIC、メモリなどのハードウェアにより構成される。具体的には、画像生成部120は、前方・後方クリッピングを実行して仮想空間のビューボリューム(視点から投影面を通して見える仮想空間の範囲)を決定する処理、ワールド座標系における各キャラクタやオブジェクトの座標を視点の座標に基づいて2次元座標系(投影面)へと変換する処理、個々のオブジェクトを順次描画してゲーム画像を生成する処理、などを1フレーム毎に実行してゲーム画像を生成する。そして、生成したゲーム画像を必要なタイミング(即ち、1フレーム間隔)で表示部300に出力して表示させる。
【0065】
また、画像生成部120は、各モデルの頂点の輝度を決定する処理を実行する輝度処理部122を含み、情報記憶媒体400に格納されるゲーム情報410に基づいて機能させる。
【0066】
入力部200は、図1に示したゲームコントローラ3,4に相当する機能部であって、プレーヤの操作入力を電気信号として処理部100に出力するものである。なお、入力部200は、図1に示したようなゲームコントローラ3,4だけでなく、キーボードなどの汎用の入力装置、マウス、トラックボール、ジョイスティック等の入力手段を用いてもよい。
【0067】
表示部300は、図1に示すディスプレイ2に相当する機能部であり、処理部100から入力される指示に従って、画像生成部120が生成するゲーム画像を逐次表示する。なお、表示部300は主にコンピュータなどに接続されるディスプレイにより実現しても良いし、TV放送を表示する際に主に用いられるディスプレイによって実現してもかまわない。
【0068】
情報記憶媒体400は、本実施の形態におけるゲーム装置1の駆動に係るシステムプログラムやデータ、ゲームを実現する為に必要なゲーム情報410などを記憶するものであり、CD−ROM、MO、DVD、メモリ、ハードディスク等のハードウェアにより実現できる。
【0069】
なお、ゲーム情報410には、ゲーム演算部110を機能させる為に必要な情報が含まれる。具体的には、ゲームシナリオや、仮想空間に配置する各オブジェクトの情報、入力部200から入力される操作信号に応じて各オブジェクトやキャラクタの動作を決定する為の情報、ゲームの得点を算出するための情報、ゲーム時間を計時するための情報、キャラクタ制御部112を機能させる為のキャラクタ制御プログラム420、などが含まれる。
【0070】
また、ゲーム情報410には、画像生成部120が機能する為に必要な情報が含まれる。即ち、ゲーム演算部110による処理結果に基づいて画像生成部120が1フレーム毎にゲーム画像を生成するためのプログラムが含まれる。例えば、仮想空間におけるオブジェクトやキャラクタの座標をワールド座標系から視点に基づく2次元座標系に変換する処理を実現する為の情報、輝度処理部122が輝度処理を行う為の輝度処理プログラム430、などが含まれる。
更に、ゲーム情報410には、キャラクタモデルデータ440と、眼球モデルデータ450とが含まれる。
【0071】
キャラクタモデルデータ440とは、キャラクタを構成する各部位モデル(例えば、頭部、胴体部、腕部、といった部位のモデル)のデフォルトの位置関係を定義するための情報である。
【0072】
また、キャラクタモデルデータ440には、頭部モデルに対する眼球モデルの位置およびデフォルトの向きが記憶されている。正確には、頭部モデルに対する、眼球座標系の原点の位置、および眼球座標系における各座標軸のデフォルトの方向等が設定されている。例えば、図9(b)に示すように、眼球座標系における眼球モデルを変移角ψの分だけ傾けて設定した場合には、キャラクタモデルデータ440には、眼球座標系のz−y平面を頭部モデルの鼻頭と後頭部とを結ぶ平面と平行に配置するための情報が含まれる。また、図9(c)に示すように、瞳孔の法線ベクトルがz軸(眼球座標系)と平行に設定されている場合には、キャラクタモデルデータ440には、眼球座標系のz−y平面が、鼻頭と後頭部とを結ぶ平面と変移角ψを成す(鋭角が)ように配置するための情報が含まれる。即ち、キャラクタ制御部112は、ワールド座標系における頭部モデルの配置を決定した後、キャラクタモデルデータ440に基づいてワールド座標系における眼球モデルの配置を決定する。
【0073】
眼球モデルデータ450とは、眼球モデルの形状を定義する為の情報であり、頂点データ452と、ポリゴンデータ454を含む。
【0074】
図12は、頂点データ452の格納形式の一例を示す図である。図12によれば、頂点データ452には、眼球モデルを形成する各頂点を識別するための頂点No.と、眼球座標系における各頂点の座標と、眼球座標系における各頂点の仮法線ベクトルと、各頂点の基調色情報(RK,GK,BK)と、光彩色情報(RL,GL,BL)とがそれぞれテーブル形式で記憶されている。
【0075】
ここで、基調色情報とは、該当する頂点に光が投射されていないときの、頂点のベースの色を意味する。また、光彩色情報とは、該当する頂点に光を投射したときの輝きの色を意味する。なお、Rは赤、Gは緑、Bは青、の各原色の濃淡値を示している。
【0076】
図13は、ポリゴンデータ454の格納形式の一例を示す図である。図13によれば、ポリゴンデータ454には、各ポリゴンを識別する為のポリゴンNo.と、各ポリゴンを構成する頂点の頂点No.とがテーブル形式で記憶されている。
【0077】
一時記憶部500は、処理部100の作業領域として用いられる記憶部であり、処理部100による演算結果や、入力部200から入力される操作情報、情報記憶媒体400から読み出したデータやプログラムなどを一時的に記憶する機能部である。具体的には、各キャラクタの座標、向き、動作内容などを記憶したり、ゲーム得点を記憶したり、処理部100により生成された画像情報を記憶したりする。また、一時記憶部500は、RAMやVRAMなどのハードウェアにより実現されるものである。
【0078】
なお、ゲーム演算部110に含まれるキャラクタ制御部112は、入力部200から入力される操作信号や、情報記憶媒体400に記憶されるキャラクタ制御プログラム420に基づいて、仮想空間(ワールド座標系)におけるキャラクタの位置、向き、ポーズ、動作を決定する機能部である。
【0079】
より詳細には、キャラクタ制御部112は、まず、キャラクタの座標系(キャラクタ座標系)内で、キャラクタの形状を決定する。その際、キャラクタモデルデータ440に含まれる各部位モデルのデフォルトの位置関係と、入力部200から入力される操作信号などに基づいて、各部位モデルを回転させたり、平行移動させることによって、キャラクタ座標系における、キャラクタの形状を特定する為の各頂点の座標を決定する。
【0080】
一方で、キャラクタ制御部112は、入力部200から入力される操作信号やゲーム情報410に基づいて、ワールド座標系におけるキャラクタの代表点の座標および向きを決定する。そして、その決定したキャラクタの代表点の座標および向きに基づいて、キャラクタ座標系における各頂点の座標を、ワールド座標系に変換する。
【0081】
また、キャラクタ制御部112は、キャラクタモデルデータ440に基づいて、ワールド座標系における頭部モデルの座標および向きを決定すると、更にその決定情報に基づいて、ワールド座標系における眼球モデルの代表点の座標および向きを決定する。また、眼球モデルデータ450に基づいて、眼球座標系における眼球モデルの各頂点の座標を決定するとともに、各頂点の座標を、眼球モデルの代表点の座標に基づいて、眼球座標系からワールド座標系に変換する。
【0082】
また、画像生成部120に含まれる輝度処理部122は、眼球モデルの各頂点の仮法線ベクトルと、基調色情報、光彩色情報、および、ワールド座標系における光線ベクトルと、に基づいて、各頂点の色情報を決定する機能部である。
具体的には、キャラクタ制御部112によって、ワールド座標系における眼球モデルの各頂点の座標を決定すると、係る頂点における仮法線ベクトルNと、光線ベクトルLとの内積N・Lを算出して、輝度γ(=|N・L|)を決定する。そして、基調色情報(RK,GK,BK)と光彩色情報(RL,GL,BL)の各色成分を輝度γに基づいて合成し、係る頂点の色情報(R,G,B)を決定する。
R=RK・(1−γ)+RL・γ …(1)
G,Bについても同様に行う。
【0083】
以下に、眼球モデルにおける各頂点の色を決定する処理を説明する。
図14は、眼球輝度処理を説明するためのフローチャートである。
以下に示す処理は、キャラクタ制御部112と輝度処理部122がゲーム情報410に基づいて、1フレーム毎に、左右の眼球モデルに対してそれぞれ実行する処理である。
【0084】
図14によれば、キャラクタ制御部112は、まず、ワールド座標系における眼球モデルの代表点の位置および向きを決定する(ステップS1;図15(a))。より正確には、ワールド座標系における、眼球座標系の原点210の座標と、各座標軸(x軸、y軸、z軸)の方向を決定する。
【0085】
そして、ワールド座標系における眼球座標系の原点の座標と各座標軸の方向とに基づいて、眼球モデルの各頂点の座標を、眼球座標系からワールド座標系へと変換する(ステップS2;図15(b))。更に、ワールド座標系における眼球座標系の各座標軸の方向に基づいて各頂点の仮法線ベクトルを、ワールド座標系における向きに変換する(ステップS3;図15(c))。なお、ステップS2、S3にて決定したワールド座標系における各頂点の座標と、仮法線ベクトルの向きは、変換後頂点データ510として一時記憶部500に記憶する。
【0086】
図16は、変換後頂点データ510の格納形式の一例を示す図である。図16によれば、変換後頂点データ510には、頂点No.と、ワールド座標系への変換後の頂点の座標と、変換後の仮法線ベクトルとがテーブル形式で記憶されている。
【0087】
眼球モデルにおける全ての頂点について、ワールド座標系における座標と、仮法線ベクトルの向きを決定すると、輝度処理部122が各頂点の色を決定する処理を開始する。
【0088】
まず、輝度処理部122は、一時記憶部500に記憶された変換後頂点データ510の中から、未処理の頂点No.を抽出する(ステップS4)。そしてその抽出した頂点No.に対応する仮法線ベクトルを読み出す(ステップS5)。
【0089】
更に、その読み出した仮法線ベクトルと、ワールド座標系における光線ベクトルの内積を算出し(ステップS6)、その内積結果に基づいて、基調色情報と輝度色情報を合成して該当する頂点に与える色情報を決定する。決定した色情報は、頂点色情報データ520として頂点No.と対応付けて一時記憶部500に格納する(ステップS7)。
【0090】
図17は、頂点色情報データ520の格納形式の一例を示す図である。図17によれば、頂点色情報データ520には、頂点No.と色情報とがテーブル形式で記憶されている。
【0091】
該当する頂点の色情報を一時記憶部500に記憶すると、変換後頂点データ510に記憶された全ての頂点について色情報を決定したか否かを判定し(ステップS8)、未処理の頂点が存在する場合には、ステップS4に戻って処理を繰り返す。一方、全ての頂点について色情報を決定する処理が終了した場合には、本処理を終了する。
【0092】
なお、眼球モデルを形成するポリゴンを描画する際には、3次元のワールド座標系から2次元座標系(投影面)へと各頂点の座標を変換し、更に各頂点の色情報を線形補間することによって、ポリゴンを描画する。例えば、図18に示すような、頂点p1〜p3によって形成されるポリゴン220内の点222の色を決定する際には、次ぎのように計算する。まず、線分p1−p2上の点p12の色を、頂点p1とp2の色情報を線形補間することによって決定する。同様に、線分p1−p3上の点p13の色を、頂点p1とp3の色情報を線形補間することによって決定する。更に、線分p12−p13上の点222の色を、頂点p12とp13の色情報を線形補間することによって決定する。
【0093】
即ち、画像生成部120は、図13に示したポリゴンデータ454の中から各ポリゴンを構成する頂点の頂点No.を読み出し、一時記憶部500に記憶された変換後頂点データ510の中からその頂点No.に対応する座標(ワールド座標系)を読み出す。更に、その頂点の座標を、ワールド座標系から2次元座標系(投影面の座標系)へと変換するとともに、眼球輝度処理にて決定した各頂点の色情報を一時記憶部500に記憶された頂点色情報データ520の中から読み出して、係るポリゴンの描画を実行する。
【0094】
次に、ゲーム装置1のハードウェア構成について説明する。
図19は、本実施の形態を実現可能とするハードウェア構成の一例を示す図である。同図によればゲーム装置1には、CPU600、RAM602、ROM604、情報記憶媒体606、画像生成IC608、音生成IC610、I/Oポート612,614が、システムバス616により相互にデータ入出力可能に接続されている。そして、画像生成IC608には、表示装置618が接続され、音生成IC610には、スピーカ620が接続され、I/Oポート612には、コントロール装置622が接続され、I/Oポート614には、通信装置624が接続されている。
【0095】
ROM604は、ゲーム装置1本体の初期化情報、ゲーム装置1本体の各部を機能させるための基本情報などが記憶されている。なお、情報記憶媒体606は、図11に示す機能ブロックにおける情報記憶媒体400に相当するものであり、ゲーム情報410や、本実施の形態におけるゲームに登場する各キャラクタやオブジェクトなどを表現する為のモデルデータやテクスチャデータなどを記憶する他、その他各種画像データ、音データ、プレイデータ等を格納する。また、ゲーム情報410等を記憶する情報記憶媒体として、CD−ROM、ゲームカセット、DVD、メモリカードなどが用いられる。なお、業務用のゲーム装置により本実施の形態を実現する場合には、ゲーム情報410等を記憶する情報記憶媒体をROMなどのハードウェアにより実現でき、この場合には情報記憶媒体606はROM604になる。また、パーソナルコンピュータにて本実施の形態を実現する場合には、CD−ROM、DVD、ROM等のメモリやハードディスク等が用いられる。
【0096】
コントロール装置622は、図1に示したようなゲームコントローラ3,4に相当するものであり、プレーヤがゲーム進行に応じて行う判断の結果を装置本体に入力するための装置である。
【0097】
CPU600は、情報記憶媒体606に格納されるプログラム、ROM604に格納されるシステムプログラム(装置本体の初期化情報等)、コントロール装置622によって入力される信号等に従って、装置全体の制御や各種データ処理を行う。RAM602は、このCPU600の作業領域等として用いられる記憶手段であり、情報記憶媒体606やROM604の所与の内容、あるいはCPU600の演算結果が格納される。なお、RAM602は、図11に示した機能ブロックにおける一時記憶部500に相当する働きをする。
【0098】
更に、この種の装置には、音生成IC610と画像生成IC608とが設けられていて、ゲーム音やゲーム画像の好適な出力が行えるようになっている。音生成IC610は、情報記憶媒体606やROM604に記憶される情報に基づいて効果音やバックグラウンド音楽等のゲーム音を生成する集積回路であり、生成されたゲーム音は、スピーカ620によって出力される。また、画像生成IC608は、RAM602、ROM604、情報記憶媒体606等から出力される画像情報に基づいて表示装置618に出力するための画素情報を生成する集積回路である。また表示装置618は、CRTやLCD、TV、プラズマディスプレイ、プロジェクター等により実現される。
【0099】
また、通信装置624は、ゲーム装置1の内部で利用される各種の情報を外部とやり取りするものであり、他のゲーム装置と接続されてゲーム情報410に応じた所与の情報を送受し、また、通信回線を介してゲーム情報410等の情報を送受すること等に利用される。
【0100】
また、図1〜図18で説明した種々の処理は、図14のフローチャートに示したゲーム実行中の処理等を行うためのプログラムを含むゲーム情報410を格納した情報記憶媒体606と、該プログラムに従って動作するCPU600、画像生成IC608、音生成IC610等によって実現される。なお、画像生成IC608、音生成IC610等で行われる処理は、CPU600あるいは汎用のDSP等によりソフトウェア的に行ってもよい。
【0101】
なお、本実施の形態は、図1に示した家庭用のゲーム装置1だけでなく、他のいかなる形態のゲーム装置に適用してもかまわない。例えば、図20に、ホスト装置700と、このホスト装置700と通信回線702を介して接続される端末704−1〜704−nとを含むゲーム装置に本実施の形態を適用した場合の例を示す。
【0102】
図20に示す形態の場合、図11に示した情報記憶媒体400に記憶されるゲーム情報410等は、例えば、ホスト装置700が制御可能な磁気ディスク装置、磁気テープ装置、メモリ等の情報記憶媒体706に格納されている。また、端末704−1〜704−nが、CPU、画像生成IC、音生成IC、を有し、スタンドアローンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置700からは、ゲーム画像、ゲーム音を生成するためのゲーム情報410等が端末704−1〜704−nに伝送される。一方、スタンドアローンで生成できない場合には、ホスト装置700がゲーム画像、ゲーム音を生成し、これを端末704−1〜704−nに伝送し端末において出力することになる。
【0103】
あるいは、図21に示すように、本実施の形態を業務用ゲーム装置800に適用してもよい。この業務用ゲーム装置800は、プレーヤがスピーカ802から出力される音を聞きながら、操作ボタン804を操作することによって、ディスプレイ806に表示される所与のキャラクタを操作して所与のゲームを楽しむ装置である。業務用ゲーム装置800に内蔵されるシステム基板808には、CPU、画像生成IC、音生成IC、RAM、ROM、およびゲーム情報410を記憶する情報記憶媒体であるメモリ810などが実装されている。そして、CPUによって上記図1〜図18を用いて説明した各種処理を実行して、ゲームを実現する。
【0104】
なお、上記実施の形態では、眼球モデルを基準向きに配置した際の法線ベクトルに基づいて輝度処理を行うこととした。しかし、この場合に限定する必要はなく、基準向きに配置した際の法線ベクトルを用いて、他の光学計算(例えば、光の反射や透過の計算)を行っても良いし、リフレクションマッピングなどの処理を行っても良いことは勿論である。
【0105】
例えば、光線追跡法として知られる方法では、通常、物体Aの法線ベクトルと、視点の視線ベクトルとの内積を算出して、視線ベクトルの反射方向を決定し、その視線の反射方向に存在する物体Bを、物体Aの表面上に表現することによって、物体Aの反射を表現している。そこで、眼球の反射を表現する際には、図9を用いて説明したような仮法線ベクトルを眼球の各頂点に設定し、図22に示すように、眼球モデルの頂点900の仮法線ベクトル902と、視点904の視線ベクトル906との内積によって、視線ベクトル906の反射方向908を算出し、係る反射方向908に存在するオブジェクトを判定して眼球表面に表示するようにしてもよい。
【0106】
或いは、図9を用いて説明したような仮法線ベクトルを用いて、リフレクションマッピングを行っても良い。通常、リフレクションマッピングとして知られる方法では、視点周辺の環境を表す環境テクスチャを生成するとともに、物体Aの各頂点の法線ベクトルと、視点の視線ベクトルとの内積を各頂点毎に算出し、各頂点における視線ベクトルの反射方向を決定する。そして、各頂点における視線ベクトルの反射方向に該当する環境テクスチャの範囲を物体Aの表面にマッピングしている。
【0107】
そこで、リフレクションマッピングを用いて眼球の反射を表現する際には、図23に示すように、眼球モデルの各頂点910、912、914の仮法線ベクトル920,922,924と、視点930の視線ベクトルの内積をそれぞれ計算して、視線ベクトルの反射方向を決定する。そして、各頂点910、912、914における視線ベクトルの反射方向に該当する環境テクスチャ940の範囲942を決定して、眼球モデルの該当するポリゴンにマッピングする。
【0108】
或いは、より単純に、光線ベクトルの反射方向を決定する際に、上述の仮法線ベクトルを用いて決定しても良い。また、上記仮法線ベクトルを用いて、フォン・シェーディングを行っても良いことは勿論である。
【0109】
これらの処理によって、図3に示したような目の大きいキャラクタについても、左右の眼球に対して、相対的に同等な位置に同じ環境の画像を表現することが可能となる。
【0110】
なお、本実施の形態では、頂点の法線ベクトルを算出する際に、係る頂点を含む全てのポリゴンの面における法線ベクトルの平均を設定することとして説明したが、これに限定する必要はない。
【0111】
また、上記実施の形態では、眼球のハイライトを尤らしく表現する場合を例に説明したが、眼球に限定する必要はない。また、本実施の形態は、家庭用、業務用のゲーム装置のみならず、シミュレータ、ディスプレイに画像表示してアトラクションを実行するタイプの大型アトラクション装置、パーソナルコンピュータ、マルチメディア端末、ゲーム画像を生成するシステム基板等の種々の画像生成装置にも適用できる。
【0112】
【発明の効果】
本発明によれば、物体の輝度処理をする際、若しくは、物体表面に映る被反射物を決定する際に、係る物体の向きに代えて、当該物体の基準向きを用いる。故に、仮想空間に配置する物体の位置および向きについて、従来に知られた輝度処理、反射処理の方法では実現することのないはずの輝きや反射を、係る従来に知られた処理の方法を用いて実現することが可能となる。
【図面の簡単な説明】
【図1】本実施の形態における家庭用のゲーム装置の外観例を示す図である。
【図2】輝度の決定方法について説明する為の図である。
【図3】目の大きいキャラクタの顔面の一例を示す図である。
【図4】(a)は、一般的な人の頭部の断面図である。(b)は、(a)に示す頭部の正面図である。(c)は、目の大きいキャラクタの頭部の断面図である。(d)は、(c)に示す頭部の正面図である。
【図5】(a)は、理想と実際の眼孔開口面の配置例を示す図である。(b)は、眼球の「実際の向き」と「基準向き」との関係を説明する為の図である。
【図6】(a)は、左右の眼球をそれぞれ基準向きに配置した一例を示す図である。(b)は、左右の眼球を頭部の形状に合わせて配置した一例を示す図である。
【図7】眼球モデルの一例を示す図である。
【図8】六つのポリゴンに含まれる頂点の一例を示す図である。
【図9】(a)は、図6に示す眼球モデルのx−z断面を示す図である。(b)は、(a)に示す眼球モデルをy軸周りにψ回転させた一例を示す図である。(c)は、各頂点の法線ベクトルをy軸周りに−ψ回転させた一例を示す図である。
【図10】仮法線ベクトルを用いて眼球を描画した例と、通常の法線ベクトルを用いて描画した例を示す図である。
【図11】本実施の形態におけるゲーム装置の機能ブロックの一例を示す図である。
【図12】頂点データの格納形態の一例を示す図である。
【図13】ポリゴンデータの格納形態の一例を示す図である。
【図14】眼球輝度処理を説明するためのフローチャートである。
【図15】(a)は、ワールド座標系に眼球座標系を配置した模式図である。(b)は、ワールド座標系に眼球モデルの各頂点を配置した模式図である。(c)は、ワールド座標系に各仮法線ベクトルを配置した模式図である。
【図16】変換後頂点データの格納形態の一例を示す図である。
【図17】頂点色情報データの格納形態の一例を示す図である。
【図18】ポリゴンの3つの頂点を投影面の座標系に変換した一例を示す図である。
【図19】本実施の形態におけるゲーム装置のハードウェア構成の一例を示す図である。
【図20】ホスト装置と端末を含むゲーム装置への本実施の形態の適用例を示す図である。
【図21】本実施形態を業務用のゲーム装置に適用した例を示す図である。
【図22】仮法線ベクトルを用いた反射計算の一例を示す図である。
【図23】仮法線ベクトルを用いたリフレクションマッピングの一例を示す図である。
【符号の説明】
1 ゲーム装置
100 処理部
110 ゲーム演算部
112 キャラクタ制御部
120 画像生成部
122 輝度処理部
200 入力部
300 表示部
400 情報記憶媒体
410 ゲーム情報
420 キャラクタ制御プログラム
430 輝度処理プログラム
440 キャラクタモデルデータ
450 眼球モデルデータ
452 頂点データ
454 ポリゴンデータ
500 一時記憶部
510 変換後頂点データ
520 頂点色情報データ

Claims (10)

  1. プロセッサによる演算・制御により、光源と眼球の配置位置および向きとに基づいて当該眼球の輝度処理を行う輝度処理手段と、前記眼球を含む仮想空間の画像を生成する手段と、を前記プロセッサを備える装置に対して機能させるための画像生成情報であって、
    前記輝度処理手段が、前記眼球の実際の向きに対する当該眼球の基準向きを用いて前記輝度処理を行うように、前記装置に機能させるための情報を含むことを特徴とする画像生成情報。
  2. 請求項1に記載の画像生成情報において、
    複数のプリミティブ面によって前記眼球を形成する手段を、前記装置に機能させるための情報と、
    前記輝度処理手段が、前記眼球が前記基準向きに配置されたときの、当該眼球を形成するプリミティブ面の頂点の法線ベクトルに基づいて、前記輝度処理を行うように、前記装置に機能させるための情報を含むことを特徴とする画像生成情報。
  3. 請求項1または2に記載の画像生成情報において、
    開口方向が非平行な眼孔部を複数有するとともに、各眼孔部に眼球を配置したキャラクタを前記仮想空間に配置するキャラクタ配置手段を前記装置に機能させるための情報と
    前記輝度処理手段が前記キャラクタ配置手段により配置されたキャラクタの眼球それぞれについて前記輝度処理を行う、ように前記装置に機能させるための情報と、
    を含むことを特徴とする画像生成情報。
  4. プロセッサによる演算・制御により、反射体である眼球と視点との位置関係に応じて当該反射体である眼球に映る被反射物を表現する反射表現手段と、前記眼球を含む仮想空間の画像を前記視点に基づいて生成する手段と、を前記プロセッサを備える装置に対して機能させるための画像生成情報であって、
    前記反射表現手段が、前記眼球の実際の向きに対する当該眼球の基準向きを用いて反射体である当該眼球に映る被反射物を決定する、ように前記装置に機能させるための情報を含むことを特徴とする画像生成情報。
  5. 請求項4に記載の画像生成情報において、
    複数のプリミティブ面によって前記眼球を形成する手段を、前記装置に機能させるための情報と、
    前記反射表現手段が、前記眼球が基準向きに配置されたときの、当該眼球の頂点の法線ベクトルに基づいて、当該眼球に映る被反射物を決定する、ように前記装置に機能させるための情報を含むことを特徴とする画像生成情報。
  6. プロセッサによる演算・制御により、操作入力に応答してキャラクタをリアルタイムに動作させ、前記キャラクタが登場するゲームを実行する手段と、視点に基づいて前記キャラクタを含む仮想空間の画像を生成する手段と、を前記プロセッサを備える装置に機能させるためのゲーム情報であって、
    前記キャラクタが、開口方向が非平行な眼孔部を複数有するとともに、各眼孔部に眼球を配置して前記キャラクタを構成するキャラクタ構成手段と、
    前記各眼球にハイライトを描画する際に、当該眼球の実際の向きに対する当該眼球の基準の向きを用いて相対的に同じ位置にハイライトを描画するハイライト手段と、
    を前記装置に機能させるための情報を含むことを特徴とするゲーム情報。
  7. 請求項1から5の何れかに記載の画像生成情報または、請求項6に記載のゲーム情報を記憶することを特徴とする情報記憶媒体。
  8. 光源と眼球の配置位置および向きとに基づいて当該眼球の輝度処理を行う輝度処理手段と、前記眼球を含む仮想空間の画像を生成する手段と、を備える画像生成装置であって、
    前記輝度処理手段は、前記眼球の実際の向きに対する当該眼球の基準向きを用いて前記輝度処理を行うことを特徴とする画像生成装置。
  9. 反射体である眼球と視点との位置関係に応じて当該反射体である眼球に映る被反射物を表現する反射表現手段と、前記眼球を含む仮想空間の画像を前記視点に基づいて生成する手段と、を備える画像生成装置であって、
    前記反射表現手段は、前記眼球の実際の向きに対する当該眼球の基準向きを用いて反射体である当該眼球に映る被反射物を決定することを特徴とする画像生成装置。
  10. 操作入力に応答してキャラクタをリアルタイムに動作させ、前記キャラクタが登場するゲームを実行する手段と、視点に基づいて前記キャラクタを含む仮想空間の画像を生成する手段と、を備えるゲーム装置であって、
    前記キャラクタが、開口方向が非平行な眼孔部を複数有するとともに、各眼孔部に眼球を配置して前記キャラクタを構成するキャラクタ構成手段と、
    前記各眼球にハイライトを描画する際に、当該眼球の実際の向きに対する当該眼球の基準の向きを用いて相対的に同じ位置にハイライトを描画するハイライト手段と、
    を更に備えることを特徴とするゲーム装置。
JP2002052301A 2002-02-27 2002-02-27 画像生成情報、ゲーム情報、情報記憶媒体、画像生成装置、およびゲーム装置 Expired - Lifetime JP4006243B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002052301A JP4006243B2 (ja) 2002-02-27 2002-02-27 画像生成情報、ゲーム情報、情報記憶媒体、画像生成装置、およびゲーム装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002052301A JP4006243B2 (ja) 2002-02-27 2002-02-27 画像生成情報、ゲーム情報、情報記憶媒体、画像生成装置、およびゲーム装置

Publications (2)

Publication Number Publication Date
JP2003256866A JP2003256866A (ja) 2003-09-12
JP4006243B2 true JP4006243B2 (ja) 2007-11-14

Family

ID=28664042

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002052301A Expired - Lifetime JP4006243B2 (ja) 2002-02-27 2002-02-27 画像生成情報、ゲーム情報、情報記憶媒体、画像生成装置、およびゲーム装置

Country Status (1)

Country Link
JP (1) JP4006243B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4693153B2 (ja) * 2005-05-16 2011-06-01 株式会社バンダイナムコゲームス 画像生成システム、プログラム及び情報記憶媒体
JP4764381B2 (ja) * 2007-06-05 2011-08-31 株式会社コナミデジタルエンタテインメント 画像処理装置、画像処理方法及びプログラム
JP5110065B2 (ja) * 2009-10-16 2012-12-26 株式会社大都技研 遊技台
JP5617067B2 (ja) * 2012-09-24 2014-11-05 株式会社大都技研 画像生成装置
JP2014182697A (ja) * 2013-03-21 2014-09-29 Fujitsu Ltd 画像表示装置
CN111429567B (zh) * 2020-03-23 2023-06-13 成都威爱新经济技术研究院有限公司 一种数字虚拟人眼球真实环境反射方法

Also Published As

Publication number Publication date
JP2003256866A (ja) 2003-09-12

Similar Documents

Publication Publication Date Title
US6738061B2 (en) Method, apparatus, storage medium, program, and program product for generating image data of virtual three-dimensional space
US6717575B2 (en) Image drawing method, image drawing apparatus, recording medium, and program
JP3748451B1 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2008033522A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP4006243B2 (ja) 画像生成情報、ゲーム情報、情報記憶媒体、画像生成装置、およびゲーム装置
JP2005032140A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4167358B2 (ja) 画像生成システム及び情報記憶媒体
JP2006323512A (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4229319B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4754384B2 (ja) プログラム、情報記録媒体および画像生成システム
JP4707078B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4528008B2 (ja) プログラム、情報記憶媒体、及び画像生成システム
JP2001325605A (ja) ゲームシステム及び情報記憶媒体
JP4303395B2 (ja) ゲーム装置および情報記憶媒体
JP2001229403A (ja) ゲームシステム及び情報記憶媒体
JP4574058B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP2005141647A (ja) プログラム、情報記憶媒体、及び画像生成システム
JP4159060B2 (ja) 画像生成装置及び情報記憶媒体
JP4592087B2 (ja) 画像生成システム、プログラム及び情報記憶媒体
JP4394211B2 (ja) 画像生成システム及び情報記憶媒体
JP4688405B2 (ja) プログラム、情報記憶媒体及びゲーム装置
JP2002092640A (ja) ゲームシステム及び情報記憶媒体
JP3866587B2 (ja) プログラム、情報記憶媒体、および画像生成装置
JP2001314646A (ja) ゲーム装置および情報記憶媒体
JP2003162734A (ja) ゲームシステム及び情報記憶媒体

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050204

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20060104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20060116

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060116

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070529

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070727

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: 20070821

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070827

R150 Certificate of patent or registration of utility model

Ref document number: 4006243

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: 20100831

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100831

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100831

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110831

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20110831

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120831

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20120831

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130831

Year of fee payment: 6

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

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

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R370 Written measure of declining of transfer procedure

Free format text: JAPANESE INTERMEDIATE CODE: R370

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

EXPY Cancellation because of completion of term