JPH0667648A - 疑似3次元画像合成装置 - Google Patents

疑似3次元画像合成装置

Info

Publication number
JPH0667648A
JPH0667648A JP4283941A JP28394192A JPH0667648A JP H0667648 A JPH0667648 A JP H0667648A JP 4283941 A JP4283941 A JP 4283941A JP 28394192 A JP28394192 A JP 28394192A JP H0667648 A JPH0667648 A JP H0667648A
Authority
JP
Japan
Prior art keywords
contour point
polygon
information
polygons
contour
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
JP4283941A
Other languages
English (en)
Other versions
JP2583379B2 (ja
Inventor
Hiroyuki Murata
弘幸 村田
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 JP4283941A priority Critical patent/JP2583379B2/ja
Publication of JPH0667648A publication Critical patent/JPH0667648A/ja
Application granted granted Critical
Publication of JP2583379B2 publication Critical patent/JP2583379B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Controls And Circuits For Display Device (AREA)
  • Image Generation (AREA)

Abstract

(57)【要約】 【目的】 表示画面上、裏の部分に当たるポリゴンの処
理を最小限に抑えることができる、疑似3次元画像合成
装置を提供すること。 【構成】 画像情報供給源10では、3次元表示物体の
各頂点座標を所定の投影面上に透視投影変換し、これを
複数のポリゴンからなる2次元画像に変換し、このポリ
ゴンの頂点座標が、ポリゴンの裏表情報に応じた順序で
出力される。フイールドプロセッサ回路12では、ポリ
ゴンを構成する輪郭線と水平走査線とが交叉する輪郭点
のX座標を、前記ポリゴンの各頂点を結ぶ各輪郭辺ごと
に演算し、これを第1の輪郭点と第2の輪郭点の輪郭点
ペアとして出力する。そして、この輪郭点ペアを基に画
像合成装置14、カラーパレット38にて画像情報を形
成する。この場合、フィールドプロセッサ回路12で
は、ポリゴンの各頂点座標の出力順序と、各輪郭辺の始
点と終点の頂点座標の増減と、第1、第2の輪郭点の座
標の増減とにより、ポリゴンの裏表を判別している。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は疑似3次元画像合成装置
に関する。
【0002】
【背景の技術】従来より、3次元画像を2次元的に画像
表示する疑似3次元画像合成装置が周知であり、例えば
3次元画像用のビデオゲーム,飛行機および各種乗り物
のシュミレータ,コンピュータグラフィックス,CAD
装置のディスプレイおよびその他の用途に幅広く用いら
れている。
【0003】本発明者は、このような疑似3次元画像合
成装置として、任意の形状の3次元物体を、後述するよ
う、複数のポリゴンの組み合わせ画像として合成表示す
る装置の開発研究を進めている。しかし、この装置によ
り画像表示する場合、これらの複数ポリゴンのうち、2
次元表示画面から見えないポリゴン、即ち裏のポリゴン
に当たるものは、処理する必要がない。従って、この裏
に当たるポリゴンをあらかじめ処理をする対象から外せ
ば、その後の処理時間、処理データ量が、理想的には約
1/2に低減されることとなり、特にリアルタイムに画
像合成を行う画像合成装置においては、ハードウエアの
負担を大幅に軽減させることができることとなる。
【0004】本発明は、このような課題に鑑みなされた
ものであり、その目的は、表示画面上、裏の部分に当た
るポリゴンの処理を最小限に抑えることができる、疑似
3次元画像合成装置を提供することにある。
【0005】
【課題を解決するための手段】前記目的を達成するため
に本発明に係る疑似3次元画像合成装置は、複数の頂点
座標の組み合わせとして構成される多面体として表現さ
れた3次元表示物体の各頂点座標を所定の投影面上に透
視投影変換し、前記3次元表示物体を投影された各頂点
で表される複数のポリゴンを組み合わせた2次元画像に
変換し、この各ポリゴンの各頂点座標が、各ポリゴンの
裏表情報に応じた順序で出力される画像情報供給手段
と、前記ポリゴンを構成する輪郭線と前記ラスタディス
プレイ用の水平走査線とが交叉する輪郭点のX座標を、
前記ポリゴンの各頂点を結ぶ各輪郭辺ごとに演算し、こ
れを第1の輪郭点と第2の輪郭点の輪郭点ペアとして出
力する輪郭点演算手段と、演算される各ポリゴンの輪郭
点ペアに基づき、前記複数のポリゴンを組み合わせ前記
2次元画像合成用の画像信号を出力する画像信号合成手
段と、を含み、前記輪郭点演算手段は、前記画像情報供
給手段から出力されるポリゴンの各頂点座標の出力順序
と、各輪郭辺の始点と終点におけるポリゴンの各頂点座
標の増減と、第1の輪郭点と第2の輪郭点の座標の増減
とにより、処理を行っているポリゴンが裏のポリゴンか
表のポリゴンであるかを判別し、裏のポリゴンである場
合は輪郭点ペアとして出力しないことを特徴とする。
【0006】
【作用】本発明によれば、前記画像情報供給源から出力
されるポリゴンの各頂点座標の出力順序と、各輪郭辺の
始点と終点におけるポリゴンの各頂点座標の増減と、第
1の輪郭点と第2の輪郭点の座標の増減とにより、処理
を行っているポリゴンが裏のポリゴンか表のポリゴンで
あるかを判別され、裏のポリゴンである場合は輪郭点ペ
アとして出力されない。従って、その後の演算処理にお
いて裏のポリゴンの処理を省くことができ、演算処理の
効率化を図ることができる。
【0007】
【実施例】
[実施例の目次] A.発明の概要説明 B:実施例 B1:画像情報供給源 *着眼点 *構成 *作用 *付随デ―タ *コミュニケ―ションメモリ B2:フィ―ルドプロセッサ回路 *多角形認識番号 B3:画像合成装置 (a)記憶回路 a−1.フィ―ルドメモリ *デ―タ書込順序 *ワ―ド構成 a−2.付随デ―タメモリ (b)ラインバッファ (c)ラインプロセッサ回路 *デ―タ読出し部 *デ―タ書込み部 *空き領域検出部 *塗り潰し動作の具体例 (d)本実施例と従来装置との比較 C:具体例 C1:第1の具体例 (a)仕様 (b)デュアルポ―トRAM (c)画像情報供給源 (d)フィ―ルドプロセッサ回路 *構成 *動作 (e)フィ―ルドメモリ (f)ラインバッファ (g)ラインプロセッサ回路 *輪郭点情報の読出し *塗り潰し処理 *塗り潰し動作の具体例 *空きピクセル *多角形の表示可能数 *デュアルポ―トRAM C2:第2の具体例 *完全不連続型 *半不連続型 [実施例]次に本発明の好適な実施例を図面に基づき説
明する。
【0008】A:概要説明 本発明は、外部から供給される各種の図形情報に基づ
き、CRT表示用の画像信号をリアルタイムで合成出力
可能な装置に関するものである。
【0009】第2図には、本発明を用いた疑似3次元画
像合成装置の好適な1例が示されており、実施例の装置
は、画像情報供給源10、フィ―ルドプロセッサ回路1
2及び画像合成装置14からなる。
【0010】前記画像情報供給源10は、3次元の立体
情報を扱い、これに回転、平行移動、透視投影等の各種
変換を施して、表示すべき3次元情報を2次元の図形の
組合せ情報に変換し、これを疑似3次元情報として出力
している。
【0011】この疑似3次元情報には、図形の形状、位
置、優先度等の他、例えばカラ―コ―ド、及びその他の
付随デ―タが含まれている。
【0012】前記フィ―ルドプロセッサ回路12は、こ
のようにして出力される疑似3次元情報に基づき、CR
T上に表示される各図形の輪郭を演算する。そして、各
多角形の輪郭点を、対応する付随デ―タとともに輪郭点
情報として順次出力している。
【0013】そして、画像合成装置14は、このように
して出力される輪郭点情報に基づき、CRT表示用の疑
似3次元画像信号をリアルタイムで演算出力する。
【0014】B:実施例 第1図には、前記疑似3次元画像合成装置を用いて形成
された飛行機用操縦シュミレ―タ装置の好適な1例が示
されている。
【0015】B1:画像情報供給源 本実施例において、画像情報供給源10は、飛行中にお
ける各種フライト条件のシュミレ―ション画像を演算
し、このシュミレ―ション画像を複数の図形の組合せ情
報として、コミュニケ―ションメモリ28を介してフィ
―ルドプロセッサ回路12へ向け出力している。 *着眼点 ところで、画像情報供給源10から出力される画像のリ
アリティを高めるためには、扱う情報量が多い程有利と
なる。
【0016】この反面、画像情報供給源10の高速化を
図るためには、扱う情報量が少い程有利となる。
【0017】従って、画像情報供給源10から出力され
る信号のリアリティを高め、しかもその高速化を可能と
するためには、少い情報量でよりリアリティのある画像
を得る信号処理を工夫する必要がある。
【0018】このためには、画像情報供給源10の出力
する疑似3次元情報から、有用性の低い情報を必要に応
じて順次削除すれば良い。本出願人は、このような観点
に立って、次の4つのポイントについての検討を行っ
た。ポイント1 3次元物体に関する情報の内、最も有用性の低い情報
は、物体の内部に関するものである。
【0019】これは、物体が半透明でない限り、その内
部は目に見えず無視することができるからである。
【0020】従って、3次元画像情報として扱うもの
は、物体表面に関する情報に限れば充分であることが理
解される。ポイント2 また、物体の表面細部における情報が損なわれることを
我慢すれば、物体の表面形状は、これを「平面図形」の
組合せから成る集合体と見なして簡略化することができ
る。
【0021】従って、物体表面の情報を、図形形状及び
色情報等から成る「平面図形」のみに限定すれば、扱う
情報量を更に少ないものとすることが可能となる。ポイント3 前記ポイント2で絞られた図形形状に関する情報を、更
に限定して、円、楕円、多角系等、なんらかの規則に従
って単純化された図形形状に限定することにより、扱う
情報を更に少ないものとすることが可能となる。ポイント4 前記ポイント3で単純化された図形形状としては、円、
楕円、多角形等が考えられる。しかし、このような複数
の図形形状を適宜選択使用すると、回路全体が複雑化す
るばかりでなく、「図形の種類の選択」という新な情報
が必要となる。
【0022】従って、このような組合せ表示に用いられ
る図形の種類は、円,楕円又は多角形のいずれか1種類
に限定することが好ましい。
【0023】このため、任意の図形の組合わせ表示とい
う観点にたって、これら各図形をそれぞれ検討してみる
と、フレキシビリティの点で多角形がもっとも有利であ
る。
【0024】実施例の画像情報供給源10は、このよう
な観点に基づいて形成されており、各3次元物体を複数
の多角形の組合せ情報として順次演算出力している。
【0025】このようにすることにより、実施例の画像
情報供給源10は、よりリアリティのある画像信号を合
成するために必要な情報を、高速で演算出力することが
可能となる。 *構成 以下、本実施例の画像情報供給源10の具体的な構成を
詳細に説明する。
【0026】実施例において、この画像情報供給源10
は、操作部20,メインCPU回路22,3次元情報メ
モリ24,3次元演算回路26を含む。
【0027】そして、前記操作部20は、実際の飛行機
の操縦席と全く同じに形成され、その操作内容は、スイ
ッチや可変抵抗器を介して電気信号に変換され、メイン
CPU回路22に向け出力されている。
【0028】メインCPU回路22は、シュミレ―タと
しての動作の中枢部をなすものであり、操作部20から
出力される信号に基づき、飛行機の飛行位置を表すデ―
タを演算し3次元演算回路26へ向け出力する。
【0029】また、このメインCPU回路22は、3次
元演算回路26から出力される各種の状況信号、例えば
「飛行機が他の物体に衝突した」、「飛行機が乱気流に
入った」、「飛行機が目的地に到達した」等の情報を受
け取り、これに応じた状況デ―タを演算し、3次元演算
回路26へ向け出力している。
【0030】また、前記3次元情報メモリ24には、あ
らゆる物体が多面体として表現され、この多面体の各頂
点を表す3次元座標デ―タと、多面体の各表面を各頂点
の繋がりとして表す多角形デ―タとが書込み記憶されて
いる。ここにおいて、前記各多面体デ―タは、固定座標
系を用いて表されている。
【0031】また、前記3次元演算回路26は、メイン
CPU回路22の演算する飛行機の現在位置に基づき、
3次元情報メモリ24に格納された各種多面体デ―タを
参照しながら、飛行機から見える光景を演算する。そし
て、その光景を図形情報の組合せとしてコミュニケ―シ
ョンメモリ28に向け出力している。 *作用 実施例において、このような多角形情報の演算は、次の
ような手順に従って行われる。
【0032】第3図に示すごとく、実施例の3次元演算
回路26は、飛行機を原点とした移動座標系を想定し、
図中右方向をX座標,下方向をY座標,前方向をz座標
に設定している。
【0033】そして、メインCPU回路22から、飛行
機の現在位置を表す移動座標が出力されると、この3次
元演算回路26は3次元情報メモリ24から所定の多面
体デ―タの読み出しを行う。
【0034】実施例において、3次元情報メモリ24に
書込まれた情報は、固定座標系を用いて表されているた
め、3次元演算回路26は、メモリ24から読出した情
報を移動座標系の座標デ―タに変換する必要がある。
【0035】この変換には、座標の回転と平行移動とい
う2つの演算要素の組合わせで実現することができ、こ
の変換の過程において、パイロットの視野に入らないこ
とが判明した情報(z<0等)が除去される。変換によ
り求められた状況デ―タは、メインCPU回路22へ向
け出力される。
【0036】そして、座標変換された各多面体情報は、
次に表示画面がz=0の平面上にあるとして、z<0の
視点に向って透視投影変換される。
【0037】このような透視投影変換により、前記各多
面体デ―タは、多面体の各頂点座標をX,Yの2次元に
変換した点情報の集まりとして表される。また、このよ
うな透視投影変換を行うにあたり、視点と多面体の各頂
点座標との距離を求めておく。
【0038】そして、前記透視投影変換により求められ
た2次元の点情報(多面体の頂点座標)を、多面体表面
を表す各多角形毎に分類し、分類した多角形がパイロッ
トの視野すなわち画面の視野に入るか否かをチェックす
る。
【0039】本実施例において、フィ―ルドプロセッサ
回路12及び画像合成装置14は、その受付け座標範囲
が、前記視野よりも幾分広く設定されている。
【0040】このため、3次元演算回路26は、得られ
る情報を多角形ごとにチェックし、視野に全く入らない
多角形は除去し、一部は視野に入るが残りは受付け座標
範囲を越えているような多角形は受付け座標範囲に入る
ように適当な変形を施している。
【0041】その後、この3次元演算回路26は、受付
け座標範囲に入る多角形に対し、視点からの距離の代表
値を決定する。
【0042】そして、前記代表値の小さい多角形から順
に、優先度の高い多角形情報としてコミュニケ―ション
メモリ28に向け出力する。 *付随デ―タ このとき、コミュニケ―ションメモリ28に向け出力さ
れる各多角形情報には、多角形の各頂点の2次元座標デ
―タ(X,Y)のみならず、付随デ―タが含まれる。
【0043】前記付随デ―タとしては、例えば多角形の
カラ―コ―ド、輝度情報や、他の画像との合成等に有用
なz軸座標値、等が考えられる。また、これ以外にも、
例えばこの多角形の傾きを付随デ―タとして与えておけ
ば、面の傾きと光の方向との関係で当該多角形の明るさ
をその後の演算処理により決定することも可能である。
【0044】なお、本実施例においては、説明を簡単に
するために、付随デ―タとしてカラ―コ―ドが出力され
るものとして以後の説明を行う。
【0045】以上説明したように、実施例の画像情報供
給源10は、パイロットの視野に入る情景を複数の多角
形情報の組合せに変換し、優先度の高い多角形情報から
順次コミュニケ―ションメモリ28へ向け出力すること
になる。 *コミュニケ―ションメモリ そして、前記コミュニケ―ションメモリ28は、画像情
報供給源10とフィ―ルドプロセッサ回路12とのイン
タ―フェ―スとして機能し、画像情報供給源10から出
力される多角形情報を、その優先度の高い順にフィ―ル
ドプロセッサ回路12へ向け出力している。
【0046】B2:フィ―ルドプロセッサ回路 フィ―ルドプロセッサ回路12は、輪郭点情報演算手段
として機能し、入力される多角形情報に基づき、CRT
上に表示される多角形の輪郭を演算出力する。
【0047】実施例において、前記画像情報供給源10
から優先度の高い順に出力される多角形情報は、CRT
のフィ―ルド走査(奇数フィ―ルドまたは偶数フィ―ル
ドヘの走査)に同期して更新される。
【0048】このため、実施例のフィ―ルドプロセッサ
回路12は、フィ―ルド走査時間を1周期として動作
し、この間に入力される多角形情報を優先度の高い順に
内部レジスタに格納する。
【0049】従って、画像情報供給源10から、例えば
第4図(A)に示すように、多角形A,B,Cを表す多
角形情報が順次出力される場合を想定すると、フィ―ル
ドプロセッサ回路12は、まず優先度の最も高い図形A
の各頂点a1,a2,a3,a4,を表すX,Y座標デ―タと、
当該図形の付随デ―タ(カラ―コ―ド)と、を図形Aの
多角形情報として読出し、これをその内部レジスタに格
納する。
【0050】そして、このようにして読出した多角形情
報に含まれる頂点座標デ―タに基づき、多角形Aの輪郭
線がCRTの各水平走査線と交差する輪郭点位置の演算
を行う。
【0051】ところで、ある1本の走査線と交鎖する図
形が存在する場合を想定すると、この走査線上には、図
形の輪郭点が必ず少くとも2個存在する(多角形の頂点
は除く)。この2つの輪郭点をその位置によって「左輪
郭点」と「右輪郭点」と定義し、両者合せて「輪郭点ペ
ア」と定義することにする。
【0052】通常、このような輪郭点ペアは、1個の図
形を考えてみると左右1組存在するのみであるが、特殊
な凹多角形等に関しては、複数組存在する場合もある。
【0053】実施例のフィ―ルドプロセッサ回路12
は、演算により求めた各輪郭点位置を、各走査線毎に輪
郭点ペアとしてまとめる。
【0054】そして、このようにして求めた各輪郭点ペ
アと、図形の付随デ―タとを含む輪郭点情報を画像合成
装置14へ向け出力する。
【0055】その後、フィ―ルドプロセッサ回路12
は、多角形B,Cに対しても同様にしてその輪郭点情報
を順次演算し、求めた輪郭点情報を画像合成装置14へ
向け出力する。
【0056】このようにして、本実施例のフィ―ルドプ
ロセッサ回路12からは、各多角形A,B,Cの各輪郭
点ペア及び付随デ―タから成る輪郭点情報がその優先度
の高い順に順次演算出力されることとなる。 *多角形認識番号 また、本実施例のフィ―ルドプロセッサ回路12は、後
述する記憶回路32内に付随デ―タメモリ44が設けら
れている場合には、各多角形A,B,Cに対応する多角
形認識番号を発生し、この認識番号を前記輪郭点ペア及
び付随デ―タとともに記憶回路32へ向け出力する必要
がある。
【0057】B3:画像合成装置 本発明の画像合成装置14は、このようにして優先度の
高い順に入力される各多角形A,B,Cの輪郭点情報に
基づき、CRT表示用の画像信号を合成出力している。
【0058】本発明において、この画像合成装置14
は、記憶回路32と、ラインプロセッサ回路34と、ラ
インバッファ36とを含む。 (a)記憶回路a−1.フィ―ルドメモリ 本実施例において、この記憶回路32は、輪郭点情報記
憶手段として機能し、通常、フィ―ルドメモリ42を用
いて形成されている。そして、CRTの1画面上に表示
される全ての多角形の輪郭点情報を記憶する。
【0059】第4図(B)には、このフィ―ルドメモリ
42の概念図が示されており、そのメモリ空間は、走査
線と1対1に対応するよう、1画面を構成する走査線の
本数と等しい数の水平走査記憶エリアに分割され、各記
憶エリアにはY座標に対応したアドレスが与えられてい
る。
【0060】従ってフィ―ルドプロセッサ回路12から
出力される各多角形A,B,Cの輪郭点情報は、そのY
座標に対応した水平走査記憶エリア内の空き領域に、順
次書込み記憶されることとなる。 *デ―タ書込順序 本実施例の装置は、この水平走査記憶エリアに対する輪
郭点情報の書込順序を用いて、各多角形A,B,Cの優
先度を表している。
【0061】すなわち、実施例のフィ―ルドプロセッサ
回路12は、優先度の高い多角形A,B,Cの順に輪郭
点情報を出力する。従って、実施例のフィ―ルドメモリ
42内の各水平走査記憶エリア内には、まず優先度の最
も高い多角形Aの輪郭点情報が書込まれ、これに続いて
多角形B,Cの順に輪郭点情報が順次書込まれることと
なる。
【0062】従って、例えばY=20で指定される水平
走査記憶エリアを例にとると、この記憶エリア内には、
アドレスの小さい順に多角形A,B,Cの各輪郭点情報
が書込まれることになる。 *ワ―ド構成 ところで、このようにして書込まれる各多角形の輪郭点
情報に着目してみると、これら各輪郭点情報は、左輪郭
点のX座標XL ,右輪郭点のX座標XR 及び多角形の付
随デ―タの3者からなる。
【0063】このような多角形情報の書込みは、各水平
走査記憶エリアのワ―ド構成をどのようにしても行える
が、実際的なワ―ド構成としては、次に述べる3つのも
のが考えられる。
【0064】1つの輪郭点情報の格納に1つのワ―ド
を用い、1つのワ―ド内に輪郭点情報を構成する左輪郭
点、右輪郭点及び付随デ―タの全てを格納する。
【0065】1つの輪郭点情報の格納に2つのワ―ド
を用いる。そして、左輪郭点及び右輪郭点をそれぞれ各
ワ―ドに割当て、付随デ―タもこれを2等分してそれぞ
れのワ―ドに割り当てる。
【0066】1つの輪郭点情報の格納に3つのワ―ド
を用いる。そして、左輪郭点、右輪郭点及び付随デ―タ
をそれぞれのワ―ドに格納する。
【0067】本実施例においては、前記いずれのワ―ド
構成を採用することも可能であるが、使用するワ―ド数
が少い程デ―タのアクセスが速くなることは言うまでも
ない。 また、前記〜のいずれのワ―ド構成を採用
するかによって、フィ―ルドプロセッサ回路12による
輪郭点情報の書込み方法が異なるものとなる。
【0068】まず、のワ―ド構成を採用した場合に
は、3つの書込み方法が考えられる。
【0069】まず第1の方法としては、1つの多角形の
輪郭点を演算する過程で、輪郭点ペアが求まった輪郭点
情報から順次書込んでいく方法がある。
【0070】この場合には、片方の輪郭点を一時記憶す
るためのメモリが必要である。そして、最初に求まった
輪郭点を一旦このメモリに記憶しておき、これと対をな
す他方の輪郭点が求まった時点で双方の輪郭点を輪郭点
ペアとして書込み記憶する。
【0071】第2の方法としては、リ―ド・モディファ
イ・ライト(読出し,修正,書戻し)を用いたものがあ
る。
【0072】この方法によれば、多角形の輪郭点演算過
程において、輪郭点ペアの一方の輪郭点が求まると、直
ちに付随デ―タとともにその書込みが行なわれる。そし
て、その後輪郭点ペアの他方の輪郭点が求まった時点
で、先に書込んだ輪郭点を読み出し、新に求めた輪郭点
とともにその書込みを再度行う。
【0073】なお、付随デ―タはこの時同時に書き込ん
でも良いし、他の時点で書き込んでもかまわない。
【0074】第3の方法は、1つの多角形の輪郭点を求
める手順そのものが先の2つの方法と異なる。最大点ま
たは最小点を起点として左右輪郭点を同時進行で求め、
付随デ―タとともに書き込みを行う方法である。この方
法では輪郭点を演算する回路がやや複雑になる。
【0075】なお、前記のワ―ド構成を採用した場
合には、フィ―ルドプロセッサ回路12は、1つの多角
形の輪郭点演算過程において輪郭点が求まるごとに直ち
にその書込みを行うこととなる。特に、のワ―ド構成
を採用した場合には、輪郭点とは別に付随デ―タのみを
該当するワ―ドに書込む必要がある。a−2.付随デ―タメモリ ところで、前記付随デ―タに着目してみると、この付随
デ―タは、前述したように、原則的にフィ―ルドメモリ
42内へ輪郭点ペアと1纏めにして書込み記憶される。
【0076】しかし、フィ―ルドメモリ42内における
付随デ―タの記憶構造は冗長であるため、付随デ―タの
ビット数が大きな場合には、専用の付随デ―タメモリ4
4を別途に設けることが好ましい。
【0077】この場合、フィ―ルドプロセッサ回路12
は、輪郭点情報として、輪郭点ペア及び付随デ―タの他
に、多角形認識番号を出力する。
【0078】そして、付随デ―タメモリ44内には、前
記多角形認識番号をアドレスとして付随デ―タが書込ま
れることになる。
【0079】一方、フィ―ルドメモリ42内には、付随
デ―タの代わりに多角形認識番号が書込まれることにな
る。
【0080】通常、付随デ―タは、例えば色情報、輝度
情報等のビット数が少ない簡単なものが多く、このよう
な場合には、前記付随デ―タメモリ44が必要とされる
ことは少い。
【0081】しかし、このような付随デ―タに、前記色
情報等に加えて、例えば多角形どうしを合成するために
用いるz軸座標値、及びその他の特殊機能に関連する情
報が含まれているような場合には、付随デ―タを構成す
るビット数が極めて多くなり、専用の付随デ―タメモリ
44が必要となるのである。 (b)ラインバッファ ラインバッファ36は、少くとも1水平走査分のピクセ
ル数に対応した付随デ―タ記憶エリアを有し、各記憶エ
リア内に輪郭点情報に含まれる付随デ―タが書込み記憶
可能に形成されている。
【0082】第5図(A)及び第6図(A)には、実施
例のラインバッファ36のフォ―マットが示されてい
る。
【0083】実施例のラインバッファ36は、後述する
ラインプロセッサ回路34が、水平走査信号に同期して
その垂直走査位置に対応する水平走査記憶エリアから各
輪郭点情報(付随デ―タ、左輪郭点位置XL,右輪郭点位
置XR )を読み出すと、各輪郭点情報に含まれる付随デ
―タを輪郭点ペア(XL,XR )により囲まれるアドレス
に順次書込み記憶するよう形成されている。
【0084】従って、例えば多角形A,B,Cの付随デ
―タがそれぞれ赤、青、黄色のカラ―コ―ドをそれぞれ
表すものである場合には、このラインバッファ36の所
定領域にはそれぞれ赤、青、黄色のカラ―コ―ドが書込
まれることになる。 (c)ラインプロセッサ回路 ラインプロセッサ回路34は、CRTの水平走査に同期
して、フィ―ルドメモリ42内の所定水平走査記憶エリ
アから、各多角形の輪郭点情報をその優先度の高い順
に、順次読出す。
【0085】そして、読出した輪郭点情報の左輪郭点位
置XL と右輪郭点位置XR とにより囲まれるラインバッ
ファ36内の記憶エリアに、その付随デ―タを順次書込
み記憶する。
【0086】本発明において、このラインプロセッサ回
路34は、デ―タ読出し部46と、デ―タ書込み部48
と、空き領域検出部50と、を含む。 *デ―タ読出し部 前記デ―タ読出し部46は、水平走査に同期して、その
垂直走査位置に対応する水平走査記憶エリアから各多角
形の輪郭点情報をその優先度に従ってって順次読出す。
【0087】例えば、第4図に示すY=20のラインを
水平走査する場合を想定すると、デ―タ読出し部46
は、フィ―ルドメモリ42内におけるY=20の水平走
査記憶エリアから、まず多角形Aの輪郭点情報を読出
し、次に多角形B,Cの順に輪郭点情報を順次読出す。 *デ―タ書込み部 そして、デ―タ書込み部48は、輪郭点情報が読出され
る毎に、この輪郭点ペア(XL,XR )によって囲まれる
ラインバッファ36の記憶エリアに、付随デ―タを順次
書込んでいく。
【0088】このとき、ラインバッファ36に対するデ
―タの書込み、すなわち付随デ―タの塗り潰し処理は、
輪郭点情報の読出し順位に従って行われるため、ライン
バッファ36内には、優先度の高い付随デ―タが先に書
込まれることとなる。
【0089】従って、このラインバッファ36上に、後
から書込む付随デ―タは、先に書かれた付随デ―タ上に
重ね書きされることがないよう、その空きエリア(以後
空きピクセルと記す)に対してのみ行う必要がある。 *空き領域検出部 しかし、このようなラインバッファ36内の空きピクセ
ル検出を、いわゆるリ―ド・モディファイ・ライトの手
法を用いて行っていたのでは、とても回路全体の高速化
を図ることができない。
【0090】そこで、本発明のラインプロセッサ回路3
4は、空き領域検出部50を用いて、水平走査中におけ
るラインバッファ36内の空きピクセルを高速で検出し
ている。
【0091】第5図(B)及び第6図(B)にはこの空
き領域検出部50のフォ―マットが示されており、この
検出部50は、ラインバッファ36内の対応するピクセ
ルが空きピクセルである場合には「0」にセットされ、
塗り潰しピクセルである場合には、「1」にセットされ
る。
【0092】そして、空き領域検出部50の検出する空
きピクセル情報に基づき、輪郭点情報が読出されるごと
に、前記デ―タ書込み部48は、その左輪郭点位置XL
及び右輪郭点位置XR によって囲まれるラインバッファ
36内の空きピクセルに付随デ―タを順次書込んでい
く。
【0093】これと同時に、空き領域検出部50は、前
記左輪郭点位置及び右輪郭点位置により囲まれた空きピ
クセル内に新な付随デ―タが書込まれたことを検出す
る。 *塗り潰し動作の具体例 従って、例えば第4図に示すY=20のラインを水平走
査し、このとき各多角形A,B,Cの輪郭点情報中に、
赤、青、黄のカラ―コ―ドが付随デ―タとしてそれぞれ
含まれている場合を想定すると、ラインプロセッサ回路
34は、フィ―ルドメモリ42内におけるY=20の水
平走査記憶エリアから、まず多角形Aの輪郭点情報を読
出す。
【0094】そして、第6図(A)に示すごとく、この
輪郭点情報に含まれる左輪郭点位置XLAと右輪郭点位置
XRAとにより囲まれたラインバッファ36のメモリ領域
を、まず赤のカラ―コ―ドで塗り潰していく。これと同
時に、第6図(B)に示すごとく、空き領域検出部50
は、左輪郭点位置XLA及び右輪郭点位置XRAにより囲ま
れた個所以外の領域をラインバッファ36内の現在の空
きピクセルとして検出する。
【0095】このようにして多角形Aの塗り潰し処理が
終了すると、次に、フィ―ルドプロセッサ回路34は、
次に優先度の高い多角形Bの輪郭点情報を同様にして読
出し、その輪郭点情報に含まれる左輪郭点及び右輪郭点
位置XLB, XRBにより囲まれるメモリ領域を、第5図
(A)に示すごとく、青のカラ―コ―ドで塗り潰してい
く。
【0096】このとき、ラインプロセッサ回路34は、
ラインバッファ36内に既に書込まれた赤のカラ―コ―
ド上に重ね書きされないように、空き領域検出部50の
検出する空きピクセル(第6図(B))に対してのみ行
われる。
【0097】そして、空き領域検出部36は、同様にし
てこのような書込み動作に基づき第5図(B)に示すよ
うにラインバッファ36内の新な空きピクセル領域をリ
アルタイムで検出する。
【0098】そして、多角形Bの塗り潰し処理が終了す
ると、次に多角形Cの塗り潰し処理が同様にして行われ
る。
【0099】このようにして、本実施例のラインプロセ
ッサ回路34は、ラインバッファ36を用いて1水平走
査分の画像信号を合成する。
【0100】そして、このようにしてラインバッファ3
6内に合成された水平走査用の画像信号は、CRTの水
平走査に同期してカラ―パレットメモリ38に入力さ
れ、ここでカラ―コ―ドに基づいた具体的なカラ―信号
に変換され、CRT40へ向け出力される。
【0101】実施例のラインプロセッサ回路34は、こ
のようなラインバッファ36に対する画像信号の合成書
込み及び出力を、CRTの水平走査に同期して繰返して
行うため、CRT40上には、画像情報供給源10から
出力されるシュミレ―ション画像が、多角形の組合せ情
報として良好に表示されることになる。 (d)本実施例と従来装置との比較 本実施例の装置では、いわゆる付随デ―タのリ―ド・
モディファイ・ライトという作業が不要となる。
【0102】すなわち、ビットマップ・ディスプレイの
方式を用いた画像合成装置では、ビットマップメモリ内
に画像の輪郭線を設定し、その後この輪郭線内を所望の
付随デ―タで塗り潰していくといういわゆる「塗り潰し
作業」が必要となる。
【0103】しかし、従来装置を用い、このような塗り
潰し処理を、優先度の高い図形から順に行っていく場合
を想定すると、先に書き込まれた優先度の高い情報を、
後から書き込む優先度の低い情報で消去することがない
よう、いわゆるリ―ド・モディファイ・ライトという時
間のかかる作業をその都度行う必要があり、画像合成を
短時間で行うことができない。
【0104】特に、このようなリ―ド・モディファイ・
ライトの処理を行うと、前記塗り潰し作業が画像の変化
に対し追従できない場合が多く、動きの速い動画等のリ
アルタイム表示を得ることができないという問題があっ
た。
【0105】また、このような塗り潰し作業は、使用す
るバスラインを大容量のものとすることにより、高速で
行うことも可能である。しかし、このようにすると、扱
う情報量に比し、バスライン及びその他の部材の容量が
大きくなり過ぎ、装置全体が大型でかつ高価なものとな
ってしまうという問題が発生する。
【0106】これに対し、実施例の画像合成装置は、空
き領域検出部50を用いて、ラインバッファ36内の空
きエリアを検出し、付随デ―タの塗り潰しを行ってい
る。このため、従来装置のように、付随デ―タの塗り潰
し処理を行う際、リ―ド・モディファイ・ライトという
時間のかかる作業を全く行う必要がなく、画像合成を高
速で行うことが可能となる。
【0107】特に、付随デ―タのリ―ド・モディファイ
・ライト行わない場合には、画像合成を行う際のデ―タ
演算量が極めて少くてすむ。従って、バスラインの容量
を大きくすることなく、画像信号の合成をリアルタイム
で行うことが可能となる。 本実施例の装置では、使用するメモリの容量を少なく
することができる。
【0108】すなわち、従来装置では、少くとも1画面
分の全ピクセル数に対応した付随デ―タを記憶するビッ
トマップメモリを必要とした。
【0109】しかし、本実施例の装置では、ビットマッ
プメモリにかわり、1画面分の画像情報の記憶用にフィ
―ルドメモリを用い、塗りつぶし作業用にラインバッフ
ァを用いて、役割の分担を行っている。
【0110】フィ―ルドメモリは、ピクセルとの対応関
係はないため、ビットマップメモリより小さな容量で済
む。一方、ラインバッファはピクセルとの対応関係はあ
るが、その容量は走査線の1乃至2本分でよい。
【0111】従って、メモリの総容量をビットマップメ
モリより小さくすることが可能となる。 本実施例の装置は、優先度の高い画像の脱落を伴うこ
となく、画像信号を良好に合成出力するととができる。
【0112】すなわち、リ―ド・モディファイ・ライト
を用いない装置として、従来より優先度の低い図形から
順に塗潰し処理する装置が知られている。
【0113】このような従来装置では、なんらかの原因
でデ―タの書込み時間が不足すると、最も優先度の高い
図形をメモリヘ書込むことができず、この結果CRT画
面上には優先度の低い図形のみが表示され、優先度の高
い図形が欠落してしまう場合があるという重大な欠点が
あった。
【0114】これに対し、本実施例の装置では、フィ―
ルドメモリ42内の各水平走査記憶エリア内に多角形
A,B,Cの輪郭点情報をその優先度の高い順に順次書
込み記憶し、このようにして書込まれた各輪郭点情報
を、ラインプロセッサ回路34を用いて優先度の高い順
に順次読出すよう形成されている。
【0115】従って、なんらかの原因でデ―タの書込み
読出し時間が不足した場合でも、最も優先度の高い図形
の脱落を伴なうことなく、画像信号を良好に合成出力す
ることができる。 本実施例の装置は、リアリティの高い疑似3次元画像
をリアルタイムで合成出力することができる。
【0116】すなわち、本実施例の装置は、疑似3次元
画像を表示するために、3次元物体の表面形状を、複数
の多角形の集合体として取扱っている。
【0117】従って、本実施例によれば、前述したよう
に、少い情報、メモリ容量でよりリアリティの高い疑似
3次元画像をリアルタイムで合成出力することが可能と
なる。
【0118】C:具体例 次に、本発明の装置の具体的な実施例を詳細に説明す
る。
【0119】C1:第1の具体例 実施例の装置は、次のような仕様に基づき水平走査線1
本辺り64個の多角形を表示できるように形成されてい
る。 (a)仕様 (イ)CRT(インタ―レ―ス) ピクセル数 576 ×448 個 (576 ×224 個/ フィ―ルド) 走査線数 525 本 (262.5 本/ フィ―ルド) 垂直同期周波数 60.015Hz (垂直周期16.663ms) 水平同期周波数 15.754KHz (水平周期63.477μs) ドットクロック周波数 12.288MHz (ロ)多角形表示個数(1画面) 1.024 個 (ハ)多角形表示個数(水平) 64個 (ニ)入力情報の座標範囲 0 ≦X≦ 4095 ,0 ≦Y≦ 2047 (ホ)表示座標範囲 2048 ≦X≦2623, 1024 ≦Y≦ 1471 (回路上 0 ≦X≦575 ,0 ≦Y≦447 とみなしている。) (b)デュアルポ―トRAM また、本実施例の装置の各メモリ、例えばコミュニケ―
ションメモリ28,フィ―ルドメモリ42,ラインバッ
ファ36には、前段のプロセッサによるデ―タの書込み
と、後段のプロセッサによるデ―タの読出しとが独立で
行われる、いわゆるデュアルポ―トRAMを用いること
が好ましい。
【0120】本実施例において用いられているこれらデ
ュアルポ―トRAMは、それぞれ書込み及び読出し作業
に必要とする容量の2倍の記憶容量を有し、そのメモリ
空間が2つの記憶エリアに2等分されている。
【0121】そして、このように2等分された各記憶エ
リアは、前段のプロセッサ及び後段のプロセッサにより
一定周期で交互にアクセスされるように形成されてい
る。
【0122】従って、このデュアルポ―トRAMは、そ
の一方の記憶エリアにデ―タの書込みが行われている場
合には、他方の記憶エリアからは書込まれたデ―タの読
出しが行われており、また一方の記憶エリアからデ―タ
の読出しが行われている場合は、他方の記憶エリアに新
なデ―タの書込みが行われることとなる。
【0123】第1表には、記憶エリアの切換周期が、各
メモリ毎に示されている。
【表1】 (c)画像情報供給源 本実施例において、画像情報供給源10はCRTのフィ
―ルド走査に同期して、優先度の高い順に多角形情報を
順次出力している。
【0124】例えば第4図(A)に示す画像をCRT上
に表示する場合、多角形情報は、その優先度に従って図
形A,B,Cの順に順次出力される。
【0125】このようにして出力される各多角形情報に
は、その付随デ―タと、多角形の各頂点座標デ―タ
(X,Y)が含まれている。
【0126】実施例において、前記付随デ―タは、多角
形の表示色を表すカラ―コ―ドから成るものとする。こ
のカラ―コ―ドは、前記カラ―パレットメモリ38のカ
ラ―信号読出しアドレスとして機能するものである。
【0127】また、前記各多角形の頂点座標デ―タは、
第7図(A)に示すよう、多角形の輪郭に沿ってa1 ,
a2 ,a3 ,a4 の順に、反時計回りに出力する必要が
ある。
【0128】これは、後述するように、フィ―ルドプロ
セッサ回路12に裏返し多角形を除去する機能を発揮さ
せるためである。
【0129】このようにして、コミュニケ―ションメモ
リ28内には、第7図(B),(C)に示すように、多
角形A,B,Cの多角形情報がその優先順位に従って書
込まれることになる。 (d)フィ―ルドプロセッサ回路 第8図には、本実施例のフィ―ルドプロセッサ回路12
の具体的な構成が示されている。構成 実施例のフィ―ルドプロセッサ回路12は、前処理回路
52,除算回路54,線分回路56,輪郭点バッファ5
8,輪郭点カウンタ60を含む。
【0130】前記前処理回路52は、コミュニケ―ショ
ンメモリ28内に例えば第7図(C)に示すように書込
まれた多角形情報を、その優先度に従って多角形A,
B,Cの順に順次読出す。
【0131】そして、読出された多角形情報を、多角形
を構成する各辺の情報に整理して線分回路56へ向け出
力する。この時、除算回路54は、多角形の各辺の傾き
を演算するために用いられる。
【0132】また、線分回路56は、前処理回路52か
ら入力されるデ―タに基づき、最初に優先度の一番高い
多角形Aの輪郭点ペア群を演算し、次に多角形B,Cの
順に輪郭点ペア群をそれぞれ演算する。
【0133】そして、演算した輪郭点ペアをカラ―コ―
ドとともに輪郭点情報としてフィ―ルドメモリ42へ順
次書込んでいく。
【0134】ここにおいて、前記輪郭点バッファ58
は、輪郭点ペアを得るために、先に求まった輪郭点を一
時的に記憶しておくために用いられる。
【0135】また、前記輪郭点カウンタ60は、各水平
走査線毎の輪郭点の数をカウントするレジスタ―群とし
て用いられる。
【0136】従って、この輪郭点カウンタ60は、この
カウント値を2で割ると、1水平走査線上に表示される
輪郭点ペアのカウンタとみなすことができる。これは、
フィ―ルドメモリ42の個々の水平走査記憶エリアに対
する書込みポインタ―に他ならない。
【0137】また、そのカウント値の最下位ビットは、
左輪郭点及び右輪郭点からなる輪郭点ペアが完成した
か、それとも輪郭点ペアの片割れしかできていないのか
を示すフラグとして使うことができる。動作 第9図〜第13図には、前記フィ―ルドプロセッサ回路
12のフロ―チャ―トが示されている。
【0138】このフロ―チャ―ト中には、次のような各
種の変数が用いられており、大文字の変数の多くは実在
するレジスタを表し、小文字の変数はバスライン上に現
れる数値を表している。 X,Y:多角形情報に含まれる各頂点のX,Y座標値。 X0 ,Y0 :多角形の最初の頂点座標値。 X1,1 :辺の始点(有向線分としての)座標値 X2,2 :辺の終点(有向線分としての)座標値 Q(Quotient):除算結果,商。すなわち辺の勾配 X,Y:輪郭点の座標値 YE(Y End):辺のプロット終了点のY座標値 XV(X Visible) :表示画面上における輪郭点のX
座標値 BR(Buffer):走査線番号Rに対応する輪郭点バッフ
ァ。 CR(Counter):走査線番号Rに対応する輪郭点カウン
タ。
【0139】まず第9図には、フィ―ルドプロセッサ回
路 12の全動作を表すフロ―チャ―トが示されてお
り、このフィ―ルドプロセッサ回路12は、新たなフィ
―ルド走査が行われる度に所定のフィ―ルド処理動作を
くりかえして行う。
【0140】第10図には、第9図に示すフィ―ルド処
理動作が示されている。
【0141】実施例の装置は、まず新なフィ―ルド走査
が開始されると同時に、224本の各水平走査線に対応
して設定されたカウンタ60のカウント値C0,C1,C2,
…C223 を0にクリアする。
【0142】そして、コミュニケ―ションメモリ28か
ら優先順位の高い順に多角形情報を1つずつ読み出し、
所定の多角形の処理動作を行う。
【0143】すなわち、実施例の装置は、読出しは多角
形情報に基づき、当該多角形の全輪郭点ペアを演算す
る。そして、各輪郭点ペアをカラ―コ―ドと組合せ、輪
郭点情報としてフィ―ルドメモリ42内へ書き込み記憶
する。
【0144】例えば、コミュニケ―ションメモリ28内
に、第7図(C)に示すような多角形情報が格納されて
いる場合を想定すると、まず多角形Aに対して前述した
処理を行い、この処理が完了した時点で、次に多角形
B,多角形Cに対し順次同様の処理を行う。
【0145】そして、全多角形についての処理が終了し
た時点で、第4図(B)において斜線で示すように、フ
ィ―ルドメモリ42内の各水平走査記憶エリアに終了コ
―ドを書込む。具体的には、P=0,1,2,…223
及びカウンタ60のカウントC0,C1,C2,C223 の組合
せをアドレスとして、前記終了コ―ドの書込みを行う。
【0146】第11図には、第10図に示す1つの多角
形の処理動作についてのフロ―チャ―トが示されてい
る。
【0147】実施例において、例えば多角形Aについて
の処理動作が開始されると、この多角形Aの最初の頂点
a1 のX,Y座標を読出し、次に頂点a2 のX,Y座標
を読出す。
【0148】ここにおいて、X0,Y0,X1,Y1,X2,Y2
はそれぞれ実際のレジスタを用いて設定され、X2 又は
Y2 に値をセットすると、自動的にその元の値がそれぞ
れX1 とY1 にセットされるように形成されている。な
お、この時X1,Y1 の元の値は自動的に消滅することと
なる。
【0149】このようにして、頂点座標a1 とa2 のX
Y座標が読出されると、この読出し情報に基づき1つの
辺a1,a2 の処理動作が行われる。
【0150】このような動作を多角形の各辺a1 a2,a
2 a3,a3 a4,a4 a1 について順次行う。
【0151】なお、第11図には示していないが付随デ
ータ(カラーコード)もX,Y座標と同様に読出され、
専用のレジスタにセットされる。
【0152】第12図には、第11図に示す1つの辺の
処理動作が示されている。
【0153】まず、実施例の装置は、対象となる辺の両
端Y座標が一致しているか否かの判断を行う(ステップ
120)。そして、両端のY座標が一致している場合に
は、この辺をプロットする必要がないものと判断しこの
辺に対する処理動作を中止する。 つぎに、実施例の装
置は、対象となる辺のY座標が、全ての点で画面外であ
るか否かの判断を行う(ステップ121,122)。
【0154】そして、対象となる辺が、受付座標範囲内
であっても、その辺を構成する全ての点でそのY座標が
画面の外であるならば、この辺をプロットする必要がな
いものと判断し、この辺に対する処理動作を終了する
(クリッピングの第1段階)。
【0155】次に、実施例の装置は、対象とする辺の傾
きQを演算する(ステップ123)。
【0156】この時、辺の傾きは、実際には整数部と余
りの2つに分けて求められるが、第12図においては、
アルゴリズムの説明を簡単にするために、傾きQを実数
とみなしている。
【0157】このようにすることにより、対象とする辺
を表す式が次のようにして設定される。
【数1】 次に、対象とする辺のどの端から輪郭点の演算を開始す
るかを決定する(ステップ124)。このため、まず辺
の両端のY座標,Y1,Y2 のどちらかが大きいかを判断
し、輪郭点の演算がかならずY座標の増加方向に行われ
るよう、輪郭点の演算開始点を初期設定する。
【0158】次に、対象とする辺が各水平走査線と交差
する点、すなわち輪郭点のX座標の演算を、その演算開
始端から演算終了端に向けて順次行う。
【0159】例えば第4図(A)に示す辺a1,a2 を例
にとると、まずこの辺a1,a2 とY=6の水平走査線と
交差するX座標が求められる(ステップ125)。次
に、Y=8,Y=10の水平走査線と交差する輪郭点が
順次求められる。
【0160】そして、水平走査線のY座標が、測定終了
端として設定されたY座標YEとなった時点で、この辺
a1 a2 に対する輪郭点演算動作を終了する(ステップ
126)。
【0161】なお、対象となる辺a1 a2 と交差するY
座標が、画面の外側にある場合には輪郭点を求める必要
がないため、その位置における輪郭点の演算動作が行わ
れない(クリッピングの第2段階)(ステップ127,
128)。
【0162】また、本実施例では、偶数フィ―ルドと奇
数フィ―ルドの走査が交互に行われている。
【0163】従って、実施例の装置では、今行われてい
る走査が偶数フィ―ルドか奇数フィ―ルドかを判断し、
偶数フィ―ルドの場合には、偶数の水平走査線(Y=
0,2,4,…)と交差する輪郭点のみを演算し、奇数
フィ―ルドの場合には奇数の水平走査線(Y=1,3,
5,…)と交差する輪郭点のみを演算するように動作す
る(ステップ129)。
【0164】第13図には、第12図に示す輪郭点の処
理動作(ステップ125)が示されている。
【0165】実施例の装置は、まずCRT画面の左側上
隅を原点とした新なXV座標を求める(ステップ13
0)。この新なXV座標は本来のX座標から2048を
差し引いた値である。
【0166】また、本来のX座標が画面の外にあるなら
ば、これを画面の両端に表示するようにXV=0,XV
=575にそれぞれ設定してやる(クリッピングの第3
段階)。
【0167】このようにして求めた新なXV座標自体
が、実施例のフィ―ルドプロセッサ回路12が演算する
輪郭点のX座標となる。
【0168】そして、このようにして輪郭点が求まる
と、次にこの輪郭点を書込むアドレスR を演算する(ス
テップ131)。ここにおいて、関数int(X)は、
Xを越えない最大の整数を表し、また、(y−102
4)は、画面の左上隅を原点とする新なY座標を表して
いる。
【0169】カウンタ54のカウント値CR が偶数であ
る場合には、輪郭点ペアの片方のみが求められている状
態である。このため、求めた輪郭点を次に他方の輪郭点
が求まるまでBR としてバッファ52内へ一時記憶して
おき、カウンタ54のカウント値CR をインクリメント
する(ステップ134)。
【0170】CR が奇数の場合は、両輪郭点が出揃った
状態である。この場合、前記アドレスRで指定されるに
従いフィールドメモリ42内の水平走査記憶エリアに前
記輪郭点XVを格納する。この時、すでに求まっている
輪郭点BRおよび専用レジスタに記憶された付随データ
も、同時に水平走査記憶エリアに格納される。そして、
当該エリアに対応して設けられたカウンタ54のカウン
ト値CR をインクリメントする(ステップ132,13
3)。
【0171】また、本実施例の装置は、3次元の立体画
像を2次元上に疑似3次元画像として表示するものであ
る。
【0172】ところで、画像情報供給源10から出力さ
れる、立体表面側の多角形情報は、反時計回りにその頂
点座標が与えられている。しかし、これとは逆に、立体
の裏面側に位置する多角形は、時計回りに頂点座標が与
えられた裏がえしの多角形情報として出力される。
【0173】このため、実施例の装置は、Y座標の増減
と、輪郭点の大小とを組合せて比較し、裏返しの多角形
情報の除去を行っている(ステップ135)。この様子
を図21を用いてさらに詳しくのべる。
【0174】既に1つの辺の処理のステップ124にお
いて、Y1とY2を比較し、演算開始点を決定している
が、ここで再びY1とY2の大小関係による処理の分岐
が発生する。これは同じ比較動作を繰り返しているので
はなく、ハードウェア的には、ステップ124において
比較結果を1ビットのフラグとして保持しており、この
フラグによってステップ135の分岐が起こるので、冗
長な処理ではない。
【0175】Y1とY2は、画像情報供給源10から出
力された順序で、Y1が先、Y2が後である(Y1が最
終頂点の場合は、例外的にY2が最初の頂点となる)。
頂点の順序は反時計回りであるから、もしY1<Y2な
らば、図21(a)に示すように、現在求めた輪郭点X
Vは左輪郭点であり、過去に求めたBRは右輪郭点であ
ったことになる。このときXV<BRならばこの多角形
は「表」であり、さもなくば図21(b)に示すよう
に、「裏返し」である。逆にもしY1≧Y2ならば、図
21(c)に示すように、XVは右輪郭点、BRは左輪
郭点である。このときXV>BRならばこの多角形は
「表」であり、さもなくば図21(d)に示すように、
「裏返し」である。このようにして、Y座標の増減と、
輪郭点の大小とから、裏返しの多角形を判別できる。
【0176】多角形が裏返しと判断された場合、現在求
めつつある輪郭点ペアを無効化しなくてはならない。こ
のためには、既に求まっているのは輪郭点ペアの片方B
Rのみであるから、これを無効化するために、カウンタ
60のカウント値CRをデクリメントすればよい。
【0177】なお、本実施例において、前処理回路46
及び除算回路48が、第9図〜第11図に示す全ての動
作及び第12図のステップ129,127,125を除
く全ての部分の動作を扱い、線分回路50,輪郭点バッ
ファ52及び輪郭点カウンタ54が、第12図のステッ
プ129,127,125の動作及び第13図に示す全
ての動作を扱っている。
【0178】また、前記フロ―チャ―トにおいては、説
明を簡単にするために直列処理を行う場合を例にとり説
明しているが、必要に応じて並列処理、パイプライン処
理を導入して高速化を図ることも可能である。 (e)フィ―ルドメモリ 本実施例において、記憶回路32は、フィ―ルドメモリ
42のみからなり、付随デ―タメモリ44は設けられて
いない。これは、とりあつかわれる付随デ―タが、前述
したようにカラ―コ―ドという比較的ビット数の少ない
デ―タだからである。
【0179】このフィ―ルドメモリ42は、1フィ―ル
ド内に表される全多角形の輪郭点情報を記憶するもので
あり、実施例においては、28ビット×215(32K)
ワ―ドのRAMで構成されている。
【0180】なお、このフィ―ルドメモリ42は、前述
したように、デュアルポ―トRAMとして実際の作業エ
リアの倍の容量を有するよう形成されている。このた
め、1つの作業エリアには、全容量の半分、すなわち2
8ビット×214(16k)ワ―ドの容量がある。
【0181】また、本実施例においてCRTは飛越し走
査によって偶数フィ―ルドと奇数フィ―ルドとを交互に
表示している。このため、このフィ―ルドメモリ42の
メモリ空間は、第4図(B)に示すように、偶数フィ―
ルドの各走査線(Y=0,2,4,…)又は奇数フィ―ルドの
各走査線(Y=1,3,5,…)にそれぞれ1対1に対応した
ブロックに分割されている。
【0182】ここにおいて、前記仕様のところで説明し
たとおり、1フレ―ム画面を構成するY座標は回路構成
上448本であるため、奇数フィ―ルド又は偶数フィ―
ルド中の走査線数は224本である。また、1本の水平
走査線上に表示される多角形の最大個数は64個であ
る。
【0183】従って、1ワ―ド中に1個の輪郭点情報
(輪郭点ペアとカラ―コ―ドからなる。)を格納する場
合を想定すると、実施例のフィ―ルドメモリ42におい
て実際に使用されている作業エリアは、 28ビット×14336 (=64×224 )ワ―ドとなる。
【0184】第14図には、このフィ―ルドメモリ42
内に書込まれる輪郭点情報のフォ―マットが示されてい
る。各輪郭点情報は、8 ビットのカラ―コ―ドと、10ビ
ットの左輪郭点X座標XL と、10ビットの右輪郭点X座
標XR と、を含む合計28ビットのデ―タからなる。
【0185】そして、フィ―ルドプロセッサ回路12か
ら順次出力される各輪郭点情報は、この輪郭点情報に含
まれるY座標によって指定される水平走査記憶エリア
に、その優先順位に従って、アドレスの若い方から順に
書込まれ、この記憶エリアの末尾には終了コ―ドが書込
まれる。
【0186】但し、水平走査記憶エリア内が64個の輪
郭点情報で埋め尽された場合には、終了コ―ドの書込は
行われない。
【0187】また、実施例のフィ―ルドメモリ42は、
第15図に示すごとく、3MHzのクロックに従いデ―タ
の書込み及び読出しが制御されている。すなわち、フィ
―ルドプロセッサ回路12から出力されるデ―タのクロ
ックがHレベルのときに書込まれ、書込まれたデ―タの
読出しはクロックがLレベルの時に行われている。
【0188】なお、フィ―ルドメモリはビデオ画面全体
でなく、画面半分あるいは一部のみを記憶するようにし
ても良い。 (f)ラインバッファ 第5図(A)及び第6図(A)には、ラインバッファ3
6のフォ―マットが示されている。このラインバッファ
36は、1本の走査線を構成する各ピクセルに対応して
0から575のアドレスを有し、各アドレスには付随デ
―タ記憶用に8ビットの記憶エリアが割り当てられてい
る。
【0189】実施例において、このラインバッファ36
は、8ビット×576ワ―ドのメモリ容量の記憶エリア
を2個有するデュアルポ―トRAMを用いて形成されて
いる。
【0190】そして、フィ―ルドメモリ42から輪郭点
情報が読み出される度に、その左輪郭点XL 及び右輪郭
点XR によって囲まれる記憶エリアは、その付随デ―タ
によって塗り潰し処理される。
【0191】実施例の装置は、この塗り潰し処理を後述
するようラインバッファ36の空きエリアに対してのみ
行うよう形成されている。 (g)ラインプロセッサ回路 第16図には、本実施例のラインプロセッサ回路34の
詳細な構成が示されている。
【0192】ラインプロセッサ回路34は、CRTの水
平走査に同期して、フィ―ルドメモリ42内の所定水平
走査記憶エリアから多角形の輪郭点情報を読出し、ライ
ンバッファ36を介して水平走査用の画像信号を合成出
力している。 *輪郭点情報の読出し 実施例において、このラインプロセッサ回路34は、C
RTの水平走査に同期して該当する走査ラインの選択信
号を出力するラインカウンタ70と、0番から順に優先
度番号を発生する優先度番号カウンタ72と、を含み、
これら各カウンタの出力を読出しアドレスとしてフィ―
ルドメモリ42へ向け出力する。
【0193】ここにおいて、前記ラインカウンタ70及
び優先度番号カウンタ72の出力は、制御回路74から
フィ―ルド走査開始パルス及び水平走査開始パルスが出
力される毎にそれぞれクリアされる。
【0194】この結果、ラインカウンタ72の出力する
選択信号(Y座標デ―タ)により指定された水平走査記
憶エリアから、輪郭点情報がその優先度の高い順に順次
読み出されることになる。
【0195】この時、読出された各輪郭点情報に含まれ
る左輪郭点位置XL ,右輪郭点位置xR ,カラ―コ―ド
はそれぞれラッチ回路76に一旦ラッチされる。 *塗り潰し処理 そして、ラッチ回路76内に輪郭点情報がラッチされる
ごとに、その左輪郭点位置XL と右輪郭点位置xR とに
より囲まれるラインバッファ36のメモリエリアは、付
随デ―タで塗り潰されていく。
【0196】実施例のラインプロセッサ回路は、このよ
うな塗り潰し処理が終了する度に、新たな多角形の輪郭
点情報を読出し、ラインバッファ36に対して同様な塗
り潰し処理を行う。
【0197】従って、例えば第4図に示すY=20の水
平走査記憶エリアから輪郭点情報を順次読出す場合を想
定すると、ラインバッファ36は、多角形A,B,Cの
付随デ―タで順次塗り潰し処理されることとなる。
【0198】このとき、ラインバッファ36に対する塗
り潰しは、輪郭点情報の読出し順位に従って行われるた
め、ラインバッファ36上には、優先度の高い付随デ―
タが先に書込まれることになる。
【0199】従って、このラインバッファ36上に後か
ら書込む付随デ―タは、先に書かれた付随デ―タ上に重
ね書きされることがないよう、空きピクセルに対しての
み行う必要がある。
【0200】しかし、前述したように、ラインバッファ
36内の空きピクセル検出を、いわゆるリ―ド・モディ
ファイ・ライトの手法を用いて行ったのでは、とても回
路全体の高速化を図ることができない。
【0201】本発明の特徴的事項は、ラインバッファ3
6に対しリ―ド・モディファイ・ライトを行うことな
く、ラインバッファ36に対する付随デ―タの塗り潰し
処理を行うことにある。
【0202】このため、実施例の装置には、空き検出/
デ―タ書込み回路78が設けられている。そして、ライ
ンバッファ36内の空きピクセルをリアルタイム検出
し、ラッチ回路76に輪郭点情報がラッチされるごと
に、その輪郭点ペアによって囲まれるラインバッファ3
6内の空きピクセルに、付随デ―タの書込みを行ってい
る。
【0203】実施例において、この回路78は、フリッ
プフロップ群80,プライオリティエンコ―ダ82,ラ
ッチ回路84,デコ―ダ86,比較回路88,オアゲ―
ト90を含む。
【0204】前記フリップフロップ群80は、1本の水
平走査線上の全ピクセルと1対1に対応する576個の
フリップフロップからなる。
【0205】第5図(B)及び第6図(B)には、前記
フリップフロップ群80のフォ―マットが示されてお
り、前記576個のフリップフロップには、1本の走査
線を構成するピクセルに対応して0〜575のアドレス
が割り当てられている。
【0206】各フリップフロップは、対応するピクセル
が空きピクセルである場合には「0」にセットされ、塗
り潰しピクセルである場合には「1」にセットされる。
そして、各フリップフロップの出力はそれぞれプライオ
リティエンコ―ダ82へ向け出力される。
【0207】プライオリティエンコ―ダ82は、このよ
うにしてフリップフロップ群80から出力される576
個の空きピクセル情報と、ラッチ回路76から出力され
る多角形の左輪郭点X座標(XL)とを照合する。
【0208】そして、空ピクセルの中から、そのX座標
が左輪郭点X座標(XL)以上で、かつ最も小さいものを
高速で検出し、この検出結果を「次に書込みを行うべき
ピクセルのX座標」として出力する。そして、このX座
標値は、ラッチ回路84を介してラインバッファ36に
向け「書込みアドレス」として出力される。
【0209】この結果、この書込みアドレスで指定され
るラインバッファ36の空きピクセルには、ラッチ回路
76にラッチされている多角形の付随デ―タが書込まれ
ることになる。
【0210】これと同時に、プライオリティエンコ―ダ
82の出力は、ラッチ回路84を介してデコ―ダ86に
フィ―ドバックされる。そして、このX座標値により指
定されるフリップフロップは、空きピクセル表示状態
「0」から、ピクセル塗り潰し状態「1」にセットされ
る。
【0211】このようにして、実施例の装置では、ライ
ンバッファ36とフリップフロップ群80とが連動して
動作し、この結果、ラインバッファ36内において左輪
郭点XL及び右輪郭点XRに挟まれた空きピクセルは新
たな付随デ―タによって塗り潰し処理されることにな
る。
【0212】そして、1組の輪郭点(XL,XR )により
囲まれた領域に対する塗り潰しは、次のような場合に終
了する。 まず、左輪郭点より右に「空きピクセル」が1つもな
くなった場合に終了する。
【0213】この場合には、プライオリティエンコ―ダ
82から、オアゲ―ト90に向け「空きピクセルなし」
の状態を表すHレベルの信号が出力される。 また、検出した空きピクセルが右輪郭点に等しい場合
か、またはこれより右側に存在するような場合にも終了
する。このような場合を検出するため、実施例の装置で
は、比較回路88が用いられている。
【0214】すなわち、比較回路88は、ラッチ回路7
6から出力される右輪郭点のX座標とラッチ回路84か
ら出力される「次に書込みを行うべきピクセルのX座
標」とを比較し、ラッチ回路84の出力するX座標がラ
ッチ回路76の出力するX座標と等しくなった場合、ま
たはこれを上回った場合に、塗り潰し動作終了を表す
「Hレベルの信号」をオアゲ―ト90に向け出力する。
【0215】なお、この比較回路88による終了検出
は、裏返しの多角形の除去に役立てることができる。す
なわち、もし裏返しの多角形の輪郭点ペアが到来したな
らば、左輪郭点≧右輪郭点となる。この場合、もし左輪
郭点より右に空きピクセルが存在したとしても、この空
きピクセルは必ず右輪郭点より右に位置することにな
り、結果的に1ピクセルも塗り潰さないまま、塗り潰し
動作終了となる。ただし、本実施例では第13図のステ
ップ135に示す通り、フィールドプロセッサ回路12
において既に裏返しの多角形は完全に除去されているの
で、ラインプロセッサ回路34において、裏返しの多角
形が除去されることは実際上はない。
【0216】さて、オアゲ―ト90は、このようにして
出力されるHレベルの信号を塗り潰し終了信号として制
御回路74へ向け出力する。これにより、制御回路74
は、優先度番号カウンタ72の出力をインクリメントす
る。実施例の装置は、このようにして1つの多角形の輪
郭点情報に基づく塗り潰し作業が終了する毎に、優先度
番号カウンタ72の出力をインクリメントし、次の輪郭
点情報の読出し塗り潰し作業を同様に行う。 *塗り潰し動作の具体例 従って、例えばY=20をアドレスとして指定されるフ
ィ―ルドメモリ内の水平走査記憶エリアから、多角形
A,B,Cの順に輪郭点情報が読出される場合を想定す
ると、読出された輪郭点情報に基づく塗り潰し処理は次
のようにして行われる。
【0217】すなわち、この水平走査記憶エリアから輪
郭点情報読出しが開始される前は、ラインバッファ36
内の各ピクセルは全て空き領域である。従って、この状
態において、フリップフロップ群80は、全て「0」に
セットされている。
【0218】この状態で、まず最も優先度の高い多角形
Aの輪郭点情報が読出されラッチ回路76内にラッチさ
れると、その付随デ―タ、すなわち赤のカラ―コ―ド
は、その輪郭点ペアXLAとXRAに囲まれたラインバッフ
ァ36内の記憶エリア(XLA≦X<XRAなるX領域)内
に第6図(A)に示すように順次書込まれていく。
【0219】これと同時に、その輪郭点ペアXLAとXRA
とにより囲まれたフリップフロップ群80内の各フリッ
プフロップは第6図(B)に示すごとく「1」に順次セ
ットされていく。
【0220】そして、多角形Aのカラ―コ―ド塗り潰し
処理が終了すると、オアゲ―ト90から塗り潰し終了信
号が出力され、優先度カウンタ72が1つインクリメン
トされ、次に多角形Bの輪郭点情報の読出しが開始され
る。
【0221】そして、多角形Bの輪郭点情報が読出され
ると、この輪郭点情報は同様にしてラッチ回路16内に
ラッチされる。
【0222】この状態において、フリップフロップ群8
0は、第6図(B)に示すごとく、ラインバッファ30
内のXLAとXRAとにより囲まれた領域が塗り潰し処理さ
れていることを検出している。
【0223】従って、実施例のラインプロセッサ回路3
4は、その輪郭点ペアXLBとXRBとにより囲まれたライ
ンバッファ36内の空き領域(XLB≦X<XLAなるX領
域)内にその付随デ―タ、すなわち青のカラ―コ―ドを
順次書込んでいく。
【0224】これと同時に、実施例の装置はフリップフ
ロップ群80内のXLBとXLAとにより囲まれた領域内
のフリップフロップを順次「1」にセットしていく。
【0225】この結果、多角形Bの塗り潰し処理が終了
した時点で、ラインバッファ36内には第5図(A)に
示すごとく多角形AとBのカラ―コ―ドがそれぞれ書込
まれ、またフリップフロップ群80は、第5図(B)に
示すように、ラインバッファ36内の塗り潰し領域を検
出することになる。
【0226】これと同時に、制御回路74内には塗り潰
し終了信号が入力され、次の多角形Cの読出し及び塗り
潰し処理が同様にして行われる。
【0227】このとき、多角形Cの輪郭点ペアXLCとX
RCとにより囲まれた領域内には何ら空き領域がないた
め、その付随デ―タの書込みは行われない。
【0228】このようにして、本実施例のラインプロセ
ッサ回路34は、CRTの水平走査に同期して、各水平
走査毎にラインバッファ36内に水平走査用の画像信号
を良好に合成書込みすることができる。
【0229】そして、実施例の装置は、このようにして
ラインバッファ36内に書込まれたカラ―コ―ドを、C
RTの水平走査に同期してアドレス「0」,「1」,…
「575」の順に順次カラ―パレットメモリ38へ向け
出力している。これにより、カラ―パレットメモリ38
からは、多角形A,Bを指定されたカラ―で表示する映
像信号がCRT40へ向け出力されることとなる。
【0230】従って、このような動作を、水平走査に同
期してくりかえして行えば、画像情報供給源10から出
力される多角形情報に基づき、CRT40上に所望の画
像信号をリアルタイムで表示することが可能となる。 *空きピクセルの処理 ところで、前述したように、1本の水平走査線に対する
塗り潰し処理が全て終了した時点でラインバッファ36
内に空きピクセル(空き記憶エリア)が残っている場合
がある。
【0231】このような空きピクセルは、画面上では、
全ての多角形の外側に位置する点であり、従って、この
ような空きピクセルに関しては、多角形が存在しないこ
とを表す情報をカラ―パレットメモリ38へ向け出力し
なければならない。
【0232】このような方法としては、次のような3通
りの方法が考えられる。 デ―タの書込みに先立ってラインバッファ36を予め
初期化しておく。 フリップフロップ群80の全ての内容を、画像信号の
出力に同期してシリアルに出力する。 1本の水平走査線の塗り潰し処理が全て終了した後、
ラインバッファ36の空きピクセルを、空きピクセル情
報で全て塗り潰し処理する。
【0233】このような方法のうち、3番目の方法が比
較的簡単に採用することができる。 *多角形の表示可能数 なお、実施例のラインプロセッサ回路34を用いて、1
本の水平走査線上に何個の多角形を表示可能であるかに
ついての検討を行った。
【0234】この検討の結果、計算上では、12MHzの
ドットクロック(画素の標示周期を定める基準となるク
ロック)をサイクルとしてラインバッファ36の書込み
を行う場合を想定すると、1水平走査線辺り203以上
の多角形をリアルタイム表示可能であることが確認され
た。 *デュアルポ―トRAM なお、実施例のラインバッファ36は、前述したように
デュアルポ―トRAMを用いて形成され、そのメモリ空
間が2つの記憶エリアに2等分されている。
【0235】従って、このラインバッファ36は、その
一方の記憶エリアにラインプロセッサ回路36からデ―
タの書込みが行われている場合には、他方の記憶エリア
からデ―タの読出しが行われており、また、一方の記憶
エリアからデ―タの読出しが行われている場合には、他
方の記憶エリアにラインプロセッサ回路14によるデ―
タの書込みが行われることとなる。
【0236】なお、第16図に示すラインプロセッサ回
路34の各部と、第1図に示すラインプロセッサ回路3
4のデータ読出し部46,データ書込み部48,空き領
域検出部50との対応関係は次のようになる。
【0237】すなわち、制御回路74によって制御され
るラインカウンタ70,優先度番号カウント72は、デ
ータ読出し部46として機能する。
【0238】そして、ラッチ回路76,空き検出/デー
タ書込み部78の一部、例えばプライオリティエンコー
ダ82,ラッチ回路84,比較回路88,ゲート90な
どがデータ書込み部48として機能する。さらに、空き
領域/データ書込み回路78の一部、例えばフリップフ
ロップ群80,デコーダ86などが空き領域検出部50
として機能する。
【0239】C2:第2の具体例 −フィ―ルドメモリ42の他の実施例− 本発明において、フィ―ルドメモリ42には、各水平走
査線に対応した複数の水平走査記憶エリアが設けられて
いる。
【0240】このような水平走査記憶エリアは、第4図
(B)に示すように、フィ―ルドメモリ42内のメモリ
空間を、単純に全走査線数に対応した数の単位ブロック
に等分割して設定することも可能である。
【0241】しかし、このようにすると、各ブロックの
メモリ容量が固定され、1本の水平走査線上に表示し得
る多角形の個数は、各ブロックのメモリ容量により制限
されてしまう。このため、1つのブロックがオ―バ―フ
ロ―しているのにもかかわらず、他のブロック内に空き
領域がたくさん存在するというような状況が頻繁に発生
し、メモリの利用効率が悪いという問題がある。
【0242】このような問題を解決するために、各水平
走査記憶エリアを完全不連続型又は半不連続型とし、そ
のメモリ容量をフレキシブルに設定可能に形成すること
が好ましい。完全不連続型 第17図には、このようにして形成された完全不連続型
フィ―ルドメモリ42の好適な1例がされている。図に
おいて、このフィ―ルドメモリ42のメモリイメ―ジ
は、1画面当りのメモリ容量が16384(=214)ワ
―ド、ブランキングを除く走査線数が224本/フィ―
ルドとして描かれている。
【0243】そして、このフィ―ルドメモリ42の各ワ
―ド中には、「次のアドレス」を表す項目が含まれてお
り、後段のラインプロセッサ回路34が、1ライン分の
輪郭点情報を連続的に読み出すことを可能にしている。
【0244】ところで、実施例のフィ―ルドメモリ42
は、1画面辺り16384(=214)個のワ―ドがある
ため、次の読出アドレス指定を行うには14ビットのア
ドレスが必要となる。
【0245】従って、付随デ―タ、左輪郭点、右輪郭
点、次のアドレスのそれぞれに対し8ビット,10ビッ
ト、10ビット、14ビットのメモリ空間を割り当てる
と、1ワ―ド辺り42ビットのメモリ空間が必要とな
る。
【0246】また、このようなフィ―ルドメモリ42に
対し、デ―タの書き込みを行うためには、フィ―ルドプ
ロセッサ回路12内に、各CRTの水平走査線と1対1
に対応した224個のスレ―ブポインタと、1個のマス
タ―ポインタ―とを設ける必要がある。
【0247】ここにおいて、各スレ―ブポインタ―は、
同一水平走査記憶エリア内での、次に輪郭点情報を書込
むべきアドレスを指定するために用いられる。
【0248】また、マスタ―ポインタ―は、スレ―ブポ
インタ―によって指定されるワ―ドの、「次のアドレ
ス」の欄に書き込まれるべきアドレスを設定するために
用いられる。
【0249】このため、マスタ―ポインタの出力するア
ドレスは、前記各スレ―ブボインタ―が指定しておら
ず、しかも未だデ―タが書き込まれていない領域内の最
も若いアドレスとなるように制御される。
【0250】次にこのスレ―ブポインタとマスタ―ポイ
ンタとを用いて行われる輪郭点情報の書き込み動作を説
明する。
【0251】まず、デ―タの書き込みに先立って、スレ
―ブポインタ―及びマスタ―ポインタが初期化される。
これにより、スレ―ブポインタは、対応する水平走査記
憶エリアの先頭アドレス0,1,2,…223をそれぞ
れ指定する。また、マスタ―ポインタ―は、アドレス2
24を指定する。
【0252】これに続いて、フィ―ルドプロセッサ回路
12による、輪郭点情報の演算出力が開始されると、演
算された輪郭点情報はそのy座標により指定される水平
走査記憶エリアに次のような手順に従って書き込まれ
る。
【0253】まず、フィ―ルドプロセッサ回路12が、
ライン上における最初の輪郭点情報を演算すると、この
輪郭点情報のy座標に対応するスレ―ブポインタ―によ
って、フィ―ルドメモリ42の書き込みアドレスが指定
される。
【0254】そして、演算された輪郭点情報は、指定さ
れたアドレスの「付随デ―タ」、「左輪郭点」、及び
「右輪郭点」の欄にそれぞれ書き込まれ、また、指定さ
れたワ―ドの「次のアドレス」の欄には、現在マスタ―
ポインタ―が示しているアドレス「224」が書き込ま
れる。
【0255】次に、前記スレ―ブポインタ―は、「次の
アドレス」の欄に書き込まれたマスタ―ポインタ―のア
ドレスと同じアドレス「224」を示すように切替わ
り、これに連動してマスタ―ポインタ―の出力するアド
レスも増加して「225」となる。
【0256】この結果、このスレ―ブポインタ―は、次
に同一のラインの輪郭点情報が演算された場合には、ア
ドレス224で指定されるワ―ドの「付随デ―タ」「左
輪郭点」「右輪郭点」の各欄に輪郭点情報を書き込み、
また、「次のアドレス」の欄にそのとき表示されている
マスタ―ポインタ―のアドレスの書き込みを行う。
【0257】そして、この書込み終了後、当該スレ―ブ
ポインタ―は「次のアドレス」の欄に書き込まれたマス
タ―ポインタ―のアドレスを新たに指定するようにな
り、これに連動してマスタ―ポインタ―の出力するアド
レスは、1つ増加することになる。
【0258】実施例のフィ―ルドメモリ42では、この
ようにして、全多角形の輪郭点情報の書き込みが終了す
ると、各スレ―ブポインタ―の示すアドレスに終了コ―
ドの書き込みを行う。
【0259】以上の構成とすることにより、各水平走査
記憶エリアは、各ワ―ドの「次のアドレス」の欄に書き
込まれるアドレスにより結びつけられた1連の記憶エリ
アとして取り扱われることとなる。
【0260】従って、例えば、ラインプロセッサ回路3
4が走査線mに対応する水平走査記憶エリアから輪郭点
情報を読み出す場合を想定すると、この水平走査記憶エ
リアに書き込まれた輪郭点情報は、フィ―ルドメモリの
アドレスmを起点として「次のアドレス」を参照しなが
ら、終了コ―ドが検出されるまでに、芋蔓式に読み出さ
れることとなる。
【0261】このように、実施例のフィールドメモリ4
2では、アドレスmで指定される記憶エリアを起点とし
て、各ワードの「次のアドレス」の欄に書き込まれるア
ドレスにより結び付けられる一連の記憶エリアが、水平
走査線mに対応した水平走査記憶エリアとして設定され
ることになる。
【0262】第18図には、このようにして構成された
フィ―ルドメモリ42に対して用いられるラインプロセ
ッサ回路34のデ―タ読出し部の一例が示されている。
【0263】図において、前記第1の具体例と対応する
部材には同一符号を付してその説明は省略する。
【0264】実施例において、これら各ラインプロセッ
サ回路34は、CRTの水平走査に同期して該当する走
査ラインの選択信号(Y座標デ―タ)を出力するライン
カウンタ70と、当該走査ラインの0番地指定用の6ビ
ット情報を出力する0番地指定回路71aと、を含む。
そして、この両者の出力を、水平走査記憶エリア内の先
頭ワ―ド読出しアドレスとしてマルチプレクサ71b,
ラッチ回路71cを介してフィ―ルドメモリ42へ向け
出力する。
【0265】この結果、選択信号(Y座標デ―タ)によ
り指定された水平走査記憶エリア内の先頭ワ―ドから、
輪郭点情報の読出が開始されることになる。
【0266】この時、実施例の装置は、この読出しワ―
ドの「次のアドレス」の欄に書込まれている14ビット
の次のアドレスを同時に出力し、これをマルチプレクサ
71bに入力する。
【0267】そして、マルチプレクサ71bは、自動的
にフィ―ルドメモリ42から読出される次のアドレスを
選択し、ラッチ回路71cへ出力する。
【0268】従って、このラインプロセッサ回路34の
ラインカウンタ70から、例えば走査線mの選択信号が
出力された場合を想定すると、この水平走査記憶エリア
mからは、フィ―ルドメモリ42のアドレスmを起点と
して、「次のアドレス」の欄を参照しながら終了コ―ド
が検出されるまで輪郭点情報が芋蔓式に順次読出される
こととなる。半不連続型 ところで、第17図に示すように、水平走査記憶エリア
のメモリ容量を完全にフレキシブルに設定可能にする
と、「次のアドレス」の欄に14ビット割り振らなけれ
ばならないため、1ワ―ドの構成単位が28ビットから
42ビットに増え、フィ―ルドメモリ42の総容量が約
1.5 倍に増えてしまうという問題がある。
【0269】このような問題を解決するためには、水平
走査記憶エリアの記憶容量を、半不連続方式とすること
が好ましい。
【0270】第19図には、このようなフィ―ルドメモ
リ42の一例が示されている。
【0271】本実施例において、フィ―ルドメモリ42
のメモリ空間は、複数ワ―ドから構成されたセクタブロ
ック毎に等分割される。
【0272】この分割個数は、少なくとも全走査線の本
数以上に設定する必要があり、本実施例においては、10
24個のセクタ―ブロックに分割されている。
【0273】そして、各セクタブロックは、その最終ワ
―ドが、「次のセクタ―アドレス」に割当てられてい
る。
【0274】また、図において、セクタ―アドレスは、
各セクタ―ブロックを指定するアドレスであり、各セク
タ―ブロックの先頭アドレスを、セクタ―ブロック内の
ワ―ド数で割った値として表される。
【0275】本実施例においては、フィ―ルドメモリの
1画面分の容量を16384(=214)ワ―ドとし、1
セクタ―ブロック当りのワ―ド数を16(=24 )に設
定する。この結果、1画面分のセクタ―ブロックは、1
024(=210)となり、セクタ―アドレスは0〜10
23の範囲で表される。
【0276】次に、このようして形成されたフィ―ルド
メモリ42に対する輪郭点情報の書込み動作を説明す
る。
【0277】このような書込み動作を行うためには、フ
ィ―ルドプロセッサ回路12内に、走査線の本数に対応
した224個のスレ―ブポインタと、1個のマスタポイ
ンタとを用意する必要がある。
【0278】ところで、本実施例においては、各セクタ
―ブロック内に複数のワ―ドが存在する。このため、各
走査線に対応して設けられたスレ―ブポインタは、各ワ
―ド毎に割付けられたアドレスを示しているのに対し、
マスタ―ポインタ―は、各セクタ―ブロック毎に割付け
られたセクタ―アドレスを示している点に注意する必要
がある。
【0279】そして、フィ―ルドプロセッサ回路12
が、輪郭点情報の演算を開始すると、スレ―ブポイン
タ,マスタ―ポインタの初期化が行われる。
【0280】この結果、各スレ―ブポインタは、セクタ
―ブロック0,1,2,…223の先頭アドレス0,1
6,32,…,3568を示し、また、マスタ―ポイン
タ―は、セクタ―アドレス224を示すこととなる。
【0281】これに続いて、輪郭点情報の出力が開始さ
れると、各輪郭点情報は、そのY座標に対応するスレ―
ブポインタにより指定された空ワ―ドに順次書き込まれ
る。そして、スレ―ブポインタは、輪郭点情報の書込み
が終了する度にそのアドレスをインクリメントし次の空
ワ―ドを指定する。
【0282】このようにして、各セクタブロックに対す
る輪郭点情報の書き込みは、第4図(B)と同様にして
進められる。
【0283】ところで、スレ―ブポインタが、あるセク
タ―ブロックの最終ワ―ドを指定している場合に、ここ
に書込むべき輪郭点情報が出力されると、次のような処
理が行われる。
【0284】まず、スレ―ブポインタの示すアドレス
に、マスタ―ポインタ―の出力する値、例えば224が
「次のセクタ―アドレス」として書込まれる。
【0285】そして、マスタ―ポインタ―により指定さ
れるセクタ―ブロックの先頭番地が、スレ―ブポインタ
―にセットされ、これと同時にマスタ―ポインタ―の出
力するセクタ―アドレスは1つ増加する。
【0286】その後、スレ―ブポインタが新に指定する
アドレスに、前述した輪郭点情報が順次書き込まれ、そ
の度スレ―ブポインタのアドレスが1つインクリメント
される。
【0287】以上の構成とすることにより、実施例のフ
ィ―ルドメモリ42によれば、前記第17図に示すフィ
―ルドメモリ42に比し、1ワ―ド辺りのビット数を大
幅に少くすることが可能となる。
【0288】第20図には、このような半不連続型フィ
―ルドメモリ42に対して用いられるラインプロセッサ
回路34のデ―タ読出し部一例が示されている。
【0289】このラインプロセッサ回路34は、ライン
カウンタ70、0番地指定回路71a,マルチプレクサ
71b、ラッチ回路71c及びセクタ内選択用カウンタ
71dを含む。
【0290】前記半不連続形フィ―ルドメモリ42は、
0から1023のセクタアドレスを有しており、これら
各セクタアドレスはラッチ回路71の出力する読出しア
ドレスの上位10ビットで指定される。
【0291】実施例においては、CRTの水平走査に同
期し、該走査ラインの水平走査記憶エリアの先頭セクタ
アドレスがラインカウンタ70および0番地指定回路7
1aから出力される。
【0292】そして、指定された各セクタ内の読出しワ
―ド指定信号は、セクタ内選択用カウンタ71dから順
次出力される。
【0293】実施例において、1つのセクタが16ワ―
ドから構成されている。このため、セクタ内選択用カウ
ンタ71dは、0から15までの各ワ―ドに対する合計
16個のワ―ド指定アドレスをくりかえして出力する。
【0294】このセクタ内選択用カウンタ71dは、水
平走査開始時に「0」になる。また、ラッチ71cは、
セクタアドレスを出力するものであり、セクタ内選択用
カウンタ71dが「0」になる瞬間にのみ、その記憶内
容を更新する。また、マルチプレクサ71bは、水平走
査開始時にのみラインカウンタ70の出力および0番地
指定の2ビットの「0」を選択する。
【0295】また、ラインカウンタ70は、フィ―ルド
走査の開始時に「0」になる。
【0296】実施例における水平走査記憶エリアの読出
しは次のように行われる。
【0297】まず、水平走査開始時に、ラインカウンタ
70が走査線mに対応する水平走査記憶エリアの選択信
号mを出力しているものとする。
【0298】このラインカウンタ70の出力mに2ビッ
トの「0」を付加したものが、マルチプレクサ71bを
経て、ラッチ71cに読込まれ、セクタアドレスとして
出力される。
【0299】これと同時に、セクタ内選択用カウンタ7
1dが「0」にクリアされる。その結果、フィ―ルドメ
モリ42のアドレス入力には14ビットのアドレス16
mが入力される。
【0300】これは、走査線mに対応する水平走査記憶
エリアの先頭アドレスであり、フィ―ルドメモリ42か
らは最初の輪郭点情報が読み出される。
【0301】以後、輪郭点情報の処理が終るごとに、ラ
ッチ71cの出力するセクタアドレスは保持されたま
ま、セクタ内選択用カウンタ71dが1,2,…14と
カウントアップし、2番目,3番目,…15番目の輪郭
点情報が読出される。
【0302】そして、セクタ内選択用カウンタ71dの
出力する値が15になった時、フィ―ルドメモリ42か
らは輪郭点情報にかわって「次のセクタアドレス」が読
出され、マルチプレクサ71bを経てラッチ71cに入
力する。
【0303】更に引き続いて、セクタ内選択用カウンタ
71dがカウントすると、その出力する値は再び「0」
となり、同時にラッチ71cは次のセクタアドレスを出
力するようになる。
【0304】このように、輪郭点情報の読み出しは、セ
クタ内では連続的に行われるが、ひとつのセクタの読出
しが終了する時点では、「次のセクタアドレス」を参照
しながら芋蔓式に行われる。
【0305】なお、この読出し動作は終了コ―ドが検出
されるまで継続する。
【0306】
【発明の効果】本発明によれば、輪郭点演算手段におい
てポリゴンの裏表が判断され、裏のポリゴンについては
輪郭点ペアとして出力されない。従って、その後の処理
においてこの裏のポリゴンの処理を行う必要がなくなる
ため、ハードウエアの負担を大幅に軽減できる。この結
果、ハードウエアの処理の高スピード化、ハードウエア
の小型化、画質の向上を図れることができる。
【図面の簡単な説明】
【図1】本発明の画像合成装置を用いて形成されたシュ
ミレ―ション装置の全体説明図である。
【図2】本発明を用いて形成される画像表示装置の全体
ブロック図である。
【図3】画像情報供給源において用いられる移動座標系
の1例を示す説明図である。
【図4】輪郭点情報とフィ―ルドメモリとの関係を示す
説明図、
【図5】(A)は本発明において用いられるラインバッ
ファの概略説明図であり、(B)は本発明において用い
られる空き領域検出部の概略説明図である。
【図6】(A)は本発明において用いられるラインバッ
ファの概略説明図であり、(B)は本発明において用い
られる空き領域検出部の概略説明図である。
【図7】第7図はコミュニケ―ションメモリの構造を示
す説明図である。
【図8】フィ―ルドプロセッサ回路の具体的な構成を示
す説明図である。
【図9】第8図に示すフィ―ルドプロセッサ回路の動作
を示すフロ―チャ―ト図である。
【図10】第8図に示すフィ―ルドプロセッサ回路の動
作を示すフロ―チャ―ト図である。
【図11】第8図に示すフィ―ルドプロセッサ回路の動
作を示すフロ―チャ―ト図である。
【図12】第8図に示すフィ―ルドプロセッサ回路の動
作を示すフロ―チャ―ト図である。
【図13】第8図に示すフィ―ルドプロセッサ回路の動
作を示すフロ―チャ―ト図である。
【図14】実施例において用いられる輪郭点情報の説明
図である。
【図15】フィ―ルドメモリに対する読出/書込みタイ
ミングを示す説明図である。
【図16】第1図に示すラインプロセッサ回路の第1の
具体例を示すブロック図である。
【図17】第1図に示すフィ―ルドメモリの他の具体例
を示す説明図である。
【図18】第17図に示すフィ―ルドメモリに対して使
用されるラインプロセッサ回路の説明図である。
【図19】第1図に示すフィ―ルドメモリの他の具体例
を示す説明図、
【図20】第19図に示すフィ―ルドメモリに対して使
用されるラインプロセッサ回路の説明図である。
【図21】本実施例による裏面除去の一例について説明
する概略説明図である。
【符号の説明】
10 画像情報供給源 12 フィ―ルドプロセッサ回路 14 画像合成装置

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 複数の頂点座標の組み合わせとして構成
    される多面体として表現された3次元表示物体の各頂点
    座標を所定の投影面上に透視投影変換し、前記3次元表
    示物体を投影された各頂点で表される複数のポリゴンを
    組み合わせた2次元画像に変換し、この各ポリゴンの各
    頂点座標が、各ポリゴンの裏表情報に応じた順序で出力
    される画像情報供給手段と、 前記ポリゴンを構成する輪郭線と前記ラスタディスプレ
    イ用の水平走査線とが交叉する輪郭点のX座標を、前記
    ポリゴンの各頂点を結ぶ各輪郭辺ごとに演算し、これを
    第1の輪郭点と第2の輪郭点の輪郭点ペアとして出力す
    る輪郭点演算手段と、 演算される各ポリゴンの輪郭点ペアに基づき、前記複数
    のポリゴンを組み合わせ前記2次元画像合成用の画像信
    号を出力する画像信号合成手段と、 を含み、 前記輪郭点演算手段は、前記画像情報供給手段から出力
    されるポリゴンの各頂点座標の出力順序と、各輪郭辺の
    始点と終点におけるポリゴンの各頂点座標の増減と、第
    1の輪郭点と第2の輪郭点の座標の増減とにより、処理
    を行っているポリゴンが裏のポリゴンか表のポリゴンで
    あるかを判別し、裏のポリゴンである場合は輪郭点ペア
    として出力しないことを特徴とする疑似3次元画像合成
    装置。
JP4283941A 1992-09-28 1992-09-28 疑似3次元画像合成装置及び画像合成方法 Expired - Lifetime JP2583379B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4283941A JP2583379B2 (ja) 1992-09-28 1992-09-28 疑似3次元画像合成装置及び画像合成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4283941A JP2583379B2 (ja) 1992-09-28 1992-09-28 疑似3次元画像合成装置及び画像合成方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP61073163A Division JPS62231380A (ja) 1986-03-31 1986-03-31 画像合成装置

Publications (2)

Publication Number Publication Date
JPH0667648A true JPH0667648A (ja) 1994-03-11
JP2583379B2 JP2583379B2 (ja) 1997-02-19

Family

ID=17672206

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4283941A Expired - Lifetime JP2583379B2 (ja) 1992-09-28 1992-09-28 疑似3次元画像合成装置及び画像合成方法

Country Status (1)

Country Link
JP (1) JP2583379B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS54161839A (en) * 1978-06-13 1979-12-21 Sony Corp Picture generating device
JPS60128574A (ja) * 1983-12-15 1985-07-09 Fujitsu Ltd 図形表示装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS54161839A (en) * 1978-06-13 1979-12-21 Sony Corp Picture generating device
JPS60128574A (ja) * 1983-12-15 1985-07-09 Fujitsu Ltd 図形表示装置

Also Published As

Publication number Publication date
JP2583379B2 (ja) 1997-02-19

Similar Documents

Publication Publication Date Title
US4829295A (en) Image synthesizer
JP3240447B2 (ja) 画像処理装置
US4766556A (en) Three-dimensional solid object manipulating apparatus and method therefor
EP1847965A1 (en) Plotting device and plotting method
KR910009102B1 (ko) 화상합성 장치
EP0422541B1 (en) Parallel polygon/pixel rendering engine and method
EP0568358B1 (en) Method and apparatus for filling an image
US5444839A (en) Object based graphics system for rasterizing images in real-time
JP3332165B2 (ja) 画像処理装置
KR100190674B1 (ko) 소팅회로
JP2020101988A (ja) 3次元再構成像表示装置、3次元再構成像表示方法、プログラム、及び画像生成方法
JPS6365151B2 (ja)
JP2763481B2 (ja) 画像合成装置及び画像合成方法
JP2634126B2 (ja) グラフィックス表示方法および装置
JP2667944B2 (ja) 疑似3次元画像合成装置及び画像合成方法
JP2583379B2 (ja) 疑似3次元画像合成装置及び画像合成方法
JPS60173676A (ja) 図形塗りつぶし方式
EP0568360B1 (en) Graphics system using quadratic polynomial fragments
JP3626709B2 (ja) アンチエイリアス処理装置
JP2774874B2 (ja) 画像合成装置及び画像合成方法
JPH05120449A (ja) 画像処理装置
JP3176252B2 (ja) 3次元画像描画装置
JP3531582B2 (ja) 画像処理方法および画像処理装置
JP2888640B2 (ja) 画像合成装置及び画像合成方法
JP3119114B2 (ja) 画像処理装置及びその方法

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19961008

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