JPS62219182A - Display processor for graphics display system - Google Patents

Display processor for graphics display system

Info

Publication number
JPS62219182A
JPS62219182A JP3166687A JP3166687A JPS62219182A JP S62219182 A JPS62219182 A JP S62219182A JP 3166687 A JP3166687 A JP 3166687A JP 3166687 A JP3166687 A JP 3166687A JP S62219182 A JPS62219182 A JP S62219182A
Authority
JP
Japan
Prior art keywords
data
register
pixel
sum
scene
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
JP3166687A
Other languages
Japanese (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.)
General Electric Co
Original Assignee
General Electric Co
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 General Electric Co filed Critical General Electric Co
Publication of JPS62219182A publication Critical patent/JPS62219182A/en
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
    • G06T15/405Hidden part removal using Z-buffer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
(57) [Summary] This bulletin contains application data before electronic filing, so abstract data is not recorded.

Description

【発明の詳細な説明】 発明の背景 コンピュータを使うことによって可視的な場面を合成す
ること(コンピュータ・グラフィックス)はコンピュー
タ科学の成長分野である。コンピュータ・グラフィック
スの応用範囲は数えきれないくらいあり、コンピュータ
支援設計(CAD)、例証図表の合成、テレビジョンに
使う為のタイトル及びその他のグラフィック表示の発生
及び物理的な事象のシミュレーションが含まれている。
DETAILED DESCRIPTION OF THE INVENTION Background of the Invention The use of computers to synthesize visual scenes (computer graphics) is a growing field of computer science. The applications of computer graphics are countless and include computer-aided design (CAD), composition of illustrative diagrams, generation of titles and other graphic displays for use in television, and simulation of physical events. ing.

計算機による物体(1つ又は複数)を含む場面の発生を
容品にする為に、最用の工程は表示すべき物体の3次元
の記述を作り、それをデータベースに数学的な形で貯蔵
することであるのが普通である。その後、データを処理
し且つ操作して、可視スクリーンに場面を表示すること
が出来る様にする。
In order to computerize the generation of a scene involving object(s), the primary step is to create a three-dimensional description of the object to be displayed and store it in mathematical form in a database. It is normal that this is the case. The data is then processed and manipulated so that the scene can be displayed on a viewing screen.

データベースからの情報の処理は、5つの基本的な機能
を使うものと考えることが出来る。
Processing information from a database can be thought of as using five basic functions.

1、物体を便利に扱うことが出来る小さな区分に(数学
的に)分割する。こういう区分が普通は平面多角形であ
り、各々が表示すべき物体の面の一部分を表わす。
1. Divide (mathematically) an object into smaller pieces that can be conveniently handled. These sections are usually planar polygons, each representing a portion of the surface of the object to be displayed.

2)データベースから物体の区分に対応するデータを抽
出する。
2) Extract data corresponding to the classification of objects from the database.

3.3次元の記述を「スクリーン」座標の2次元の記述
に変換する。
3. Convert the 3D description to a 2D description in "screen" coordinates.

4、区分を表示する為に作動しなければならない可視ス
クリーンの画素を選択し、その色と強度を定める。
4. Select the pixels of the visible screen that must be activated to display the segment and define their color and intensity.

56区分のどの区域が場面の中で可視であるかを決定し
、そういう区域を表示する。
Determine which areas of the 56 segments are visible in the scene and display those areas.

場面の中にある全ての物体の全ての区分に対してこの過
程を繰返すことにより、所望の場面を表わす表示が得ら
れる。
By repeating this process for all segments of all objects in the scene, a display representing the desired scene is obtained.

この発明は後の方の2つの過程に関する。更に、この発
明は可視スクリーンか他の物体を表示してもしなくても
よいが、可視スクリーン上にベクトル又は線分を描くこ
とに関する。
This invention relates to the latter two processes. Further, the invention relates to drawing vectors or line segments on a visible screen, which may or may not display the visible screen or other objects.

従来の表示プロセッサは、データを処理して表示する速
度が制限されていた。この制約は、ある程度、所要の動
作を行なう為のアルゴリズムを含むソフトウェアによっ
て制御される汎用計算機を従来用いる傾向があった為で
ある。この為、必然的に、計算を直列に行なうことが必
要になり、その為、最終結果は希望する程敏速に達成さ
れないことがある。
Traditional display processors are limited in the speed at which they can process and display data. This restriction is due, in part, to the conventional tendency to use general-purpose computers that are controlled by software that includes algorithms for performing the required operations. This necessarily requires that the calculations be performed serially, so that the final result may not be achieved as quickly as desired.

発明の要約 従って、この発明の目的は、グラフィックス処理システ
ムに対する表示プロセッサとして、従来に比べて動作速
度を著しく改善した改良された表示プロセッサを提供す
ることである。
SUMMARY OF THE INVENTION Accordingly, it is an object of the present invention to provide an improved display processor for a graphics processing system that has significantly improved operating speed as compared to the prior art.

この発明の表示プロセッサでは、専用ハードウェア及び
パイプラインを用い、必要な計算の多くが並列に行なわ
れ、その結果、動作速度が著しく高くなる。更に、独特
の効率のよいアルゴリズムを利用し、更に速度を改善す
る。
Using dedicated hardware and pipelines, the display processor of the present invention performs many of the necessary calculations in parallel, resulting in significantly faster operating speeds. Additionally, it utilizes unique efficient algorithms to further improve speed.

この発明は、ランダム走査又は点描表示とは対照的に、
ラスタ走査形表示を用いる。これは外部データベース、
及びデータ・パケットの形でデータを供給する形状プロ
セッサに関連して使うものであり、各々のデータ・パケ
ットが、3次元座標系の平面多角形又は線分を記述する
。現在好ましいと考えられる実施例のシステムでは、座
標系の原点がスクリーンの左上隅であるが、希望によっ
てはその他の場所を使ってもよい。Xの整数値は、原点
より右側の画素位置を指し、Yの整数値は上から下への
ラスタ走査線番号を指す。奥行(Z)の値はスクリーン
の背後の相対的な距離を指す。
This invention, as opposed to random scanning or stipple display,
A raster scan type display is used. This is an external database,
and shape processors that provide data in the form of data packets, each data packet describing a planar polygon or line segment in a three-dimensional coordinate system. In the presently preferred embodiment system, the origin of the coordinate system is the upper left corner of the screen, although other locations may be used if desired. The integer value of X refers to the pixel location to the right of the origin, and the integer value of Y refers to the raster scan line number from top to bottom. The depth (Z) value refers to the relative distance behind the screen.

コンピュータ・グラフィックスの分野で普通の様に、表
示すべき場面内の各々の物体が、必ずしも規則的ではな
いが、一連の小さな平面多角形に分割される。例えば人
間の顔の様な複雑な物体の場合、多角形を十分小さくす
ると共に、その形並びに色を、それらを合せたものが所
望の物体の満足し得る表示になる様にする。均一な照明
を持つ平坦な面の様な、これより簡単な物体は、一層大
きな多角形によって満足に表示することが出来る。
As is common in the field of computer graphics, each object in the scene to be displayed is divided into a series of small, but not necessarily regular, planar polygons. For complex objects, such as a human face, the polygons should be small enough, and their shapes and colors should be such that together they give a satisfactory representation of the desired object. Simpler objects, such as flat surfaces with uniform illumination, can be represented satisfactorily by larger polygons.

この発明の表示プロセッサは、複雑な物体及び簡単な物
体の両方の表示を再現しようとするものである。
The display processor of this invention seeks to reproduce the display of both complex and simple objects.

表示プロセッサには2つの基本的な動作モードがある。There are two basic modes of operation for display processors.

一方のモード(多角形埋めモードと呼ぶ)では、全ての
多角形を合ピたもの\効果が所望の物体又は場面の表示
になる様に位置ぎめされて、可視スクリーン上に多角形
が再現される。このモードでは、各々の多角形がスクリ
ーン上で、コントラスト用の輪郭によって区切られてい
ない色の区域として再現される。各々の多角形はその面
積にわたって一様な色を持つことを特徴とし、その強度
は所望の陰影に応じて変えることが出来る。
In one mode (referred to as polygon fill mode), the polygons are reproduced on the visible screen, positioned so that the composite effect of all polygons is a representation of the desired object or scene. Ru. In this mode, each polygon is represented on the screen as an area of color that is not delimited by contrasting contours. Each polygon is characterized by a uniform color over its area, the intensity of which can be varied depending on the desired shading.

陰影が外部形状プロセッサから供給される強度勾配情報
によって制御される。多角形の陰影は平坦(一様)であ
ってもよいし、或いはX方向、Y方向又はその両方向に
、多角形の面にわたって直線的に変化してもよい。
Shading is controlled by intensity gradient information provided by an external shape processor. The shading of the polygon may be flat (uniform) or may vary linearly across the face of the polygon in the X direction, the Y direction, or both.

この発明の現在好ましいと考えられる実施例では、スク
リーン上の各々の画素に対する色及び強度情報が1個の
12ビツトの2進数に組合されており、この数がフレー
ム・バッファに貯蔵される。
In the presently preferred embodiment of the invention, the color and intensity information for each pixel on the screen is combined into a 12-bit binary number and this number is stored in a frame buffer.

上位のビットは色を選定する為に使われ、下位のビット
は強度を選定する為に使われる。利用者は、色を限定す
る為にワードの内のどれだけを使うか並びに強度を限定
する為にどれだけを使うかを自由に決定することが出来
る。組合せワードを形成する為、強度計算の結果が、そ
れらをワード中の所望の位置に置く為に必要なビット数
だけ、[右シフl−Jさせられ、その後、シフトさせた
強度の値を色を選定する2進数に加える。色を選定する
ビットは最も上位の位置を占める。
The upper bits are used to select the color and the lower bits are used to select the intensity. The user is free to decide how many of the words are used to define the color as well as how many are used to define the intensity. To form a combination word, the results of the intensity calculations are right-shifted by the number of bits necessary to place them in the desired position in the word, and then the shifted intensity values are color-shifted. Add to the binary number to be selected. The bit that selects the color occupies the most significant position.

多角形埋めモードでは、表示プロセッサは色及び強度情
報を含む「スパン」を作る為に、多角形の各辺を定める
データを利用する。各々のスパンは、表示すべき1本の
ラスタ線に関する情報を持っている。各々の画素アドレ
スに於ける多角形の奥行の位置を(Z又は奥行バッファ
を使うことによって)前に処理された多角形があれば、
その奥行と比較することにより、この比較によって、新
しい多角形の方が、それまでに処理されたどの多角形よ
りも、その画素位置でスクリーンに一層接近しているこ
とが判った場合にだけ、色及び強度情報がフレーム・バ
ッファの画素アドレスに人力される。こうして、多角形
の隠れた面を除き、表示しない。多角形埋めモードで使
われる多角形は必ずしも密実でなく、内部の開口を持っ
ていてよい。この発明の考えでは、この様な開口又は切
欠きを持つ多角形は特別に処理する必要はなく、普通の
多角形と同じ様に扱われる。多角形の開口と交差する各
々のラスタ線に対し、2つ以上のスパンが発生されるが
、装置の動作は同じま\である。
In fill polygon mode, the display processor utilizes data defining each side of the polygon to create a "span" that includes color and intensity information. Each span contains information about one raster line to be displayed. If there is a previously processed polygon (by using Z or depth buffer), the depth position of the polygon at each pixel address is
By comparing its depth, only if this comparison shows that the new polygon is closer to the screen at that pixel location than any previously processed polygon. Color and intensity information is entered into the pixel address of the frame buffer. In this way, all but the hidden faces of the polygon are not displayed. The polygons used in polygon fill mode are not necessarily solid and may have internal openings. According to the idea of the present invention, polygons having such openings or notches do not need to be specially treated, and are treated in the same way as ordinary polygons. For each raster line intersecting a polygonal aperture, more than one span is generated, but the operation of the device remains the same.

2番目のモードは「ベクトル描出」と呼ばれるが、この
モードでは、スクリーンの所望の場所に真直ぐな線分を
描くことが出来る。ベクトル描出モードは「辺のハイラ
イト動作」、即ち多角形(又は1群の多角形)を多角形
自体とは異なる色の線で区切る為にも使われる。
The second mode, called "vector drawing," allows you to draw straight line segments at desired locations on the screen. The vector drawing mode is also used for "edge highlighting", ie, separating a polygon (or a group of polygons) with lines of a different color from the polygon itself.

ベクトル描出モードが各々の頂点の座標を定める情報と
(XY、XZ及びYZ平面内の)線の勾配を定める情報
を利用して、線を描く為に、作動すべき画素を逐次的に
アドレスする。
Vector drawing mode uses information that defines the coordinates of each vertex and the slope of the line (in the XY, XZ, and YZ planes) to sequentially address the pixels to be activated to draw the line. .

破線の様に見えるベクトルを描く手段も設けられている
。オン及びオフの画素の所望のパターンを作り出す「字
型」の繰返しは、64画素までにすることが出来る。こ
れは、所望のパターンに対応する1及び0の連続的に循
環する組合せを独特のシフトレジスタに用いることによ
って達成される。シフトレジスタの出力は、レジスタの
出力が“1”状態の時、フレーム・バッファに対する書
込みを禁止する。字型の特徴を多角形埋めモードと関連
して用い、生地を持つ面の効果を作り出すことが出来る
A means is also provided for drawing vectors that look like dashed lines. The repetition of the "shape" to create the desired pattern of on and off pixels can be up to 64 pixels. This is accomplished by using a unique shift register with continuously rotating combinations of 1's and 0's corresponding to the desired pattern. The output of the shift register inhibits writing to the frame buffer when the output of the register is in the "1" state. Character features can be used in conjunction with the polygon fill mode to create the effect of a surface with fabric.

この発明のその他の特徴は、以下この発明の現在好まし
いと考えられる実施例を詳しく説明する所から明らかに
なろう。
Other features of the invention will become apparent from the following detailed description of presently preferred embodiments of the invention.

発明の詳細な説明 第1図はこの発明の表示プロセッサに使うことが出来る
様な完全なグラフィックス処理システムの全体的なブロ
ック図で、主な装置とその接続を示している。表示すべ
き場面内の各々の物体又は面を記述する情報が、利用者
インターフェース10を介してシステムに入力される。
DETAILED DESCRIPTION OF THE INVENTION FIG. 1 is an overall block diagram of a complete graphics processing system such as may be used with the display processor of the present invention, showing the major devices and their connections. Information describing each object or surface in the scene to be displayed is entered into the system via the user interface 10.

この利用者インターフェースは、例えばジョイスティッ
ク、マウス、グラフィックス・タブレット、ダイヤル・
ボックス、トラックボール又は英数字キーボードにする
ことが出来る。
This user interface may include, for example, a joystick, a mouse, a graphics tablet, a dial,
It can be a box, trackball or alphanumeric keyboard.

場面を合成する為、場面の中にある各々の物体の而が一
連の平面多角形として構成され、それらを合せたものが
表示すべき物体(1つ又は複数)の厳密な近似になる様
にする。これらの多角形を定めるデータがデータベース
11に貯蔵されている。場面を表示する時、夫々1つの
多角形を記述するデータ・パケットが、一度に1つずつ
、VMEデータ母線12.を介して形状プロセッサ13
に転送される。形状プロセッサが1つのデータ・パケッ
トに対する計算をしている間、データベース11は次の
パケットを転送する用意をする。
To synthesize a scene, each object in the scene is constructed as a series of planar polygons, which together form a close approximation of the object or objects to be displayed. do. Data defining these polygons is stored in a database 11. When displaying a scene, data packets each describing one polygon are sent to the VME data bus 12.1 at a time. via shape processor 13
will be forwarded to. While the shape processor is performing calculations on one data packet, database 11 prepares to transfer the next packet.

表示すべき各々の多角形に対し、形状プロセッサ13が
表示プロセッサに対し、多角形の各辺を定めるラスタ座
標のデータ並びに全体としての多角形に関するあるデー
タを(j(給する。このデータもVMEデータ母線12
を介して伝達される。表示プロセッサ20が、受取った
辺及び多角形データをを効なラスタの各々の画素の色、
強度及び相対的な奥行を特定するデータに変換し、この
データをフレーム・バッファ及びzバッファ22.23
(第2図)に貯蔵し、最後に場面の可視的な表示をCR
T21に表示する。
For each polygon to be displayed, the shape processor 13 supplies the display processor with raster coordinate data defining each side of the polygon, as well as certain data regarding the polygon as a whole. Data bus 12
transmitted via. The display processor 20 converts the received side and polygon data into a color for each pixel of the effective raster;
Convert the intensity and relative depth into data that specifies the intensity and relative depth, and send this data to the frame buffer and z-buffer 22.23
(Fig. 2) and finally a visual representation of the scene in the CR
Display on T21.

フレーム・バッファ22及びZバッファ23はコンピュ
ータ・グラフィックスの分野で使われる普通の装置であ
る。現(「好ましいと考えられるこの発明の実施例では
、フレーム・バッファは、1280X1024個のアド
レスを持つランダムにアドレス可能なメモリ、装置で構
成され、各々のア。
Frame buffer 22 and Z buffer 23 are common devices used in the field of computer graphics. In the presently preferred embodiment of the invention, the frame buffer consists of a randomly addressable memory device with 1280x1024 addresses, each address being a randomly addressable memory device.

トレスが12ビツトを貯蔵する。Zバッファは同じ装置
の規模であるが、16ビツトを収容する。
Tres stores 12 bits. The Z buffer is the same device size, but accommodates 16 bits.

後で説明する様に、表示プロセッサに於けるデータ処理
には基本的に2つの動作モードがある。
As will be explained later, there are basically two modes of operation for data processing in a display processor.

これらのモードは多角形に色をつけるモードすなわち「
多角形埋め」モード及び線分を描くモードすなわち「ベ
クトル描出」モードである。更に、r側路」モードによ
り、夫々の動作モードに対する出発アドレスとして使う
べきX及びYアドレスを設定する為に、初期設定指令を
フレーム・バッファ及びZバッファ22.23に送るこ
とが出来る。
These modes are modes that color polygons, i.e.
These are a "polygon filling" mode and a line segment drawing mode, that is, a "vector drawing" mode. In addition, the r-side route mode allows initialization commands to be sent to the frame buffer and Z buffer 22.23 to set the X and Y addresses to be used as starting addresses for the respective modes of operation.

以下の説明では、第4図に示す座標系及び表記を用いる
。例として、第4図は、座標の格子に重ねた平面多角形
(42,43,,44,45)を示している。多角形の
内部に三角形の孔(46,47,48)がある。図示の
多角形はそれだけで完全な面であってもよいし、或いは
表示すべき複a11な面の小さなセグメントであっても
よい。表示プロセッサは両方の場合を同じ様に取扱う。
In the following description, the coordinate system and notation shown in FIG. 4 will be used. As an example, FIG. 4 shows a plane polygon (42, 43, 44, 45) superimposed on a grid of coordinates. There are triangular holes (46, 47, 48) inside the polygon. The illustrated polygon may be a complete surface by itself, or it may be a small segment of a complex surface to be displayed. The display processor handles both cases the same way.

スクリーンの左上隅を原点とするXY座標系を用いる。An XY coordinate system is used with the origin at the upper left corner of the screen.

ラスタ線は下向きに順に番号をつけ、画素位置は原点か
ら右へ順に番号をつける。画素位置は、その画素を含む
四角の左上隅の座漂によって定義される。この為、41
に示した陰影線で表わす画素は座標(7,3)にある。
Raster lines are numbered sequentially downward, and pixel positions are numbered sequentially from the origin to the right. A pixel location is defined by the drift of the upper left corner of the square containing that pixel. For this reason, 41
The pixel represented by the shaded line shown in is located at coordinates (7, 3).

各々の画素アドレス(例えばX、、Y、)は、12ビツ
ト2進ワードの最上位ビットによって表わされる整数で
構成される。然し、第4図の点Xuで示す様に、辺とラ
スタ線の交点にあるXの正確な値は、整数でないのが普
通である。ある場合には、その精密な値ではなく、Xu
の様な量の整数値が計算に使われ、こういう場合、下線
を使って(例えばXu)整数値を表わす。整数値は精密
な値に対する2進ワードを単に整数を表わすビット数に
切捨てることによって得られる。
Each pixel address (eg, X, , Y,) consists of an integer number represented by the most significant bit of a 12-bit binary word. However, as shown by point Xu in FIG. 4, the exact value of X at the intersection of the side and the raster line is usually not an integer. In some cases, rather than its exact value, Xu
Integer values of quantities such as are used in calculations, and in these cases an underline is used (for example, Xu) to represent the integer value. Integer values are obtained by simply truncating the binary word for the precise value to the number of bits representing the integer.

多角形の辺42が2つの頂点40.49で終端する。上
側の頂点(40)を持つ画素によって1組の座標X L
 、Yt +  Ztが定められ、Ztは点X、、Yt
がスクリーンの背後にある距離を表わす。Xuと呼ぶ値
も、この辺とそれが交差する最初のラスタ線(即ち、ラ
スタ線Y、+1、これをYuと呼ぶ)との交点にある(
高い精度を持つ)Xの値として定義する。
Side 42 of the polygon terminates in two vertices 40.49. A set of coordinates X L by the pixel with the upper vertex (40)
, Yt + Zt is defined, and Zt is the point X, , Yt
represents the distance behind the screen. The value we call Xu is also at the intersection of this side and the first raster line it intersects (i.e. raster line Y, +1, which we call Yu).
defined as the value of X (with high precision).

同様にXdは、辺42と頂点49の直ぐ上のラスタ線と
の交点の精密なX座標であることが判る。
Similarly, it can be seen that Xd is the precise X coordinate of the intersection of side 42 and the raster line just above vertex 49.

Xb、Y、、Z、が頂点49を持つ画素の座漂である。Xb, Y, , Z are the drifts of pixels with vertex 49.

3つの軸に対する辺の勾配が、関数dX/dY、dZ/
dX、及びdZ/dYによって表わされる。
The slopes of the sides with respect to the three axes are expressed by the functions dX/dY, dZ/
It is expressed by dX and dZ/dY.

表示に関係する別の変数は強度であり、これを文字Sで
表わす。多角形の所望の陰影に応じて、Sは、関数dS
/dXSdS/dY及びdS/dZによって表わされる
様に、任意の又は全ての軸に対して変化し得る。
Another variable that is relevant to the display is intensity, which is denoted by the letter S. Depending on the desired shading of the polygon, S is the function dS
/dXSdS/dY and dS/dZ may vary about any or all axes.

この発明の現在好ましいと考えられる実施例では、丸め
誤2が表示に影響しない様にする為に、強度の計算は2
7ビツトの精度で実施される。この精度は、表示用に必
要なよりもずっと高いが、CRTの画素強度を設定する
為にはこれより少ないビットが使われる。各々の画素に
対する色及び強度情報が、処理の間に形成された1個の
12ビツト・ワードに入っており、フレーム・バッファ
22の画素アドレスに貯蔵される。色は一番上位のと7
1・によって特定され、利用者が所望の色の数を特定す
るのに必要なビット数を選択する。強度は一番下位のビ
ットによって特定される。両方の種類の情報を含む12
ビツト・ワードを発生する為、最初に12ビツト色ワー
ドを(形状プロセッサによって)発生し、色情報は利用
者によって指定された数の最上位ビットを占め、残りの
ビットはOである。27ビツトの強度ワードを切捨てて
12ビツトに縮め、その後色ビットをよけるのに必要な
ビット数だけ右シフトさせる。その後、色ワード及び強
度ワードを加えて、両方の量を含む複合ワードを求める
。制限回路を設けて、強度ワードがワードの色ビット区
域にオーバフローしない様にする。
In the presently preferred embodiment of the invention, the strength calculation is 2 to ensure that rounding errors of 2 do not affect the display.
Implemented with 7-bit precision. This precision is much higher than needed for display purposes, but fewer bits are used to set the CRT's pixel intensity. The color and intensity information for each pixel is contained in a 12-bit word formed during processing and stored at a pixel address in frame buffer 22. The color is the highest and 7
1. The user selects the number of bits necessary to specify the desired number of colors. The strength is specified by the least significant bit. 12 containing both types of information
To generate the bit words, a 12-bit color word is first generated (by the shape processor), with the color information occupying the number of most significant bits specified by the user, and the remaining bits being O's. The 27-bit intensity word is truncated to 12 bits and then right-shifted by the number of bits necessary to avoid the color bits. The color word and intensity word are then added to find a compound word containing both quantities. A limiting circuit is provided to prevent the intensity word from overflowing into the color bit area of the word.

この発明の現在好ましいと考えられる実施例の表示プロ
セッサ20の簡略ブロック図が第2図に示されており、
この図にはプロセッサの主なブロックが示されていると
共に、主要なデータ及び命令の通路が示されている。プ
ロセッサはマイクロシーケンサ26によって直接的に制
御される。このマイクロシーケンサが、形状プロセッサ
、利用者インターフェース、又はシステムのその他の部
分の内、適当な所から、VMEデータ母線12を介して
指令を受取る。マイクロシーケンサ26の中に書込み可
能な制御貯蔵装置(ランダムにアドレス可能なメモリ装
置)があり、現在好ましいと考えられる装置では、これ
は8にワード×60ビットを収容することが出来る。初
期設定の時、表示プロセッサを制御する為のマイクロプ
ログラムが、VMEデータ母線12を介して、マイクロ
シーケンサ26の書込み可能な制御貯蔵装置部分にダウ
ンロードされる。動作中、マイクロシーケンサか一連の
アドレスを発生し、これらのアドレスに対し、書込み可
能な制御貯蔵装置によってプログラム命令が出される。
A simplified block diagram of display processor 20 of the presently preferred embodiment of the invention is shown in FIG.
This diagram shows the main blocks of the processor and shows the main data and instruction paths. The processor is directly controlled by microsequencer 26. The microsequencer receives commands via the VME data bus 12 from the geometry processor, user interface, or other portion of the system as appropriate. There is a writable control store (randomly addressable memory device) in the microsequencer 26, which in the presently preferred arrangement can accommodate 8 words by 60 bits. During initialization, a microprogram for controlling the display processor is downloaded to the writable control storage portion of the microsequencer 26 via the VME data bus 12. In operation, the microsequencer generates a series of addresses to which program instructions are issued by the writable control store.

マイクロプロセッサ27に対する命令が母線39を通り
、ビデオ処理手段に対する命令が母線34を通る。この
明細書でマイクロシーケンサ26と云う時は、マイクロ
シーケンサと書込み可能な制御貯蔵装置uの両方を指す
Instructions for the microprocessor 27 pass through bus 39 and instructions for the video processing means pass through bus 34. In this specification, references to microsequencer 26 refer to both the microsequencer and the writable control storage device u.

前に述べた様に、表示プロセッサ20が形状プロセッサ
13からデータを受取り、所望の表示が得られる様に、
そのデータを操作する。形状プロセッサから到着したデ
ータが2つの同一の入力メモリ24.25の内の一方に
供給される。各々の人力メモリ24.25は母線ゲート
、入力及び出力レジスタ、アドレス・カウンタ/レジス
タ、及びランダム・アクセス・メモリ装置で構成されて
いる。任意の所定の時に、この内の一方のメモリがVM
Eデータ母線12に結合され、他方が表示プロセッサの
Y及びD母線に結合される。この為、一方のメモリは外
部インターフェースを介して人力データを受取ることが
出来、その間他方のメモリに貯蔵されている、前に受取
ったデータに操作することが出来る。書込み可能な制御
貯蔵装置26からの命令が、入力メモリの機能の選択を
制御する。
As previously mentioned, display processor 20 receives data from shape processor 13 and processes the data to obtain the desired display.
Manipulate that data. The data arriving from the shape processor is fed into one of two identical input memories 24.25. Each human powered memory 24,25 consists of bus gates, input and output registers, address counters/registers, and random access memory devices. At any given time, one of these memories is
one is coupled to the E data bus 12 and the other is coupled to the Y and D buses of the display processor. Thus, one memory can receive human input data via an external interface while operating on previously received data stored in the other memory. Instructions from writable control storage 26 control selection of input memory functions.

メモリのアドレス指定は、マイクロプログラムの制御に
よって、逐次的でもランダムであってもよい。読取動作
を行なう時、データがメモリの出力レジスタにロードさ
れ、適当な時刻にDlす線に印加される。書込み動作で
は、Y母線からのデータがメモリの入力レジスタにロー
ドされ、その後マイクロプログラムの制御のもとにメモ
リ装置にロードされる。入力データ・ブロックを処理す
る時、入力メモリを利用して直接的な結果を貯蔵するこ
とが出来る。
Memory addressing may be sequential or random under the control of the microprogram. When performing a read operation, data is loaded into the memory's output register and applied to the Dl line at the appropriate time. In a write operation, data from the Y bus is loaded into an input register of the memory and then into the memory device under control of the microprogram. When processing an input data block, the input memory can be used to directly store the results.

算術処理用の素子及びデータ・バッファ(マイクロプロ
セッサ27、掛算器28及び関連したレジスタ)が、1
6ビツト並列算術及び論理演算を行なう。算術演算は加
算、減算、乗算、除算、増数、減数、和、単−及び多電
シフト及び比較で構成される。アンド、オア、排他的オ
ア、論理反転及びその他を含む普通の全ての論理機能を
遂行することが出来る。
Arithmetic processing elements and data buffers (microprocessor 27, multiplier 28 and associated registers)
Performs 6-bit parallel arithmetic and logical operations. Arithmetic operations consist of addition, subtraction, multiplication, division, increment, subtraction, sum, single and polyshift, and comparison. All common logic functions can be performed including and, or, exclusive or, logical inversion, and others.

乗算は高速掛算器28で行なわれる。これがY母線から
2つの16ビツト・オペランドを受取り、(2サイクル
で)D母線に32ビットの積を出力する。一方のオペラ
ンドを逆数テーブルに通すことにより、除算が行なわれ
る。このテーブルは、この明細書では、掛算器28内に
あると見なすことが出来る。
Multiplication is performed in high speed multiplier 28. It receives two 16-bit operands from the Y bus and outputs (in two cycles) a 32-bit product on the D bus. Division is performed by passing one operand through a reciprocal table. This table can be considered to be within multiplier 28 in this specification.

乗算、除算以外の全ての算術演算及び全ての論理演算が
マイクロプログラム可能なマイクロプロセッサ27で行
なわれ、現在好ましいと考えられる実施例では、このマ
イクロプロセッサは完全16ビツト並列算術/論理装置
、16ビツト・バレル・シフト装置、32個の16ビツ
ト・レジスタ及び関連した論理回路で構成される。出力
データ及び/又は中間データは入力メモリ24.25又
はスクラッチ・メモリ31に一時的に貯蔵することが出
来る。
All arithmetic operations other than multiplication and division and all logical operations are performed by a microprogrammable microprocessor 27, which in the presently preferred embodiment is a fully 16-bit parallel arithmetic/logic unit, 16-bit - Consists of a barrel shifter, 32 16-bit registers and associated logic. The output data and/or intermediate data can be temporarily stored in the input memory 24, 25 or in the scratch memory 31.

処理機能の出力が普通は64ワード×18ビッ1・の先
入れ先出しくFIFO)メモリ29に供給される。この
メモリはビデオ処理装置(VPS)30に柔軟なデータ
結合をする。
The output of the processing functions is provided to a memory 29, typically a 64-word by 18-bit first-in, first-out FIFO. This memory provides flexible data coupling to a video processing system (VPS) 30.

表示プロセッサ20に供給される情報は、多角形埋め又
はベクトル描出のどの動作モードを希望するかに関係す
る。どのモードが選択されても、情報はパケットに分け
て供給される。多角形埋めモードでは、パケットが1つ
の多角形を記述し、ベクトル描出モードでは、1つの線
分を記述する。
The information provided to display processor 20 relates to whether a mode of operation is desired, polygon filling or vector rendering. Regardless of which mode is selected, information is provided in packets. In polygon filling mode, a packet describes one polygon, and in vector drawing mode, a packet describes one line segment.

多角形埋めモードでは、パケットが多角形の各辺を定め
る情報と、全体としての多角形に関する情報を含む。各
々の辺に対し、下記のデータ(「辺パケット」と呼ぶ)
がある。
In polygon filling mode, the packet contains information defining each side of the polygon and information about the polygon as a whole. For each edge, the following data (referred to as "edge packet")
There is.

PTR・・・多角形に関連したデータをアクセスするこ
とが出来る様にする識別ポインタ。
PTR: An identification pointer that allows access to data related to a polygon.

HOR・・・辺が水平であるかどうかを示すフラグ。HOR: Flag indicating whether the side is horizontal.

SSF・・・多角形の内部が辺の左側にあるか右側にあ
るかを示す開始/停止フラグ。
SSF: Start/stop flag indicating whether the interior of the polygon is on the left or right side of the side.

Xt s Y イZ t% X u% S u+、Yb
、dX/dY、dS/dY0 全体としての多角形に対しては、次のものがある。すな
わち、多角形の面の色、dZ/dX、dZ/dY0 完全な多角形に対する上に述べた情報を人力メモリ24
.25の一方で受取った後、マイクロシーケンサ26が
そのメモリをD及びY母線に結合し、多角形を表示する
為に、ラスタ内のどの画素を作動すべきかを決定する為
の計算を開始する。
Xt s Y IZ t% X u% S u+, Yb
, dX/dY, dS/dY0 For the polygon as a whole, we have the following. That is, the color of the face of the polygon, dZ/dX, dZ/dY0 The above information for the complete polygon is stored in the manual memory 24.
.. 25, microsequencer 26 couples its memory to the D and Y busbars and begins calculations to determine which pixels in the raster to activate to display the polygon.

判り易い様に、システムの動作を第4図に例として示し
た多角形について説明する。第4図に示す画素の寸法が
、多角形の寸法に比べて非常に大きく、この為、第4図
の多角形を表示した時は実質的に歪むことに注意された
い。然し、説明の便宜の為、比較的大きな画素について
説明した方が、この発明の考えは一層判り易い。
For ease of understanding, the operation of the system will be explained using a polygon shown as an example in FIG. Note that the dimensions of the pixels shown in FIG. 4 are very large compared to the dimensions of the polygon, so that the polygon of FIG. 4 is substantially distorted when displayed. However, for convenience of explanation, the idea of the present invention will be easier to understand if a relatively large pixel is explained.

一般的に云うと、マイクロプロセッサ27、掛算器28
及び関連した部品が、入力メモリ24゜25に供給され
た辺及び多角形データを受取り、多角形の有効な各々の
ラスタ線に対し、ビデオ処理装置(VPS)30に、そ
の線上の開始及び停止画素と、開始画素に対するZ及び
Sの値を同定するデータを供給する。VPS30がそれ
に対して送られてきた勾配データと共にこのデータを受
取って、開始及び停止画素の間にある各々の画素に対す
る強度及びZの値を計算する。Zの値が隠れる面を除く
為に用いられ、Zバッファ23に貯′蔵されるが、隠れ
ない面に対する強度の値が、後でCRT21で表示する
為に、フレーム・バッファ22に貯蔵される。
Generally speaking, a microprocessor 27, a multiplier 28
and related components receive edge and polygon data provided to input memories 24-25 and, for each valid raster line of the polygon, provide a video processing system (VPS) 30 with start and stop information on that line. Provide data identifying the pixel and the Z and S values for the starting pixel. VPS 30 receives this data along with the gradient data sent to it and calculates the intensity and Z values for each pixel between the start and stop pixels. The Z value is used to exclude hidden surfaces and is stored in the Z buffer 23, while the intensity values for non-hidden surfaces are stored in the frame buffer 22 for later display on the CRT 21. .

計算を開始する時、入力メモリのアドレスのリスト(「
順序づけY、リスト」と呼ぶ)を形成し、スクラッチ・
メモリ31に貯蔵する。このリスト中のアドレスは、処
理している多角形の夫々の辺に関する辺バケット・デー
タを持っている様な、有効な入力メモリ(24又は25
)内の位置を指す。このリストは、各辺の上側の頂点、
即ちY。
When starting a calculation, a list of input memory addresses ("
ordering Y, list) and scratch
It is stored in the memory 31. The addresses in this list are valid input memories (24 or 25) that contain edge bucket data for each edge of the polygon being processed.
) indicates the position within. This list consists of the top vertex of each edge,
That is, Y.

を持つラスタ線の順序に維持される。順序づけY(リス
ト中の所定の項目は、1組より多くの辺バケッI・・デ
ータのアドレスを持っていてよい。
Raster line order is maintained with . Ordering Y (a given item in the list may have more than one set of addresses of edge buckets I...data.

第4図に示した単純な多角形に対する順序づけYtリス
トは、次の順序で、辺パケット・データを突止める為の
アドレスを持っている。
The ordered Yt list for the simple polygon shown in FIG. 4 has addresses for locating edge packet data in the following order.

項目の番号  辺パケット・アドレス 1      42.43 2      46.47 このリストには辺48が出てこないことに気がつかれよ
う。これは、辺48が水平の辺であって、同等内部の画
素を区切らないからである。水平辺フラグHORが、水
平の辺の処理を防止する。順序づけYtリストを使うこ
とにより、辺の末点より上下にあるラスタ線を処理する
ことを必要とせずに、各辺と交差するラスタ線を逐次的
に処理することが出来るので、表示プロセッサの速度が
高くなる。言換えれば、第4図に示す多角形を例として
云うと、順序づけY、リストは、辺42及び43と関連
する辺パケットの上側の頂点に関連するラスタ線、即ち
、線Oではなく、線1からデータ処理を開始することが
出来る様にする。後で判るが、データを処理するやり方
の為、実際には、ラスタ線Yt+1、即ちYu (又は
辺42及び43の場合はラスタ線2)か有効な画素を持
つ最初のラスタ線になる。
Item Number Edge Packet Address 1 42.43 2 46.47 Notice that edge 48 does not appear in this list. This is because side 48 is a horizontal side and does not separate identical internal pixels. The horizontal edge flag HOR prevents processing of horizontal edges. By using an ordered Yt list, you can process raster lines that intersect each edge sequentially, without having to process the raster lines above and below the end of the edge, thus speeding up the display processor. becomes higher. In other words, taking the polygon shown in FIG. 4 as an example, the ordering Y, list includes the raster line associated with the upper vertex of the edge packet associated with edges 42 and 43, i.e., line 0 rather than line O. To enable data processing to be started from 1. As we will see, because of the way the data is processed, it will actually be raster line Yt+1, or Yu (or raster line 2 in the case of sides 42 and 43), which is the first raster line with valid pixels.

順序づけY、リストか完成した後、表示プロセッサによ
る計算は、一連のスパンを作ることに進む。このスパン
を合せたものが、所望の色を持つ多角形かCRTスクリ
ーンに現れる様にする。
After the ordering Y, the list is complete, calculations by the display processor proceed to create a series of spans. The sum of these spans is made to appear on the CRT screen as a polygon with the desired color.

「スパン」は、多角形の2辺によって区切られたラスタ
線に沿った各々の画素の状態を定めるデータである。あ
る多角形の場合、1本の走査線に2つ以上のスパンがあ
ることがある。例えば、第4図で、ラスタ線6は2つの
スパンを含む。スパンは、多角形と交差する番号が一番
若いラスタ線(これは順序づけY、リストを参照するこ
とによって決定される)に関係するスパンから始めて、
一度に1つずつ発生される。処理を用意する為、「a効
辺すスト」を作って管理する。有効辺リストは、現在処
理しているラスタ線と交差する各々の辺に対応する辺パ
ケット・データのアドレスを含む。
"Span" is data that defines the state of each pixel along a raster line separated by two sides of a polygon. For a given polygon, there may be more than one span in a single scan line. For example, in FIG. 4, raster line 6 includes two spans. The spans start with the span associated with the lowest numbered raster line (this is determined by ordering Y, by looking up the list) that intersects the polygon,
They are generated one at a time. In order to prepare the processing, create and manage "a effect strike". The valid edge list includes the address of edge packet data corresponding to each edge that intersects the raster line currently being processed.

スパンの発生を2つの工程に分けて説明する。The generation of spans will be explained in two steps.

最初は、マイクロプロセッサ27及び廿ト算!::28
及び関連する部品によって行なわれる計算であり、2番
目はVPS30で行なわれる動作である。
At first, there were 27 microprocessors and 27 microprocessors! ::28
and the calculations performed by related components, the second being the operations performed by VPS 30.

第4図に例として示した多角形に対する順序づけY、リ
ストを考えれば、処理すべき最初のラスタ線に対応する
有効な辺が、辺42及び43であることが判る。この時
、有効辺リストは辺42゜43に対する辺パケット・ア
ドレスを持つ。辺42に対する辺パケットが開始フラグ
を持ち、これに対して辺43に対する辺パケットは停止
フラグを持っている。
Considering the ordering Y and list for the polygon shown as an example in FIG. 4, it can be seen that the valid edges corresponding to the first raster line to be processed are edges 42 and 43. At this time, the valid edge list has edge packet addresses for edges 42 and 43. The edge packet for edge 42 has a start flag, whereas the edge packet for edge 43 has a stop flag.

この発明の現在好ましいと考えられる実施例に関連して
、画素の座標(画素の空間の左上隅の座標)が多角形の
境界内になければ、画素を多角形の一部分と見なさない
と云う任意の規則を採用した。この為、この規則では、
第4図の多角形の最初の有効な画素は画素(5,2)で
ある。ラスタ線に沿った開始及び停止画素は次の式によ
って決定することが出来る。
In connection with the presently preferred embodiment of the invention, there is an option that a pixel is not considered part of a polygon unless its coordinates (the coordinates of the upper left corner of the pixel's space) are within the boundaries of the polygon. rules were adopted. For this reason, this rule:
The first valid pixel of the polygon in FIG. 4 is pixel (5,2). The start and stop pixels along the raster line can be determined by the following equation.

開始の辺では X 1−X 1 + 1 停止の辺では X2=mXl こ\でXlはスパンの開始画素のX座標、X2はスパン
の最後の画素のX座標、Xl は、辺とスパンのY座標
の実際の交点の整数値である。最初のスパン(Y−2)
では、辺42に対するXlがXu%即ち4であり、辺4
3では、X、が6である。
On the start side, X 1 - X 1 + 1 On the stop side, X2 = mXl Here, Xl is the X coordinate of the start pixel of the span, X2 is the X coordinate of the last pixel of the span, and Xl is the Y of the side and span is the integer value of the actual intersection of the coordinates. First span (Y-2)
Then, Xl for side 42 is Xu%, that is, 4, and side 4
3, X, is 6.

容易に判る様に、上に述べた計算を行なう前に、ラスタ
線に対する開始及び停止の辺のX座標の順序を定め、対
にしなければならない。対にする計算に関連して、停止
画素が開始画素よりもアドレスか小さい様な見かけのス
パンを排除する為に試験を行なう。この様な異常が起り
得るのは、多角形の一部分が見込むのが1つの画素より
小さい時、又は計算による丸め誤差により、辺が若干順
序がずれる時である。何れの場合も、こういうデータは
処理しない。対を形成すること及び順序づけが、書込み
可能な制御貯蔵装置26にあるプログラムの制御のもと
に、マイクロプロセッサ27によって行なわれる。開始
/停止座標の順序づけと、停止画素が開始画素よりも小
さいアドレスを持つ様な対を処理しない結果として、面
の中の孔が自動的に孔となって現れ、それに対処する為
に同等特別の処理を必要としない。
As can be easily seen, before performing the calculations described above, the X coordinates of the start and stop sides for the raster line must be ordered and paired. In conjunction with the pairing calculations, a test is performed to eliminate apparent spans where the stop pixel is a smaller address than the start pixel. Such anomalies can occur when a portion of a polygon looks smaller than one pixel, or when calculation rounding errors cause the edges to be slightly out of order. In either case, such data is not processed. Pairing and sequencing is performed by microprocessor 27 under control of a program located in writable control storage 26. As a result of the ordering of start/stop coordinates and not handling pairs where the stop pixel has a smaller address than the start pixel, holes in the plane automatically appear as holes, and an equivalent special ordering is required to deal with it. No further processing is required.

最初のラスタt!;I(Yu)に対するZlの値(最初
のを効な画素のZ座標)が、次の様にして、形状プロセ
ッサ13から供給されたZ、及びZ勾配から計算される
First raster t! ; The value of Zl (Z coordinate of the first effective pixel) for I(Yu) is calculated from the Z and Z gradient supplied from the shape processor 13 as follows.

Z+ −Z* + (Xu  X、)(dZ/dX)+
 d Z/d Y ニーでXuはXuの整数値である。
Z+ −Z* + (Xu X,)(dZ/dX)+
d Z/d Y knee, where Xu is an integer value of Xu.

Yuに続くラスタ線の式は次の通りである。The formula for the raster line following Yu is as follows.

Z+ wZ+  (p r e v) 十(、x、 −X+ (p r e v )(dZ/d
X)+dZ/dY Z+  (p r e v)は前のラスタ線の21 、
X 、は辺と現在のラスタ線のY座標の実際の交点の整
数値、X+  (prev)は前のラスタ線のに、であ
る。
Z+ wZ+ (p r ev) 10(, x, -X+ (p r ev) (dZ/d
X) + dZ/dY Z+ (p r e v) is 21 of the previous raster line,
X, is the integer value of the actual intersection of the Y coordinate of the edge and the current raster line, and X+ (prev) is the previous raster line.

形状プロセッサ13から供給されるデータが、S  、
即ちラスタ線Yuの最初の有効な画素u+1 (即ち、Xu+1)の強度を含む。この後のラスタ線で
は、次の式を使う。
The data supplied from the shape processor 13 are S,
That is, it includes the intensity of the first valid pixel u+1 (ie, Xu+1) of the raster line Yu. For the raster lines that follow, use the following formula:

S+ −S+  (prev)+dS/dYこ\でS+
  (p r e v)は前のラスタ線の81である。
S+ -S+ (prev)+dS/dY \S+
(p r ev) is 81 of the previous raster line.

各々のラスタ線に対する終りの強度(S2)も、開始の
Sの値及びスパンの停止Fの辺の勾配を用いて、同様に
計算される。その後、スパンの勾配dS/dXを計算す
る。
The ending strength (S2) for each raster line is similarly calculated using the starting S value and the slope of the stopping F side of the span. Then, calculate the span slope dS/dX.

dS     S! −S+ dX    x、−x、+1 分母の余分の1は、計算されたS2が、実際には、スパ
ン内の最後の画素に関するものではなく、最後の1つ先
の画素に関するものであることを考慮に入れている。
dS S! -S+ dX x, -x, +1 The extra 1 in the denominator indicates that the calculated S2 is actually not for the last pixel in the span, but for the next pixel beyond the last. taking into account.

例えば孔を含む第4図の多角形の領域に於ける様に、所
定のラスタ線に1つより多くのスパンがあることがある
。孔の各辺は多角形の辺として取扱われ、辺を対にする
時、停止フラグを伴なう辺46が開始フラグを伴なう辺
47より先にあることが認められよう。この為、辺46
.47の間にあるラスタ線の領域は処理されない。上に
述べた計算を有効な辺の多対に対して行なわなければな
らない。ラスタ線に対する全てのスパンの計算が完了し
たら、全ての有効な辺に対するYbを現在のラスタ線の
アドレスと比較する。何れかの辺に対してY、に達した
場合、その辺はそれ以上処理しない。更に、順序づけY
(リストの次の項目に対応する辺パケットをアクセスし
て、新しい辺に対するY、に達したかどうかを決定する
。その何れかが起っていれば、辺の対を適当に調節する
There may be more than one span in a given raster line, such as in the polygonal region of FIG. 4 that contains holes. Each side of the hole is treated as a side of a polygon, and when pairing the sides it will be appreciated that side 46 with the stop flag is ahead of side 47 with the start flag. For this reason, side 46
.. The region of raster lines between 47 and 47 is not processed. The above calculation must be performed for many pairs of valid edges. Once all spans have been calculated for the raster line, compare Yb for all valid edges with the current raster line address. If Y is reached for any edge, that edge is not processed any further. Furthermore, the ordering Y
(Access the edge packet corresponding to the next item in the list to determine whether Y, for the new edge has been reached. If either has happened, adjust the edge pair appropriately.

最後のYbを通過した後、その多角形に対する計算が終
了し、次の多角形に対する計算を開始する。
After passing through the last Yb, the calculation for that polygon is finished and the calculation for the next polygon is started.

例えば、第4図に示す多角形では、有効辺りストが最初
は、辺42及び43を記述する辺バケットに対するアド
レスを持っている。ラスタ線3が処理された後、辺46
及び47が有効辺りストに追加され、辺の対は42と4
6、及び47と43に更新される。ラスタ線4の後、辺
43に対するY、及び辺44に対するY、に達している
ので、辺43を削除し、辺44を有効辺りストに追加す
る。対が適当に調節される。
For example, for the polygon shown in FIG. 4, the valid edges list initially has addresses for edge buckets that describe edges 42 and 43. After raster line 3 is processed, edge 46
and 47 are added to the valid edge list, and the pair of edges is 42 and 4.
6, and updated to 47 and 43. After raster line 4, Y for edge 43 and Y for edge 44 have been reached, so edge 43 is deleted and edge 44 is added to the effective edge list. The pairs are adjusted appropriately.

スパンの計算が完了した時、その結果をFIFOレジス
タ29にロードし、その後VPS30によって要求され
た時、バッファ・レジスタ33を介してVPS30の適
当なレジスタに通される。
When the span calculation is complete, the result is loaded into FIFO register 29 and then passed through buffer register 33 to the appropriate register in VPS 30 when requested by VPS 30.

F I FO29は、別の1組のデータがFIFOにロ
ードされる間、Vr’S30が1組のスパン・データに
作用することが出来る様にする。この重なりが出来る様
にする為、F I FO29が、少なくとも完全な2組
のスパン・データを保持するのに十分な「奥行」である
ことが好ましい。・多角形埋めモードでVPS30に送
られるデータは次の通りである(各々の項目に続くビッ
ト数は、この発明の現在好ましいと考えられる実施例で
伝達するビット数であり、こ\では例として挙げた。使
うデータ母線が16ビツトしか収容することが出来ない
ので、あるデータの値は、完全に転送する為に2機械サ
イクルを必要とすることがあることに注意されたい)。
FIFO 29 allows Vr'S 30 to operate on one set of spanned data while another set of data is loaded into the FIFO. To allow for this overlap, it is preferred that the F I FO 29 be of sufficient "depth" to hold at least two complete sets of span data. - The data sent to the VPS 30 in polygon fill mode is as follows (the number of bits following each item is the number of bits conveyed in the presently preferred embodiment of this invention, and is used here as an example) Note that since the data bus used can only accommodate 16 bits, some data values may require two machine cycles to be completely transferred).

多角形データ: dZ/dX・・・30ビツト Y+−1(多角形の最初のYuの上方のラスタ線のアド
レス)・・・12ビット 色・・・12ビット 強度シフト・・・4ピツI・ 字型パターン・・・64ビツト(全部0)字型の長さ・
・・6ビツト(全部1) スパン拳データ: Xl ・・・12ビット X2・・・12ビツト Zl ・・・30ビット Sl・・・27ビット Y、 ・・・1ビツト 1nC 上に述べたちの\他に、勾配dS/dXが伝達される。
Polygon data: dZ/dX...30 bits Y+-1 (address of the raster line above the first Yu of the polygon)...12 bits color...12 bits intensity shift...4 bits I... Character pattern: 64 bits (all 0s) Character length
...6 bits (all 1) Span fist data: Xl...12 bits X2...12 bits Zl...30 bits Sl...27 bits Y, ...1 bit 1nC As mentioned above\ Additionally, the gradient dS/dX is transmitted.

所望の陰影の種類に応じて、dS/dXは多角形に関係
した量であってもよいし、或いはスパンに関係した量で
あってもよい。フラグY、 が、所定のラスタ線で最初
のスパンと共に+nc VPS30に対する信号として送られ、VPS30内の
Yレジスタ及びフレーム・バッファ及びZバッファを、
スパン・データを処理する前に、次のラスタ線に増数す
る。字型信号の意味はベクトル描出モードに関連して後
で説明する。
Depending on the type of shading desired, dS/dX may be a polygon-related quantity or a span-related quantity. A flag Y, is signaled to the +nc VPS 30 with the first span on a given raster line, and the Y register and frame buffer and Z buffer within the VPS 30 are
Increments to the next raster line before processing span data. The meaning of the character-shaped signal will be explained later in connection with the vector drawing mode.

多角形埋めモード(字型パターン・レジスタは全部01
字型の長さレジスタは全部1)に関連して述べた様に、
字型の機能は作用しない。然し、ベクトル描出モードの
字型の説明を読めば、当業者に明らかになる様に、字型
の機能を多角形埋めモードでjす用して、表示する面の
生地を定めることか出来る。
Polygon filling mode (all character pattern registers are 01)
As mentioned in connection with 1), all the length registers of the glyph type are
The glyph function has no effect. However, as will be apparent to those skilled in the art after reading the description of the glyphs in the vector rendering mode, glyph functions can be used in the polygon fill mode to define the texture of the display surface.

W、 3 A図及び第3B図はVPS30 (ビデオ処
理装置)のブロック図である。第3A図は種々のデータ
処理素子を示し、第3B図は■PSのデータ処理機能を
制御する制御装置30Bを示す。第3A図の矢印Cは、
制御装置30Bに対する接続を示す。制御装置30Bか
ら種々のレジスタ、マルチプレクサ(MUX) 、加算
器及び比較器(CMP)に対する制御線は、図面を見易
くする為に示してない。
3A and 3B are block diagrams of a VPS 30 (video processing device). FIG. 3A shows various data processing elements, and FIG. 3B shows a control device 30B that controls the data processing functions of the PS. Arrow C in Figure 3A is
Connections to control device 30B are shown. Control lines from controller 30B to the various registers, multiplexers (MUX), adders and comparators (CMP) are not shown for clarity.

線34から指令を受取ると、VPS30が線35を介し
てデータ・レジスタに対するデータのローディングを開
始する。データが、マイクロシーケンサ26の制御のも
とに予定の順序で、Y母線レジスタ31及びバッファ・
レジスタ32から線35を介して、次に述べるレジスタ
にロードされる。
Upon receiving the command on line 34, VPS 30 begins loading data to the data register via line 35. The data is transferred to the Y bus register 31 and buffer in a predetermined order under the control of the microsequencer 26.
From register 32, via line 35, the following registers are loaded.

量     レジスタ dZ/dX  :dZ/dX(52) Yl     :フレームバツファ22及びZバッファ
23 色       二色(54) 強度シフト :強度シフト(55) 字型パターン:シフトレジスタ56 (全部0)字型の
長さ :字型長(57)(全部1)これまで述べた多角
形に関係する量がロードされた後、次に述べるスパンに
関係した量が、FIFO29からバッファ・レジスタ3
3及び線35を介してロードされる。
Quantity Register dZ/dX: dZ/dX (52) Yl: Frame buffer 22 and Z buffer 23 Color Two colors (54) Intensity shift: Intensity shift (55) Character pattern: Shift register 56 (all 0) Character type Length: Character length (57) (all 1) After the polygon-related quantities described above are loaded, the span-related quantities described next are transferred from the FIFO 29 to the buffer register 3.
3 and line 35.

瓜     レジスタ X+      :X+  (5g) X2     :X2  (59) Sl     :5(61) Z+      :Z(60) Y、    :フレーム・バッファ22及びnC Zバッファ23 XlがXルジスタ58にロードされる時、フレーム・バ
ッファ22及びZバッファ23のXアドレス・レジスタ
もXlに設定される。Y、 はう1C スタ線の最初のスパンにしか伴なわない。
Melon Register X+ :X+ (5g) - The X address registers of buffer 22 and Z buffer 23 are also set to Xl. Y, crawl 1C only accompanies the first span of the star line.

この発明の現在好ましいと考えられる実施例は10MI
Izのクロック速度で動作するので、16ビツト又はそ
れ以下を持つ各々の量は100ナノ秒の1機械サイクル
内にロードすることが出来るが、16より多くのとット
を持つ瓜は、2機械サイクルでロードされる。ローディ
ングが完了した後、最初のスパンに対するスパン・デー
タの処理が開始される。種々のパラメータの計算が、1
00ナノ秒のクロック速度で並列に行なわれる。Z及び
Sの計算が高い精度(夫々30及び27ビツト)で行な
われるが、Zバッファ及びフレーム・バッファには夫々
16ビツト及び12ビットシか残されないことに注意さ
れたい。これは、丸め誤差が積重なって、装置の動作に
影響しない様にする為である。夫々16及び12ビツト
に切捨てることが、第3図のブロック図で“TRUNC
”と云う符号によって示されている。データの大きさは
、許容範囲内になる様にも制限される。この制限作用が
、第3A図では文字“LIMIT″によって示されてい
る。
The presently preferred embodiment of this invention is 10 MI
Operating at a clock speed of Iz, each quantity with 16 bits or less can be loaded in one machine cycle of 100 nanoseconds, but a melon with more than 16 bits can be loaded in two machine cycles. Loaded in cycles. After loading is complete, processing of span data for the first span begins. Calculation of various parameters is 1
It is done in parallel with a clock speed of 00 nanoseconds. Note that although the Z and S calculations are done with high precision (30 and 27 bits, respectively), only 16 and 12 bits are left in the Z buffer and frame buffer, respectively. This is to prevent rounding errors from accumulating and affecting the operation of the device. Truncating to 16 and 12 bits, respectively, is indicated by “TRUNC” in the block diagram of FIG.
The size of the data is also limited to be within an acceptable range. This limiting effect is indicated in FIG. 3A by the letters "LIMIT."

最明のスパンの計算が開始された時、Y1□。により、
フレーム・バッファ及びZバッファ22゜23のYアド
レス・レジスタが1だけ増数され、アドレスを多角形の
最1刀のラスタ線に対する値Yuにする。
Y1□ when the calculation of the brightest span begins. According to
The Y address register of the frame buffer and Z buffer 22-23 is incremented by one, making the address the value Yu for the first raster line of the polygon.

同時に、位置(XI 、Y+ )にあるZバッファ23
内のZの値が、レジスタ62を介して比較器63に結合
され、そこでZレジスタ60の内容(16ビツトに切捨
て)と比較される。レジスタ60からの値がZバッファ
にある値に等しいか又はそれより小さい時、Zレジスタ
60にある切捨てられた1直が、マルチプレクサ64.
66を介してZバッファに結合され、古いZの値の代り
ニ書込まれる。レジスタ60の内容がZバッファの古い
値より大きい場合、古い値が再びZバッファに書込まれ
る。こうして、Zバッファは、各々のアドレスで、スク
リーンに最も近い物体のZの値を記録しておく。比較器
63に於ける比較の結果が、字型パターン・レジスタ5
6からの信号と共に、アンド・ゲート65を介して制御
装置30Bに、フレーム・バッファのそのアドレスに対
する書込みを付能すべきかどうかを知らせる。こ\での
説明では、字型パターン・レジスタ56の出力は、アン
ド・ゲート65を付能する様になっていると仮定してお
り、従って、フレーム・バッファ22に新しい値が書込
まれるかどうかを決定するのは、Zの値の比較だけであ
る。字型の特徴は後で説明する。Zの値の比較により、
フレーム・バッファが一番近い物体に関係する情報だけ
を持つ様にすることにより、隠れた面が除かれることか
理解されよう。
At the same time, the Z buffer 23 at position (XI, Y+)
The value of Z in is coupled via register 62 to comparator 63 where it is compared with the contents of Z register 60 (truncated to 16 bits). When the value from register 60 is equal to or less than the value in Z-buffer, the truncated one in Z-register 60 is sent to multiplexer 64.
66 to the Z buffer and is written in place of the old Z value. If the contents of register 60 are greater than the old value in the Z-buffer, the old value is written to the Z-buffer again. Thus, at each address, the Z buffer records the Z value of the object closest to the screen. The result of the comparison in the comparator 63 is stored in the character pattern register 5.
6 along with a signal from AND gate 65 to inform controller 30B whether to enable writing to that address in the frame buffer. This discussion assumes that the output of the glyph pattern register 56 is such that it enables the AND gate 65, and therefore whether a new value is written to the frame buffer 22 or not. It is only a comparison of the values of Z that determines whether. Characteristics of character shapes will be explained later. By comparing the values of Z,
It will be appreciated that by ensuring that the frame buffer only contains information related to the closest objects, hidden surfaces are eliminated.

同時に、dZ/dXレジスタ52の内容が加算器67で
Zレジスタ60の内容に加算され、その結果がマルチプ
レクサ68を介してZレジスタ60に結合される。Zレ
ジスタ60の新しい内容は、画素位置X1+1に対応す
るZの値(Z+ +dZ/dX)である。
At the same time, the contents of dZ/dX register 52 are added to the contents of Z register 60 in adder 67 and the result is coupled to Z register 60 via multiplexer 68. The new content of Z register 60 is the value of Z (Z+ +dZ/dX) corresponding to pixel location X1+1.

上に述べたえ1°算と並列に、強度シフト・レジスタ5
5の内容がシフト装置75に作用して、Sレジスタ61
の切捨てた内容をある予定のビット数だけ右へシフトさ
せ、その結果得られた値が加算器76で色レジスタ54
の内容に加算される。制限回路98を設けて、色レジス
タ54の内容に加算される強度の値が、色ビットに侵入
しない様に保証する。こうして形成された和が前に説明
した様に色及び強度を定める。加算器76の出力がマル
チプレクサ77及びフレーム・データ・レジスタ78を
介してフレーム・バッファ22に結合される。Zの比較
により、処理している多角形がこのアドレスでは、前に
処理された多角形よりもス′クリーンに一層接近してい
ることが判った場合、前に述べた様に、フレーム・バッ
ファに対するこの値の書込みが行われる。
In parallel with the 1° calculation described above, the intensity shift register 5
5 acts on the shift device 75, and the contents of S register 61
The truncated contents of are shifted to the right by a predetermined number of bits, and the resulting value is sent to the color register 54 by the adder 76.
is added to the contents of A limiting circuit 98 is provided to ensure that the intensity value added to the contents of the color register 54 does not invade the color bits. The sum thus formed determines the color and intensity as previously explained. The output of adder 76 is coupled to frame buffer 22 via multiplexer 77 and frame data register 78. If the Z comparison shows that the polygon being processed is closer to the screen at this address than the previously processed polygon, then the frame buffer is This value is written to.

更に同時に、dS/dXレジスタ85の内容が加算器8
6でSレジスタ61の内容に加算され、この結果得られ
る新しい強度の値が、マルチプレクサ87を介してSレ
ジスタ61に結合される。
Furthermore, at the same time, the contents of the dS/dX register 85 are transferred to the adder 8.
6 is added to the contents of S register 61 and the resulting new intensity value is coupled to S register 61 via multiplexer 87 .

これが画素X1+1に使われるSの値(S1+dS/d
X)である。
This is the value of S used for pixel X1+1 (S1+dS/d
X).

最後に、XI レジスタ58とX2レジスタ59の比較
が比較器90で行なわれる。それらが同じでなければ、
Xl レジスタと、フレーム・バッファ22及びZバッ
ファ23にあるXアドレス拳レジスタを全てまたけ増数
し、画素X1+1に対して上に述べた計算を繰返す。X
l レジスタの増数は、加算器93でレジスタの内容に
1を加算し、その結果をレジスタに書込むことによって
行なわれる。XI レジスタの内容がX2レジスタ59
の内容と等しくなるまで、この過程を続け、そうな  
    ・った時、比較器90が制御装置30Bからマ
イクロシーケンサ26に対し、線36を介して1ビツト
の「済み」信号を送出させる。「済み」信号は、VPS
30が1つのスパンに対する計算を完了したことを示す
が、この「済み」信号を受取った時、マイクロシーケン
サ26はFIFO29によって、VPS30のレジスタ
を次のスパンに対するデータで埋め始める様にさせる。
Finally, a comparison of XI register 58 and X2 register 59 is performed in comparator 90. If they are not the same,
The Xl register and the X address registers in the frame buffer 22 and Z buffer 23 are all incremented, and the above calculation is repeated for pixel X1+1. X
The number of registers is increased by adding 1 to the contents of the register in adder 93 and writing the result to the register. The contents of the XI register are X2 register 59
Continue this process until the contents of
• When the comparator 90 causes the controller 30B to send a 1-bit "done" signal to the microsequencer 26 via line 36. The “Completed” signal is the VPS
Upon receiving this "done" signal, microsequencer 26 causes FIFO 29 to begin filling the registers of VPS 30 with data for the next span.

所定の多角形に対する全てのスパンが完了するまで、こ
の過程を続け、その後別の多角形を開始するが、又はベ
クトル描出モードで線分を描くことが出来る。
This process continues until all spans for a given polygon are completed, and then another polygon is started, or the line segment can be drawn in vector drawing mode.

次に遂行すべき機能がベクトルを描くことである場合、
又は面の陰影とは異なる陰影で多角形の辺を描くこと(
辺のハイライト化)である場合、上に述べたのとは異な
る処理アルゴリズムを用いて、フレーム・バッファ及び
Zバッファを埋める。
If the next function to perform is to draw a vector,
Or draw the sides of the polygon with a different shading from the shading of the faces (
(edge highlighting), a different processing algorithm than described above is used to fill the frame buffer and Z buffer.

ベクトル描出モードで入力メモリ24.25が受取る情
報は、多角形埋めモードで受取る情報と同様であるが、
それとは若干界なっている。例として、次に第5図に示
した線分について、ベクトル描出モードで線分を描く場
合を説明する。この線分は画素空間(9,1)内に上側
の頂点を持ち、空間(1,5)内に下側の頂点を持って
いる。記号は多角形埋めモードに用いたものと同じであ
る。
The information received by the input memory 24, 25 in the vector drawing mode is similar to the information received in the polygon filling mode, but
It's a little different from that. As an example, a case in which the line segment shown in FIG. 5 is drawn in vector drawing mode will be described next. This line segment has an upper vertex in pixel space (9,1) and a lower vertex in space (1,5). The symbols are the same as those used for the polygon filling mode.

例として、こ\で考えている線分を描くときに作動され
る画素区域には(描く線分が可視スクリーンに一番接近
している物体であると仮定して)陰影線を施しである。
As an example, the pixel area that is activated when drawing the line segment considered here is given a shading line (assuming that the line segment being drawn is the closest object to the visible screen). .

各々のベクトルに対し、形状プロセッサ13からVME
データ母線12を介して下記の量が送られる。
For each vector, the VME from the shape processor 13
The following quantities are sent via the data bus 12:

XL  (XI ) Yz(YI) X、(X?) Y、(Yz ) Zt又はその代りにZb Xu又はその代りにXv dX/dY dZ/dX dZ/dY 色(強度を含む) 字型のパターン 字型の長さ XL + Yt及びX、、Ybが送られる順序により、
線分が上から下へ描かれるのが、下から上へ描かれるの
かり決定される。上に記載したリストの順序により、下
向きに描かれる。x、、ybをXI I Y1位置に、
X、、Y、をX2.Y2位置に送り、交代的な量Z、及
びXbを送ることにより、上向きに描かれる様になる。
XL (XI) Yz(YI) X, (X?) Y, (Yz) Zt or Zb instead Xu or Xv instead dX/dY dZ/dX dZ/dY Color (including intensity) Letter pattern Depending on the length of the shape XL + Yt and the order in which X, , Yb are sent,
Whether a line segment is drawn from top to bottom is determined by whether it is drawn from bottom to top. They are drawn downwards in the order listed above. x,,yb at XI I Y1 position,
X, ,Y, as X2. By sending to position Y2 and sending alternating amounts Z and Xb, it will be drawn upwards.

次に説明するのは下向きに描く場合である。The next explanation will be about drawing downward.

描く方向が、2つのフラグSBX及びSBYによって定
められる。これらのフラグは、XlをXこと、そしてY
lをYlと比較する結果として、マイクロプロセッサ2
6によって発生される。
The drawing direction is determined by two flags SBX and SBY. These flags set Xl to X, and Y
As a result of comparing l with Yl, microprocessor 2
Generated by 6.

XlがX2より大きければ、5BX−1であり、Ylが
Yzより大きければ、5BY−1である。
If Xl is larger than X2, it is 5BX-1, and if Yl is larger than Yz, it is 5BY-1.

これらのフラグは、描出順序の間、vPS30にあるX
l及び/又はYl レジスタ(58及び95)を増数す
るか減数するかを決定する。SBフラグがセット(1)
されていれば、関連するレジスタは減数に設定され、こ
のフラグがセットされていない(0)時、レジスタが増
数される。XI レジスタ58を増数しく5BX−1)
 、YI レジスタ95を増数する(SBY−0)場合
、ベクトルは左下向きに描かれる。SBXかOに設定さ
れていれば、Xルジスタが増数され、ベクトルは右へ進
む。SBYが1であれば、ベクトルが上向きに描かれる
。Xl及びYl レジスタの増数又は減数は、関連する
レジスタの内容に1を加算し又は1をd算して、その結
果をレジスタに書込む加算器93.94によって行なわ
れる。
These flags are
Determine whether to increment or decrement the l and/or Yl registers (58 and 95). SB flag set (1)
If so, the associated register is set to decrement, and when this flag is not set (0), the register is incremented. XI Increase register 58 5BX-1)
, YI When the register 95 is incremented (SBY-0), the vector is drawn downward to the left. If set to SBX or O, the X register is incremented and the vector advances to the right. If SBY is 1, the vector is drawn upward. Incrementing or decrementing the Xl and Yl registers is performed by adders 93.94 that add 1 or d-multiply the contents of the associated register and write the result to the register.

多角形埋めモードの場合と同じく、線分を描くのに必要
なデータが、2つの通路の一方、即ちFIFO29とバ
ッファ・レジスタ33を介して、又はY)=)線レジス
タ31とバッファ・レジスタ32を介して、VPS 3
0に結合される。下記のレジスタにロードされる。
As in the polygon filling mode, the data needed to draw a line segment is routed through one of two paths: via FIFO 29 and buffer register 33, or via line register 31 and buffer register 32. via VPS 3
Combined with 0. Loaded into the following registers.

データ     レジスタ XI       :XI  (58)YV     
  :YI  (95)Zt      :Z(60) Xu      :Xu (61) Xb      :X2  (59) Yk+      :Yz  (96)dX/dY  
 : dX/dY (85)dZ/dX   :dZ/
dX(52)dZ/dY   :dZ/dY(97)色
         二色(54) 字型パターン 二字型パターン(56)字型の長さ  
二字型長(57) 1(OR:制御装置30B SBX     :制御装置30B SBY     ;制御装置30B フレーム・バッファ22及びZバッファ23のアドレス
・レジスタを夫々線70.71を介してx、、y、に設
定する。
Data register XI:XI (58)YV
:YI (95)Zt :Z(60) Xu :Xu (61) Xb :X2 (59) Yk+ :Yz (96)dX/dY
: dX/dY (85) dZ/dX : dZ/
dX (52) dZ/dY: dZ/dY (97) Color Two colors (54) Letter pattern Two letter pattern (56) Letter length
Two-character length (57) 1 (OR: Control unit 30B SBX: Control unit 30B SBY; Control unit 30B frame buffer 22 and Z buffer 23 address registers x, , y, Set to .

VPS30のレジスタにデータをロードした後、マイク
ロシーケンサ26からの指令によって描出順序が開始さ
れる。Zレジスタ60の内容(Zバッファと同じビット
数(16)に切捨てる)とZバッファの前の内容との比
較は、多角形埋めモードについて前に述べたのと同様に
行なわれるが、各々の計算の後、Zレジスタ60が、X
アドレスを増数する度に、d Z/d Xだけ増数する
だけでなく、Yアドレスを増数する度に、dZ/dYレ
ジスタ97からのdZ/dYだけ増数する点が異なる。
After loading data into the registers of VPS 30, a command from microsequencer 26 initiates the rendering sequence. Comparison of the contents of the Z register 60 (truncated to the same number of bits as the Z buffer (16)) and the previous contents of the Z buffer is done in the same way as described above for the fill polygon mode, but for each After the calculation, the Z register 60
The difference is that each time the address is increased, the number is not only increased by dZ/dX, but also each time the Y address is increased, the number is increased by dZ/dY from the dZ/dY register 97.

何れかの比較に於けるZレジスタ60の切捨てた内容が
、そのアドレスにあるZバッファ23の内容に等しいか
又はそれより小さい場合、Zの新しい値をZバッファに
書込み、色レジスタ54の内容をマルチプレクサ77及
びフレーム・データ・レジスタ78を介して、前に述べ
たのと同様に、フレーム・バッファ22に結合する。
If the truncated contents of Z register 60 in any comparison is less than or equal to the contents of Z buffer 23 at that address, then the new value of Z is written to the Z buffer and the contents of color register 54 are written. It is coupled to frame buffer 22 via multiplexer 77 and frame data register 78 in the same manner as previously described.

初期画素アドレスは1盲に述べた様にXt、Ytである
。例として第5図に示したベクトルを使うと、X、、Y
、が座標(9,1)にあることが判る。XlがX2より
大きく、Y2がYlより大きいから、5BX−1であり
、5BY=0である。
The initial pixel addresses are Xt and Yt as described in 1. Using the vectors shown in Figure 5 as an example,
It can be seen that , is at the coordinates (9, 1). Since Xl is larger than X2 and Y2 is larger than Yl, 5BX-1 and 5BY=0.

従って、ベクトルの描出が進むにつれて、Xl レジス
タ58を減数し、Y】 レジスタ95を増数する。
Therefore, as the drawing of the vector progresses, the Xl register 58 is decremented and the Y] register 95 is incremented.

fEmのレジスタを増数又は減数する前に、YlをY2
と比較しく比較器9’l)、XlをX2と比較する(比
較器92)。XlをXuと比較する(Xuレジスタ61
の内容は12ビツトに切捨てる。比較器90)。第5図
に示す特定の例の線分では、YL = 1 、 Y=識
5、Xl−9、X2電1、及びXu−8である。どの比
較でも等しくない場合、こ\で選んだ例の場合がそうで
あるが、Xルジスタ58を1画素空間だけ減数し、フレ
ーム・バッファ及びZバッファのXアドレス・レジスタ
も同様にする。この後、Zの比較とZバッファ及びフレ
ーム・バッファに対する書込み動作が、今度アドレスさ
れた画素(8,1)に対して繰返される。X及びYの比
較を今回行なうと、XuがXl レジスタ58の内容に
等しいことが判る。そうなった時、比較器92は制御装
置30Bが、レジスタY1とフレーム・バッファ及びZ
バッファ(22,23)のYアドレス・レジスタを増数
することが出来る様にする。同時に、dX/dYし゛ジ
メタ85の内容がXuレジスタ61の内容に加算される
。この時、Xuレジスタ61の内容は、ベクトルとY−
3の交点の正確な座標になる。ベクトルとY画素座標の
交点が27ビツトの精度で計算され、その値が後でX座
標の整数のアドレスを現す様に切捨てられることが理解
されよう。その理由は、辺のハイライト作用を行なう為
にベクトルを描く時、ベクトルが正確に多角形の辺に現
れ、多角形の色を持つ画素がハイライト化した辺を越え
てはみ出さない様にする為である。
Before incrementing or decrementing the register of fEm, set Yl to Y2.
comparator 9'l) and compares Xl with X2 (comparator 92). Compare Xl with Xu (Xu register 61
The content of is truncated to 12 bits. comparator 90). In the particular example line segment shown in FIG. 5, YL=1, Y=5, X1-9, X2-1, and Xu-8. If none of the comparisons are equal, as is the case in the example chosen here, the X register 58 is decremented by one pixel space, and the X address registers of the frame buffer and Z buffer are similarly done. After this, the Z comparison and write operations to the Z buffer and frame buffer are repeated for the now addressed pixel (8,1). A current comparison of X and Y shows that Xu is equal to the contents of the Xl register 58. When this happens, comparator 92 causes controller 30B to register Y1, frame buffer and Z
It is possible to increase the number of Y address registers of buffers (22, 23). At the same time, the contents of the dX/dY dimeter 85 are added to the contents of the Xu register 61. At this time, the contents of the Xu register 61 are the vector and Y-
This will be the exact coordinates of the intersection of 3. It will be appreciated that the intersection of the vector and the Y pixel coordinate is calculated with 27 bit precision and that the value is later truncated to represent the integer address of the X coordinate. The reason is that when drawing a vector to highlight an edge, the vector appears exactly on the edge of the polygon, and pixels with the polygon's color do not protrude beyond the highlighted edge. It is for the purpose of

画素(8,3)のアドレスに於けるZの比較及び(1丁
込み動作を繰返した後、3回のXの比較が行なわれるが
、等しくならない。この為、Xl  レジスタ58とZ
バッファ及びフレーム・バッファのXアドレス・レジス
タが1アドレスだけ減数される。Xl レジスタ58と
X2レジスタ59が等しくなるが、Yl レジスタ95
とY2レジスタ96が等しくなるが、又はその両方が起
るまで、この手順がクロック・サイクル毎に繰返される
。Xl(58)がX2  (59)に等しくなった後、
Xレジスタはもはや減数せず、YL(95)がY2(9
6)に等しくなった後、Yレジスタはもはや増数しない
。両方が等しくなった時、ベクトルが完成し、制御装置
30Bが線36を介してマイクロシーケンサ26「済み
」信号を送る。
After repeating the comparison of Z at the address of pixel (8, 3) and the one-input operation, three comparisons of X are performed, but they are not equal. Therefore, the Xl register 58 and Z
The buffer and frame buffer X address registers are decremented by one address. Xl register 58 and X2 register 59 are equal, but Yl register 95
This procedure is repeated every clock cycle until and/or both occur. After Xl (58) becomes equal to X2 (59),
The X register no longer decrements and YL(95) becomes Y2(9
6), the Y register no longer increments. When both are equal, the vector is complete and controller 30B sends a "done" signal to microsequencer 26 via line 36.

容易に判る様に、ベクトルの内、Zバッファ23に貯蔵
されているZの値がそのアドレスに於けるベクトルのZ
の値より小さい領域は描かれず、その領域で前に入力さ
れた物体がバッファにと望まっでいて、最後の場面で表
示される。同様に、この後の多角形又は線で、そのZの
値から、それらの方が任意の画素アドレスで描かれたベ
クトルよりも、場面の正面に一層接近していることが判
る様なものが、そのアドレスにあるベクトルを押退ける
As can be easily seen, the Z value stored in the Z buffer 23 of the vector is the Z value of the vector at that address.
Areas smaller than the value of will not be drawn, and objects previously entered in that area will be buffered and displayed in the final scene. Similarly, subsequent polygons or lines whose Z values indicate that they are closer to the front of the scene than the vector drawn at any pixel address are , displaces the vector at that address.

これまで線分を描くことについて説明したことは、装置
の「字型」能力を考慮してしなかった。
The discussion so far about drawing line segments has not taken into account the "character shape" capabilities of the device.

こ\で使う「字型」と云う言葉は、装置が破線の様な途
切れた線を発生することが出来ることを云う。ベクトル
の特定の画素か作動されるかどうかを制御する為に、字
型パターン・レジスタ56及び字型具レジスタ57を使
うことにより、種々の組合せの字型パターンを使うこと
が出来る。
The term ``character'' as used here refers to the ability of the device to generate broken lines, such as broken lines. By using glyph pattern register 56 and glyph register 57 to control whether particular pixels of the vector are activated, various combinations of glyph patterns can be used.

字型パターン・レジスタ56は64ビット並列入力、直
列出力の循環形シフトレジスタであり、VPS3Qにベ
クトル描出データがロードされる時に、4つの逐次的な
16ビツト・ワードがロードされる。更に、字型具レジ
スタ又はカウンタ57に6ビツト・ワードがロードされ
る。字型具カウンタ57にある6ビツト・ワードが、字
型パターン・レジスタ56の内の作用する長さを制御し
、この為、最大64段を利用し得るが、字型具カウンタ
57の内容に応じて、レジスタは一層短いレジスタとし
て作用し得る。即ち、字型パターンの繰返しが40画素
であれば、字型具カウンタ57は、字型パターン・レジ
スタ56が40段の循環形シフトレジスタとして動作す
る様に設定される。
The digit pattern register 56 is a 64-bit parallel-in, serial-out circular shift register that is loaded with four sequential 16-bit words when the VPS3Q is loaded with vector rendering data. Additionally, a 6-bit word is loaded into the glyph register or counter 57. A 6-bit word in glyph counter 57 controls the working length of glyph pattern register 56, so up to 64 stages can be utilized, but the contents of glyph counter 57 Accordingly, the register may act as a shorter register. That is, if the repetition of the glyph pattern is 40 pixels, the glyph counter 57 is set so that the glyph pattern register 56 operates as a 40-stage circular shift register.

64ビットのプログラム可能な長さを持つ字型パターン
・レジスタ56は、ゲート・カウント及び面積を最小限
に抑える様に独特な形で設計されている。典型的なシフ
トレジスタは各々のセルに対し、フリップフロップ形メ
モリ素子とマルチプレクサを用いて設計される。2対1
のマルチプレクサは、シフト/ロード信号に応じて、セ
ルの前の値又は母線の値の何れかを選択する。シフトレ
ジスタを1乃至64のプログラム可能な長さを持つ様に
することにより、マルチプレクサ及び選択論理回路を更
に複雑化する。この場合のマルチプレクサは3対1の選
択器になる。3つの入力は、プリセットされた又はロー
ド可能な値と、シフト・モードの一番近い隣りと、プロ
グラム可能な長さを選択する為の循環ビットとである。
The 64-bit programmable length glyph pattern register 56 is uniquely designed to minimize gate count and area. A typical shift register is designed using a flip-flop type memory element and a multiplexer for each cell. 2 to 1
The multiplexer selects either the previous value of the cell or the bus value in response to the shift/load signal. Making the shift register have a programmable length from 1 to 64 further complicates the multiplexer and selection logic. The multiplexer in this case becomes a 3-to-1 selector. The three inputs are a preset or loadable value, a nearest neighbor for shift mode, and a rotation bit to select a programmable length.

この発明に於ける字型パターン・レジスタ56の独特な
11カ成により、ゲート・カウントは、600を越える
2人力の同等なゲートを必要とする典型的な設計から約
400個のゲートに減少した。
Due to the unique 11 configuration of letter pattern register 56 in this invention, the gate count is reduced to approximately 400 gates from a typical design requiring over 600 two-man equivalent gates. .

こういうことを達成する為に、まずメモリ・セルはD形
うッチに変更し、ゲート数をセル1個当り6から3.5
個に減少した。こういうことが可能なのは、レジスタが
セルからセルへデータをシフトするのではなく、出力の
接続を多重化するからである。出力のシフト作用は、3
段の4対1マルチプレクサによって行なわれる。第1段
が64ビツトを16個に減少し、第2段が16個の中か
ら4個を選択し、第3段が残りの4個から1つのビット
を選択する。マルチプレクサの3段にわたって64個の
ラッチの中を順次進むことが、6ビツトの字型具カウン
タ57によって行なわれる。カウンタの出力がマルチプ
レクサの選択線を制御する。プログラムされた長さに達
した後、カウンタがリセットされ、再び計数を開始する
。全体として、ゲートの数は、従来と比べて、同等の性
能及び融通性を持つ場合に、1/3に減少する。
To achieve this, we first changed the memory cells to D-type gates and increased the number of gates from 6 to 3.5 per cell.
decreased to 1. This is possible because registers multiplex output connections rather than shifting data from cell to cell. The output shift effect is 3
This is done by a 4-to-1 multiplexer in stages. The first stage reduces the 64 bits to 16, the second stage selects 4 of the 16, and the third stage selects 1 bit from the remaining 4. Stepping through the 64 latches across the three stages of the multiplexer is accomplished by a 6-bit digitizer counter 57. The output of the counter controls the select line of the multiplexer. After reaching the programmed length, the counter is reset and starts counting again. Overall, the number of gates is reduced by a factor of 3 with comparable performance and flexibility compared to the prior art.

字型具カウンタ57及び字型パターン・レジスタ56の
ブロック図が第6図に示されている。64個のD形うッ
チ101が4個の16ビツト入力レジスタ105に結合
されることが示されている。
A block diagram of the glyph counter 57 and glyph pattern register 56 is shown in FIG. Sixty-four D-type switches 101 are shown coupled to four 16-bit input registers 105.

線35から入る字型パターンを定める入力データが、逐
次的な4個の16ビツト・ワードとして、人力レジスタ
105−1、−2)−3及び−4を介して64個のD形
しジスタ101−1乃至101−64に供給される。4
つずつのグループにある各々のラッチのQ出力が16個
のマルチプレクサ102−1乃至102−16に供給さ
れる。同様に、4つずつのマルチプレクサ102のグル
ープの出力が、4つのマルチプレクサ103−1乃至1
03−4の内の1つに供給される。最後に、4つのマル
チプレクサ103の出力が最後のマルチプレクサ104
に供給される。
Input data defining the glyph pattern entering from line 35 is sent as four sequential 16-bit words to 64 D-shaped registers 101 via manual registers 105-1, -2)-3 and -4. -1 to 101-64. 4
The Q output of each latch in each group is provided to sixteen multiplexers 102-1 through 102-16. Similarly, the outputs of each group of four multiplexers 102 are output from four multiplexers 103-1 to 1.
03-4. Finally, the outputs of the four multiplexers 103 are output to the last multiplexer 104.
supplied to

字型具カウンタ57が線35から6ビツト信号を受取り
、この信号はこのカウンタが、字型パターンにある繰返
しの数まで計数し、その後最初から開始する様に設定す
る。字型具カウンタ57の出力が、64個のラッチ10
1の中から、カウンタのカウントに応じて、マルチプレ
クサ102゜103.104を介して字型パターン・レ
ジスタ56の出力に結合すべき1つを選択する。字型長
カウンタ57のカウントが変化する時、マルチプレクサ
104の出力がラッチ101を順次走査する。こうして
字型パターン・レジスタ56は、プログラム可能な長さ
を持つ並列入力直列出力のシフトレジスタとして作用す
る様にさせる。
A glyph counter 57 receives a 6-bit signal on line 35 which sets the counter to count up to the number of repeats in the glyph pattern and then start over. The output of the shape tool counter 57 is 64 latches 10
1 to be coupled to the output of the glyph pattern register 56 via multiplexers 102, 103, 104, depending on the count of the counter. The output of multiplexer 104 sequentially scans latch 101 as the count in shape length counter 57 changes. This allows the glyph pattern register 56 to act as a parallel-in-serial-out shift register with programmable length.

ベクトル描出モードに於けるこの発明の字型の特徴の作
用を例示する為、15画水素オン、5画素がオフ、5画
素がオン、5画素がオフ、5画素がオン、そして最後に
5画素がオフであるという破線効果を持つベクトルを描
きたい場合を仮定する。言換えれば、一層長いダッシュ
の後に2つの短いダッシュが続く。字型の長さは字型長
カウンタ57によって40画素に設定される。これは、
それが繰返しに入っている画素の総数であるからである
。その時、字型パターン・レジスタ56は40段のシフ
トレジスタである様に動作し、第4O段の出力が段1に
循環する。字型制御装置では負の論理を用い(レジスタ
56からのOが有効な画素になる)、この為レジスタ5
6のローディングは15個の0,5個の1.5個の0,
5藺の1.5個の0及び5個の1にすべきである。字型
パターン・レジスタ5′6の出力がアンド・ゲート65
に結合され、これは(適当なZの比較に応じて)制御装
置30Bに、字型パターン・レジスタ56が1の出力を
持つ時には、何時でも、フレーム・バッファへのデータ
書込みを禁止する様に合図する。
To illustrate the effect of the glyph features of this invention in vector rendering mode, we will turn on 15 pixels, 5 pixels off, 5 pixels on, 5 pixels off, 5 pixels on, and finally 5 pixels. Suppose we want to draw a vector with a dashed line effect where is off. In other words, a longer dash is followed by two shorter dashes. The length of the character shape is set to 40 pixels by the character length counter 57. this is,
This is because it is the total number of pixels in the repetition. The letter pattern register 56 then operates as if it were a 40 stage shift register, with the output of the fourth O stage circulating to stage one. The glyph controller uses negative logic (O from register 56 is a valid pixel), so register 5
The loading of 6 is 15 0s, 5 1.5 0s,
It should be 1.5 0's and 5 1's. The output of the character-shaped pattern register 5'6 is connected to the AND gate 65.
This instructs controller 30B (depending on the appropriate Z comparison) to inhibit writing data to the frame buffer whenever glyph pattern register 56 has an output of 1. Give a signal.

場面の中の全ての多角形及び線分の処理が終った時、フ
レーム・バッファ22は、CRT21のスクリーン上の
各々の画素に対応する12ビット・ワードをt!1って
いる。各々のワードが、照明すべき各々の画素に要求さ
れる色と強度に関する情報を持っている。場面を表示す
る為、フレーム・バッファのアドレスをラスタ式に走査
し、各々のアドレスの内容が色ルックアップ・テーブル
36及びD/A変換器37に通されてからCRT21に
送られる。フレーム・バッファの各々のアドレスに対し
、ルックアップ・テーブル36によって3つのディジタ
ル・ワードが発生され、それがD/A変換器37で電圧
の振幅に変換された後、CRT21の赤、緑及び青の電
子銃を駆動して、各々の画素に所望の色と強度を発生す
る。
When all polygons and line segments in the scene have been processed, frame buffer 22 stores t!2 12-bit words corresponding to each pixel on the screen of CRT 21. 1 is there. Each word carries information regarding the color and intensity required for each pixel to be illuminated. To display a scene, the addresses of the frame buffer are scanned in raster fashion, and the contents of each address are passed through a color lookup table 36 and a D/A converter 37 before being sent to the CRT 21. For each address in the frame buffer, three digital words are generated by the look-up table 36, which are converted to voltage amplitudes by the D/A converter 37, and then the red, green and blue signals of the CRT 21 are generated. The electron gun is activated to generate the desired color and intensity for each pixel.

【図面の簡単な説明】[Brief explanation of drawings]

第1図はグラフィックス処理システム全体の簡略ブロッ
ク図、第2図はこの発明の表示プロセッサのブロック図
、第3A図及び第3B図は併せてこの発明のビデオ処理
装置を示すブロック図、第4図は多角形埋めモードに於
けるこの発明の詳細な説明する為の多角形の例を示す線
図、第5図はベクトル描出モードに於けるこの発明の詳
細な説明する為の線分の例を示す線図、第6図はこの発
明の字型パターン・レジスタ及び字型長カウンタのブロ
ック図である。
FIG. 1 is a simplified block diagram of the entire graphics processing system, FIG. 2 is a block diagram of the display processor of the present invention, FIGS. 3A and 3B are block diagrams together showing the video processing device of the present invention, and FIG. The figure is a line diagram showing an example of a polygon for explaining the invention in detail in the polygon filling mode, and Fig. 5 is an example of a line segment for explaining the invention in detail in the vector drawing mode. FIG. 6 is a block diagram of the glyph pattern register and glyph length counter of the present invention.

Claims (1)

【特許請求の範囲】 1)ラスタ走査形コンピュータ・グラフィックス・シス
テム用の表示プロセッサに於て、表示すべき場面の少な
くとも一部分に関係するデータを受取って貯蔵する入力
メモリと、処理プログラムを貯蔵する制御貯蔵装置と、
前記プログラムの制御のもとに前記メモリにあるデータ
に算術及び論理操作を行なう算術処理装置と、前記入力
メモリ及び算術処理装置の両方からのデータを受取り、
表示すべき場面の前記部分の一部を形成する各々の画素
に対し、前記場面内での相対的な奥行及び強度を並列に
計算するビデオ処理装置と、表示すべき前記場面の一部
を形成する各々の画素の色と強度を定めるデータを貯蔵
する手段と、表示すべき前記場面の前記部分にある各々
の画素位置に於ける相対的な奥行を前に処理した場面の
部分の各々の前記画素位置に於ける相対的な奥行と比較
する手段と、前記表示すべき場面の前に処理された部分
の相対的な奥行が、表示すべき場面の前記部分の前記画
素位置に於ける相対的な奥行より小さい場合、表示すべ
き場面の前記部分の一部を形成する画素に対する色及び
強度データの貯蔵を防止する手段とを有する表示プロセ
ッサ。 2)特許請求の範囲1)に記載した表示プロセッサに於
て、更に、前記入力メモリ、前記算術処理装置及び前記
ビデオ処理装置の間のデータ通路から独立して、前記制
御貯蔵装置から前記算術処理装置及び前記ビデオ処理装
置に至る、プログラム命令に対する通路を含む表示プロ
セッサ。 3)特許請求の範囲1)に記載した表示プロセッサに於
て、更に、前記算術処理装置からのデータを前記ビデオ
処理装置に結合する先入れ先出しメモリを含む表示プロ
セッサ。 4)特許請求の範囲1)に記載した表示プロセッサに於
て、前記入力メモリが2つの区分で構成されており、該
区分は、前に受取ったデータを表示プロセッサ内で利用
することが出来る様な形で、データを受取る為に入力母
線に結合される状態と前記算術処理装置に結合される状
態が交互に代る様にした表示プロセッサ。 5)3次元物体の表示を2次元ラスタに表示するシステ
ムで、表示スクリーンのラスタ線の少なくとも一部分の
上の各々の画素の所望の強度を限定するデータを発生す
るビデオ処理装置に於て、ラスタ上の予定の第1の画素
の所望の画素強度を定めるデータを貯蔵する第1のデー
タ・レジスタと、強度の増分値を定めるデータを貯蔵す
る第2のデータ・レジスタと、前記第1及び第2のデー
タ・レジスタの内容の和を反復的に形成して、前記第1
のデータ・レジスタの内容を前記和に置換える手段と、
各々の和を受取って、それを予定のアドレスに貯蔵する
第3のデータ・レジスタとを有するビデオ処理装置。 6)特許請求の範囲5)に記載したビデオ処理装置に於
て、更に前記ラスタ線の前記部分にある画素の色を定め
るデータを貯蔵する第4のデータ・レジスタと、該第4
のデータ・レジスタの内容を各々の前記和に加算して・
数個のディジタル・ワードを形成する手段とを有し、前
記色を定めるデータが、前記ディジタル・ワード中の第
1群のディジットによって表わされ、強度を定めるデー
タが前記ディジタル・ワード中の第2群のディジットに
よって表わされる様にし、前記ディジタル・ワードが、
前記和の代りに、前記第3のデータ・レジスタに貯蔵さ
れるビデオ処理装置。 7)特許請求の範囲6)に記載したビデオ処理装置に於
て、前記第4のデータ・レジスタの内容を各々の和に加
算する前記手段が、各々の前記和のディジットの位置を
変えて、前記第4のデータ・レジスタの内容の内、色デ
ータが占めるディジット位置に0だけを含む2進数を作
り出す手段を有するビデオ処理装置。 8)特許請求の範囲5)に記載したビデオ処理装置に於
て、表示すべき場面内にある各々の画素に対応する物体
上の点の、該場面内での相対的な奥行を定めるデータを
貯蔵する第4のデータ・レジスタと、奥行の増分値を定
めるデータを貯蔵する第5のデータ・レジスタと、第4
及び第5のデータ・レジスタの内容の合計を反復的に形
成する手段と、該合計を受取って予定のアドレスに貯蔵
する第6のデータ・レジスタと、各々の前記合計を前記
第6のデータ・レジスタの対応するアドレスに貯蔵され
ている前に求めた合計と比較し、前記合計が対応するア
ドレスに貯蔵されている前に求めた合計を越える場合、
該合計並びにそれに対応する前記和の貯蔵を禁止する手
段とを有するビデオ処理装置。
Claims: 1) In a display processor for a raster scan computer graphics system, an input memory receives and stores data related to at least a portion of a scene to be displayed, and a processing program is stored. a control storage device;
an arithmetic processing unit that performs arithmetic and logical operations on data in the memory under control of the program; and receiving data from both the input memory and the arithmetic processing unit;
a video processing device for calculating in parallel relative depth and intensity within said scene for each pixel forming part of said portion of said scene to be displayed; means for storing data defining the color and intensity of each pixel in the portion of the scene to be displayed; and means for storing data defining the color and intensity of each pixel in the portion of the scene previously processed; means for comparing the relative depth at the pixel position of the previously processed portion of the scene to be displayed; means for preventing the storage of color and intensity data for pixels forming part of said portion of the scene to be displayed if the depth is less than the depth of said portion of the scene to be displayed. 2) A display processor according to claim 1, further comprising: a data path between the input memory, the arithmetic processing unit and the video processing unit; a display processor including a path for program instructions to the device and the video processing device; 3) A display processor according to claim 1, further comprising a first-in-first-out memory for coupling data from said arithmetic processing unit to said video processing unit. 4) In the display processor according to claim 1), the input memory is constituted by two sections, the sections being arranged so that previously received data can be used in the display processor. a display processor alternating between being coupled to an input bus and coupled to said arithmetic processing unit for receiving data; 5) A system for displaying a representation of a three-dimensional object in a two-dimensional raster, in which a raster is generated in a video processing device that generates data defining a desired intensity of each pixel on at least a portion of a raster line of a display screen. a first data register storing data defining a desired pixel intensity of the first pixel of the above schedule; a second data register storing data defining an incremental value of intensity; iteratively forming the sum of the contents of the two data registers of the first
means for replacing the contents of the data register with said sum;
a third data register for receiving each sum and storing it at a predetermined address. 6) The video processing device according to claim 5) further comprising: a fourth data register for storing data defining a color of a pixel in the portion of the raster line;
Add the contents of the data registers to each of the above sums.
means for forming a number of digital words, wherein the color defining data is represented by a first group of digits in the digital word, and the intensity defining data is represented by a first group of digits in the digital word. such that said digital word is represented by two groups of digits,
The video processing device stores the sum in the third data register instead of the sum. 7) The video processing apparatus according to claim 6), wherein said means for adding the contents of said fourth data register to each sum changes the position of a digit of each said sum; A video processing device comprising means for producing a binary number containing only zeros in the digit positions occupied by color data within the contents of said fourth data register. 8) In the video processing device according to claim 5), data defining the relative depth within the scene of a point on the object corresponding to each pixel within the scene to be displayed is provided. a fourth data register for storing data; a fifth data register for storing data defining a depth increment;
and means for iteratively forming a sum of the contents of a fifth data register; and a sixth data register for receiving and storing said sum at a predetermined address; Compare with the previously determined sum stored in the corresponding address of the register, and if said sum exceeds the previously determined sum stored in the corresponding address;
a video processing device comprising said sum and corresponding means for inhibiting storage of said sum.
JP3166687A 1986-02-21 1987-02-16 Display processor for graphics display system Pending JPS62219182A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US83251886A 1986-02-21 1986-02-21
US832518 1992-02-07

Publications (1)

Publication Number Publication Date
JPS62219182A true JPS62219182A (en) 1987-09-26

Family

ID=25261878

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3166687A Pending JPS62219182A (en) 1986-02-21 1987-02-16 Display processor for graphics display system

Country Status (4)

Country Link
JP (1) JPS62219182A (en)
DE (1) DE3705124A1 (en)
FR (1) FR2594980A1 (en)
GB (1) GB2187368A (en)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4827413A (en) * 1987-06-16 1989-05-02 Kabushiki Kaisha Toshiba Modified back-to-front three dimensional reconstruction algorithm
US5084830A (en) * 1987-10-26 1992-01-28 Tektronix, Inc. Method and apparatus for hidden surface removal
KR930000693B1 (en) * 1988-09-14 1993-01-29 가부시키가이샤 도시바 Pattern data generating apparatus
US5036316A (en) * 1989-04-03 1991-07-30 Honeywell Inc. Method and apparatus for high speed linear shading in a raster graphics system
EP0431776A3 (en) * 1989-11-17 1992-11-19 Digital Equipment Corporation Method of drawing a line segment in a graphics system
CA2030022A1 (en) * 1989-11-17 1991-05-18 Brian M. Kelleher System and method for drawing antialiased polygons
GB2243520A (en) * 1990-04-11 1991-10-30 Afe Displays Ltd Image creation system
GB2245463A (en) * 1990-06-18 1992-01-02 Rank Cintel Ltd Generating graphic images with run length encoded data
US5293467A (en) * 1991-04-03 1994-03-08 Buchner Gregory C Method for resolving priority between a calligraphically-displayed point feature and both raster-displayed faces and other calligraphically-displayed point features in a CIG system
GB2278524B (en) * 1993-05-28 1997-12-10 Nihon Unisys Ltd Method and apparatus for rendering visual images employing area calculation and blending of fractional pixel lists for anti-aliasing and transparency
US5463723A (en) * 1993-09-20 1995-10-31 International Business Machines Corporation Method and apparatus for filling polygons
US8339411B2 (en) 2006-05-04 2012-12-25 Microsoft Corporation Assigning color values to pixels based on object structure
US7609269B2 (en) 2006-05-04 2009-10-27 Microsoft Corporation Assigning color values to pixels based on object structure

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3602702A (en) * 1969-05-19 1971-08-31 Univ Utah Electronically generated perspective images
US4679041A (en) * 1985-06-13 1987-07-07 Sun Microsystems, Inc. High speed Z-buffer with dynamic random access memory

Also Published As

Publication number Publication date
GB2187368A (en) 1987-09-03
GB8704004D0 (en) 1987-03-25
DE3705124A1 (en) 1987-09-24
FR2594980A1 (en) 1987-08-28

Similar Documents

Publication Publication Date Title
JP3023685B2 (en) Image display data processing device
US6333744B1 (en) Graphics pipeline including combiner stages
US6246421B1 (en) Apparatus and method for parallel rendering of image pixels
US4808988A (en) Digital vector generator for a graphic display system
US5214753A (en) Video system with parallel attribute interpolations
US6333747B1 (en) Image synthesizing system with texture mapping
US5157388A (en) Method and apparatus for graphics data interpolation
Swanson et al. A fast shaded-polygon renderer
JPS62219182A (en) Display processor for graphics display system
US5025405A (en) Method of interpolating pixel values
EP1847965A1 (en) Plotting device and plotting method
EP0349582A1 (en) Cellular addressing permutation bit map raster graphics architecture.
JP2523889B2 (en) Hidden surface treatment device
JPWO2007043293A1 (en) Image generation device, texture mapping device, image processing device, and texture storage method
JP2618951B2 (en) 3D graphics processor
EP0416421B1 (en) A clipping processor
JPH0546592B2 (en)
US5740344A (en) Texture filter apparatus for computer graphics system
US5418901A (en) Shading method and shading apparatus for computer graphics
US4945497A (en) Method and apparatus for translating rectilinear information into scan line information for display by a computer system
EP0314250A2 (en) Video digital analog signal processing and display
JPH11283047A (en) Image forming device, its method, image forming program recording medium, image synthesizing device, its method and image synthesizing program recording medium
US4393453A (en) Region information processing system
US5315540A (en) Method and hardware for dividing binary signal by non-binary integer number
EP0256488B1 (en) Method of interpolating pixel values