(57)【特許請求の範囲】
【請求項１】
画像を生成するための画像生成システムであって、
３次元オブジェクトの輪郭を特定するために必要な情報を演算する輪郭特定情報演算手段と、
前記輪郭を特定するために必要な情報に基づき輪郭が付加された画像を生成する輪郭付加画像生成手段とを含み、
前記輪郭特定情報演算手段は、
３次元オブジェクトの透視変換後の画像又は透視変換後の画像の描画エリアを特定するマスク画像を複数の異なる方向に微小値だけずらして第１の描画バッファに重ねて描画することにより輪郭部分を含む画像エリアを特定し、
前記輪郭付加画像生成手段は、
３次元オブジェクトの透視変換後の画像を第２の描画バッファに描画し、前記第２の描画バッファに描画された画像に基づき、前記マスク画像及び元画像の少なくとも一方を前記第１の描画バッファに描画することを特徴とする画像生成システム。
【請求項２】
画像を生成するための画像生成システムであって、
３次元オブジェクトの輪郭を特定するために必要な情報を演算する輪郭特定情報演算手段と、
前記輪郭を特定するために必要な情報に基づき輪郭が付加された画像を生成する輪郭付加画像生成手段とを含み、
前記輪郭特定情報演算手段は、
３次元オブジェクトの透視変換後の画像の各画素について、当該画素に描画されているのが３次元オブジェクトの透視変換後の画像であるのか背景部であるのかを識別可能なマスク情報を持たせ、当該マスク情報に基づきマスク画像を特定し、特定したマスク画像を複数の異なる方向に微小値だけずらして所与の描画バッファに重ねて描画することにより輪郭部分を含む画像エリアを特定するように構成され、
前記輪郭付加画像生成手段は、
当該マスク情報に基づき、元画像及びマスク画像の少なくとも一方を描画することを特徴とする画像生成システム。
【請求項３】
請求項１又は２のいずれかにおいて、
前記輪郭付加画像生成手段は、
輪郭部分を含む画像エリアの輪郭部分以外の画素に、元画像を重ねて描画することにより、元画像に輪郭が付加された画像を生成することを特徴とする画像生成システム。
【請求項４】
コンピュータが読み取り可能な情報記憶媒体であって、
３次元オブジェクトの輪郭を特定するために必要な情報を演算する輪郭特定情報演算手段と、
前記輪郭を特定するために必要な情報に基づき輪郭が付加された画像を生成する輪郭付加画像生成手段と、
としてコンピュータを機能させるためのプログラムが記憶され、
前記輪郭特定情報演算手段は、
３次元オブジェクトの透視変換後の画像又は透視変換後の画像の描画エリアを特定するマスク画像を複数の異なる方向に微小値だけずらして第１の描画バッファに重ねて描画することにより輪郭部分を含む画像エリアを特定し、
前記輪郭付加画像生成手段は、
３次元オブジェクトの透視変換後の画像を第２の描画バッファに描画し、前記第２の描画バッファに描画された画像に基づき、前記マスク画像及び元画像の少なくとも一方を前記第１の描画バッファに描画することを特徴とする情報記憶媒体。
【請求項５】
コンピュータが読み取り可能な情報記憶媒体であって、
３次元オブジェクトの輪郭を特定するために必要な情報を演算する輪郭特定情報演算手段と、
前記輪郭を特定するために必要な情報に基づき輪郭が付加された画像を生成する輪郭付加画像生成手段と、
としてコンピュータを機能させるためのプログラムが記憶され、
前記輪郭特定情報演算手段は、
３次元オブジェクトの透視変換後の画像の各画素について、当該画素に描画されているのが３次元オブジェクトの透視変換後の画像であるのか背景部であるのかを識別可能なマスク情報を持たせ、当該マスク情報に基づきマスク画像を特定し、特定したマスク画像を複数の異なる方向に微小値だけずらして所与の描画バッファに重ねて描画することにより輪郭部分を含む画像エリアを特定するように構成され、
前記輪郭付加画像生成手段は、
当該マスク情報に基づき、元画像及びマスク画像の少なくとも一方を描画することを特徴とする情報記憶媒体。
【請求項６】
請求項４又は５のいずれかにおいて、
前記輪郭付加画像生成手段は、
輪郭部分を含む画像エリアの輪郭部分以外の画素に、元画像を重ねて描画することにより、元画像に輪郭が付加された画像を生成することを特徴とする情報記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、画像生成システム及び情報記憶媒体に関する。
【０００２】
【背景技術及び発明が解決しようとする課題】
従来より、仮想的な３次元空間であるオブジェクト空間内の所与の視点から見える画像を生成する画像生成システムが知られており、いわゆる仮想現実を体験できるものとして人気が高い。このような画像生成システムではプレーヤの仮想現実感の向上のためによりリアルな画像を生成することが望まれていた。
【０００３】
ところが一方ではさまざまなアニメ映画やアニメ画像が人気を博している。これらは実写に近いリアリティで人を魅了するのではなく、アニメ特有のセル画風の画像の楽しさで人を魅了するものである。
【０００４】
しかしかかるアニメ画像はあらかじめ用意されたアニメのセル画を再生することにより映写されるものであるため映画やゲームのオープニングのムービー画像等に用いられ、リアルタイムに変化するゲーム画像等としては用いられていなかった。
【０００５】
そこで本出願人は、セルアニメ風の画像をプレーヤの操作入力等に応じてリアルタイムに変化させる画像生成システムを提案し、開発を行っている。そしてセルアニメに近い画像を生成するために輪郭線を強調した画像を生成する工夫を行っているが、如何にして少ない処理負担で輪郭線を強調した画像を生成するかという課題を有していた。
【０００６】
理論的には３次元オブジェクトにたいしてセルアニメ風のレンダリングを施すことによりセルアニメの画像をリアルタイムに変化させることができ、かかる手法としてアニメシェーダーが知られている。しかしアニメシェーダーの手法は処理負担が重いためリアルタイム性が要求される家庭用、業務用ゲームシステム等においては採用しづらい。
【０００７】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、より少ない処理負担でセルアニメ風の画像演出が可能な輪郭付けを行う画像生成システム及び情報記憶媒体を提供することにある。
【０００８】
【課題を解決するための手段】
本発明は画像を生成するための画像生成システムであって、３次元オブジェクトの輪郭を特定するために必要な情報を演算する手段と、前記輪郭を特定するために必要な情報に基づき輪郭が付加された画像を生成する手段とを含むことを特徴とする。
【０００９】
また本発明に係る情報記憶媒体は、コンピュータにより使用可能な情報記憶媒体であって、上記手段を実行するためのプログラムを含むことを特徴とする。また本発明に係るプログラムは、コンピュータにより使用可能なプログラム（搬送波に具現化されるプログラムを含む）であって、上記手段を実行するための処理ルーチンを含むことを特徴とする。
【００１０】
本発明によれば、輪郭を特定するために必要な情報を演算して元画像に輪郭が付加された画像を生成することができる。したがってあらかじめオブジェクト毎に輪郭線に関する情報を有していなくても、輪郭を特定するために必要な情報をリアルタイムに演算して輪郭付けを行うことができる。このため３次元オブジェクトにセルアニメ風の演出を行う際の演出効果をより高めることができる。
【００１１】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、３次元オブジェクトを複数の異なる方向に微小値だけずらして所与の３次元空間に重ねて配置することにより輪郭部分を特定するために必要な情報を演算することを特徴とする。
【００１２】
所与の３次元空間とは透視変換前の３次元オブジェクトが配置される３次元空間を意味し、ローカル座標系の空間でもよいし、ワールド座標系の空間でもよいし、視点座標系の空間でもよいし、その他の座標系を有する空間でもよい。
【００１３】
ここにおいて微小値は付加したい輪郭の幅に応じて与えることが好ましい。たとえば太い輪郭線をつけたい場合には細い輪郭線をつけたい場合に比べて微小値の値を大きくとることが好ましい。
【００１４】
３次元オブジェクトを複数の異なる方向に微小値だけずらして所与の３次元空間に重ねて配置することにより、３次元オブジェクトが重畳した空間の周りに微小値幅の輪郭部分を特定することができる。したがってこれを輪郭部分を特定するために必要な情報として用い、輪郭が付加された画像を生成することができる。
【００１５】
本発明によれば、３次元オブジェクトを複数の異なる方向に微小値だけずらして所与の３次元空間に重ねて配置するという簡単なアルゴリズム及び演算処理で輪郭部分を特定するために必要な情報を得ることができる。
【００１６】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、３次元オブジェクトの透視変換後の画像又は透視変換後の画像の描画エリアを特定するマスク画像を複数の異なる方向に微小値だけずらして所与の描画バッファに重ねて描画することにより輪郭部分を含む画像エリアを特定することを特徴とする。
【００１７】
ここにおいて微小値は付加したい輪郭の幅に応じて与えることが好ましい。たとえば太い輪郭線をつけたい場合には細い輪郭線をつけたい場合に比べて微小値の値を大きくとることが好ましい。
【００１８】
また所与の描画用バッファとは例えばフレームバッファ等の画素単位の描画情報をかきこみ可能な記憶領域である。
【００１９】
３次元オブジェクトの透視変換後の画像又は透視変換後の画像の描画エリアを特定するマスク画像を複数の異なる方向に微小値だけずらして所与の描画用バッファに重ねて描画することにより、重畳した描画エリアの周りに微小値幅の輪郭部分を生成することができる。
【００２０】
したがって本発明によればずらして描画するという簡単なアルゴリズム及び演算処理で輪郭が付加された画像を生成することができる。
【００２１】
なおなるべく多くの方向にずらして描画することにより詳細な輪郭情報をえることができるが、描画回数を増やすと処理負担を増加させることになるので、透視変換後の画像の形状に応じてもっとも効果的な描画回数を設定することが好ましい。
【００２２】
また前記マスク画像を表示したい輪郭線の色で描画すると、重畳した描画エリアの周りに微小値幅の輪郭線が表示したい輪郭線の色で描画された画像を生成することができる。
【００２３】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、輪郭部分を含む画像エリアの輪郭部分以外の画素に、元画像を重ねて描画することにより、元画像に輪郭が付加された画像を生成することを特徴とする。
【００２４】
ここにおいて元画像とは３次元オブジェクトの透視変換後の画像またはその画像に基づき生成される画像であって本発明による輪郭が付与される前の画像である。たとえばテクスチャマッピング等が行われる場合にはテクスチャがマッピングされた画像である。
【００２５】
本発明によれば、輪郭部分を含む画像エリアの輪郭部分以外の画素に元画像を重ねて描画するという簡単なアルゴリズム及び演算処理で輪郭が元画像に付加された画像を生成することができる。
【００２６】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、３次元オブジェクトの透視変換後の画像を予備のフレームバッファに描画し、予備のフレームバッファに描画された画像に基づき、前記マスク画像及び元画像の少なくとも一方をフレームバッファに描画することを特徴とする。
【００２７】
本発明によれば予備のフレームバッファを用いて２パス方式で描画を行うことにより処理を高速化することができる。
【００２８】
また本発明に係る画像生成システム、情報記憶媒体及びプログラムは、３次元オブジェクトの透視変換後の画像が描画されている前記所与のバッファ又は予備のフレームバッファの各画素について、当該画素に描画されているのが３次元オブジェクトの透視変換後の画像であるのか背景部であるのかを識別可能なマスク情報を持たせ、当該マスク情報に基づき、元画像及びマスク画像の少なくとも一方を描画することを特徴とする。
【００２９】
マスク情報を用いることにより描画する元画像及びマスク画像の少なくとも一方の特定が容易となる。なおマスク情報は例えば画素情報のα値として持たせてもよいし、他にマスク情報用のバッファを設けてもよい。
【００３０】
【発明の実施の形態】
以下、本発明の好適な実施形態について図面を用いて説明する。
【００３１】
１．構成
図１に、本実施形態のブロック図の一例を示す。なお同図において本実施形態は、少なくとも処理部１００を含めばよく（或いは処理部１００と記憶部１７０、或いは処理部１００と記憶部１７０と情報記憶媒体１８０を含めばよく）、それ以外のブロック（例えば操作部１６０、表示部１９０、音出力部１９２、携帯型情報記憶装置１９４、通信部１９６）については、任意の構成要素とすることができる。
【００３２】
ここで処理部１００は、システム全体の制御、システム内の各ブロックへの命令の指示、ゲーム処理、画像処理、音処理などの各種の処理を行うものであり、その機能は、各種プロセッサ（ＣＰＵ、ＤＳＰ等）、或いはＡＳＩＣ（ゲートアレイ等）などのハードウェアや、所与のプログラム（ゲームプログラム）により実現できる。
【００３３】
操作部１６０は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、筺体などのハードウェアにより実現できる。
【００３４】
記憶部１７０は、処理部１００や通信部１９６などのワーク領域となるもので、その機能はＲＡＭなどのハードウェアにより実現できる。
【００３５】
情報記憶媒体（コンピュータにより使用可能な記憶媒体）１８０は、プログラムやデータなどの情報を格納するものであり、その機能は、光ディスク（ＣＤ、ＤＶＤ）、光磁気ディスク（ＭＯ）、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ（ＲＯＭ）などのハードウェアにより実現できる。処理部１００は、この情報記憶媒体１８０に格納される情報に基づいて本発明（本実施形態）の種々の処理を行う。即ち情報記憶媒体１８０には、本発明（本実施形態）の手段（特に処理部１００に含まれるブロック）を実行するための情報（プログラム或いはプログラム及びデータ）が格納される。
【００３６】
なお、情報記憶媒体１８０に格納される情報の一部又は全部は、システムへの電源投入時等に記憶部１７０に転送されることになる。また情報記憶媒体１８０に記憶される情報は、本発明の処理を行うためのプログラムコード、画像データ、音データ、表示物の形状データ、テーブルデータ、リストデータ、本発明の処理を指示するための情報、その指示に従って処理を行うための情報等の少なくとも１つを含むものである。
【００３７】
表示部１９０は、本実施形態により生成された画像を出力するものであり、その機能は、ＣＲＴ、ＬＣＤ、或いはＨＭＤ（ヘッドマウントディスプレイ）などのハードウェアにより実現できる。
【００３８】
音出力部１９２は、本実施形態により生成された音を出力するものであり、その機能は、スピーカなどのハードウェアにより実現できる。
【００３９】
携帯型情報記憶装置１９４は、プレーヤの個人データやセーブデータなどが記憶されるものであり、この携帯型情報記憶装置１９４としては、メモリカードや携帯型ゲーム装置などを考えることができる。
【００４０】
通信部１９６は、外部（例えばホスト装置や他の画像生成システム）との間で通信を行うための各種の制御を行うものであり、その機能は、各種プロセッサ、或いは通信用ＡＳＩＣなどのハードウェアや、プログラムなどにより実現できる。
【００４１】
なお本発明（本実施形態）の手段を実行するためのプログラム或いはデータは、ホスト装置（サーバー）が有する情報記憶媒体からネットワーク及び通信部１９６を介して情報記憶媒体１８０に配信するようにしてもよい。このようなホスト装置（サーバー）の情報記憶媒体の使用も本発明の範囲内に含まれる。
【００４２】
処理部１００は、ゲーム処理部１１０、画像処理部１４０、音処理部１５０を含む。
【００４３】
ここでゲーム処理部１１０は、コイン（代価）の受け付け処理、各種モードの設定処理、ゲームの進行処理、選択画面の設定処理、オブジェクトの位置や回転角度（Ｘ、Ｙ又はＺ軸回り回転角度）を求める処理、オブジェクトを動作させる処理（モーション処理）、視点位置や視線角度（視線方向）を求める処理、マップオブジェクトなどのオブジェクトをオブジェクト空間へ配置する処理、ヒットチェック処理、ゲーム結果（成果、成績）を演算する処理、複数のプレーヤが共通のゲーム空間でプレイするための処理、或いはゲームオーバー処理などの種々のゲーム処理を、操作部１６０からの操作データや、携帯型情報記憶装置１９４からの個人データ、保存データや、ゲームプログラムなどに基づいて行う。
【００４４】
画像処理部１４０は、ゲーム処理部１１０からの指示等にしたがって、各種の画像処理を行うものである。また、音処理部１５０は、ゲーム処理部１１０からの指示等にしたがって、各種の音処理を行うものである。
【００４５】
なお画像処理部１４０、音処理部１５０の機能は、その全てをハードウェアにより実現してもよいし、その全てをプログラムにより実現してもよい。或いは、ハードウェアとプログラムの両方により実現してもよい。
【００４６】
ゲーム処理部１１０は、移動・動作演算部１１４を含む。
【００４７】
移動・動作演算部１１４は、車などのオブジェクトの移動情報（位置データ、回転角度データ）や動作情報（オブジェクトの各パーツの位置データ、回転角度データ）を演算するものであり、例えば、操作部１６０によりプレーヤが入力した操作データやゲームプログラムなどに基づいて、オブジェクトを移動させたり動作させたりする処理を行う。
【００４８】
より具体的には、移動・動作演算部１１４は、オブジェクトの位置や回転角度を例えば１フレーム（１／６０秒）毎に求める処理を行う。例えば（ｋ−１）フレームでのオブジェクトの位置をＰＭk-1、速度をＶＭk-1、加速度をＡＭk-1、１フレームの時間を△ｔとする。するとｋフレームでのオブジェクトの位置ＰＭk、速度ＶＭkは例えば下式（１）、（２）のように求められる。
【００４９】
ＰＭk＝ＰＭk-1＋ＶＭk-1×△ｔ              （１）
ＶＭk＝ＶＭk-1＋ＡＭk-1×△ｔ              （２）
画像処理部１４０は、ジオメトリ処理部（３次元座標演算部）１４２、描画部（レンダリング部）１４６を含む。
【００５０】
ここで、ジオメトリ処理部１４２は、座標変換、クリッピング処理、透視変換、或いは光源計算などの種々のジオメトリ処理（３次元座標演算）を行う。
【００５１】
描画部１４６は、輪郭処理部１４４を含み、ジオメトリ処理後（透視変換後）のオブジェクトデータと、テクスチャバッファに記憶されるテクスチャとに基づいて、オブジェクト描画する処理を行う。
【００５２】
輪郭処理部１４４は、３次元オブジェクトの輪郭を特定するために必要な情報を演算し、この情報に基づき輪郭が付加された画像を生成する処理を行う。例えば３次元オブジェクトの透視変換後の画像又は透視変換後の画像の描画エリアを特定するマスク画像を複数の異なる方向に微小値だけずらして所与の描画バッファに重ねて描画することにより輪郭部分を含む画像エリアを特定することができる。そして輪郭部分を含む画像エリアの輪郭部分以外の画素に、元画像を重ねて描画することにより、元画像に輪郭が付加された画像を生成することができる。
【００５３】
なおここにおいて、３次元オブジェクトの透視変換後の画像を予備のフレームバッファに描画し、予備のフレームバッファに描画された画像に基づき、前記マスク画像及び元画像の少なくとも一方をフレームバッファに描画するようにしてもよい。
【００５４】
また３次元オブジェクトの透視変換後の画像が描画されている前記所与のバッファ又は予備のフレームバッファの各画素について、当該画素に描画されているのが３次元オブジェクトの透視変換後の画像であるのか背景部であるのかを識別可能なマスク情報をもたせ、当該マスク情報に基づき、元画像及びマスク画像の少なくとも一方を描画するようにしてもよい。
【００５５】
なお、本実施形態の画像生成システムは、１人のプレーヤのみがプレイできるシングルプレーヤモード専用のシステムにしてもよいし、このようなシングルプレーヤモードのみならず、複数のプレーヤがプレイできるマルチプレーヤモードも備えるシステムにしてもよい。
【００５６】
また複数のプレーヤがプレイする場合に、これらの複数のプレーヤに提供するゲーム画像やゲーム音を、１つの端末を用いて生成してもよいし、ネットワーク（伝送ライン、通信回線）などで接続された複数の端末を用いて生成してもよい。
【００５７】
２．本実施形態の特徴と動作
本実施の形態の特徴は３次元オブジェクトの輪郭を特定するために必要な情報を演算し、当該情報に基づき輪郭が付加された画像を生成する点にある。
【００５８】
図２はドーナッツ型の３次元オブジェクトに特に輪郭を強調しない通常のレンダリング処理を行った場合の画像を表しており、図３はドーナッツ型の３次元オブジェクトに本実施の形態の輪郭を強調したレンダリング処理を行った画像を表している。
【００５９】
従来の３次元ＣＧでは、図２に示すようにより実写に近いリアルで自然な画像を生成するのが一般的であった。
【００６０】
これに対し本実施の形態では、図３に示すように、輪郭線２１０、２２０で輪郭付けを行い３次元オブジェクトをセルアニメ風に見せる演出を行っている。
【００６１】
図４は、本実施の形態で輪郭付けを行う際の動作例を説明するためのフローチャート図である。
【００６２】
以下図４のフローチャート図にしたがって、本実施の形態で３次元オブジェクトに輪郭づけを行う手法について説明する。
【００６３】
まず輪郭付けの対象となる３次元オブジェクトをスクリーン座標形に透視変換する（ステップＳ１０）。
【００６４】
そして仮のバッファ（予備のフレームバッファ）のＲＧＢプレーンに３次元オブジェクトの透視変換後の画像（以下元画像という）を描画するとともに、αプレーンにマスク情報をセットする（ステップＳ２０）。
【００６５】
図５は仮のバッファ（予備のフレームバッファ）について説明するための図である。仮のバッファ（予備のフレームバッファ）は各画素の画素情報が描画されるバッファであり、各画素のＲ、Ｇ、Ｂの値を記憶するためのＲプレーン３１０、Ｇプレーン３２０、Ｂプレーン３３０と、各画素のα値を記憶するためのαプレーン３４０を有している。
【００６６】
α値は当該画素に描画されているのが３次元オブジェクトの透視変換後の画像（以下元画像という）であるのか背景部であるのかを識別可能なマスク情報を記憶するために用いられる。なおマスク情報は元画像であるか背景部であるかをオン、オフで示すマスクビットでもよいし、例えばα値とあるしきい値を比較して元画像と背景部が識別できるような構成で与えられてもよい。
【００６７】
なお仮のバッファ（予備のフレームバッファ）はフレームバッファと同様にＶＲＡＭ上に設けてもよいし、メインメモリに設けてもよい。本実施の形態では仮のバッファ（予備のフレームバッファ）をフレームバッファと同様にＶＲＡＭ上に設け、２パス方式で描画を行うことにより処理の高速化を図っている。
【００６８】
図６（Ａ）（Ｂ）は仮のバッファ（予備のフレームバッファ）のＲ、Ｇ、Ｂ各プレーン３００とαプレーン３４０の関係を説明するための図である。図６（Ａ）の３７０を元画像、３８０を背景とすれば、仮のバッファ（予備のフレームバッファ）のαプレーンの元画像に対応するエリア３６０の画素には元画像であることを示すマスク情報が記憶されている。
【００６９】
図７（Ａ）〜（Ｆ）はマスク画像を元画像の描画予定位置に対して複数の異なる方向に微小値だけずらしてフレームバッファに重ねて描画することにより輪郭を生成する様子を説明するための図である。図７（Ａ）の４１０が、フレームバッファ４００における元画像の描画予定位置を表している。マスク画像とは元画像の描画領域を特定するための画像である。
【００７０】
図４のステップＳ３０〜ステップＳ６０でマスク画像を元画像の描画予定位置からそれぞれ上下右左にずらして描画する処理を行っている。
【００７１】
すなわち、仮のバッファ（予備のフレームバッファ）のαプレーンのマスク情報に基づきマスク画像を特定し、輪郭線の色に塗りつぶしたマスク画像をフレームバッファの元画像の描画予定位置から上に１ピクセルずらした位置に描画する（ステップＳ３０、図７（Ｂ）の４２０参照）。
【００７２】
次に、輪郭線の色に塗りつぶしたマスク画像をフレームバッファの元画像の描画予定位置から下に１ピクセルずらした位置に描画する（ステップＳ４０、図７（Ｃ）の４３０参照）。
【００７３】
次に、輪郭線の色に塗りつぶしたマスク画像をフレームバッファの元画像の描画予定位置から右に１ピクセルずらした位置に描画する（ステップＳ５０、図７（Ｄ）の４４０参照）。
【００７４】
次に、輪郭線の色に塗りつぶしたマスク画像をフレームバッファの元画像の描画予定位置から左に１ピクセルずらした位置に描画する（ステップＳ６０、図７（Ｅ）の４５０参照）。
【００７５】
そして仮のバッファ上の元画像をフレームバッファ上の元画像の描画予定位置に描画する（ステップＳ７０、図７（Ｆ）参照）。
【００７６】
すると図７（Ｆ）に示すように、元画像の周りの上下右左に幅１ビットの輪郭線４７２、４７４、４７６、４７８が生成されている。
【００７７】
このように本実施の形態では、マスク画像を複数の異なる方向に微小値だけずらしてフレームバッファに重ねて描画することにより、重畳した描画エリアの周りに微小値幅の輪郭部分を生成することができる。したがってずらして描画するという簡単なアルゴリズム及び演算処理で輪郭が付加された画像を生成することができる。
【００７８】
３．ハードウェア構成
次に、本実施形態を実現できるハードウェアの構成の一例について図８を用いて説明する。
【００７９】
メインプロセッサ９００は、ＣＤ９８２（情報記憶媒体）に格納されたプログラム、通信インターフェース９９０を介して転送されたプログラム、或いはＲＯＭ９５０（情報記憶媒体の１つ）に格納されたプログラムなどに基づき動作し、ゲーム処理、画像処理、音処理などの種々の処理を実行する。
【００８０】
コプロセッサ９０２は、メインプロセッサ９００の処理を補助するものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算（ベクトル演算）を高速に実行する。例えば、オブジェクトを移動させたり動作（モーション）させるための物理シミュレーションに、マトリクス演算などの処理が必要な場合には、メインプロセッサ９００上で動作するプログラムが、その処理をコプロセッサ９０２に指示（依頼）する。
【００８１】
ジオメトリプロセッサ９０４は、座標変換、透視変換、光源計算、曲面生成などのジオメトリ処理を行うものであり、高速並列演算が可能な積和算器や除算器を有し、マトリクス演算（ベクトル演算）を高速に実行する。例えば、座標変換、透視変換、光源計算などの処理を行う場合には、メインプロセッサ９００で動作するプログラムが、その処理をジオメトリプロセッサ９０４に指示する。
【００８２】
データ伸張プロセッサ９０６は、圧縮された画像データや音データを伸張するデコード処理を行ったり、メインプロセッサ９００のデコード処理をアクセレートする処理を行う。これにより、オープニング画面、インターミッション画面、エンディング画面、或いはゲーム画面などにおいて、ＭＰＥＧ方式等で圧縮された動画像を表示できるようになる。なお、デコード処理の対象となる画像データや音データは、ＲＯＭ９５０、ＣＤ９８２に格納されたり、或いは通信インターフェース９９０を介して外部から転送される。
【００８３】
描画プロセッサ９１０は、ポリゴンや曲面などのプリミティブ面で構成されるオブジェクトの描画（レンダリング）処理を高速に実行するものである。オブジェクトの描画の際には、メインプロセッサ９００は、ＤＭＡコントローラ９７０の機能を利用して、オブジェクトデータを描画プロセッサ９１０に渡すと共に、必要であればテクスチャ記憶部９２４にテクスチャを転送する。すると、描画プロセッサ９１０は、これらのオブジェクトデータやテクスチャに基づいて、Ｚバッファなどを利用した陰面消去を行いながら、オブジェクトをフレームバッファ９２２に高速に描画する。また、描画プロセッサ９１０は、αブレンディング（半透明処理）、ミップマッピング、フォグ処理、トライリニア・フィルタリング、アンチエリアシング、シェーディング処理なども行うことができる。そして、１フレーム分の画像がフレームバッファ９２２に書き込まれると、その画像はディスプレイ９１２に表示される。
【００８４】
サウンドプロセッサ９３０は、多チャンネルのＡＤＰＣＭ音源などを内蔵し、ＢＧＭ、効果音、音声などの高品位のゲーム音を生成する。生成されたゲーム音は、スピーカ９３２から出力される。
【００８５】
ゲームコントローラ９４２からの操作データや、メモリカード９４４からのセーブデータ、個人データは、シリアルインターフェース９４０を介してデータ転送される。
【００８６】
ＲＯＭ９５０にはシステムプログラムなどが格納される。なお、業務用ゲームシステムの場合には、ＲＯＭ９５０が情報記憶媒体として機能し、ＲＯＭ９５０に各種プログラムが格納されることになる。なお、ＲＯＭ９５０の代わりにハードディスクを利用するようにしてもよい。
【００８７】
ＲＡＭ９６０は、各種プロセッサの作業領域として用いられる。
【００８８】
ＤＭＡコントローラ９７０は、プロセッサ、メモリ（ＲＡＭ、ＶＲＡＭ、ＲＯＭ等）間でのＤＭＡ転送を制御するものである。
【００８９】
ＣＤドライブ９８０は、プログラム、画像データ、或いは音データなどが格納されるＣＤ９８２（情報記憶媒体）を駆動し、これらのプログラム、データへのアクセスを可能にする。
【００９０】
通信インターフェース９９０は、ネットワークを介して外部との間でデータ転送を行うためのインターフェースである。この場合に、通信インターフェース９９０に接続されるネットワークとしては、通信回線（アナログ電話回線、ＩＳＤＮ）、高速シリアルインターフェースのバスなどを考えることができる。そして、通信回線を利用することでインターネットを介したデータ転送が可能になる。また、高速シリアルインターフェースのバスを利用することで、他の画像生成システム、他のゲームシステム、或いは情報処理機器（パーソナルコンピュータ、プリンタ、マウス、キーボード）などとの間でのデータ転送が可能になる。
【００９１】
なお、本発明の各手段は、その全てを、ハードウェアのみにより実行してもよいし、情報記憶媒体に格納されるプログラムや通信インターフェースを介して配信されるプログラムのみにより実行してもよい。或いは、ハードウェアとプログラムの両方により実行してもよい。
【００９２】
そして、本発明の各手段をハードウェアとプログラムの両方により実行する場合には、情報記憶媒体には、本発明の各手段をハードウェアを利用して実行するためのプログラム（プログラム及びデータ）が格納されることになる。より具体的には、上記プログラムが、ハードウェアである各プロセッサ９０２、９０４、９０６、９１０、９３０等に処理を指示すると共に、必要であればデータを渡す。そして、各プロセッサ９０２、９０４、９０６、９１０、９３０等は、その指示と渡されたデータとに基づいて、本発明の各手段を実行することになる。
【００９３】
図９（Ａ）に、本実施形態を業務用ゲームシステムに適用した場合の例を示す。プレーヤは、ディスプレイ１１００上に映し出されたゲーム画像を見ながら、レバー１１０２、ボタン１１０４等を操作してゲームを楽しむ。内蔵されるシステムボード（サーキットボード）１１０６には、各種プロセッサ、各種メモリなどが実装される。そして、本発明の各手段を実行するためのプログラム（或いはプログラム及びデータ）は、システムボード１１０６上の情報記憶媒体であるメモリ１１０８に格納される。以下、この情報を格納情報と呼ぶ。
【００９４】
図９（Ｂ）に、本実施形態を家庭用のゲームシステムに適用した場合の例を示す。プレーヤはディスプレイ１２００に映し出されたゲーム画像を見ながら、ゲームコントローラ１２０２、１２０４を操作してゲームを楽しむ。この場合、上記格納情報は、本体システムに着脱自在な情報記憶媒体であるＣＤ１２０６、或いはメモリカード１２０８、１２０９等に格納されている。
【００９５】
図９（Ｃ）に、ホスト装置１３００と、このホスト装置１３００とネットワーク１３０２（ＬＡＮのような小規模ネットワークや、インターネットのような広域ネットワーク）を介して接続される端末１３０４-1〜１３０４-nとを含むシステムに本実施形態を適用した場合の例を示す。この場合、上記格納情報は、例えばホスト装置１３００が制御可能な磁気ディスク装置、磁気テープ装置、メモリ等の情報記憶媒体１３０６に格納されている。端末１３０４-1〜１３０４-nが、スタンドアロンでゲーム画像、ゲーム音を生成できるものである場合には、ホスト装置１３００からは、ゲーム画像、ゲーム音を生成するためのゲームプログラム等が端末１３０４-1〜１３０４-nに配送される。一方、スタンドアロンで生成できない場合には、ホスト装置１３００がゲーム画像、ゲーム音を生成し、これを端末１３０４-1〜１３０４-nに伝送し端末において出力することになる。
【００９６】
なお、図９（Ｃ）の構成の場合に、本発明の各手段を、ホスト装置（サーバー）と端末とで分散して実行するようにしてもよい。また、本発明の各手段を実行するための上記格納情報を、ホスト装置（サーバー）の情報記憶媒体と端末の情報記憶媒体に分散して格納するようにしてもよい。
【００９７】
またネットワークに接続する端末は、家庭用ゲームシステムであってもよいし業務用ゲームシステムであってもよい。そして、業務用ゲームシステムをネットワークに接続する場合には、業務用ゲームシステムとの間で情報のやり取りが可能であると共に家庭用ゲームシステムとの間でも情報のやり取りが可能な携帯型情報記憶装置（メモリカード、携帯型ゲーム装置）を用いることが望ましい。
【００９８】
なお本発明は、上記実施形態で説明したものに限らず、種々の変形実施が可能である。
【００９９】
例えば、本発明のうち従属請求項に係る発明においては、従属先の請求項の構成要件の一部を省略する構成とすることもできる。また、本発明の１の独立請求項に係る発明の要部を、他の独立請求項に従属させることもできる。
【０１００】
また、本実施形態では、ジオメトリ処理として座標変換や透視変換を例に挙げたが、本発明のジオメトリ処理はこれらに限定されない。
【０１０１】
また色情報としてＲＧＢを例にとり説明したがこれに限られない。例えばＨＳＶやＨＬＳ等の値でもよい。
【０１０２】
また本実施の形態では仮のバッファに一旦描画を行い、その後にフレームバッファに描画を行う２パス形式を採用している場合を例にとり説明したがこれに限られない。例えば１パスでフレームバッファにかきこむ場合でも実現可能であり、３パス又はそれ以上のパスでフレームバッファに描画を行う場合でもよい。
【０１０３】
本実施の形態では、元画像の描画予定位置に対して上下右左に１ピクセルずつずらした位置にマスク画像を描画して輪郭部分を含む画像エリアを特定する場合を例にとり説明したがこれに限られない。より多くの異なる方向にずらして描画するほど詳細な輪郭情報をえることができるが、描画回数を増やすと処理負担を増加させることになるので、透視変換後の画像の形状に応じてもっとも効果的な描画回数を設定することが好ましい。
【０１０４】
また本実施の形態では３次元オブジェクトの透視変換後の画像に基づいて輪郭部分を含む画像エリアを特定する場合を例にとり説明したがこれに限られない。例えば透視変換前の３次元オブジェクトを３次元空間において複数の異なる方向に微小値だけずらして重ねて配置することにより輪郭部分を特定するために必要な情報を演算するようにしてもよい。
【０１０５】
また本発明は種々のゲーム（格闘ゲーム、シューティングゲーム、ロボット対戦ゲーム、スポーツゲーム、競争ゲーム、ロールプレイングゲーム、音楽演奏ゲーム、ダンスゲーム等）に適用できる。
【０１０６】
また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、画像生成システム、ゲーム画像を生成するシステムボード等の種々の画像生成システムに適用できる。
【図面の簡単な説明】
【図１】本実施形態の画像生成システムのブロック図の例である。
【図２】ドーナッツ型の３次元オブジェクトに特に輪郭を強調しない通常のレンダリング処理を行った場合の画像を表している。
【図３】ドーナッツ型の３次元オブジェクトに本実施の形態の輪郭を強調したレンダリング処理を行った画像を表している。
【図４】本実施の形態で輪郭付けを行う際の動作例を説明するためのフローチャート図である。
【図５】仮のバッファ（予備のフレームバッファ）について説明するための図である。
【図６】図６（Ａ）（Ｂ）は仮のバッファ（予備のフレームバッファ）のＲ、Ｇ、Ｂ各プレーンとαプレーンの関係を説明するための図である。
【図７】図７（Ａ）〜（Ｆ）はマスク画像を元画像の描画予定位置に対して複数の異なる方向に微小値だけずらしてフレームバッファに重ねて描画することにより輪郭を生成する様子を説明するための図である。
【図８】本実施形態を実現できるハードウェアの構成の一例を示す図である。
【図９】図９（Ａ）、（Ｂ）、（Ｃ）は、本実施形態が適用される種々の形態のシステムの例を示す図である。
【符号の説明】
１００  処理部
１１０  ゲーム処理部
１１２  編集画面表示部
１１４  移動・動作演算
１４０  画像処理部
１４２  ジオメトリ処理部
１４４  輪郭処理部
１４６  描画部
１５０  音処理部
１６０  操作部
１７０  記憶部
１７２  メインメモリ
１７４  フレームバッファ
１７６  テクスチャ記憶部
１８０  情報記憶媒体
１９０  表示部
１９２  音出力部
１９４  携帯型情報記憶装置
１９６  通信部
【図１】
0004391633.tif 000002
【図２】
0004391633.tif 000003
【図３】
0004391633.tif 000004
【図４】
0004391633.tif 000005
【図５】
0004391633.tif 000006
【図６】
0004391633.tif 000007
【図７】
0004391633.tif 000008
【図８】
0004391633.tif 000009
【図９】
0004391633.tif 000010