JPH0644385A - Zバッファ制御回路 - Google Patents

Zバッファ制御回路

Info

Publication number
JPH0644385A
JPH0644385A JP4197338A JP19733892A JPH0644385A JP H0644385 A JPH0644385 A JP H0644385A JP 4197338 A JP4197338 A JP 4197338A JP 19733892 A JP19733892 A JP 19733892A JP H0644385 A JPH0644385 A JP H0644385A
Authority
JP
Japan
Prior art keywords
value
plotting
plural
buffer
buffer memory
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.)
Pending
Application number
JP4197338A
Other languages
English (en)
Inventor
Masahiro 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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP4197338A priority Critical patent/JPH0644385A/ja
Priority to US08/094,880 priority patent/US5621866A/en
Priority to GB9607952A priority patent/GB2299919B/en
Priority to GB9315283A priority patent/GB2269081B/en
Publication of JPH0644385A publication Critical patent/JPH0644385A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)
  • Digital Computer Display Output (AREA)

Abstract

(57)【要約】 【目的】本発明は3次元グラフィクス分野におけるZバ
ッファ処理の高速化に関し、水平線の描画時にはZ値の
演算を複数の画素に対して同時処理することにより、高
速描画を実現することを目的とする。 【構成】3次元画像表示装置において、水平方向の複数
の画素を同時書込みでき、その内の個別に指定した画素
を書込み許可できるように構成したフレームメモリ4
と、それに対応した複数の値を同時読み書きでき、その
内の個別に指定した画素を書込み許可できるように構成
したZバッファメモリ3と、描画が水平線であるか任意
の角度をもつ直線であるかを区別する描画モード指定フ
ラグ27と、複数のZ値演算回路30とを備え、描画モード
指定フラグ27が水平線を描くことを指定する場合にZバ
ッファメモリ3 の複数のビットを同時処理するように構
成する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は3次元グラフィクス分野
におけるZバッファ処理の高速化に関する。3次元グラ
フィクスにおいて、描画処理の高速化のため面塗り処理
の高速化が要求されている。その一つの手段としてZバ
ッファ処理の高速化を目的とする。
【0002】
【従来の技術】図4は従来システムの構成概念図であ
る。図4(A)において、3次元画像表示装置は、Zバ
ッファ1、フレームメモリ4、CRT(Cathode Ray Tu
be) 5、プロセサ6、メインメモリ7より構成される。
また、Zバッファ1はZバッファメモリ3とZバッファ
制御回路2を含む。
【0003】プロセサ6はメインメモリ7上に描画デー
タを作成する。描画データは例えば線分(直線)の集ま
りとして構成され、これをフレームメモリ4に書き込む
とCRT5に画像が表示される。
【0004】3次元グラフィクスにおける描画処理で
は、Zバッファ方式が一般的に用いられる。Zバッファ
とはフレームメモリ4にある画素に対応して画素毎にも
っている奥行き情報を保持する記憶装置であって、ある
画素を描画するとき、その画素の奥行き情報(Z値)
と、その位置(XY座標)に既に描かれている画素のZ
値とを比較し、奥行きが浅い(Z値が小)方を残すよう
に制御するためのものである。これにより3次元物体を
2次元画像として描くとき、手前にある面や稜線によっ
て、奥にある部分が隠された自然な画像を描くことがで
きる。
【0005】図5(A)は任意のベクトル(直線)を描
画するときのZ値を説明する図である。座標(Xs,Ys)か
ら座標(Xe,Ye)に直線を引くとき、直線を構成する各画
素に対して座標とZ値を計算する。
【0006】Z値の演算は、プロセサにより始点座標
(Xs,Ys)における値(Zs=初期値)と増分(Zi)を
与えられ、直線を構成する各点毎に終点座標(Xe,Ye) ま
で行われる。
【0007】さらにその座標に元からある画素のZ値と
比較して小なら、演算結果をZバッファメモリに書込
み、またフレームメモリへの画素の書込みを許し(すな
わち新しい描画による画素が書き込まれる)、大ならZ
バッファメモリもフレームメモリもそのままにする(す
なわち元からある画素が残る)。
【0008】図4(B)はZ値演算回路を中心とするZ
バッファ制御回路2の要部を示す。22は加算器、23は出
力レジスタであり、プロセサ6から与えられたZ値の初
期値Zs と増分Ziを演算する。出力レジスタ23の出力す
なわち新Z値が信号線20によりZバッファメモリ3へ送
られる。
【0009】24は比較器であり、出力レジスタ23の出力
すなわち新Z値 Zw とZバッファメモリ3から読み出さ
れた元のZ値Zrとを比較して Zw < Zrならば、書込み許
可信号21をZバッファメモリ3およびフレームメモリ4
へ送る。
【0010】Zバッファメモリ3とフレームメモリ4の
座標(アドレス)はXアドレスレジスタ29、Yアドレス
レジスタ28によって始点(Xs,Ys) 、終点(Xe,Ye)が指定
される。
【0011】これらの処理は、一般に、直線を構成する
画素の座標(X,Y)が互いに異なるため1画素毎に行
うか、複数同時処理するため複雑なハ−ドウェアを用い
るのが普通であった。
【0012】なお直線の各点の座標の計算はDDA(Dig
ital Differencial Analyzer) 等を用いて行われるが、
本発明とは直接関係がないので説明は省略する。また同
様にフレームメモリに書き込む画素の値の演算について
も説明は省略する。
【0013】3次元グラフィクスにおいて、物体をソリ
ッドモデルとして描く場合、面塗り処理が多用される。
面塗り処理では、図5(B)に示すように面を多数の水
平線の集まりとして処理するので、上記のように画素一
つ毎に行うZ値の演算は、処理時間に大きな影響を与え
る。
【0014】
【発明が解決しようとする課題】本発明は、水平線の描
画時にはZ値の演算を複数の画素に対して同時処理する
ことにより、高速描画を実現することを目的としてい
る。
【0015】
【課題を解決するための手段】図1は本発明の原理ブロ
ック図である。 水平方向の複数の画素を同時書込みで
き、その内の個別に指定した画素を書込み許可できるよ
うに構成したフレームメモリ4と、そのフレームメモリ
4の複数の画素に対応した、複数の値を同時読み書きで
き、その内の個別に指定した画素を書込み許可できるよ
うに構成したZバッファメモリ3と、描画が水平線であ
るか任意の角度をもつ直線であるかを区別する描画モー
ド指定フラグ27と、複数のZ値演算回路30とを備える。
【0016】
【作用】描画モード指定フラグが水平線を描くことを指
定する場合(描画モード指定フラグが“1”のとき)に
Zバッファメモリ3の複数の画素を同時処理する。
【0017】すなわち、水平線の一部を構成する複数の
画素に対応するZ値(Zw0〜Zwm)を複数のZ値演算回路に
より得て、対応する複数の元のZ値(Zr0〜Zrm)をZバッ
ファメモリから読み出して、これと比較する。演算結果
のZ値が元のZ値より小であれば対応する書込み許可信
号(WE0〜WEm)を“1”とし、そうでなければ“0”とす
る。書込み許可信号はZバッファメモリおよびフレーム
メモリの対応する画素の書込みを制御しており“1”で
あれば新しい値の書込みを許し、“0”であれば書込み
を許さないためZバッファメモリ3およびフレームメモ
リ4には元の値が残る。
【0018】このようにすることにより、任意の角度を
もつ直線を描くときは1画素単位に処理する従来方式と
同じ速度であるが、水平線を描くときは非常に速くする
ことができる。
【0019】
【実施例】フレームメモリ4、Zバッファメモリ1が、
任意に指定したアドレスからある長さだけ同時アクセス
できるように構成すれば前記の処理方法で問題ないが、
構成を単純にするため、2の巾乗を単位とするブロック
を単位にアクセスするようにするのが通常のメモリ構成
方法である。
【0020】また、水平線の描画において始点画素(お
よび終点画素)の座標がフレームメモリ4およびZバッ
ファメモリ3のアドレスバウンダリと一致していれば問
題ないが、一般には異なるので、その場合の処理が必要
である。
【0021】以下、図面を参照して本発明の実施例を詳
細に説明する。図2は本発明の実施例のZバッファ制御
回路のブロック図である。図1と同一のものは、同一の
符号を付して示す。
【0022】図2において、25はZ値の初期値を保持す
るレジスタ、26はZ値の増分を保持するレジスタ、27は
描画モード指定フラグ、28,29 は直線の始点と終点の座
標を指定するレジスタであって、これらはプロセサ6 か
ら設定される。
【0023】30はZ値演算回路、31は増分Ziの倍数選
択回路、32は書込み許可信号作成回路、33は増分Ziの
倍数回路である。本実施例は4ビット同時処理の例であ
って、Z値演算回路30等は4組備えている。
【0024】図3はメモリのアドレスバウンダリを意識
すべき場合の説明図である。図3(A)は三角形を面塗
りするときの始点画素とアドレスバウンダリの関係を示
す。
【0025】図においてY=1にある直線()のよう
な水平線の集まりとして三角形が描画される。直線は
4画素単位でメモリアクセスする場合、図に示すように
3回のアクセスを必要とする。最初のアクセスと最後の
アクセスのときX座標の下位2ビットの値により一部の
画素の書込みをしないで元の値を残す必要がある。また
同時処理される4画素のそれぞれの演算内容も異なる。
【0026】以上のような処理の内容をまとめたものが
図3(B)である。Xの下位2ビットの値が0のとき図
3(A)のに対応し、以下、1のときに、2のとき
に、3のときに対応する。
【0027】図2のZi倍数回路33は -3Zi〜4Zi を作
る回路で、組み合わせ論理回路として容易に構成でき、
Zi倍数選択回路31、書込み許可信号作成回路(EN回
路)32も図3(B)等に従って容易に構成できる。
【0028】なお、任意の角度をもった直線を描画する
場合(描画モード指定フラグが“0”のとき)は、Z値
の演算はそのまま行い、書込み許可信号のみ指定のアド
レスのものだけを“1”とするように回路を構成すれば
よく、容易に実現できる。
【0029】
【発明の効果】3次元グラフィクスにおいては、面塗り
処理が大部分を占める、すなわち水平線の描画が大部分
を占める。メモリの複数同時読み書きなども水平方向に
限れば容易であり、本発明によれば比較的簡単な回路構
成により全体として高速描画を実現できる。
【図面の簡単な説明】
【図1】本発明の原理ブロック図である。
【図2】本発明の実施例Zバッファ制御回路のブロック
図である。
【図3】メモリのアドレスバウンダリを意識すべき場合
の説明図である。
【図4】従来システムの構成概念図である。
【図5】Z値の演算説明図である。
【符号の説明】
1 Zバッファ 2 Zバッファ制御回路 3 Zバッファメモリ 4 フレームメモリ 5 CRT 6 プロセサ 7 メインメモリ 20 Z値信号線 21 書込み許可信号 22 加算器 23 出力レジスタ 24 比較器 25 Z値の初期値を保持するレジスタ 26 Z値の増分を保持するレジスタ 27 描画モード指定フラグ 28 Y座標レジスタ 29 X座標レジスタ 30 Z値演算回路 31 Zi倍数選択回路 32 書込み許可信号作成回路(EN回路) 33 Zi倍数回路

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 3次元画像表示装置において、 水平方向の複数の画素を同時書込みでき、その内の個別
    に指定した画素を書込み許可できるように構成したフレ
    ームメモリ(4)と、 そのフレームメモリ(4)の複数の画素に対応した、複
    数の値を同時読み書きでき、その内の個別に指定した画
    素を書込み許可できるように構成したZバッファメモリ
    (3)と、 描画が水平線であるか任意の角度をもつ直線であるかを
    区別する描画モード指定フラグ(27)と、 複数のZ値演算回路(30)とを備え、 描画モード指定フラグ(27)が水平線を描くことを指定す
    る場合にZバッファメモリ(3)の複数のビットを同時
    処理するように構成したことを特徴とするZバッファ制
    御回路。
JP4197338A 1992-07-24 1992-07-24 Zバッファ制御回路 Pending JPH0644385A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP4197338A JPH0644385A (ja) 1992-07-24 1992-07-24 Zバッファ制御回路
US08/094,880 US5621866A (en) 1992-07-24 1993-07-22 Image processing apparatus having improved frame buffer with Z buffer and SAM port
GB9607952A GB2299919B (en) 1992-07-24 1993-07-23 Image processing apparatus
GB9315283A GB2269081B (en) 1992-07-24 1993-07-23 Image processing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4197338A JPH0644385A (ja) 1992-07-24 1992-07-24 Zバッファ制御回路

Publications (1)

Publication Number Publication Date
JPH0644385A true JPH0644385A (ja) 1994-02-18

Family

ID=16372814

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4197338A Pending JPH0644385A (ja) 1992-07-24 1992-07-24 Zバッファ制御回路

Country Status (1)

Country Link
JP (1) JPH0644385A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8884473B2 (en) 2008-11-18 2014-11-11 Hitachi Metals, Ltd. Mover, armature, and linear motor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8884473B2 (en) 2008-11-18 2014-11-11 Hitachi Metals, Ltd. Mover, armature, and linear motor

Similar Documents

Publication Publication Date Title
JP4234217B2 (ja) サイズ変更ビットブロック転送処理の一部として透過イネーブルビットの埋込みを行うシステム、装置および方法
US5757374A (en) Method and apparatus for performing texture mapping
JP3012541B2 (ja) 3次元グラフィックス空間におけるオブジェクト識別および衝突検知のための方法および装置
JP3586991B2 (ja) テクスチャ・データ読出装置およびレンダリング装置
US5949421A (en) Method and system for efficient register sorting for three dimensional graphics
US5621866A (en) Image processing apparatus having improved frame buffer with Z buffer and SAM port
JPH07104960B2 (ja) グラフィックス・ディスプレイ・システム及び隠面消去方法
JPH0355832B2 (ja)
US4747042A (en) Display control system
US7616200B1 (en) System for reducing aliasing on a display device
CA2055783A1 (en) High performance bitblt and line draw engine
US7508397B1 (en) Rendering of disjoint and overlapping blits
JPH0644385A (ja) Zバッファ制御回路
CA1316263C (en) Apparatus and method for using a test window in a graphics subsystem which incorporates hardware to perform clipping of images
JP3090644B2 (ja) 画像データ処理装置及びそれを用いたシステム
JP2887122B2 (ja) 画像データ処理装置及びそれを用いたシステム
JP2773458B2 (ja) ベクトル制御装置
JP3106246B2 (ja) 画像処理装置
JPS61187083A (ja) 画素情報記憶装置
JP2829051B2 (ja) 文字表示方式
JPH0346826B2 (ja)
JPH0765198A (ja) 画像メモリ装置
JPH04367988A (ja) 図形処理装置のzバッファ方式
JPH0535912B2 (ja)
JPS6169096A (ja) 図形処理装置

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20010508