(57)【特許請求の範囲】
【請求項１】
複数のポリゴンで表現された３次元モデルから２次元スクリーン用表示データを生成する３次元モデルの画像処理手順をプロセッサに実行させるための３次元モデルの画像処理プログラムを記録した記録媒体において、
前記３次元モデルの画像処理手順は、
前記３次元モデルのポリゴンデータから２次元表示のためのポリゴンデータを生成するステップと、
前記３次元モデルのポリゴンデータから前記３次元モデルの輪郭線を抽出するステップと、
前記抽出した輪郭線に沿った輪郭用ポリゴンデータを生成するステップと、
前記３次元モデルの前記ポリゴンデータと前記輪郭用ポリゴンデータとから前記２次元スクリーン用表示データを生成するステップとを有することを
特徴とする３次元モデルの画像処理プログラムを記録した記録媒体。
【請求項２】
請求項１の３次元モデルの画像処理プログラムを記録した記録媒体において、
前記輪郭線を抽出するステップは、
前記３次元モデルのポリゴンの境界線のデータから前記輪郭線を抽出するステップからなることを
特徴とする３次元モデルの画像処理プログラムを記録した記録媒体。
【請求項３】
請求項１の３次元モデルの画像処理プログラムを記録した記録媒体において、
前記３次元モデルのポリゴンデータから前記２次元表示のためのポリゴンデータを生成するステップは、
前記ポリゴンが視点から見た前記３次元モデルの表面または裏面のいずれに対応するかを判定する表裏判定を行うステップと、
前記表裏判定結果により、表面のポリゴンのポリゴンデータを２次元表示用ポリゴンデータとして生成するステップとを有し、
前記輪郭線を抽出するステップは、
前記表裏判定結果を用いて、前記ポリゴンのエッジが、前記輪郭線かを判定するステップからなること
特徴とする３次元モデルの画像処理プログラムを記録した記録媒体。
【請求項４】
請求項３の３次元モデルの画像処理プログラムを記録した記録媒体において、
前記輪郭線を抽出するステップは、
共通のエッジを有する複数のポリゴンの表裏判定結果に基づいて前記共通のエッジが前記輪郭線かを判定するステップからなることを
特徴とする３次元モデルの画像処理プログラムを記録した記録媒体。
【請求項５】
請求項１の３次元モデルの画像処理プログラムを記録した記録媒体において、
前記２次元スクリーン用表示データを生成するステップは、
前記輪郭用ポリゴンデータに応じたテクスチャを前記輪郭に描画するステップを有することを
特徴とする３次元モデルの画像処理プログラムを記録した記録媒体。
【請求項６】
請求項１の３次元モデルの画像処理プログラムを記録した記録媒体において、
前記輪郭用ポリゴンデータを生成するステップは、
前記輪郭用ポリゴンの座標と色とを生成するステップからなること
特徴とする３次元モデルの画像処理プログラムを記録した記録媒体。
【請求項７】
請求項１の３次元モデルの画像処理プログラムを記録した記録媒体において、
前記輪郭用ポリゴンデータを生成するステップは、
前記抽出された輪郭線の頂点座標から、前記輪郭用ポリゴンの座標を生成するステップからなること
特徴とする３次元モデルの画像処理プログラムを記録した記録媒体。
【請求項８】
複数のポリゴンで表現された３次元モデルから２次元スクリーン用表示データを生成する３次元モデルの画像処理装置において、
前記３次元モデルのポリゴンデータから２次元表示のためのポリゴンデータを生成するとともに、前記３次元モデルのポリゴンデータから前記３次元モデルの輪郭線を抽出し、前記抽出した輪郭線に沿った輪郭用ポリゴンデータを生成する描画処理部と、
前記３次元モデルの前記ポリゴンデータと前記輪郭用ポリゴンデータとから前記２次元スクリーン用表示データを生成するレンダラとを有することを
特徴とする３次元モデルの画像処理装置。
【請求項９】
請求項８の３次元モデルの画像処理装置において、
前記描画処理部は、
前記３次元モデルのポリゴンの境界線のデータから前記輪郭線を抽出することを
特徴とする３次元モデルの画像処理装置。
【請求項１０】
請求項８の３次元モデルの画像処理装置において、
前記描画処理部は、
前記ポリゴンが視点から見た前記３次元モデルの表面または裏面のいずれに対応するかを判定する表裏判定を行い、前記表裏判定結果により、表面のポリゴンのポリゴンデータを２次元表示用ポリゴンデータとして生成し、前記表裏判定結果を用いて、前記ポリゴンのエッジが、前記輪郭線かを判定すること
特徴とする３次元モデルの画像処理装置。
【請求項１１】
請求項１０の３次元モデルの画像処理装置において、
前記描画処理部は、
共通のエッジを有する複数のポリゴンの表裏判定結果に基づいて前記共通のエッジが前記輪郭線かを判定することを
特徴とする３次元モデルの画像処理装置。
【請求項１２】
請求項８の３次元モデルの画像処理装置において、
前記レンダラは、
前記輪郭用ポリゴンデータに応じたテクスチャを前記輪郭線に描画することを
特徴とする３次元モデルの画像処理装置。
【請求項１３】
請求項８の３次元モデルの画像処理装置において、
前記描画処理部は、
前記輪郭用ポリゴンの座標と色とを生成すること
特徴とする３次元モデルの画像処理装置。
【請求項１４】
請求項８の３次元モデルの画像処理装置において、
前記描画処理部は、
前記抽出された輪郭線の頂点座標から、前記輪郭用ポリゴンの座標を生成すること
特徴とする３次元モデルの画像処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、３次元モデルをモデルの面を規定するポリゴンで表現した画像データの処理方法及びその装置に関し、特に、３次元モデルの輪郭に修飾を施すための画像処理方法及びその装置に関する。
【０００２】
近年、コンピュータグラフィックスの進展は目ざましいものがある。特に、ゲーム装置、シュミレーション装置では、複雑かつ色彩あふれる３次元モデルの画像をリアルタイムで生成することが求められている。
【０００３】
【従来の技術】
ゲーム装置やシュミレーション装置においては、操作入力に応じてキャラクタ等を構成する複数のポリゴンの位置を求め、それらのポリゴンの内、表示されるポリゴンに対してレンダリング（描画）処理を行い、表示スクリーンの画像データを生成する。
【０００４】
３次元モデルを、モデルの面を規定するポリゴンで定義することは、３次元モデルの定義が容易であり、データ量も少なくて済む。ジオメトリー処理を行うプロセッサは、ローカルな３次元ポリゴンデータを、グローバルな３次元ポリゴンデータに座標変換した後、スクリーン画面に表示すべきポリゴンデータを抽出する。レンダリング回路は、面ポリゴンデータをＺバッファ法により、陰面消去し、２次元のスクリーン画素データに描画する。
【０００５】
このような３次元モデルの画像処理では、３次元モデルは、陰面消去により、視点方向に応じた２次元画面に投影されるのみであった。
【０００６】
【発明が解決しようとする課題】
この従来の方法では、背景の色と３次元モデルの色とがコントラストが大きい場合には、３次元モデルは、明瞭に表現される。しかしながら、背景と３次元モデルのコントラストが十分でない場合には、３次元モデルを背景から明瞭に表示することは難しい。例えば、青色の背景に、緑色の３次元モデルを表示する場合には、３次元モデルを背景に対し明瞭に表示できない。特に、ゲームやシュミレーションのように、高速に３次元モデルのオブジェクトが変化する場合には、オブジェクトの変化を明瞭に表示するのは困難であるという問題がある。
【０００７】
又、アニメーションの分野では、主人公であるキャラクタを背景から浮き上がったように表示することが、そのキャラクタの存在感や立体感を表現できる。このような場合に、従来技術では、背景色と３次元モデルの色とのコントラストが充分とれるような色の選択をする必要があり、表現が制限されるという問題があった。
【０００８】
更に、３次元モデルの投影のみでは、モデルの質感を表現するのが困難であるという問題がある。
【０００９】
従って、本発明の目的は、３次元モデルを明瞭に表示するための画像処理装置及びその方法を提供することにある。
【００１０】
本発明の他の目的は、３次元モデルの輪郭を修飾して、３次元モデルを表示するための画像処理装置及びその方法を提供することにある。
【００１１】
本発明の更に他の目的は、３次元モデルの立体感を表示するための画像処理装置及びその方法を提供することにある。
【００１２】
本発明の更に他の目的は、３次元モデルの質感を表示するための画像処理装置及びその方法を提供することにある。
【００１３】
【課題を解決するための手段】
この目的の達成のため、本発明の画像処理方法は、３次元モデルのポリゴンデータから２次元表示のためのポリゴンデータを生成するステップと、前記３次元モデルのポリゴンデータから前記３次元モデルの輪郭線を抽出するステップと、前記抽出した輪郭線に沿った輪郭用ポリゴンデータを生成するステップと、前記３次元モデルの前記ポリゴンデータと前記輪郭用ポリゴンデータとから前記２次元スクリーン用表示データを生成するステップとを有する。
【００１４】
本発明の画像処理装置は、３次元モデルのポリゴンデータから２次元表示のためのポリゴンデータを生成するとともに、前記３次元モデルのポリゴンデータから前記３次元モデルの輪郭線を抽出し、前記抽出した輪郭線に沿った輪郭用ポリゴンデータを生成する描画処理部と、前記３次元モデルの前記ポリゴンデータと前記輪郭用ポリゴンデータとから前記２次元スクリーン用表示データを生成するレンダラとを有する。
【００１５】
本発明は、表示される３次元モデルの輪郭を抽出し、輪郭にポリゴンデータを生成することにより、輪郭に修飾を表示するものである。これにより、背景に対し、３次元モデルが明瞭に表示され、３次元モデルの立体感ある表示が出来、更に、３次元モデルに質感を与えることができる。
【００１６】
又、本発明の画像処理方法では、前記３次元モデルのポリゴンの境界線のデータから前記輪郭線を抽出するステップを有する。本発明の画像処理装置では、描画処理部は、前記３次元モデルのポリゴンの境界線のデータから前記輪郭線を抽出する。これにより、境界線のデータを用いて、輪郭線を抽出するため、輪郭線の抽出が容易である。
【００１７】
又、本発明の画像処理方法では、前記３次元モデルのポリゴンデータを生成するステップは、視点から見た前記ポリゴンの表裏を判定するステップと、表裏判定結果により、表面のポリゴンのポリゴンデータを２次元表示用ポリゴンデータとして生成するステップとを有し、前記輪郭線を抽出するステップは、前記表裏判定結果を用いて、前記ポリゴンのエッジが、輪郭線かを判定するステップからなる。
【００１８】
本発明の画像処理装置では、描画処理部が、視点から見た前記ポリゴンの表裏を判定し、表裏判定結果により、表面のポリゴンのポリゴンデータを２次元表示用ポリゴンデータとして生成するとともに、前記表裏判定結果を用いて、前記ポリゴンのエッジが、輪郭線かを判定する。
【００１９】
この態様では、２次元用ポリゴンの生成処理で得られた表裏判定結果を用いて、輪郭線を判定するため、輪郭線の判定が容易となり、高速のリアルタイム処理が可能となる。
【００２０】
又、本発明の画像処理方法では、前記輪郭線を抽出するステップは、エッジデータで規定された前記３次元モデルのエッジを構成するポリゴンの表裏判定結果を抽出して、前記輪郭線かを判定するステップからなる。本発明の画像処理装置では、描画処理部が、エッジデータを参照して、エッジを構成するポリゴンの表裏判定結果を抽出して、前記輪郭線かを判定する。
【００２１】
予め、エッジを構成するポリゴンを規定するエッジデータをモデルデータとして用意しておくため、輪郭線の判定が容易となり、高速のリアルタイム処理が可能となる。
【００２２】
又、本発明の画像処理方法では、前記２次元スクリーン用表示データを生成するステップは、前記輪郭用ポリゴンデータに応じたテクスチャを前記輪郭に描画するステップを有する。本発明の画像処理装置では、レンダラが、輪郭用ポリゴンデータに応じたテクスチャを前記輪郭に描画する。所望のテクスチャを輪郭に貼り付けるため、３次元モデルの輪郭の修飾が多様となり、質感等の表示に有効である。
【００２３】
又、本発明の画像処理方法では、前記輪郭用ポリゴンデータを生成するステップは、前記輪郭用ポリゴンの座標と色とを生成するステップからなる。本発明の画像処理装置では、描画処理部が、輪郭用ポリゴンの座標と色を生成する。
【００２４】
色も指定するため、輪郭の縁取りが明瞭となり、アニメーション等において、キャラクタの立体感、存在感を表示できる。
【００２５】
又、本発明の画像処理方法では、前記輪郭用ポリゴンデータを生成するステップは、前記抽出された輪郭線の頂点座標から、前記輪郭用ポリゴンの座標を生成するステップからなる。本発明の画像処理装置では、描画処理部が、抽出された輪郭線の頂点座標から、前記輪郭用ポリゴンの座標を生成する。 これにより、各輪郭に沿ったポリゴンを計算処理により、容易に生成できる。
【００２６】
【発明の実施の形態】
以下、本発明を画像処理方法、画像処理装置、画像処理、実施例、他の実施の形態の順で説明する。
【００２７】
［画像処理方法］
図１は、本発明の画像処理方法の一実施の形態の説明図である。図１は、３次元モデルとして、立方体を例に示している。図１に示すように、ローカル座標の３次元の立方体は、ジオメトリ処理の視野変換により、２次元の立方体１に変換される。従来は、この立方体１が表示されるが、本発明では、先ず、立方体１を構成するポリゴンのエッジから、立方体１の輪郭線２を検出する。例えば、立方体のエッジを共有するポリゴンの法線ベクトルの向きと、エッジの属するポリゴンの数によって、各エッジが、輪郭線２を形成するか否かを検出する。
【００２８】
次に、輪郭線２の上又は近傍に、アウトライン用ポリゴン３を新たに配置する。図では、ライン状のポリゴンを配置した例を示す。このポリゴンの色を、背景及びモデル１の色と異なる色に設定することにより、モデル（オブジェクト）１に対し、アウトラインを表現できる。特に、アニメーションのキャラクタに存在感や立体感を表現するのに有効である。
【００２９】
図２は、本発明の他の実施の形態の説明図である。図１で検出されたモデル４の輪郭に、テクスチャマッピングの手法で、テクスチャ５を貼り付ける。即ち、輪郭に沿って、テクスチャの貼られたポリゴン５を配置する。これにより、モデル４の輪郭部分の質感（例えば、ふさふさ、トゲトゲ、でこぼこ等）を表現できる。例えば、モデルが毛皮の場合に、その材料の質感を表現することができる。
【００３０】
［画像処理装置］
図３は、本発明の一実施の形態の画像処理装置の構成図、図４は、その処理フロー図である。
【００３１】
図３は、ゲーム装置を示す。ゲーム装置１００は、プログラムメモリ１０１と、メインＣＰＵ１０２と、ＢＯＯＴＲＯＭ１０４と、バスアービタ１０５と、システムメモリ１０３と、レンダリングプロセッサ１０６と、グラフィックメモリ１０７と、サウンドプロセッサ１０８と、サウンドメモリ１０９とを有する。
【００３２】
更に、ゲーム装置１００には、コントローラ１１４が接続されている。コントローラ１１４は、操作者が操作し、ゲーム機１００を制御する操作入力を発生する。ゲーム装置１００は、デイスプレイモニタ１１０と、スピーカ１１１に接続される。ゲーム装置１００には、モデム１１２が接続され、電話回線を介し他のゲーム機やインターネットサーバーと通信することができる。
【００３３】
プログラムメモリ１０１は、ゲームプログラムやデータ（映像／音楽データ等）を記憶するものであり、脱着可能な光デイスクと、光デイスクドライブで構成される。メインＣＰＵ１０２は、ゲームプログラムを実行し、画像表示のための座標計算等の描画処理を実行する。
【００３４】
システムメモリ１０３は、ＣＰＵ１０２が処理を行うために必要なプログラムとデータを記憶する。ＢＯＯＴＲＯＭ１０４は、ゲーム装置の起動時に必要なプログラムやデータを格納する。バスアービタ１０５は、これらを接続するバスの使用権の調停を行う。
【００３５】
レンダリングプロセッサ（以下、レンダリング回路という）１０６は、与えられたポリゴンデータを描画し、２次元表示データ（ビデオデータ）を生成する。
デイスプレイモニタ１１０は、これを表示する。グラフィックメモリ１０７は、レンダリング回路１０６の表示データの生成に必要なデータを格納する。
【００３６】
サウンドプロセッサ１０８は、サウンドメモリ１０９のサウンドデータを用いて、ゲームの進行に伴う効果音や音声を生成し、スピーカ１１１に出力する。バックアップメモリ１１３は、ゲーム途中の経過やモデムを通じて入出力されるプログラムデータを記憶する。
【００３７】
メインＣＰＵ１０２は、コントローラ１１４からのオペレータの操作入力に応答して、ゲームプログラムを実行し、オブジェクトの移動のためのマトリクス演算や透視変換等のジオメトリー処理を行い、表示すべきポリゴンデータを作成する。レンダリング回路１０６は、メインＣＰＵ１０２が発行する描画コマンドを実行し、ポリゴンデータを描画し、２次元表示データを生成する。
【００３８】
図４は、メインＣＰＵ１０２が実行する描画処理フロー図である。
【００３９】
（Ｓ１）３次元の各モデルは、ローカルな３次元の頂点データで定義されている。頂点処理は、図７，図８で詳しく説明するように、ローカルな頂点座標を、ワールド頂点座標に変換する処理である。
【００４０】
（Ｓ２）次に、ポリゴン処理を行う。ポリゴン処理は、図９、図１０にて、詳しく説明するように、各ポリゴンの輝度を計算し、変換された頂点座標からモデルの各ポリゴンの表裏関係を判定し、モデルの表面のポリゴンを生成する処理である。
【００４１】
（Ｓ３）次に、エッジ処理を行う。エッジ処理は、図１１乃至図１３にて、詳しく述べるように、各モデルの輪郭線を抽出して、輪郭線に輪郭ポリゴンを生成する処理である。この処理が本発明の特徴の一部として、加えられた処理である。
【００４２】
［画像処理］
次に、図４の描画処理を説明する。図５及び図６は、各モデルのデータの説明図である。
【００４３】
図５に示すように、３次元モデルデータは、モデル頂点データと、モデルポリゴンデータと、モデルエッジデータとで構成されている。モデル頂点データは、モデルの各頂点Ｖ０，Ｖ１…のローカルな３次元座標（ｘｌ，ｙｌ，ｚｌ）でる。モデルポリゴンデータは、３次元モデルを構成する各ポリゴンＰ０，Ｐ１…の各頂点Ｖ０，Ｖ１…と、ポリゴンの地色データＰＣＯＬと、透明度と、テクスチャ座標（Ｔｘ，Ｔｙ）からなる。
【００４４】
モデルエッジデータは、本実施例により、前述のエッジ処理のために設けられたデータであり、モデルの各ポリゴンの境界（エッジ）を規定するデータである。即ち、モデルエッジデータは、各エッジＥ０，Ｅ１，…の両端の頂点、そのエッジを構成するポリゴンとからなる。
【００４５】
図６の立方体の３次元モデルで説明すると、立方体は、６面を有する。従って、６面のポリゴンＰ０〜Ｐ５で定義される。頂点は、８つであり、頂点データは、Ｖ０〜Ｖ７である。エッジは、１２個あり、エッジデータは、Ｅ０〜Ｅ１１で定義される。これらの３次元モデルデータは、図３のゲーム装置では、プログラムメモリ１０１に格納されている。このメモリ１０１としては、ＣＤ−ＲＯＭが好適である。
【００４６】
図７は、図４の頂点処理の詳細フロー図、図８はその説明図である。
【００４７】
（Ｓ１０）各モデル頂点データ（ローカル座標）を、グローバルな座標に変換する。即ち、コントローラ１１４からの操作に従うモーションデータ（グローバル位置）とカメラデータ（視点方向情報）に従い、マトリックス演算を行い、ローカル座標の３次元座標をグローバル座標の３次元座標に変換する。
【００４８】
（Ｓ１１）次に、変換された３次元座標を、カメラデータ（視点方向情報）に従い、スクリーン（表示画面）の２次元座標データ（ｘ、ｙ）と、スクリーンからの奥行き（深さ）Ｚに変換する。これをシステムメモリ１０３の頂点バッファ２００（図３参照）に格納する。
【００４９】
図８に示すように、ローカル座標で定義された立方体１ａは、視点、グローバル位置に従い、スクリーンから見た立方体１に変換される。この処理は、ジオメトリ処理と呼ばれており、従来と同じものである。
【００５０】
図９は、図４のポリゴン処理の詳細フロー図であり、図１０はその説明図である。
【００５１】
（Ｓ１５）モデルポリゴンデータの指定する各頂点の輝度（Ｒ，Ｇ，Ｂ）を計算する。即ち、光源データ（光源の方向、光源の位置）と、ポリゴンの地の色と、各頂点の法線ベクトルとから各頂点の輝度（色データ）を計算する。
【００５２】
（Ｓ１６）次に、クリッピング処理する。即ち、各ポリゴンの内、スクリーン画面の座標範囲外のものを除去する。
【００５３】
（Ｓ１７）次に、各ポリゴンが、スクリーン画面に対し、表か裏かを判定する。例えば、頂点変換されたポリゴンの各頂点間のベクトルを求め、そのベクトル同士の外積を計算する。例えば、（Ｖ１−Ｖ０）＊（Ｖ２−Ｖ０）の計算式を用いる。そして、この外積のＺ座標が正か負かにより、ポリゴンが表か裏かを判定する。この各ポリゴンの表裏判定結果を、システムメモリ１０３の判定結果バッファ２０１（図３参照）に格納する。
【００５４】
(Ｓ１８)次に、表面と判定されたポリゴンのデータを抽出し、レンダリング回路（レンダラ）１０６（図３参照）に発行する。
【００５５】
図１０の立方体１の例で説明すると、図８で変換されたスクリーンから見た立方体１のポリゴンの内、スクリーンから見て、表面と判定されたポリゴンＰ０、Ｐ１，Ｐ５のポリゴンデータが、抽出され、レンダラ１０６に発行される。即ち、図１０の裏面のポリゴンＰ２，Ｐ３，Ｐ４は、表示されないため、破棄される。この発行されるポリゴンデータは、ポリゴンを構成する各頂点データ（表示画面内の二次元座標データ（ｘ、ｙ）と、奥行き（深さ）を示すＺ値）、色データPCOL、不透明度（又は透明度）αp 、テクスチャ座標(Tx,Ty) 等を含む。
【００５６】
図１１は、図４のエッヂ処理のフロー図、図１２は、その輪郭線抽出の詳細フロー図、図１３及び図１４は、輪郭ポリゴン生成処理の説明図である。
【００５７】
（Ｓ２０）モデルエッジデータ（図５参照）とバッファ２０１の表裏判定結果とから輪郭線を抽出する。図１２により説明すると、先ず、モデルエッジデータから各エッジの構成面（ポリゴン）の数を抽出する。構成面（ポリゴン）が２つのエッヂを抽出する。抽出されたエッジの２つの構成面が、表と裏の関係かを表裏判定結果を用いて判定する。即ち、構成面が２つであり、且つその２つの構成面が表裏関係であるエッジを輪郭線と判定する。構成面が２つでも、その２つの構成面が両方とも表又裏にあるものは、輪郭線でないと判定する。
【００５８】
図１０の立方体の例で説明すると、エッジＥ０，Ｅ２，Ｅ４，Ｅ６，Ｅ９，Ｅ１０は、その構成面（ポリゴン）が表裏の関係にあるため、輪郭線と判定される。一方、エッジＥ０，Ｅ２，Ｅ４，Ｅ６，Ｅ９，Ｅ１０は、その構成面（ポリゴン）が表裏の関係にあるため、輪郭線と判定される。一方、エッジＥ１，Ｅ５，Ｅ１１は、その２つの構成面（ポリゴン）が両方表の関係にあるため、輪郭線でないと判定される。エッジＥ３，Ｅ７，Ｅ８は、その２つの構成面（ポリゴン）が両方裏の関係にあるため、輪郭線でないと判定される。
【００５９】
（Ｓ２１）図１１に戻り、抽出された輪郭線に対し、変換後の頂点データを用いて、輪郭線ポリゴンデータを生成する。これを図１３及び図１４により説明する。図１３に示すように、抽出された輪郭線をＥとすると、この輪郭線に沿って、そのポリゴンの外側に、幅Ｗ，長さ（Ｌ＋２Ｄ）の輪郭ポリゴンを生成する。
ここで、Ｌは、その輪郭線の長さであり、Ｗ，Ｄは、指定値である。即ち、輪郭線の頂点座標Ｖ０（ｘ０，ｙ０，ｚ０），Ｖ１（ｘ１、ｙ１、ｚ１）から、輪郭ポリゴンの４つの頂点座標Ｖ０１，Ｖ０２，Ｖ１１，Ｖ１２を下記のように計算する。
【００６０】
Ｖ０１＝（ｘ０−ＤｃｏｓΘ−ＷｓｉｎΘ、ｙ０−ＤｓｉｎΘ＋ＷｃｏｓΘ、ｚ０）
Ｖ０２＝（ｘ０−ＤｃｏｓΘ、ｙ０−ＤｓｉｎΘ、ｚ０）
Ｖ１１＝（ｘ１＋ＤｃｏｓΘ−ＷｓｉｎΘ、ｙ１＋ＤｓｉｎΘ＋ＷｃｏｓΘ、ｚ１）
Ｖ１２＝（ｘ１＋ＤｃｏｓΘ、ｙ１＋ＤｓｉｎΘ、ｚ１）
但し、Θは、輪郭線の偏角である。
【００６１】
そして、この輪郭ポリゴンのデータをレンダラ１０６に発行する。この発行されるポリゴンデータも、ポリゴンを構成する各頂点データ（表示画面内の二次元座標データ（ｘ、ｙ）と、奥行き（深さ）を示すＺ値）、色データPCOL、不透明度（又は透明度）αp 、テクスチャ座標(Tx,Ty) 等を含む。
【００６２】
レンダラ１０６は、この発行されたポリゴンデータを次のように処理し、２次元表示データを生成する。即ち、テクスチャ座標（Ｔｘ、Ｔｙ）に従って、テクスチャメモリ２０２（図３参照）からテクスチャ色データＴを読み出し、ポリゴン色データＰＣＯＬとテクスチャ色データＴとを合成し、ピクセル色データＴＸＣＯｎを求める。次に、ポリゴンデータを視点からの距離であるＺ値（深さの値）に従って、スクリーン画素単位に、ブレンド処理する。例えば、頂点データからなるポリゴンデータから、ピクセルデータを生成する。一般的な方法として、ラスタスキャン法が知られている。ラスタスキャン法は、ポリゴン内のＸ軸とＹ軸方向に走査される各ピクセルデータを、ポリゴンの頂点データを補間演算することにより計算する。又、フラクタル法を用いることができる。
【００６３】
そして、ブレンド処理する。例えば、３枚の半透明ポリゴンＰ１、Ｐ２、Ｐ３と、１枚の不透明ポリゴンＰ４とが、表示画面内の奥行き方向（Ｚ値方向）について、手前から順に重なっている例で説明する。
【００６４】
領域Ｃ４の画像データＣ４は、不透明ポリゴンＰ４のテクスチャデータから環境光等に応じて形成される色データＴ４そのままである。
即ち、Ｃ４＝Ｔ４                                              （１）
【００６５】
ここで、ポリゴンの色データＴは、例えば、ポリゴン自体の色データ、模様を含むテクスチャ色データ、更に、テクスチャ色データやポリゴン自体の色データにシェーデイング処理した後の色データ等を含む。それらのいずれかの色データを代表して、ポリゴンの色データＴと称する。又、ブレンディング処理などにより求められた色データは、表示に利用される画像データＣである。
【００６６】
次に、領域Ｃ３は、不透明ポリゴンＰ４上に、半透明ポリゴンＰ３が重なっているので、その画像データは、半透明ポリゴンＰ３の不透明度α３（α３＝１で不透明、α３＝０で透明、１＞α３＞０で半透明）及び色データＴ３に従って、ポリゴンＰ４、Ｐ３の色データをブレンディングした色データとなる。即ち、領域Ｃ３の色データは、下記式で求められる。
Ｃ３＝α３・Ｔ３＋（１ーα３）Ｃ４                            （２）
【００６７】
同様に、領域Ｃ２の画像データＣ２も、半透明ポリゴンＰ２の不透明度α２及び色データＴ２と、領域Ｃ３の色データＣ３とから、下記式で求められる。
Ｃ２＝α２・Ｔ２＋（１ーα２）Ｃ３                            （３）
【００６８】
同様に、更に、領域Ｃ１の画像データＣ１も下記式で求められる。
Ｃ１＝α１・Ｔ１＋（１ーα１）Ｃ２                            （４）
【００６９】
このように、半透明ポリゴンに対するレンダリング処理は、画像データＣｎを求めるため、他のポリゴンと重なり合う領域において、より奥側の画像データＣｎ＋１を再帰的に参照してブレンディング処理を行う。
【００７０】
全てのピクセルについて、上記のブレンド処理が行われると、フレームバッファ２０３内（図３参照）には、１フレームの表示に使用される画像データＦＢが格納された状態になる。このフレームバッファ２０３内の画像データＦＢは、表示装置１１０に必要な形態の画像データに変換され、表示装置１１０に供給される。
【００７１】
このように、３次元モデルの輪郭を抽出するため、エッジデータを定義するため、高速に輪郭抽出できる。又、ポリゴンの表裏判定結果を利用するため、容易に且つ高速に輪郭を抽出できる。更に、輪郭ポリゴンを生成するのに、ラインポリゴンを用いるため、輪郭ポリゴンを簡単な計算で生成できる。従って、ゲーム装置等のリアルタイム表示に好適である。
【００７２】
［実施例］
図１５は、本発明の第一の実施例の表示画像を示す図であり、図１６は、第一の比較例を示す図である。図１７は本発明の第二の実施例の表示画像を示す図、図１８はその第二の比較例の表示画像を示す図である。図１５、図１６、図１７及び図１８では、アニメーション画像を示し、図１６、図１８が、輪郭の修飾のされていない従来の画像であり、図１５、図１７は、図１６、図１８の画像に対し、輪郭の修飾を行った画像である。
【００７３】
図１５に示すように、キャラクタ（３次元モデル）の輪郭を修飾し、縁取りをすることにより、キャラクタの存在感、立体感を与えることができる。これに対し、図１６の従来例では、キャラクタを背景と識別しにくい。特に、カラー画像において、中間色を用いるとその傾向が強い。図１７及び図１８はキャラクタ及び背景に中間色を使用した例であり、図１７の輪郭に縁取りすると、図１８に比し、キャラクタをくっきりと表現できる。尚、図１７及び図１８のカラー画像を別途提出する。従って、本発明では、中間色でキャラクタを表示する場合に、特に有効である。
【００７４】
［他の実施の形態］
図１９は、本発明の他の実施の形態の説明図であり、図２の輪郭にテクスチャを張る場合の処理の説明図である。図１７に示すように、１枚のテクスチャＴＥＸ上の座標をＴｘ，Ｔｙで示し、Ｔｘ，Ｔｙの範囲を、０．０〜１．０の小数値で表す。この例では、正方形テクスチャを示している。
【００７５】
そして、図１９に示すように、輪郭ポリゴンの長さ方向を、テクスチャのＴｘ方向、幅方向を、テクスチャのＴｙ方向に合わせ、テクスチャを貼る。レンダラ１０６のタイリング処理により、テクスチャパターンが繰り返し生成される。図では、４．５回テクスチャパターンが繰り返される。
【００７６】
このようにして、図２に示すように、３次元モデルの輪郭に質感を与えることができる。
【００７７】
図２０は、本発明の更に他の実施の形態のためのポリゴンデータを示す図である。この例では、ポリゴンに対し、単位法線ベクトルを定義する。このようにすると、前述の図９のステップＳ１７の表裏判定において、法線ベクトルの向きにより、表裏判定できる。
【００７８】
上述の実施の態様の他に、本発明は、次のような変形が可能である。
(1) 前述の実施の態様では、アニメーション画像の例で説明したが、他の画像にも適用できる。
(2) 描画処理を１つのＣＰＵによるソフト処理で説明したが、複数の処理ユニットによるものや、専用のハードによるものでも良い。
【００７９】
以上、本発明を実施の形態により説明したが、本発明の主旨の範囲内で種々の変形が可能であり、これらを本発明の範囲から排除するものではない。
【００８０】
【発明の効果】
以上説明したように、本発明によれば、次の効果を奏する。
【００８１】
表示される３次元モデルの輪郭を抽出し、輪郭にポリゴンデータを生成することにより、輪郭に修飾を表示するため、背景に対し、３次元モデルが明瞭に表示され、３次元モデルの立体感ある表示が出来、更に、３次元モデルに質感を与えることができる。
【図面の簡単な説明】
【図１】本発明の一実施の形態の画像処理方法の説明図である。
【図２】本発明の他の実施の形態の画像処理方法の説明図である。
【図３】本発明の一実施の形態の画像処理装置の構成図である。
【図４】図３の描画処理フロー図である。
【図５】本発明の一実施の形態のモデルデータの構成図である。
【図６】図５のモデルデータの説明図である。
【図７】図４の頂点処理フロー図である。
【図８】図７の頂点処理の説明図である。
【図９】図４のポリゴン処理フロー図である。
【図１０】図９のポリゴン処理の説明図である。
【図１１】図４のエッジ処理フロー図である。
【図１２】図１１の輪郭線抽出処理フロー図である。
【図１３】図１１の輪郭線抽出処理の説明図である。
【図１４】図１１の輪郭ポリゴン生成処理の説明図である。
【図１５】本発明の第一の実施例のカラー画像を示す図である。
【図１６】第一の比較例のカラー画像を示す図である。
【図１７】本発明の第二の実施例のカラー画像を示す図である。
【図１８】第二の比較例のカラー画像を示す図である。
【図１９】本発明の他の実施の形態の説明図である。
【図２０】本発明の更に他の実施の形態の説明図である。
【符号の説明】
１０２  ＣＰＵ（描画処理部）
１０６  レンダリング処理プロセッサ（レンダラ）
１０３  システムメモリ
１０７  グラフィックメモリ
２００  頂点バッファ
２０１  表裏判定バッファ
１０１  プログラムメモリ
【図１】
0004517447.tif 000002
【図２】
0004517447.tif 000003
【図３】
0004517447.tif 000004
【図４】
0004517447.tif 000005
【図５】
0004517447.tif 000006
【図６】
0004517447.tif 000007
【図７】
0004517447.tif 000008
【図８】
0004517447.tif 000009
【図９】
0004517447.tif 000010
【図１０】
0004517447.tif 000011
【図１１】
0004517447.tif 000012
【図１２】
0004517447.tif 000013
【図１３】
0004517447.tif 000014
【図１４】
0004517447.tif 000015
【図１５】
0004517447.tif 000016
【図１６】
0004517447.tif 000017
【図１７】
0004517447.tif 000018
【図１８】
0004517447.tif 000019
【図１９】
0004517447.tif 000020
【図２０】
0004517447.tif 000021