[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP3777288B2 - GAME SYSTEM AND INFORMATION STORAGE MEDIUM - Google Patents

GAME SYSTEM AND INFORMATION STORAGE MEDIUM Download PDF

Info

Publication number
JP3777288B2
JP3777288B2 JP2000136674A JP2000136674A JP3777288B2 JP 3777288 B2 JP3777288 B2 JP 3777288B2 JP 2000136674 A JP2000136674 A JP 2000136674A JP 2000136674 A JP2000136674 A JP 2000136674A JP 3777288 B2 JP3777288 B2 JP 3777288B2
Authority
JP
Japan
Prior art keywords
texture
information
shadow
mask
image
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
JP2000136674A
Other languages
Japanese (ja)
Other versions
JP2001319244A (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.)
Namco Ltd
Original Assignee
Namco Ltd
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 filed Critical Namco Ltd
Priority to JP2000136674A priority Critical patent/JP3777288B2/en
Publication of JP2001319244A publication Critical patent/JP2001319244A/en
Application granted granted Critical
Publication of JP3777288B2 publication Critical patent/JP3777288B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6646Methods for processing data by generating or executing the game program for rendering three dimensional images for the computation and display of the shadow of an object or character

Landscapes

  • Image Generation (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、ゲームシステム及び情報記憶媒体に関する。
【0002】
【背景技術及び発明が解決しようとする課題】
従来より、仮想的な3次元空間であるオブジェクト空間内の所与の視点から見える画像を生成するゲームシステムが知られており、いわゆる仮想現実を体験できるものとして人気が高い。ロールプレイングゲームを楽しむことができるゲームシステムを例にとれば、プレーヤは、キャラクタ(オブジェクト)を操作してオブジェクト空間内のマップ上で移動させ、敵キャラクタと対戦したり、他のキャラクタと対話したり、様々な町を訪れたりすることでゲームを楽しむ。
【0003】
さて、このようなゲームシステムでは、キャラクタなどを表すオブジェクトは、通常、複数のポリゴン(プリミティブ面)により構成される。そして、このポリゴンにより構成されたオブジェクト(モデル)をオブジェクト空間内に配置し、ジオメトリ処理(3次元演算)を行って、仮想カメラ(視点)から見える画像を生成する。これにより、仮想カメラにより様々な方向からこのオブジェクトを見た場合にも、矛盾の無いゲーム画像を生成できるようになる。
【0004】
ところが、このようにして生成されたゲーム画像は、数学的には正しい画像ではあるが、今一つプレーヤの情感に訴えることができないという問題がある。
【0005】
例えば、アニメや漫画などに登場するキャラクタをオブジェクトにより表現する場合を考える。このような場合に、グーローシェーディングやフォンシェーディングによりオブジェクトに陰影づけを行うと、リアルな画像を得ることができる反面、アニメや漫画などで一般の人が慣れ親しんでいるものとは異なった雰囲気の画像が生成されてしまう。
【0006】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、アニメや漫画に登場するキャラクタなどを表現するオブジェクトに最適な陰影づけを可能にするゲームシステム及び情報記憶媒体を提供することにある。
【0007】
【課題を解決するための手段】
上記課題を解決するために、本発明は、画像生成を行うゲームシステムであって、オブジェクトの情報と光源情報とに基づいて、陰影表現画像を描画すべき陰影領域を特定するためのマスク情報を生成する手段と、生成された前記マスク情報に基づいて、オブジェクトの陰影領域に陰影表現画像を描画する手段とを含むことを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体であって、上記手段を実行するためのプログラムを含むことを特徴とする。また本発明に係るプログラムは、コンピュータにより使用可能なプログラム(搬送波に具現化されるプログラムを含む)であって、上記手段を実行するための処理ルーチンを含むことを特徴とする。
【0008】
本発明によれば、オブジェクトの情報(例えば、オブジェクトの各面の方向を表す法線ベクトルや当該フレームでのオブジェクトの位置、回転角度データ等)と光源情報(例えば光源ベクトルや光源位置)とに基づいて、陰影領域を特定するためのマスク情報(例えばαプレーン)が生成される。そして、このマスク情報に基づいて陰影領域に陰影表現画像が描画される。
【0009】
従って、本発明によれば、プリミティブ面により構成された3次元のオブジェクトに対して、2次元的な陰影表現画像を描画することが可能になり、アニメや漫画に登場するキャラクタなどを表現するオブジェクトに最適な陰影づけが可能になる。
【0010】
また本発明によれば、陰影領域はオブジェクトの情報と光源情報とにより特定されるため、オブジェクトや光源の位置、方向が変化すると、それに応じて陰影領域の位置や形状もリアルタイムに変化するようになる。従って、陰影領域の位置や形状については、通常のグーローシェーディングやフォンシェーディングなどの陰影処理で得られる陰影領域のように変化する一方で、その陰影領域に描画される陰影表現画像だけを2次元的な絵にすることが可能になる。
【0011】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、オブジェクトの元画像とオブジェクトの陰影表現画像とを、生成された前記マスク情報に基づいてマスク合成することで、陰影領域に陰影表現画像が描画されたオブジェクトの画像を生成することを特徴とする。この場合のマスク合成は、例えば、描画領域の各ピクセルにα値を設定し、このα値に基づいて、そのピクセルに元画像を描画するか或いは陰影表現画像を描画するかを判断することなどにより実現できる。
【0012】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、描画領域に描画されたオブジェクトの元画像を少なくとも内包する形状のプリミティブ面を、陰影表現画像のテクスチャをマッピングしながら描画領域に描画することで、陰影領域に陰影表現画像を描画することを特徴とする。このようにすれば、陰影表現画像のテクスチャをプリミティブ面にマッピングするだけという簡素な処理で、陰影領域に陰影表現画像を描画できるようになり、処理負荷を軽減できる。また、陰影表現画像のテクスチャを差し替えるだけで、種々の陰影表現画像を陰影領域に描画できるようになり、生成される画像のバラエティ度を増すことができる。
【0013】
なお、この場合のプリミティブ面は画面サイズのプリミティブ面であってもよいし、オブジェクトやオブジェクトを内包する簡易オブジェクトの形状データに基づき生成されるプリミティブ面であってもよい。
【0014】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、オブジェクトの情報と光源情報とに基づいてマスク生成用テクスチャを指定するためのテクスチャ座標を求め、求められたテクスチャ座標に基づいてマスク生成用テクスチャをオブジェクトにマッピングすることで、前記マスク情報を生成することを特徴とする。このようにすれば、マスク生成用テクスチャをオブジェクトにマッピングするだけという簡素な処理で、マスク情報を生成できるようになり、処理負荷を軽減できる。
【0015】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、前記マスク生成用テクスチャが、第1のテクスチャパターンと、前記第1のテクスチャパターンの各テクセルに設定されるα値とは異なるα値が各テクセルに設定される第2のテクスチャパターンとを有し、前記マスク生成用テクスチャを指定するためのテクスチャ座標が第1の値から第2の値の間である場合には、前記第1のテクスチャパターンが指定され、前記テクスチャ座標が第2の値から第3の値の間にある場合には、前記第2のテクスチャパターンが指定されることを特徴とする。このようにすれば、第2の値を変化させるだけで、陰影領域の範囲を制御できるようになり、生成される画像のバラエティ度を増すことができる。
【0016】
また本発明に係るゲームシステム、情報記憶媒体及びプログラムは、下地テクスチャがマッピングされるオブジェクトとマスク生成用テクスチャがマッピングされるオブジェクトとを重ねて描画することで、下地テクスチャの画像データとマスク生成用テクスチャのα値を、描画領域の各ピクセルに設定することを特徴とする。このようにすれば、描画領域の各ピクセルに設定されたα値をマスク情報として使用して、元画像(下地テクスチャがマッピングされたオブジェクトの画像)と陰影表現画像とをマスク合成できるようになる。
【0017】
なお、マスク生成用テクスチャがマッピングされるオブジェクトを描画領域に描画する際には、下地テクスチャがマッピングされるオブジェクトにジオメトリ処理を施すことで得られた描画データ(例えば透視変換後のポリゴンデータ)を再利用することが望ましい。このようにすれば、マスク生成用テクスチャがマッピングされるオブジェクトに対するジオメトリ処理を省略することが可能になり、処理負荷を軽減できる。
【0018】
また本発明は、画像生成を行うゲームシステムであって、オブジェクトの元画像を描画領域に描画する手段と、オブジェクトの2次元の元画像が描画された描画領域において、陰影表現画像を描画すべき陰影領域をオブジェクトの情報と光源情報とに基づき特定し、特定された陰影領域にオブジェクトの2次元の陰影表現画像を描画する手段とを含むことを特徴とする。また本発明に係る情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体であって、上記手段を実行するためのプログラムを含むことを特徴とする。また本発明に係るプログラムは、コンピュータにより使用可能なプログラム(搬送波に具現化されるプログラムを含む)であって、上記手段を実行するための処理ルーチンを含むことを特徴とする。
【0019】
本発明によれば、オブジェクトの情報と光源情報とにより特定される陰影領域に、2次元の陰影表現画像が描画されるようになる。従って、オブジェクトや背景に対してはジオメトリ処理に基づくパースがかかる一方で、陰影領域に描画される陰影表示画像にはパースがかからなくなる。従って、一般人がアニメや漫画で慣れ親しんでいるスクリーントーン風の2次元的な陰影をオブジェクトに施すことが可能になり、アニメや漫画に登場するキャラクタを表現するオブジェクトに最適な陰影づけが可能になる。
【0020】
【発明の実施の形態】
以下、本発明の好適な実施形態について図面を用いて説明する。
【0021】
1.構成
図1に、本実施形態のゲームシステム(画像生成システム)のブロック図の一例を示す。なお同図において本実施形態は、少なくとも処理部100を含めばよく(或いは処理部100と記憶部170を含めばよく)、それ以外のブロックについては任意の構成要素とすることができる。
【0022】
操作部160は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、マイク、或いは筺体などのハードウェアにより実現できる。
【0023】
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAMなどのハードウェアにより実現できる。
【0024】
情報記憶媒体(コンピュータにより使用可能な記憶媒体)180は、プログラムやデータなどの情報を格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などのハードウェアにより実現できる。処理部100は、この情報記憶媒体180に格納される情報に基づいて本発明(本実施形態)の種々の処理を行う。即ち情報記憶媒体180には、本発明(本実施形態)の手段(特に処理部100に含まれるブロック)を実行するための情報(プログラム或いはデータ)が格納される。
【0025】
なお、情報記憶媒体180に格納される情報の一部又は全部は、システムへの電源投入時等に記憶部170に転送されることになる。また情報記憶媒体180には、本発明の処理を行うためのプログラム、画像データ、音データ、表示物の形状データ、本発明の処理を指示するための情報、或いはその指示に従って処理を行うための情報などを含ませることができる。
【0026】
表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、或いはHMD(ヘッドマウントディスプレイ)などのハードウェアにより実現できる。
【0027】
音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカなどのハードウェアにより実現できる。
【0028】
携帯型情報記憶装置194は、プレーヤの個人データやゲームのセーブデータなどが記憶されるものであり、この携帯型情報記憶装置194としては、メモリカードや携帯型ゲーム装置などを考えることができる。
【0029】
通信部196は、外部(例えばホスト装置や他のゲームシステム)との間で通信を行うための各種の制御を行うものであり、その機能は、各種プロセッサ、或いは通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
【0030】
なお本発明(本実施形態)の手段を実行するためのプログラム或いはデータは、ホスト装置(サーバー)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180に配信するようにしてもよい。このようなホスト装置(サーバー)の情報記憶媒体の使用も本発明の範囲内に含まれる。
【0031】
処理部100(プロセッサ)は、操作部160からの操作データやプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの各種の処理を行う。この処理部100の機能は、各種プロセッサ(CPU、DSP等)又はASIC(ゲートアレイ等)などのハードウェアや、所与のプログラム(ゲームプログラム)により実現できる。
【0032】
ここで、処理部100が行うゲーム処理としては、コイン(代価)の受け付け処理、各種モードの設定処理、ゲームの進行処理、選択画面の設定処理、オブジェクト(1又は複数のプリミティブ面)の位置や回転角度(X、Y又はZ軸回り回転角度)を求める処理、オブジェクトを動作させる処理(モーション処理)、視点の位置(仮想カメラの位置)や視線角度(仮想カメラの回転角度)を求める処理、マップオブジェクトなどのオブジェクトをオブジェクト空間へ配置する処理、ヒットチェック処理、ゲーム結果(成果、成績)を演算する処理、複数のプレーヤが共通のゲーム空間でプレイするための処理、或いはゲームオーバー処理などを考えることができる。
【0033】
また、処理部100は、上記のゲーム処理結果に基づいて例えばオブジェクト空間内において所与の視点(仮想カメラ)から見える画像を生成し、表示部190に出力する。
【0034】
更に、処理部100は、上記のゲーム処理結果に基づいて各種の音処理を行い、BGM、効果音、又は音声などの音を生成し、音出力部192に出力する。
【0035】
なお、処理部100の機能は、その全てをハードウェアにより実現してもよいし、その全てをプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【0036】
処理部100は、ジオメトリ処理部110、元画像描画部120、マスク情報生成部122、陰影描画部124を含む。
【0037】
ジオメトリ処理部110は、座標変換、クリッピング処理、透視変換、或いは光源計算などの種々のジオメトリ処理(3次元演算)を、オブジェクトに対して行う。ジオメトリ処理により得られた描画データ(頂点に付与される位置座標、テクスチャ座標、色(輝度)データ、法線ベクトル或いはα値等)は、記憶部170の主記憶部172に格納されて、保存される。
【0038】
元画像描画部120は、オブジェクトの元画像(下地画像)を、描画領域176(フレームバッファ、仮フレームバッファ等)に描画するための処理を行う。より具体的には、テクスチャ記憶部174に記憶される下地テクスチャをオブジェクトにマッピングしながら、描画領域176にオブジェクトを描画する。
【0039】
マスク情報生成部122は、オブジェクトの情報(オブジェクトの各面の方向を表す法線ベクトルやオブジェクトの位置、回転角度データ)と光源情報(光源ベクトル、光源位置等)とに基づいて、陰影表現画像(スクリーントーン等)を描画すべき領域を特定するためのマスク情報を生成する。より具体的には、ジオメトリ処理部110が含むテクスチャ座標算出部112が、オブジェクトの情報と光源情報とに基づいて、テクスチャ記憶部174に記憶されるマスク生成用テクスチャを指定するためのテクスチャ座標を求める。そして、この得られたテクスチャ座標に基づいてマスク生成用テクスチャをオブジェクトにマッピングすることで、マスク情報を生成する。即ち、マスク生成用テクスチャがマッピングされたオブジェクトを描画領域176に描画することで、マスク情報として機能するα値のプレーンを描画領域176の各ピクセルに設定する。
【0040】
なお、α値(A値)は、各ピクセルに関連づけられて記憶される情報であり、例えば色情報以外のプラスアルファの情報である。α値は、透明度(不透明度、半透明度と等価)やバンプ情報としても使用できるが、本実施形態では、このα値をマスク情報として使用している。
【0041】
陰影描画部124は、マスク情報生成部122により生成されたマスク情報に基づいて、オブジェクトの陰影領域に陰影表現画像を描画する処理を行う。より具体的には、オブジェクトの元画像(下地画像)とオブジェクトの陰影表現画像とを、マスク情報に基づいてマスク合成することで、陰影領域に陰影表現画像を描画する。これにより、あたかもスクリーントーンが貼られたかのように見えるオブジェクトの画像を生成できる。
【0042】
なお、本実施形態のゲームシステムは、1人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、このようなシングルプレーヤモードのみならず、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
【0043】
また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、1つの端末を用いて生成してもよいし、ネットワーク(伝送ライン、通信回線)などで接続された複数の端末を用いて生成してもよい。
【0044】
2.本実施形態の特徴
2.1 陰影表現画像の描画
さて、漫画やアニメなどの世界では、細かい模様を描く作業の手間を省くために、スクリーントーンと呼ばれるものが広く用いられている。このスクリーントーンは、表面には種々の模様が印刷され、裏面には圧着により接着するのりが付いている透明のビニールである。例えば、漫画キャラクタの陰影を表現する場合には、陰影を擬似的に表すスクリーントーンを所望の形状に切り抜いて貼ることで、漫画キャラクタの陰影を描く作業の手間を省くことができる。
【0045】
一方、3次元ゲームの世界では、キャラクタなどのオブジェクトにリアルな陰影づけを施すために、グーローシェーディングやフォンシェーディングなどの陰影処理が広く用いられている。
【0046】
しかしながら、このようなグーローシェーディングやフォンシェーディングなどにより、漫画キャラクタを表現するオブジェクトの陰影づけを行うと、一般の人が漫画などで慣れ親しんでいるものとは全く異なった雰囲気の画像が生成されてしまう。
【0047】
従って、ポリゴンや自由曲面などのプリミティブ面で構成されるオブジェクトに対して、スクリーントーンで表されるようなコミカルな陰影づけを如何にして施すことができるかが重要な課題となる。
【0048】
このような課題を解決するために本実施形態では、まず、図2に示すように、オブジェクトOBの情報(例えば頂点法線ベクトル)と光源LSの情報(例えば光源ベクトルLSV)とに基づいて、陰影表現画像(スクリーントーン)を描画すべき陰影領域を特定するためのマスク情報を生成する。なお、光源は、平行光源でもよいし点光源でもよい。
【0049】
図3(A)に、フレームバッファ(広義には描画領域)上に生成されたマスク情報の例を示す。本実施形態では、マスク情報としてα値を使用している。そして図3(A)では、α=0.0となる領域が陰影領域(非マスク領域)となっており、α=1.0となる領域が非陰影領域(マスク領域)となっている。
【0050】
なお、α値の設定の仕方は任意であり、陰影領域と非陰影領域とで、少なくともα値が異なる値になっていれば十分である。
【0051】
本実施形態では図3(A)のように生成されたマスク情報に基づくマスク合成を行うことで、図3(B)に示すように、α=0.0となる陰影領域に陰影表現画像(同図では縦ストライプ模様のスクリーントーン)が描画されたオブジェクトOBの画像を生成している。
【0052】
より具体的には、図4(A)に示すオブジェクトOBの元画像(下地テクスチャがマッピングされたOBの画像)と、図4(B)に示す陰影表現画像(縦ストライプ模様)とを、図3(A)に示すマスク情報(αプレーン)を用いてマスク合成することで、図3(B)に示すようなスクリーントーン風の陰影づけが施されたオブジェクトOBの画像の生成に成功している。
【0053】
このように本実施形態によれば、オブジェクトを、ポリゴン、自由曲面、サブディビジョンサーフェスなどのプリミティブ面により構成しているのにもかかわらず、陰影領域にあたかもスクリーントーンが貼られたかのように見えるオブジェクトの画像を生成できる。従って、いわゆるアニメ風の画調を表現でき、アニメや漫画を愛好する一般人の情感に訴えることができるゲーム画像を生成できるようになる。
【0054】
即ち、一般的なグーローシェーディングやフォンシェーディングを用いると、陰影づけにグラディエーションがかかるため、陰影領域と非陰影領域の境界がぼやける。従って、リアルではあるが、一般人が慣れ親しんでいるアニメ画像とは異なる雰囲気の画像が生成されてしまう。
【0055】
これに対して本実施形態によれば、図3(B)に示すように、陰影領域と非陰影領域の境界がぼやけずに、くっきりと区別されるため、あたかも陰影のスクリーントーンを貼ったかのように見えるアニメ風の画像を生成できるようになる。
【0056】
また本実施形態によれば、陰影領域には2次元の陰影表現画像が描画されるため、陰影表現画像にパースがかからなくなる。図3(B)を例にとれば、等間隔の縦ストライプ模様が歪まずに陰影領域に描画される。従って、3次元で表現されるオブジェクトに2次元のスクリーントーンを貼ったかのように見える画像を生成できるようになる。
【0057】
また本実施形態によれば、マスク合成される陰影表現画像を差し替えることで、異なったスクリーントーンが貼られたオブジェクトの画像も表現できるようになる。例えば図5に、図4(B)の縦ストライプ模様の陰影表現画像をドット模様の陰影表現画像に差し替えた場合に生成される画像を示す。このように本実施形態によれば、使用する陰影表現画像を差し替えるという簡素な操作で、生成される画像のバラエティ度を格段に増すことができる。
【0058】
また本実施形態によれば、陰影領域はオブジェクトの情報と光源情報とにより特定される。従って図6に示すように、光源ベクトルの方向(光源位置)が変化したり、オブジェクトOBの位置や方向などが変化すると、陰影領域の位置や形状もそれに応じてリアルタイムに変化する。従って、3次元表現のオブジェクトを用いることで得られる利点についてはそのまま生かしながら、陰影領域に描画される陰影表現画像だけを、スクリーントーンのような2次元的な絵にすることができる。
【0059】
なお、陰影領域への陰影表現画像の描画は次のような手法で実現できる。
【0060】
即ち図7に示すように、陰影表現画像のテクスチャ10(縦ストライプ模様、ドット模様等)がマッピングされる例えば画面サイズのポリゴン12(プリミティブ面)を、元画像が既に描画されているフレームバッファ(描画領域)に描画する。そして、この場合に、フレームバッファの各ピクセルには、図3(A)に示すようなα値(マスク情報)が書き込まれている。従って、このα値を用いたディスネーションαテストを行いながら、テクスチャ10がマッピングされる画面サイズポリゴン12をフレームバッファに描画することで、図3(B)に示すような画像を生成できる。例えば、α<1.0となっているピクセルについては画面サイズポリゴン12(陰影表現画像)の描画を許可し、α=1.0となっているピクセルについては描画を不可にすることで、陰影領域にのみ陰影表現画像を描画できるようになる。
【0061】
なお、処理負荷の軽減化の観点からは、テクスチャ10のマッピング対象となるポリゴンは、画面サイズのポリゴンである必要は必ずしもなく、例えば図8に示すように、少なくともオブジェクトOBを内包するようなポリゴン14(プリミティブ面)であればよい。ポリゴン14の大きさが小さければ小さいほど、描画処理の負担を軽減できる。
【0062】
この場合に、図8に示すポリゴン14は、オブジェクトOBの各頂点の透視変換後のX、Y座標の最大値及び最小値に基づいて生成してもよいし、オブジェクトOBを内包する簡易オブジェクト(バウンディングボリューム)の頂点の透視変換後のX、Y座標の最大値及び最小値に基づいて生成してもよい。
【0063】
2.2 テクスチャマッピングによるマスク情報の生成
さて、本実施形態では、図3(A)に示すようなマスク情報を、テクスチャマッピングを利用して生成している。より具体的には、オブジェクトの情報と光源情報とに基づいてマスク生成用テクスチャのテクスチャ座標を求め、求められたテクスチャ座標に基づいてマスク生成用テクスチャをオブジェクトにマッピングすることで、マスク情報を生成している。
【0064】
例えば図9に示すように、オブジェクトOBが複数のポリゴンにより構成されている場合には、オブジェクトOBの頂点VX1〜VX6には、位置座標(X、Y、Z)、色(輝度)データ(R、G、B)、テクスチャ座標(U、V)、法線ベクトル(NX、NY、NZ)、α値などが設定される。
【0065】
なお、ここで、位置座標(X、Y、Z)は、OBの形状を特定するためのデータであり、色データ(R、G、B)は、OBの色や陰影付けを決めるためのデータであり、テクスチャ座標(U、V)は、OBにマッピングするテクスチャを指定するためのデータである。また、法線ベクトル(NX、NY、NZ)は、光源LS(光源ベクトルLSV)を用いた光源計算などに用いられるデータである。
【0066】
本実施形態では、オブジェクトOBの各頂点VX1〜VX6に設定された法線ベクトルN1〜N6(広義にはオブジェクトの情報)と、光源ベクトルLSVに対して反対方向を向くベクトルLSVI(広義には光源情報)との内積値IPを求める。そして、このIPに基づいて下式(1)のような計算を行い、テクスチャ座標Vを求める。
【0067】
V=(IP+1)/2 (1)
内積値IPの範囲は−1.0≦IP≦1.0となるため、上式(1)により、テクスチャ座標Vの範囲は0.0≦V≦1.0に正規化されることになる。
【0068】
以上のようにしてテクスチャ座標Vを求めることで、図9の各頂点VX1〜VX6のテクスチャ座標Vは、各々、0.1、0.5、0.75、1.0、0.7、0.25に設定される。一方、テクスチャ座標Uについては0.0に固定される。
【0069】
そして、本実施形態では、上記のように得られたテクスチャ座標U、Vにより指定されるマスク生成用テクスチャとして、図10に示すようなテクスチャを用意する。
【0070】
このマスク生成用テクスチャは、テクセルのα値が0.0に設定されている第1のテクスチャパターンと、テクセルのα値が1.0に設定されている第2のテクスチャパターンを有している(α値以外の色データなどの画像データについては任意)。なお、第1、第2のテクスチャパターンの各テクセルに設定されるα値は、少なくとも互いに異なる値であればよく、図9に示すような設定に限定されるものではない。
【0071】
図10のマスク生成用テクスチャでは、テクスチャ座標Vが0.0≦V≦0.4である場合(0.0は第1の値、0.4は第2の値)には、テクセルのα値が0.0に設定されている第1のテクスチャパターンが指定されることになる。一方、テクスチャ座標Vが0.4<V≦1.0である場合(1.0は第3の値)には、テクセルのα値が1.0に設定されている第2のテクスチャパターンが指定されることになる。
【0072】
ここで、第1のテクスチャパターンは陰影部分(非マスク部分)に相当し、第2のテクスチャパターンは非陰影部分(マスク部分)に相当する。従って図9では、テクスチャ座標Vが0.0≦V≦0.4となる太線部分20が、陰影部分になる。
【0073】
即ち陰影部分である図9の太線部分20では、テクセルのα値が0.0に設定されるため、図4(B)の陰影表現画像がマスクされずにフレームバッファに描画される。一方、太線部分20以外では、テクセルのα値が1.0に設定されているため、陰影表現画像がディスティネーションαテストによりマスクされて、フレームバッファに描画されないようになる。これにより、図3(B)に示すような画像を生成できることになる。
【0074】
以上のように、オブジェクトの情報(法線ベクトル)と光源情報(光源ベクトル)により求められたテクスチャ座標に基づきマスク生成用テクスチャをマッピングすることでマスク情報を生成するようにすれば、図10のテクスチャパターンの形態を変化させるだけで、陰影領域の範囲を制御できる。具体的には、図10のC1に示す境界の位置(第2の値)を変化させるだけで、陰影領域の範囲を狭めたり広げたりすることができる。これにより、オブジェクトの陰影づけの様子を簡素な処理で様々に変化させることができ、生成される画像のバラエティ度を増すことができる。
【0075】
3.本実施形態の処理
次に、本実施形態の処理の詳細例について、図11のフローチャートを用いて説明する。
【0076】
まず、下地オブジェクトの描画処理を行う(ステップS1)。
【0077】
即ち、下地テクスチャをオブジェクトにマッピングしながら、オブジェクトをフレームバッファに描画する(ステップS2)。これにより図4(A)に示すような元画像が描画される。
【0078】
次に、マスクオブジェクトの描画処理を行う(ステップS2)。
【0079】
即ち、図9で説明したように、オブジェクトの頂点法線ベクトルと光源ベクトル(実際には光源ベクトルに対して反対方向を向くベクトル)との内積値に基づいて、図10のマスク生成用テクスチャを指定するためのテクスチャ座標Vを求める(ステップS4)。なお、テクスチャ座標Uは0.0に固定される。
【0080】
そして、得られたテクスチャ座標U、Vに基づき、マスク生成用テクスチャがマッピングされるオブジェクトをフレームバッファに描画し、フレームバッファの各ピクセルにマスク情報となるα値を設定する(ステップS5)。これにより、図3(A)に示すように、陰影領域(非マスク領域)には例えばα=0.0が設定され、非陰影領域(マスク領域)にはα=1.0が設定されるようになる。
【0081】
このように本実施形態では、下地テクスチャがマッピングされるオブジェクト(下地オブジェクト)とマスク生成用テクスチャがマッピングされるオブジェクト(マスクオブジェクト)とを重ねて描画することで、下地テクスチャの画像データとマスク生成用テクスチャのα値を、フレームバッファ(描画領域)の各ピクセルに設定するようにしている。
【0082】
次に、スクリーントーン・ポリゴンの描画処理を行う(ステップS6)。
【0083】
即ち、図7で説明したように、任意の模様のスクリーントーン・テクスチャ(例えば縦ストライプ模様、ドット模様)がマッピングされるポリゴンをフレームバッファに描画する(ステップS7)。そして、この時に、ディスティネーションαテストを行い、フレームバッファの各ピクセルにおいてα値が1.0未満のピクセルのみにスクリーントーン・ポリゴンが描画されるようにする。このようにすることで、図3(A)のα=0.0となる陰影領域にだけ、スクリーントーン・ポリゴン(陰影表現画像)が描画されるようになり、図3(B)に示すようなスクリーントーンの陰影がオブジェクトOBに貼られたように見える画像を生成できるようになる。
【0084】
4.ハードウェア構成
次に、本実施形態を実現できるハードウェアの構成の一例について図12を用いて説明する。
【0085】
メインプロセッサ900は、CD982(情報記憶媒体)に格納されたプログラム、通信インターフェース990を介して転送されたプログラム、或いはROM950(情報記憶媒体の1つ)に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などの種々の処理を実行する。
【0086】
コプロセッサ902は、メインプロセッサ900の処理を補助するものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算(ベクトル演算)を高速に実行する。例えば、オブジェクトを移動させたり動作(モーション)させるための物理シミュレーションに、マトリクス演算などの処理が必要な場合には、メインプロセッサ900上で動作するプログラムが、その処理をコプロセッサ902に指示(依頼)する。
【0087】
ジオメトリプロセッサ904は、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算(ベクトル演算)を高速に実行する。例えば、座標変換、透視変換、光源計算などの処理を行う場合には、メインプロセッサ900で動作するプログラムが、その処理をジオメトリプロセッサ904に指示する。
【0088】
データ伸張プロセッサ906は、圧縮された画像データや音データを伸張するデコード処理を行ったり、メインプロセッサ900のデコード処理をアクセレートする処理を行う。これにより、オープニング画面、インターミッション画面、エンディング画面、或いはゲーム画面などにおいて、所与の画像圧縮方式で圧縮された動画像を表示できるようになる。なお、デコード処理の対象となる画像データや音データは、ROM950、CD982に格納されたり、或いは通信インターフェース990を介して外部から転送される。
【0089】
描画プロセッサ910は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画(レンダリング)処理を高速に実行するものである。オブジェクトの描画の際には、メインプロセッサ900は、DMAコントローラ970の機能を利用して、オブジェクトデータを描画プロセッサ910に渡すと共に、必要であればテクスチャ記憶部924にテクスチャを転送する。すると、描画プロセッサ910は、これらのオブジェクトデータやテクスチャに基づいて、Zバッファなどを利用した陰面消去を行いながら、オブジェクトをフレームバッファ922に高速に描画する。また、描画プロセッサ910は、αブレンディング(半透明処理)、デプスキューイング、ミップマッピング、フォグ処理、トライリニア・フィルタリング、アンチエリアシング、シェーディング処理なども行うことができる。そして、1フレーム分の画像がフレームバッファ922に書き込まれると、その画像はディスプレイ912に表示される。
【0090】
サウンドプロセッサ930は、多チャンネルのADPCM音源などを内蔵し、BGM、効果音、音声などの高品位のゲーム音を生成する。生成されたゲーム音は、スピーカ932から出力される。
【0091】
ゲームコントローラ942からの操作データや、メモリカード944からのセーブデータ、個人データは、シリアルインターフェース940を介してデータ転送される。
【0092】
ROM950にはシステムプログラムなどが格納される。なお、業務用ゲームシステムの場合には、ROM950が情報記憶媒体として機能し、ROM950に各種プログラムが格納されることになる。なお、ROM950の代わりにハードディスクを利用するようにしてもよい。
【0093】
RAM960は、各種プロセッサの作業領域として用いられる。
【0094】
DMAコントローラ970は、プロセッサ、メモリ(RAM、VRAM、ROM等)間でのDMA転送を制御するものである。
【0095】
CDドライブ980は、プログラム、画像データ、或いは音データなどが格納されるCD982(情報記憶媒体)を駆動し、これらのプログラム、データへのアクセスを可能にする。
【0096】
通信インターフェース990は、ネットワークを介して外部との間でデータ転送を行うためのインターフェースである。この場合に、通信インターフェース990に接続されるネットワークとしては、通信回線(アナログ電話回線、ISDN)、高速シリアルバスなどを考えることができる。そして、通信回線を利用することでインターネットを介したデータ転送が可能になる。また、高速シリアルバスを利用することで、他のゲームシステムとの間でのデータ転送が可能になる。
【0097】
なお、本発明の各手段は、その全てを、ハードウェアのみにより実行してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムのみにより実行してもよい。或いは、ハードウェアとプログラムの両方により実行してもよい。
【0098】
そして、本発明の各手段をハードウェアとプログラムの両方により実行する場合には、情報記憶媒体には、本発明の各手段をハードウェアを利用して実行するためのプログラムが格納されることになる。より具体的には、上記プログラムが、ハードウェアである各プロセッサ902、904、906、910、930等に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ902、904、906、910、930等は、その指示と渡されたデータとに基づいて、本発明の各手段を実行することになる。
【0099】
図13(A)に、本実施形態を業務用ゲームシステムに適用した場合の例を示す。プレーヤは、ディスプレイ1100上に映し出されたゲーム画像を見ながら、レバー1102、ボタン1104等を操作してゲームを楽しむ。内蔵されるシステムボード(サーキットボード)1106には、各種プロセッサ、各種メモリなどが実装される。そして、本発明の各手段を実行するための情報(プログラム或いはデータ)は、システムボード1106上の情報記憶媒体であるメモリ1108に格納される。以下、この情報を格納情報と呼ぶ。
【0100】
図13(B)に、本実施形態を家庭用のゲームシステムに適用した場合の例を示す。プレーヤはディスプレイ1200に映し出されたゲーム画像を見ながら、ゲームコントローラ1202、1204を操作してゲームを楽しむ。この場合、上記格納情報は、本体システムに着脱自在な情報記憶媒体であるCD1206、或いはメモリカード1208、1209等に格納されている。
【0101】
図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に伝送し端末において出力することになる。
【0102】
なお、図13(C)の構成の場合に、本発明の各手段を、ホスト装置(サーバー)と端末とで分散して実行するようにしてもよい。また、本発明の各手段を実行するための上記格納情報を、ホスト装置(サーバー)の情報記憶媒体と端末の情報記憶媒体に分散して格納するようにしてもよい。
【0103】
またネットワークに接続する端末は、家庭用ゲームシステムであってもよいし業務用ゲームシステムであってもよい。そして、業務用ゲームシステムをネットワークに接続する場合には、業務用ゲームシステムとの間で情報のやり取りが可能であると共に家庭用ゲームシステムとの間でも情報のやり取りが可能な携帯型情報記憶装置(メモリカード、携帯型ゲーム装置)を用いることが望ましい。
【0104】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。
【0105】
例えば、本発明のうち従属請求項に係る発明においては、従属先の独立請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の1の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
【0106】
また、本実施形態では、オブジェクトの情報と光源情報とに基づき生成したマスク情報を用いて、オブジェクトの陰影領域に陰影表現画像を描画したが、このようなマスク情報を用いないで、陰影領域に陰影表現画像を描画するようにしてもよい。
【0107】
即ち、オブジェクトの2次元の元画像が描画された描画領域において、陰影表現画像を描画すべき陰影領域をオブジェクトの情報と光源情報とに基づき何らかの手法で特定し、特定された陰影領域にオブジェクトの2次元の陰影表現画像を描画するようにする。
【0108】
このようにしても、あたかも陰影のスクリーントーンを貼ったかのように見えるアニメ風の画像を生成できるようになる。また、陰影領域には2次元の陰影表現画像が描画されるため、陰影表現画像にパースがかからなくなり、3次元で表現されるオブジェクトに2次元のスクリーントーンを貼ったかのように見える画像を生成できる。また、オブジェクトの情報や光源情報が変化すると、陰影領域の位置や形状もそれに応じてリアルタイムに変化するようになるため、3次元表現のオブジェクトを用いることで得られる利点については生かしながら、陰影表現画像だけをスクリーントーンのような2次元的な絵にすることができる。
【0109】
また、マスク情報の生成手法も、図9、図10で説明した手法が特に望ましいが、これに限定されるものではない。例えば、オブジェクトの情報や光源情報に基づいて、オブジェクトの各頂点にα値を設定し、このα値に基づいてマスク情報を生成するようにしてもよい。
【0110】
また、マスク生成用テクスチャの形態も、図10で説明したものに限定されない。
【0111】
また、陰影表現画像の画像パターンも、本実施形態で説明したものに限定されず、種々の変形実施が可能である。
【0112】
また、陰影表現画像の描画手法も、図7、図8で説明した手法が特に望ましいが、これに限定されるものではなく、種々の変形実施が可能である。
【0113】
また、本実施形態では、オブジェクトがポリゴンで構成される場合について主に説明したが、自由曲面やサブディビジョンサーフェスなどの他の形態のプリミティブ面でオブジェクトが構成される場合も本発明の範囲に含まれる。
【0114】
また本発明は種々のゲーム(格闘ゲーム、シューティングゲーム、ロボット対戦ゲーム、スポーツゲーム、競争ゲーム、ロールプレイングゲーム、音楽演奏ゲーム、ダンスゲーム等)に適用できる。
【0115】
また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード等の種々のゲームシステム(画像生成システム)に適用できる。
【図面の簡単な説明】
【図1】本実施形態のゲームシステムのブロック図の例である。
【図2】オブジェクトの情報と光源情報とに基づきマスク情報を生成する手法について説明するための図である。
【図3】図3(A)はマスク情報について説明するための図であり、図3(B)は、本実施形態により生成される画像の例について示す図である。
【図4】図4(A)、(B)は、元画像、陰影表現画像の例について示す図である。
【図5】本実施形態により生成される画像の他の例について示す図である。
【図6】本実施形態により生成される画像の他の例について示す図である。
【図7】陰影表現画像のテクスチャがマッピングされる画面サイズのポリゴンをフレームバッファに描画する手法について説明するための図である。
【図8】陰影表現画像のテクスチャがマッピングされるポリゴンの他の例について示す図である。
【図9】頂点法線ベクトルと光源ベクトルとの内積値に基づき、マスク生成用テクスチャのテクスチャ座標を求める手法について説明するための図である。
【図10】マスク生成用テクスチャの例を示す図である。
【図11】本実施形態の詳細な処理例について示すフローチャートである。
【図12】本実施形態を実現できるハードウェアの構成の一例を示す図である。
【図13】図13(A)、(B)、(C)は、本実施形態が適用される種々の形態のシステムの例を示す図である。
【符号の説明】
OB オブジェクト
LS 光源
LSV 光源ベクトル
10 陰影表現画像のテクスチャ
12 画面サイズのポリゴン
14 オブジェクトを内包するポリゴン
100 処理部
110 ジオメトリ処理部
112 テクスチャ座標算出部
120 元画像描画部
122 マスク情報生成部
124 陰影描画部
160 操作部
170 記憶部
172 主記憶部
174 テクスチャ記憶部
176 描画領域(フレームバッファ等)
180 情報記憶媒体
190 表示部
192 音出力部
194 携帯型情報記憶装置
196 通信部
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a game 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. Taking a game system that can enjoy a role-playing game as an example, a player operates a character (object) and moves it on a map in the object space to play against enemy characters or interact with other characters. Or enjoy the game by visiting various towns.
[0003]
In such a game system, an object representing a character or the like is usually composed of a plurality of polygons (primitive surfaces). Then, an object (model) composed of the polygons is arranged in the object space, and geometry processing (three-dimensional calculation) is performed to generate an image that can be seen from the virtual camera (viewpoint). Thereby, even when this object is viewed from various directions by the virtual camera, it is possible to generate a consistent game image.
[0004]
However, the game image generated in this way is a mathematically correct image, but there is a problem that it cannot be appealed to the player's feelings.
[0005]
For example, consider a case where a character appearing in an animation or manga is represented by an object. In such a case, shading the object by Gouraud shading or phone shading can obtain a realistic image, but it has a different atmosphere from that familiar to ordinary people in anime and manga. An image is generated.
[0006]
The present invention has been made in view of the problems as described above, and the object of the present invention is to provide a game system and information capable of optimal shading for objects representing characters and the like appearing in anime and manga It is to provide a storage medium.
[0007]
[Means for Solving the Problems]
In order to solve the above-described problems, the present invention provides a game system that performs image generation, and includes mask information for specifying a shadow region in which a shadow expression image is to be drawn based on object information and light source information. Means for generating, and means for drawing a shadow expression image in a shadow area of the object based on the generated mask information. The information storage medium according to the present invention 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 invention is a program (including a program embodied in a carrier wave) that can be used by a computer, and includes a processing routine for executing the above means.
[0008]
According to the present invention, object information (for example, a normal vector representing the direction of each surface of the object, an object position in the frame, rotation angle data, etc.) and light source information (for example, a light source vector or a light source position) are included. Based on this, mask information (for example, α plane) for specifying the shadow area is generated. Then, a shadow expression image is drawn in the shadow area based on the mask information.
[0009]
Therefore, according to the present invention, it is possible to draw a two-dimensional shadow expression image on a three-dimensional object composed of primitive surfaces, and an object representing a character or the like appearing in an animation or a manga. The most suitable shading is possible.
[0010]
Further, according to the present invention, since the shadow area is specified by the object information and the light source information, when the position or direction of the object or the light source changes, the position or shape of the shadow area also changes in real time accordingly. Become. Therefore, while the position and shape of the shadow area change like a shadow area obtained by a shadow process such as normal Gouraud shading or von shading, only the shadow expression image drawn in the shadow area is two-dimensional. It becomes possible to make a realistic picture.
[0011]
The game system, the information storage medium, and the program according to the present invention also perform a mask composition of an original image of an object and a shadow expression image of the object based on the generated mask information, so that the shadow expression image is generated in the shadow area. An image of a drawn object is generated. The mask composition in this case is, for example, setting an α value for each pixel in the drawing area and determining whether to draw an original image or a shadow expression image on the pixel based on the α value. Can be realized.
[0012]
In addition, the game system, information storage medium, and program according to the present invention draw a primitive surface having a shape including at least the original image of the object drawn in the drawing area in the drawing area while mapping the texture of the shadow expression image. Thus, a shadow expression image is drawn in the shadow area. In this way, the shadow expression image can be drawn in the shadow area with a simple process of mapping the texture of the shadow expression image onto the primitive surface, and the processing load can be reduced. Also, by simply replacing the texture of the shadow expression image, various shadow expression images can be drawn in the shadow area, and the variety of generated images can be increased.
[0013]
The primitive surface in this case may be a screen-sized primitive surface, or may be a primitive surface generated based on the shape data of an object or a simple object that includes the object.
[0014]
The game system, information storage medium, and program according to the present invention obtain texture coordinates for designating a mask generation texture based on object information and light source information, and generate a mask based on the obtained texture coordinates. The mask information is generated by mapping a texture to an object. In this way, mask information can be generated by a simple process of simply mapping a mask generating texture to an object, and the processing load can be reduced.
[0015]
In the game system, information storage medium, and program according to the present invention, the mask generating texture has an α value different from the first texture pattern and an α value set in each texel of the first texture pattern. A second texture pattern set for each texel, and when the texture coordinates for designating the mask generation texture are between a first value and a second value, When a texture pattern is specified and the texture coordinates are between a second value and a third value, the second texture pattern is specified. In this way, it becomes possible to control the range of the shaded area simply by changing the second value, and the variety of the generated image can be increased.
[0016]
In addition, the game system, information storage medium, and program according to the present invention draw the image of the background texture and the mask generation by overlapping the object to which the background texture is mapped and the object to which the mask generation texture is mapped. It is characterized in that the α value of the texture is set for each pixel in the drawing area. In this way, using the α value set for each pixel in the drawing area as mask information, the original image (the image of the object to which the background texture is mapped) and the shadow expression image can be mask-synthesized. .
[0017]
When drawing an object to which the texture for mask generation is mapped in the drawing area, drawing data (for example, polygon data after perspective transformation) obtained by performing geometry processing on the object to which the background texture is mapped is used. It is desirable to reuse. In this way, it is possible to omit the geometry processing for the object to which the mask generating texture is mapped, and the processing load can be reduced.
[0018]
The present invention is also a game system for generating an image, wherein a shadow expression image should be drawn in a drawing area in which a two-dimensional original image of an object is drawn and means for drawing the original image of the object in the drawing area Means for specifying a shadow area based on object information and light source information, and rendering a two-dimensional shadow expression image of the object in the specified shadow area. The information storage medium according to the present invention 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 invention is a program (including a program embodied in a carrier wave) that can be used by a computer, and includes a processing routine for executing the above means.
[0019]
According to the present invention, a two-dimensional shadow expression image is drawn in a shadow area specified by object information and light source information. Therefore, the object and the background are parsed based on the geometry processing, while the shadow display image drawn in the shadow area is not parsed. Therefore, it is possible to apply a two-dimensional shadow in the screen tone style that ordinary people are accustomed to in anime and manga to objects, and it is possible to optimally shade objects that represent characters appearing in anime and manga. .
[0020]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, preferred embodiments of the present invention will be described with reference to the drawings.
[0021]
1. Constitution
FIG. 1 shows an example of a block diagram of the game system (image generation system) of this embodiment. In this figure, the present embodiment only needs to include at least the processing unit 100 (or include the processing unit 100 and the storage unit 170), and the other blocks can be optional components.
[0022]
The operation unit 160 is for a player to input operation data, and the function can be realized by hardware such as a lever, a button, a microphone, or a housing.
[0023]
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.
[0024]
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).
[0025]
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. The information storage medium 180 also includes a program for performing the processing of the present invention, image data, sound data, shape data of the display object, information for instructing the processing of the present invention, or processing in accordance with the instructions. Information etc. can be included.
[0026]
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).
[0027]
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.
[0028]
The portable information storage device 194 stores player personal data, game save data, and the like. As the portable information storage device 194, a memory card, a portable game device, and the like can be considered.
[0029]
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.
[0030]
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.
[0031]
The processing unit 100 (processor) performs various processes such as a game process, an image generation process, and a sound generation process based on operation data from the operation unit 160, a program, and the like. The functions of the processing unit 100 can be realized by hardware such as various processors (CPU, DSP, etc.) or ASIC (gate array, etc.) and a given program (game program).
[0032]
Here, game processing performed by the processing unit 100 includes coin (price) acceptance processing, various mode setting processing, game progress processing, selection screen setting processing, position of an object (one or more primitive surfaces), Processing for obtaining a rotation angle (rotation angle about X, Y or Z axis), processing for moving an object (motion processing), processing for obtaining a viewpoint position (virtual camera position) and a line-of-sight angle (virtual camera rotation angle), Processing to place objects such as map objects in the object space, hit check processing, processing to calculate game results (results, results), processing for multiple players to play in a common game space, game over processing, etc. Can think.
[0033]
Further, the processing unit 100 generates an image that can be seen from a given viewpoint (virtual camera) in the object space, for example, based on the game processing result, and outputs the image to the display unit 190.
[0034]
Further, the processing unit 100 performs various kinds of sound processing based on the above-described game processing result, generates a sound such as BGM, sound effect, or sound, and outputs the sound to the sound output unit 192.
[0035]
Note that all of the functions of the processing unit 100 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.
[0036]
The processing unit 100 includes a geometry processing unit 110, an original image drawing unit 120, a mask information generation unit 122, and a shadow drawing unit 124.
[0037]
The geometry processing unit 110 performs various types of geometry processing (three-dimensional calculation) such as coordinate transformation, clipping processing, perspective transformation, or light source calculation on an object. The drawing data (position coordinates, texture coordinates, color (luminance) data, normal vector or α value, etc. given to the vertices) obtained by the geometry processing is stored in the main storage unit 172 of the storage unit 170 and saved. Is done.
[0038]
The original image drawing unit 120 performs processing for drawing an original image (background image) of an object in a drawing area 176 (a frame buffer, a temporary frame buffer, etc.). More specifically, the object is drawn in the drawing area 176 while mapping the background texture stored in the texture storage unit 174 to the object.
[0039]
Based on the object information (normal vector representing the direction of each surface of the object, object position, rotation angle data) and light source information (light source vector, light source position, etc.) Mask information for specifying a region to be drawn (screen tone or the like) is generated. More specifically, the texture coordinate calculation unit 112 included in the geometry processing unit 110 determines texture coordinates for designating the mask generation texture stored in the texture storage unit 174 based on the object information and the light source information. Ask. Then, the mask information is generated by mapping the mask generation texture to the object based on the obtained texture coordinates. That is, by drawing an object to which the mask generating texture is mapped in the drawing area 176, an α value plane functioning as mask information is set in each pixel of the drawing area 176.
[0040]
The α value (A value) is information stored in association with each pixel, for example, plus alpha information other than color information. The α value can also be used as transparency (equivalent to opacity and translucency) and bump information, but in the present embodiment, this α value is used as mask information.
[0041]
The shadow drawing unit 124 performs a process of drawing a shadow expression image in the shadow region of the object based on the mask information generated by the mask information generation unit 122. More specifically, the shadow expression image is drawn in the shadow area by performing mask composition on the original image (background image) of the object and the shadow expression image of the object based on the mask information. This makes it possible to generate an image of an object that looks as if a screen tone has been applied.
[0042]
Note that the game system according to 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.
[0043]
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.
[0044]
2. Features of this embodiment
2.1 Drawing shadow expression images
Now, in the world of comics and animation, what is called a screen tone is widely used in order to save the labor of drawing a fine pattern. This screen tone is a transparent vinyl having various patterns printed on the front surface and a glue bonded to the back surface by pressure bonding. For example, when expressing the shadow of a cartoon character, the work of drawing the shadow of the cartoon character can be saved by cutting out and pasting a screen tone representing the shadow in a desired shape.
[0045]
On the other hand, in the world of 3D games, shading processes such as Gouraud shading and phone shading are widely used in order to give realistic shading to objects such as characters.
[0046]
However, by shading objects that express comic characters by using such Gouraud shading or phone shading, an image with a completely different atmosphere from that which ordinary people are accustomed to using comics is generated. End up.
[0047]
Therefore, an important issue is how to apply a comical shading represented by a screen tone to an object composed of primitive surfaces such as polygons and free-form surfaces.
[0048]
In order to solve such a problem, in the present embodiment, as shown in FIG. 2, first, based on the information on the object OB (for example, the vertex normal vector) and the information on the light source LS (for example, the light source vector LSV), Mask information for specifying a shadow area in which a shadow expression image (screen tone) is to be drawn is generated. The light source may be a parallel light source or a point light source.
[0049]
FIG. 3A shows an example of mask information generated on the frame buffer (drawing area in a broad sense). In the present embodiment, an α value is used as mask information. In FIG. 3A, a region where α = 0.0 is a shadow region (non-mask region), and a region where α = 1.0 is a non-shadow region (mask region).
[0050]
Note that the method of setting the α value is arbitrary, and it is sufficient that at least the α value is different between the shadow region and the non-shadow region.
[0051]
In this embodiment, by performing mask composition based on the mask information generated as shown in FIG. 3A, as shown in FIG. 3B, a shadow expression image ( In the figure, an image of the object OB on which a screen stripe of a vertical stripe pattern) is drawn is generated.
[0052]
More specifically, an original image of the object OB shown in FIG. 4A (an OB image on which the background texture is mapped) and a shadow expression image (vertical stripe pattern) shown in FIG. By combining the mask using the mask information (α plane) shown in FIG. 3 (A), the image of the object OB having the screen tone-like shading shown in FIG. 3 (B) was successfully generated. Yes.
[0053]
As described above, according to the present embodiment, an object that appears as if a screen tone has been applied to a shaded area, even though the object is composed of primitive surfaces such as polygons, free-form surfaces, and subdivision surfaces. Images can be generated. Accordingly, it is possible to generate a game image that can express a so-called anime-style image and appeal to the feelings of ordinary people who love anime and manga.
[0054]
In other words, when general Gouraud shading or phone shading is used, the shading is subject to gradation, so the boundary between the shadow area and the non-shadow area is blurred. Therefore, although it is real, an image having an atmosphere different from that of an animation image familiar to ordinary people is generated.
[0055]
On the other hand, according to the present embodiment, as shown in FIG. 3B, the boundary between the shadow area and the non-shadow area is clearly distinguished without blurring, so that it appears as if a shaded screen tone is applied. An anime-like image that looks like this can be generated.
[0056]
According to the present embodiment, since a two-dimensional shadow expression image is drawn in the shadow area, the shadow expression image is not parsed. Taking FIG. 3B as an example, equally-spaced vertical stripe patterns are drawn in the shadow area without distortion. Therefore, it is possible to generate an image that looks as if a two-dimensional screen tone is pasted on an object expressed in three dimensions.
[0057]
In addition, according to the present embodiment, by replacing the shadow expression image to be combined with the mask, it is possible to express an image of an object with a different screen tone. For example, FIG. 5 shows an image generated when the vertical stripe pattern shadow expression image of FIG. 4B is replaced with a dot pattern shadow expression image. As described above, according to the present embodiment, the variety degree of the generated image can be remarkably increased by a simple operation of replacing the shadow expression image to be used.
[0058]
According to the present embodiment, the shadow area is specified by the object information and the light source information. Therefore, as shown in FIG. 6, when the direction of the light source vector (light source position) changes or the position or direction of the object OB changes, the position and shape of the shadow area also change in real time accordingly. Therefore, it is possible to make only the shadow expression image drawn in the shadow area into a two-dimensional picture such as a screen tone while taking advantage of the advantage obtained by using the object of the three-dimensional expression as it is.
[0059]
Note that the drawing of the shadow expression image in the shadow area can be realized by the following method.
[0060]
That is, as shown in FIG. 7, for example, a screen-sized polygon 12 (primitive surface) to which a texture 10 (vertical stripe pattern, dot pattern, etc.) of a shadow expression image is mapped is displayed on a frame buffer ( Draw in the drawing area. In this case, an α value (mask information) as shown in FIG. 3A is written in each pixel of the frame buffer. Accordingly, an image as shown in FIG. 3B can be generated by drawing the screen size polygon 12 to which the texture 10 is mapped in the frame buffer while performing the disnation α test using this α value. For example, the drawing of the screen size polygon 12 (shadow expression image) is permitted for the pixels with α <1.0, and the shading is disabled for the pixels with α = 1.0. A shadow expression image can be drawn only in the area.
[0061]
From the viewpoint of reducing the processing load, the polygon to be mapped with the texture 10 does not necessarily have to be a screen-sized polygon. For example, as shown in FIG. 8, a polygon that contains at least the object OB. 14 (primitive surface) may be used. The smaller the size of the polygon 14 is, the more the burden of drawing processing can be reduced.
[0062]
In this case, the polygon 14 shown in FIG. 8 may be generated based on the maximum and minimum values of the X and Y coordinates after perspective transformation of each vertex of the object OB, or a simple object (including the object OB) ( It may be generated based on the maximum and minimum values of the X and Y coordinates after the perspective transformation of the vertex of the bounding volume.
[0063]
2.2 Generation of mask information by texture mapping
In the present embodiment, mask information as shown in FIG. 3A is generated using texture mapping. More specifically, the mask information is generated by obtaining the texture coordinates of the mask generating texture based on the object information and the light source information, and mapping the mask generating texture to the object based on the obtained texture coordinates. is doing.
[0064]
For example, as shown in FIG. 9, when the object OB is composed of a plurality of polygons, the position coordinates (X, Y, Z), color (luminance) data (R) are included in the vertices VX1 to VX6 of the object OB. , G, B), texture coordinates (U, V), normal vectors (NX, NY, NZ), α values, and the like are set.
[0065]
Here, the position coordinates (X, Y, Z) are data for specifying the shape of the OB, and the color data (R, G, B) are data for determining the color and shading of the OB. The texture coordinates (U, V) are data for designating a texture to be mapped to OB. The normal vector (NX, NY, NZ) is data used for light source calculation using the light source LS (light source vector LSV).
[0066]
In the present embodiment, normal vectors N1 to N6 (object information in a broad sense) set at the respective vertices VX1 to VX6 of the object OB and a vector LSVI (light source in a broad sense) pointing in the opposite direction with respect to the light source vector LSV. Information) and the inner product value IP. Then, based on this IP, a calculation like the following formula (1) is performed to obtain the texture coordinate V.
[0067]
V = (IP + 1) / 2 (1)
Since the range of the inner product value IP is −1.0 ≦ IP ≦ 1.0, the range of the texture coordinate V is normalized to 0.0 ≦ V ≦ 1.0 by the above equation (1). .
[0068]
By obtaining the texture coordinates V as described above, the texture coordinates V of the vertices VX1 to VX6 in FIG. 9 are 0.1, 0.5, 0.75, 1.0, 0.7, 0, respectively. .25. On the other hand, the texture coordinate U is fixed to 0.0.
[0069]
In this embodiment, a texture as shown in FIG. 10 is prepared as a mask generation texture specified by the texture coordinates U and V obtained as described above.
[0070]
The mask generating texture has a first texture pattern in which the texel α value is set to 0.0, and a second texture pattern in which the texel α value is set to 1.0. (It is optional for image data such as color data other than the α value). Note that the α values set in the texels of the first and second texture patterns need only be different from each other, and are not limited to the settings shown in FIG.
[0071]
In the texture for mask generation in FIG. 10, when the texture coordinates V are 0.0 ≦ V ≦ 0.4 (0.0 is the first value and 0.4 is the second value), the texel α The first texture pattern whose value is set to 0.0 is designated. On the other hand, when the texture coordinate V is 0.4 <V ≦ 1.0 (1.0 is the third value), the second texture pattern in which the α value of the texel is set to 1.0 Will be specified.
[0072]
Here, the first texture pattern corresponds to a shadow portion (non-mask portion), and the second texture pattern corresponds to a non-shadow portion (mask portion). Accordingly, in FIG. 9, the thick line portion 20 where the texture coordinate V is 0.0 ≦ V ≦ 0.4 becomes a shaded portion.
[0073]
That is, in the thick line portion 20 in FIG. 9 which is a shadow portion, the α value of the texel is set to 0.0, so that the shadow expression image in FIG. On the other hand, since the α value of the texel is set to 1.0 except for the thick line portion 20, the shadow expression image is masked by the destination α test and is not drawn in the frame buffer. As a result, an image as shown in FIG. 3B can be generated.
[0074]
As described above, if the mask information is generated by mapping the mask generation texture based on the texture coordinates obtained from the object information (normal vector) and the light source information (light source vector), FIG. The range of the shadow area can be controlled simply by changing the shape of the texture pattern. Specifically, the range of the shadow area can be narrowed or widened only by changing the position of the boundary (second value) indicated by C1 in FIG. As a result, the shaded state of the object can be variously changed with a simple process, and the variety of the generated image can be increased.
[0075]
3. Processing of this embodiment
Next, a detailed example of the processing of the present embodiment will be described using the flowchart of FIG.
[0076]
First, a background object drawing process is performed (step S1).
[0077]
That is, the object is drawn in the frame buffer while mapping the background texture to the object (step S2). As a result, an original image as shown in FIG.
[0078]
Next, a mask object drawing process is performed (step S2).
[0079]
That is, as described with reference to FIG. 9, the mask generation texture of FIG. A texture coordinate V for designating is obtained (step S4). The texture coordinate U is fixed at 0.0.
[0080]
Based on the obtained texture coordinates U and V, an object to which the mask generating texture is mapped is drawn in the frame buffer, and an α value serving as mask information is set in each pixel of the frame buffer (step S5). As a result, as shown in FIG. 3A, for example, α = 0.0 is set in the shadow area (non-mask area), and α = 1.0 is set in the non-shadow area (mask area). It becomes like this.
[0081]
As described above, in the present embodiment, the image data of the background texture and the mask generation are generated by drawing the object (background object) to which the background texture is mapped and the object (mask object) to which the texture for mask generation is mapped in an overlapping manner. The α value of the texture is set for each pixel of the frame buffer (drawing area).
[0082]
Next, screen tone / polygon drawing processing is performed (step S6).
[0083]
That is, as described with reference to FIG. 7, a polygon to which a screen tone texture having an arbitrary pattern (for example, a vertical stripe pattern, a dot pattern) is mapped is drawn in the frame buffer (step S7). At this time, the destination α test is performed so that the screen tone polygon is drawn only for the pixels having an α value of less than 1.0 in each pixel of the frame buffer. By doing so, a screen tone polygon (shadow expression image) is drawn only in the shaded area where α = 0.0 in FIG. 3A, as shown in FIG. 3B. It becomes possible to generate an image that looks as if a shadow of a simple screen tone is pasted on the object OB.
[0084]
4). Hardware configuration
Next, an example of a hardware configuration capable of realizing the present embodiment will be described with reference to FIG.
[0085]
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.
[0086]
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. )
[0087]
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.
[0088]
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.
[0089]
The drawing processor 910 executes 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 drawing processor 910 draws an 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, 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.
[0090]
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.
[0091]
Operation data from the game controller 942, save data from the memory card 944, and personal data are transferred via the serial interface 940.
[0092]
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.
[0093]
The RAM 960 is used as a work area for various processors.
[0094]
The DMA controller 970 controls DMA transfer between the processor and memory (RAM, VRAM, ROM, etc.).
[0095]
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.
[0096]
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. Further, by using the high-speed serial bus, data transfer with other game systems becomes possible.
[0097]
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.
[0098]
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.
[0099]
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.
[0100]
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 the CD 1206, which is an information storage medium that is detachable from the main system, or in the memory cards 1208, 1209, and the like.
[0101]
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.
[0102]
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.
[0103]
The terminal connected to the network may be a home game system or an arcade game system. When connecting the arcade game system to a network, a portable information storage device capable of exchanging information with the arcade game system and exchanging information with the home game system. It is desirable to use (memory card, portable game device).
[0104]
The present invention is not limited to that described in the above embodiment, and various modifications can be made.
[0105]
For example, in the invention according to the dependent claim of the present invention, a part of the constituent features of the independent claim as the dependent 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.
[0106]
In the present embodiment, the shadow expression image is drawn in the shadow area of the object using the mask information generated based on the object information and the light source information. However, without using such mask information, the shadow area is displayed in the shadow area. A shadow expression image may be drawn.
[0107]
That is, in the drawing area where the two-dimensional original image of the object is drawn, the shadow area where the shadow expression image is to be drawn is specified by some method based on the object information and the light source information, and the object shadow is specified in the specified shadow area. A two-dimensional shadow expression image is drawn.
[0108]
This also makes it possible to generate an animation-like image that looks as if a shaded screen tone has been applied. In addition, since a two-dimensional shadow expression image is drawn in the shadow area, the shadow expression image is not parsed, and an image that looks as if a two-dimensional screen tone is pasted on the three-dimensional object is generated. it can. In addition, if the object information or light source information changes, the position and shape of the shaded area will change in real time accordingly. Only an image can be made into a two-dimensional picture like a screen tone.
[0109]
The mask information generation method is also preferably the method described with reference to FIGS. 9 and 10, but is not limited thereto. For example, an α value may be set for each vertex of the object based on object information or light source information, and mask information may be generated based on the α value.
[0110]
Moreover, the form of the texture for mask generation is not limited to that described with reference to FIG.
[0111]
Further, the image pattern of the shadow expression image is not limited to that described in the present embodiment, and various modifications can be made.
[0112]
The drawing method of the shadow expression image is particularly preferably the method described with reference to FIGS. 7 and 8, but is not limited to this, and various modifications can be made.
[0113]
In the present embodiment, the case where the object is composed of polygons has been mainly described. However, the scope of the present invention includes the case where the object is composed of other forms of primitive surfaces such as a free-form surface and a subdivision surface. It is.
[0114]
The present invention can also be applied to various games (such as fighting games, shooting games, robot battle games, sports games, competition games, role playing games, music playing games, dance games, etc.).
[0115]
The present invention is also applicable to various game systems (image generation 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. Applicable.
[Brief description of the drawings]
FIG. 1 is an example of a block diagram of a game system according to the present embodiment.
FIG. 2 is a diagram for explaining a method of generating mask information based on object information and light source information.
FIG. 3A is a diagram for explaining mask information, and FIG. 3B is a diagram illustrating an example of an image generated according to the present embodiment.
FIGS. 4A and 4B are diagrams illustrating examples of an original image and a shadow expression image.
FIG. 5 is a diagram illustrating another example of an image generated according to the present embodiment.
FIG. 6 is a diagram illustrating another example of an image generated according to the present embodiment.
FIG. 7 is a diagram for explaining a technique for drawing a screen-sized polygon onto which a texture of a shadow expression image is mapped in a frame buffer;
FIG. 8 is a diagram showing another example of a polygon to which a texture of a shadow expression image is mapped.
FIG. 9 is a diagram for explaining a method for obtaining texture coordinates of a texture for mask generation based on an inner product value of a vertex normal vector and a light source vector.
FIG. 10 is a diagram illustrating an example of a texture for generating a mask.
FIG. 11 is a flowchart illustrating a detailed processing example of the present embodiment.
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]
OB object
LS light source
LSV light source vector
10 Texture of shadow expression image
12 screen size polygon
14 Polygons that contain objects
100 processor
110 Geometry processing unit
112 Texture coordinate calculation unit
120 original image drawing unit
122 Mask information generation unit
124 Shading drawing part
160 Operation unit
170 Storage unit
172 Main memory
174 Texture storage unit
176 Drawing area (frame buffer, etc.)
180 Information storage medium
190 Display
192 sound output section
194 Portable information storage device
196 Communication Department

Claims (10)

画像生成を行うゲームシステムであって、
オブジェクトの情報と光源情報とに基づいて、陰影表現画像を描画すべき陰影領域を特定するためのマスク情報を生成する手段と、
生成された前記マスク情報に基づいて、オブジェクトの陰影領域に陰影表現画像を描画する手段と、
を含み、
オブジェクトの情報と光源情報とに基づいてマスク生成用テクスチャを指定するためのテクスチャ座標を求め、求められたテクスチャ座標に基づいてマスク生成用テクスチャをオブジェクトにマッピングすることで、前記マスク情報を生成することを特徴とするゲームシステム。
A game system for generating images,
Means for generating mask information for identifying a shadow area in which a shadow expression image is to be drawn based on the object information and the light source information;
Based on the generated mask information, means for drawing a shadow expression image in the shadow area of the object;
Only including,
Based on the object information and the light source information, the texture coordinates for designating the mask generation texture are obtained, and the mask information is generated by mapping the mask generation texture to the object based on the obtained texture coordinates. A game system characterized by that.
請求項1において、
オブジェクトの元画像とオブジェクトの陰影表現画像とを、生成された前記マスク情報に基づいてマスク合成することで、陰影領域に陰影表現画像が描画されたオブジェクトの画像を生成することを特徴とするゲームシステム。
In claim 1,
A game characterized by generating an image of an object in which a shadow expression image is drawn in a shadow area by performing mask composition on the original image of the object and the shadow expression image of the object based on the generated mask information system.
請求項1又は2において、
描画領域に描画されたオブジェクトの元画像を少なくとも内包する形状のプリミティブ面を、陰影表現画像のテクスチャをマッピングしながら描画領域に描画することで、陰影領域に陰影表現画像を描画することを特徴とするゲームシステム。
In claim 1 or 2,
It is characterized by drawing a shadow expression image in the shadow area by drawing a primitive surface with a shape that at least contains the original image of the object drawn in the drawing area in the drawing area while mapping the texture of the shadow expression image. Game system to play.
請求項1〜3のいずれかにおいて、
前記マスク生成用テクスチャが、第1のテクスチャパターンと、前記第1のテクスチャパターンの各テクセルに設定されるα値とは異なるα値が各テクセルに設定される第2のテクスチャパターンとを有し、
前記マスク生成用テクスチャを指定するためのテクスチャ座標が第1の値から第2の値の間である場合には、前記第1のテクスチャパターンが指定され、前記テクスチャ座標が第2の値から第3の値の間にある場合には、前記第2のテクスチャパターンが指定されることを特徴とするゲームシステム。
In any one of Claims 1-3 ,
The mask generation texture includes a first texture pattern and a second texture pattern in which an α value different from an α value set in each texel of the first texture pattern is set in each texel. ,
When the texture coordinates for designating the mask generating texture are between the first value and the second value, the first texture pattern is designated, and the texture coordinates are designated by the second value. When the value is between 3, the game system is characterized in that the second texture pattern is designated.
請求項1〜のいずれかにおいて、
下地テクスチャがマッピングされるオブジェクトとマスク生成用テクスチャがマッピングされるオブジェクトとを重ねて描画することで、下地テクスチャの画像データとマスク生成用テクスチャのα値を、描画領域の各ピクセルに設定することを特徴とするゲームシステム。
In any one of Claims 1-4 ,
By drawing the object to which the background texture is mapped and the object to which the mask generation texture is mapped, the image data of the background texture and the α value of the mask generation texture are set to each pixel of the drawing area. A game system characterized by
コンピュータが使用可能なプログラムを記憶した情報記憶媒体であって、
前記プログラムは、
オブジェクトの情報と光源情報とに基づいて、陰影表現画像を描画すべき陰影領域を特定するためのマスク情報を生成する手段と、
生成された前記マスク情報に基づいて、オブジェクトの陰影領域に陰影表現画像を描画する手段として、
コンピュータを機能させ
オブジェクトの情報と光源情報とに基づいてマスク生成用テクスチャを指定するためのテクスチャ座標を求め、求められたテクスチャ座標に基づいてマスク生成用テクスチャをオブジェクトにマッピングすることで、前記マスク情報を生成することを特徴とする情報記憶媒体。
An information storage medium storing a program usable by a computer,
The program is
Means for generating mask information for identifying a shadow area in which a shadow expression image is to be drawn based on the object information and the light source information;
Based on the generated mask information, as means for drawing a shadow expression image in the shadow area of the object,
Make the computer work ,
Based on the object information and the light source information, the texture coordinates for designating the mask generation texture are obtained, and the mask information is generated by mapping the mask generation texture to the object based on the obtained texture coordinates. An information storage medium characterized by the above.
請求項において、
オブジェクトの元画像とオブジェクトの陰影表現画像とを、生成された前記マスク情報に基づいてマスク合成することで、陰影領域に陰影表現画像が描画されたオブジェクトの画像を生成することを特徴とする情報記憶媒体。
In claim 6 ,
Information that generates an image of an object in which a shadow expression image is drawn in a shadow area by performing mask composition on the original image of the object and the shadow expression image of the object based on the generated mask information Storage medium.
請求項又はにおいて、
描画領域に描画されたオブジェクトの元画像を少なくとも内包する形状のプリミティブ面を、陰影表現画像のテクスチャをマッピングしながら描画領域に描画することで、陰影領域に陰影表現画像を描画することを特徴とする情報記憶媒体。
In claim 6 or 7 ,
It is characterized by drawing a shadow expression image in the shadow area by drawing a primitive surface with a shape that at least contains the original image of the object drawn in the drawing area in the drawing area while mapping the texture of the shadow expression image. Information storage medium.
請求項6〜8のいずれかにおいて、
前記マスク生成用テクスチャが、第1のテクスチャパターンと、前記第1のテクスチャパターンの各テクセルに設定されるα値とは異なるα値が各テクセルに設定される第2のテクスチャパターンとを有し、
前記マスク生成用テクスチャを指定するためのテクスチャ座標が第1の値から第2の値の間である場合には、前記第1のテクスチャパターンが指定され、前記テクスチャ座標が第2の値から第3の値の間にある場合には、前記第2のテクスチャパターンが指定されることを特徴とする情報記憶媒体。
In any one of Claims 6-8 ,
The mask generation texture includes a first texture pattern and a second texture pattern in which an α value different from an α value set in each texel of the first texture pattern is set in each texel. ,
When the texture coordinates for designating the mask generating texture are between the first value and the second value, the first texture pattern is designated, and the texture coordinates are designated by the second value. If the value is between 3, the second texture pattern is designated.
請求項6〜9のいずれかにおいて、
下地テクスチャがマッピングされるオブジェクトとマスク生成用テクスチャがマッピングされるオブジェクトとを重ねて描画することで、下地テクスチャの画像データとマスク生成用テクスチャのα値を、描画領域の各ピクセルに設定することを特徴とする情報記憶媒体。
In any one of Claims 6-9 ,
By drawing the object to which the background texture is mapped and the object to which the mask generation texture is mapped, the image data of the background texture and the α value of the mask generation texture are set to each pixel of the drawing area. An information storage medium characterized by the above.
JP2000136674A 2000-05-10 2000-05-10 GAME SYSTEM AND INFORMATION STORAGE MEDIUM Expired - Lifetime JP3777288B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000136674A JP3777288B2 (en) 2000-05-10 2000-05-10 GAME SYSTEM AND INFORMATION STORAGE MEDIUM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000136674A JP3777288B2 (en) 2000-05-10 2000-05-10 GAME SYSTEM AND INFORMATION STORAGE MEDIUM

Publications (2)

Publication Number Publication Date
JP2001319244A JP2001319244A (en) 2001-11-16
JP3777288B2 true JP3777288B2 (en) 2006-05-24

Family

ID=18644577

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000136674A Expired - Lifetime JP3777288B2 (en) 2000-05-10 2000-05-10 GAME SYSTEM AND INFORMATION STORAGE MEDIUM

Country Status (1)

Country Link
JP (1) JP3777288B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102346329B1 (en) * 2021-08-04 2022-01-03 주식회사 위딧 System and method for producing webtoon using three dimensional data

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3527489B2 (en) 2001-08-03 2004-05-17 株式会社ソニー・コンピュータエンタテインメント Drawing processing method and apparatus, recording medium storing drawing processing program, drawing processing program
JP3626144B2 (en) 2002-03-01 2005-03-02 株式会社セルシス Method and program for generating 2D image of cartoon expression from 3D object data
JP2006252423A (en) * 2005-03-14 2006-09-21 Namco Bandai Games Inc Program, information storage medium and image generation system
JP4641831B2 (en) * 2005-03-14 2011-03-02 株式会社バンダイナムコゲームス Program, information storage medium, and image generation system
JP4632855B2 (en) * 2005-05-16 2011-02-16 株式会社バンダイナムコゲームス Program, information storage medium, and image generation system
JP2010033285A (en) * 2008-07-28 2010-02-12 Namco Bandai Games Inc Program, information storage medium, and image generation system
JP2010033367A (en) * 2008-07-29 2010-02-12 Canon Inc Information processor and information processing method
JP5256153B2 (en) * 2009-09-16 2013-08-07 株式会社コナミデジタルエンタテインメント Image processing apparatus, image processing apparatus control method, and program
JP5539486B2 (en) * 2012-12-14 2014-07-02 キヤノン株式会社 Information processing apparatus and information processing method
US11270474B2 (en) * 2018-12-05 2022-03-08 Sony Corporation Screen-tone look generator
CN111260768B (en) 2020-02-07 2022-04-26 腾讯科技(深圳)有限公司 Picture processing method and device, storage medium and electronic device
JP7232449B2 (en) * 2020-09-17 2023-03-03 株式会社スピン DATA PROCESSING SYSTEM, DATA PROCESSING METHOD AND COMPUTER PROGRAM
CN112785489B (en) * 2020-12-29 2023-02-17 温州大学 Monocular stereoscopic vision image generation method and device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102346329B1 (en) * 2021-08-04 2022-01-03 주식회사 위딧 System and method for producing webtoon using three dimensional data

Also Published As

Publication number Publication date
JP2001319244A (en) 2001-11-16

Similar Documents

Publication Publication Date Title
JP3777288B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP3249955B2 (en) Image generation system and information storage medium
JP4610748B2 (en) Image generation system, program, and information storage medium
JP3538393B2 (en) GAME SYSTEM, PROGRAM, AND INFORMATION STORAGE MEDIUM
JP3280355B2 (en) Image generation 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
JP3467259B2 (en) GAME SYSTEM, PROGRAM, AND INFORMATION STORAGE MEDIUM
JP2001229403A (en) Game system and information storage medium
JP4574058B2 (en) Image generation system, program, and information storage medium
JP3254195B2 (en) Image generation system and information storage medium
JP4229317B2 (en) Image generation system, program, and information storage medium
JP4656617B2 (en) GAME SYSTEM, PROGRAM, AND INFORMATION STORAGE MEDIUM
JP2002063591A (en) Game system, program and information storage medium
JP4707078B2 (en) Image generation system, program, and information storage medium
JP4577968B2 (en) GAME SYSTEM AND INFORMATION STORAGE MEDIUM
JP4187192B2 (en) Image generation system, program, and information storage medium
JP2007141082A (en) Program, texture data structure, information storage medium, and image generation system
JP4913898B2 (en) GAME SYSTEM, PROGRAM, AND INFORMATION STORAGE MEDIUM
JP4394211B2 (en) Image generation system and information storage medium
JP4803909B2 (en) Image generation system, program, and information storage medium
JP4391633B2 (en) Image generation system and information storage medium

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051104

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051109

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060106

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060227

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 3777288

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20090303

Year of fee payment: 3

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

Free format text: PAYMENT UNTIL: 20090303

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20090303

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100303

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100303

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100303

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110303

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

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120303

Year of fee payment: 6

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

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120303

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130303

Year of fee payment: 7

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

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20140303

Year of fee payment: 8

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

EXPY Cancellation because of completion of term