JP3240447B2 - 画像処理装置 - Google Patents

画像処理装置

Info

Publication number
JP3240447B2
JP3240447B2 JP05502093A JP5502093A JP3240447B2 JP 3240447 B2 JP3240447 B2 JP 3240447B2 JP 05502093 A JP05502093 A JP 05502093A JP 5502093 A JP5502093 A JP 5502093A JP 3240447 B2 JP3240447 B2 JP 3240447B2
Authority
JP
Japan
Prior art keywords
polygon
memory
pair
area
data
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 - Fee Related
Application number
JP05502093A
Other languages
English (en)
Other versions
JPH06243262A (ja
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co 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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP05502093A priority Critical patent/JP3240447B2/ja
Priority to US08/197,976 priority patent/US5448690A/en
Publication of JPH06243262A publication Critical patent/JPH06243262A/ja
Application granted granted Critical
Publication of JP3240447B2 publication Critical patent/JP3240447B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/40Hidden part removal
    • G06T15/405Hidden part removal using Z-buffer

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、画像処理装置、とく
にポリゴンの画像情報に基き画像信号をリアルタイムに
出力することができるワークステーション、ゲーム機器
等の3次元コンピュータグラフィックスにおける画像処
理装置に関する。
【0002】
【従来の技術】画像処理装置は、外部から供給される画
像情報に基きCRT表示用各種画像信号を合成出力する
ものであり、単に2次元的な平面画像ばかりでなく、立
体の2次元画像、即ち、疑似3次元画像信号を合成出力
することができることから、例えば3次元画像用のゲー
ム機器、コンピュータグラフィックス等幅広く用いられ
ている。
【0003】従来、この種画像処理装置としては、ビッ
ト・マップ・ディスプレイ(グラフィックディスプレ
イ)の手法を用いており、このためCRT画像の全ピク
セル(画素)に1対1に対応する記憶エリアを有するビ
ットマップメモリが設けられている。このメモリの各記
憶エリアに、一画面に表示する全ピクセル情報が書き込
まれ、例えばコンピュータグラフィックス等において、
任意の図形を表示する場合には、画面上にポリゴンの輪
郭を描き、その内部をメモリに書き込まれた指定色で塗
り潰していくという作業が行われている。そのため、ポ
リゴン数が増えると、大容量のメモリを必要とすると共
に、リアルタイムの処理ができないという問題がある。
【0004】特開昭62−231379号公報(国際特
許分類G06F 15/62)には、供給される図形の
輪郭線情報に基づき、画像信号をリアルタイムで合成出
力することが可能な画像合成装置が開示されている。こ
の画像合成装置は、CRT表示用の図形の輪郭線が各水
平走査線に対応して設けられた水平走査記憶エリア内に
その優先度を伴い順次書込み記憶される輪郭点情報記憶
手段と、水平走査信号に同期して、その垂直走査位置に
対応する水平走査記憶エリアから各輪郭情報に含まれて
いる付随データを読出し、読出された付随データをその
優先度に従って各アドレスに書き込み記憶するインデッ
クスメモリと、水平走査信号に同期して、その垂直走査
位置と対応する水平走査記憶エリアから各輪郭情報に含
まれる輪郭点ぺアを順次読出し、水平走査は各輪郭点ペ
アの指定する領域内で行われる場合に、対応する付随デ
ータの読出しアドレスをその優先度に基づきインデック
スメモリへ出力する読出しアドレス発生手段と、を含
み、供給される図形の輪郭点情報に基づき、CRT表示
用の画像信号をリアルタイムで合成出力するものであ
る。
【0005】
【発明が解決しようとする課題】上述した画像合成装置
でのフィールドプロセッサでは、ポリゴンを順次デジタ
ル微分解析(DDA)で処理し、その演算結果をフレー
ムメモリに格納している。このフレームメモリは、全て
のポリゴンの処理が終了したとき、1スキャンライン上
のポリゴン辺のX始点、X終点と、その属性が判る付随
情報を格納する必要があるため、大容量のメモリを必要
とし、メモリのコストが高くなるという欠点がある。特
に、ポリゴンの付随情報が多くなればなるほど、メモリ
の容量は飛躍的に増大し、装置におけるメモリ負担がき
わめて大きくなるという問題があった。
【0006】この発明は、上述した従来の問題点を解消
し、メモリ容量を小さくし且つ高速な処理が行える画像
処理装置を提供することをその目的とする。
【0007】
【課題を解決するための手段】この発明の画像処理装置
は、なくともポリゴンを構成するX,Y端点情報を格納
したスクリーンメモリと、スクリーン画面をスキャンラ
イン方向に複数の領域に分割した第1のバンド領域及び
この第1のバンド領域をスキャンライン方向に複数の領
域に分割した第2のバンド領域並びにこの第2のバンド
領域をスキャンライン方向に複数の領域に分割した第3
のバンド領域に分割する手段と、前記スクリーンメモリ
から読み出されたポリゴンの端点のデータが前記第1の
バンド領域の1つの領域内若しくはこの領域にかかるか
否か判断し、この領域内若しくは領域にかかるポリゴン
辺ペアを摘出するとともにポリゴンの辺情報に基づきス
キャンライン上にペアとなる辺ペアを算出する第1のポ
リゴン辺摘出手段と、スキャンライン上のポリゴンの始
点、終点データを格納するポリゴン辺ペアメモリと、前
記第1のポリゴン辺摘出手段により摘出されたポリゴン
辺ペアが前記第2のバンド領域の1つの領域内若しくは
この領域にかかるか否か判断し、この領域内若しくは領
域にかかるポリゴン辺ペアを第3のバンド領域のデータ
として転送する第2のポリゴン辺摘出手段と、前記転送
されたポリゴン辺ペアが第3のバンド領域の1つの領域
内若しくはこの領域にかかるか否か判断し、この領域内
若しくは領域にかかるポリゴン辺ペアに対して、前記ポ
リゴン辺ペアメモリより垂直補間に必要なパラメータを
転送する第3のポリゴン辺摘出手段と、この転送データ
に基づいてポリゴン辺の傾きを算出し、スキャンライン
上の右交点、左交点を補間して算出する垂直補間演算手
段と、ポリゴン図形を表示する表示手段のスキャンライ
ンに同期してポリゴンをドットデータとして出力する手
段と、を備えてなる。
【0008】更に、上記画像処理装置の第1のポリゴン
辺摘出手段は、ポリゴンを構成するX,Y端点情報及び
ポリゴンの辺情報に基づいてポリゴンを構成する各辺の
線ベクトルの方向を求める手段と、この求めた線ベクト
ルの方向により各辺を左辺または右辺の2つの群に分割
する手段と、分割した辺が左辺であるごとにカウントア
ップされる左辺カウンタと、左辺の辺情報を格納する左
辺メモリと、分割した辺が右辺であるごとにカウントア
ップされる右辺カウンタと、右辺の辺情報を格納する右
辺メモリと、左辺メモリ及び右辺メモリに格納された辺
について、スキャンラインに従ってソートし、左辺カウ
ンタ、右辺カウンタのカウンタ数に基いてポリゴンに対
応する辺ペアを算出する手段とを備えるとよい。
【0009】
【作用】この発明は多角形スキャンラインアルゴリズム
を基本として凸多角形にだけ処理を制限し、スクリーン
画面に対して、階層的な領域に分割し、上位の領域か
ら、その領域にかかるポリゴン辺ペアを摘出し、その領
域内に表示されるポリゴン辺ペアを制限することによ
り、領域単位のパイプライン演算により、フレームメモ
リを用いずに、1ライン上のポリゴン数を多く処理する
ことが可能とする。
【0010】
【実施例】以下、この発明の実施例につき図面を参照し
て説明する。まず、この発明が用いられる疑似3次元画
像処理装置の全体構成について説明する。
【0011】図1は、この発明を用いた疑似3次元画像
処理装置の全体構成を示すブロック図であり、この装置
は例えば、レーシングゲームや飛行機の操縦シュミレー
ションなどのゲーム機器に用いて好適な一例が示されて
いる。図1に従いこの発明の全体構成ついて説明する。
【0012】この実施例においては、CPUより各種条
件のシュミレーション画像を複数のポリゴンの情報とし
て、ポリゴン端点メモリ9に与えられえる。各ポリゴン
は、例えば図13に示すように、各端点からのベクトル
情報を組み合わせて表現される。CPUは、あらゆる物
体が複数のポリゴンの集合体として表現され、このポリ
ゴンの各端点を示す端点情報及びこのポリゴンに対応し
て夫々模様が施されたマッピングメモリの端点情報並び
にカラー情報等のデータが格納されたワールドメモリ
(図示しない)からデータを読み出し、ハンドルアクセ
ス等で構成された操作部(図示しない)の操作内容に基
いて変換された電気信号に基いて、この状況に応じた状
況データを演算し、幾何変換装置8データを与える。
【0013】幾何変換装置8は、CPUからの命令に従
い、ワールドメモリに格納されている各種ポリゴンデー
タを参照しながら、ポリゴン端点メモリ9からデータを
読み出し、視野変換、透視投影変換により各ポリゴンの
端点座標を幾何変換し、そのX、Yの2次元座標をスク
リーンメモリ1に格納する。また、ポリゴン中心の視野
変換された代表値すなわち、そのポリゴンの視点からの
距離の代表値(Z値)を決定し、代表値の小さいポリゴ
ンから順に優先度の高いポリゴンとしてソートし、ソー
トメモリ2にポリゴン番号を出力する。
【0014】スクリーンメモリ1には、幾何変換装置8
により算出された2次化された各ポリゴンの端点情報が
格納される。このスクリーンメモリ1には、ポリゴンの
端点に夫々対応するR、G、Bなどのカラー情報等の属
性データが含まれる。
【0015】ソートメモリ2はポリゴン中心の視野変換
された優先度(Z値)に従いソートされ、ポリゴンのZ
値の小さい順序にポリゴンアドレスが格納されている。
ソートメモリ2に格納されている優先度(ソートアドレ
ス)に従ったポリゴンの順序に基いて描画処理装置3は
スクリーン画面のY方向(スキャンライン方向)に分割
された処理領域に含まれるポリゴンに対してスクリーン
メモリ1よりポリゴン端点情報を読み出して、表示装置
が必要とするスキャンラインにかかるポリゴンのX始点
とX終点を算出する。この描画処理装置3の詳細につい
ては、後述する。
【0016】ラインメモリ50は、前述した描画処理装
置3により表示される各ポリゴンの左辺、右辺のXアド
レス、すなわちX始点とX終点及びその属性データを格
納する。
【0017】ラインメモリ50からのデータが表示処理
装置7に転送され、表示処理装置7は、CRT10の走
査線(スキャンライン)に同期してポリゴンをドットデ
ータとして出力するものである。
【0018】次に、この発明の要部である描画処理装置
3について、図2を参照して説明する。
【0019】スクリーンメモリ1及びソートメモリ2よ
り夫々データが描画処理装置3のポリゴン辺ペア摘出装
置31へ与えられる。ポリゴン辺ペア摘出装置31は、
ソートメモリ2を順次アクセスして、その値により、ス
クリーンメモリ1より対応するポリゴン端点のデータを
読み出す。この時、この発明のポリゴン辺ペア摘出装置
31は、スクリーン画面をスキャンライン方向に複数の
領域に分割した第1のバンド領域及びこの第1のバンド
領域をスキャンライン方向に複数の領域に分割した第2
のバンド領域並びにこの第2のバンド領域をスキャンラ
イン方向に複数の領域に分割した第3のバンド領域に分
割する。第1のバンド領域において、その領域内若しく
はその領域にかかるポリゴン辺ペアを摘出し、摘出され
たポリゴン辺ペアに対して、第2のバンド領域におい
て、そのポリゴン辺ペアがかかるか否か判断し、かかる
ポリゴン辺ペアを第3のバンド領域に転送し、第3のバ
ンド領域において、そのポリゴン辺ペアがかかるか否か
判断し、かかるポリゴン辺ペアに対して、垂直補間に必
要なパラメータを転送する。また、このポリゴン辺ペア
摘出装置31は、スクリーンより、はみ出したポリゴン
に簡単なクリッピング処理を行い各辺毎にポリゴン端点
情報を選択する。
【0020】そして、各辺毎のポリゴンの端点情報を垂
直補間演算装置36へ転送し、垂直補間演算装置36
は、まずスキャンライン上にペアとなるエッジペアを夫
々算出する。
【0021】垂直補間演算装置36は、ポリゴン辺ペア
摘出装置31より受け取ったデータから2辺間のスキャ
ンライン上のポリゴンX左交点(XL)とX右交点(XR)
を後述する演算式に基き求め、可視/非可視判定処理装
置4へ転送し、可視のポリゴンデータのみラインメモリ
50へ転送する。
【0022】これらの各装置はコントローラにより制御
される。これらコントローラは図21ないし図28に示
すフローチャートに基いて、動作を制御する。
【0023】上記ポリゴン辺ペア摘出装置31の具体的
構成につき図3を参照して説明する。この発明における
ポリゴン辺ペア摘出装置31は、スクリーン画面に対し
て、階層的な領域に分割し、上位の領域から、その領域
にかかるポリゴン辺ペアを摘出する。すなわち図12に
示すように、この実施例では、まずスクリーン面をHバ
ンド領域(第1のバンド領域)に分け、このHバンド領
域を更にMバンド領域(第2のバンド領域)に、このM
バンド領域を更にLバンド領域(第3のバンド領域)
分割している。そして、その領域内に表示されるポリゴ
ン辺ペアを制限し、領域単位のパイプライン演算によ
り、フレームメモリを用いずに、1ライン上のポリゴン
数を多く処理することを可能としたものである。
【0024】図12に示すように、この実施例において
は、スクリーン面を8つのHバンド領域に分割し、1つ
のHバンド領域は4つのMバンド領域で構成される。更
に、1つのMバンド領域は4つのLバンド領域に、1つ
のLバンド領域は4つのスキャンラインで構成されてい
る。
【0025】スクリーンメモリ1からのデータは、Hバ
ンドポリゴン辺ペア摘出装置31Hに与えられる。Hバ
ンドポリゴン辺ペア摘出装置31Hは、図12で示すス
クリーンを分割した時の一番上位のバンドであるHバン
ドの領域内若しくは、この領域にかかる全てのポリゴン
辺に対して、ポリゴン辺ペアを算出する。この算出した
ポリゴン辺ペアは、図19(a)に示すようにフォマッ
トされたポリゴン辺ペアメモリ32に格納されると共
に、同じく図19(b)に示すようにフォマットされた
第2アドレス(AD2)メモリ33に格納される。
【0026】続いて、スクリーンメモリ1からのデータ
は、Mバンドポリゴン辺ペア選択装置31Mに与えられ
る。Mバンドポリゴン辺ペア選択装置31Mは、図12
のようにスクリーンを分割した時の2番目のバンドであ
るMバンドの領域内若しくはこの領域にかかる全てのポ
リゴンをAD2メモリ33より選び出して、アドレス
(AD)メモリ34に書き込む。ADメモリ34は、図
19(c)に示すようにフォーマットされており、Mバ
ンド領域にかかるポリゴン辺ペアのAD2メモリ33の
アドレスを格納している。
【0027】尚、このMバンドポリゴン辺ペア選択装置
を数段持つことにより、さらに多くのポリゴンに対して
処理することができる。
【0028】そして、Lバンドポリゴン辺ペア選択装置
31Lにおいて、図12に示すようにスクリーンを分割
する時の最終バンドであるLバンドにかかるポリゴン全
てをADメモリ34より選び出し、それに対応するポリ
ゴン辺ペアのパラメータをポリゴン辺ペアメモリ32よ
り読み出し垂直補間演算装置36へ転送する。
【0029】これら各装置はコントローラ35にて制御
される。このコントローラ35は図21〜図26に示す
フローに従って、各装置を制御する。
【0030】次に、垂直補間演算装置36について、図
4を参照して説明する。左辺、右辺にそれぞれ分割され
たポリゴンの端点情報が垂直補間演算装置36のパラメ
ータ処理装置361に転送される。パラメータ処理装置
361では、ポリゴン辺ペアの始点、終点アドレス(X
LS,XLE)(XRS,XRE)から各ポリゴン辺の
傾き(DDXL,DDXR)を算出する。この算出した
各ポリゴン辺の傾きと各ポリゴンの左辺、右辺のX始
点、Y始点、Y終点データ及び属性とがスキャンライン
演算装置362に出力される。また、各ポリゴン辺の傾
き(DDXL,DDXR)はポリゴン辺ペアメモリ32
に書き込まれる。
【0031】パラメータ処理装置361においては、例
えば、図15に示すポリゴンにおいて、それぞれ(b)
(c)(d)の状況のポリゴン辺ペアについて、各パラ
メータを下記数式の演算式により算出する。
【0032】
【数1】(b)の場合
【0033】
【数2】(C)の場合
【0034】
【数3】(D)の場合
【0035】上記各演算式に応じて、パラメータ処理装
置361は算出した各ポリゴン辺の傾き(DDXL,D
DXR)とポリゴン辺ペアの始点、終点アドレス(XL
S,XLE)(XRS,XRE)、Y始点データ(YS
S)、Y終点データ(YEE)及び属性とをスキャンラ
イン演算装置362に転送する。
【0036】パラメータ処理装置361の具体的構成例
を図7に示す。この図7に示すように、ポリゴン辺ペア
摘出装置31から転送されたポリゴン辺ペアの始点アド
レス(XLS,XRS)がレジスタ361a、361g
に格納されると共に、減算器361b,361hの一入
力として与えられる。減算器361b,361hの他入
力としてポリゴン辺ペアの終点アドレス(XLE,XR
E)が与えられる。
【0037】また、ポリゴン辺ペア摘出装置31から転
送されたポリゴン辺ペアの始点アドレス(YLS,YR
S)がレジスタ361e、361kに格納されると共
に、減算器361c,361iの一入力として与えられ
る。減算器361c,361iの他入力としてポリゴン
辺ペアの終点アドレス(YLE,YRE)が与えられ
る。
【0038】減算器361b,3612cの演算結果
が、それぞれ除算器361dに与えられ、この除算器3
61dより、傾きDDXLが出力される。また、減算器
361h,361iの演算結果が、それぞれ除算器36
1jに与えられ、、この除算器361jより、傾きDD
XRが出力される。
【0039】Y始点データ(YSS)、Y終点データ
(YEE)及び属性(COLOR等)はレジスタ361
f,l,レジスタ361m,361nにそれぞれ与えら
れ、各レジスタからスキャンライン演算装置362へパ
ラメータとして出力される。垂直補間演算装置36のス
キャンライン演算装置362に与えられる。スキャンラ
イン演算装置362は、例えば図15の(b)(c)
(d)の夫々の状況のポリゴンエッジペアについて、下
記数式の演算式により算出する。
【0040】
【数4】(b)の場合 XL=DDXL×(Y2−Y)+X1 XR=DDXR×(Y4−Y)+X1
【0041】
【数5】(C)の場合 XL=DDXL×(Y2−Y)+X1 XR=DDXR×(Y3−Y)+X1
【0042】
【数6】(D)の場合 XL=DDXL×(Y3−Y)+X2 XR=DDXR×(Y3−Y)+X1
【0043】上記各演算式に応じて、スキャンライン演
算装置362は、図18に示すように、X始点(X
L)、X終点(XR)をYのスタートからエンドまで算
出し、可視/非可視処理判定装置4に転送し、可視のポ
リゴンデータのみラインメモリ50に転送する。
【0044】スキャンライン演算装置362の具体的構
成例を図6に示す。この図6に示すように、転送された
ポリゴン辺ペアの傾き(DDXL,DDXR)がレジス
タ362b,362dに格納される。始点アドレス(Y
LS,YRS)が減算器362a,362cの一入力と
して与えられる。減算器362a,362cの他入力と
してスキャンラインアドレス(Y)が与えられる。
【0045】減算器362a,362cの演算結果が、
それぞれ乗算器362e、362fの一入力として与え
られ、この他入力としてDDXL,DDXRが与えられ
る。この乗算器362e、362fの演算結果が、それ
ぞれ加算器362g,362hの一入力として与えられ
る。加算器362g,362hの他入力としてポリゴン
辺ペアの始点アドレス(XLS,XRS)が与えられ
る。この加算器362g,362hからX始点(X
L)、X終点(XR)が出力される。
【0046】これらの各装置はコントローラ310によ
り制御される。このコントローラは、図27に示すフロ
ーに従って、垂直補間演算動作を制御する。
【0047】次に、この発明の可視/非可視判定処理装
置4の具体例につき図8ないし図11に従い説明する。
【0048】スキャンライン演算装置362より与えら
れたポリゴンエッジペアの左辺のX値(XL)、右辺の
X値(XR)がレジスタ41、42に格納される。XL
レジスタ41にはX始点すなわち、左辺のX値(XS)
が、XRレジスタ42にはX終点、すなわち、右辺のX
値(XR)が格納される。
【0049】XLレジスタ41およびXRレジスタ42
から夫々ポリゴン交点ペアのX始点、X終点データがド
ット化回路45に与えられる。このドット化回路45は
レジスタ41、42からX始点(XL)、X終点(X
R)を受け取り、ドット化したデータをコンパレータ4
9に与える。このドット化は、1ドット化から複数ドッ
ト化など種々対応できる。求めるドット数を増せば増や
すほどフラグRAM54の容量を小さくすることができ
るが、可視/非可視面処理の精度は落ちて行く。この実
施例では2ドット化で処理している。
【0050】ドット化回路43からのドットデータは、
後述するフラグRAM45のデータとコンパレータ44
で比較される。すなわち、コンパレータ44はドット化
回路43からのドットデータとフラグRAM45 に格
納されているいままでに表示されたポリゴンのドットデ
ータを比較し、そのポリゴンが表示されるポリゴンかを
判断し、その結果をコントローラ55に与えている。そ
して、表示される場合には、フラグRAM45にドット
化回路43のドットデータの論理和(オア)したドット
データをフラグRAM45に書き込む。
【0051】前述したフラグRAM45は、図11に示
すように表示されるポリゴンのドット化されたドットデ
ータを格納する。
【0052】図9はドット化回路43の具体的実施例を
示し、この実施例では、スクリーンX方向を512ドッ
トとし、2ドット化を行っている。従って、コンパレー
タ群453、454は〜255の計256個のコンパレ
ータで構成されている。
【0053】まず、XLレジスタ41より入力されたX
始点(XL)はラッチ回路451に、またXEレジスタ
42より入力されたX終点(XR)はラッチ回路452
に格納される。この実施例では2ドット化のため1ビッ
ト右シフトしている。そして、コンパレータ群453
で、X終点(XR)と0〜255の値を比較し、定数≦
XRの時”1”の値をアンド群455へ転送する。
【0054】また、コンパレータ群454では、X始点
(XL)と0〜255の値が比較され、定数≧XLの
時”1”の値がアンド群455へ転送される。
【0055】この結果アンド群455の出力は図11
(a)に示すようにドット化されたデータが出力され
る。
【0056】図10はコンパレータ44の具体的実施例
を示す回路図である。この実施例も上記と同じく2ドッ
ト化のものである。
【0057】ドット化回路45からのデータはラッチ回
路493に、フラグRAM45からのデータはラッチ回
路492に格納される。
【0058】これらのラッチ回路492、493に格納
されたデータはアンド/オア群494に夫々与えられ
る。すなわち、フラグRAM45のデータの反転したも
のと、ドット化回路45の出力をアンドしたものとフラ
グRAM45とドット化回路435の出力したものをオ
アし、図11(b)に示すように、データをオア回路4
95に出力する。オア回路495は、アンド/オア群4
94のアンド出力は1つでも”1”の場合、そのポリゴ
ン交点ペアは1ドット以上表示されるので、表示するよ
うにコントローラ46に信号を送る。1つも”1”がな
い場合には、表示しないようにコントローラ46に信号
を送る。コントローラ46は可視ポリゴンのみラインメ
モリ50にデータを書き込むようにラインメモリ50に
WE信号を送る。
【0059】図5は、この発明の画像処理装置の具体的
構成例を示すブロック図である。この図5を参照してこ
の発明の第1実施例に付き更に説明する。
【0060】スクリーンメモリ1からのデータは、メモ
リインターフェース(I/F)314に与えられ、この
I/F314内に、一旦格納される。スクリーンメモリ
1のアクセスは、アドレス生成回路313により生成さ
れたアドレスによりなされる。このアドレス生成回路3
13には、メモリインターフェース(I/F)312内
に一旦格納されたソートメモリ2からのデータが与えら
れ、ソートメモリ2のデータに基いて、スクリーンメモ
リ1のアドレスが生成される。
【0061】また、ソートメモリ2のアクセスは、アド
レス生成回路311により生成されたアドレスにより行
われる。そして、メモリインターフェース314から与
えられたポリゴン端点データがクリップ回路315に与
えられる。
【0062】クリップ回路315は、スクリーンメモリ
1より読み出したポリゴン端点データに対してスクリー
ンのX始点(SXS)、スクリーンのX終点(SX
E)、スクリーンのY始点(SYS)、スクリーンのY終
点(SYE)の値と比較し、図16に示すケース1〜ケ
ース4の場合のようなポリゴンを削除する。すなわち、
スクリーン内に存在しないポリゴンを削除する。この結
果、スクリーン内に存在するポリゴンデータのみ処理す
ることになる。
【0063】そして、クリップ回路315にて削除され
なかったポリゴンの各端点データがHバンド領域判定回
路316に与えられ、Hバンド領域内若しくは、この領
域にかかるポリゴンの各端点データが辺選択回路317
に与えられる。
【0064】この辺選択回路317において、始点(X
S)、終点データ(XE)に基き線ベクトルを算出し、
この辺が図14に示すどの方向に向いているかその方向
を算出する。そして、ポリゴンが時計回りであれば、図
14(a)に示すように、1〜4は左辺として、5〜8
は右辺として、また、ポリゴンが逆方向の反時計回りで
あれば、図14(b)に示すように1〜4は右辺とし
て、5〜8は左辺としてポリゴンの各辺を分ける。
【0065】左辺と区別した場合には、左辺カウンタ3
18をカウントアップし、左辺メモリ319に辺情報が
格納される。
【0066】又、右辺と区別した場合には、右辺カウン
タ320をカウントアップし、右辺メモリ321に辺情
報が格納される。
【0067】左辺メモリ319、右辺メモリ321に格
納された辺情報はエッジペア転送装置322により、各
ポリゴンに対応するエッジペアが算出される。左辺メモ
リ319、右辺メモリ321に格納された辺について、
それぞれY値(スキャンラインの番号)によりソート
し、左辺カウンタ318、右辺カウンタ320のカウン
タ数から図17に示すように、各ポリゴンに対応するエ
ッジペアを算出し、マルチプレクサ323を介してポリ
ゴン辺ペアメモリ32へそのデータを送出すると共に、
マルチプレクサ324を介してADメモリ33へそのデ
ータを送出する。
【0068】パラメータ処理装置361では、ポリゴン
辺ペアの始点、終点アドレスから各ポリゴン辺の傾きな
どスキャンライン演算に必要なパラメータを算出する。
この算出した各ポリゴン辺の傾きと各ポリゴンの右辺、
左辺のX始点、Y始点データ及び属性とがスキャンライ
ン演算装置362へ送出される。
【0069】スキャンライン演算装置362は、夫々の
状況のポリゴンエッジペアについて、前記数式4〜6の
演算式に応じてX始点(XL)、X終点(XR)をYの
スタートからエンドまで算出し、可視/非可視処理判定
装置4に転送し、可視のポリゴンデータのみマルチプレ
クサ51を介してラインメモリ50に転送する。
【0070】次に、この実施例の描画処理装置3の動作
を図21ないし図27のフローチャートに従い説明す
る。
【0071】スクリーンメモリ1及びソートメモリ2か
ら夫々データが描画処理装置3に入力されると、まずソ
ートアドレス生成回路311内のソートアドレスカウン
トを1つカウントアップする(ステップS1)。そのア
ドレス生成回路311で生成したアドレスに従ってソー
トメモリ2よりZ値のアドレス(ZAD)を示すデータ
がアドレス生成回路313に与えられる。そして、その
Z値のアドレスに従ってがスクリーンメモリ1よりポリ
ゴンのX、Yのスクリーン座標が読み出されメモリイン
ターフェース314を介してクリップ回路315に与え
られる(ステップS2、3)。
【0072】続いて、クリップ回路315にて、クリッ
ピング処理が行われる(ステップS4)。
【0073】ステップS4おいて、ポリゴンがスクリー
ン内に存在する場合には、クリップ処理が行われず、ス
テップS5に進む。また、ポリゴンがスクリーン内に存
在しない場合には、図25のステップS85に進む。そ
して、ステップS6からステップS85までHポリゴン
辺ペア摘出装置の動作が行われる。この例では反時計回
りを示している。
【0074】まず、ステップS5おいて、Hバンド領域
判定回路316にてポリゴン辺カウンタの示すポリゴン
辺がHバンド領域内にあるか、あるいはHバンド領域に
かかっているか否か判断される。ポリゴン辺がHバンド
領域内にあるか、あるいはHバンド領域にかかっている
場合にはステップS6へ進み、ポリゴン辺がHバンド領
域内及び領域にかかっていない場合には図25のステッ
プS85へ進む。Hバンドポリゴン辺ペア摘出装置31
のポリゴン辺カウンタを1に設定すると共に左辺カウン
タ318及び右辺カウンタ320を夫々0に設定する
(ステップS6)。
【0075】続いて、ステップS7おいて、Hバンド領
域判定回路316にてポリゴン辺カウンタの示すポリゴ
ン辺がHバンド領域内にあるか、あるいはHバンド領域
にかかっているか否か判断し、ポリゴン辺がHバンド領
域内にあるか、あるいはHバンド領域にかかっている場
合にはステップS8へ進み、ポリゴン辺がHバンド領域
内及び領域にかかっていない場合にはステップS11へ
進む。
【0076】そして、ステップS8では、ポリゴン辺カ
ウンタの示すポリゴン辺が下向きか否か判断される。下
向きの場合にはステップS9に進む。下向きでない場合
には、ステップS14に進む。ステップS9において
は、左辺カウンタ318を1つカウントアップし、ステ
ップS10へ進み、ステップS10にて、Y始点データ
(YSS)、Y終点データ(YEE)を算出し、そして
左辺カウンタ318の示す左辺メモリ319にポリゴン
辺の始点XLS、YSSと終点XLE、YEEと付属デ
ータを格納し、ステップS11に進む。ステップS11
にてポリゴン辺カウンタをカウントアップし、ステップ
S17へ進む。ステップS17において、ポリゴン辺カ
ウンタとポリゴン辺数とを比較しポリゴン辺カウンタが
ポリゴン辺数より小さい場合には、ステップS7へ戻
り、前述の動作を繰り返す。ポリゴン辺カウンタがポリ
ゴン辺数より大きくなるとステップS18へ進む。
【0077】一方、ポリゴン辺カウンタの示すポリゴン
辺が下向きでない場合には、ステップS14に進み、ス
テップS14においてポリゴン辺カウンタに示すポリゴ
ン辺が上向きかどうか判断される。上向きの場合には、
ステップS15に進み、上向きでない場合には、ステッ
プS11に進む。ステップS15において、右辺カウン
タ320のカウント値をカウントアップし、ステップS
16に進む。ステップS16において、Y始点データ
(YSS)、Y終点データ(YEE)を算出し、右辺カ
ウンタ320の示す右辺メモリ321にポリゴン辺の始
点XRS、YSSと終点XRE、YEEと付属データを
夫々格納し、ステップS11に進む。前述した動作と同
様に、ポリゴン辺カウンタがポリゴン辺数より大きくな
るまで前述の動作を繰り返す。
【0078】ステップS18において、左辺メモリ31
9中をポリゴン辺始点の小さい順に並べ換える。そし
て、ステップS19に進み、ステップS19にて右辺メ
モリ321中をポリゴン辺始点の小さい順に並べ換え、
ステップS20へ進む。
【0079】ステップS20では、左辺カウンタが1で
右辺カウンタが1であるか否か判断する。そして両者と
も1、1の場合にはステップS21へ進む。ステップS
21にて、ポリゴン辺ペアカウンタをカウントアップ
し、ステップS22に進む。ステップS22では左辺メ
モリ319の1番目と右辺メモリ321の1番目のエッ
ジペアをポリゴン辺ペアメモリ32へ書き込み、ステッ
プS23へ進む。ステップS23にて、Y始点データ
(YSS)、Y終点データ(YEE)を算出し、AD2
メモリ33に書き込み、図25のステップS85の動作
へ進む。このステップS20〜S23にて、図17
(a)に示す場合の動作が行われる。
【0080】また、両者とも1、1でない場合にはステ
ップS24へ進む。ステップ24では、左辺カウンタが
1で右辺カウンタが2であるか否か判断され、左辺カウ
ンタが1で右辺カウンタが2の場合にはステップS25
に進み、そうでない場合にはステップS31へ進む。ス
テップS25にて、ポリゴン辺ペアカウンタをカウント
アップし、ステップS26に進む。ステップS26で
は、左辺メモリ319の1番目と右辺メモリ321の1
番目のエッジペアをポリゴン辺ペアメモリ32に書き込
み、ステップS27に進み、ステップS27にて、Y始
点データ(YSS)、Y終点データ(YEE)を算出
し、AD2メモリ33に書き込み、ステップS28に進
む。
【0081】続いて,ステップS28にて、ポリゴン辺
ペアカウンタをカウントアップし、ステップS29に進
む。ステップS29において、左辺メモリ319の1番
目と右辺メモリ321の2番目のエッジペアを同じくポ
リゴン辺ペアメモリ32に書き込み、ステップS30に
て、Y始点データ(YSS)、Y終点データ(YEE)
を算出し、AD2メモリ33に書き込む。そして、図2
5のステップS85へ進む。このステップS24〜S3
0にて、図17(b)に示す場合の動作が行われる。
【0082】ステップS31では、左辺カウンタ318
が2で右辺カウンタ320が1であるか否か判断され
る。左辺カウンタ318が2で右辺カウンタ320が1
の場合にはステップS32へ進み左辺カウンタ318が
2且つ右辺カウンタ320が1でない場合にはステップ
S38へ進む。ステップS32にて、ポリゴン辺ペアカ
ウンタをカウントアップし、ステップS33に進む。ス
テップS33においては左辺メモリ319の1番目と右
辺メモリ321の1番目のエッジペアをポリゴン辺ペア
メモリ32へ書き込み、ステップS34へ進む。ステッ
プS34にて、Y始点データ(YSS)、Y終点データ
(YEE)を算出し、AD2メモリ33に書き込み、ス
テップS35に進む。ステップS35にてポリゴン辺ペ
アカウンタをカウントアップする。そしてステップS3
6へ進む。ステップS36では左辺メモリ319の2番
目と右辺メモリ321の1番目のエッジペアをポリゴン
辺ペアメモリ32へ書き込み、更に、ステップ37に
て、Y始点データ(YSS)、Y終点データ(YEE)
を算出し、AD2メモリ33に書き込み、図25のステ
ップS85へ進む。このステップS31〜S37にて、
図17(c)に示す場合の動作が行われる。
【0083】ステップS38においては、左辺カウンタ
318が1で且つ右辺カウンタ320が3であるか否か
判断される。左辺カウンタ318が1で右辺カウンタ3
20が3の場合にはステップS39へ進み、そうでない
場合にはステップS48へ進む。ステップS39におい
て、ポリゴン辺ペアカウンタをカウントアップし、ステ
ップS40に進み、ステップS40にて、左辺メモリ3
19の1番目と右辺メモリ321の1番目のエッジペア
をポリゴン辺ペアメモリ32へ書き込み、ステップS4
1へ進む。ステップS41にて、Y始点データ(YS
S)、Y終点データ(YEE)を算出し、AD2メモリ
33に書き込み、ステップS42へ進む。ステップS4
2において、ポリゴン辺ペアカウンタをカウントアップ
し、ステップS43に進む。ステップS43では、左辺
メモリ319の1番目と右辺メモリ321の2番目のエ
ッジペアをポリゴン辺ペアメモリ32へ転送し、ステッ
プS44へ進む。ステップS44にて、Y始点データ
(YSS)、Y終点データ(YEE)を算出し、AD2
メモリ33に書き込み、ステップS45へ進む。ステッ
プS45において、ポリゴン辺ペアカウンタをカウント
アップし、ステップS46に進む。ステップS46では
左辺メモリ319の1番目と右辺メモリ321の3番目
のエッジペアをポリゴン辺ペアメモリ32へ転送し、ス
テップS47にて、Y始点データ(YSS)、Y終点デ
ータ(YEE)を算出し、AD2メモリ33に書き込ん
だ後、図25のステップS85へ進む。このステップS
38〜S47にて、図17(d)に示す場合の動作が行
われる。
【0084】ステップS48においては、左辺カウンタ
318が3で且つ右辺カウンタ320が1であるか否か
判断される。左辺カウンタ318が3で右辺カウンタ3
20が1の場合にはステップS49へ進み、そうでない
場合にはステップS58へ進む。ステップS49におい
て、ポリゴン辺ペアカウンタをカウントアップし、ステ
ップS50に進み、ステップS50にて、左辺メモリ3
19の1番目と右辺メモリ321の1番目のエッジペア
をポリゴン辺ペアメモリ32へ書き込み、ステップS5
1へ進む。ステップS51にて、Y始点データ(YS
S)、Y終点データ(YEE)を算出し、AD2メモリ
33に書き込み、ステップS52において、ポリゴン辺
ペアカウンタをカウントアップし、ステップS53に進
む。ステップS53では、左辺メモリ319の2番目と
右辺メモリ321の1番目のエッジペアをポリゴン辺ペ
アメモリ32へ転送し、ステップS54へ進む。ステッ
プS54にて、Y始点データ(YSS)、Y終点データ
(YEE)を算出し、AD2メモリ33に書き込み、ス
テップS55において、ポリゴン辺ペアカウンタをカウ
ントアップし、ステップS56進む。ステップS56で
は左辺メモリ319の3番目と右辺メモリ321の1番
目のエッジペアをポリゴン辺ペアメモリ32へ転送し、
ステップS57にて、Y始点データ(YSS)、Y終点
データ(YEE)を算出し、AD2メモリ33に書き込
んだ後、図25のステップS85へ進む。このステップ
S48〜S57にて、図17(e)に示す場合の動作が
行われる。
【0085】ステップS58においては、左辺カウンタ
318が2で右辺カウンタ320が2且つ左辺メモリ3
19の1番目の終点のY値が右辺メモリ321の1番目
の始点のY値と同一であるか否か判断する。同一の場合
には、ステップS59にて、ポリゴン辺ペアカウンタを
カウントアップし、ステップS60に進む。ステップS
60では、左辺メモリ319の1番目と右辺メモリ32
1の1番目のエッジペアをポリゴン辺ペアメモリ32へ
転送し、ステップS61に進み、Y始点データ(YS
S)、Y終点データ(YEE)を算出し、AD2メモリ
33に書き込んだ後、ステップS62にて、ポリゴン辺
ペアカウンタをカウントアップし、ステップS63に進
む。ステップS63で左辺メモリ319の2番目と右辺
メモリ321の1番目のエッジペアをポリゴン辺ペアメ
モリ32へ転送し、更に、ステップS64にて、Y始点
データ(YSS)、Y終点データ(YEE)を算出し、
AD2目織り33に書き込んだ後、図25のステップS
85へ進む。このステップS58〜S64にて、図17
(f)に示す場合の動作が行われる。
【0086】また、同一でない場合には、ステップS6
5へ進む。ステップS65においては、左辺カウンタ3
18が2で右辺カウンタ320が2且つ左辺メモリ31
9の1番目の終点のY値より右辺メモリ321の1番目
の始点のY値の方が小さいか否か判断される。Y値より
右辺メモリ321の1番目の始点のY値の方が小さい場
合には、ステップS66へ進み、小さくない場合には、
ステップS75へ進む。ステップS66にて、ポリゴン
辺ペアカウンタをカウントアップし、ステップS67に
進む。ステップS67では、左辺メモリ319の1番目
と右辺メモリ321の1番目のエッジペアをポリゴン辺
ペアメモリ32へ転送し、ステップS69に進み、Y始
点データ(YSS)、Y終点データ(YEE)を算出
し、AD2メモリ33に書き込んだ後、ステップS69
にて、ポリゴン辺ペアカウンタをカウントアップし、ス
テップS70に進む。ステップS70で左辺メモリ31
9の1番目と右辺メモリ321の2番目のエッジペアを
ポリゴン辺ペアメモリ32へ転送し、更に、ステップS
71にて、Y始点データ(YSS)、Y終点データ(Y
EE)を算出し、AD2メモリ33に書き込んだ後、ス
テップS72にて、ポリゴン辺ペアカウンタをカウント
アップし、ステップS73に進む。ステップS73で左
辺メモリ319の2番目と右辺メモリ321の2番目の
エッジペアをポリゴン辺ペアメモリ32へ転送し、更
に、ステップS74にて、Y始点データ(YSS)、Y
終点データ(YEE)を算出し、AD2メモリ33に書
き込んだ後、図25のステップS85へ進む。このステ
ップS65〜S74にて、図17(g)に示す場合の動
作が行われる。
【0087】また、ステップS75においては、左辺カ
ウンタ318で右辺カウンタ320が2且つ左辺メモリ
319の1番目の終点のY値より右辺メモリ321の1
番目の始点のY値の方が大きいか否か判断される。Y値
より右辺メモリ320の1番目の始点のY値の方が大き
い場合には、ステップS76へ進み、大きくない場合に
は、図25のS85へ進む。そして、ステップS76に
て、ポリゴン辺ペアカウンタをカウントアップし、ステ
ップS77に進む。ステップS77では、左辺メモリ3
19の1番目と右辺メモリ321の1番目のエッジペア
をポリゴン辺ペアメモリ32へ転送し、ステップS78
に進み、Y始点データ(YSS)、Y終点データ(YE
E)を算出し、AD2メモリ33に書き込んだ後、ステ
ップS79にて、ポリゴン辺ペアカウンタをカウントア
ップし、ステップS80に進む。ステップS80で左辺
メモリ319の2番目と右辺メモリ321の1番目のエ
ッジペアをポリゴン辺ペアメモリ32へ転送し、更に、
ステップS81にて、Y始点データ(YSS)、Y終点
データ(YEE)を算出し、ADメモリ33に書き込ん
だ後、ステップS82にて、ポリゴン辺ペアカウンタを
カウントアップし、ステップS83に進む。ステップS
83で左辺メモリ319の2番目と右辺メモリ321の
2番目のエッジペアをポリゴン辺ペアメモリ32へ転送
し、更に、ステップS84にて、Y始点データ(YS
S)、Y終点データ(YEE)を算出し、AD2メモリ
33へ書き込んだ後、図25のステップS85へ進む。
このステップS75〜S84にて、図17(h)に示す
場合の動作が行われる。
【0088】ステップS85において、すべてのポリゴ
ンに対して処理を終了したか否か判断され、終了すると
Hバンドポリゴン辺ペア摘出装置31Hの動作を終了す
る。またすべてのポリゴンの処理が終了していない場合
にはステップS1に戻り前述の動作を繰り返す。
【0089】Mバンドポリゴン辺ペア選択装置31Mの
動作につき図26のフローチャートに従い説明する。
【0090】Mバンドポリゴン辺ペア選択装置31M
は、まずステップS90にて,AD2メモリ33のメモ
リカウンタをカウントアップし、ステップS91に進
む。ステップS91にて、AD2メモリ33をアクセス
し、辺ペアのY始点(YSS)、Y終点(YEE)を読
み出してステップS92へ進む。
【0091】ステップS92にて、ポリゴン辺ペアがM
バンド領域内またはMバンド領域にかかるか否か判断さ
れ、ポリゴン辺ペアがMバンド領域内または領域にかか
る場合にはステップS93に進み、そうでない場合には
ステップS94に進む。
【0092】ステップS93においては,ADメモリ3
4にAD2メモリカウンタ値、すなわちAD2メモリ3
3のアドレス値を書き込みステップS94に進む。この
Mバンドポリゴン辺ペア選択装置31Mは、AD2メモ
リ33のフォーマット(図19(b)参照)のように、
ポリゴンのY始点、Y終点からそのポリゴンをMバンド
領域にかかるか否か判断し、かかる場合図5に示すAD
メモリ34にポリゴン辺ペアメモリ32に対応するアド
レスを書き込む。このとき、図26のAD2カウンタは
Mバンド領域にかかるか否かを判定する為のポリゴンに
対応するAD2メモリのアドレスをカウントし、ポリゴ
ンのY始点、Y終点を読み出す。
【0093】ステップS94では、すべてのポリゴン辺
ペアに処理を行ったか否か判断され、すべてのポリゴン
辺ペアの処理を終了していない場合には、ステップS9
0へ戻り、前述の動作を繰り返す。
【0094】すべてのポリゴン辺ペアへの処理が終了す
ると、Mバンドポリゴン辺ペア選択装置31Mの動作を
終了する。
【0095】次に、Lバンドポリゴン辺選択装置31L
以降の動作について、図27のフローチャートに従い説
明する。
【0096】まずステップS100にて,ADメモリ3
4のメモリカウンタをカウントアップし、ステップS1
01に進む。ステップS101にて、ADメモリ33を
アクセスし、ポリゴン辺ペアメモリアドレスを読み出し
てステップS102へ進む。
【0097】ステップS102にて、ポリゴン辺ペアが
Lバンド領域にかかっているか否か判断され、ポリゴン
辺ペアがLバンド領域にかかっている場合にはステップ
S103に進み、そうでない場合にはステップS100
に戻る。
【0098】ステップS103においては,ADメモリ
33から読み出したポリゴン辺ペアメモリアドレスの示
すポリゴン辺ペアメモリ32のポリゴン辺ペアデータを
読み出し、ステップS104に進む。このステップS1
00〜S103までがLバンドポリゴン辺選択装置31
Lの動作を示す。
【0099】続いて、パラメータ処理装置361の動作
にはいる。パラメータ処理装置361の動作にはいる
と、ステップS104において、左辺エッジの傾きDD
XLをステップS105で右辺エッジの傾きDDXRを
求め、スキャンライン演算装置362の動作にはいる。
【0100】スキャンライン演算装置362の動作には
いると、ステップS106において、左辺エッジを次の
演算式により算出する。 XL=(Y終点−Y)×DDXL+X始点
【0101】次に、ステップS107において、右辺エ
ッジを次の演算式により算出する。 XR=(Y終点−Y)×DDXR+X始点
【0102】続いて、ステップS108にて、ステップ
S106,S107にて算出したXL,XRと属性など
のデータを可視/非可視判定処理装置4に転送し、可視
/非可視判定処理装置4内のレジスタ41、42、48
にそれぞれ書き込む。
【0103】その後、ステップS109において、表示
されるポリゴンのXL,XR,属性をラインメモリ50
に書き込み、ステップS110に進み、ステップS11
0において、すべてのポリゴン辺ペアに対して処理を行
ったか否か判断され、処理が終了していない場合には、
ステップS100に戻り、前述の動作を繰り返す。この
処理が終了すると、動作が終了する。
【0104】続いて、可視/非可視判定処理装置4の動
作につき、図28のフローチャートに従い説明する。
【0105】可視/非可視判定処理動作を開始すると、
まず、ステップS120にて、スキャンラインの処理動
作が終了したか否か判断され、スキャンラインの処理動
作が終了していない場合に、はステップS121へ進
み、終了した場合にはステップS127に進む。
【0106】可視/非可視判定処理動作の開始直後はス
キャンラインの処理は終了していないので、まず、ステ
ップS121に進む。ステップS121にて、描画処理
装置31のスキャンライン演算装置362よりXL,X
R、付属データを読み出し、ステップS122へ進む。
【0107】そして、ステップS122にて、XL、X
RをDOT化回路43に送り、ドット化し、ステップS
123へ進む。
【0108】ステップS123において、フラグRAM
45のアドレスYのデータとDOT化回路43の出力を
コンパレータ44にて比較し、ステップS124へ進
む。
【0109】ステップS124では、表示されるポリゴ
ンか否か判断され、表示されるポリゴンの場合にはステ
ップS125へ進み、表示されないポリゴンの場合には
ステップS120へ戻る。
【0110】ステップS125では、フラグRAM45
にDOT化回路43の出力とフラグRAM出力の論理和
(OR)を書き込み、ステップS126へ進む。ステッ
プS126において、ラインメモリコントローラにWE
信号を送り、XL,XR,付属データをラインメモリ5
0に書き込み、ステップS120へ戻る。そして、スキ
ャンライン処理動作が終了するまで前述の動作を繰り返
し、スキャンライン処理動作が終了すると、ステップS
127に進み、フラグRAM45を初期化し、可視/非
可視判定処理動作を終了する。
【0111】この実施例における上記各動作は図20に
示すようなタイミングで行われる。この図において、ラ
イン処理サイクルはCRTの1ラインの時間を示し、H
バンド処理サイクルは図に示すように、HバンドをY
(スキャンライン)方向に16ラインの領域とする。そ
して、この16ライン処理サイクル中でこの領域中のポ
リゴンに対してポリゴン辺ペア摘出処理を行う。このH
バンド領域内またはHバンド領域にかかるポリゴンに対
して、前述の図21〜図25に示すフローチャートの動
作が行われる。
【0112】Mバンド処理サイクルは図に示すように、
MバンドをY方向に4ラインの領域とし、この4ライン
処理サイクル中でこの領域中のポリゴンを選択する。す
なわち、図26に示すフローチャートの動作が行われ
る。この処理は次のHバンド処理サイクルと並列に行わ
れる。
【0113】Lバンド処理サイクルは、図に示すよう
に、LバンドをY方向に1ラインとし、この1ライン処
理サイクル中にこのラインにかかるポリゴンを、図27
に示す動作により選択し、垂直補間演算装置にポリゴン
辺ペアパラメータを転送する。
【0114】表示サイクルはCRTに同期してライン中
にかかるポリゴンに対してドットクロックごとポリゴン
の色などを補間して出力するように構成されている。
【0115】又、可視/非可視判定処理装置を有するこ
とにより、ラインメモリ内には、表示されるポリゴンの
XL,XR及び属性データが格納されることにより、1
スキャンライン表示期間内に処理するポリゴン数だけ有
効に表示することができる。
【0116】なお、上記実施例においては、H,M,L
に3分割しているが、この発明はスクリーン画面に対し
て、階層的に分割処理すればよく、その分割数は必要に
応じて選択すれば良い。
【0117】
【発明の効果】この発明は多角形スキャンアルゴリズム
を基本として凸多角形にだけ処理を制限し、スクリーン
画面をスキャンライン方向にn個の階層に分割して、最
上位の領域において、その領域にかかるポリゴン辺ペア
を摘出し、摘出されたポリゴン辺ペアに対して、階層的
な領域の中間層において、そのポリゴン辺ペアがかかる
か否か判断し、かかるポリゴン辺ペアを下位の階層的な
領域に転送し、最下位の階層的な領域において、そのポ
リゴン辺ペアがかかるか否か判断し、かかるポリゴン辺
ペアに対して、垂直補間に必要なパラメータを転送する
ように構成し、領域内に表示されるポリゴン辺ペアを制
限することにより、領域単位のパイプライン演算によ
り、フレームメモリを用いずに、1ライン上のポリゴン
数を多く処理することができる。
【0118】又、可視/非可視判定処理装置を有するこ
とにより、ラインメモリ内には、表示されるポリゴンの
データが入ることにより、1スキャンライン表示期間内
に処理するポリゴン数だけ有効に表示することができ
る。
【図面の簡単な説明】
【図1】この発明を用いた疑似3次元画像処理装置の全
体構成を示すブロック図である。
【図2】この発明の要部である描画処理装置の構成を示
すブロック図である。
【図3】この発明の要部であるポリゴン辺ペア摘出装置
の構成を示すブロック図である。
【図4】この発明の要部である垂直補間演算装置の構成
を示すブロック図である。
【図5】この発明の実施例である画像処理装置の具体的
構成を示すブロック図である。
【図6】この発明の実施例に用いられるスキャンライン
演算装置の具体的構成を示すブロック図である。
【図7】この発明の実施例に用いられるパラメータ処理
の具体的構成を示すブロック図である。
【図8】この発明の実施例に用いられる可視/非可視判
定処理装置の構成を示すブロック図である。
【図9】この発明の可視/非可視判定処理装置における
ドット化回路の具体的実施例を示す回路図である。
【図10】この発明の可視/非可視判定処理装置におけ
るコンパレータの具体的実施例を示す回路図である。
【図11】この発明の可視/非可視判定装置におけるド
ット出力動作をを示し、(a)はドット化回路の出力、
(b)はフラグRAMの動作を示す模式図である。
【図12】この発明における、Y方向の領域分割例を示
す模式図である。
【図13】ポリゴンの表示例を示す模式図である。
【図14】線ベクトルの領域を示す模式図である。
【図15】ポリゴン辺ペアの関係を示す模式図である。
【図16】スクリーンとクリッピングの関係を示す模式
図である。
【図17】この発明の演算装置における左辺カウンタ、
右辺カウンタのカウンタ数と算出するエッジペアの関係
を示す模式図である。
【図18】ポリゴンエッジペアの種類を示す模式図であ
る。
【図19】この発明の実施例に用いるメモリのフォマッ
トを示す模式図であり、(a)はポリゴン辺ペアメモ
リ、(b)はAD2メモリ、(c)はADメモリを示
す。
【図20】この発明のおける各演算の処理タイミングの
例を示す図である。
【図21】この発明の実施例の描画処理装置のHバンド
領域処理動作を説明するフローチャトである。
【図22】この発明の実施例の描画処理装置のHバンド
領域処理動作を説明するフローチャトである。
【図23】この発明の実施例の描画処理装置のHバンド
領域処理動作を説明するフローチャトである。
【図24】この発明の実施例の描画処理装置のHバンド
領域処理動作を説明するフローチャトである。
【図25】この発明の実施例の描画処理装置のHバンド
領域処理動作を説明するフローチャトである。
【図26】この発明の実施例の描画処理装置のMバンド
領域処理動作を説明するフローチャトである。
【図27】この発明の実施例の垂直補間演算装置の動作
を説明するフローチャトである。
【図28】この発明の実施例の可視/非可視判定処理装
置の動作を説明するフローチャトである。
【符号の説明】
1 スクリーンメモリ 2 ソートメモリ 3 描画処理装置 7 表示処理装置 10 CRT 50 ラインメモリ 31 ポリゴン辺ペア摘出装置 31H Hバンドポリゴン辺ペア摘出装置 31M Mバンドポリゴン辺ペア選択装置 31L Lバンドポリゴン辺ペア選択装置 316 Hバンド領域判定回路 326 Mバンド領域判定回路 330 Lバンド領域判定回路 32 ポリゴン辺ペアメモリ 33 AD2メモリ 34 ADメモリ 36 垂直補間演算装置 361 パラメータ処理装置 362 スキャンライン演算装置 4 可視/非可視判定処理装置 43 ドット(DOT)化回路 44 コンパレータ 45 フラグRAM
───────────────────────────────────────────────────── フロントページの続き (72)発明者 中島 達也 東京都大田区中馬込1丁目3番6号 株 式会社リコー内 (72)発明者 井澤 康浩 東京都大田区中馬込1丁目3番6号 株 式会社リコー内 (56)参考文献 特開 平4−174464(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06T 11/20 G09G 5/36

Claims (4)

    (57)【特許請求の範囲】
  1. 【請求項1】 少なくともポリゴンを構成するX,Y端
    点情報を格納したスクリーンメモリと、スクリーン画面
    をスキャンライン方向に複数の領域に分割した第1のバ
    ンド領域及びこの第1のバンド領域をスキャンライン方
    向に複数の領域に分割した第2のバンド領域並びにこの
    第2のバンド領域をスキャンライン方向に複数の領域に
    分割した第3のバンド領域に分割する手段と、前記スク
    リーンメモリから読み出されたポリゴンの端点のデータ
    が前記第1のバンド領域の1つの領域内若しくはこの領
    域にかかるか否か判断し、この領域内若しくは領域にか
    かるポリゴン辺ペアを摘出するとともにポリゴンの辺情
    報に基づきスキャンライン上にペアとなる辺ペアを算出
    する第1のポリゴン辺摘出手段と、スキャンライン上の
    ポリゴンの始点、終点データを格納するポリゴン辺ペア
    メモリと、前記第1のポリゴン辺摘出手段により摘出さ
    れたポリゴン辺ペアが前記第2のバンド領域の1つの領
    域内若しくはこの領域にかかるか否か判断し、この領域
    内若しくは領域にかかるポリゴン辺ペアを第3のバンド
    領域のデータとして転送する第2のポリゴン辺摘出手段
    と、前記転送されたポリゴン辺ペアが第3のバンド領域
    の1つの領域内若しくはこの領域にかかるか否か判断
    し、この領域内若しくは領域にかかるポリゴン辺ペアに
    対して、前記ポリゴン辺ペアメモリより垂直補間に必要
    なパラメータを転送する第3のポリゴン辺摘出手段と
    この転送データに基づいてポリゴン辺の傾きを算出し、
    スキャンライン上の右交点、左交点を補間して算出する
    垂直補間演算手段と、ポリゴン図形を表示する表示手段
    のスキャンラインに同期してポリゴンをドットデータと
    して出力する手段と、を備えてなる画像処理装置。
  2. 【請求項2】 前記第1のポリゴン辺摘出手段は、ポリ
    ゴンを構成するX,Y端点情報及びポリゴンの辺情報に
    基づいてポリゴンを構成する各辺の線ベクトルの方向を
    求める手段と、この求めた線ベクトルの方向により各辺
    を左辺または右辺の2つの群に分割する手段と、分割し
    た辺が左辺であるごとにカウントアップされる左辺カウ
    ンタと、左辺の辺情報を格納する左辺メモリと、分割し
    た辺が右辺であるごとにカウントアップされる右辺カウ
    ンタと、右辺の辺情報を格納する右辺メモリと、左辺メ
    モリ及び右辺メモリに格納された辺について、スキャン
    ラインに従ってソートし、左辺カウンタ、右辺カウンタ
    のカウンタ数に基いてポリゴンに対応する辺ペアを算出
    する手段とを、備えてなる請求項1に記載の画像処理装
    置。
  3. 【請求項3】 前記垂直補間演算手段にて算出したスキ
    ャンライン上の右交点、左交点に基づき表示されるポリ
    ゴンか表示されないポリゴンかを判別する可視/非可視
    判定処理手段と、スキャンライン上の右交点、左交点を
    格納するラインメモリとを備え、表示されるポリゴンの
    スキャンライン上の右交点、左交点のみラインメモリに
    格納することを特徴とする請求項1に記載の画像処理装
    置。
  4. 【請求項4】 前記可視/非可視判定処理手段は、前記
    垂直補間演算手段にて算出したスキャンライン上の右交
    点、左交点に基いてスキャンライン毎にドットデータと
    して出力するドット化手段と、表示すると判定されたポ
    リゴンのドットデータが格納されるフラグメモリと、ド
    ット化手段のドットデータとフラグメモリに格納されて
    いるポリゴンのドットデータを比較し、表示するポリゴ
    ンか表示されないポリゴンかを判定する判定手段と、こ
    の判定手段にて表示されるポリゴンと判定されたポリゴ
    ンのドットデータと、フラグメモリに格納されているデ
    ータとの論理和をとり、フラグメモリの内容をそのデー
    タに書き換える手段と、を備えてなる請求項3に記載の
    画像処理装置。
JP05502093A 1993-02-19 1993-02-19 画像処理装置 Expired - Fee Related JP3240447B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP05502093A JP3240447B2 (ja) 1993-02-19 1993-02-19 画像処理装置
US08/197,976 US5448690A (en) 1993-02-19 1994-02-17 Image processing system enabling real-time output of image signal based on polygon image information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP05502093A JP3240447B2 (ja) 1993-02-19 1993-02-19 画像処理装置

Publications (2)

Publication Number Publication Date
JPH06243262A JPH06243262A (ja) 1994-09-02
JP3240447B2 true JP3240447B2 (ja) 2001-12-17

Family

ID=12986989

Family Applications (1)

Application Number Title Priority Date Filing Date
JP05502093A Expired - Fee Related JP3240447B2 (ja) 1993-02-19 1993-02-19 画像処理装置

Country Status (2)

Country Link
US (1) US5448690A (ja)
JP (1) JP3240447B2 (ja)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2288523B (en) * 1993-09-28 1998-04-01 Namco Ltd Clipping processing device, three-dimensional simulator device, and clipping processing method
JP3313221B2 (ja) * 1993-12-28 2002-08-12 松下電器産業株式会社 画像生成方法及び画像生成装置
JP3609189B2 (ja) * 1995-03-14 2005-01-12 株式会社リコー アンチエイリアシング機能を有する画像生成装置
JPH08329276A (ja) * 1995-06-01 1996-12-13 Ricoh Co Ltd 3次元グラフィックス処理装置
JPH0916806A (ja) 1995-07-04 1997-01-17 Ricoh Co Ltd 立体画像処理装置
JP2776793B2 (ja) * 1996-05-30 1998-07-16 日本電気アイシーマイコンシステム株式会社 画像表示方法およびその表示装置
US6771264B1 (en) 1998-08-20 2004-08-03 Apple Computer, Inc. Method and apparatus for performing tangent space lighting and bump mapping in a deferred shading graphics processor
AU5686299A (en) * 1998-08-20 2000-03-14 Raycer, Inc. Method and apparatus for generating texture
JP2001118049A (ja) * 1999-10-14 2001-04-27 Sega Corp マトリクス演算器を有する画像処理装置
JP3686042B2 (ja) * 2002-02-06 2005-08-24 株式会社リコー 直流安定化電源装置
JP3854883B2 (ja) * 2002-03-22 2006-12-06 株式会社リコー ビット同期回路及び半導体装置
JP4133369B2 (ja) * 2003-01-27 2008-08-13 株式会社リコー 画像処理装置、方法及びプログラム
JP4179920B2 (ja) * 2003-04-30 2008-11-12 株式会社リコー 緩衝バッファ回路
JP4313130B2 (ja) * 2003-09-18 2009-08-12 株式会社リコー 画像形成装置、画像形成方法、およびその方法をコンピュータで実行するプログラム
US7599044B2 (en) 2005-06-23 2009-10-06 Apple Inc. Method and apparatus for remotely detecting presence
US7973789B2 (en) * 2005-06-03 2011-07-05 Pixar Dynamic model generation methods and apparatus
US9298311B2 (en) * 2005-06-23 2016-03-29 Apple Inc. Trackpad sensitivity compensation
US7577930B2 (en) 2005-06-23 2009-08-18 Apple Inc. Method and apparatus for analyzing integrated circuit operations
US7433191B2 (en) 2005-09-30 2008-10-07 Apple Inc. Thermal contact arrangement
US7598711B2 (en) 2005-11-23 2009-10-06 Apple Inc. Power source switchover apparatus and method
JP5533083B2 (ja) * 2010-03-16 2014-06-25 株式会社リコー データ処理装置およびデータ処理方法
JP5545012B2 (ja) 2010-05-07 2014-07-09 株式会社リコー 画像処理装置および画像処理方法
JP5703769B2 (ja) * 2011-01-19 2015-04-22 ソニー株式会社 画像変換装置、画像変換方法、プログラム、および電子機器
JP2013030066A (ja) * 2011-07-29 2013-02-07 Fujitsu Ltd 描画装置
JP6221637B2 (ja) 2013-02-19 2017-11-01 株式会社リコー 画像処理装置および画像処理方法、ならびに、画像形成装置
JP6252225B2 (ja) 2014-02-17 2017-12-27 株式会社リコー 画像処理装置、画像処理方法及び画像形成装置
JP6736954B2 (ja) 2016-04-19 2020-08-05 株式会社リコー 画像形成装置、画像形成システム及び画像形成方法
JP7040058B2 (ja) 2018-01-31 2022-03-23 株式会社リコー 符号化装置
US11442591B2 (en) * 2018-04-09 2022-09-13 Lockheed Martin Corporation System, method, computer readable medium, and viewer-interface for prioritized selection of mutually occluding objects in a virtual environment

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62231379A (ja) * 1986-03-31 1987-10-09 Namuko:Kk 画像合成装置
US5058042A (en) * 1989-04-03 1991-10-15 Hewlett-Packard Company Method for employing a hierarchical display list in global rendering
US5249265A (en) * 1989-10-24 1993-09-28 International Business Machines Corporation Structure storage management in a graphics display device
US5295243A (en) * 1989-12-29 1994-03-15 Xerox Corporation Display of hierarchical three-dimensional structures with rotating substructures

Also Published As

Publication number Publication date
US5448690A (en) 1995-09-05
JPH06243262A (ja) 1994-09-02

Similar Documents

Publication Publication Date Title
JP3240447B2 (ja) 画像処理装置
JP3344666B2 (ja) 画像処理装置
US6762756B2 (en) Graphics processor, system and method for generating screen pixels in raster order utilizing a single interpolator
KR910009101B1 (ko) 화상합성장치
US4766556A (en) Three-dimensional solid object manipulating apparatus and method therefor
JP3332165B2 (ja) 画像処理装置
US5877769A (en) Image processing apparatus and method
EP1011078A1 (en) Method for generating polygon data and image display using the same
JP3514947B2 (ja) 3次元画像処理装置及び3次元画像処理方法
JPH0916806A (ja) 立体画像処理装置
KR910009102B1 (ko) 화상합성 장치
EP1031946B1 (en) Recording medium,Image processing method and unit with integrated shaping model data
JPH0610812B2 (ja) 表示装置
JPH0660173A (ja) 画像を縮小する方法および装置
JPH0927045A (ja) 画像処理装置
JP2676116B2 (ja) 画像データ処理方法および装置
JP3979162B2 (ja) 画像処理装置およびその方法
JP3132220B2 (ja) 3次元モデルの形状作成方法
JPH07105404A (ja) 立体画像処理装置及びその処理方法
JP3278828B2 (ja) 半透明立体画像処理装置
JP2583379B2 (ja) 疑似3次元画像合成装置及び画像合成方法
JPH0668272A (ja) 疑似3次元画像合成装置
JP3344675B2 (ja) 立体画像処理装置
JPH1115994A (ja) 曲面作成方法
JPH0887585A (ja) 図形データの階層的近似化方法

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071019

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20081019

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20081019

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20091019

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees