[go: up one dir, main page]

JP4530326B2 - Image generation system and information storage medium - Google Patents

Image generation system and information storage medium Download PDF

Info

Publication number
JP4530326B2
JP4530326B2 JP2003103439A JP2003103439A JP4530326B2 JP 4530326 B2 JP4530326 B2 JP 4530326B2 JP 2003103439 A JP2003103439 A JP 2003103439A JP 2003103439 A JP2003103439 A JP 2003103439A JP 4530326 B2 JP4530326 B2 JP 4530326B2
Authority
JP
Japan
Prior art keywords
reflection
image
highlight effect
highlight
reflection point
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
JP2003103439A
Other languages
Japanese (ja)
Other versions
JP2004005563A (en
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.)
Kabushiki Kaisha Bandai Namco Entertainment (also trading as Bandai Namco Entertainment Inc.)
Namco Ltd
Bandai Namco Entertainment Inc
Original Assignee
Kabushiki Kaisha Bandai Namco Entertainment (also trading as Bandai Namco Entertainment Inc.)
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 Kabushiki Kaisha Bandai Namco Entertainment (also trading as Bandai Namco Entertainment Inc.), Namco Ltd, Namco Bandai Games Inc filed Critical Kabushiki Kaisha Bandai Namco Entertainment (also trading as Bandai Namco Entertainment Inc.)
Priority to JP2003103439A priority Critical patent/JP4530326B2/en
Publication of JP2004005563A publication Critical patent/JP2004005563A/en
Application granted granted Critical
Publication of JP4530326B2 publication Critical patent/JP4530326B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

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

Description

【0001】
【発明の属する技術分野】
本発明は、画像生成システム及び情報記憶媒体に関する。
【0002】
【背景技術及び発明が解決しようとする課題】
従来より、仮想的な3次元空間であるオブジェクト空間内の所与の視点から見える画像を生成するゲームシステムが知られており、いわゆる仮想現実を体験できるものとして人気が高い。
【0003】
さてこのようなゲームシステムでは、プレーヤの仮想現実向上のために、よりリアルな画像を生成することが重要な技術的課題になっている。ここにおいてよりリアルな画像を生成するためには光の効果は重要であるため、表現したい画像に応じた光源処理を施しオブジェクトの立体感や質感をよりリアルに表現することが行われる。
【0004】
例えば図1(A)の球オブジェクトは左上方向の光源を加味したグローシェーディングを施した画像例である。これは球体をポリゴンで近似してポリゴンの各頂点において左上方向の光源を加味した輝度計算を行い、ポリゴン内の各点につては補完処理により輝度を求めて描画したものである。
【0005】
またより強い光の反射を表現したい場合には図1(B)のように球オブジェクトの表面の一部にハイライトが生じている画像を生成する。球オブジェクト内の各点について鏡面反射による輝度値を演算すると演算負荷が膨大となるので、例えば環境マッピングをほどこして図1(B)に示すようなハイライトの表現を行っていた。
【0006】
このような光源処理の手法では、反射の強さはオブジェクト内のハイライトの大きさや明るさを変更するによって表現していた。しかしこれでは強い反射によりあたかもオブジェクト自体が発光しているかのように光り輝いている様子を表現することはできなかった。
【0007】
また図1(A)(B)はいずれの場合も球オブジェクトの頂点等における光源演算が必要となり演算負荷が大きかった。
【0008】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、オブジェクトに光の反射により生じる強いハイライト効果を少ない演算負荷で表現可能な画像生成システム及び情報記憶媒体を提供することある。
【0009】
【課題を解決するための手段】
(1)本発明は、画像生成を行う画像生成システムであって、
オブジェクトの表面上の光の反射点に基づき、光の反射によりオブジェクトに生じるハイライトの画像を生成するためのハイライト効果オブジェクトの配置位置を決定する手段と、
決定された配置位置にハイライト効果オブジェクトを配置して、ハイライト効果画像が前記オブジェクトにオーバーラップした画像を生成する手段とを、
含むことを特徴とする。
(2)本発明の画像生成システムは、
オブジェクト上の少なくとも1点を予め反射点として定義し、所定の条件を満たした場合に前記反射点に基づきハイライト効果オブジェクトの配置位置を決定して、ハイライト効果画像が前記オブジェクトにオーバーラップした画像を生成することを特徴とする。
(3)本発明は、コンピュータを、
オブジェクトの表面上の光の反射点に基づき、光の反射によりオブジェクトに生じるハイライトの画像を生成するためのハイライト効果オブジェクトの配置位置を決定する手段と、
決定された配置位置にハイライト効果オブジェクトを配置して、ハイライト効果画像が前記オブジェクトにオーバーラップした画像を生成する手段と、
として機能させるためのプログラムを記録したコンピュータ読みとり可能な情報記憶媒体である。
(4)本発明の情報記憶媒体は、
オブジェクト上の少なくとも1点を予め反射点として定義し、所定の条件を満たした場合に前記反射点に基づきハイライト効果オブジェクトの配置位置を決定して、ハイライト効果画像が前記オブジェクトにオーバーラップした画像を生成することを特徴とする。
【0010】
【発明の実施の形態】
本実施の形態は画像生成を行うゲームシステムであって、オブジェクトの表面上の光の反射点に基づき、光の反射によりオブジェクトに生じるハイライトの画像を生成するためのハイライト効果オブジェクトの配置位置を決定する手段と、決定された配置位置にハイライト効果オブジェクトを配置して、ハイライト効果画像が前記オブジェクトにオーバーラップした画像を生成する手段とを、含むことを特徴とする。
【0011】
オブジェクトの表面上の光の反射点は所定のアルゴリズムにより演算して求めてもよいし、あらかじめ反射点として設定された点でもよい。
【0012】
ここにおいてハイライト効果オブジェクトは、ポリゴンオブジェクトで構成してもよいし、自由曲面で構成してもよいし、スプライトで構成してもよいし、他の手法で構成してもよい。
【0013】
また前記反射点の座標はオブジェクトに付随して与えられてもよいし、空間上の所定の点が与えられてもよい。また3次元座標で与えられてもよいし、2次元座標で与えられてもよい。
【0014】
例えばポリゴンオブジェクトの場合には前記反射点の3次元座標を配置位置としてもよい。またスプライトの場合には前記反射点をスクリーン座標系に変換した2次元座標を配置位置としてもよい。
【0015】
本実施の形態によれば、光を反射するオブジェクトとは別にハイライト効果オブジェクトを有している。そして光を反射するオブジェクトの上にハイライト効果オブジェクトを配置することで光の反射を表現するため、オブジェクトの描画領域を超えてあたかもオブジェクト自体が発光しているかのように光り輝いている画像を生成することができる。
【0016】
またオブジェクトの頂点等における光源演算が不要であるため光が反射する画像を少ない演算負荷で実現することができる。
【0017】
したがって本実施の形態によれば、オブジェクトに光の反射により生じる強いハイライト効果を少ない演算負荷で表現可能なゲームシステム及び情報記憶媒体を提供することができる。
【0018】
また本実施の形態に係るゲームシステム、情報記憶媒体及びプログラムは、ハイライト効果画像の一部がオブジェクト画像からはみ出してオーバーラップした画像を生成することを特徴とする。
【0019】
本実施の形態によればハイライト効果画像がオブジェクトからはみ出している画像を生成することができる。従ってオブジェクトの表面上の強い光の反射を表現することができる。
【0020】
本実施の形態は画像生成を行うゲームシステムであって、オブジェクトの表面上の強い光の反射を表現する場合には、ハイライト効果画像の一部がオブジェクト画像からはみ出してオーバーラップしたオブジェクト画像およびハイライト効果画像を生成する手段を含むことを特徴とする。
【0021】
また本実施の形態に係る情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体であって、上記手段を実行するためのプログラムを含むことを特徴とする。また本実施の形態に係るプログラムは、コンピュータにより使用可能なプログラム(搬送波に具現化されるプログラムを含む)であって、上記手段を実行するための処理ルーチンを含むことを特徴とする。
【0022】
また本実施の形態に係るゲームシステム、情報記憶媒体及びプログラムは、オブジェクト上の少なくとも1点を予め反射点として定義し、所定の条件を満たした場合に前記反射点に基づきハイライト効果オブジェクトの配置位置を決定して、ハイライト効果画像が前記オブジェクトにオーバーラップした画像を生成することを特徴とする。
【0023】
ハイライト設定点はオブジェクトの形状、性質に応じて設定しておくことが好ましい。所定の条件とはたとえば反射点と光源と視点が所定の位置関係になった場合でもよいし、反射するタイミングを設定しておいてそのタイミングに一致したような場合でもよい。
【0024】
このようにすると反射点を設定するための光源計算が不要になるため演算不可の軽減をはかることができる。しかも、あらかじめ設定した反射点が所定の条件を満たした場合に反射させるために、光の反射をゲーム条件に適した態様で擬似的に表現することができる。
【0025】
また本実施の形態に係るゲームシステム、情報記憶媒体及びプログラムは、所定のアルゴリズムに従い前記オブジェクトの反射光の強さを演算する手段と、前記反射光の強さに基づき、ハイライト効果画像の付加の有無、ハイライト効果画像の明るさ、ハイライト効果画像の大きさの少なくとも一つを決定する手段を含むことを特徴とする。
【0026】
本実施の形態によれば、反射光の強さに基づいてハイライト効果画像の付加の有無、ハイライト効果画像の明るさ、ハイライト効果画像の大きさの少なくとも一つを決定するため、反射光の表現が単調にならず、よりバライティに富んだ反射画像を生成することができる。
【0027】
また本実施の形態に係るゲームシステム、情報記憶媒体及びプログラムは、前記反射光の強さの変化に応じてオブジェクトへのハイライト効果画像の付加の有無が変化する画像を生成することを特徴とする。
【0028】
本実施の形態によれば反射光の強さの変化に応じてオブジェクトにハイライトの入ったり入らなかったりするため、反射光の強さの変化を表現する場合に有効である。
【0029】
また本実施の形態に係るゲームシステム、情報記憶媒体及びプログラムは、前記反射光の強さの変化に応じてオブジェクトにオーバーラップしたハイライト効果画像の明るさ及び大きさの少なくとも一方が変化する画像を生成することを特徴とする。
【0030】
本実施の形態によれば反射光の強さの変化に応じてオブジェクトにオーバーラップしたハイライト効果画像の明るさ及び大きさの少なくとも一方が変化するため反射光の強さの変化を表現する場合に有効である。
【0031】
また本実施の形態に係るゲームシステム、情報記憶媒体及びプログラムは、ハイライト効果画像とともにレンズフレア画像がオーバーラップしたオブジェクトの画像を生成することを特徴とする。
【0032】
本実施の形態によればハイライト効果画像とともにレンズフレア画像がオーバーラップしたオブジェクトの画像を生成することができるため、強い反射光の表現をする場合に効果的である。
【0033】
また本実施の形態に係るゲームシステム、情報記憶媒体及びプログラムは、前記反射点における法線ベクトルに基づき光線ベクトルを反射させて得られる反射ベクトルと視線ベクトルのなす角に基づき反射光の強さを演算することを特徴とする。
【0034】
なお、前記反射点における法線ベクトルに基づき視線ベクトルを反射させて得られる反射ベクトルと光線ベクトルのなす角に基づき反射光の強さを演算する場合も本実施の形態の範囲に含まれる。
【0035】
前記反射点に入射する光線ベクトルは、例えば前記光源が点光源である場合に前記反射点を視点とし点光源と反射点を結ぶ方向を有するベクトルを光線ベクトルとすることができる。また例えば前記光源が平行光源である場合には前記反射点を視点とし平行光線の方向を有するベクトルを光線ベクトルとすることができる。
【0036】
またこの光線ベクトルの反射ベクトルは例えば前記反射点に設定された法線を軸に光線ベクトルを反射させることで得ることができる。
【0037】
本実施の形態では反射ベクトルと視線ベクトルのなす角度が0に近いほど強い反射光の表現を行うことができる。一般に反射ベクトルと視線ベクトルのなす角度が0に近いほど鏡面反射が強くなるため、本実施の形態によれば光源と反射点と視点位置を反映した鏡面反射によるハイライトを表現することができる。
【0038】
また本実施の形態に係るゲームシステム、情報記憶媒体及びプログラムは、前記反射点及び反射点における反射光の強さの少なくとも一方をオブジェクトの光源計算を行う際に得られた輝度値に基づき決定することを特徴とする。
【0039】
一般にオブジェクトをシェーディングする際には輝度を求めるが、本実施の形態ではこれを利用して反射点及び反射点における反射光の強さの少なくとも一方を決定する。このため反射点や反射点における反射光の強さを求めるために新たな演算を行う必要がないため少ない演算負荷の増大を招くことなく最適な位置に反射光に応じたハイライト効果画像を生成することができる。
【0040】
また本実施の形態に係るゲームシステム、情報記憶媒体及びプログラムは、複数の反射点が近接して存在する場合に各反射点におけるハイライトを一体化したハイライト効果画像をオブジェクトにオーバーラップさせることを特徴とする。
【0041】
本実施の形態によれば、各点に個別にハイライト効果画像を設定する場合に比べ、近接した反射点を含むエリアに自然な形状のハイライトを表示することができる。
【0042】
また本実施の形態に係るゲームシステム、情報記憶媒体及びプログラムは、オブジェクトの反射エリアにフレアをつけた画像を当該反射エリアにオーバーラップするハイライト効果画像として生成することを特徴とする。
【0043】
本実施の形態によれば、反射エリアに応じた形状のハイライト効果画像を生成することができる。
【0044】
また本実施の形態に係るゲームシステム、情報記憶媒体及びプログラムは、
ハイライト効果オブジェクトにマッピングするテクスチャに反射位置特定情報をうめこんでおくことを特徴とする。
【0045】
以下、本発明の好適な実施形態について図面を用いて説明する。
【0046】
図2に、本実施形態のブロック図の一例を示す。なお同図において本実施形態は、少なくとも処理部100を含めばよく、それ以外のブロックについては、任意の構成要素とすることができる。
【0047】
ここで処理部100は、システム全体の制御、システム内の各ブロックへの命令の指示、ゲーム処理、画像処理、音処理などの各種の処理を行うものであり、その機能は、各種プロセッサ(CPU、DSP等)、或いはASIC(ゲートアレイ等)などのハードウェアや、所与のプログラム(ゲームプログラム)により実現できる。
【0048】
操作部160は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、筺体などのハードウェアにより実現できる。
【0049】
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAMなどのハードウェアにより実現できる。
【0050】
情報記憶媒体(コンピュータにより使用可能な記憶媒体)180は、プログラムやデータなどの情報を格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などのハードウェアにより実現できる。処理部100は、この情報記憶媒体180に格納される情報に基づいて本発明(本実施形態)の種々の処理を行う。即ち情報記憶媒体180には、本発明(本実施形態)の手段(特に処理部100に含まれるブロック)を実行するための情報(プログラム或いはデータ)が格納される。
【0051】
なお、情報記憶媒体180に格納される情報の一部又は全部は、システムへの電源投入時等に記憶部170に転送されることになる。また情報記憶媒体180に記憶される情報は、本発明の処理を行うためのプログラムコード、画像データ、音データ、表示物の形状データ、テーブルデータ、リストデータ、本発明の処理を指示するための情報、その指示に従って処理を行うための情報等の少なくとも1つを含むものである。
【0052】
表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、或いはHMD(ヘッドマウントディスプレイ)などのハードウェアにより実現できる。
【0053】
音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカなどのハードウェアにより実現できる。
【0054】
セーブ用情報記憶装置194は、プレーヤの個人データ(セーブデータ)などが記憶されるものであり、このセーブ用情報記憶装置194としては、メモリカードや携帯型ゲーム装置などを考えることができる。
【0055】
通信部196は、外部(例えばホスト装置や他のゲームシステム)との間で通信を行うための各種の制御を行うものであり、その機能は、各種プロセッサ、或いは通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
【0056】
なお本発明(本実施形態)の手段を実行するためのプログラム或いはデータは、ホスト装置(サーバー)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180に配信するようにしてもよい。このようなホスト装置(サーバー)の情報記憶媒体の使用も本発明の範囲内に含まれる。
【0057】
処理部100は、ゲーム処理部110、画像生成部130、音生成部150を含む。
【0058】
ここでゲーム処理部110は、コイン(代価)の受け付け処理、各種モードの設定処理、ゲームの進行処理、選択画面の設定処理、オブジェクト(1又は複数のプリミティブ面)の位置や回転角度(X、Y又はZ軸回り回転角度)を求める処理、オブジェクトを動作させる処理(モーション処理)、視点の位置(仮想カメラの位置)や視線角度(仮想カメラの回転角度)を求める処理、マップオブジェクトなどのオブジェクトをオブジェクト空間へ配置するための処理、ヒットチェック処理、ゲーム結果(成果、成績)を演算する処理、複数のプレーヤが共通のゲーム空間でプレイするための処理、或いはゲームオーバー処理などの種々のゲーム処理を、操作部160からの操作データや、セーブ用情報記憶装置194からの個人データや、ゲームプログラムなどに基づいて行う。
【0059】
ハイライト効果処理部120は、オブジェクトの表面上の光の反射点に基づき、光の反射によりオブジェクトに生じるハイライトの画像を生成するためのハイライト効果オブジェクトの配置位置を決定し、決定された配置位置にハイライト効果オブジェクトを配置する処理を行う。
【0060】
ここにおいてハイライト効果画像の一部がオブジェクト画像からはみ出してオーバーラップした画像を生成するようにハイライト効果オブジェクトを配置することが好ましい。
【0061】
またオブジェクト上の少なくとも1点を予め反射点として定義し、所定の条件を満たした場合に前記反射点に基づきハイライト効果オブジェクトの配置位置を決定するようにしてもよい。
【0062】
所定のアルゴリズムに従い前記オブジェクトの反射光の強さを演算して、演算した反射光の強さに基づき、ハイライト効果画像の付加の有無、ハイライト効果画像の明るさ、ハイライト効果画像の大きさの少なくとも一つを決定するようにしてもよい。
【0063】
前記反射光の強さの変化に応じてオブジェクトへのハイライト効果画像の付加の有無が変化させてもよい。
【0064】
前記反射光の強さの変化に応じてオブジェクトにオーバーラップしたハイライト効果画像の明るさ及び大きさの少なくとも一方を変化させてもよい。
【0065】
ハイライト効果画像とともにオブジェクトにレンズフレア画像がオーバーラップするようにしてもよい。
【0066】
前記反射点における法線ベクトルに基づき光線ベクトルを反射させて得られる反射ベクトルと視線ベクトルのなす角に基づき反射光の強さを演算するようにしてもよい。
【0067】
前記反射点及び反射点における反射光の強さの少なくとも一方をオブジェクトの光源計算を行う際に得られた輝度値に基づき決定するようにしてもよい。
【0068】
複数の反射点が近接して存在する場合に各反射点におけるハイライトを一体化したハイライト効果画像をオブジェクトにオーバーラップさせるようにしてもよい。
【0069】
オブジェクトの反射エリアにフレアをつけた画像をハイライト効果画像として生成するために必要な処理を行うようにしてもよい。
【0070】
画像生成部130は、ゲーム処理部110からの指示等にしたがって各種の画像処理を行い、例えばオブジェクト空間内で仮想カメラ(視点)から見える画像を生成して、表示部190に出力する。また、音生成部150は、ゲーム処理部110からの指示等にしたがって各種の音処理を行い、BGM、効果音、音声などの音を生成し、音出力部192に出力する。
【0071】
なお、ゲーム処理部110、画像生成部130、音生成部150の機能は、その全てをハードウェアにより実現してもよいし、その全てをプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【0072】
ゲーム処理部110は、移動・動作演算部112を含む。
【0073】
ここで移動・動作演算部112は、車などのオブジェクトの移動情報(位置データ、回転角度データ)や動作情報(オブジェクトの各パーツの位置データ、回転角度データ)を演算するものであり、例えば、操作部160によりプレーヤが入力した操作データやゲームプログラムなどに基づいて、オブジェクトを移動させたり動作させたりする処理を行う。
【0074】
より具体的には、移動・動作演算部112は、オブジェクトの位置や回転角度を例えば1フレーム(1/60秒)毎に求める処理を行う。例えば(k−1)フレームでのオブジェクトの位置をPMk-1、速度をVMk-1、加速度をAMk-1、1フレームの時間を△tとする。するとkフレームでのオブジェクトの位置PMk、速度VMkは例えば下式(1)、(2)のように求められる。
【0075】
PMk=PMk-1+VMk-1×△t (1)
VMk=VMk-1+AMk-1×△t (2)
画像生成部130は、ジオメトリ処理部132、描画部134を含む。
【0076】
ここで、ジオメトリ処理部132は、座標変換、クリッピング処理、透視変換、或いは光源計算などの種々のジオメトリ処理(3次元演算)を行う。そして、ジオメトリ処理後(透視変換後)のオブジェクトデータ(オブジェクトの頂点座標などの形状データ、或いは頂点テクスチャ座標、輝度データ等)は、記憶部170のメインメモリ172に保存される。
【0077】
描画部134は、ジオメトリ処理後のオブジェクト(モデル)を、フレームバッファ174に描画するための処理を行うものである。
【0078】
なお、本実施形態のゲームシステムは、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、このようなシングルプレーヤモードのみならず、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
【0079】
また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末を用いて生成してもよい。
【0080】
図3は本実施の形態におけるハイライト効果画像がオーバーラップした球オブジェクトの画像例である。
【0081】
同図に示すように、本実施の形態ではハイライト効果画像10の一部が球オブジェクト画像からはみ出してオーバーラップした画像を生成することができる。
【0082】
本実施の形態では図3に示すようにあたかもオブジェクト自体が発光しているかのように光り輝いている様子を表現することができるので、オブジェクトの表面上の強い光の反射を表現することができる。
【0083】
図4はハイライト効果オブジェクトとして板ポリゴンを用いた場合のハイライト効果画像の生成例について説明するための図である。
【0084】
同図に示すように視点座標系(3次元空間)に配置された球オブジェクト210の表面上の光の反射点220を板ポリゴン230の配置位置に決定して、板ポリゴン230を配置する。ここにおいて前記反射点220は例えば反射を表現したい点や反射の起こりやすい点等にあらかじめ設定しておいてもよい。また視点位置や光源位置に基づき、もっとも鏡面反射が起こりやすい点をリアルタイムに演算してこれを反射点に設定してもよい。
【0085】
そして球オブジェクト及び板ポリゴンを3次元画像生成の手法を用いて描画する事により図3に示すようなハイライト効果画像がオーバーラップした球オブジェクトの画像を生成することができる。
【0086】
本実施の形態の手法によれば、ハイライト効果画像生成用の板ポリゴンを反射点に配置すると後は通常の3次元画像生成を行うだけでよい。すなわち反射点が与えられれば後は球オブジェクトの頂点等における光源演算が不要であるため少ない演算負荷で光の反射を表現することができる。
【0087】
図5はハイライト効果オブジェクトとしてスプライトを用いた場合のハイライト効果画像の生成例について説明するための図である。
【0088】
同図に示すように描画領域(2次元空間)250に描画された球オブジェクトの画像260上の光の反射点270にスプライト280の配置位置に決定して、スプライト280を配置する。
【0089】
ここにおいて前記反射点が例えば3次元的に与えられている場合には、これをスクリーン座標系に座標変換して、描画領域上の光の反射点270を求める。
【0090】
同図に示すように、ハイライト効果画像用のテクスチャをマッピングしたスプライト280を、球オブジェクトの画像260にオーバーラップして描画する事により、図3に示すようなハイライトの入った球オブジェクトの画像を生成することができる。
【0091】
本実施の形態の手法によれば、ハイライト効果画像生成用のスプライトを反射点に配置するだけでよく、球オブジェクトの頂点等における光源演算を行う必要がない。このため演算負荷の増大を招くことなく光の反射を表現することができる。
【0092】
図6は本実施の形態において光の反射点における反射の強さを求める手法の一例について説明するための図である。
【0093】
320は球オブジェクト310上に与えられた反射点であり、光源340は点光源であるとする。反射点320には法線ベクトル350が設定されている。
【0094】
光源340が点光源であるため、反射点320を始点とし反射点320と光源340を結ぶ方向をその方向とするベクトルを光線ベクトル370とする。そして前記反射点320に設定された法線(法線ベクトル350)を軸に光線ベクトル370を反射させて、反射ベクトル360を求める。
【0095】
また反射点320を始点とし、反射点320と視点330を結ぶ方向をその方向とするベクトルを視線ベクトル380とする。
【0096】
本実施の形態ではこの反射ベクトル360と視線ベクトル380のなす角度が0に近いほど反射光の強さが大きくなるように設定する。
【0097】
現実世界でも反射ベクトルと視線ベクトルのなす角度が0に近いほど鏡面反射が強くなる。従ってこのように設定する事により光源340と反射点320と視点330の位置を反映した鏡面反射によるハイライトを表現することができる。
【0098】
図7は反射点の設定方法について説明するための図である。
【0099】
例えば図7に示すような戦闘機オブジェクトの画像を生成する場合、戦闘機の機体の中でもガラス窓の部分がもっとも光の反射が起こりやすい部分である。
【0100】
したがって例えばガラス窓部分を反射領域450として設定し、当該反射領域に複数の反射点460を設定しておく。そして例えばその反射点における反射の強さが所定の値になったときにハイライト効果画像を設定するようにしてもよい。
【0101】
このようにオブジェクトの素材や形状に基づいてもっとも鏡面反射が起こりやすい反射領域を推定してそこに反射点を設定してハイライト効果画像を生成することで、擬似的ながら簡易にリアルな反射画像を生成することができる。
【0102】
また例えばガラス窓のエリアを反射エリアとして設定しておいて、当該反射エリアにフレアをつけた画像を当該反射エリアにオーバーラップするハイライト効果画像として生成するようにしてもよい。
【0103】
図8(A)(B)(C)は、前記反射光の強さに応じたハイライト効果画像の変化について説明するための図である。
【0104】
図8(A)は反射光が弱い場合、図8(B)は反射光が強い場合、図8(C)は反射光が非常に強い場合を表している。
【0105】
本実施の形態では図8(A)(B)に示すように、反射光が強くなるにつれてハイライト効果画像の大きさ及び明るさが大きくなるようにしている。
【0106】
例えば大きさの異なるハイライト効果画像を生成するための複数のスプライトを用意しておき、図6の手法等により求められた反射光の強さに応じて最適なスプライトを選択してハイライト効果画像を生成するようにしてもよい。
【0107】
このようにしてハイライト効果画像の大きさ等を変化させることにより、反射光が強くなる様子を擬似的に表現することができる。
【0108】
また本実施の形態では反射光がさらに強くなると、図8(C)に示すようにハイライト効果画像とともにレンズフレア画像をオーバーラップしたオブジェクトの画像を生成する。
【0109】
これにより反射光が非常に強い様子を擬似的に表現することができる。
【0110】
図9は、複数の反射点におけるハイライト効果画像が一体化したハイライト効果画像の一例である。
【0111】
本実施の形態では近接した複数のポイント410と420が反射点として設定されている場合に、430に示すような各反射点に設定されるハイライト効果画像が一体化したハイライト効果画像が生成される。
【0112】
このようにすることで、各点に個別にハイライト効果画像を設定する場合に比べてより自然な形状のハイライト効果画像を生成することができる。
【0113】
図10は、ハイライト効果画像がオーバーラップしたオブジェクトの画像を生成するためのフローチャート図である。
【0114】
まずモデル情報を生成する際に、オブジェクトに反射点を設定し、反射点情報をモデル情報として用意する(ステップS10)。ここにおいて反射点は複数設定してもよい。なお、反射点は例えばオブジェクトの形状や素材等から鏡面反射が起こりそうな点を設定しておくとよい。
【0115】
また反射点情報としては、例えば反射点の座標P(X、Y、Z)、反射点における法線ベクトル、ハイライト属性(type、pow、c)等を設定しておく。ここにおいてtypeはスプライト種別でありハイライト効果画像を生成するために使用するスプライト種別を示している。powはハイライト強度でありハイライト効果画像のハイライトの大きさおよび明るさを演算する際の係数として使用するものである。またcは当該反射点におけるハイライト効果画像の生成の有無を決定する際のθの閾値である。
【0116】
次に画像生成の過程においてステップS10で設定されたすべての反射点について処理が終了するまでステップS20〜S90の処理を繰り返す。
【0117】
すなわちまず反射点を始点とし、反射点と光源を結ぶ方向をその方向とする光線ベクトルを求める(ステップS20、図6の370参照)。
【0118】
反射点に反射点情報として設定された法線ベクトルを軸に光線ベクトルを反射させた反射ベクトルを求める(ステップS30、図6の360参照)。
【0119】
また反射点を始点とし、反射点と視点を結ぶ方向をその方向とするベクトルを視線ベクトル380を求める(ステップS40、図6の380参照)。
【0120】
そして反射ベクトルと視線ベクトルのなす角θを求める(ステップS50)。
【0121】
θが反射点情報で設定された閾値以下である場合には、θの値および当該反射点に反射点情報として設定されているハイライト強度に基づきハイライト効果画像のハイライトの大きさおよび明るさを演算する(ステップS60、S70)。
【0122】
そして演算された大きさおよび明るさを有するハイライト効果画像生成用のスプライトを反射点に設定する(ステップS80)。
【0123】
設定されたすべての反射点について上記処理が終了していない場合には、次の反射点についてステップS20〜S90の処理を行い、設定されたすべての反射点について上記処理が終了した場合には処理を終了する。
【0124】
図11は、曲線(2点)式によるハイライト効果画像がオーバーラップしたオブジェクトの画像を生成するためのフローチャート図である。
【0125】
まずモデル情報を生成する際に、オブジェクトに2つの反射点(P0、P1)を結ぶ反射領域Rを設定し、反射領域情報をモデル情報として用意する(ステップS110)。ここにおいて反射領域は複数設定してもよい。なお、反射領域は例えばオブジェクトの形状や素材等から鏡面反射が起こりそうな領域を設定しておくとよい。
【0126】
また反射領域情報としては、反射点(P0、P1)の法線ベクトル(n0、n1)、ハイライト属性(スプライト種別、強度、しきい値)等を設定しておく。ここにおいて2つの法線ベクトル(n0、n1)が並行にならないように設定する。
【0127】
次に画像生成の過程においてステップS110で設定されたすべての反射領域について処理が終了するまでステップS120〜S160の処理を繰り返す。
【0128】
まず反射領域Rのうち光線ベクトルを反射させた反射ベクトルと視線ベクトルのなす角θが最小となる反射点Ptを計算する(ステップS120)。
【0129】
すなわち反射領域R上の各点について図10のステップS20〜S50と同様の手法でθを求め、求めたθがもっとも小さい点を反射点Ptとする。ここにおいて反射領域R上の各点は(P0、P1)ではさまれた連続した曲線上の点とみなして各点の法線ベクトル(n0〜n1)の範囲で連続する値をとるものとして計算する。
【0130】
θが反射領域情報で設定された閾値以下である場合には、θの値および当該反射点に反射点情報として設定されているハイライト強度に基づきハイライト効果画像のハイライトの大きさおよび明るさを演算する(ステップS130、S140)。
【0131】
そして演算された大きさおよび明るさを有するハイライト効果画像生成用のスプライトを反射点Ptに設定する(ステップS150)。この場合のハイライトの形状はたとえば図9に示すように2点を結ぶ線分にそって一体的に形成された形状であることが好ましい。
【0132】
設定されたすべての反射領域について上記処理が終了していない場合には、次の反射領域についてステップS120〜S160の処理を行い、設定されたすべての反射領域について上記処理が終了した場合には処理を終了する。
【0133】
なおオブジェクトに3つの反射点(P0、P1、P2)で囲まれた反射領域Rを設定することにより、曲面(3点)式よるハイライト効果画像がオーバーラップしたオブジェクトの画像を生成することもできる。ここにおいて(P0、P1、P2)の各法線ベクトル(n0、n1、n3)は互いに平行にならないように設定する。
【0134】
曲面(3点)式による場合には図11のステップS120において、3つの反射点(P0、P1、P2)で囲まれた反射領域Rのうち、光線ベクトルを反射させた反射ベクトルと視線ベクトルのなす角θが最小となる反射点Ptを計算するとよい。ここにおいて反射領域Rを(P0、P1、P2)で囲まれたなめらか曲面とみなして各点の法線ベクトルを求めるとよい。
【0135】
次に、本実施形態を実現できるハードウェアの構成の一例について図12を用いて説明する。
【0136】
メインプロセッサ900は、CD982(情報記憶媒体)に格納されたプログラム、通信インターフェース990を介して転送されたプログラム、或いはROM950(情報記憶媒体の1つ)に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などの種々の処理を実行する。
【0137】
コプロセッサ902は、メインプロセッサ900の処理を補助するものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算(ベクトル演算)を高速に実行する。例えば、オブジェクトを移動させたり動作(モーション)させるための物理シミュレーションに、マトリクス演算などの処理が必要な場合には、メインプロセッサ900上で動作するプログラムが、その処理をコプロセッサ902に指示(依頼)する。
【0138】
ジオメトリプロセッサ904は、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算(ベクトル演算)を高速に実行する。例えば、座標変換、透視変換、光源計算などの処理を行う場合には、メインプロセッサ900で動作するプログラムが、その処理をジオメトリプロセッサ904に指示する。
【0139】
データ伸張プロセッサ906は、圧縮された画像データや音データを伸張するデコード処理を行ったり、メインプロセッサ900のデコード処理をアクセレートする処理を行う。これにより、オープニング画面、インターミッション画面、エンディング画面、或いはゲーム画面などにおいて、所与の画像圧縮方式で圧縮された動画像を表示できるようになる。なお、デコード処理の対象となる画像データや音データは、ROM950、CD982に格納されたり、或いは通信インターフェース990を介して外部から転送される。
【0140】
描画プロセッサ910は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画(レンダリング)処理を高速に実行するものである。オブジェクトの描画の際には、メインプロセッサ900は、DMAコントローラ970の機能を利用して、オブジェクトデータを描画プロセッサ910に渡すと共に、必要であればテクスチャ記憶部924にテクスチャを転送する。すると、描画プロセッサ910は、これらのオブジェクトデータやテクスチャに基づいて、Zバッファなどを利用した陰面消去を行いながら、オブジェクトをフレームバッファ922に高速に描画する。また、描画プロセッサ910は、αブレンディング(半透明処理)、デプスキューイング、ミップマッピング、フォグ処理、バイリニア・フィルタリング、トライリニア・フィルタリング、アンチエリアシング、シェーディング処理なども行うことができる。そして、1フレーム分の画像がフレームバッファ922に書き込まれると、その画像はディスプレイ912に表示される。
【0141】
サウンドプロセッサ930は、多チャンネルのADPCM音源などを内蔵し、BGM、効果音、音声などの高品位のゲーム音を生成する。生成されたゲーム音は、スピーカ932から出力される。
【0142】
ゲームコントローラ942からの操作データや、メモリカード944からのセーブデータ、個人データは、シリアルインターフェース940を介してデータ転送される。
【0143】
ROM950にはシステムプログラムなどが格納される。なお、業務用ゲームシステムの場合には、ROM950が情報記憶媒体として機能し、ROM950に各種プログラムが格納されることになる。なお、ROM950の代わりにハードディスクを利用するようにしてもよい。
【0144】
RAM960は、各種プロセッサの作業領域として用いられる。
【0145】
DMAコントローラ970は、プロセッサ、メモリ(RAM、VRAM、ROM等)間でのDMA転送を制御するものである。
【0146】
CDドライブ980は、プログラム、画像データ、或いは音データなどが格納されるCD982(情報記憶媒体)を駆動し、これらのプログラム、データへのアクセスを可能にする。
【0147】
通信インターフェース990は、ネットワークを介して外部との間でデータ転送を行うためのインターフェースである。この場合に、通信インターフェース990に接続されるネットワークとしては、通信回線(アナログ電話回線、ISDN)、高速シリアルバスなどを考えることができる。そして、通信回線を利用することでインターネットを介したデータ転送が可能になる。また、高速シリアルバスを利用することで、他のゲームシステム、他のゲームシステムとの間でのデータ転送が可能になる。
【0148】
なお、本発明の各手段は、その全てを、ハードウェアのみにより実行してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムのみにより実行してもよい。或いは、ハードウェアとプログラムの両方により実行してもよい。
【0149】
そして、本発明の各手段をハードウェアとプログラムの両方により実行する場合には、情報記憶媒体には、本発明の各手段をハードウェアを利用して実行するためのプログラムが格納されることになる。より具体的には、上記プログラムが、ハードウェアである各プロセッサ902、904、906、910、930等に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ902、904、906、910、930等は、その指示と渡されたデータとに基づいて、本発明の各手段を実行することになる。
【0150】
図13(A)に、本実施形態を業務用ゲームシステムに適用した場合の例を示す。プレーヤは、ディスプレイ1100上に映し出されたゲーム画像を見ながら、レバー1102、ボタン1104等を操作してゲームを楽しむ。内蔵されるシステムボード(サーキットボード)1106には、各種プロセッサ、各種メモリなどが実装される。そして、本発明の各手段を実行するための情報(プログラム又はデータ)は、システムボード1106上の情報記憶媒体であるメモリ1108に格納される。以下、この情報を格納情報と呼ぶ。
【0151】
図13(B)に、本実施形態を家庭用のゲームシステムに適用した場合の例を示す。プレーヤはディスプレイ1200に映し出されたゲーム画像を見ながら、ゲームコントローラ1202、1204を操作してゲームを楽しむ。この場合、上記格納情報は、本体システムに着脱自在な情報記憶媒体であるCD1206、或いはメモリカード1208、1209等に格納されている。
【0152】
図13(C)に、ホスト装置1300と、このホスト装置1300とネットワーク1302(LANのような小規模ネットワークや、インターネットのような広域ネットワーク)を介して接続される端末1304-1〜1304-nとを含むシステムに本実施形態を適用した場合の例を示す。この場合、上記格納情報は、例えばホスト装置1300が制御可能な磁気ディスク装置、磁気テープ装置、メモリ等の情報記憶媒体1306に格納されている。端末1304-1〜1304-nが、スタンドアロンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置1300からは、ゲーム画像、ゲーム音を生成するためのゲームプログラム等が端末1304-1〜1304-nに配送される。一方、スタンドアロンで生成できない場合には、ホスト装置1300がゲーム画像、ゲーム音を生成し、これを端末1304-1〜1304-nに伝送し端末において出力することになる。
【0153】
なお、図13(C)の構成の場合に、本発明の各手段を、ホスト装置(サーバー)と端末とで分散して実行するようにしてもよい。また、本発明の各手段を実行するための上記格納情報を、ホスト装置(サーバー)の情報記憶媒体と端末の情報記憶媒体に分散して格納するようにしてもよい。
【0154】
またネットワークに接続する端末は、家庭用ゲームシステムであってもよいし業務用ゲームシステムであってもよい。そして、業務用ゲームシステムをネットワークに接続する場合には、業務用ゲームシステムとの間で情報のやり取りが可能であると共に家庭用ゲームシステムとの間でも情報のやり取りが可能なセーブ用情報記憶装置(メモリカード、携帯型ゲーム装置)を用いることが望ましい。
【0155】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。
【0156】
例えば、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の1の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
【0157】
また本実施の形態では、ハイライト効果オブジェクトがスプライトまたは板ポリゴンである場合を例にとり説明したがこれに限られない。例えば複数のポリゴンからなるポリゴンオブジェクトで構成してもよいし、自由曲面等で構成してもよい。
【0158】
また本実施の形態ではオブジェクトのモデル情報として反射点をもたせておく場合について説明したがこれに限られない。例えばハイライト効果オブジェクトにマッピングするテクスチャに反射位置特定情報をうめこんでおくようにしてもよい。
【0159】
また、本発明は種々のゲーム(格闘ゲーム、シューティングゲーム、ロボット対戦ゲーム、スポーツゲーム、競争ゲーム、ロールプレイングゲーム、音楽演奏ゲーム、ダンスゲーム等)に適用できる。
【0160】
また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード等の種々のゲームシステムに適用できる。
【図面の簡単な説明】
【図1】図1(A)(B)は従来の光源処理について説明するための図である。
【図2】本実施形態のゲームシステムのブロック図の例である。
【図3】本実施の形態におけるハイライト効果画像がオーバーラップした球オブジェクトの画像例である。
【図4】ハイライト効果オブジェクトとして板ポリゴンを用いた場合のハイライト効果画像の生成例について説明するための図である。
【図5】ハイライト効果オブジェクトとしてスプライトを用いた場合のハイライト効果画像の生成例について説明するための図である。
【図6】本実施の形態において光の反射点における反射の強さを求める手法の一例について説明するための図である。
【図7】反射点の設定方法について説明するための図である。
【図8】図8(A)(B)(C)は、前記反射光の強さに応じたハイライト効果画像の変化について説明するための図である。
【図9】複数の反射点におけるハイライト効果画像が一体化したハイライト効果画像の一例である。
【図10】ハイライト効果画像がオーバーラップしたオブジェクトの画像を生成するためのフローチャート図である。
【図11】曲線(2点)式によるハイライト効果画像がオーバーラップしたオブジェクトの画像を生成するためのフローチャート図である。
【図12】本実施形態を実現できるハードウェアの構成の一例を示す図である。
【図13】図13(A)、(B)、(C)は、本実施形態が適用される種々の形態のシステムの例を示す図である。
【符号の説明】
100 処理部
110 ゲーム処理部
112 移動・動作演算部
120 ハイライト効果処理部
130 画像生成部
132 ジオメトリ処理部
134 描画部
150 音生成部
160 操作部
170 記憶部
172 メインメモリ
174 フレームバッファ
180 情報記憶媒体
190 表示部
192 音出力部
194 セーブ用情報記憶装置
196 通信部
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an image generation system and an information storage medium.
[0002]
[Background Art and Problems to be Solved by the Invention]
Conventionally, a game system that generates an image that can be seen from a given viewpoint in an object space that is a virtual three-dimensional space is known, and is popular as a device that can experience so-called virtual reality.
[0003]
Now, in such a game system, it is an important technical problem to generate a more realistic image in order to improve the player's virtual reality. Here, since the effect of light is important for generating a more realistic image, the light source processing corresponding to the image to be expressed is performed to more realistically express the three-dimensional effect and texture of the object.
[0004]
For example, the spherical object in FIG. 1A is an example of an image that has been subjected to glow shading with a light source in the upper left direction. In this method, the sphere is approximated by a polygon, and the luminance calculation is performed by taking into account the light source in the upper left direction at each vertex of the polygon, and each point in the polygon is drawn by obtaining the luminance by complement processing.
[0005]
When it is desired to express more intense light reflection, an image in which a highlight is generated on a part of the surface of the spherical object is generated as shown in FIG. If the luminance value by specular reflection is calculated for each point in the sphere object, the calculation load becomes enormous. For example, environment mapping is performed to express the highlight as shown in FIG.
[0006]
In such a light source processing method, the intensity of reflection is expressed by changing the size and brightness of the highlight in the object. However, it was not possible to express how the object was shining as if the object itself was emitting light due to strong reflection.
[0007]
In both cases, FIGS. 1A and 1B require a light source calculation at the apex of the sphere object and the calculation load is large.
[0008]
The present invention has been made in view of the above problems, and an object of the present invention is to provide an image generation system and an information storage capable of expressing a strong highlight effect caused by light reflection on an object with a small calculation load. May provide media.
[0009]
[Means for Solving the Problems]
(1) The present invention is an image generation system for generating an image,
Means for determining an arrangement position of a highlight effect object for generating an image of a highlight generated in the object by reflection of light based on a reflection point of light on the surface of the object;
Means for arranging a highlight effect object at the determined arrangement position and generating an image in which a highlight effect image overlaps the object;
It is characterized by including.
(2) The image generation system of the present invention includes:
At least one point on the object is defined as a reflection point in advance, and when a predetermined condition is satisfied, the arrangement position of the highlight effect object is determined based on the reflection point, and the highlight effect image overlaps the object An image is generated.
(3) The present invention provides a computer,
Means for determining an arrangement position of a highlight effect object for generating an image of a highlight generated in the object by reflection of light based on a reflection point of light on the surface of the object;
Means for arranging a highlight effect object at the determined arrangement position and generating an image in which a highlight effect image overlaps the object;
It is a computer-readable information storage medium that records a program for functioning as a computer.
(4) The information storage medium of the present invention is
At least one point on the object is defined as a reflection point in advance, and when a predetermined condition is satisfied, the arrangement position of the highlight effect object is determined based on the reflection point, and the highlight effect image overlaps the object An image is generated.
[0010]
DETAILED DESCRIPTION OF THE INVENTION
The present embodiment is a game system for generating an image, and based on a reflection point of light on the surface of the object, an arrangement position of a highlight effect object for generating a highlight image generated in the object by reflection of light And a means for arranging a highlight effect object at the decided arrangement position and generating an image in which a highlight effect image overlaps the object.
[0011]
The reflection point of light on the surface of the object may be calculated by a predetermined algorithm, or may be a point set in advance as a reflection point.
[0012]
Here, the highlight effect object may be formed of a polygon object, a free-form surface, a sprite, or another method.
[0013]
Further, the coordinates of the reflection point may be given along with the object, or a predetermined point in space may be given. Further, it may be given in three-dimensional coordinates or in two-dimensional coordinates.
[0014]
For example, in the case of a polygon object, the three-dimensional coordinates of the reflection point may be set as the arrangement position. In the case of a sprite, a two-dimensional coordinate obtained by converting the reflection point into a screen coordinate system may be used as the arrangement position.
[0015]
According to the present embodiment, the highlight effect object is provided separately from the object that reflects light. And, by placing the highlight effect object on the object that reflects light, to express the reflection of light, generate an image that shines as if the object itself is emitting light beyond the drawing area of the object can do.
[0016]
Further, since light source calculation at the vertex of the object is not necessary, an image in which light is reflected can be realized with a small calculation load.
[0017]
Therefore, according to the present embodiment, it is possible to provide a game system and an information storage medium that can express a strong highlight effect caused by reflection of light on an object with a small calculation load.
[0018]
The game system, information storage medium, and program according to the present embodiment are characterized in that an image in which a part of the highlight effect image protrudes from the object image and overlaps is generated.
[0019]
According to the present embodiment, it is possible to generate an image in which the highlight effect image protrudes from the object. Therefore, strong light reflection on the surface of the object can be expressed.
[0020]
The present embodiment is a game system that performs image generation, and in the case of expressing strong light reflection on the surface of an object, an object image in which a part of the highlight effect image protrudes from the object image and overlaps Means for generating a highlight effect image is included.
[0021]
The information storage medium according to the present embodiment is an information storage medium that can be used by a computer, and includes a program for executing the above means. The program according to the present embodiment is a program that can be used by a computer (including a program embodied in a carrier wave), and includes a processing routine for executing the above means.
[0022]
In addition, the game system, information storage medium, and program according to the present embodiment define at least one point on the object as a reflection point in advance, and when a predetermined condition is satisfied, the placement of the highlight effect object based on the reflection point A position is determined, and an image in which a highlight effect image overlaps the object is generated.
[0023]
The highlight set point is preferably set according to the shape and properties of the object. The predetermined condition may be, for example, a case where the reflection point, the light source, and the viewpoint have a predetermined positional relationship, or a case where a reflection timing is set and coincides with the timing.
[0024]
In this way, the light source calculation for setting the reflection point is not necessary, so that it is possible to reduce the calculation impossibility. Moreover, since reflection is performed when a preset reflection point satisfies a predetermined condition, the reflection of light can be expressed in a pseudo manner in a mode suitable for the game conditions.
[0025]
The game system, the information storage medium, and the program according to the present embodiment add a highlight effect image based on the means for calculating the intensity of reflected light of the object according to a predetermined algorithm and the intensity of the reflected light. Means for determining at least one of presence / absence, brightness of a highlight effect image, and size of a highlight effect image.
[0026]
According to the present embodiment, since at least one of the presence / absence of addition of the highlight effect image, the brightness of the highlight effect image, and the size of the highlight effect image is determined based on the intensity of the reflected light, The expression of light is not monotonous, and a reflection image rich in variety can be generated.
[0027]
Further, the game system, information storage medium, and program according to the present embodiment generate an image in which presence / absence of addition of a highlight effect image to an object changes according to a change in the intensity of the reflected light. To do.
[0028]
According to the present embodiment, an object is highlighted or not depending on the change in the intensity of the reflected light, which is effective in expressing the change in the intensity of the reflected light.
[0029]
In addition, the game system, the information storage medium, and the program according to the present embodiment are images in which at least one of the brightness and the size of the highlight effect image that overlaps the object changes according to the change in the intensity of the reflected light. Is generated.
[0030]
According to the present embodiment, when at least one of the brightness and the size of the highlight effect image that overlaps the object changes according to the change in the intensity of the reflected light, the change in the intensity of the reflected light is expressed. It is effective for.
[0031]
The game system, information storage medium, and program according to the present embodiment generate an image of an object in which a lens flare image overlaps with a highlight effect image.
[0032]
According to the present embodiment, it is possible to generate an image of an object in which a lens flare image overlaps with a highlight effect image, which is effective when expressing strong reflected light.
[0033]
In addition, the game system, information storage medium, and program according to the present embodiment can control the intensity of the reflected light based on the angle formed by the reflection vector obtained by reflecting the ray vector based on the normal vector at the reflection point and the line-of-sight vector. It is characterized by calculating.
[0034]
The case where the intensity of the reflected light is calculated based on the angle formed by the reflection vector obtained by reflecting the line-of-sight vector based on the normal vector at the reflection point and the ray vector is also included in the scope of the present embodiment.
[0035]
For example, when the light source is a point light source, the light vector incident on the reflection point may be a vector having a direction connecting the point light source and the reflection point with the reflection point as a viewpoint. Further, for example, when the light source is a parallel light source, a vector having a parallel ray direction with the reflection point as the viewpoint can be set as a light vector.
[0036]
The reflection vector of the light vector can be obtained, for example, by reflecting the light vector about the normal line set at the reflection point.
[0037]
In the present embodiment, the closer the angle formed between the reflection vector and the line-of-sight vector is to 0, the stronger the reflected light can be expressed. In general, the closer the angle between the reflection vector and the line-of-sight vector is to 0, the stronger the specular reflection becomes. Therefore, according to the present embodiment, it is possible to express highlights by specular reflection reflecting the light source, the reflection point, and the viewpoint position.
[0038]
In addition, the game system, information storage medium, and program according to the present embodiment determine at least one of the reflection point and the intensity of reflected light at the reflection point based on the luminance value obtained when the light source calculation of the object is performed. It is characterized by that.
[0039]
In general, luminance is obtained when an object is shaded. In the present embodiment, this is used to determine at least one of the reflection point and the intensity of reflected light at the reflection point. For this reason, it is not necessary to perform a new calculation to determine the reflection point and the intensity of the reflected light at the reflection point, so that a highlight effect image corresponding to the reflected light is generated at an optimal position without increasing the calculation load. can do.
[0040]
In addition, the game system, information storage medium, and program according to the present embodiment allow a highlight effect image in which highlights at each reflection point are integrated to overlap an object when a plurality of reflection points are close to each other. It is characterized by.
[0041]
According to the present embodiment, it is possible to display a highlight having a natural shape in an area including adjacent reflection points, as compared with a case where a highlight effect image is individually set for each point.
[0042]
The game system, information storage medium, and program according to the present embodiment are characterized in that an image in which a flare is applied to a reflection area of an object is generated as a highlight effect image that overlaps the reflection area.
[0043]
According to the present embodiment, it is possible to generate a highlight effect image having a shape corresponding to the reflection area.
[0044]
The game system, information storage medium, and program according to the present embodiment are
The reflection position specifying information is embedded in the texture mapped to the highlight effect object.
[0045]
Hereinafter, preferred embodiments of the present invention will be described with reference to the drawings.
[0046]
FIG. 2 shows an example of a block diagram of the present embodiment. In this figure, the present embodiment only needs to include at least the processing unit 100, and the other blocks can be arbitrary constituent elements.
[0047]
Here, the processing unit 100 performs various processes such as control of the entire system, instruction instruction to each block in the system, game processing, image processing, sound processing, and the like. , DSP, etc.) or ASIC (gate array, etc.) or a given program (game program).
[0048]
The operation unit 160 is used by the player to input operation data, and the function can be realized by hardware such as a lever, a button, and a housing.
[0049]
The storage unit 170 serves as a work area such as the processing unit 100 or the communication unit 196, and its function can be realized by hardware such as a RAM.
[0050]
An information storage medium (storage medium usable by a computer) 180 stores information such as programs and data, and functions thereof are an optical disk (CD, DVD), a magneto-optical disk (MO), a magnetic disk, and a hard disk. It can be realized by hardware such as a magnetic tape or a memory (ROM). The processing unit 100 performs various processes of the present invention (this embodiment) based on information stored in the information storage medium 180. That is, the information storage medium 180 stores information (program or data) for executing the means of the present invention (this embodiment) (particularly, the blocks included in the processing unit 100).
[0051]
Part or all of the information stored in the information storage medium 180 is transferred to the storage unit 170 when the system is powered on. Information stored in the information storage medium 180 includes program code, image data, sound data, display object shape data, table data, list data, and data for instructing the processing of the present invention. It includes at least one of information, information for performing processing according to the instruction, and the like.
[0052]
The display unit 190 outputs an image generated according to the present embodiment, and the function thereof can be realized by hardware such as a CRT, LCD, or HMD (head mounted display).
[0053]
The sound output unit 192 outputs the sound generated by the present embodiment, and its function can be realized by hardware such as a speaker.
[0054]
The save information storage device 194 stores player's personal data (save data), and the save information storage device 194 may be a memory card or a portable game device.
[0055]
The communication unit 196 performs various controls for communicating with the outside (for example, a host device or other game system), and functions thereof are various processors, hardware such as a communication ASIC, It can be realized by a program.
[0056]
The program or data for executing the means of the present invention (this embodiment) may be distributed from the information storage medium of the host device (server) to the information storage medium 180 via the network and the communication unit 196. Good. Use of such an information storage medium of the host device (server) is also included in the scope of the present invention.
[0057]
The processing unit 100 includes a game processing unit 110, an image generation unit 130, and a sound generation unit 150.
[0058]
Here, the game processing unit 110 receives a coin (price) reception process, various mode setting processes, a game progress process, a selection screen setting process, the position and rotation angle (X, Processing to obtain the rotation angle around the Y or Z axis), processing to move the object (motion processing), processing to obtain the viewpoint position (virtual camera position) and line-of-sight angle (virtual camera rotation angle), objects such as map objects Various games such as processing for placing a game in the object space, hit check processing, processing for calculating game results (results, results), processing for multiple players to play in a common game space, or game over processing The processing includes operation data from the operation unit 160, personal data from the save information storage device 194, Carried out on the basis of such as the over-time program.
[0059]
The highlight effect processing unit 120 determines an arrangement position of the highlight effect object for generating a highlight image generated in the object due to the reflection of light based on the reflection point of the light on the surface of the object, and is determined A process of arranging the highlight effect object at the arrangement position is performed.
[0060]
Here, it is preferable to arrange the highlight effect object so that a part of the highlight effect image protrudes from the object image and generates an overlapped image.
[0061]
Further, at least one point on the object may be defined as a reflection point in advance, and the arrangement position of the highlight effect object may be determined based on the reflection point when a predetermined condition is satisfied.
[0062]
The intensity of reflected light of the object is calculated according to a predetermined algorithm, and based on the calculated intensity of reflected light, whether or not a highlight effect image is added, the brightness of the highlight effect image, the size of the highlight effect image You may make it determine at least one of these.
[0063]
Whether or not a highlight effect image is added to the object may be changed according to the change in the intensity of the reflected light.
[0064]
At least one of the brightness and the size of the highlight effect image overlapping the object may be changed according to the change in the intensity of the reflected light.
[0065]
The lens flare image may overlap the object together with the highlight effect image.
[0066]
The intensity of the reflected light may be calculated based on the angle formed by the reflection vector obtained by reflecting the ray vector based on the normal vector at the reflection point and the line-of-sight vector.
[0067]
At least one of the reflection point and the intensity of the reflected light at the reflection point may be determined based on the luminance value obtained when the light source calculation of the object is performed.
[0068]
When there are a plurality of reflection points close to each other, a highlight effect image obtained by integrating highlights at the reflection points may be overlapped with the object.
[0069]
Processing necessary to generate an image with a flare in the reflection area of the object as a highlight effect image may be performed.
[0070]
The image generation unit 130 performs various types of image processing in accordance with instructions from the game processing unit 110, for example, generates an image that can be seen from a virtual camera (viewpoint) in the object space, and outputs the generated image to the display unit 190. In addition, the sound generation unit 150 performs various types of sound processing in accordance with instructions from the game processing unit 110, generates sounds such as BGM, sound effects, and voices, and outputs them to the sound output unit 192.
[0071]
Note that all of the functions of the game processing unit 110, the image generation unit 130, and the sound generation unit 150 may be realized by hardware, or all of them may be realized by a program. Alternatively, it may be realized by both hardware and a program.
[0072]
The game processing unit 110 includes a movement / motion calculation unit 112.
[0073]
Here, the movement / motion calculation unit 112 calculates movement information (position data, rotation angle data) and movement information (position data of each part of the object, rotation angle data) of an object such as a car. Based on operation data input by the player through the operation unit 160, a game program, or the like, a process of moving or moving an object is performed.
[0074]
More specifically, the movement / motion calculation unit 112 performs processing for obtaining the position and rotation angle of the object every frame (1/60 seconds), for example. For example, the position of the object in the (k-1) frame is PMk-1, the speed is VMk-1, the acceleration is AMk-1, and the time of one frame is Δt. Then, the position PMk and speed VMk of the object in the k frame are obtained, for example, by the following equations (1) and (2).
[0075]
PMk = PMk-1 + VMk-1 * .DELTA.t (1)
VMk = VMk-1 + AMk-1 * .DELTA.t (2)
The image generation unit 130 includes a geometry processing unit 132 and a drawing unit 134.
[0076]
Here, the geometry processing unit 132 performs various types of geometry processing (three-dimensional calculation) such as coordinate transformation, clipping processing, perspective transformation, or light source calculation. Then, the object data (shape data such as vertex coordinates of the object, vertex texture coordinates, luminance data, etc.) after geometry processing (after perspective transformation) is stored in the main memory 172 of the storage unit 170.
[0077]
The drawing unit 134 performs processing for drawing the object (model) after the geometry processing in the frame buffer 174.
[0078]
Note that the game system of the present embodiment may be a system dedicated to the single player mode in which only one player can play, and not only such a single player mode but also a multiplayer mode in which a plurality of players can play. A system may be provided.
[0079]
Further, when a plurality of players play, game images and game sounds to be provided to the plurality of players may be generated using one terminal, or connected via a network (transmission line, communication line) or the like. Alternatively, it may be generated using a plurality of terminals.
[0080]
FIG. 3 is an example of a spherical object image in which the highlight effect images overlap in the present embodiment.
[0081]
As shown in the figure, in the present embodiment, it is possible to generate an image in which a part of the highlight effect image 10 protrudes from the spherical object image and overlaps.
[0082]
In the present embodiment, as shown in FIG. 3, it is possible to express a state where the object itself is shining as if it is emitting light, and thus it is possible to express strong light reflection on the surface of the object.
[0083]
FIG. 4 is a diagram for explaining a generation example of a highlight effect image when a plate polygon is used as a highlight effect object.
[0084]
As shown in the figure, the reflection point 220 of light on the surface of the spherical object 210 arranged in the viewpoint coordinate system (three-dimensional space) is determined as the arrangement position of the plate polygon 230, and the plate polygon 230 is arranged. Here, for example, the reflection point 220 may be set in advance to a point where reflection is desired or a point where reflection is likely to occur. Further, based on the viewpoint position and the light source position, a point where specular reflection is most likely to occur may be calculated in real time and set as a reflection point.
[0085]
Then, by drawing the sphere object and the plate polygon using the method of generating a three-dimensional image, it is possible to generate an image of the sphere object in which the highlight effect images overlap as shown in FIG.
[0086]
According to the method of this embodiment, after the plate polygon for generating the highlight effect image is arranged at the reflection point, it is only necessary to perform normal three-dimensional image generation. That is, if a reflection point is given, light source calculation at the vertex of the sphere object or the like is not required after that, so that light reflection can be expressed with a small calculation load.
[0087]
FIG. 5 is a diagram for explaining a generation example of a highlight effect image when a sprite is used as a highlight effect object.
[0088]
As shown in the drawing, the arrangement position of the sprite 280 is determined at the light reflection point 270 on the image 260 of the spherical object drawn in the drawing area (two-dimensional space) 250, and the sprite 280 is arranged.
[0089]
Here, when the reflection point is given, for example, in a three-dimensional manner, this is coordinate-converted into a screen coordinate system to obtain a light reflection point 270 on the drawing area.
[0090]
As shown in the figure, by drawing a sprite 280 that maps textures for a highlight effect image in an overlapping manner with a sphere object image 260, a sphere object with a highlight as shown in FIG. An image can be generated.
[0091]
According to the method of the present embodiment, it is only necessary to arrange the sprite for generating the highlight effect image at the reflection point, and it is not necessary to perform light source calculation at the vertex of the spherical object. For this reason, the reflection of light can be expressed without increasing the calculation load.
[0092]
FIG. 6 is a diagram for explaining an example of a technique for obtaining the intensity of reflection at a light reflection point in the present embodiment.
[0093]
Reference numeral 320 denotes a reflection point given on the spherical object 310, and the light source 340 is assumed to be a point light source. A normal vector 350 is set at the reflection point 320.
[0094]
Since the light source 340 is a point light source, a vector having a reflection point 320 as a starting point and a direction connecting the reflection point 320 and the light source 340 as a direction is referred to as a light vector 370. Then, the reflection vector 360 is obtained by reflecting the ray vector 370 with the normal (normal vector 350) set at the reflection point 320 as an axis.
[0095]
A vector having the reflection point 320 as a starting point and the direction connecting the reflection point 320 and the viewpoint 330 as the direction is defined as a line-of-sight vector 380.
[0096]
In the present embodiment, the intensity of the reflected light is set to increase as the angle formed by the reflection vector 360 and the line-of-sight vector 380 is closer to zero.
[0097]
Even in the real world, specular reflection becomes stronger as the angle between the reflection vector and the line-of-sight vector is closer to zero. Therefore, by setting in this way, highlights by specular reflection reflecting the positions of the light source 340, the reflection point 320, and the viewpoint 330 can be expressed.
[0098]
FIG. 7 is a diagram for explaining a reflection point setting method.
[0099]
For example, when an image of a fighter object as shown in FIG. 7 is generated, the glass window portion is the portion where the light reflection is most likely to occur in the fighter aircraft.
[0100]
Therefore, for example, a glass window portion is set as the reflection region 450, and a plurality of reflection points 460 are set in the reflection region. For example, the highlight effect image may be set when the reflection intensity at the reflection point reaches a predetermined value.
[0101]
In this way, by estimating the reflective area where specular reflection is most likely to occur based on the material and shape of the object, and setting the reflection point there to generate a highlight effect image, it is possible to easily create a realistic reflected image in a pseudo manner Can be generated.
[0102]
Further, for example, an area of a glass window may be set as a reflection area, and an image with a flare on the reflection area may be generated as a highlight effect image that overlaps the reflection area.
[0103]
FIGS. 8A, 8B, and 8C are diagrams for explaining changes in the highlight effect image according to the intensity of the reflected light.
[0104]
8A shows a case where the reflected light is weak, FIG. 8B shows a case where the reflected light is strong, and FIG. 8C shows a case where the reflected light is very strong.
[0105]
In the present embodiment, as shown in FIGS. 8A and 8B, the size and brightness of the highlight effect image are increased as the reflected light becomes stronger.
[0106]
For example, a plurality of sprites for generating highlight effect images of different sizes are prepared, and the optimum sprite is selected according to the intensity of reflected light obtained by the method of FIG. An image may be generated.
[0107]
By changing the size or the like of the highlight effect image in this way, it is possible to simulate the appearance of the reflected light becoming stronger.
[0108]
Further, in the present embodiment, when the reflected light becomes stronger, as shown in FIG. 8C, an image of the object that overlaps the lens flare image together with the highlight effect image is generated.
[0109]
As a result, it is possible to simulate a state in which the reflected light is very strong.
[0110]
FIG. 9 is an example of a highlight effect image in which highlight effect images at a plurality of reflection points are integrated.
[0111]
In this embodiment, when a plurality of adjacent points 410 and 420 are set as reflection points, a highlight effect image in which highlight effect images set at the respective reflection points are integrated as shown in 430 is generated. Is done.
[0112]
By doing so, it is possible to generate a highlight effect image having a more natural shape as compared with the case where a highlight effect image is individually set for each point.
[0113]
FIG. 10 is a flowchart for generating an image of an object in which highlight effect images overlap.
[0114]
First, when generating model information, a reflection point is set for the object, and the reflection point information is prepared as model information (step S10). Here, a plurality of reflection points may be set. The reflection point may be set to a point where specular reflection is likely to occur, for example, from the shape or material of the object.
[0115]
As reflection point information, for example, coordinates P (X, Y, Z) of the reflection point, normal vectors at the reflection point, highlight attributes (type, pow, c), and the like are set. Here, type is a sprite type and indicates a sprite type used to generate a highlight effect image. pow is the highlight intensity, and is used as a coefficient when calculating the highlight size and brightness of the highlight effect image. Further, c is a threshold value of θ for determining whether or not a highlight effect image is generated at the reflection point.
[0116]
Next, in the image generation process, the processes in steps S20 to S90 are repeated until the process is completed for all the reflection points set in step S10.
[0117]
That is, first, a ray vector is obtained with the reflection point as the start point and the direction connecting the reflection point and the light source as the direction (step S20, see 370 in FIG. 6).
[0118]
A reflection vector is obtained by reflecting the ray vector around the normal vector set as the reflection point information at the reflection point (see step S30, 360 in FIG. 6).
[0119]
Further, a line-of-sight vector 380 is obtained as a vector having the reflection point as the start point and the direction connecting the reflection point and the viewpoint as the direction (see step S40, 380 in FIG. 6).
[0120]
Then, an angle θ formed by the reflection vector and the line-of-sight vector is obtained (step S50).
[0121]
When θ is equal to or smaller than the threshold set in the reflection point information, the highlight size and brightness of the highlight effect image are based on the value of θ and the highlight intensity set as the reflection point information at the reflection point. Is calculated (steps S60 and S70).
[0122]
A sprite for generating a highlight effect image having the calculated size and brightness is set as a reflection point (step S80).
[0123]
If the above processing has not been completed for all the set reflection points, the processing of steps S20 to S90 is performed for the next reflection point, and if the above processing has been completed for all the set reflection points, the processing is performed. Exit.
[0124]
FIG. 11 is a flowchart for generating an image of an object in which highlight effect images according to a curved line (two points) equation are overlapped.
[0125]
First, when generating model information, a reflection region R connecting two reflection points (P0, P1) to an object is set, and reflection region information is prepared as model information (step S110). Here, a plurality of reflection regions may be set. For example, an area where specular reflection is likely to occur may be set based on the shape or material of the object.
[0126]
As the reflection area information, the normal vector (n0, n1) of the reflection point (P0, P1), the highlight attribute (sprite type, intensity, threshold value), etc. are set. Here, the two normal vectors (n0, n1) are set so as not to be parallel.
[0127]
Next, in the image generation process, the processes in steps S120 to S160 are repeated until the process is completed for all the reflection areas set in step S110.
[0128]
First, the reflection point Pt at which the angle θ formed by the reflection vector reflecting the ray vector in the reflection region R and the line-of-sight vector is minimized is calculated (step S120).
[0129]
That is, θ is determined for each point on the reflection region R by the same method as in steps S20 to S50 in FIG. Here, each point on the reflection region R is regarded as a point on a continuous curve sandwiched by (P0, P1), and is calculated assuming a continuous value in the range of the normal vector (n0 to n1) of each point. To do.
[0130]
When θ is equal to or less than the threshold set in the reflection area information, the highlight size and brightness of the highlight effect image based on the value of θ and the highlight intensity set as the reflection point information at the reflection point. Is calculated (steps S130 and S140).
[0131]
A sprite for generating a highlight effect image having the calculated size and brightness is set as the reflection point Pt (step S150). The shape of the highlight in this case is preferably a shape integrally formed along a line connecting two points as shown in FIG. 9, for example.
[0132]
If the above processing has not been completed for all the set reflection areas, the processing of steps S120 to S160 is performed for the next reflection area, and if the above processing has been completed for all the set reflection areas, the processing is performed. Exit.
[0133]
By setting a reflection region R surrounded by three reflection points (P0, P1, P2) on the object, an image of the object in which the highlight effect image by the curved surface (three points) equation is overlapped may be generated. it can. Here, the normal vectors (n0, n1, n3) of (P0, P1, P2) are set so as not to be parallel to each other.
[0134]
In the case of the curved surface (three points) equation, in step S120 of FIG. 11, among the reflection region R surrounded by the three reflection points (P0, P1, P2), the reflection vector and the line-of-sight vector reflected by the light vector are reflected. The reflection point Pt that minimizes the angle θ formed may be calculated. Here, the normal vector of each point may be obtained by regarding the reflection region R as a smooth curved surface surrounded by (P0, P1, P2).
[0135]
Next, an example of a hardware configuration capable of realizing the present embodiment will be described with reference to FIG.
[0136]
The main processor 900 operates based on a program stored in the CD 982 (information storage medium), a program transferred via the communication interface 990, or a program stored in the ROM 950 (one of information storage media). Various processes such as processing, image processing, and sound processing are executed.
[0137]
The coprocessor 902 assists the processing of the main processor 900, has a product-sum calculator and a divider capable of high-speed parallel calculation, and executes matrix calculation (vector calculation) at high speed. For example, if a physical simulation for moving or moving an object requires processing such as matrix operation, a program operating on the main processor 900 instructs (requests) the processing to the coprocessor 902. )
[0138]
The geometry processor 904 performs geometry processing such as coordinate transformation, perspective transformation, light source calculation, and curved surface generation, has a product-sum calculator and a divider capable of high-speed parallel computation, and performs matrix computation (vector computation). Run fast. For example, when processing such as coordinate transformation, perspective transformation, and light source calculation is performed, a program operating on the main processor 900 instructs the geometry processor 904 to perform the processing.
[0139]
The data decompression processor 906 performs a decoding process for decompressing the compressed image data and sound data, and a process for accelerating the decoding process of the main processor 900. As a result, a moving image compressed by a given image compression method can be displayed on an opening screen, an intermission screen, an ending screen, a game screen, or the like. Note that the image data and sound data to be decoded are stored in the ROM 950 and the CD 982 or transferred from the outside via the communication interface 990.
[0140]
The drawing processor 910 performs drawing (rendering) processing of an object composed of primitive surfaces such as polygons and curved surfaces at high speed. When drawing an object, the main processor 900 uses the function of the DMA controller 970 to pass the object data to the drawing processor 910 and transfer the texture to the texture storage unit 924 if necessary. Then, the rendering processor 910 renders the object in the frame buffer 922 at high speed while performing hidden surface removal using a Z buffer or the like based on the object data and texture. The drawing processor 910 can also perform α blending (translucent processing), depth cueing, mip mapping, fog processing, bilinear filtering, trilinear filtering, anti-aliasing, shading processing, and the like. When an image for one frame is written in the frame buffer 922, the image is displayed on the display 912.
[0141]
The sound processor 930 includes a multi-channel ADPCM sound source and the like, and generates high-quality game sounds such as BGM, sound effects, and sounds. The generated game sound is output from the speaker 932.
[0142]
Operation data from the game controller 942, save data from the memory card 944, and personal data are transferred via the serial interface 940.
[0143]
The ROM 950 stores system programs and the like. In the case of an arcade game system, the ROM 950 functions as an information storage medium, and various programs are stored in the ROM 950. A hard disk may be used instead of the ROM 950.
[0144]
The RAM 960 is used as a work area for various processors.
[0145]
The DMA controller 970 controls DMA transfer between the processor and memory (RAM, VRAM, ROM, etc.).
[0146]
The CD drive 980 drives a CD 982 (information storage medium) in which programs, image data, sound data, and the like are stored, and enables access to these programs and data.
[0147]
The communication interface 990 is an interface for transferring data to and from the outside via a network. In this case, as a network connected to the communication interface 990, a communication line (analog telephone line, ISDN), a high-speed serial bus, or the like can be considered. By using a communication line, data transfer via the Internet becomes possible. Also, by using the high-speed serial bus, data transfer between other game systems and other game systems becomes possible.
[0148]
All of the means of the present invention may be executed by hardware alone, or may be executed only by a program stored in an information storage medium or a program distributed via a communication interface. Alternatively, it may be executed by both hardware and a program.
[0149]
When each means of the present invention is executed by both hardware and a program, a program for executing each means of the present invention using hardware is stored in the information storage medium. Become. More specifically, the program instructs each processor 902, 904, 906, 910, 930, etc., which is hardware, and passes data if necessary. Each processor 902, 904, 906, 910, 930, etc. executes each means of the present invention based on the instruction and the passed data.
[0150]
FIG. 13A shows an example when the present embodiment is applied to an arcade game system. The player enjoys the game by operating the lever 1102, the button 1104, and the like while viewing the game image displayed on the display 1100. Various processors and various memories are mounted on the built-in system board (circuit board) 1106. Information (program or data) for executing each means of the present invention is stored in a memory 1108 which is an information storage medium on the system board 1106. Hereinafter, this information is referred to as storage information.
[0151]
FIG. 13B shows an example in which this embodiment is applied to a home game system. The player enjoys the game by operating the game controllers 1202 and 1204 while viewing the game image displayed on the display 1200. In this case, the stored information is stored in a CD 1206 or a memory card 1208, 1209, which is an information storage medium that is detachable from the main system.
[0152]
FIG. 13C shows a host device 1300 and terminals 1304-1 to 1304-n connected to the host device 1300 via a network 1302 (a small-scale network such as a LAN or a wide area network such as the Internet). An example of applying this embodiment to a system including In this case, the stored information is stored in an information storage medium 1306 such as a magnetic disk device, a magnetic tape device, or a memory that can be controlled by the host device 1300, for example. When the terminals 1304-1 to 1304-n can generate game images and game sounds stand-alone, the host device 1300 receives a game program and the like for generating game images and game sounds from the terminal 1304-. 1 to 1304-n. On the other hand, if it cannot be generated stand-alone, the host device 1300 generates a game image and a game sound, which is transmitted to the terminals 1304-1 to 1304-n and output at the terminal.
[0153]
In the case of the configuration shown in FIG. 13C, each unit of the present invention may be executed in a distributed manner between the host device (server) and the terminal. The storage information for executing each means of the present invention may be distributed and stored in the information storage medium of the host device (server) and the information storage medium of the terminal.
[0154]
The terminal connected to the network may be a home game system or an arcade game system. When the arcade game system is connected to a network, the save information storage device can exchange information with the arcade game system and exchange information with the home game system. It is desirable to use (memory card, portable game device).
[0155]
The present invention is not limited to the one described in the above embodiment, and various modifications can be made.
[0156]
For example, in the invention according to the dependent claims of the present invention, a part of the constituent features of the dependent claims can be omitted. Moreover, the principal part of the invention according to one independent claim of the present invention can be made dependent on another independent claim.
[0157]
In this embodiment, the case where the highlight effect object is a sprite or a plate polygon has been described as an example. However, the present invention is not limited to this. For example, it may be composed of a polygon object composed of a plurality of polygons, or may be composed of a free-form surface.
[0158]
In this embodiment, the case where a reflection point is provided as model information of an object has been described, but the present invention is not limited to this. For example, reflection position specifying information may be embedded in the texture mapped to the highlight effect object.
[0159]
The present invention can also be applied to various games (such as fighting games, shooting games, robot battle games, sports games, competitive games, role playing games, music playing games, dance games, etc.).
[0160]
Further, the present invention can be applied to various game systems such as a business game system, a home game system, a large attraction system in which a large number of players participate, a simulator, a multimedia terminal, and a system board for generating game images.
[Brief description of the drawings]
FIGS. 1A and 1B are diagrams for explaining conventional light source processing.
FIG. 2 is an example of a block diagram of the game system of the present embodiment.
FIG. 3 is an image example of a spherical object in which highlight effect images in the present embodiment overlap.
FIG. 4 is a diagram for describing a generation example of a highlight effect image when a plate polygon is used as a highlight effect object.
FIG. 5 is a diagram for describing a generation example of a highlight effect image when a sprite is used as a highlight effect object.
FIG. 6 is a diagram for explaining an example of a technique for obtaining the intensity of reflection at a light reflection point in the present embodiment.
FIG. 7 is a diagram for explaining a reflection point setting method;
FIGS. 8A, 8B, and 8C are diagrams for explaining changes in the highlight effect image according to the intensity of the reflected light. FIGS.
FIG. 9 is an example of a highlight effect image in which highlight effect images at a plurality of reflection points are integrated.
FIG. 10 is a flowchart for generating an image of an object in which highlight effect images overlap.
FIG. 11 is a flowchart for generating an image of an object in which highlight effect images are overlapped by a curved line (two points) equation;
FIG. 12 is a diagram illustrating an example of a hardware configuration capable of realizing the present embodiment.
FIGS. 13A, 13B, and 13C are diagrams illustrating examples of various types of systems to which the present embodiment is applied.
[Explanation of symbols]
100 processor
110 Game processor
112 Movement / motion calculation unit
120 Highlight effect processing section
130 Image generator
132 Geometry processing part
134 Drawing part
150 sound generator
160 Operation unit
170 Storage unit
172 Main memory
174 frame buffer
180 Information storage medium
190 Display
192 sound output section
194 Information storage device for saving
196 Communication Department

Claims (4)

画像生成を行う画像生成システムであって、
光の反射によりオブジェクトに生じるハイライトの画像を生成するためのハイライト効果オブジェクトの配置位置を決定する配置位置決定手段と、
決定された配置位置にハイライト効果オブジェクトを配置して、ハイライト効果画像が前記オブジェクトにオーバーラップした画像を生成する手段とを、含み、
前記配置位置決定手段は、
オブジェクト上に予め設定されている1又は複数の反射点について反射点情報をモデル情報として設定しておき、前記反射点情報を用いて前記反射点における反射の強さを演算し、演算結果に基づき前記1又は複数の反射点にハイライト効果オブジェクトを配置するか否か決定することを特徴とする画像生成システム。
An image generation system for generating an image,
An arrangement position determining means for determining an arrangement position of a highlight effect object for generating an image of highlight generated in the object by reflection of light;
Means for arranging a highlight effect object at a determined arrangement position, and generating an image in which a highlight effect image overlaps the object,
The arrangement position determining means includes
Reflection point information is set as model information for one or more reflection points set in advance on the object, and the intensity of reflection at the reflection point is calculated using the reflection point information. An image generation system that determines whether or not to place a highlight effect object at the one or more reflection points.
請求項1において
前記配置位置決定手段は、
前記オブジェクトの素材や形状により鏡面反射が起こりやすい部分を反射領域として設定し、当該反射領域に複数の反射点を設定しておくことを特徴とする画像生成システム。
In claim 1 ,
The arrangement position determining means includes
An image generation system characterized in that a portion where specular reflection is likely to occur due to the material and shape of the object is set as a reflection area, and a plurality of reflection points are set in the reflection area.
コンピュータが読み取り可能な情報記憶媒体であって、
光の反射によりオブジェクトに生じるハイライトの画像を生成するためのハイライト効果オブジェクトの配置位置を決定する配置位置決定手段と、
決定された配置位置にハイライト効果オブジェクトを配置して、ハイライト効果画像が前記オブジェクトにオーバーラップした画像を生成する手段と、してコンピュータを機能させるプログラムが記憶され、
前記配置位置決定手段は、
オブジェクト上に予め設定されている1又は複数の反射点について反射点情報をモデル情報として設定しておき、前記反射点情報を用いて前記反射点における反射の強さを演算し、演算結果に基づき前記1又は複数の反射点にハイライト効果オブジェクトを配置するか否か決定することを特徴とする情報記憶媒体。
A computer-readable information storage medium,
An arrangement position determining means for determining an arrangement position of a highlight effect object for generating an image of highlight generated in the object by reflection of light;
A program for causing a computer to function as a means for arranging a highlight effect object at the determined arrangement position and generating an image in which a highlight effect image overlaps the object is stored,
The arrangement position determining means includes
Reflection point information is set as model information for one or more reflection points set in advance on the object, and the intensity of reflection at the reflection point is calculated using the reflection point information. An information storage medium for determining whether or not to place a highlight effect object at the one or more reflection points.
請求項3において、
前記配置位置決定手段は、
前記オブジェクトの素材や形状により鏡面反射が起こりやすい部分を反射領域として設定し、当該反射領域に複数の反射点を設定しておくことを特徴とする情報記憶媒体。
In claim 3,
The arrangement position determining means includes
An information storage medium characterized in that a portion where specular reflection is likely to occur depending on the material and shape of the object is set as a reflection area, and a plurality of reflection points are set in the reflection area.
JP2003103439A 2003-04-07 2003-04-07 Image generation system and information storage medium Expired - Lifetime JP4530326B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003103439A JP4530326B2 (en) 2003-04-07 2003-04-07 Image generation system and information storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003103439A JP4530326B2 (en) 2003-04-07 2003-04-07 Image generation system and information storage medium

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2000144522A Division JP3442344B2 (en) 2000-05-17 2000-05-17 GAME SYSTEM AND INFORMATION STORAGE MEDIUM

Publications (2)

Publication Number Publication Date
JP2004005563A JP2004005563A (en) 2004-01-08
JP4530326B2 true JP4530326B2 (en) 2010-08-25

Family

ID=30437951

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003103439A Expired - Lifetime JP4530326B2 (en) 2003-04-07 2003-04-07 Image generation system and information storage medium

Country Status (1)

Country Link
JP (1) JP4530326B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5849075B2 (en) * 2013-09-12 2016-01-27 株式会社コナミデジタルエンタテインメント Image processing apparatus, image processing method, and program
CN120238672A (en) * 2023-12-28 2025-07-01 北京字跳网络技术有限公司 Video processing method, device, equipment, computer-readable storage medium and product

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0234068B2 (en) * 1984-05-25 1990-08-01 Hitachi Ltd MENNOTEKUSUCHAHYOJIHOSHIKI
JP3720890B2 (en) * 1995-12-12 2005-11-30 株式会社ルネサステクノロジ Image generation device
JP2000057372A (en) * 1998-08-10 2000-02-25 Taito Corp Image processor, image processing method and storage medium
JP3420957B2 (en) * 1998-12-29 2003-06-30 株式会社ナムコ GAME DEVICE AND INFORMATION STORAGE MEDIUM

Also Published As

Publication number Publication date
JP2004005563A (en) 2004-01-08

Similar Documents

Publication Publication Date Title
JP3249955B2 (en) Image generation system and information storage medium
JP3656012B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP3442344B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP4167358B2 (en) Image generation system and information storage medium
JP4229319B2 (en) Image generation system, program, and information storage medium
JP4245356B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP4367804B2 (en) Image generation system and information storage medium
JP3297410B2 (en) Image generation system and information storage medium
JP2001229403A (en) Game system and information storage medium
JP4530326B2 (en) Image generation system and information storage medium
JP4574058B2 (en) Image generation system, program, and information storage medium
JP4394211B2 (en) Image generation system and information storage medium
JP3431562B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP2003162734A (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP4592039B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP3614340B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP3377490B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP4803909B2 (en) Image generation system, program, and information storage medium
JP4632530B2 (en) GAME SYSTEM, PROGRAM, AND INFORMATION STORAGE MEDIUM
JP4413369B2 (en) Image generation system and information storage medium
JP4610729B2 (en) GAME SYSTEM, PROGRAM, AND INFORMATION STORAGE MEDIUM
JP2005209217A (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP2005275795A (en) Program, information storage medium, and image generation system
JP4480322B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP2004329791A (en) Image generation system, program, and information storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070417

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091216

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100215

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100317

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100514

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100604

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4530326

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130618

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130618

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130618

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

EXPY Cancellation because of completion of term