JPH08235380A - 多面体表示方法および多面体表示装置 - Google Patents

多面体表示方法および多面体表示装置

Info

Publication number
JPH08235380A
JPH08235380A JP7059863A JP5986395A JPH08235380A JP H08235380 A JPH08235380 A JP H08235380A JP 7059863 A JP7059863 A JP 7059863A JP 5986395 A JP5986395 A JP 5986395A JP H08235380 A JPH08235380 A JP H08235380A
Authority
JP
Japan
Prior art keywords
polygon
polyhedron
data
ridge line
shared
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.)
Granted
Application number
JP7059863A
Other languages
English (en)
Other versions
JP2755204B2 (ja
Inventor
Hirobumi Ishida
博文 石田
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP7059863A priority Critical patent/JP2755204B2/ja
Publication of JPH08235380A publication Critical patent/JPH08235380A/ja
Application granted granted Critical
Publication of JP2755204B2 publication Critical patent/JP2755204B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)

Abstract

(57)【要約】 【目的】 特定の一部の稜線のみにアンチエイリアシン
グ処理を施し、生成画像の品質を落とすことなく、画像
の生成のための計算量を削減する。 【構成】 多角形表裏計算ステップ11で、各多角形が
表を向いているか裏を向いているかを判定するための計
算が行われる。表裏共有稜線判定ステップ12で、多面
体を構成する全ての稜線について、各稜線が「表を向い
ている多角形と裏を向いている多角形とに共有される稜
線」または「1つの多角形としか接していない稜線」で
あるか否かが判定される。表裏共有稜線判定ステップ1
2でそのような稜線であると判定された稜線についての
み、多角形描画ステップ13でジャギーを削減するため
のアンチエイリアシング処理が施される。その上で、多
角形描画ステップ13で多角形の描画が行われ、画像表
示ステップ14で多面体に関する画像の生成および表示
が行われる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、コンピュータ・グラフ
ィックスの分野において空間中の多面体を構成する各多
角形を描画することで当該多面体に関する画像を生成し
て表示する多面体表示方法および多面体表示装置に関
し、特に複数の多角形で構成される多面体にアンチエイ
リアシング処理を施して当該多面体に関する画像を生成
して表示する方法(多面体表示方法)および装置(多面
体表示装置)に関する。
【0002】
【従来の技術】一般に、コンピュータ・グラフィックス
技術で作成した画像をラスタ型のディスプレイに表示す
る場合には、表示する図形の周囲にジャギーというギザ
ギザが発生する。これは、画像を格子状に並んだ画素の
集まりで表現する時に、それら画素中の1つのサンプル
点における輝度値で画素の値を決定するために、起こる
ものである。このため、1つの画素の値をその画素中の
複数のサンプル点での値から求める等してジャギーを軽
減するアンチエイリアシング処理が提案されている。
【0003】従来の多面体表示方法および多面体表示装
置は、このアンチエイリアシング処理を複数の多角形で
構成される多面体の表示に適用する場合、全ての多角形
の各稜線に対してアンチエイリアシング処理を行ってい
た。
【0004】
【発明が解決しようとする課題】一般に、アンチエイリ
アシング処理では、サンプル点を増やして計算する等の
処理が行われる。したがって、アンチエイリアシング処
理を行う場合は、アンチエイリアシング処理を行わない
場合に比べて、画像を生成するための計算量が増える。
【0005】このため、上述した従来の多面体表示方法
および多面体表示装置では、多面体を構成する全ての多
角形の全ての稜線に対してアンチエイリアシング処理が
行われるので、多角形の数に比例して画像を生成するた
めの計算量が増大するという問題点が生じていた。
【0006】本発明の目的は、上述の点に鑑み、多面体
の一部の稜線(多面体の境界となる稜線であり、生成画
像の品質に大きな影響を及ぼす稜線)のみにアンチエイ
リアシング処理を施すことで、生成画像の品質を落とす
ことなしに、画像を生成するための計算量を削減するこ
とができる多面体表示方法および多面体表示装置を提供
することにある。
【0007】
【課題を解決するための手段】本発明の多面体表示方法
は、空間中の多面体を構成する各多角形を描画すること
で当該多面体に関する画像を生成して表示する多面体表
示方法において、当該各多角形が表を向いているか裏を
向いているかを判定するための計算を行う多角形表裏計
算ステップと、当該多面体を構成する全ての稜線につい
て、各稜線が「表を向いている多角形と裏を向いている
多角形とに共有される稜線」および「1つの多角形とし
か接していない稜線」のいずれかであるか否かを判定す
る表裏共有稜線判定ステップと、前記表裏共有稜線判定
ステップで「表を向いている多角形と裏を向いている多
角形とに共有される稜線」および「1つの多角形としか
接していない稜線」のいずれかであると判定された稜線
についてのみジャギーを削減するためのアンチエイリア
シング処理を施して、多角形の描画を行う多角形描画ス
テップと、前記多角形描画ステップで生成された描画多
角形に基づいて当該多面体に関する画像を生成して表示
する画像表示ステップとを有する。
【0008】なお、表裏共有稜線判定ステップに代え
て、当該多面体を構成する全ての頂点について各頂点が
「表を向いている多角形と裏を向いている多角形とに共
有される頂点」であるか否かを判定する表裏共有頂点判
定ステップを設けること(それに付随する他のステップ
の処理内容の変更を含む)も可能である。
【0009】また、本発明の多面体表示装置は、空間中
の多面体を構成する各多角形を描画することで当該多面
体に関する画像を生成して表示する多面体表示装置にお
いて、当該多面体を表現する多面体データと視線方向を
定める視線データとを設定して記憶する設定記憶部と、
当該各多角形が表を向いているか裏を向いているかを判
定するための計算を前記設定記憶部内の多面体データお
よび視線データに基づいて行い、その計算結果を当該多
面体を構成する各稜線に対応する稜線データ内のデータ
として前記設定記憶部に記憶させる稜線表裏計算部と、
当該各多角形毎に、前記設定記憶部内の多面体データの
うちでその多角形を描画するために必要なデータを読み
出して多角形描画用データとして出力するとともに、そ
の多角形を構成する各稜線に対応する稜線データを読み
出して各稜線が「表を向いている多角形と裏を向いてい
る多角形とに共有される稜線」および「1つの多角形と
しか接していない稜線」のいずれかであるか否かを判定
してその判定結果を出力する読出し判定部と、当該多角
形描画用データおよび前記読出し判定部の判定結果に基
づいて、「表を向いている多角形と裏を向いている多角
形とに共有される稜線」および「1つの多角形としか接
していない稜線」のいずれかの稜線であると判定された
稜線にのみアンチエイリアシング処理を施し、それ以外
の稜線にはアンチエイリアシング処理を施さないで、多
角形を描画して、その描画結果を描画データとして出力
する多角形描画部と、前記多角形描画部により出力され
た描画データに基づいて当該多面体に関する画像を生成
して表示する表示部とを有する。
【0010】なお、稜線表裏計算部に代えて、当該各多
角形が表を向いているか裏を向いているかを判定するた
めの計算を前記設定記憶部内の多面体データおよび視線
データに基づいて行いその計算結果を当該多面体を構成
する各頂点に対応する頂点データ内のデータとして前記
設定記憶部に記憶させる頂点表裏計算部を設けること
(それに付随する他の部の処理内容の変更を含む)も可
能である。
【0011】
【作用】本発明の多面体表示方法では、多角形表裏計算
ステップにおいて当該各多角形(空間中の多面体を構成
する各多角形)が表を向いているか裏を向いているかを
判定するための計算が行われ、表裏共有稜線判定ステッ
プにおいて当該多面体を構成する全ての稜線について各
稜線が「表を向いている多角形と裏を向いている多角形
とに共有される稜線」および「1つの多角形としか接し
ていない稜線」のいずれかであるか否かが判定され、多
角形描画ステップにおいて表裏共有稜線判定ステップで
「表を向いている多角形と裏を向いている多角形とに共
有される稜線」および「1つの多角形としか接していな
い稜線」のいずれかであると判定された稜線についての
みジャギーを削減するためのアンチエイリアシング処理
が施されて多角形の描画が行われ、画像表示ステップに
おいて多角形描画ステップで生成された描画多角形に基
づいて当該多面体に関する画像が生成されて表示され
る。
【0012】なお、表裏共有稜線判定ステップの処理に
代えて、当該多面体を構成する全ての頂点について各頂
点が「表を向いている多角形と裏を向いている多角形と
に共有される頂点」であるか否かを判定する表裏共有頂
点判定ステップの処理を設けること(それに付随する他
のステップの処理内容の変更を含む)も可能である。
【0013】また、本発明の多面体表示装置では、空間
中の多面体を構成する各多角形を描画することで当該多
面体に関する画像を生成して表示する多面体表示装置に
おいて、設定記憶部が当該多面体を表現する多面体デー
タと視線方向を定める視線データとを設定して記憶し、
稜線表裏計算部が当該各多角形が表を向いているか裏を
向いているかを判定するための計算を設定記憶部内の多
面体データおよび視線データに基づいて行いその計算結
果を当該多面体を構成する各稜線に対応する稜線データ
内のデータとして設定記憶部に記憶させ、読出し判定部
が当該各多角形毎に設定記憶部内の多面体データのうち
でその多角形を描画するために必要なデータを読み出し
て多角形描画用データとして出力するとともにその多角
形を構成する各稜線に対応する稜線データを読み出して
各稜線が「表を向いている多角形と裏を向いている多角
形とに共有される稜線」および「1つの多角形としか接
していない稜線」のいずれかであるか否かを判定してそ
の判定結果を出力し、多角形描画部が当該多角形描画用
データおよび読出し判定部の判定結果に基づいて「表を
向いている多角形と裏を向いている多角形とに共有され
る稜線」および「1つの多角形としか接していない稜
線」のいずれかの稜線であると判定された稜線にのみア
ンチエイリアシング処理を施しそれ以外の稜線にはアン
チエイリアシング処理を施さないで多角形を描画してそ
の描画結果を描画データとして出力し、表示部が多角形
描画部により出力された描画データに基づいて当該多面
体に関する画像を生成して表示する。
【0014】なお、稜線表裏計算部の処理に代えて、当
該各多角形が表を向いているか裏を向いているかを判定
するための計算を設定記憶部内の多面体データおよび視
線データに基づいて行いその計算結果を当該多面体を構
成する各頂点に対応する頂点データ内のデータとして設
定記憶部に記憶させる頂点表裏計算部の処理を設けるこ
と(それに付随する他の部の処理内容の変更を含む)も
可能である。
【0015】
【実施例】次に、本発明について図面を参照して詳細に
説明する。
【0016】図1は、本発明の多面体表示方法の第1の
実施例(請求項1記載の発明に対応する実施例)の処理
の流れを示す流れ図である。この処理の流れは、多角形
表裏計算ステップ11と、表裏共有稜線判定ステップ1
2と、多角形描画ステップ13と、画像表示ステップ1
4とからなる。
【0017】次に、図1を参照して、本実施例の多面体
表示方法の動作(処理内容)について説明する。
【0018】初めに、本実施例、ひいては請求項1記載
の発明の多面体表示方法の基盤となる考え方について説
明する。
【0019】一般に、多面体を構成している複数の多角
形のうちの2つの多角形が互いに接している場合、両方
の多角形が表を向いていれば、それらの両方の多角形に
接する稜線は決して多面体(物体)の境界にはならな
い。同様に、多面体を構成している2つの多角形が互い
に接している場合、両方の多角形が裏を向いていても、
その両方の多角形に接する稜線は決して多面体の境界に
はならない。したがって、多面体の境界となりうる稜線
は、表を向いている多角形と裏を向いている多角形との
両方に接する稜線,および1つの多角形にのみ接してい
る稜線のいずれかだけである。なお、「多角形が表
(裏)を向いている」とは、正確には、「多角形が「視
線に対して」表(裏)を向いている」という意味であ
る。
【0020】また、背景を含め、色または明るさの異な
る2つ以上の多面体があり、多面体の一部が別の多面体
に隠される場合、ちょうどその境界となる稜線部分で
は、その境界がはっきりとした線となって現れる。一
方、同じ物体(多面体)内では色や明るさが徐々に変化
していることが多く、はっきりとした線となって見える
ことは少ない。このため、多面体内部では、アンチエイ
リアシング処理を施さなくてもジャギーが目立つことは
少ない。
【0021】これらの事実から、多面体の境界になりう
る稜線にのみアンチエイリアシング処理を施し、多面体
内部の稜線であることが明らかな稜線にはアンチエイリ
アシング処理を施さなくても、生成画像の品質が落ちる
ことはない。
【0022】このように、本実施例の多面体表示方法
(請求項1記載の発明の多面体表示方法)では、多面体
の境界になりうる稜線を見つけ出し、それらの稜線にの
みアンチエイリアシング処理を施すことにより、生成画
像の品質を落とさずに、アンチエイリアシング処理を施
す稜線の数を減らすことができ、多面体に関する画像の
生成のための計算量を削減することができる。
【0023】以下では、以上の考え方に基づく本実施例
の多面体表示方法の動作について説明する。
【0024】第1に、多角形表裏計算ステップ11の処
理が行われる。この処理では、多面体を構成する各多角
形が予め設定された視線方向に対して表を向いているか
裏を向いているかが判定される。
【0025】図6は、本実施例(後述する他の実施例で
も同様)で処理の対象となる多面体の一例を示す図であ
る。
【0026】図6において、多面体60を示す図は当該
多面体を正面から見た図であり、多面体61を示す図は
当該多面体を右側面から見た図である。なお、多面体6
0も多面体61も同一の多面体(処理の対象となる多面
体)であるが、説明の便宜上異なる符号を付している。
【0027】多面体60および61は、斜線で示す複数
の多角形で構成されている。稜線62は、多角形63と
多角形64とに共有されており、多角形64は正面から
見ると面が裏を向いており、多角形63に隠されてい
る。また、稜線65は、一方が多角形66に接してお
り、他方は何とも接しておらず、当該多面体(多面体6
0)の境界となる稜線である。
【0028】多角形表裏計算ステップ11における計算
(判定)は、多角形の法線ベクトルが与えられている場
合には、その法線ベクトルと視線ベクトルとの内積を計
算することで実現される。つまり、その内積の値が正で
あればその多角形は表を向いており、その値が負であれ
ばその多角形は裏を向いている、というように判定が行
われる。また、多角形の法線ベクトルが与えられておら
ず、頂点の座標値とそれらの並びだけが与えられている
場合には、その並びの順に3頂点のデータを抜き出し、
それらの外積を計算することで法線ベクトルが求められ
る。
【0029】図5は、多角形表裏計算ステップ11にお
ける「多角形が表を向いているか裏を向いているかを判
定する方法」を説明するための図である。
【0030】図5に示すように、四角形ABCDは、そ
の法線ベクトルNと視線ベクトルEとの内積の値が正な
らば「表を向いている」と判定され、その値が負ならば
「裏を向いている」と判定される。また、法線ベクトル
Nは、ベクトルABをaとし、ベクトルADをbとする
と、N=a×b(×はベクトルの外積を示す)で求めら
れる。
【0031】第2に、表裏共有稜線判定ステップ12の
処理が行われる。この処理では、処理対象の多面体を構
成する全ての稜線について、各稜線が以下のおよび
に示す稜線のいずれかに該当するか否かが判定される。 その稜線に接する多角形の一方が表を向いており他
方が裏を向いている稜線である。 その稜線が1つの多角形にのみ接している稜線であ
る。
【0032】図6の例では、稜線62が上述のの稜線
に該当し、稜線65がの稜線に該当する。
【0033】表裏共有稜線判定ステップ12における判
定は、例えば、処理対象の多面体を構成する全ての稜線
に対応して「表を向いている多角形に接していることを
示す欄」と、「裏を向いている多角形に接していること
示す欄」と、「その稜線に接する多角形の数を表す欄」
とを準備し、当該多面体を構成する全ての多角形につい
てそれらに接する稜線のそれぞれに対する上記の各欄に
情報を記入していき、全ての多角形の各稜線について当
該記入が終了した後に各欄の情報を調べることで、実現
される。
【0034】図7は、このような表裏共有稜線判定ステ
ップ12における判定の方法の一例を説明するための図
である。
【0035】図7に示すように、処理対象の多面体の各
稜線に対応して「稜線番号」,「表」,「裏」および
「数」の各欄を設けておき、各多角形毎にその多角形を
構成する稜線に対して、その多角形が表を向いているな
らば「表」の欄に印(図7中の○)を付け、その多角形
が裏を向いているならば「裏」の欄に印を付ける。も
し、印を付けようとする欄にすでに印が付いていた場合
には、何もしない。また、「数」の欄は初期値を0にし
ておき、稜線が参照される度にその稜線に対応する
「数」の欄の数値に1を加える。このような処理を当該
多面体を構成する全ての多角形について行うと、表を向
いている多角形と裏を向いている多角形との両方に接す
る稜線については「表」と「裏」との両方の欄に印が付
けられることになり、1つの多角形のみに接する稜線に
ついては「数」の欄の値が1になるため、表裏共有稜線
判定ステップ12における判定が可能になる。
【0036】なお、多角形表裏計算ステップ11の処理
と表裏共有稜線判定ステップ12の処理とを同時に(1
つの処理として)行うことも可能である。すなわち、1
つの多角形の表裏判定を行ったら、その判定結果を反映
してすぐにその多角形に接する稜線に対応する各欄(図
7参照)に情報を設定していき、そのような処理を全て
の多角形について繰り返して行うことで、多角形表裏計
算ステップ11の処理と表裏共有稜線判定ステップ12
の処理とを同時に行うことができる。
【0037】第3に、多角形描画ステップ13の処理が
行われる。この処理では、「表を向いている多角形と裏
を向いている多角形との両方に接した稜線(両方に共有
される稜線)」と「1つの多角形としか接していない稜
線」とについてはアンチエイリアシング処理が施され、
そうでない稜線にはアンチエイリアシング処理が施され
ずに、多角形の描画が行われる。
【0038】図9は、多角形描画ステップ13における
処理を説明するための図であり、多角形が画素の集まり
として描画される状況を示す図である。
【0039】図9に示すように、縦および横の直線で囲
まれた正方形がそれぞれ画素を表す。また、各画素は、
さらに複数の部分画素の集まりとして表すことができ
る。例えば、画素91は、複数に分割された部分画素の
集まり(部分画素集合93)として表現できる。なお、
稜線92は、部分画素集合93上では、稜線94のよう
になる。
【0040】アンチエイリアシング処理を行わないで多
角形の描画(その描画に基づく多面体の表示)を行うと
きは、各画素の代表点を1つ決めて、その点での値を画
素の値として求めればよい(通常、代表点は画素の中心
の点とすることが多い)。また、アンチエイリアシング
処理を行って多角形の描画を行うときは、アンチエイリ
アシング処理を行う稜線を含む画素(部分画素集合)を
構成する複数の部分画素の値によって1つの画素が表現
される。あるいは、多角形内部の部分画素の占める割合
や、多角形内部の部分画素の平均値等によって、その画
素を表現してもよい。なお、多角形の画素の値の求め方
の詳細は、例えば、特開平3−144869号公報(多
角形表示方法とその装置)に記載されている。
【0041】第4に、画像表示ステップ14の処理が行
われる。この処理では、多角形描画ステップ13で求め
られた描画多角形(多角形描画ステップ13で描画され
た多角形)を画素毎に合成することで、処理対象の多面
体に関する画像が生成されて表示される。
【0042】図8は、画像表示ステップ14において行
われる描画多角形の合成方法を説明するための図であ
る。
【0043】図8に示すように、多角形81と多角形8
2とは画面80上に合成されて表示される。多角形が視
線から遠い順、例えば多角形81,多角形82の順で入
力されるならば、その順でメモリ(画像の各画素の値を
記憶するメモリ。以下画像メモリという)への書込みが
次々に行われることで、最終画像が得られる。
【0044】ここで、アンチエイリアシング処理が施さ
れた稜線を有する多角形については、次のような処理が
行われて描画多角形の合成が行われる。すなわち、画素
データが複数の部分画素の値で構成される場合、例えば
画素83(部分画素集合84)の画素データの場合に
は、部分画素集合84中の各部分画素の値が画像メモリ
に書き込まれていき、全ての多角形についての画像メモ
リへの書込み処理が終わった時点で部分画素の値が加重
平均等されることで1つの画素の値が求められる。ま
た、描画多角形における画素データが多角形内部の部分
画素の占める割合αや部分画素の平均値等で構成されて
いる場合には、画像メモリ中の値と新しく入力された画
素の値とがαで加重平均されて、当該画素の値が求めら
れることもある。
【0045】また、多角形が視線から遠い順に入力され
ないような場合には、例えば、画像メモリに視点からの
奥行きを示す値を記憶するzバッファを用意し、そのz
バッファを用いて視点に近い多角形を表示するようにも
できる。
【0046】さらに、処理対象の多面体にテクスチャマ
ッピングを行う場合には、画素値がテクスチャ画像のア
ドレスとなるが、その場合には予め記憶しておいたテク
スチャ画像の画素値を読み出して表示画素値を求めても
よい。
【0047】なお、このような「zバッファを使う方
法」や「テクスチャマッピングを行う方法」の詳細につ
いては、例えば、特開平6−203171号公報(画像
生成装置および方法)に記載されている。
【0048】図2は、本発明の多面体表示方法の第2の
実施例(請求項2記載の発明に対応する実施例)の処理
の流れを示す流れ図である。この処理の流れは、多角形
表裏計算ステップ21と、表裏共有頂点判定ステップ2
2と、多角形描画ステップ23と、画像表示ステップ2
4とからなる。
【0049】次に、図2を参照して、本実施例の多面体
表示方法の動作(処理内容)について説明する。
【0050】初めに、本実施例、ひいては請求項2記載
の発明の多面体表示方法の基盤となる考え方について説
明する。
【0051】本実施例の多面表示方法では、第1の実施
例で「表を向いている多角形と裏を向いている多角形と
に共有される稜線」が見つけ出された代わりに、「表を
向いている多角形と裏を向いている多角形とに共有され
る頂点」が見つけ出される。そして、それらの頂点を両
端とする稜線と、どんな場合にも多面体の境界となる稜
線として予め定められた稜線(予定境界稜線)とについ
てのみ、アンチエイリアシング処理が施される。
【0052】表を向いている多角形と裏を向いている多
角形とに共有される稜線の端点となる頂点は、必ずそれ
ら多角形に共有される頂点である。したがって、本実施
例、ひいては請求項2記載の発明の多面体表示方法で
「アンチエイリアシング処理の対象と判定される稜線」
の集合は、必ず第1の実施例、ひいては請求項1記載の
発明の多面体表示方法で「アンチエイリアシング処理の
対象と判定される稜線」の集合を包含することになる。
このため、本実施例(第2の実施例)の多面体表示方法
で「アンチエイリアシング処理の対象と判定される稜
線」の中には処理対象の多面体の境界になる稜線が全て
含まれることになり、生成画像の品質が落ちることはな
い(アンチエイリアシング処理の効果が少なくなること
はない)。
【0053】以下では、以上の考え方に基づく本実施例
の多面体表示方法の動作について説明する。
【0054】第1に、多角形表裏計算ステップ21の処
理が行われる。この処理では、第1の実施例における多
角形表裏計算ステップ11の処理と同様の処理が行われ
る。
【0055】第2に、表裏共有頂点判定ステップ22の
処理が行われる。この処理では、処理対象の多面体を構
成する全ての頂点について、各頂点が「その頂点に接す
る1つ以上の多角形が表を向いており他の1つ以上の多
角形が裏を向いている頂点(表を向いている多角形と裏
を向いている多角形とに共有される頂点)」であるか否
かが判定される。
【0056】さらに、当該多面体を構成する稜線につい
て、各稜線がそれらの頂点(「表を向いている多角形と
裏を向いている多角形とに共有される頂点」)を両端点
とする稜線および予定境界稜線のいずれかであるか否か
が判定される。
【0057】図6の例では、稜線62の両端の頂点67
および68が表を向いている多角形と裏を向いている多
角形とに接している(共有されている)。また、稜線6
5は始めから処理対象の多面体の境界となることが分か
っている予定境界稜線に該当する。したがって、このよ
うな稜線は、アンチエイリアシング処理の対象の稜線と
判定される。なお、予定境界稜線には予め印を付けてお
くことで、その旨を判定できるようにしておく。
【0058】第3および第4に、多角形描画ステップ2
3の処理および画像表示ステップ24の処理が行われ
る。これらの処理では、それぞれ第1の実施例における
多角形描画ステップ13の処理および画像表示ステップ
14の処理と同様の処理が行われる。なお、多角形描画
ステップ23において、アンチエイリアシング処理の対
象となる稜線は、上述のようにして表裏共有頂点判定ス
テップ22で特定された「表を向いている多角形と裏を
向いている多角形とに共有される頂点を両端点とする稜
線」および予定境界稜線である。
【0059】図3は、本発明の多面体表示装置の第1の
実施例(請求項3記載の発明に対応する実施例)の構成
を示すブロック図である。本実施例の多面体表示装置
は、図1に示す多面体表示方法(以下、図1方法とい
う)を実現する装置である。
【0060】本実施例の多面体表示装置は、稜線表裏計
算部31と、設定記憶部32と、読出し判定部33と、
多角形描画部34と、表示部35とを含んで構成されて
いる。
【0061】次に、このように構成された本実施例の多
面体表示装置の動作について説明する。
【0062】設定記憶部32は、処理対象の多面体を表
現する多面体データと視線方向を示す視線データとを入
力し、自己の内部にそれらのデータを設定し記憶する。
これらのデータの入力方法は、キーボードによって直接
入力する方法でもよいし、フロッピーディスクのような
記憶媒体から入力する方法でもよい。また、ネットワー
クを通して、他の装置から入力する方法も考えられる。
なお、多面体データは、多面体を構成する各多角形を表
現するデータの集まりでもよいし、多面体を構成する各
頂点および各稜線の集まりからなっていてもよい。
【0063】図10は、多面体データの一例を示す図で
ある。
【0064】図10に示すように、多面体データは、各
頂点(頂点番号で識別される各頂点)の座標値および輝
度値を記述した頂点データを保持する頂点データテーブ
ル101と、各稜線(稜線番号で識別される各稜線)の
両端点の頂点番号(両端頂点番号)を記述した稜線デー
タを保持する稜線データテーブル102と、各多角形
(多角形番号で識別される各多角形)を構成する稜線群
を示す稜線番号列および当該各多角形の法線ベクトルを
記述した多角形データを保持する多角形データテーブル
103とからなる。なお、図1方法の説明で述べたよう
に、多角形データテーブル103中の「法線ベクトル」
は多角形を構成する頂点の座標値から計算できるためな
くてもかまわない。
【0065】稜線表裏計算部31は、このような多面体
データと視線データとから処理対象の多面体を構成する
各多角形が表を向いているか裏を向いているかを判定す
るための計算を行い、その計算結果を設定記憶部32に
追加する(書き込む)。その際の計算の方法は、図1方
法の説明(多角形表裏計算ステップ11参照)で述べた
方法で実現される。
【0066】次に、読出し判定部33は、設定記憶部3
2から、処理対象の多面体を構成する各多角形を表現
(描画)するためのデータ(多角形描画用データ)とそ
の多角形を構成する稜線に対応する稜線データとを読み
出す。多角形描画用データとは、図10の例では、頂点
データテーブル101,稜線データテーブル102およ
び多角形データテーブル103の参照により求められる
「多角形を構成する頂点の座標値」が該当する。稜線デ
ータには、図1方法の説明で述べたように、その稜線に
接する多角形が表を向いているか裏を向いているかを示
すデータ等(図7参照)が加えられる。これによって、
稜線データに、各稜線がアンチエイリアシング処理の対
象であるか否かを示す情報(「表を向いている多角形と
裏を向いている多角形とに共有される稜線」および「1
つの多角形としか接していない稜線」のいずれかである
か否かを示す情報)が付加されることになる。
【0067】さらに、読出し判定部33は、そのような
多角形描画用データおよび稜線データを多角形描画部3
4に対して出力する。
【0068】次に、多角形描画部34は、それらの多角
形描画用データおよび稜線データに基づいて、アンチエ
イリアシング処理の対象と判定された稜線にはアンチエ
イリアシング処理を施し、そのように判定されなかった
稜線にはアンチエイリアシング処理を施さずに、各多角
形を描画する。その描画の方法は、図1方法の説明(多
角形描画ステップ13参照)で述べた方法による。そし
て、その描画結果を描画データとして表示部35に対し
て出力する。
【0069】最後に、表示部35は、その描画データに
基づいて、処理対象の多面体に関する画像を生成して表
示する。その表示の方法は、図1方法の説明(画像表示
ステップ14参照)で述べた方法で実現される。
【0070】図4は、本発明の多面体表示装置の第2の
実施例(請求項4記載の発明に対応する実施例)の構成
を示すブロック図である。本実施例の多面体表示装置
は、図2に示す多面体表示方法(以下、図2方法とい
う)を実現する装置である。
【0071】本実施例の多面体表示装置は、頂点表裏計
算部41と、設定記憶部42と、読出し判定部43と、
多角形描画部44と、表示部45とを含んで構成されて
いる。
【0072】次に、このように構成された本実施例の多
面体表示装置の動作について説明する。
【0073】設定記憶部42は、図3に示す多面体表示
装置(以下、図3装置という)における設定記憶部32
と同様に、処理対象の多面体を表現する多面体データと
視線方向を示す視線データとを入力し、自己の内部にそ
れらのデータを設定し記憶する。なお、多面体データに
は、アンチエイリアシング処理を必ず施す稜線(予定境
界稜線)に対して、その旨を示す印を付けておく。図1
0の多面体データの例では、稜線データテーブル102
内にその印が付けられることになる。
【0074】頂点表裏計算部41は、このような多面体
データと視線データとから処理対象の多面体を構成する
各多角形が表を向いているか裏を向いているかを判定す
るための計算を行い、その計算結果を設定記憶部42に
追加する(書き込む)。その計算の方法は、図2方法の
説明(多角形表裏計算ステップ21参照)で述べた方法
で実現される。
【0075】次に、読出し判定部43は、設定記憶部4
2から、処理対象の多面体を構成する各多角形を表現
(描画)するためのデータ(多角形描画用データ)とそ
の多角形を構成する頂点および稜線に対応する頂点デー
タおよび稜線データとを読み出す。多角形描画用データ
とは、図10の例では、頂点データテーブル101,稜
線データテーブル102および多角形データテーブル1
03の参照により求められる「多角形を構成する頂点の
座標値」が該当する。頂点データには、図2方法の説明
で述べたように、各頂点に接する多角形が表を向いてい
るか裏を向いているかを示すデータ等が加えられる。
【0076】さらに、読出し判定部43は、その頂点デ
ータから、図2方法の説明で述べたように、多角形を構
成する各稜線について、その稜線の両端点が表を向いて
いる多角形と裏を向いている多角形の両方に接している
か否かを判定する。また、その稜線に予定境界稜線であ
ることを示す印が予め付けられているか否かを判定す
る。そして、その稜線が「両端点の両方が表を向いてい
る多角形と裏を向いている多角形の両方に接している稜
線」および予定境界稜線のいずれかであれば、その稜線
に対応する稜線データにアンチエイリアシング処理の対
象であることを示す印(情報)を付ける。
【0077】加えて、読出し判定部43は、そのような
多角形描画用データおよび稜線データを多角形描画部4
4に対して出力する。
【0078】次に、多角形描画部44は、それらの多角
形描画用データおよび稜線データに基づいて、図3装置
における多角形描画部34と同様にして、アンチエイリ
アシング処理の対象と判定された稜線にはアンチエイリ
アシング処理を施し、そのように判定されなかった稜線
にはアンチエイリアシング処理を施さずに、各多角形を
描画する。そして、その描画結果を描画データとして表
示部45に対して出力する。
【0079】最後に、表示部45は、図3装置における
表示部35と同様にして、処理対象の多面体に関する画
像を生成して表示する。
【0080】
【発明の効果】以上説明したように本発明は、処理対象
の多面体を構成する多角形における稜線の全てにアンチ
エイリアシング処理を施すのではなく、一部の稜線(当
該多面体の境界となりうる稜線)を選択してそのような
稜線に対してのみアンチエイリアシング処理を施すこと
により、生成画像の品質を落とすことなしに、画像を生
成するための計算量を削減することができ、高速に画像
の生成を行うことができるという効果を有する。すなわ
ち、全ての稜線に対してアンチエイリアシング処理を施
す必要がないので計算量が少なくて済み処理速度が向上
し、かつ、多面体内部では稜線のジャギーはほとんど目
立たないので画質を損なうことがない。
【図面の簡単な説明】
【図1】本発明の多面体表示方法の第1の実施例の処理
の流れを示す流れ図である。
【図2】本発明の多面体表示方法の第2の実施例の処理
の流れを示す流れ図である。
【図3】本発明の多面体表示装置の第1の実施例の構成
を示すブロック図である。
【図4】本発明の多面体表示装置の第2の実施例の構成
を示すブロック図である。
【図5】図1および図2中の多角形表裏計算ステップに
おける「多面体の面の向きを判定する方法」を説明する
ための図である。
【図6】処理対象の多面体の一例を示す図である。
【図7】図1中の表裏共有稜線判定ステップにおける
「表を向いている多角形と裏を向いている多角形とに共
有される稜線であるか否かを判定する方法」を説明する
ための図である。
【図8】図1および図2中の画像表示ステップにおける
描画多角形の合成方法を説明するための図である。
【図9】図1および図2中の多角形描画ステップにおけ
る「多角形が描画される状況」を説明するための図であ
る。
【図10】図3および図4中の設定記憶部内の多面体デ
ータの一例を示す図である。
【符号の説明】
11,21 多角形表裏計算ステップ 12 表裏共有稜線判定ステップ 13,23 多角形描画ステップ 14,24 画像表示ステップ 22 表裏共有頂点判定ステップ 31 稜線表裏計算部 32,42 設定記憶部 33,43 読出し判定部 34,44 多角形描画部 35,45 表示部 41 頂点表裏計算部 60,61 多面体 62,65 稜線 63,64,66 多角形 67,68 頂点 80 画面 81,82 多角形 83 画素 84 部分画素集合 91 画素 92,94 稜線 93 部分画素集合 101 頂点データテーブル 102 稜線データテーブル 103 多角形データテーブル

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 空間中の多面体を構成する各多角形を描
    画することで当該多面体に関する画像を生成して表示す
    る多面体表示方法において、 当該各多角形が表を向いているか裏を向いているかを判
    定するための計算を行う多角形表裏計算ステップと、 当該多面体を構成する全ての稜線について、各稜線が
    「表を向いている多角形と裏を向いている多角形とに共
    有される稜線」および「1つの多角形としか接していな
    い稜線」のいずれかであるか否かを判定する表裏共有稜
    線判定ステップと、 前記表裏共有稜線判定ステップで「表を向いている多角
    形と裏を向いている多角形とに共有される稜線」および
    「1つの多角形としか接していない稜線」のいずれかで
    あると判定された稜線についてのみジャギーを削減する
    ためのアンチエイリアシング処理を施して、多角形の描
    画を行う多角形描画ステップと、 前記多角形描画ステップで生成された描画多角形に基づ
    いて当該多面体に関する画像を生成して表示する画像表
    示ステップとを有することを特徴とする多面体表示方
    法。
  2. 【請求項2】 空間中の多面体を構成する各多角形を描
    画することで当該多面体に関する画像を生成して表示す
    る多面体表示方法において、 当該各多角形が表を向いているか裏を向いているかを判
    定するための計算を行う多角形表裏計算ステップと、 当該多面体を構成する全ての頂点について、各頂点が
    「表を向いている多角形と裏を向いている多角形とに共
    有される頂点」であるか否かを判定する表裏共有頂点判
    定ステップと、 当該多面体を構成する稜線のうち、前記表裏共有頂点判
    定ステップで「表を向いている多角形と裏を向いている
    多角形とに共有される頂点」であると判定された頂点を
    両端とする稜線および予定境界稜線のいずれかである稜
    線についてのみ、ジャギーを削減するためのアンチエイ
    リアシング処理を施して、多角形の描画を行う多角形描
    画ステップと、 前記多角形描画ステップで生成された描画多角形に基づ
    いて当該多面体に関する画像を生成して表示する画像表
    示ステップとを有することを特徴とする多面体表示方
    法。
  3. 【請求項3】 空間中の多面体を構成する各多角形を描
    画することで当該多面体に関する画像を生成して表示す
    る多面体表示装置において、 当該多面体を表現する多面体データと視線方向を定める
    視線データとを設定して記憶する設定記憶部と、 当該各多角形が表を向いているか裏を向いているかを判
    定するための計算を前記設定記憶部内の多面体データお
    よび視線データに基づいて行い、その計算結果を当該多
    面体を構成する各稜線に対応する稜線データ内のデータ
    として前記設定記憶部に記憶させる稜線表裏計算部と、 当該各多角形毎に、前記設定記憶部内の多面体データの
    うちでその多角形を描画するために必要なデータを読み
    出して多角形描画用データとして出力するとともに、そ
    の多角形を構成する各稜線に対応する稜線データを読み
    出して各稜線が「表を向いている多角形と裏を向いてい
    る多角形とに共有される稜線」および「1つの多角形と
    しか接していない稜線」のいずれかであるか否かを判定
    してその判定結果を出力する読出し判定部と、 当該多角形描画用データおよび前記読出し判定部の判定
    結果に基づいて、「表を向いている多角形と裏を向いて
    いる多角形とに共有される稜線」および「1つの多角形
    としか接していない稜線」のいずれかの稜線であると判
    定された稜線にのみアンチエイリアシング処理を施し、
    それ以外の稜線にはアンチエイリアシング処理を施さな
    いで、多角形を描画して、その描画結果を描画データと
    して出力する多角形描画部と、 前記多角形描画部により出力された描画データに基づい
    て当該多面体に関する画像を生成して表示する表示部と
    を有することを特徴とする多面体表示装置。
  4. 【請求項4】 空間中の多面体を構成する各多角形を描
    画することで当該多面体に関する画像を生成して表示す
    る多面体表示装置において、 当該多面体を表現する多面体データと視線方向を定める
    視線データとを設定して記憶する設定記憶部と、 当該各多角形が表を向いているか裏を向いているかを判
    定するための計算を前記設定記憶部内の多面体データお
    よび視線データに基づいて行い、その計算結果を当該多
    面体を構成する各頂点に対応する頂点データ内のデータ
    として前記設定記憶部に記憶させる頂点表裏計算部と、 当該各多角形毎に、前記設定記憶部内の多面体データの
    うちでその多角形を描画するために必要なデータを読み
    出して多角形描画用データとして出力するとともに、そ
    の多角形を構成する各頂点に対応する頂点データを読み
    出して稜線の両端点となる各頂点が「表を向いている多
    角形と裏を向いている多角形とに共有される頂点」であ
    るか否かを判定し、さらに各稜線が予定境界稜線である
    か否かを判定して、それらの判定結果を出力する読出し
    判定部と、 当該多角形描画データおよび前記読出し判定部の判定結
    果に基づいて、「表を向いている多角形と裏を向いてい
    る多角形とに共有される稜線」および予定境界稜線のい
    ずれかの稜線であると判定された稜線にのみアンチエイ
    リアシング処理を施し、それ以外の稜線にはアンチエイ
    リアシング処理を施さないで、多角形を描画して、その
    描画結果を描画データとして出力する多角形描画部と、 前記多角形描画部により出力された描画データに基づい
    て当該多面体に関する画像を生成して表示する表示部と
    を有することを特徴とする多面体表示装置。
JP7059863A 1995-02-23 1995-02-23 多面体表示方法および多面体表示装置 Expired - Lifetime JP2755204B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7059863A JP2755204B2 (ja) 1995-02-23 1995-02-23 多面体表示方法および多面体表示装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7059863A JP2755204B2 (ja) 1995-02-23 1995-02-23 多面体表示方法および多面体表示装置

Publications (2)

Publication Number Publication Date
JPH08235380A true JPH08235380A (ja) 1996-09-13
JP2755204B2 JP2755204B2 (ja) 1998-05-20

Family

ID=13125446

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7059863A Expired - Lifetime JP2755204B2 (ja) 1995-02-23 1995-02-23 多面体表示方法および多面体表示装置

Country Status (1)

Country Link
JP (1) JP2755204B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0984397A2 (de) * 1998-08-30 2000-03-08 Gmd - Forschungszentrum Informationstechnik Gmbh Verfahren und Vorrichtung zum Eliminieren unerwünschter Stufungen an Kanten bei Bilddarstellungen im Zeilenraster
WO2003009236A1 (fr) * 2001-07-13 2003-01-30 Sony Computer Entertainment Inc. Procede de dessin
US7142224B2 (en) 1997-07-10 2006-11-28 Yamaha Corporation Polygon drawing apparatus and method, and storage medium for implementing the same method

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7142224B2 (en) 1997-07-10 2006-11-28 Yamaha Corporation Polygon drawing apparatus and method, and storage medium for implementing the same method
EP0984397A2 (de) * 1998-08-30 2000-03-08 Gmd - Forschungszentrum Informationstechnik Gmbh Verfahren und Vorrichtung zum Eliminieren unerwünschter Stufungen an Kanten bei Bilddarstellungen im Zeilenraster
EP0984397A3 (de) * 1998-08-30 2002-04-17 Gmd - Forschungszentrum Informationstechnik Gmbh Verfahren und Vorrichtung zum Eliminieren unerwünschter Stufungen an Kanten bei Bilddarstellungen im Zeilenraster
WO2003009236A1 (fr) * 2001-07-13 2003-01-30 Sony Computer Entertainment Inc. Procede de dessin
US6847375B2 (en) 2001-07-13 2005-01-25 Sony Computer Entertainment Inc. Rendering process

Also Published As

Publication number Publication date
JP2755204B2 (ja) 1998-05-20

Similar Documents

Publication Publication Date Title
JP3761085B2 (ja) 画像処理装置及びその構成部品、レンダリング処理方法
JP4327105B2 (ja) 描画方法、画像生成装置、および電子情報機器
US5877769A (en) Image processing apparatus and method
US6925204B2 (en) Image processing method and image processing apparatus using the same
JPH11259671A (ja) 画像表示方法及びそれを実行する画像表示装置
JP3547250B2 (ja) 描画方法
US20050104893A1 (en) Three dimensional image rendering apparatus and three dimensional image rendering method
JPH09245191A (ja) 透明度変換方法及びその装置、画像処理装置
JP2003504697A (ja) 副標本化テクスチャ端縁部のアンチエイリアシング
JP2755204B2 (ja) 多面体表示方法および多面体表示装置
US6518969B2 (en) Three dimensional graphics drawing apparatus for drawing polygons by adding an offset value to vertex data and method thereof
JPH11331700A (ja) 画像処理装置および画像処理方法
JP3052839B2 (ja) 画像処理装置及びその処理方法
US7170528B1 (en) Fast glyph rendering for vector based fonts
JPH11306366A (ja) グラフィック演算装置およびその方法
JP3741053B2 (ja) 画像処理装置
JP4433525B2 (ja) 画像処理装置
JP3872056B2 (ja) 描画方法
US6624820B2 (en) Graphic processing method for determining representative texture data for a plurality of pixels and apparatus for same
JP3409987B2 (ja) 3次元画像生成方法および装置とこの方法および装置を用いた3次元画像処理装置
JP4766576B2 (ja) 描画方法、画像生成装置、および電子情報機器
JPH09212654A (ja) 描画装置及び描画方法
JP2003187260A (ja) 描画処理プログラム、描画処理プログラムを記録した記録媒体、描画処理装置及び方法
KR20020050130A (ko) 2차원 화면 상에 화상을 묘화하는 묘화방법
JPH11339069A (ja) 画像合成装置および画像合成方法