JPH06500871A - グラフィックス描画システム - Google Patents

グラフィックス描画システム

Info

Publication number
JPH06500871A
JPH06500871A JP2508954A JP50895490A JPH06500871A JP H06500871 A JPH06500871 A JP H06500871A JP 2508954 A JP2508954 A JP 2508954A JP 50895490 A JP50895490 A JP 50895490A JP H06500871 A JPH06500871 A JP H06500871A
Authority
JP
Japan
Prior art keywords
order
frame store
pixel
instruction
processor
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
JP2508954A
Other languages
English (en)
Inventor
トレヴェット,ネイル,フランシス
Original Assignee
デュポン ピクセル システムズ リミテッド
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 デュポン ピクセル システムズ リミテッド filed Critical デュポン ピクセル システムズ リミテッド
Publication of JPH06500871A publication Critical patent/JPH06500871A/ja
Pending 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

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Generation (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるため要約のデータは記録されません。

Description

【発明の詳細な説明】 グラフ ックス 百システム 技術分野 本発明はグラフィックス描画システム(graphicsrendering  system)に関する背景技術 簡単な2次元グラフィックス描画システムは、ホストコンピュータから一連の描 画命令(renderinginstructions)を受信し、その命令で 定義された図形の形状(graphical 5hape)または多角形を一つ 一つフレームスドアに描画するグラフィックスプロセッサを有する。ビデオプロ セッサはフレームスドアからデータを読み出し、モニタ上に表示する。例えば、 大きな緑の三角形の上に小さな赤い三角形を表示することが望まれている場合は 、単に、大きな緑の三角形を描画する命令を、小さな赤い三角形を描画する命令 の前に供給することにより達成できる。まず大きな緑の三角形をフレームスドア に描画し、次に赤い三角形を描画する時に大きな緑の三角形を部分的に上書きし 、所望の効果を達成する。
描画速度を増加するためには、複数のプロセッサを設け、それらの間で描画操作 を分担することが望ましい。この場合多角形の重なり、すなわちオーバーラツプ が問題となる。上述の例において、2つのプロセッサが大きな緑の三角形および 小さな赤の三角形を、それぞれ同時に描画すると、赤い三角形による所望のオー バーラツプ(上書き)の区域における緑の三角形のい(つかのビクセルは、一方 のプロセッサにより赤く描画された後に他方のプロセッサにより、緑に描画され 、その結果、所要の赤い三角形の部分が緑になる。この問題を解決するために、 各命令に順序コードを設け、この順序コードにより、多角形を描画するべき順序 を示して、誤った上書きを防止することがよいと考えられるかもしれない、各プ ロセッサは、多角形を描画する前に、その多角形が、より早い順序コードを有し かつこれから描画されるどれか他の多角形を、上書きするか否かを決定するよう に動作することができるようになる。もしそうであれば、プロセッサは、より早 い順序コードを有する多角形の描画が完了するまで待機する。上述の簡単な例で は、小さな三角形を描画するプロセッサは、他方のプロセッサが大きな緑の三角 形を描画するまで待機する。これにより上書きの問題は克服するが、この簡単な 例において、2つの三角形は同時ではな(順次に描画されることが理解されるで あろう。このことは、より早(、オーバーラツプする多角形を他方のプロセッサ がまだ描画しているか否かを各プロセッサがチェックするのに要する時間と組み 合わせると、2つの三角形を描画するのに、この2プロセツサシステムはシング ルプロセッサシステムよりも長い時間がかかるということになる。
発明の開示 本発明は、フレームスドアの各ビクセル位置に対して、当該ビクセル位置におい て現在描画されているビクセルの所属する図形の形状または多角形の順序コード をストアするメモリをフレームスドアと並列に設けることにより、上述の問題を 克服することを目的とする。フレームスドアのあるビクセル位置に描画するか否 かを決定するにあたって、各プロセッサはそのプロセッサが描画する形状の順序 コードがメモリに格納された順序コードより遅い(この場合はそのビクセルを描 く)か、そうでない(この場合はそのビクセルを描かない)かをチェックするこ とができるる。従って、プロセッサが多角形を描くための順序に制限がなくなり 、かつ誤った上書きの問題が克服される。
単一の描画プロセッサを用いる3次元グラフイツクス描画においては、フレーム スドアに並列にメモリを設け、フレームスドア中の各X、Y、ビクセル位置に対 して、当該位置に現在書かれたビクセルの深さ2をストアすることが知られてい る。フレームスドアのX、Yビクセル位置に書くか否かを決定するにあって、こ のプロセッサは、描画されるべきビクセルの深さくインターポレーション(間隔 )により得られる)がメモリに格納された深さより小さい(この場合はそのビク セルを描()か、そうでない(この場合は、そのビクセルを描かない)かをチェ ックする。このように、この深さをバッファとして有する公知の3次元グラフイ ツクス描画システムと、本発明の2次元グラフィックス描画システムとは、ある 程度の類似性を有する。しかしながら、本発明では2次元システムにおいて複数 のプロセッサの各々が、追加の格納データと、描画される■(または多角形)の 1庄を比較するのであって、シングルプロセッサによる、深さをバッファとした 公知の3次元システムのように、その形状(または多角形)のビクセルのLiを 描画するのではない。
以下に、添付図面を参照して、−例として、本発明の特定の実施例について述べ る。
第1図は、本発明描画システムの概略回路図である。
第2図は、そのフレームスドアの内容の例を示す説明図である。
第3図は、第1図に示した各プロセッサが描画命令を実行する場合の動作のフロ ーチャートである。
第4図は、一連の命令により描画を行って第2図に示すようなフレームスドアの 内容を生成する際に実行される、ステップのテーブルを示す図である。
第5A図ないし第5C図は、一連の命令の途中の2箇所で、その一連の命令を開 始する前における、フレームスドアおよび順序バッファの内容を示す説明図であ る。
第1図を参照するに、この好適な実施例では、ポストコンピュータHCは命令レ ジスタIRに描画命令のセットを供給する。描画命令は、(i)四角形(以後“ rec”と略記する)を描く、三角形を描く、または画面(スクリーン)をクリ アするなどの命令を表わすオペレーション(命令)コード(opcode)を、 (ii)四角形の2つの反対側の隅部の座標(xl、yl) 、 (x2.y2 )または三角形の頂点の座標(xl、yl) 、 (x2.y2) i3よび( x3.y3) 、ならびに、たとえば四角形もしくは三角形の色またはスクリー ンがクリアされる色などのカラーコードのように、オペレーションコードに関連 したパラメータ、および(iii)命令の順序の形態を有する。
ここに記載の例では、以下の描画命令のセットを用いるものとする。
rec l、 1.5.5.黒、1 −(a)rec l、 4.2.5.赤、 2−(b)rec 2.2.4.4.緑、3−(C)rec 4,1,5,2. シアン、4−(d)rec 4.4.4.5.黄、5 −(e)これらの命令の 意味を以下に示す。
a: 隅部の座標が(1,1)および(5,5)の黒い四角形を描画する。
b= 命令aで描画したいかなるビクセルによっても隠れないように、隅部の座 標が(1,4)および(2,5)の赤い四角形を描画する。
C: 命令aまたはbで描画したビクセルにより隠れないように、隅部の座標が (2,2)および(4,4)の緑の四角形を描画する。
d: 命令aないしCで描画したビクセルにより隠れないように、隅部の座標が (4,1)および(5,2)のシアンの四角形を描画する。
e: 命令aないしdで描画したビクセルにより隠れないように、隅部の座標が (4,4)および(4,5)の黄色の四角形を描画する。
第1図を再び参照するに、この好適な実施例においては、描画システムはさらに 4つのプロセッサPROCOからPROC3、関連する出力レジスタORを有す るフレームスドアFS、順序バッファOB、ビデオプロセッサ■P、およびモニ タMONを有する。プロセッサPROCO〜PROC3は命令を命令レジスタI Rから非同期に読み取ることができるので、例えば、プロセッサPROC1が1 つの、より複雑な命令を実行している間に、プロセッサPROCOは2つ以上の 簡単な命令を読み取りおよび実行することができる。プロセッサPROCOから PROC3は、それぞれ、アドレスバスAB上の同一アドレスでフレームスドア FSおよび順序バッファOBにアドレス指定するように動作することができる。
プロセッサPROCOからPROC3は、それぞれ、ビクセルデータバスPDB および順序データバスODBを介して、フレームスドアFSおよび順序バッファ OBに対する読み出しおよび書き込みを、それぞれ、行うこともできる。フレー ムスドアFSおよび順序バッファOBは、簡単のため単に8×8ワードとして第 1図に示すように、同一の容量を有する。
そして、フレームスドアFSおよび順序バッファOBをアドレスバスABにより 共通にアドレス指定することによって、フレームスドアFSにおける各位置は、 順序バッファOBにおけるそれぞれの位置に関連づけられる。従来と同様に、フ レームスドアFSの出力レジスタORには、フレームスドアFSからのビクセル データが並列に行毎にロードされる。各行に対するビクセルデータは出力レジス タORからビデオプロセッサ■Pにシリアルに出力され、モニタMON上に表示 される。
この好適な実施例では、命令の実行に際し、プロセッサPROCOからPROC 3は、各々、第3図に示す順次のステップを行う。第1のステップS1では、プ ロセッサは多角形の色pcおよび多角形の順序番号POを含む命令を命令レジス タIRから読み出す。例えば、先に述べた命令“a”についてみてみると、プロ セッサは命令“rec 1,1,5.5 ”を読み、およびpc=黒、かツPO =1をセットする。この好適な実施例では、排他ロック(exclusion  1ock)を設けて、一度には、1つのプロセッサのみが命令レジスタから命令 を読み出すことができるようにする。次に、ステップS2では、プロセッサは、 周知のようにして、描画すべき第1のビクセルの位置、例えば本実施例では(1 ,1)を決定する。次いで、ステップS3では、プロセッサは順序バッファOB (およびフレームスドアFS)に対して位置(x、y)によりアドレス指定し、 その位置の順序番号OB (x、 y)に等しい現在の順序変数COをセットす る。次に、ステップS4では、プロセッサは、処理中の命令の多角形に対する多 角形の順序POが、順序バッファOBから読み出した現在の順序COより大きい か否かを決定する。もし大きければ、次にステップS5で、プロセッサはフレー ムスドアFSのそのアドレス位置(x、y)に、処理中の命令の多角形の色PC を書き込み、ステップS6において、処理中の命令の多角形の順序POを順序バ ッファOBのアドレス位置(x、y)に書き込む。このようにして、ビクセルが 書き込まれ、および順序バッファOBが更新される。
次にステップS7が続く。もしステップs4で、多角形の順序POがストアした 現順序COより太き(ないと判断された場合は、ステップS5およびS6はスキ ップされる。
従って、そのビクセルは書き込まれず、および順序バッファは更新されない。こ の好適な実施例では、排他ロックが設けられるので、ステップS3.S5または S6において、一度には1つのプロセッサのみがフレームスドアFSおよび順序 バッファOBをアドレス指定できる。さらにまた、ステップS3において、一旦 プロセッサがフレームスドアFSおよび順序バッファOBをアドレス指定すると 、ステップS6を完了するか、またはステップS4においてフレームスドアおよ び順序バッファに書き込まないと決定するかのいずれかまでは、フレームスドア および順序バッファ上に、走査線ロックをかける。走査線ロックは、他のいかな るプロセッサもがフレームスドアおよび順序バッファ内のある位置を、同一の“ y”アドレスでアクセスすることを防止し、このようにして、当該プロセッサが ステップS3で読み出したOB (x、 y)の内容を、他のプロセッサが変更 してしまうことを防止するが、その一方で、かかる他のプロセッサが異なる“y ”アドレスのアドレスにアクセスすることを、なお可能とする。ステップS7に おいて、プロセッサは、公知のようにして、その多角形を完成するためには他の いくつかのビクセルを描画する必要があるか否かを判断し、もしそうであれば、 シーケンスのループはステップS2に戻り、ここで次のビクセルが検討される。
しかし、多角形の描画が完了すると、シーケンスは終了し、プロセッサは、命令 レジスタIRから他の命令を読み出す準備を完了する。
第4図に、先に述べた一例としての命令、“a”から“e”を実行する際に、4 つのプロセッサPROCOからPROC3が実行するステップ例のテーブルを示 す。ここで、このテーブルは、第5A図に示すように、フレームスドアFSの全 てのビクセルが白色に初期設定され、および順序バッファOB内の全ての位置に ゼロ順序番号が格納されているという仮定に基づいている。第4図のテーブルは 自己説明的である。注意するべき点は、このテーブルのステップS12は、プロ セッサ(この場合はPROC3)が実行中の多角形の順序をビクセル(4,2) の現在の順序C0(3)と比較する第1のステップであるということであり、こ のことは、そのビクセルが事前にステップSllで書き込まれているので、順番 ゼロにクリアされたスクリーン(画面)ではないことを考慮している。第5B図 および第5C図に示すように、ステップS12の場合においては、多角形の順序 POが4であり、これは現在の順序3より大きいので、そのビクセルが書き込ま れる。しかしながら、次のステップS13では、多角形の順序POの1は、現在 の順序4(ステップS12で生じた順序)より太き(ないので、ステップS13 において、そのビクセルは書き込まれない、さらに注意すべき点は、ステップS L4およびステップS16で、プロセッサPROCIおよびPROC3が、それ らの現命令すおよびdの描画を完了していることである。従って、ステップS1 8では、プロセッサPROCIは次の命令“e”の実行を開始し、およびプロセ ッサPROC3は、先に述べた簡単な5命令の例においては、それ以上実行する 命令がないのでアイドル状態となる。
第4図の詳細な考察から、ステップS1からS44の全てが完了した後に、フレ ームスドアFSの内容が、第2図に示したようになることが認められるであろう 。
簡単のために、このシステムは8×8ワードのフレームスドアFSおよび8×8 ワードの順序バッフyOBを有するものとして上述のように説明してきた。実際 には、フレームスドアFSはこれよりもはるかに大きく、例えば、2kX2にワ ードの容量を有し、およびこれに対応して、出力レジスタORは、2にワードの 容量を有する。フレームスドアFSは、例えば、慣例の日立ビデオRAMを用い て実施するのが好都合である。順序バッファ0Bは、フレームスドアと等しいワ ード容量を有し、例えば、慣例の日立DRAMにより実施できる。順序バッファ OBの各ワードは、例えば、16.24、または32ビツトで構成することがで き、順序バッファにおいてオーバーフローを生じる前に、それぞれ、65535 個、16777215個、または4294967295個の多角形を描画するこ とを可能とする。
このシステムを用いて、順序バッファにおいてオーバーフローを引き起こすのに 充分な、多数の多角形を描画する場合は、好適な実施例では以下の過程を用いる ことができる。命令レジスタIRへの命令のシーケンスを、最大の順序番号、例 えば、16ビツトの場合における順序番号65535を有する命令の後に停止す る。次に、命令レジスタの中の命令のすべてが読み出され、および実行されたと きに、そのプロセッサは描画を中止する。すべてのプロセッサが中止すると、順 序バッファOBをゼロにクリアし、次いで、命令のさらなるシーケンスを、第1 の命令が順序番号1を有するようにして、命令レジスタに供給する。従って、プ ロセッサは描画を再開し、命令の新たなシーケンスによって、実行の一時的停止 の前のフレームスドアFSの、事前の内容を上書きする対象を描画する。
多(の変更および発展を、以上に記載したシステムに加え得ることが認識される であろう0例えば、いかなる複数個数′のプロセッサをも採用できる。さらにま た、描画命令の重要性を増加させることは、順序番号を増加するのではなく、減 少させろことにより行うことができる。さらに、フレームスドアFSおよび順序 バッファOBを組み合わせて単一のデバイスに構成することができる。例えば、 32ビツトのフレームスドアにおいて、16ビツトをビクセルデータの格納に用 い、および16ビツトを順序データの格納に用いることができる。
国際調査報告 国際調査報告

Claims (5)

    【特許請求の範囲】
  1. 1.ピクセル位置の配列を提供するフレームストア(FS)と、 一組の描画命令を供給する手段であって、各描画命令が、前記フレームストア内 に描画される一つの図形の形状に関連し、および各描画命令は、描画動作の種類 を指示する命令コード、その描画動作において用いられるパラメータ、および順 序コードを有する、一組の描画命令を供給する手段(HC,IR)と、並列に動 作可能であって、前記描画命令を受取り、およびピクセルを前記フレームストア に書き込んで前記関連する図形の形状を描画する複数のプロセッサ(PROCO 〜PROC3)と、 それぞれ前記フレームストアの各ピクセル位置に対応するメモリセルの配列を有 する順序バッファ(OB)と、 を具え、 各プロセッサは、前記フレームストアのピクセル位置にピクセルを書き込むか否 かを判断するときに、描画されるべき図形の形状の順序コードが、当該ピクセル に対応する順序バッファ内のメモリセルの内容よりも重要か否かを判断し、もし 重要であれば、フレームストアにそのピクセルを書き込み、およびその描画され るべき図形の形状の順序コードで当該メモリセルを更新し、およびもし重要でな ければ、当該ピクセルを書き込まないように動作可能であることを特徴とするグ ラフィックス描画システム。
  2. 2.前記フレームストアおよび前記順序バッファが共通のアドレスバスを有する ことを特徴とする請求項1に記載のグラフィックス描画システム。
  3. 3.前記フレームストアがピデオRAMで構成され、および前記順序バッファが ビデオRAMではないRAMで構成されたことを特徴とする、請求の範囲第1項 または第2項に記載のグラフィックス描画システム。
  4. 4.フレームストアおよび順序バッファが共通のビデオRAMにより構成され、 該ピデオRAMの各位置において、ピクセルデータがいくつかのピットにより格 納され、および対応する順序コードが他のピットにより格納されることを特徴と する請求の範囲第1項または第2項に記載のグラフィックス描画システム。
  5. 5.供給された命令の順序コードのオーバーフロー時に動作可能であって、命令 の供給を一時的に停止し、前もって供給された命令をプロセッサが完了させるの を許可し、および順序バッファをリセットすることを特徴とする請求の範囲第1 項ないし第4項のいずれかの項に記載のグラフィックス描画システム。
JP2508954A 1990-06-26 1990-06-26 グラフィックス描画システム Pending JPH06500871A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/GB1990/000987 WO1992000570A1 (en) 1990-06-26 1990-06-26 Graphics rendering systems

Publications (1)

Publication Number Publication Date
JPH06500871A true JPH06500871A (ja) 1994-01-27

Family

ID=10669395

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2508954A Pending JPH06500871A (ja) 1990-06-26 1990-06-26 グラフィックス描画システム

Country Status (3)

Country Link
EP (1) EP0536114A1 (ja)
JP (1) JPH06500871A (ja)
WO (1) WO1992000570A1 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7616200B1 (en) 1998-06-12 2009-11-10 3Dlabs Inc. Ltd. System for reducing aliasing on a display device
WO2000004494A1 (en) 1998-07-17 2000-01-27 Intergraph Corporation Graphics processing system with multiple strip breakers
US6181355B1 (en) 1998-07-17 2001-01-30 3Dlabs Inc. Ltd. Graphics processing with transcendental function generator
US6459453B1 (en) 1998-07-17 2002-10-01 3Dlabs Inc. Ltd. System for displaying a television signal on a computer monitor
WO2000004527A1 (en) * 1998-07-17 2000-01-27 Intergraph Corporation Apparatus and method of directing graphical data to a display device
WO2000004484A2 (en) 1998-07-17 2000-01-27 Intergraph Corporation Wide instruction word graphics processor
WO2000004482A2 (en) 1998-07-17 2000-01-27 Intergraph Corporation Multi-processor graphics accelerator
WO2000004496A1 (en) 1998-07-17 2000-01-27 Intergraph Corporation Graphics processor with texture memory allocation system
US6188410B1 (en) 1998-07-17 2001-02-13 3Dlabs Inc. Ltd. System for processing vertices from a graphics request stream
WO2000004443A1 (en) 1998-07-17 2000-01-27 Intergraph Corporation Byte reordering apparatus and method
AU3615700A (en) 1999-03-04 2000-09-21 United States Surgical Corporation Scar reduction
US6674440B1 (en) 1999-04-05 2004-01-06 3Dlabs, Inc., Inc. Ltd. Graphics processor for stereoscopically displaying a graphical image

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4209832A (en) * 1978-06-13 1980-06-24 Chrysler Corporation Computer-generated display for a fire control combat simulator
GB2210540A (en) * 1987-09-30 1989-06-07 Philips Electronic Associated Method of and arrangement for modifying stored data,and method of and arrangement for generating two-dimensional images
US4918626A (en) * 1987-12-09 1990-04-17 Evans & Sutherland Computer Corp. Computer graphics priority system with antialiasing

Also Published As

Publication number Publication date
WO1992000570A1 (en) 1992-01-09
EP0536114A1 (en) 1993-04-14

Similar Documents

Publication Publication Date Title
US5459835A (en) Graphics rendering systems
US5299309A (en) Fast graphics control system capable of simultaneously storing and executing graphics commands
JPH06500871A (ja) グラフィックス描画システム
JPH0355832B2 (ja)
JPS59231591A (ja) 画像表示装置
JPH08146941A (ja) 画像表示装置
JPS60130795A (ja) デ−タ表示装置
JPS6035075B2 (ja) Crt表示装置
JPH02189693A (ja) 三次元ディスプレイ装置
JP4482996B2 (ja) データ記憶装置とその方法および画像処理装置
JPS63120331A (ja) ウインドウ開設制御方式
JPS6138987A (ja) Crt制御装置
JPH1153573A (ja) 3次元画像処理装置及びビデオウィンドウ生成方法
JPS58107589A (ja) 表示装置における画面クリア方式
JPS6043737A (ja) ロ−カルコマンド機能付きcrtデイスプレイ装置
JPS6159484A (ja) セグメント制御方式
JPH03240096A (ja) 立て掛けウインドウ表示方式
JPH0816809A (ja) 作図方式
JPH02900A (ja) 表示制御装置
JPS638951A (ja) 情報記憶装置
JPH0496187A (ja) 画像処理装置
JPH06301374A (ja) 画像作成装置
JPS59119387A (ja) デイスプレイ表示制御方式
JPS63250737A (ja) マルチウインドウ管理装置
JPS61193189A (ja) 文字図形表示装置