JPH0887606A - Stereoscopic image processing device - Google Patents

Stereoscopic image processing device

Info

Publication number
JPH0887606A
JPH0887606A JP6221807A JP22180794A JPH0887606A JP H0887606 A JPH0887606 A JP H0887606A JP 6221807 A JP6221807 A JP 6221807A JP 22180794 A JP22180794 A JP 22180794A JP H0887606 A JPH0887606 A JP H0887606A
Authority
JP
Japan
Prior art keywords
polygon
value
mapping
register
address
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
JP6221807A
Other languages
Japanese (ja)
Inventor
Naohito Shiraishi
尚人 白石
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP6221807A priority Critical patent/JPH0887606A/en
Publication of JPH0887606A publication Critical patent/JPH0887606A/en
Pending legal-status Critical Current

Links

Landscapes

  • Image Generation (AREA)

Abstract

(57)【要約】 【目的】 この発明は、演算量を少なくし、ハードウェ
ア量を小さくして、簡易なパーススペクティブテクスチ
ャ・マッピングが行なえる立体画像処理装置を提供する
ことを目的とする。 【構成】 三角形状のポリゴンの端点情報、Z値及びポ
リゴンパラメータメモリアドレスを格納するスクリーン
メモリ5、ポリゴンの端点の視野座標値、マッピングポ
リゴンの投影方向、マッピングパターンメモリのアドレ
ス値、及び2辺のベクトルの外積値の逆数を格納するポ
リゴンパラメータメモリ40と、を備え、ポリゴンの法
線ベクトルの方向からポリゴンの投影方向を判断し、ポ
リゴン外形処理装置20、内部処理装置30にて2次元
要素のみから2次元のマッピングパターンメモリアドレ
スを内積マッピング方法により演算して、マッピングパ
ターンメモリ7をアクセスし、各画素の画情報を読み出
し、CRT9に表示する。
(57) [Summary] [Object] An object of the present invention is to provide a stereoscopic image processing apparatus capable of performing simple perspective texture mapping by reducing the amount of calculation and the amount of hardware. [Structure] Triangular polygon end point information, screen memory 5 for storing Z value and polygon parameter memory address, polygon end point visual field coordinate value, mapping polygon projection direction, mapping pattern memory address value, and two sides A polygon parameter memory 40 for storing the reciprocal of the outer product value of the vector; and determining the projection direction of the polygon from the direction of the normal vector of the polygon, and the polygon contour processing device 20 and the internal processing device 30 only use two-dimensional elements. Then, the two-dimensional mapping pattern memory address is calculated by the inner product mapping method, the mapping pattern memory 7 is accessed, the image information of each pixel is read and displayed on the CRT 9.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】この発明は、3次元多面体物体を
2次元スクリーン上に投影して表示する立体画像処理装
置に関し、特に、テクスチャ平面の所望の領域の画素情
報を、ディスプレイ平面の所望の領域の図形データ上に
投影するマッピング処理装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a stereoscopic image processing apparatus for projecting and displaying a three-dimensional polyhedron object on a two-dimensional screen, and in particular, it provides pixel information of a desired area of a texture plane to a desired area of a display plane. The present invention relates to a mapping processing device that projects on a graphic data of a region.

【0002】[0002]

【従来の技術】3次元立体図形を透視変換処理、遠近処
理等によって、CRTディスプレイ等の2次元(平面)
スクリーン上に合成して表示する場合、手前に存在する
物体が、それより奥にある物体の一部または全てを隠す
処理、すなわち隠面消去処理を行う必要がある。隠面消
去処理の方法としては、Zソート法(塗り重ね法)、Z
バッファ法、スキャンライン法等が知られている。
2. Description of the Related Art Two-dimensional (flat) of a CRT display or the like by subjecting a three-dimensional solid figure to perspective conversion processing, perspective processing, etc.
In the case of compositing and displaying on the screen, it is necessary for an object existing in the front to perform a process of hiding a part or all of the objects located behind it, that is, a hidden surface erasing process. As a method of hidden surface removal processing, Z sort method (painting over method), Z
A buffer method, a scan line method, etc. are known.

【0003】Zソート法は、処理が非常に高速に行える
という利点があるものの、ポリゴンが交差していたりす
ると、モデルを正しく描画することができないという欠
点がある。
The Z-sort method has an advantage that the processing can be performed at a very high speed, but has a drawback that a model cannot be drawn correctly when polygons intersect each other.

【0004】ポリゴンの処理の内部で画素(ピクセル)
を単位とする前後判定を行い、上記Zソート法の欠点を
なくすようにしたアルゴリズムがZバッファ法である。
Zバッファ法は、各画素に表示すべきポリゴンの色デー
タとその面の奥行き、すなわち物体のZ値(始点からの
距離)を画素単位に記憶しておき、新しいポリゴンが入
力される度に記憶しているZ値と新しいポリゴンのZ値
を比べ、新しいZ値の方が小さい時のみZ値を更新し、
同時に新しいポリゴンの色データを登録するものであ
る。これによって遠くにある物体は近くにある物体によ
って上書きされ、結果として隠面消去された画像を得る
ことができる。
Pixels within the processing of polygons
The Z-buffer method is an algorithm that makes a determination before and after in units of 10 to eliminate the drawbacks of the Z-sort method.
In the Z buffer method, the color data of the polygon to be displayed in each pixel and the depth of the surface, that is, the Z value (distance from the starting point) of the object is stored in pixel units, and is stored each time a new polygon is input. The Z value of the new polygon is compared with the current Z value, and the Z value is updated only when the new Z value is smaller.
At the same time, new polygon color data is registered. This allows distant objects to be overwritten by nearby objects, resulting in an image with hidden surfaces removed.

【0005】このZバッファ法は、物体のZ値を記憶さ
せるためのZバッファメモリを画素毎に必要とし、全体
では画素数分の大きさを持つ大きな画像メモリが必要に
なるという問題がある。
This Z-buffer method requires a Z-buffer memory for storing the Z-value of an object for each pixel, and has a problem that a large image memory having a size corresponding to the number of pixels is required as a whole.

【0006】一方、スキャンライン法はCRTのよう
に、ラスタスキャン毎に各画素の色データを表示する場
合、隣り合う画素、すなわち、すぐ次のスキャンライン
の画素は現画素と非常に強い相関関係を持つことに注目
した方法で、逐次処理を行う装置に適しているが、多く
の計算を必要として、制御論理も複雑になるという欠点
を有する。
On the other hand, in the scan line method, when color data of each pixel is displayed for each raster scan like CRT, the adjacent pixel, that is, the pixel of the next scan line, has a very strong correlation with the current pixel. This method is suitable for a device that performs sequential processing by paying attention to the fact that it has, but has a drawback that it requires many calculations and the control logic becomes complicated.

【0007】上記の両隠面消去処理方法の中間的な隠面
処理として、スキャンライン間は相関関係を利用し、1
ライン内はZバッファ法を用いた装置が、例えば、特開
昭62−100878号公報に開示されている。これに
は、「奥行き距離(Z値)を保持する奥行きレジスタ
と、輝度(色・輝度)データを保持する輝度レジスタ
と、平面セグメントの範囲内の内外判定、奥行き距離の
変位加算、奥行きデータの比較を分割的に行う一つの加
算器と、入力された平面セグメントトークンに関する情
報を更新しながら一段のパイプラインレジスタを通して
出力する入出力手段、及び輝度レジスタの内容を外部に
出力する輝度データバスとを備えた隠れ線処理装置」が
開示されている。この装置によれば、少ないハードウェ
ア量で隠面処理を行うことができる。
As an intermediate hidden surface processing of the above two hidden surface removal processing methods, the correlation between scan lines is used to
An apparatus using the Z buffer method in the line is disclosed in, for example, Japanese Patent Laid-Open No. 62-100878. This includes "a depth register that holds the depth distance (Z value), a brightness register that holds the brightness (color / luminance) data, inside / outside determination within the range of the plane segment, displacement addition of the depth distance, and depth data One adder for performing divisional comparison, an input / output means for outputting the information about the input plane segment token through a one-stage pipeline register, and a luminance data bus for outputting the contents of the luminance register to the outside. Hidden line processing device provided with ". According to this device, hidden surface processing can be performed with a small amount of hardware.

【0008】また、物体表面の模様、凹凸を表現するた
めに、テクスチャ・マッピングが行われる。このマッピ
ング処理方式として、リアルタイムに画像を生成するア
ルゴリズムが提案されている。例えば、テレビ学会技術
報告 TEBS105−9PPOE62−9(198
5)の「3次元特殊効果装置」に詳しい。
Further, texture mapping is performed in order to express patterns and irregularities on the surface of the object. As this mapping processing method, an algorithm for generating an image in real time has been proposed. For example, the Technical Report of the Television Society of Japan, TEBS105-9PPOE62-9 (198).
Details on 5) "3D special effect device".

【0009】上記マッピング処理方式は、まず、形状生
成演算によって、入力画面内の一部の点を出力画面上の
点に写像し、出力画面上の中間点については、演算され
た一部の点から補間・逆写像演算(内挿マッピング演
算)を施すことにより、入力画面上の点とを対応づけ
る。すなわち、形状の連続性を利用して空間補間を行う
ことにより、形状生成演算の負荷を軽減する。
In the above mapping processing method, first, some points in the input screen are mapped to points on the output screen by a shape generation operation, and some intermediate points on the output screen are calculated. By interpolating / inverse mapping calculation (interpolation mapping calculation) from, the points on the input screen are associated with each other. That is, the load of the shape generation calculation is reduced by performing the spatial interpolation using the continuity of the shapes.

【0010】また、形状の一部についての演算結果から
全体の形状を演算するので、少量の中間データに対して
時間補間を施すことにより、形状生成演算の負荷をより
軽減できる。
Further, since the entire shape is calculated from the calculation result of a part of the shape, the load of the shape generation calculation can be further reduced by performing time interpolation on a small amount of intermediate data.

【0011】更に、フィルタ制御データ、内挿制御デー
タも容易に算出できるという利点がある。そして、空間
補間・時間補間の演算はマッピング形状が変わっても全
く同じ演算でよい。
Further, there is an advantage that the filter control data and the interpolation control data can be easily calculated. The spatial interpolation / temporal interpolation calculation may be the same even if the mapping shape is changed.

【0012】上記の空間補間について説明する。形状面
は、少なくとも局所的には連続であることを利用し、3
次元形状をポリゴン(多面体)近似し、その頂点につい
てのみ形状生成演算を行う。
The above spatial interpolation will be described. Utilizing that the shape surface is continuous at least locally,
A three-dimensional shape is approximated to a polygon (polyhedron), and the shape generation operation is performed only for the vertices.

【0013】出力画面上の点から入力画面上の点へのマ
ッピング演算は、図31に示すように、三角板形状のポ
リゴンの頂点座標から3頂点の重み係数K,L,Mを算
出し、対応する入力画面の頂点座標に対して重み係数を
作用させて、入力画面上の対応点を求める。
As shown in FIG. 31, the mapping operation from the point on the output screen to the point on the input screen is performed by calculating the weighting factors K, L and M of the three vertices from the vertex coordinates of the triangular plate-shaped polygon. A corresponding point on the input screen is obtained by applying a weighting factor to the vertex coordinates of the input screen.

【0014】すなわち、図32に示すように、各頂点を
(AX,AY,AZ)、(BX,BY,BZ)、(C
X,CY,CZ)、(PX,PY,PZ)とすると、入
力画面上の対応点を図33に示すフローチャートに基づ
き算出している。
That is, as shown in FIG. 32, each vertex is (AX, AY, AZ), (BX, BY, BZ), (C
X, CY, CZ), (PX, PY, PZ), the corresponding points on the input screen are calculated based on the flowchart shown in FIG.

【0015】この演算は、まず、各頂点間の距離を算出
し(ステップS100)、ベクトルABとベクトルAC
の外積を求める(ステップS101)。そして、対応点
(P)までの距離を算出し(ステップS102)、対応
点と各頂点間のそれぞれのベクトルの外積を求める。す
なわち、ベクトルPBとベクトルPCの外積(ステップ
S103)、ベクトルPCとベクトルPAの外積(ステ
ップS104)、ベクトルPAとベクトルPBの外積
(ステップS105)を求める。次に、3頂点の重み係
数K,L,Mを算出し(ステップS106)、この重み
係数を作用させて対応点を求めている(ステップS10
7)。
In this calculation, first, the distances between the vertices are calculated (step S100), and the vectors AB and AC are calculated.
The outer product of is calculated (step S101). Then, the distance to the corresponding point (P) is calculated (step S102), and the cross product of the vectors between the corresponding point and each vertex is obtained. That is, the outer product of the vector PB and the vector PC (step S103), the outer product of the vector PC and the vector PA (step S104), and the outer product of the vector PA and the vector PB (step S105) are obtained. Next, the weighting factors K, L, and M of the three vertices are calculated (step S106), and the weighting factors are applied to obtain corresponding points (step S10).
7).

【0016】また、隠面消去のための裏表判定フラグ
は、ABベクトルとACベクトルの積のz成分の符号を
用い、面が視点側を向いているか反対側を向いているか
の判断を行い、視点側を向いた面についてのみマッピン
グ演算を実行する。
As the front / back determination flag for erasing the hidden surface, the sign of the z component of the product of the AB vector and the AC vector is used to determine whether the surface is facing the viewpoint side or the opposite side. The mapping operation is performed only on the surface facing the viewpoint.

【0017】[0017]

【発明が解決しようとする課題】しかしながら、上記の
補間逆写像演算すなわち内挿マッピングアルゴリズム
は、図31に示す式を使用しており、これを逆方向のパ
ーススペクティブテクチャマッピングを行う時、3次元
ポリゴン座標から2次元のマッピングパターン座標を求
める場合、図33に示すようなフローチャートに基づく
演算となり、かなり多くの演算を必要とするためリアル
タイムにマッピングするには多くのハードウェアを必要
とするという問題があった。
However, the above-mentioned interpolation inverse mapping operation, that is, the interpolation mapping algorithm, uses the formula shown in FIG. 31, which is used to perform perspective perspective mapping in the reverse direction. When the two-dimensional mapping pattern coordinates are obtained from the polygon coordinates, the calculation is based on the flowchart shown in FIG. 33, which requires a large number of calculations, and therefore requires a lot of hardware for real-time mapping. was there.

【0018】この発明は、2次元要素のみから2次元の
マッピングパターン座標を求める内挿マッピング処理を
行うことにより、演算量を少なくし、ハードウェア量を
大きく必要とする平方根の演算をはぶくことにより、ロ
ーコストに簡易なパーススペクティブテクチャ・マッピ
ングをリアルタイムに処理することが可能な立体画像処
理装置を提供することを目的とする。
According to the present invention, by performing the interpolation mapping processing for obtaining the two-dimensional mapping pattern coordinates from only the two-dimensional elements, the calculation amount is reduced and the square root calculation which requires a large amount of hardware is applied. An object of the present invention is to provide a stereoscopic image processing device capable of processing simple perspective texture mapping in real time at low cost.

【0019】[0019]

【課題を解決するための手段】この発明は、三角形状の
ポリゴンを構成する端点情報とテクスチャ画像を格納す
るマッピングパターンメモリの端点情報とポリゴンの奥
行き情報を格納する記憶手段と、上記記憶手段からの各
端点情報を座標変換し、スクリーン端点情報に変換する
と共に、ポリゴン視野座標上の法線ベクトルの方向によ
りマッピングポリゴンの投影する方向を選択する変換手
段と、マッピングポリゴンの投影方向に基づきポリゴン
の2辺のベクトルの外積値の逆数を算出する手段と、上
記ポリゴンの端点の視野座標値、マッピングパターンメ
モリの端点情報とマッピングポリゴンの投影する方向と
2辺のベクトルの外積値の逆数を格納するポリゴンパラ
メータメモリと、上記変換手段からのスクリーン端点情
報とポリゴンの奥行き情報と上記ポリゴンパラメータメ
モリのアドレス値を格納するスクリーンメモリと、上記
変換手段からのスクリーン端点情報に基づいてポリゴン
外形のアドレス情報及びポリゴンの奥行き情報並びにポ
リゴンパラメータメモリのアドレス値をスキャンライン
ごとにポリゴンの外形部分の情報にそれぞれ変換する外
形処理手段と、上記外形処理手段にて算出された対向す
る2辺間の情報を演算し、Xアドレスの変位奥行き情報
の変位を算出する手段と、スキャンラインの各画素に対
応する画素位置がポリゴンの範囲内に存在するか否か判
別する手段と、一番手前に存在する画素の奥行き情報と
その画素位置のポリゴンの奥行き情報比較すると共に比
較する対象の奥行き情報を常に一番手前に存在するポリ
ゴンの奥行き情報に書き換える手段と、ポリゴンの奥行
き情報に上記奥行き情報の変位を加算し隣接する画素位
置の奥行き情報を算出する手段と、比較した画素位置に
おける一番手前に存在するポリゴンの対向する2辺間の
少なくとも一方のXアドレスとポリゴンパラメータメモ
リのアドレス値を算出する手段と、算出されたポリゴン
パラメータメモリのアドレス値によりアクセスして読み
出されたポリゴンパラメータメモリの情報に基づいてポ
リゴンの3頂点の重み係数を算出し、マッピングパター
ンメモリのアドレス値を算出する手段と、上記算出され
たマッピングパターンアドレスに基づき上記マッピング
パターンメモリをアクセスし、画像データを表示手段に
転送する手段と、を備えてなる。
According to the present invention, there is provided storage means for storing end point information of a mapping pattern memory for storing end point information constituting a triangular polygon and a texture image and depth information of the polygon, and the storage means. The coordinate information of each end point information is converted into the screen end point information, and the conversion means for selecting the projection direction of the mapping polygon according to the direction of the normal vector on the polygon field of view coordinates, and the polygon polygon based on the projection direction of the mapping polygon. A means for calculating the reciprocal of the cross product value of the vectors of the two sides, the field coordinate value of the end point of the polygon, the end point information of the mapping pattern memory, the projection direction of the mapping polygon, and the reciprocal number of the cross product value of the vectors of the two sides are stored. The polygon parameter memory, screen end point information from the above conversion means, and the depth of the polygon Screen memory for storing the address information of the polygon parameter memory and the address information of the polygon outline based on the screen end point information from the conversion means, and the address value of the polygon parameter memory and the address value of the polygon parameter memory for each scan line. A contour processing means for converting the contour portion information of the polygon, a means for computing the information between the two opposite sides calculated by the contour processing means, and calculating the displacement of the displacement depth information of the X address, and the scan. A means for determining whether or not the pixel position corresponding to each pixel of the line exists within the range of the polygon, and the depth information of the pixel at the forefront and the depth information of the polygon at the pixel position are compared and compared. To rewrite the depth information of the polygon to the depth information of the polygon that always exists in the foreground , Means for adding the displacement of the depth information to the depth information of the polygon to calculate the depth information of the adjacent pixel position, and at least one X between the two opposite sides of the polygon existing at the front at the compared pixel position. A means for calculating an address and an address value of the polygon parameter memory, and a weighting coefficient of three vertices of the polygon based on the information of the polygon parameter memory read by accessing the calculated address value of the polygon parameter memory, It is provided with means for calculating an address value of the mapping pattern memory, and means for accessing the mapping pattern memory based on the calculated mapping pattern address and transferring the image data to the display means.

【0020】更に、ポリゴン視野座標上の法線ベクトル
のスカラー量の大きさによりマッピングポリゴンの投影
する方向を選択するように構成すると良い。
Further, the projection direction of the mapping polygon may be selected according to the size of the scalar quantity of the normal vector on the polygon visual field coordinates.

【0021】[0021]

【作用】この発明は、視野座標上の3次元ポリゴンの法
線ベクトルの方向から、マッピングの投影方向がX−
Z、またはY−Z、或いはX−Yのいずれかであるかを
判断する。その中から1つを選択し、2次元要素のみか
ら2次元のマッピングパターン座標を求める内挿マッピ
ング処理を行う。この結果、ハードウェア量を大きく必
要とする平方根の演算をはぶくことにより、演算処理が
大幅に省略されローコストに簡易なパーススペクティブ
テクチャ・マッピングをリアルタイムに処理することが
できる。
According to the present invention, the projection direction of the mapping is X- from the direction of the normal vector of the three-dimensional polygon on the visual field coordinates.
It is determined whether it is Z, YZ, or XY. One of them is selected, and interpolation mapping processing for obtaining the two-dimensional mapping pattern coordinates from only the two-dimensional element is performed. As a result, by performing a square root calculation that requires a large amount of hardware, the calculation process can be largely omitted, and simple perspective texture mapping can be processed in real time at low cost.

【0022】[0022]

【実施例】以下、この発明の実施例につき図面を参照し
て説明する。
Embodiments of the present invention will be described below with reference to the drawings.

【0023】図1はこの発明を用いた疑似3次元画像処
理装置の全体構成を示すブロック図であり、この装置
は、例えば、レーシングゲームや飛行機の操縦シュミレ
ーション等のゲーム用機器に用いて好適な一例が示され
ている。図1に従いこの発明の全体構成につき説明す
る。
FIG. 1 is a block diagram showing the overall configuration of a pseudo three-dimensional image processing apparatus using the present invention. This apparatus is suitable for use in a game machine such as a racing game or an airplane control simulation. An example is shown. The overall configuration of the present invention will be described with reference to FIG.

【0024】画像情報供給装置10の構成について説明
すると、この装置には、ワールドメモリ1、幾何変換装
置2、操作部3、CPU4を備える。このワールドメモ
リ1にはあらゆる物体が複数のポリゴンの集合体として
表現され、ポリゴンの端点をワールド座標上のX,Y,
Z座標として格納している。更に、このワールドメモリ
1には、オブジェクトの座標上のポリゴン端点のX,
Y,Z座標、及びポリゴンに対応して、それぞれテクス
チャ画像を格納するマッピングパターンメモリの端点情
報データが格納されている。操作部3は、ハンドル、ア
クセル、ブレーキ等で構成され、その走査内容は電気信
号に変換され、CPU4へ出力される。
The structure of the image information supply device 10 will be described. This device comprises a world memory 1, a geometric conversion device 2, an operation section 3, and a CPU 4. In this world memory 1, all objects are represented as a collection of a plurality of polygons, and the end points of the polygons are represented by X, Y, and
It is stored as the Z coordinate. Further, in this world memory 1, the X of the polygon end point on the coordinates of the object,
Corresponding to the Y and Z coordinates and the polygon, the end point information data of the mapping pattern memory that stores the texture image is stored. The operation unit 3 includes a steering wheel, an accelerator, a brake, and the like, and the scanning content thereof is converted into an electric signal and output to the CPU 4.

【0025】CPU4は、ハンドルアクセス等で構成さ
れた操作部3の内容に基づいて変換された電気信号に従
いこの状況に応じた状況データを演算し、幾何変換装置
2へデータを与える。
The CPU 4 calculates the situation data according to this situation in accordance with the electric signal converted based on the contents of the operation unit 3 constituted by handle access or the like, and gives the data to the geometrical transformation device 2.

【0026】幾何変換装置2は、CPU4からの命令に
従いワールドメモリ1から各ポリゴンの端点情報のデー
タを読み出し、オブジェクトの運動や視野の回転に必要
な行列演算を実行し、ワールド座標の端点をスクリーン
座標へ投影変換等の幾何変換を行い、そのX,Yの2次
元のスクリーンのデータをスクリーンメモリ5に与え
る。また、ポリゴンの視野変換された代表値、すなわ
ち、そのポリゴンの始点からの距離、すなわち、奥行き
距離データ(Z値)を決定し、そのデータをスクリーン
メモリ5に与える。このスクリーンメモリ5は図25に
示すように、各ポリゴンの端点につき、X,Yのスクリ
ーン座標値、Z値が格納される。
The geometrical transformation device 2 reads the data of the end point information of each polygon from the world memory 1 in accordance with the instruction from the CPU 4, executes the matrix calculation necessary for the movement of the object and the rotation of the visual field, and screens the end points of the world coordinates. Geometric transformation such as projection transformation is performed on the coordinates, and the two-dimensional X, Y screen data is given to the screen memory 5. In addition, the representative value of the polygon subjected to the field-of-view conversion, that is, the distance from the starting point of the polygon, that is, the depth distance data (Z value) is determined, and the data is given to the screen memory 5. As shown in FIG. 25, the screen memory 5 stores X and Y screen coordinate values and Z values for the end points of each polygon.

【0027】また、幾何変換装置2は、ポリゴン端点の
視野座標上のX,Y,Z値と、マッピングパターンメモ
リのX,Y座標(MX,MY)値と、視野座標上の3次
元ポリゴンの法線ベクトルの方向等からマッピングポリ
ゴンの投影する方向がX−Z,Y−Z,X−Yの3タイ
プのいずれを示すかを選択し、そのタイプを示すフラグ
をポリゴンパラメータメモリ40に与える。
Further, the geometric transformation device 2 uses the X, Y, Z values on the visual field coordinates of the polygon end points, the X, Y coordinate (MX, MY) values of the mapping pattern memory, and the three-dimensional polygon on the visual field coordinates. From the direction of the normal vector or the like, it is selected which of the three types, XZ, YZ, and XY, the projection direction of the mapping polygon indicates, and a flag indicating the type is given to the polygon parameter memory 40.

【0028】この幾何変換装置2は、ポリゴン法線ベク
トルを算出し、その法線ベクトルのX,Y,Zのスカラ
ー量の一番大きな方向に着目し、Y方向に大きければ、
X−Z、X方向に大きければ、Y−Z、Z方向に大きけ
れば、X−Yが投影する方向であり、その情報を示すフ
ラグをポリゴンパラメータメモリ40に与える。このポ
リゴンパラメータメモリ40は、図26に示すように、
各ポリゴンの端点につき、X,Y,Zの視野座標値(E
X,EY,EZ)、マッピングパターンメモリのX,Y
座標(MX,MY)値と、マッピング方向のフラグと2
辺のベクトル外積の逆数1/abを格納する。
This geometric transformation device 2 calculates a polygon normal vector, pays attention to the direction in which the X, Y, Z scalar amounts of the normal vector are the largest, and if it is large in the Y direction,
If it is large in the X-Z and X-directions, it is the Y-Z, and if it is large in the Z-direction, it is the direction in which the XY is projected, and a flag indicating that information is given to the polygon parameter memory 40. This polygon parameter memory 40, as shown in FIG.
For each end point of each polygon, the X, Y, and Z visual field coordinate values (E
X, EY, EZ), X, Y of the mapping pattern memory
Coordinate (MX, MY) value, mapping direction flag and 2
The reciprocal 1 / ab of the vector cross product of the sides is stored.

【0029】なお、この発明のポリゴンは三角形ポリゴ
ンであり、それぞれの端点は図32に示すように、(A
X,AY,AZ),(BX,BY,BZ),(CX,C
Y,CZ)とする。
The polygons of the present invention are triangular polygons, and the end points of the polygons are, as shown in FIG.
X, AY, AZ), (BX, BY, BZ), (CX, C
Y, CZ).

【0030】すなわち、マッピング方向がX−Yの時
は、下記数式1に基づき2辺のベクトル外積の逆数1/
abを算出する。
That is, when the mapping direction is XY, the reciprocal of the vector cross product of the two sides 1 /
Calculate ab.

【0031】[0031]

【数1】1/ab=(AX−BX)×(AY−CY)−
(AY−BY)×(AX−CX)
1 / ab = (AX−BX) × (AY−CY) −
(AY-BY) x (AX-CX)

【0032】マッピング方向がX−Zの時は、下記数式
2に基づき2辺のベクトル外積の逆数1/abを算出す
る。
When the mapping direction is XZ, the reciprocal 1 / ab of the vector cross product of the two sides is calculated based on the following mathematical formula 2.

【0033】[0033]

【数2】1/ab=(AX−BZ)×(AX−CX)−
(AX−BX)×(AZ−CZ)
2 / ab = (AX−BZ) × (AX−CX) −
(AX-BX) x (AZ-CZ)

【0034】マッピング方向がY−Zの時は、下記数式
3に基づき2辺のベクトル外積の逆数1/abを算出す
る。
When the mapping direction is YZ, the reciprocal 1 / ab of the vector cross product of the two sides is calculated based on the following equation 3.

【0035】[0035]

【数3】1/ab=(AY−BY)×(AZ−CZ)−
(AZ−BZ)×(AY−CY)
## EQU3 ## 1 / ab = (AY-BY) × (AZ-CZ)-
(AZ-BZ) x (AY-CY)

【0036】上記各数式に基づいて算出された1/ab
がポリゴンパラメータメモリ40に格納される。
1 / ab calculated based on each of the above formulas
Are stored in the polygon parameter memory 40.

【0037】ポリゴン外形処理装置20は、ポリゴン摘
出装置21、パラメータ演算装置22、垂直補間演算装
置23で構成される。ポリゴン摘出装置21は、スクリ
ーンメモリ5より読み出されたポリゴン端点のXYアド
レスに基づいて、ポリゴンを構成する各辺のベクトルが
図28に示すどの方向に属するかを判断し、そのベクト
ルの方向に応じて、図29に示すように、ポリゴンの辺
を構成する端点が右辺に属するか左辺に属するかを決定
する。そして、ポリゴン摘出装置21にてスクリーンメ
モリ5からポリゴンを構成する各辺の端点、すなわちX
の始点アドレス(XS)、終点アドレス(XE)、及び
Yの始点アドレス(YS)、右辺アドレス(YE)を取
り込むと共に、ポリゴンの奥行き距離データ(Z値)を
取り込み、パラメータ演算装置22に各データを与え
る。
The polygon outer shape processing device 20 comprises a polygon extraction device 21, a parameter calculation device 22, and a vertical interpolation calculation device 23. Based on the XY addresses of the polygon end points read from the screen memory 5, the polygon extracting device 21 determines to which direction the vector of each side forming the polygon belongs, as shown in FIG. Accordingly, as shown in FIG. 29, it is determined whether the endpoints forming the sides of the polygon belong to the right side or the left side. Then, in the polygon extracting device 21, the end points of the respective sides forming the polygon from the screen memory 5, that is, X
The start point address (XS), end point address (XE), Y start point address (YS), right side address (YE), polygon depth distance data (Z value), and each data is stored in the parameter calculator 22. give.

【0038】そして、このポリゴン外形処理装置20の
パラメータのパラメータ演算装置22は、ポリゴンの外
形端点情報をデジタル微分解析(DDA)で求める際に
必要なパラメータを算出し、そのパラメータを垂直補間
演算装置23に与える。この垂直補間演算装置23に
て、ポリゴンが各スキャンラインと交差する左辺及び右
辺のそれぞれの外形端点情報、Z値を補間しながら算出
する。算出された各データがポリゴンエッジメモリ6に
与えられる。このポリゴン外形処理装置20の詳細につ
いては後述する。
The parameter arithmetic unit 22 of the parameters of the polygon outline shape processing unit 20 calculates the parameters required for obtaining the outline end point information of the polygon by digital differential analysis (DDA), and the parameters are calculated by the vertical interpolation arithmetic unit. Give to 23. The vertical interpolation calculation device 23 calculates by interpolating the outer edge point information and the Z value of each of the left side and the right side where the polygon intersects each scan line. Each calculated data is given to the polygon edge memory 6. Details of the polygon outer shape processing device 20 will be described later.

【0039】そして、ポリゴンエッジメモリ6には、図
27に示すように、ポリゴン外形処理装置20より与え
られた各データ、すなわち、スキャンライン毎にポリゴ
ンの左辺、右辺の値と左辺のZ値、右辺のZ値が画面の
垂直方向(Yアドレス方向)の解像度だけそれぞれ格納
されている。
Then, in the polygon edge memory 6, as shown in FIG. 27, each data given from the polygon outer shape processing device 20, that is, the left side, right side value and left side Z value of the polygon for each scan line, The Z value on the right side is stored for each resolution in the vertical direction (Y address direction) of the screen.

【0040】更に、このポリゴンエッジメモリ6には、
一つのYアドレスに格納されているポリゴン数(CN
T)が書き込まれる。すなわち、一つのYアドレスに1
個のポリゴンを格納する毎にポリゴン数をカウントアッ
プしてゆき、このカウント数(CNT)をポリゴンエッ
ジメモリ6に書き込む。
Further, the polygon edge memory 6 has
Number of polygons stored in one Y address (CN
T) is written. That is, 1 for each Y address
Each time the number of polygons is stored, the number of polygons is counted up, and this count number (CNT) is written in the polygon edge memory 6.

【0041】ポリゴンエッジメモリ6に格納されている
各データはポリゴン内部処理装置30へ与えられる。ポ
リゴン内部処理装置30は、パラメータ演算装置31、
水平補間演算装置33、隠面処理装置34で構成され
る。
Each data stored in the polygon edge memory 6 is given to the polygon internal processing device 30. The internal polygon processing device 30 includes a parameter calculation device 31,
It is composed of a horizontal interpolation calculation device 33 and a hidden surface processing device 34.

【0042】パラメータ演算装置31にて、スキャンラ
イン毎にポリゴンエッジメモリ6よりポリゴンの左辺
X、右辺Xの値(XL,XR)と左辺の及び右辺のZ値
(ZL,ZR)を受け取り、水平補間演算に必要なパラ
メータを演算し、隠面処理装置34へそれぞれパラメー
タを転送する。
The parameter calculation unit 31 receives the values (XL, XR) of the left side X and the right side X of the polygon and the Z values (ZL, ZR) of the left side and the right side of the polygon from the polygon edge memory 6 for each scan line, and horizontally. The parameters required for the interpolation calculation are calculated, and the parameters are transferred to the hidden surface processing device 34.

【0043】この実施例における隠面処理装置34はZ
バッファ法を使用した隠面処理を行うもので、スキャン
ライン毎にパラメータ演算装置31よりパラメータを受
け取り、そのパラメータをパイプライン上にて順次各ド
ット(画素)毎に隠面処理を行ってゆき、1スキャンラ
インのデータを全て処理した時点で各ドットのポリゴン
パラメータメモリアドレスを順次水平補間演算装置33
へ転送することにより隠面処理を行う。すなわち、各ド
ットにおいて、格納されている一番手前に存在するポリ
ゴンのZ値と処理するポリゴンのZ値を比較し、処理す
るポリゴンのZ値が小さい場合には、そのポリゴンのパ
ラメータアドレスを水平補間演算装置33へ転送し、そ
のZ値を比較すべきZ値として格納する。また処理する
ポリゴンのZ値が大きい場合には、Z値の書換及びパラ
メータアドレスの書換は行わず、以前に格納されたまま
のポリゴンパラメータアドレス値が水平補間演算装置3
3へ転送される。
The hidden surface processing unit 34 in this embodiment is Z
The hidden surface processing using the buffer method is performed. The parameters are received from the parameter calculation device 31 for each scan line, and the hidden surface processing is sequentially performed for each dot (pixel) on the pipeline. When all the data of one scan line are processed, the polygon parameter memory address of each dot is sequentially calculated by the horizontal interpolation calculation device 33.
The hidden surface is processed by transferring to. That is, at each dot, the Z value of the stored polygon in the foreground is compared with the Z value of the polygon to be processed, and if the Z value of the polygon to be processed is small, the parameter address of that polygon is set horizontally. The Z value is transferred to the interpolation calculation device 33, and the Z value is stored as the Z value to be compared. When the Z value of the polygon to be processed is large, the Z value and the parameter address are not rewritten, and the previously stored polygon parameter address value is used as the horizontal interpolation calculation device 3
3 is transferred.

【0044】水平補間演算装置33は、隠面処理装置3
4から受け取ったポリゴンパラメータアドレスに従いポ
リゴンパラメータメモリ40をアクセスし、各ポリゴン
のパラメータを読み出し、このパラメータに基づき内挿
マッピング演算を行ってマッピングパターンメモリアド
レス(MX,MY)を算出する。この算出したマッピン
グパターンメモリアドレス(MX,MY)にて、例えば
図30に示すようなデータが格納されたマッピングパタ
ーンメモリ7をアクセスすることにより、マッピングパ
ターンメモリ7に格納されたデータに基づき、各ドット
のR,G,Bまたは輝度(LUT)値を順次読み出し、
フレームメモリ8へ書き込む。このポリゴン内部処理装
置30の詳細については、後述する。
The horizontal interpolation calculation device 33 is a hidden surface processing device 3.
The polygon parameter memory 40 is accessed according to the polygon parameter address received from No. 4, the parameter of each polygon is read, and the interpolation mapping operation is performed based on this parameter to calculate the mapping pattern memory address (MX, MY). At the calculated mapping pattern memory address (MX, MY), for example, by accessing the mapping pattern memory 7 in which the data shown in FIG. 30 is stored, each data is stored in the mapping pattern memory 7 based on the data stored in the mapping pattern memory 7. R, G, B or brightness (LUT) values of dots are read out sequentially,
Write to the frame memory 8. Details of the internal polygon processing device 30 will be described later.

【0045】ポリゴン内部処理装置30からフレームメ
モリ8へ与えられたドットのR,G,BまたはLUT値
がCRT9に転送され画像として表示される。
The R, G, B or LUT values of the dots given from the polygon internal processing unit 30 to the frame memory 8 are transferred to the CRT 9 and displayed as an image.

【0046】次に、この発明のポリゴン外形処理装置2
0、ポリゴン内部処理装置30につき図2ないし図18
を参照して説明する。
Next, the polygon contour processing apparatus 2 of the present invention
0, the internal polygon processing device 30 is shown in FIGS.
Will be described with reference to.

【0047】この実施例においては、ポリゴンはスクリ
ーン端点座標(X,Y)と視野座標(EX,EY,E
Z)とテクスチャ、即ちマッピングパターンの端点座標
(MX,MY)、及び奥行き距離(Z値)を持つことに
より、Zバッファ法による隠面処理を行うと共に、例え
ば、図30に示すようなテクスチャをポリゴン面に対応
して変形させてポリゴン面にマッピングする。
In this embodiment, the polygon is a screen end point coordinate (X, Y) and a visual field coordinate (EX, EY, E).
Z) and the texture, that is, by having the end point coordinates (MX, MY) of the mapping pattern and the depth distance (Z value), the hidden surface processing by the Z buffer method is performed and, for example, the texture shown in FIG. It is transformed corresponding to the polygon surface and is mapped on the polygon surface.

【0048】まず、ポリゴン外形処理装置20にてポリ
ゴンの外形処理について、図2ないし図8に従い説明す
る。
First, the polygon outline processing performed by the polygon outline processing device 20 will be described with reference to FIGS.

【0049】この外形処理のために、ポリゴン摘出装置
21にて、スクリーンメモリ5より読み出されたポリゴ
ン端点のXYアドレスに基づいて、ポリゴンを構成する
各辺のベクトルが図28に示すどの方向に属するかを判
断し、そのベクトルの方向に応じて、図29に示すよう
に、ポリゴンの辺を構成する端点が右辺に属するか左辺
に属するかを決定する。
For this outer shape processing, in the polygon extracting device 21, the vector of each side forming the polygon is determined in which direction shown in FIG. 28 based on the XY address of the polygon end point read from the screen memory 5. 29, it is determined whether the endpoints forming the sides of the polygon belong to the right side or the left side, as shown in FIG. 29, depending on the direction of the vector.

【0050】スクリーンメモリ5には、スクリーン端点
座標(X,Y)と、及びポリゴンのZ値が格納されてい
る。ポリゴン外形処理装置20のポリゴン摘出装置21
はスクリーンメモリ5をアクセスし、スクリーンメモリ
5よりスクリーン端点座標(X,Y)及び各ポリゴンの
Z値を読み出し、ポリゴンの外形をデジタル微分解析
(DDA)で算出するために、ポリゴンの右辺、または
左辺を決定し、パラメータを算出するパラメータ演算装
置22にそれぞれ各辺に対応するデータを与える。すな
わち、Xパラメータ演算装置22aには、スクリーン座
標が、Zパラメータ演算装置22bに、各辺の始点及び
終点のスクリーン座標(X,Y)とZ値(ZS,ZE)
が与えられる。
The screen memory 5 stores screen end point coordinates (X, Y) and the Z value of the polygon. Polygon extraction device 21 of polygon outline processing device 20
Accesses the screen memory 5, reads the screen end point coordinates (X, Y) and the Z value of each polygon from the screen memory 5, and calculates the outer shape of the polygon by digital differential analysis (DDA). The data corresponding to each side is given to the parameter calculation device 22 which determines the left side and calculates the parameter. That is, the X parameter calculation device 22a has screen coordinates, and the Z parameter calculation device 22b has screen coordinates (X, Y) and Z values (ZS, ZE) at the start and end points of each side.
Is given.

【0051】ポリゴン外形処理装置20のXパラメータ
演算装置22aでは、ポリゴン摘出装置21より与えら
れたスクリーン座標の各辺のYアドレスの始点(YS)
及び終点アドレス(YE)からY方向の距離(DY)を
算出する。即ち、DY=YE−YSの演算を行う。続い
て、スクリーン座標の各辺のX終点(XE)からX始点
(XS)までの距離(DX)を算出するため、DX=X
E−XSの演算を行う。このDY,DXを用いて、ポリ
ゴンの外形のデジタル微分解析(DDA)のためのパラ
メータとして、DX/DYの演算をし、微差分値(DD
X)を求める。このDDXをX値垂直補間装置23aに
転送する。そして、X値垂直補間装置23aにて補間演
算を行い、この補間したデータがポリゴンエッジメモリ
コントローラ24を介してポリゴンエッジメモリ6に格
納される。
In the X parameter calculation device 22a of the polygon outline processing device 20, the starting point (YS) of the Y address of each side of the screen coordinates given by the polygon extraction device 21.
And a distance (DY) in the Y direction from the end point address (YE). That is, the calculation of DY = YE-YS is performed. Subsequently, DX = X in order to calculate the distance (DX) from the X end point (XE) to the X start point (XS) of each side of the screen coordinates.
E-XS calculation is performed. Using these DY and DX, DX / DY is calculated as a parameter for digital differential analysis (DDA) of the outer shape of the polygon, and the fine difference value (DD
X) is calculated. This DDX is transferred to the X-value vertical interpolation device 23a. Then, the X-value vertical interpolation device 23a performs interpolation calculation, and the interpolated data is stored in the polygon edge memory 6 via the polygon edge memory controller 24.

【0052】即ち、下記数式4の(1)に示すように、
X値パラメータ演算装置22aにて、その微差分値を算
出し、下記(2)式に示すように、X値垂直補間演算装
置23aにて補間演算を行い各辺の始点から終点までの
アドレスを算出する。この(2)式におけるXの初期値
は始点のデータ(XS)である。
That is, as shown in equation (1) below,
The X-value parameter calculation device 22a calculates the fine difference value, and as shown in the following equation (2), the X-value vertical interpolation calculation device 23a performs interpolation calculation to determine the address from the start point to the end point of each side. calculate. The initial value of X in the equation (2) is the starting point data (XS).

【0053】[0053]

【数4】DDX=(XE−XS)/DY … (1) X=X+DDX … (2)(4) DDX = (XE−XS) / DY (1) X = X + DDX (2)

【0054】ポリゴン摘出装置21より与えられたスク
リーン座標の各辺のYアドレスの始点(YS)及び終点
アドレス(YE)からY方向の距離(DY)を算出す
る。即ち、DY=YE−YSの演算を行う。
The distance (DY) in the Y direction is calculated from the start point (YS) and end point address (YE) of the Y address of each side of the screen coordinates given by the polygon extraction device 21. That is, the calculation of DY = YE-YS is performed.

【0055】更に、スクリーンメモリ5より読み出され
てZ値の始点アドレス(ZS)、終点アドレス(ZE)
のアドレスデータからポリゴンに対するデータを下記数
式5の(3),(4)式に基づいて、Z値パラメータ演
算装置22b及びZ値垂直補間装置23bにてデジタル
微分解析(DDA)により算出し、ポリゴンエッジメモ
リ6に格納する。即ち、(3)式に示すように、その微
差分値を算出し、(4)式に示すように、補間演算を行
い、各辺の終点から始点までのデータを算出する。この
(4)式における初期値は始点データ(XS)である。
(4)式の演算が0からDYまで繰り返される。
Furthermore, the Z value start point address (ZS) and end point address (ZE) read from the screen memory 5
The data for the polygon is calculated from the address data of the above by the digital differential analysis (DDA) in the Z value parameter computing device 22b and the Z value vertical interpolation device 23b based on the following equations (3) and (4). Stored in the edge memory 6. That is, the fine difference value is calculated as shown in Expression (3), and the interpolation calculation is performed as shown in Expression (4) to calculate the data from the end point to the start point of each side. The initial value in the equation (4) is the starting point data (XS).
The calculation of equation (4) is repeated from 0 to DY.

【0056】[0056]

【数5】DDZ=(ZE−ZS)/DY … (3) Z=Z+DDZ … (4)## EQU5 ## DDZ = (ZE-ZS) / DY (3) Z = Z + DDZ (4)

【0057】この実施例においては。スキャンラインに
同期して、その垂直位置を示すYアドレス毎に、ポリゴ
ンの外形とそれに基づいて変形されたマッピングパター
ンの外形アドレス情報及びZ値の外形アドレス情報がポ
リゴンエッジメモリ6に格納される。
In this embodiment, In synchronization with the scan line, the outline of the polygon, the outline address information of the mapping pattern modified based on the outline of the polygon, and the outline address information of the Z value are stored in the polygon edge memory 6 for each Y address.

【0058】上記各装置は、コントローラ25により制
御され、このコントローラ25は図20に示すフローチ
ャートに従って、端点間をDDAにより補間するため
に、パラメータ演算装置22、垂直補間演算装置23を
制御する。
Each of the above devices is controlled by a controller 25, and this controller 25 controls the parameter calculation device 22 and the vertical interpolation calculation device 23 in order to interpolate between the end points by DDA according to the flow chart shown in FIG.

【0059】次に、ポリゴン外形処理装置20の具体的
構成例を図3ないし図6に示す。図3はXパラメータ演
算装置22aの具体的構成を示す回路図である。
Next, a concrete configuration example of the polygon outer shape processing device 20 is shown in FIGS. FIG. 3 is a circuit diagram showing a specific configuration of the X parameter calculation device 22a.

【0060】図3に示すX値パラメータ演算装置22a
は垂直補間演算に用いるX値パラメータを算出するもの
である。
The X value parameter computing device 22a shown in FIG.
Is for calculating an X value parameter used for vertical interpolation calculation.

【0061】スクリーンメモリ5より読み出された始点
(YS)がレジスタ201に、スクリーンメモリ5より
読み出されたY終点(YE)がレジスタ202に格納さ
れ、この両レジスタ201,202からYS,YEが減
算器205に入力される。
The start point (YS) read from the screen memory 5 is stored in the register 201, and the Y end point (YE) read from the screen memory 5 is stored in the register 202. From these registers 201 and 202, YS and YE are stored. Is input to the subtractor 205.

【0062】この減算器205でYEからYSを減算処
理し、この値(DY)をレジスタ207が一時的に格納
する。
The subtractor 205 subtracts YS from YE, and this value (DY) is temporarily stored in the register 207.

【0063】また、スクリーンメモリ5より読み出され
たX始点(XS)がレジスタ203に、スクリーンメモ
リ5より読み出されたX終点(XE)がレジスタ204
に格納され、この両レジスタ203,204から減算器
206に、XS,XEが与えられる。
The X start point (XS) read from the screen memory 5 is stored in the register 203, and the X end point (XE) read from the screen memory 5 is stored in the register 204.
And XS and XE are applied to the subtracter 206 from the registers 203 and 204.

【0064】この減算器206でXEからXSを減算処
理し、この値(DX)をレジスタ208が一時的に格納
する。
The subtractor 206 subtracts XS from XE, and the register 208 temporarily stores this value (DX).

【0065】レジスタ207,208から除算器209
に、減算器206にて減算処理したDXと減算器205
にて減算処理したDYが与えられ、DXの値をDYで除
算でする。除算器209により演算された微差分値DD
Xはレジスタ210に一時的に格納された後、X垂直補
間装置23aに転送される。
From the registers 207 and 208 to the divider 209
In addition, the DX processed by the subtractor 206 and the subtractor 205
The subtracted DY is given, and the value of DX is divided by DY. Fine difference value DD calculated by the divider 209
The X is temporarily stored in the register 210 and then transferred to the X vertical interpolator 23a.

【0066】図4はZパラメータ演算装置22bの具体
的構成を示す回路図である。図4に示すZパラメータ演
算装置22bは垂直補間演算に用いるZパラメータを算
出するためのものである。
FIG. 4 is a circuit diagram showing a specific structure of the Z parameter calculation device 22b. The Z parameter calculation device 22b shown in FIG. 4 is for calculating Z parameters used for vertical interpolation calculation.

【0067】スクリーンメモリ5より読み出されたY始
点(YS)がレジスタ235に、スクリーンメモリ5よ
り読み出されたY終点(YE)がレジスタ236に格納
され、この両レジスタ235,236からYS,YEが
減算器239に入力される。
The Y start point (YS) read from the screen memory 5 is stored in the register 235, and the Y end point (YE) read from the screen memory 5 is stored in the register 236. From these registers 235, 236, YS, YE is input to the subtractor 239.

【0068】この減算器239でYEからYSを減算処
理し、この値(DY)をレジスタ241が一時的に格納
する。
The subtractor 239 subtracts YS from YE, and this value (DY) is temporarily stored in the register 241.

【0069】また、スクリーンメモリ5より読み出され
たZ始点(ZS)がレジスタ237に、スクリーンメモ
リ5より読み出されたZ終点(ZE)がレジスタ238
に格納され、この両レジスタ237,238から減算器
240に、XS、ZEが与えられる。
The Z start point (ZS) read from the screen memory 5 is stored in the register 237, and the Z end point (ZE) read from the screen memory 5 is stored in the register 238.
And XS and ZE are applied to the subtractor 240 from both the registers 237 and 238.

【0070】この減算器240でZEからZSを減算処
理し、この値(DZ)をレジスタ242が一時的に格納
する。
The subtractor 240 subtracts ZS from ZE, and this value (DZ) is temporarily stored in the register 242.

【0071】レジスタ241,242から除算器243
に、減算器にて減算処理したDZと減算器239にて減
算処理したDYが与えられ、DZの値をDYで除算す
る。除算器243により演算された微差分値DDZはレ
ジスタ244に一時的に格納された後、Z垂直補間装置
23bに転送される。
From the registers 241, 242 to the divider 243
Is given to DZ subjected to the subtraction processing by the subtractor and DY subjected to the subtraction processing at the subtractor 239, and the value of DZ is divided by DY. The fine difference value DDZ calculated by the divider 243 is temporarily stored in the register 244 and then transferred to the Z vertical interpolation device 23b.

【0072】次にX値垂直補間演算装置23aの構成に
ついて、図5に従い説明する。
Next, the configuration of the X-value vertical interpolation calculation device 23a will be described with reference to FIG.

【0073】X値パラメータ演算装置22aより転送さ
れたスクリーン座標のXSはマルチプレクサ245を介
してレジスタ247に格納される。
The screen coordinate XS transferred from the X value parameter calculation device 22a is stored in the register 247 via the multiplexer 245.

【0074】マルチプレクサ245は、スタート信号を
受けたときだけ、Xパラメータ演算装置22aの値をレ
ジスタ247に転送し、それ以外の時には、加算器24
8の出力がレジスタ247に転送するように制御され
る。
The multiplexer 245 transfers the value of the X parameter calculation unit 22a to the register 247 only when receiving the start signal, and otherwise, the adder 24
8 is controlled to be transferred to the register 247.

【0075】レジスタ246は、X値パラメータ演算装
置22aより転送されたパラメータDDXの値を一時的
に格納する。
The register 246 temporarily stores the value of the parameter DDX transferred from the X value parameter arithmetic unit 22a.

【0076】スタート信号を受けることによりレジスタ
246の値を加算器248へ転送する。加算器248に
てXとDDXが加算され、その加算結果(X)がレジス
タ249に与えられ、ポリゴンエッジメモリコントロー
ラ24を介して、ポリゴンエッジメモリ6へ格納され
る。
Upon receiving the start signal, the value of the register 246 is transferred to the adder 248. X and DDX are added by the adder 248, and the addition result (X) is given to the register 249 and stored in the polygon edge memory 6 via the polygon edge memory controller 24.

【0077】Z値垂直補間装置23bの構成について図
6に従い説明する。
The structure of the Z-value vertical interpolation device 23b will be described with reference to FIG.

【0078】Z値パラメータ演算装置22bより転送さ
れたZSはマルチプレクサ260を介してレジスタ26
2に格納される。
The ZS transferred from the Z value parameter computing unit 22b is transferred to the register 26 via the multiplexer 260.
Stored in 2.

【0079】マルチプレクサ260は、スタート信号を
受けた時だけ、Z値パラメータ演算装置22bの値をレ
ジスタ262に転送し、それ以外の時には、加算器26
3の出力をレジスタ262転送するように制御される。
The multiplexer 260 transfers the value of the Z value parameter arithmetic unit 22b to the register 262 only when receiving the start signal, and otherwise, the adder 26
3 output is controlled to be transferred to the register 262.

【0080】レジスタ261は、Z値パラメータ演算装
置22bより転送されたパラメータDDZの値を一時的
に格納する。
The register 261 temporarily stores the value of the parameter DDZ transferred from the Z value parameter calculation device 22b.

【0081】スタート信号を受けることによりレジスタ
262の値を加算器263へ転送する。加算器263に
てZとDDZが加算され、その加算結果(Z値)がレジ
スタ264に与えられ、ポリゴンエッジメモリコントロ
ーラ24を介してポリゴンエッジメモリ6へ格納され
る。
Upon receiving the start signal, the value of the register 262 is transferred to the adder 263. The adder 263 adds Z and DDZ, and the addition result (Z value) is given to the register 264 and stored in the polygon edge memory 6 via the polygon edge memory controller 24.

【0082】ポリゴン内部処理装置30について、図7
ないし図19に従い説明する。ポリゴン内部処理装置3
0は前述したように、パラメータ演算装置31、水平補
間演算装置33、隠面処理装置34にて構成されてい
る。まず、パラメータ演算装置33につき、図7ないし
図8に基づき説明する。
FIG. 7 shows the internal polygon processing device 30.
19 to FIG. Internal polygon processing unit 3
As described above, 0 is composed of the parameter calculation device 31, the horizontal interpolation calculation device 33, and the hidden surface processing device 34. First, the parameter calculation device 33 will be described with reference to FIGS.

【0083】パラメータ演算装置31はスキャンライン
毎に対応する2辺すなわち、左辺及び右辺間のXYアド
レスをポリゴンエッジメモリ6より読み出し、この読み
出したアドレス情報に基づいて、下記数式6の(5)〜
(6)式に従いポリゴン内部の各画素ドットのアドレス
を隠面パラメータアドレスとして算出する。
The parameter calculator 31 reads the XY address between the two sides corresponding to each scan line, that is, the left side and the right side from the polygon edge memory 6, and based on the read address information, (5) to
The address of each pixel dot inside the polygon is calculated as the hidden surface parameter address according to the equation (6).

【0084】すなわち、この実施例においては、ポリゴ
ンエッジメモリコントローラ31aにてスキャンライン
走査信号に同期して、その垂直位置としてのYアドレス
に対応するポリゴンの外形を示す2点のX左辺(XL)
とXの右辺(XR)とZ値(ZL,ZR)とポリゴンパ
ラメータメモリアドレスをポリゴンエッジメモリ6から
読み出す。
In other words, in this embodiment, the polygon edge memory controller 31a synchronizes with the scan line scanning signal, and the X left side (XL) of two points indicating the outer shape of the polygon corresponding to the Y address as its vertical position.
And X right side (XR), Z value (ZL, ZR) and polygon parameter memory address are read from the polygon edge memory 6.

【0085】ポリゴンエッジメモリ6より読み出された
Xアドレスの左辺及び右辺アドレスから(5)式に示す
ようにX方向の距離(DXY)算出する。
From the left and right side addresses of the X address read from the polygon edge memory 6, the distance (DXY) in the X direction is calculated as shown in equation (5).

【0086】このDXYを用いて、ポリゴンエッジメモ
リ6より読み出されたZ値を(6)式に基づいてデジタ
ル微分解析(DDA)に用いるパラメータを隠面処理パ
ラメータ演算装置31bにて算出する。
Using this DXY, the hidden surface processing parameter computing unit 31b calculates the Z value read from the polygon edge memory 6 based on the equation (6) and used in the digital differential analysis (DDA).

【0087】[0087]

【数6】DXY=XR−XL … (5) DZ=(ZR−ZL) … (6)(6) DXY = XR-XL (5) DZ = (ZR-ZL) (6)

【0088】そして、図7に示すように、ポリゴンエッ
ジメモリコントローラ31aにより、ポリゴンエッジメ
モリ6からYアドレス(スキャンライン)毎の左辺、右
辺のスキャンラインアドレス(XL,XR)、Z値(Z
L,ZR)を読み出し、隠面処理パラメータ演算装置3
1bにそれぞれデータを転送する。
Then, as shown in FIG. 7, the polygon edge memory controller 31a causes the polygon edge memory 6 to scan line addresses (XL, XR) and Z values (Z) for the left and right sides of each Y address (scan line).
L, ZR) and read the hidden surface processing parameter calculation device 3
Transfer data to 1b respectively.

【0089】図8は上記隠面処理パラメータ演算装置3
1bの具体的構成を示す回路図である。
FIG. 8 shows the hidden surface processing parameter calculation device 3 described above.
It is a circuit diagram which shows the specific structure of 1b.

【0090】ポリゴンエッジメモリコントローラ31a
より、Yアドレス(スキャンライン)毎の左辺のスキャ
ンラインアドレス(XL)がレジスタ320に、右辺の
スキャンラインアドレス(XR)がレジスタ321に与
えられ、この両レジスタ320,321からXL,XR
が減算器324に入力される。
Polygon edge memory controller 31a
As a result, the scan line address (XL) on the left side of each Y address (scan line) is given to the register 320, and the scan line address (XR) on the right side is given to the register 321, and from these registers 320, 321 XL, XR
Is input to the subtractor 324.

【0091】この減算器324でXRからXLを減算処
理し、この値(DXY)をレジスタ326に一時的に格
納する。
The subtractor 324 subtracts XL from XR and temporarily stores this value (DXY) in the register 326.

【0092】また、ポリゴンエッジメモリコントローラ
31aより、Z値の左辺(ZL)がレジスタ322、Z
値の右辺(ZR)がレジスタ323にそれぞれ与えら
れ、この両レジスタ322,323から減算器325
に、ZL,ZRが与えられる。
Further, the left side (ZL) of the Z value is registered in the registers 322 and Z by the polygon edge memory controller 31a.
The right-hand side (ZR) of the value is given to the register 323, respectively, and the subtracter 325 is used from these registers 322 and 323.
Are given ZL and ZR.

【0093】この減算器325でZRからZLを減算処
理し、この値(DZ)をレジスタ327が一時的に格納
する。
The subtractor 325 subtracts ZL from ZR, and this value (DZ) is temporarily stored in the register 327.

【0094】この減算器325でZRからZLを減算処
理し、この値(DZ)をレジスタ327が一時的に格納
する。
The subtractor 325 subtracts ZL from ZR, and this value (DZ) is temporarily stored in the register 327.

【0095】レジスタ326,327から除算器324
にて減算処理したDXYと除算器325にて減算処理し
たDZが与えられ、DZの値をDXYで除算する。除算
器328により演算された微差分値DDZはレジスタ3
29に一時的に格納された後、隠面処理装置インタフェ
ース(I/F)31cを介して隠面処理装置34へ転送
される。上記各回路はコントローラ40にて制御され、
図21のフローチャートに従い動作する。
From the registers 326 and 327 to the divider 324
The subtraction processed DXY and the subtractor 325 subtracted DZ are given, and the value of DZ is divided by DXY. The fine difference value DDZ calculated by the divider 328 is stored in the register 3
After being temporarily stored in 29, it is transferred to the hidden surface processing device 34 via the hidden surface processing device interface (I / F) 31c. The above circuits are controlled by the controller 40,
It operates according to the flowchart of FIG.

【0096】図9に隠面処理装置のブロック図を示す。
隠面処理装置34はZバッファ法を使用した隠面処理を
行うもので、スキャンライン毎にパラメータ演算装置3
1よりパラメータを受け取り、そのパラメータをパイプ
ライン上にて順次各ドット(画素)毎に隠面処理を行っ
てゆき、1スキャンラインのデータを全て処理した時点
で各ドットのパラメータメモリアドレスを順次水平補間
演算装置33へ転送することにより隠面処理を行う。す
なわち、各ドットにおいて、格納されている一番手前に
存在するポリゴンのZ値と処理するポリゴンのZ値を比
較し、処理するポリゴンのZ値が小さい場合には、その
ポリゴンのポリゴンパラメータメモリアドレスを水平補
間演算装置33へ転送し、そのZ値を比較すべきZ値と
して格納する。また処理するポリゴンのZ値が大きい場
合には、Z値の書換及びパラメータアドレスの書換は行
わず、以前に格納されたままのポリゴンパラメータアド
レス値を水平補間演算装置33へ転送するものである。
FIG. 9 shows a block diagram of the hidden surface processing apparatus.
The hidden surface processing device 34 performs hidden surface processing using the Z buffer method, and the parameter calculation device 3 is provided for each scan line.
The parameter memory address of each dot is sequentially horizontal when all the data of one scan line are processed by receiving the parameter from 1 and performing the hidden surface processing for each dot (pixel) in sequence on the pipeline. The hidden surface processing is performed by transferring to the interpolation calculation device 33. That is, at each dot, the Z value of the stored polygon in the forefront is compared with the Z value of the polygon to be processed, and if the Z value of the polygon to be processed is small, the polygon parameter memory address of that polygon is set. Is transferred to the horizontal interpolation calculation device 33 and the Z value is stored as the Z value to be compared. When the Z value of the polygon to be processed is large, the Z value and the parameter address are not rewritten, but the polygon parameter address value that has been stored previously is transferred to the horizontal interpolation calculation device 33.

【0097】パラメータ演算装置31から左辺のX値
(XL)、左辺のZ値(ZL)、左辺と右辺のX値の差
(DXY)、Z値の微差分(DDZ)、ポリゴンパラメ
ータメモリアドレスが隠面処理装置34のパラメータ演
算装置I/F34bに与えられ、このパラメータ演算装
置I/F34bから各データがスキャンライン隠面処理
装置34aへ転送される。
From the parameter calculation device 31, the X value (XL) on the left side, the Z value (ZL) on the left side, the difference between the X values on the left side and the right side (DXY), the fine difference between Z values (DDZ), and the polygon parameter memory address are sent. It is given to the parameter calculation device I / F 34b of the hidden surface processing device 34, and each data is transferred from the parameter calculation device I / F 34b to the scan line hidden surface processing device 34a.

【0098】スキャンライン隠面処理装置34aは、Z
バッファ法に基づく隠面処理を行うものであり、スキャ
ンラインの各ドットに対応してそのドットの隠面処理を
行う為に、図10のブロック図に示すように、スキャン
ラインの各ドットに対応して、水平解像度に相当する数
(n+1)個の水平ドット隠面処理装置34−0〜34
−nが設けられている。
The scan line hidden surface processing device 34a uses the Z
The hidden surface processing based on the buffer method is performed. In order to perform the hidden surface processing for each dot of the scan line, as shown in the block diagram of FIG. Then, the number (n + 1) of horizontal dot hidden surface processing devices 34-0 to 34-34 corresponding to the horizontal resolution.
-N is provided.

【0099】そして、パラメータ演算装置31から受け
取ったデータをスキャンラインの各ドットレベルの水平
ドット隠面処理装置34−0〜34−nの連なるパイプ
ラインの0アドレスから順次パイプライン処理を行うこ
とにより高速な隠面処理を行う。この水平ドット隠面処
理装置34−0〜34−nは、スキャンラインの各ドッ
トに対応し、Zバッファ法によりそのドットの隠面処理
を行う。
Then, the data received from the parameter arithmetic unit 31 is sequentially subjected to the pipeline processing from the 0 address of the continuous pipeline of the horizontal dot hidden surface processing units 34-0 to 34-n of the respective dot levels of the scan line. Performs high-speed hidden surface processing. The horizontal dot hidden surface processing devices 34-0 to 34-n correspond to each dot of the scan line and perform the hidden surface processing of the dot by the Z buffer method.

【0100】図11に水平ドット隠面処理装置の実施例
を示す。パラメータ演算装置31から転送されるスキャ
ンライン上の各ドットに対応する奥行き距離データ(Z
値)はパラメータ演算装置I/F34bを介して奥行き
レジスタ341に格納される。パラメータ演算装置I/
F34bから転送されるスキャンライン上の各ドットに
対応するポリゴンパラメータメモリ40のアドレスがパ
ラメータアドレスレジスタ342に格納される。
FIG. 11 shows an embodiment of the horizontal dot hidden surface processing apparatus. Depth distance data (Z) corresponding to each dot on the scan line transferred from the parameter calculation device 31.
The value) is stored in the depth register 341 via the parameter arithmetic unit I / F 34b. Parameter calculation device I /
The address of the polygon parameter memory 40 corresponding to each dot on the scan line transferred from F34b is stored in the parameter address register 342.

【0101】比較器344の一方の入力には、Aバスの
状態の値、すなわちパラメータ演算装置I/F34bを
介して与えられるポリゴンのZ値が、他方の入力には、
マルチプレクサ343を介して、奥行きレジスタ341
に格納された以前のZ値か或いは、そのドットが対応す
るX値、すなわちXアドレス値が与えられる。このマル
チプレクサ343は、比較器344が他のポリゴンのZ
値と比較するときには、奥行きレジスタ341の値を比
較器344へ送り、他のポリゴンがこのドットにかかる
か調べる時には、Xアドレス値を比較器344へ送るよ
うに制御される。そして、比較器344では、パイプラ
インを流れてくるポリゴンがそのドットにかかるか否か
の判断と、かかった場合、そのポリゴンのZ値がパラメ
ータアドレスレジスタ342に入っているポリゴンのZ
値とではどちらが手前か、すなわちどちらのZ値が小さ
いかの判断を行い、その結果をコントローラ352へ知
らせる。
One of the inputs of the comparator 344 is the value of the state of the A bus, that is, the Z value of the polygon given through the parameter arithmetic unit I / F 34b, and the other input is
Depth register 341 via multiplexer 343
Either the previous Z value stored in or the X value corresponding to the dot, that is, the X address value is given. In this multiplexer 343, the comparator 344 uses the Z of another polygon.
When the value is compared with the value, the value of the depth register 341 is sent to the comparator 344, and when it is checked whether another polygon hits this dot, the X address value is sent to the comparator 344. Then, the comparator 344 determines whether or not the polygon flowing through the pipeline hits that dot, and if so, the Z value of that polygon is the Z value of the polygon stored in the parameter address register 342.
With respect to the value, it is determined which one is closer, that is, which Z value is smaller, and the controller 352 is notified of the result.

【0102】加算器346はZ値とZ値の微差分値のD
DZを加算することにより、デジタル微分解析(DD
A)を行い、次のドットのZ値を求めたり、左辺と右辺
のX値の差、DXYから1を引くことによりそのポリゴ
ンのXの右辺値を求めたりする。このため、加算器34
6の一方には、BバスよりDDZ,DXYが与えられ、
他方にはマルチプレクサ345からAバスの状態のZま
たは“−1”の値が与えられる。マルチプレクサ345
は、加算器346がZ値の演算をする時には、Aバスの
状態2の値Zを加算器346へ送り、DXYの演算をす
る時は“−1”の値を加算器346へ送り出す。
The adder 346 calculates the Z value and the difference D between the Z values.
By adding DZ, digital differential analysis (DD
A) is performed to obtain the Z value of the next dot, or the difference between the X values of the left side and the right side, and 1 is subtracted from DXY to obtain the right side value of X of the polygon. Therefore, the adder 34
DDZ and DXY are given to one of 6 from the B bus,
To the other side, the value of Z or "-1" of the state of the A bus is given from the multiplexer 345. Multiplexer 345
Sends the value Z of state 2 of the A bus to the adder 346 when the adder 346 calculates the Z value, and sends the value "-1" to the adder 346 when the DXY operation is performed.

【0103】マルチプレクサ348は加算器346がD
XYの演算をした時は加算器346の出力をBバスパイ
プラインレジスタ350へ送り、その他の時は、Bバス
の値をBバスパイプラインレジスタ350へ送る。
In the multiplexer 348, the adder 346 is D
When the XY operation is performed, the output of the adder 346 is sent to the B bus pipeline register 350, and at other times, the value of the B bus is sent to the B bus pipeline register 350.

【0104】マルチプレクサ347は加算器346がZ
値の更新をした時に加算器346の出力をAバスパイプ
ラインレジスタ349へ送り、そのほかの時はAバスの
値をAバスパイプラインレジスタ349へ送る。このA
バスパイプラインレジスタ349の値は次段の水平ドッ
ト隠面処理装置34へ転送される。
The adder 346 of the multiplexer 347 is Z
When the value is updated, the output of the adder 346 is sent to the A bus pipeline register 349, and at other times, the value of the A bus is sent to the A bus pipeline register 349. This A
The value of the bus pipeline register 349 is transferred to the horizontal dot hidden surface processing device 34 at the next stage.

【0105】Bバスパイプラインレジスタ350のバス
の値は次段の水平ドット隠面処理装置34へ転送され
る。Cバスパイプラインレジスタ351の値は次段の水
平ドット隠面処理装置34へ転送される。コントローラ
352はEバスより受けたアクティブ信号により駆動
し、もしアクティブであれば、図22のようなフローに
従い水平ドット隠面処理装置を動作させ、アクティブで
なければ駆動しない、Eバスパイプラインフリップフロ
ップ353は、コントローラ352がアクティブである
か否かを示すEバス信号が格納され、このEバス信号を
次の水平ドット隠面処理装置34へ転送する。
The value of the bus of the B bus pipeline register 350 is transferred to the horizontal dot hidden surface processing device 34 at the next stage. The value of the C bus pipeline register 351 is transferred to the horizontal dot hidden surface processing device 34 at the next stage. The controller 352 is driven by an active signal received from the E bus, and if it is active, operates the horizontal dot hidden surface processing device according to the flow shown in FIG. 22, and if it is not active, does not drive the E bus pipeline flip-flop. The E bus signal indicating whether or not the controller 352 is active is stored in 353, and the E bus signal is transferred to the next horizontal dot hidden surface processing device 34.

【0106】図12に各バスのデータの流れを示す。こ
の図11及び図12を参照して、この隠面処理装置の動
作を説明する。
FIG. 12 shows the data flow of each bus. The operation of the hidden surface processing apparatus will be described with reference to FIGS. 11 and 12.

【0107】まず、スキャンラインの右端点情報として
座標値の代わりに右辺と左辺の差DXYをBバスより与
える。即ち左辺の座標(XL,ZL)、DXY、単位ド
ット当たりのZ座標の微差分値DDZが、図10に示す
アレイ構造の構成される水平ドット隠面処理装置34の
左側からAバス、Bバスに分けて入力される。制御情報
(フリップフロップ353に格納されるEバス信号)に
は、そのドットの存在する範囲内に入っていることを示
す情報がある。各バスのデータには図12に示すように
データが時分割的に与えられる。
First, as the right end point information of the scan line, the difference DXY between the right side and the left side is given from the B bus instead of the coordinate value. That is, the coordinates (XL, ZL) on the left side, DXY, and the fine difference value DDZ of the Z coordinate per unit dot are A bus and B bus from the left side of the horizontal dot hidden surface processing device 34 having the array structure shown in FIG. It is input separately. The control information (E bus signal stored in the flip-flop 353) includes information indicating that the dot is within the range. As shown in FIG. 12, the data of each bus is given in a time division manner.

【0108】各水平ドット隠面処理装置34の動作を図
11及び図12に従い説明する。第1のタイミング状態
では、AバスにXL、BバスにDXYが、第2のタイミ
ングでは、AバスにZ値が、BバスにDDZが与えら
れ、Cバスは状態1,状態2の両タイミングでパラメー
タアドレスが与えられる。比較器344が負の時、この
ドットがこの画素位置でポリゴンの存在範囲に入ったこ
とになり、マルチプレクサ345でデータ“−1”を加
算器346に与える。加算器346の他方にはBバスよ
りDXYを与える。ドットがポリゴンの存在範囲内の場
合は、マルチプレクサ347は、レジスタ349に加算
器346の出力を出力する。
The operation of each horizontal dot hidden surface processing device 34 will be described with reference to FIGS. 11 and 12. In the first timing state, XL is given to the A bus, DXY is given to the B bus, Z value is given to the A bus and DDZ is given to the B bus at the second timing, and both timings of state 1 and state 2 are given to the C bus. Gives the parameter address. When the comparator 344 is negative, this dot has entered the polygon existing range at this pixel position, and the multiplexer 345 gives the data “−1” to the adder 346. DXY is given to the other side of the adder 346 from the B bus. When the dot is within the polygon existing range, the multiplexer 347 outputs the output of the adder 346 to the register 349.

【0109】第2の状態では、ドットが存在範囲に入っ
ている状態であれば、AバスのZとBバスのDDZを加
算して加算器346の出力をBバスに出力し、そうでな
ければデータを更新しないでBバスに出力する。そし
て、ドットが存在範囲内に入っている状態でAバス上の
AデータZ奥行きレジスタ341に格納されているデー
タZAを比較器344で比較した結果がZ<ZAの時、
奥行きレジスタ341のデータを書き換えると共に、パ
ラメータアドレスレジスタ342にAバス上のZとCバ
ス上のポリゴンパラメータメモリアドレスをそれぞれ格
納する。
In the second state, if the dot is within the existing range, Z of A bus and DDZ of B bus are added and the output of adder 346 is output to B bus. For example, the data is output to the B bus without being updated. When the result of comparing the data ZA stored in the A data Z depth register 341 on the A bus with the comparator 344 in the state where the dots are within the existing range is Z <ZA,
The data in the depth register 341 is rewritten, and the parameter address register 342 stores the Z and C bus polygon parameter memory addresses, respectively.

【0110】図10に示す水平ドット隠面処理装置34
−0では1減算して0であるためZ値の更新、ZAとの
比較は行われない。水平ドット隠面処理装置34−1で
は更に1減算されて負になったため、XにかわってDX
YをAバスに出力し、後の水平ドット隠面処理装置では
DXYに対して減算が行われる。水平ドット隠面処理装
置34−1は更にフリップフロップ353を1として自
らもZ値の更新、ZAとの比較を行う。後段の隠面処理
装置ではDXYが順次1減算され、その結果が負になる
まで続けられる。負になった時はフリップフロップ35
3を0に戻し、残りの隠面処理装置ではZ値の更新、Z
Aとの比較は行われない。
The horizontal dot hidden surface processing device 34 shown in FIG.
At −0, 1 is subtracted and 0 is obtained, so that the Z value is not updated and compared with ZA. In the horizontal dot hidden surface processing device 34-1, 1 is further subtracted and becomes negative.
Y is output to the A bus, and the subsequent horizontal dot hidden surface processing device performs subtraction on DXY. The horizontal dot hidden surface processing device 34-1 further sets the flip-flop 353 to 1 and updates the Z value and compares it with ZA. In the hidden surface processing device in the latter stage, DXY is sequentially subtracted by 1, and the process is continued until the result becomes negative. When it becomes negative, flip-flop 35
3 is returned to 0, the remaining hidden surface processing device updates Z value, Z
No comparison with A is made.

【0111】図13にスキャンライン隠面処理装置34
aのパイプラインのタイムチャートを示す。P1−1と
はポリゴン状態1、P1−2とはポリゴン1の状態2、
P2−1とはポリゴン2の状態1のことである。水平補
間演算装置33から受けた水平ライン上のドットアドレ
ス値をスキャンライン隠面処理装置34aへ送り、次の
ドットに対応する水平ドット隠面処理装置34がパラメ
ータアドレスレジスタ342の値をDバスを介して受け
取り、そのポリゴンパラメータメモリアドレスを水平補
間演算装置33へ送る。これら各装置はコントローラ4
1で制御される。
FIG. 13 shows the scan line hidden surface processing device 34.
The time chart of the pipeline of a is shown. P1-1 is polygon state 1, P1-2 is polygon 1 state 2,
P2-1 is the state 1 of polygon 2. The dot address value on the horizontal line received from the horizontal interpolation calculation device 33 is sent to the scan line hidden surface processing device 34a, and the horizontal dot hidden surface processing device 34 corresponding to the next dot transfers the value of the parameter address register 342 to the D bus. And sends the polygon parameter memory address to the horizontal interpolation calculation device 33. Each of these devices is a controller 4
Controlled by 1.

【0112】次に図14に従い、水平補間演算装置33
につき説明する。隠面処理装置34が各ドットのポリゴ
ンパラメータメモリ40のアドレスをパラメータ入力装
置33aに与える。パラメータ入力装置33aは入力さ
れたポリゴンパラメータメモリアドレスに従って、ポリ
ゴンパラメータメモリ40よりそのアドレスに格納され
たパラメータを読み出し、内挿マッピング演算装置33
bに転送する。
Next, referring to FIG. 14, the horizontal interpolation calculation device 33
Will be explained. The hidden surface processing device 34 gives the address of the polygon parameter memory 40 for each dot to the parameter input device 33a. The parameter input device 33a reads the parameter stored at that address from the polygon parameter memory 40 according to the input polygon parameter memory address, and the interpolation mapping operation device 33
transfer to b.

【0113】内挿マッピング演算装置33bは、ポリゴ
ンパラメータメモリ40からパラメータ入力装置33a
を介して転送されたポリゴン端点毎の視野座標のX,
Y,Z値とマッピングパターンメモリアドレスMX,M
Yとマッピングの方向を示すフラグを受け取り、現在処
理しているスキャンラインのXアドレスのドットのマッ
ピングパターンメモリアドレス(MX,MY)を求め、
フレームメモリコントローラ33cに転送する。
The interpolating mapping arithmetic unit 33b receives the parameter input unit 33a from the polygon parameter memory 40.
X of the visual field coordinates for each polygon end point transferred via
Y and Z values and mapping pattern memory addresses MX and M
Y and a flag indicating the direction of mapping are received, and the mapping pattern memory address (MX, MY) of the dot of the X address of the scan line currently being processed is calculated,
Transfer to the frame memory controller 33c.

【0114】フレームメモリコントローラ33cは、内
挿マッピング演算装置33bで求めたマッピングパター
ンメモリアドレス(MX,MY)によりマッピングパタ
ーンメモリ7をアクセスすることにより、現在処理され
ているスキャンラインのXアドレスのドットのR,G,
B又はLUT値を求めフレームメモリ8に書き込む。こ
れら各装置はコントローラ42にて制御され、このコン
トローラ42は図23に示すフローチャートに従い動作
する。
The frame memory controller 33c accesses the mapping pattern memory 7 by the mapping pattern memory address (MX, MY) obtained by the interpolation mapping arithmetic unit 33b, so that the dot of the X address of the scan line which is currently processed. R, G,
The B or LUT value is obtained and written in the frame memory 8. Each of these devices is controlled by the controller 42, and this controller 42 operates according to the flowchart shown in FIG.

【0115】図15は、内挿マッピング演算装置33b
の具体的実施例を示すブロック図である。この内挿マッ
ピング演算装置33bは、視野座標X,Y,Z値生成装
置331とマッピング演算装置332を備える。視野座
標X,Y,Z値生成装置331は、隠面処理装置34か
ら受け取った正規化座標に変換されたZ値を受け取り、
このZ値を視野座標のZ値に変換し、スクリーンX,Y
値とスクリーン距離から視野座標のX値、Y値を求め、
マッピング演算装置332へ転送する。
FIG. 15 shows an interpolation mapping calculation device 33b.
It is a block diagram showing a specific example of. The interpolation mapping calculation device 33b includes a visual field coordinate X, Y, Z value generation device 331 and a mapping calculation device 332. The visual field coordinate X, Y, Z value generating device 331 receives the Z value converted into the normalized coordinate received from the hidden surface processing device 34,
This Z value is converted into the Z value of the visual field coordinates, and the screen X, Y
The X and Y values of the visual field coordinates are calculated from the values and the screen distance,
It is transferred to the mapping arithmetic unit 332.

【0116】マッピング演算装置332は、視野座標
X,Y,Z値を視野座標X,Y,Z値生成装置331か
ら受け取り、パラメータ入力装置339を介してポリゴ
ンパラメータメモリから読み出されたポリゴン端点の視
野座標のX,Y,Z値とマッピングの方向と、視野座標
上の2辺の外積の逆数値1/abとポリゴン端点のマッ
ピングパターンメモリアドレスMX,MYを受け取り、
内挿マッピング演算を行い、各ドットのマッピングパタ
ーンメモリアドレスMX,MYをフレームメモリコント
ローラ33cへ転送する。
The mapping calculation unit 332 receives the visual field coordinates X, Y, Z values from the visual field coordinate X, Y, Z value generation unit 331, and the polygon end points read from the polygon parameter memory via the parameter input unit 339. The X, Y and Z values of the visual field coordinates and the mapping direction, the reciprocal value 1 / ab of the outer product of the two sides on the visual field coordinates and the mapping pattern memory addresses MX and MY of the polygon end points are received,
Interpolation mapping calculation is performed and the mapping pattern memory addresses MX and MY of each dot are transferred to the frame memory controller 33c.

【0117】図16に視野座標X,Y,Z値生成装置の
ブロック図を示す。視野座標X,Y,Z値生成装置33
1は、視野座標標値生成装置331aと視野座標X,Y
値生成装置331bとを備える。視野座標Z値生成装置
331aは、正規化されたZ値を下記に示す数式8の変
換演算により等出する。Z値の正規化処理として、下記
数式7に示すものが知られている。
FIG. 16 shows a block diagram of a visual field coordinate X, Y, Z value generation device. Visual field coordinate X, Y, Z value generation device 33
1 is a visual field coordinate standard value generating device 331a and visual field coordinates X and Y
And a value generation device 331b. The visual field coordinate Z value generation device 331a outputs the normalized Z value by the conversion calculation of the following Equation 8. As the Z value normalization process, the one shown in the following formula 7 is known.

【0118】[0118]

【数7】A=CZMAX/(VLEN*(CZMAX−
CZMIN)) B=CZMAX*CZMIN/(VLEN*(CZMA
X−CZMIN)) Z=(A*WZ−B)*VLEN/EZ ここで、CZMAXはZ値の最大値、CZMINはZ値
の最小値、VLENはスクリーンとの距離である。
(7) A = CZMAX / (VLEN * (CZMAX-
C = CZMIN)) B = CZMAX * CZMIN / (VLEN * (CZMA
X-CZMIN)) Z = (A * WZ-B) * VLEN / EZ where CZMAX is the maximum Z value, CZMIN is the minimum Z value, and VLEN is the distance from the screen.

【0119】この処理により、視野座標値ZEから正規
化座標値IZへ変換される。従って、この視野座標Z値
生成装置331aは、隠面処理装置34により補間され
たSZ値から上記の数式7の逆変換を行い、下記の数式
8に従い視野座標のZ値をもとめる。
By this processing, the visual field coordinate value ZE is converted to the normalized coordinate value IZ. Therefore, the visual field coordinate Z value generation device 331a performs the inverse transformation of the above equation 7 from the SZ value interpolated by the hidden surface processing device 34, and obtains the Z value of the visual field coordinate according to the following equation 8.

【0120】[0120]

【数8】A2=(CZMAX/(VLEN*(CZMA
X−CZMIN))*VLEN B2=CZMAX*CEMIN/(VLEN*(CZM
AX−CZMIN))*(−VLEN) EZ=B2/(IZ−A2)
[Equation 8] A2 = (CZMAX / (VLEN * (CZMA
X-CZMIN)) * VLEN B2 = CZMAX * CEMIN / (VLEN * (CZM
AX-CZMIN)) * (-VLEN) EZ = B2 / (IZ-A2)

【0121】上記数式8の演算により視野座標のZ値を
求めるように、視野座標Z値装置331aは演算処理を
行う。
The visual field coordinate Z value device 331a performs a calculation process so as to obtain the Z value of the visual field coordinates by the calculation of the above equation 8.

【0122】図17は、視野座標Z値生成装置331a
の具体的実施例を示すブロック図である。隠面処理装置
34から送られてきた正規化座標のZ値は、レジスタ3
51に格納され、上記数5のA2のパラメータは、レジ
スタ352に格納される。両レジスタ351、352か
ら、それぞれのデータが減算器353に与えられ、1Z
−A2の演算が行われる。上記B2のパラメータは、レ
ジスタ354に格納され、この値が除算器355の一方
に与えられる。
FIG. 17 shows a view coordinate Z value generation device 331a.
It is a block diagram showing a specific example of. The Z value of the normalized coordinates sent from the hidden surface processing device 34 is stored in the register 3
51 is stored in the register 51 and is stored in the register 352. The respective data is given to the subtractor 353 from both the registers 351 and 352, and 1Z
-A2 is calculated. The parameter of B2 is stored in the register 354, and this value is given to one of the dividers 355.

【0123】視野座標X,Y,Z値生成装置331b
は、投影処理されたX,Y値を下記に示す数式10の変
換演算により算出するものである。投影処理として、下
記数式9に示すものが知られている。
Field-of-view coordinate X, Y, Z value generator 331b
Is for calculating the projected X and Y values by the conversion operation of the following mathematical formula 10. As the projection process, the one shown in the following formula 9 is known.

【0124】[0124]

【数9】SX=EX*VLEN/EZ+CX ここで、CXはスクリーン中心のX値である。SX = EX * VLEN / EZ + CX where CX is the X value at the center of the screen.

【0125】ここでは上記数式9を逆変換して、下記数
式10に基づいて、X,Yの演算を行う。
Here, the above equation 9 is inversely transformed, and X and Y are calculated based on the following equation 10.

【0126】[0126]

【数10】 EX=(SX−CX)*EZ*(1/VLEN)EX = (SX−CX) * EZ * (1 / VLEN)

【0127】図18は、視野座標X,Y値生成装置33
1bの具体的実施例を示すブロック図である。
FIG. 18 shows a visual field coordinate X, Y value generating device 33.
It is a block diagram which shows the specific Example of 1b.

【0128】上記数式のCX,CYパラメータは、レジ
スタ361に格納され、このレジスタ361からCX,
CYパラメータが減算器363に与えられる。また、ス
クリーン座標のX値,Y値はカウンタ362にてカウン
トされる。このカウンタ362は全体のシステムに同期
してカウントアップする。カウンタ362からスクリー
ン座標のX値、Y値が減算器363に与えられ、減算器
363にてSX−CX,SY−CY,の演算が行われ
る。この減算器363からの減算結果が乗算器364に
与えられる。この乗算器364は、視野座標Z値生成装
置331aからEZが与えられ、(SX−CX)×E
Z,(SY−CY)×EZの演算が行われる。一方、レ
ジスタ365には、上記式の1/VLENパラメータが
格納されており、このレジスタから1/VLENが乗算
器366へ与えられる。この乗算器366には乗算器3
64からの乗算結果が与えられ、この乗算器366から
視野座標EX,EYがレジスタ367へ与えられる。
The CX and CY parameters of the above formula are stored in the register 361, and the CX and CY parameters from this register 361 are stored.
The CY parameter is given to the subtractor 363. The X value and the Y value of the screen coordinate are counted by the counter 362. The counter 362 counts up in synchronization with the entire system. The X value and the Y value of the screen coordinates are given from the counter 362 to the subtractor 363, and the subtractor 363 calculates SX-CX and SY-CY. The subtraction result from the subtractor 363 is given to the multiplier 364. EZ is given to the multiplier 364 from the visual field coordinate Z value generation device 331 a, and (SX−CX) × E
The calculation of Z, (SY-CY) * EZ is performed. On the other hand, the register 365 stores the 1 / VLEN parameter of the above equation, and 1 / VLEN is applied to the multiplier 366 from this register. This multiplier 366 has a multiplier 3
The multiplication result from 64 is given, and the visual field coordinates EX and EY are given from the multiplier 366 to the register 367.

【0129】図19は、マッピング演算装置332の具
体的実施例を示すブロック図である。
FIG. 19 is a block diagram showing a concrete example of the mapping arithmetic unit 332.

【0130】レジスタ371には、ポリゴンパラメータ
メモリ40から読み出されたポリゴン端点の視野座標E
X1,EX2,EX3が格納され、レジスタ372には
視野座標X,Y,Z値生成装置331から受け取った視
野座標X値(EX)が格納される。レジスタ371に格
納されたEX1,EX2,EX3はマルチプレクサ37
3を介して減算器374に一方の入力に与えられる。減
算器374の他方の入力にはレジスタ372に格納され
たEXが与えられる。この減算器373にてEX−EX
1,EX−EX2,EX−EX3の演算が行われ、その
結果、aX,bX,cXがレジスタ375に格納され
る。このレジスタ375から、aX,bX,cXがマル
チプレクサ376を介して、マルチプレクサ393、マ
ルチプレクサ402、マルチプレクサ411に与えられ
る。
The register 371 stores the visual field coordinates E of the polygon end points read from the polygon parameter memory 40.
X1, EX2, and EX3 are stored, and the register 372 stores the visual field coordinate X value (EX) received from the visual field coordinate X, Y, and Z value generation device 331. EX1, EX2, and EX3 stored in the register 371 are multiplexers 37
One of the inputs is applied to the subtractor 374 via the input terminal 3. The EX stored in the register 372 is applied to the other input of the subtractor 374. EX-EX is performed by the subtractor 373.
1, EX-EX2, EX-EX3 are calculated, and as a result, aX, bX, cX are stored in the register 375. From the register 375, aX, bX, and cX are given to the multiplexer 393, the multiplexer 402, and the multiplexer 411 via the multiplexer 376.

【0131】レジスタ377には、ポリゴンパラメータ
メモリ40から読み出されたポリゴン端点の視野座標E
Y1,EY2,EY3が格納され、レジスタ378には
視野座標X,Y,Z値生成装置331から受け取った視
野座標Y値(EY)が格納される。レジスタ377に格
納されたEY1,EY2,EY3はマルチプレクサ37
9を介して減算器380に一方の入力に与えられる。減
算器380の他方の入力にはレジスタ378に格納され
たEYが与えられる。この減算器380にてEY−EY
1,EY−EY2,EY−EY3の演算が行われ、その
結果、aY,bY,cYがレジスタ381に格納され
る。このレジスタ381から、aY,bY,cYがマル
チプレクサ382を介して、マルチプレクサ393、4
20、402、421、411、422に与えられる。
The register 377 stores the visual field coordinates E of the polygon end points read from the polygon parameter memory 40.
Y1, EY2, EY3 are stored, and the register 378 stores the visual field coordinate Y value (EY) received from the visual field coordinate X, Y, Z value generating device 331. EY1, EY2, and EY3 stored in the register 377 are multiplexers 37
It is given to one input to the subtractor 380 via 9. The EY stored in the register 378 is applied to the other input of the subtractor 380. This subtractor 380 produces an EY-EY
1, EY-EY2, EY-EY3 are calculated, and as a result, aY, bY, and cY are stored in the register 381. From this register 381, aY, bY, and cY are transmitted via multiplexer 382 to multiplexers 393, 4
20, 402, 421, 411, 422.

【0132】レジスタ383には、ポリゴンパラメータ
メモリ40から読み出されたポリゴン端点の視野座標E
Z1,EZ2,EZ3が格納され、レジスタ384には
視野座標X,Y,Z値生成装置331から受け取った視
野座標Z値(EZ)が格納される。レジスタ383に格
納されたEZ1,EZ2,EZ3はマルチプレクサ38
5を介して減算器386に一方の入力に与えられる。減
算器386の他方の入力にはレジスタ384に格納され
たEZが与えられる。この減算器386にてEZ−EZ
1,EZ−EZ2,EZ−EZ3の演算が行われ、その
結果、aZ,bZ,cZがレジスタ387に格納され
る。このレジスタ387から、aZ,bZ,cZがマル
チプレクサ388を介して、マルチプレクサ393、4
20、402、421、422に与えられる。
The register 383 stores the visual field coordinates E of the polygon end points read from the polygon parameter memory 40.
Z1, EZ2, EZ3 are stored, and the visual field coordinate Z value (EZ) received from the visual field coordinate X, Y, Z value generating device 331 is stored in the register 384. EZ1, EZ2, EZ3 stored in the register 383 are multiplexers 38
One of the inputs is given to the subtractor 386 via the signal V.sub.5. The EZ stored in the register 384 is applied to the other input of the subtractor 386. EZ-EZ in this subtractor 386
1, EZ-EZ2, EZ-EZ3 are calculated, and as a result, aZ, bZ, cZ are stored in the register 387. From this register 387, aZ, bZ, and cZ are transmitted via multiplexer 388 to multiplexers 393, 4
20, 402, 421, 422.

【0133】マッピング方向がX−Zの時には、まず、
乗算器389の一方の入力に、マルチプレクサ376、
393を介してレジスタ375からcXが与えられ、他
方の入力に、マルチプレクサ388、420を介してレ
ジスタ387からbZが与えられ、W1K=bZ×cX
の演算を行い、この演算結果W1Kがレジスタ390に
格納される。さらに、乗算器389の一方の入力に、マ
ルチプレクサ376、393を介してレジスタ375か
らbXが与えられ、他方の入力に、マルチプレクサ38
8、420を介してレジスタ387からcZが与えら
れ、W2K=bX×cZの演算を行い、この演算結果W
2Kがレジスタ391に格納される。
When the mapping direction is XZ, first,
One input of the multiplier 389 has a multiplexer 376,
CX is given from the register 375 via 393, bZ is given to the other input from the register 387 via the multiplexers 388 and 420, and W1K = bZ × cX
The calculation result W1K is stored in the register 390. Further, bX is given to one input of the multiplier 389 from the register 375 via the multiplexers 376 and 393, and the other input is input to the multiplexer 38.
CZ is given from the register 387 via 8, 420, W2K = bX × cZ is calculated, and the calculation result W
2K is stored in the register 391.

【0134】そして、乗算器398の一方の入力に、マ
ルチプレクサ376、402を介してレジスタ375か
らaXが与えられ、他方の入力に、マルチプレクサ38
8、421を介してレジスタ387からcZが与えら
れ、W1L=cZ×aXの演算を行い、この演算結果W
1Lがレジスタ399に格納される。さらに、乗算器3
98の一方の入力に、マルチプレクサ376、402を
介してレジスタ375からcXが与えられ、他方の入力
に、マルチプレクサ388、421を介してレジスタ3
87からaZが与えられ、W2L=cX×aZの演算を
行い、この演算結果W2Kがレジスタ400に格納され
る。
Then, aX is applied to one input of the multiplier 398 from the register 375 via the multiplexers 376 and 402, and the other input is input to the multiplexer 38.
CZ is given from the register 387 via 8 and 421, W1L = cZ × aX is calculated, and the calculation result W
1L is stored in the register 399. Furthermore, the multiplier 3
98 is provided with cX from the register 375 via the multiplexers 376 and 402 to one input of 98 and the register 3 via the multiplexers 388 and 421 to the other input.
87 is supplied with aZ, the calculation of W2L = cX × aZ is performed, and the calculation result W2K is stored in the register 400.

【0135】また、乗算器407の一方の入力に、マル
チプレクサ376、411を介してレジスタ375から
bXが与えられ、他方の入力に、マルチプレクサ38
8、422を介してレジスタ387からaZが与えら
れ、W1M=aZ×bXの演算を行い、この演算結果W
1Mがレジスタ408に格納される。さらに、乗算器4
07の一方の入力に、マルチプレクサ376、411を
介してレジスタ375からaXが与えられ、他方の入力
に、マルチプレクサ388、422を介してレジスタ3
87からbZが与えられ、W2M=aX×bZの演算を
行い、この演算結果W2Mがレジスタ409に格納され
る。
Further, bX is given to one input of the multiplier 407 from the register 375 via the multiplexers 376 and 411, and the other input is input to the multiplexer 38.
AZ is given from the register 387 via 8, 422, W1M = aZ × bX is calculated, and the calculation result W
1M is stored in the register 408. Furthermore, the multiplier 4
07 is supplied with aX from the register 375 via the multiplexers 376 and 411, and the other input is supplied with the register 3 via multiplexers 388 and 422 to the other input.
BZ is given from 87, W2M = aX × bZ is calculated, and the calculation result W2M is stored in the register 409.

【0136】マッピング方向がY−Zの時には、まず、
乗算器389の一方の入力に、マルチプレクサ376、
393を介してレジスタ375からcXが与えられ、他
方の入力に、マルチプレクサ382、420を介してレ
ジスタ381からbYが与えられ、W1K=bY×cX
の演算を行い、この演算結果W1Kがレジスタ390に
格納される。さらに、乗算器389の一方の入力に、マ
ルチプレクサ376、393を介してレジスタ375か
らbXが与えられ、他方の入力に、マルチプレクサ38
2、420を介してレジスタ381からcYが与えら
れ、W2K=bX×cYの演算を行い、この演算結果W
2Kがレジスタ391に格納される。
When the mapping direction is YZ, first,
One input of the multiplier 389 has a multiplexer 376,
CX is given from the register 375 via 393, bY is given to the other input from the register 381 via the multiplexers 382 and 420, and W1K = bY × cX
The calculation result W1K is stored in the register 390. Further, bX is given to one input of the multiplier 389 from the register 375 via the multiplexers 376 and 393, and the other input is input to the multiplexer 38.
CY is given from the register 381 via 2, 420, W2K = bX × cY is calculated, and the calculation result W
2K is stored in the register 391.

【0137】そして、乗算器398の一方の入力に、マ
ルチプレクサ376、402を介してレジスタ375か
らaXが与えられ、他方の入力に、マルチプレクサ38
2、421を介してレジスタ387からcYが与えら
れ、W1L=cY×aXの演算を行い、この演算結果W
1Lがレジスタ399に格納される。さらに、乗算器3
98の一方の入力に、マルチプレクサ376、402を
介してレジスタ375からcXが与えられ、他方の入力
に、マルチプレクサ382、421を介してレジスタ3
87からaYが与えられ、W2L=cX×aYの演算を
行い、この演算結果W2Lがレジスタ400に格納され
る。
Then, aX is given from the register 375 to one input of the multiplier 398 via the multiplexers 376 and 402, and the multiplexer 38 is provided to the other input.
CY is given from the register 387 via 2, 421, W1L = cY × aX is calculated, and the calculation result W
1L is stored in the register 399. Furthermore, the multiplier 3
98 is provided with cX from the register 375 via the multiplexers 376 and 402 to one input of 98 and the register 3 via the multiplexers 382 and 421 to the other input.
87 gives aY, W2L = cX × aY is calculated, and the calculation result W2L is stored in the register 400.

【0138】また、乗算器407の一方の入力に、マル
チプレクサ376、411を介してレジスタ375から
bXが与えられ、他方の入力に、マルチプレクサ38
2、422を介してレジスタ381からaYが与えら
れ、W1M=aY×bXの演算を行い、この演算結果W
1Mがレジスタ408に格納される。さらに、乗算器4
07の一方の入力に、マルチプレクサ376、411を
介してレジスタ375からaXが与えられ、他方の入力
に、マルチプレクサ382、422を介してレジスタ3
87からbYが与えられ、W2M=aX×bYの演算を
行い、この演算結果W2Mがレジスタ409に格納され
る。
Further, bX is given to one input of the multiplier 407 from the register 375 via the multiplexers 376 and 411, and the other input is input to the multiplexer 38.
AY is given from the register 381 via 2, 422, W1M = aY × bX is calculated, and the calculation result W
1M is stored in the register 408. Furthermore, the multiplier 4
07 is supplied with aX from the register 375 via the multiplexers 376 and 411, and the other input is supplied with the register 3 via multiplexers 382 and 422 to the other input.
87 is provided with bY, W2M = aX × bY is calculated, and the calculation result W2M is stored in the register 409.

【0139】マッピング方向がX−Yの時には、まず、
乗算器389の一方の入力に、マルチプレクサ376、
393を介してレジスタ375からbXが与えられ、他
方の入力に、マルチプレクサ382、420を介してレ
ジスタ381からcYが与えられ、W1K=bX×cY
の演算を行い、この演算結果W1Kがレジスタ390に
格納される。さらに、乗算器389の一方の入力に、マ
ルチプレクサ376、393を介してレジスタ375か
らcXが与えられ、他方の入力に、マルチプレクサ38
2、420を介してレジスタ381からbYが与えら
れ、W2K=bY×cXの演算を行い、この演算結果W
2Kがレジスタ391に格納される。
When the mapping direction is XY, first,
One input of the multiplier 389 has a multiplexer 376,
BX is given from the register 375 via 393, and cY is given to the other input from the register 381 via the multiplexers 382 and 420, and W1K = bX × cY.
The calculation result W1K is stored in the register 390. Further, one input of the multiplier 389 is supplied with cX from the register 375 via the multiplexers 376 and 393, and the other input is provided with the multiplexer 38.
BY is given from the register 381 via 2, 420, W2K = bY × cX is calculated, and the calculation result W
2K is stored in the register 391.

【0140】そして、乗算器398の一方の入力に、マ
ルチプレクサ376、402を介してレジスタ375か
らcXが与えられ、他方の入力に、マルチプレクサ38
2、421を介してレジスタ387からaYが与えら
れ、W1L=cX×aYの演算を行い、この演算結果W
1Lがレジスタ399に格納される。さらに、乗算器3
98の一方の入力に、マルチプレクサ376、402を
介してレジスタ375からaXが与えられ、他方の入力
に、マルチプレクサ382、421を介してレジスタ3
87からcYが与えられ、W2L=aX×cYの演算を
行い、この演算結果W2Lがレジスタ400に格納され
る。
Then, one input of the multiplier 398 is supplied with cX from the register 375 via the multiplexers 376 and 402, and the other input is supplied with the multiplexer 38.
AY is given from the register 387 via 2, 421, W1L = cX × aY is calculated, and the calculation result W
1L is stored in the register 399. Furthermore, the multiplier 3
AX is given to one input of 98 from the register 375 through the multiplexers 376 and 402, and the other input is given to the register 3 through the multiplexers 382 and 421.
87 is supplied with cY, W2L = aX × cY is calculated, and the calculation result W2L is stored in the register 400.

【0141】また、乗算器407の一方の入力に、マル
チプレクサ376、411を介してレジスタ375から
aXが与えられ、他方の入力に、マルチプレクサ38
2、422を介してレジスタ381からbYが与えら
れ、W1M=aX×bYの演算を行い、この演算結果W
1Mがレジスタ408に格納される。さらに、乗算器4
07の一方の入力に、マルチプレクサ376、411を
介してレジスタ375からbXが与えられ、他方の入力
に、マルチプレクサ382、422を介してレジスタ3
87からaYが与えられ、W2M=aY×bXの演算を
行い、この演算結果W2Mがレジスタ409に格納され
る。
Also, one input of the multiplier 407 is supplied with aX from the register 375 via the multiplexers 376 and 411, and the other input is provided with the multiplexer 38.
BY is given from the register 381 via 2, 422, W1M = aX × bY is calculated, and the calculation result W
1M is stored in the register 408. Furthermore, the multiplier 4
07 is supplied with bX from the register 375 through the multiplexers 376 and 411 to one input of 07 and the register 3 through the multiplexers 382 and 422 to the other input.
87 is supplied with aY, W2M = aY × bX is calculated, and the calculation result W2M is stored in the register 409.

【0142】減算器392には、レジスタ390、39
1に格納されたW1K、W2Kがそれぞれ与えられ、K
=W1K−W2Kの演算を行い、重み係数Kを算出し、
レジスタ394にKを格納する。
The subtractor 392 includes registers 390 and 39.
W1K and W2K stored in 1 are given respectively, and K
= W1K-W2K is calculated, the weighting coefficient K is calculated,
K is stored in the register 394.

【0143】減算器401には、レジスタ399、40
0に格納されたW1L、W2Lがそれぞれ与えられ、L
=W1L−W2Lの演算を行い、重み係数Lを算出し、
レジスタ403にLを格納する。
The subtractor 401 includes registers 399 and 40.
W1L and W2L stored in 0 are given respectively, and L
= W1L-W2L, the weighting coefficient L is calculated,
L is stored in the register 403.

【0144】減算器410には、レジスタ408、40
9に格納されたW1M、W2Mがそれぞれ与えられ、M
=W1M−W2Mの演算を行い、重み係数Mを算出し、
レジスタ412にMを格納する。
The subtractor 410 includes registers 408 and 40.
W1M and W2M stored in 9 are given respectively, and M
= W1M-W2M, the weighting factor M is calculated,
Store M in the register 412.

【0145】レジスタ395には、端点のマッピングア
ドレスMX1,MY1が格納されており、レジスタ39
4に格納されたKと端点のマッピングアドレスMX1,
MY1が乗算器396にて乗算され、WK=K×MX1
またはWK=K×MY1の演算結果がレジスタ397に
格納される。
The register 395 stores the mapping addresses MX1 and MY1 of the end points, and the register 39
Mapping address MX1 of K and the end point stored in 4
MY1 is multiplied by the multiplier 396, and WK = K × MX1
Alternatively, the calculation result of WK = K × MY1 is stored in the register 397.

【0146】また、レジスタ404には、端点のマッピ
ングアドレスMX2,MY2が格納されており、レジス
タ403に格納されたLと端点のマッピングアドレスM
X2,MY2が乗算器405にて乗算され、WL=L×
MX2またはWL=L×MY2の演算結果がレジスタ4
06に格納される。
Further, the register 404 stores end point mapping addresses MX2 and MY2, and the L stored in the register 403 and the end point mapping address M.
X2 and MY2 are multiplied by the multiplier 405, and WL = L ×
The calculation result of MX2 or WL = L × MY2 is stored in the register 4
It is stored in 06.

【0147】さらに、レジスタ413には、端点のマッ
ピングアドレスMX3,MY3が格納されており、レジ
スタ412に格納されたMと端点のマッピングアドレス
MX3,MY3が乗算器414にて乗算され、WM=M
×MX3またはWM=M×MY3の演算結果がレジスタ
415に格納される。
Further, the register 413 stores the end point mapping addresses MX3 and MY3. The M stored in the register 412 and the end point mapping addresses MX3 and MY3 are multiplied by the multiplier 414, and WM = M
The calculation result of × MX3 or WM = M × MY3 is stored in the register 415.

【0148】レジスタ397、406、415に格納さ
れたWK、WL、WMが加算器416で加算され、その
加算結果にレジスタ417に格納されたベクトルabの
外積の逆数1/abとが乗算器418にて乗算され、
(WK+WL+WP)×1/abの演算を行い、X方
向、Y方向のマッピングアドレスMX,MYが算出さ
れ、レジスタ419に格納される。これら各回路は、コ
ントローラ423により制御され、コントローラ423
は、図24に示すフローチャートに基づき動作する。
The WK, WL and WM stored in the registers 397, 406 and 415 are added by the adder 416, and the addition result is multiplied by the reciprocal 1 / ab of the outer product of the vector ab stored in the register 417. Is multiplied by
The calculation of (WK + WL + WP) × 1 / ab is performed, the mapping addresses MX and MY in the X and Y directions are calculated and stored in the register 419. Each of these circuits is controlled by the controller 423, and the controller 423
Operates based on the flowchart shown in FIG.

【0149】上記ポリゴン外形処理装置20及びポリゴ
ン内部処理装置30の動作を図20ないし図24の動作
フローに基づき、上記回路例に従い説明する。
The operations of the polygon outer shape processing device 20 and the polygon inner processing device 30 will be described according to the above circuit example based on the operation flows of FIGS.

【0150】ポリゴン外形処理装置20の動作につき説
明する。まず、コントローラ25がポリゴン数(P)を
スクリーンメモリ5より読み出し、そして、処理するポ
リゴン端点数を読み出し、その数をポリゴン摘出装置2
1に与える(ステップS1,S2)。
The operation of the polygon outer shape processing device 20 will be described. First, the controller 25 reads out the number of polygons (P) from the screen memory 5, and then reads out the number of polygon end points to be processed.
1 (steps S1 and S2).

【0151】そして、スクリーンメモリ5より各辺の始
点(XS,YS,ZS)をそれぞれ読み出し(ステップ
S3)、スクリーンメモリ5のアドレスをインクリメン
トする。そして、スクリーンメモリ5より各辺の終点
(XE,YE,ZE)をそれぞれ読み出す(ステップS
4)。この読み出した端点の始点(XS,YS)、終点
(XE,YE)からポリゴン摘出装置21にて方向ベク
トルを算出し、この辺ベクトルに基づき左辺又は右辺を
判定すると共にポリゴンの向き(DIR)を設定する
(ステップS5)。
Then, the starting points (XS, YS, ZS) of each side are read from the screen memory 5 (step S3), and the address of the screen memory 5 is incremented. Then, the end points (XE, YE, ZE) of each side are read from the screen memory 5 (step S).
4). A polygon extraction device 21 calculates a direction vector from the read start point (XS, YS) and end point (XE, YE) of the end point, determines the left side or the right side based on the side vector, and sets the polygon direction (DIR). Yes (step S5).

【0152】そして、ポリゴン外形処理装置20のXパ
ラメータ演算装置22aにてXパラメータの演算を行う
(ステップS6)。Xパラメータ演算装置22aの減算
器にスクリーンメモリ5からのYE,YSのデータが与
えられ、両者間の距離DYを算出する。
Then, the X parameter calculation device 22a of the polygon outline shape processing device 20 calculates the X parameter (step S6). Data of YE and YS from the screen memory 5 is given to the subtractor of the X parameter calculation device 22a, and the distance DY between them is calculated.

【0153】続いて、Xパラメータ演算装置22aの減
算器にスクリーンメモリ5から始点(XS)及び終点
(XE)データが与えられ、この減算器からの減算結果
(XE−XS)が除算器へ供給される。
Subsequently, the start point (XS) and end point (XE) data is given from the screen memory 5 to the subtractor of the X parameter arithmetic unit 22a, and the subtraction result (XE-XS) from this subtractor is supplied to the divider. To be done.

【0154】この除算器にて、(XE−XS)/DYの
除算が行われ、Xパラメータが算出される。
In this divider, (XE-XS) / DY is divided to calculate the X parameter.

【0155】続いて、このXパラメータを用いてX垂直
補間装置23aで補間演算が行われる(ステップS
9)。この値(DDX)が補間演算回路の加算器へ与え
られる。この加算器にて、X+DDXの補間が行われ、
この値がレジスタに書き込まれる(ステップS9)。
Subsequently, an interpolation calculation is performed by the X vertical interpolation device 23a using this X parameter (step S).
9). This value (DDX) is given to the adder of the interpolation calculation circuit. Interpolation of X + DDX is performed by this adder,
This value is written in the register (step S9).

【0156】この除算器には差分回路の減算器62から
DYが与えられ、上述の演算結果との間で除算され、微
差分値が算出される。
DY is given to this divider from the subtractor 62 of the difference circuit, and DY is divided by the above calculation result to calculate a fine difference value.

【0157】この微差分演算回路にて、DZ=(ZE−
ZS)/DYの演算が行われ、パラメータが算出され
る。この演算結果が垂直補間装置23a、Z値補間装置
23bの加算器へ供給される。
In this fine difference calculation circuit, DZ = (ZE-
ZS) / DY is calculated and parameters are calculated. The calculation result is supplied to the adders of the vertical interpolation device 23a and the Z value interpolation device 23b.

【0158】ステップS10,S11では、補間装置2
3a,23bの加算器に微差分演算回路からの出力と、
レジスタに設定された前のデータとの間で加算がなさ
れ、Z=Z+DZの演算が行われる。
In steps S10 and S11, the interpolation device 2
The outputs from the fine difference calculation circuit are added to the adders 3a and 23b,
Addition is performed with the previous data set in the register, and Z = Z + DZ is calculated.

【0159】この値がレジスタに与えられ、このレジス
タの値がレジスタの値がZ値のアドレスデータとしてポ
リゴンエッジメモリ6に書き込まれる。
This value is given to the register, and the value of this register is written in the polygon edge memory 6 as the address data of the value of the register being the Z value.

【0160】ポリゴンエッジメモリ6には、Yアドレス
毎にポリゴン辺の左辺アドレス、右辺アドレス、ポリゴ
ンメモリアドレス、Z値の左辺アドレス、右辺アドレス
が格納される。
The polygon edge memory 6 stores a left side address, a right side address, a polygon memory address, a Z side left side address and a right side address of a polygon for each Y address.

【0161】ステップS11にてY+DIRの演算、即
ちポリゴンが下向きの時には、“+1”、上向きの時に
は“−1”の演算を行いステップS14に進む。そし
て、ステップS12にて、Y≠YEが判断され、Y≠Y
Eの場合には、ステップS9へ戻り、前述の動作を繰り
返し、Y=YEになるとステップS13へ進む。
In step S11, Y + DIR is calculated, that is, "+1" is calculated when the polygon faces downward, and "-1" is calculated when the polygon faces upward, and the process proceeds to step S14. Then, in step S12, Y ≠ YE is determined, and Y ≠ Y
In the case of E, the process returns to step S9, the above-described operation is repeated, and when Y = YE, the process proceeds to step S13.

【0162】ステップS13にて、ポリゴンの全てに辺
が終了したか否か判断され、終了していない場合には、
ステップS3へ戻り、前述の動作を繰り返す。
In step S13, it is determined whether or not the sides of all the polygons are finished. If not,
Returning to step S3, the above-described operation is repeated.

【0163】ポリゴンの全ての辺が終了すると、ステッ
プS14に進み、ステップS14にて、ポリゴンの全て
の処理が終了したか否か判断され、ポリゴンの全ての処
理が終了していない場合には、ステップS2に戻り、前
述の動作を繰り返す。そして、ポリゴンの全ての処理が
終了したと判断されると、外形処理動作が終了する。
When all the sides of the polygon are completed, the process proceeds to step S14, and it is determined in step S14 whether all the processes of the polygon are completed. If all the processes of the polygon are not completed, Returning to step S2, the above-mentioned operation is repeated. Then, when it is determined that all the polygons have been processed, the outer shape processing operation ends.

【0164】続いて、ポリゴン内部処理装置30につい
て説明する。まずポリゴンエッジメモリ6からの読み出
しについて図21に従い説明する。
Next, the internal polygon processing device 30 will be described. First, reading from the polygon edge memory 6 will be described with reference to FIG.

【0165】ポリゴン内部処理装置30はまず、Yアド
レスを初期化し(ステップS21)、スキャンラインの
Yアドレス毎のポリゴン数を読み出し、(ステップS2
2)、ステップS23に進む。
First, the internal polygon processing apparatus 30 initializes the Y address (step S21), reads the number of polygons for each Y address of the scan line, and (step S2).
2), go to step S23.

【0166】ステップS23では、Yアドレス毎に対向
する2辺間の左辺間のポリゴンの外形を示す。2点のX
の左辺(XL)とZ値のアドレス(ZL)をポリゴンエ
ッジメモリ6から読み出す。
In step S23, the outline of the polygon between the left sides of the two sides facing each other for each Y address is shown. 2 X
The left side (XL) and the Z value address (ZL) are read from the polygon edge memory 6.

【0167】そして、パラメータ演算装置31にてパラ
メータ演算を行う(ステップS25)。減算器にポリゴ
ンエッジメモリ6からのXR,XLのデータが与えら
れ、両者間の距離DXが算出される。このDXは微差分
演算回路に供給される。
Then, the parameter calculation device 31 performs parameter calculation (step S25). The subtractor is supplied with the XR and XL data from the polygon edge memory 6, and the distance DX between them is calculated. This DX is supplied to the fine difference calculation circuit.

【0168】微差分演算回路内の減算器にはポリゴンエ
ッジメモリ6から及びZのアドレスの左辺(ZL)、右
辺(ZR)のデータがそれぞれ与えられ、この減算器か
らの減算結果ZL−ZRが除算器へ供給される。
The polygon edge memory 6 and the left side (ZL) and right side (ZR) data of the Z address are given to the subtractor in the fine difference calculation circuit, and the subtraction result ZL-ZR from this subtractor is given. Supplied to the divider.

【0169】この除算器にて、(ZR−ZL)/DXの
除算が行われ(ステップS26)、この値(DDZ)が
隠面処理装置34へ与えられる(ステップS27)。ス
テップS28でスキャンライン上のポリゴン全てに処理
を行ったか否か判断され、処理が終了していない場合に
は、ステップS23へ戻り前述の動作を繰り返す。
This divider performs division of (ZR-ZL) / DX (step S26), and this value (DDZ) is given to the hidden surface processing device 34 (step S27). In step S28, it is determined whether or not all polygons on the scan line have been processed. If the processing has not been completed, the process returns to step S23 to repeat the above operation.

【0170】更に、1つのスキャンライン、即ち、Yア
ドレスのポリゴン数が終了すると、ステップS29に進
み、ステップS29にてYアドレスをインクリメント
し、全てのYアドレスに対応する処理が終了するまで、
即ち、Yアドレスが垂直解像度より大きくなるまで前述
の動作を繰り返し(ステップS30)、全てのアドレス
に対応する処理が終了した時点で、パラメータ演算動作
が終了する。
Further, when one scan line, that is, the number of polygons at the Y address is completed, the process proceeds to step S29, the Y address is incremented at step S29, and the processes corresponding to all the Y addresses are completed.
That is, the above-described operation is repeated until the Y address becomes larger than the vertical resolution (step S30), and the parameter calculation operation ends when the processing corresponding to all the addresses ends.

【0171】次に、水平ドット隠面処理装置34−nの
動作につき、図23の動作フローに従い説明する。ま
ず、そのドットがポリゴンの範囲内に存在するか否か判
断される。即ち、ポリゴンエッジメモリメモリコントロ
ーラ31aより、Yアドレス(スキャンライン毎)のス
キャンラインアドレスが与えられ、このXLとそのドッ
トが対応するXアドレスLを比較すると共に、DXYの
値が0であるか否か判断する(ステップS71)。そし
てXアドレスよりXLが大きく且つDXYが0でない場
合には、そのドットがポリゴンの範囲内に存在するので
ステップS72に進み、そうでない場合には、隠面処理
動作を繰り返す。
Next, the operation of the horizontal dot hidden surface processing device 34-n will be described with reference to the operation flow of FIG. First, it is determined whether or not the dot exists within the polygon. That is, the scan line address of the Y address (for each scan line) is given from the polygon edge memory memory controller 31a, this XL is compared with the X address L corresponding to the dot, and whether the value of DXY is 0 or not is determined. It is determined (step S71). If XL is larger than the X address and DXY is not 0, the dot exists within the polygon range, so the process proceeds to step S72. If not, the hidden surface processing operation is repeated.

【0172】ステップS72では、奥行きレジスタ34
1に格納されたZ値(ZA)と、今読み込んだZ値とを
比較し、奥行きレジスタ341のZ値の方が大きい、す
なわち、今読み込んだドットの方が手前にある場合には
ステップS73に進み、Z値が小さい場合にはステップ
S74に進む。ステップS73ではポリゴンパラメータ
アドレスレジスタ342にポリゴンパラメータアドレス
を格納し、ステップS74に進む。ステップS74で
は、DXY=DXY−1の演算を行い、ステップS75
へ進み、ステップS75で次のZ値を求める演算である
Z値の補間、即ち、Z=DDZ+Zの演算を行った後、
隠面処理動作を終了する。
In step S72, the depth register 34
The Z value (ZA) stored in 1 is compared with the Z value that has just been read, and if the Z value of the depth register 341 is larger, that is, if the dot that has just been read is on the front side, step S73. If the Z value is small, the process proceeds to step S74. In step S73, the polygon parameter address is stored in the polygon parameter address register 342, and the flow advances to step S74. In step S74, the operation of DXY = DXY-1 is performed, and step S75
After proceeding to step S75, the Z value is interpolated in step S75, that is, Z = DDZ + Z is calculated.
The hidden surface processing operation ends.

【0173】続いて、ポリゴン内部処理装置30におけ
るポリゴンパラメータメモリ40からのデータ読み出し
動作を中心として、図22の動作フロー図に従い説明す
る。まず、Yアドレス及びXアドレスを初期化した後
(ステップS41,S42)、隠面処理装置34よりX
アドレスのポリゴンパラメータアドレスを読み出す(ス
テップS43)。
Next, the data read operation from the polygon parameter memory 40 in the polygon internal processing device 30 will be mainly described with reference to the operation flow chart of FIG. First, after initializing the Y address and the X address (steps S41 and S42), the hidden surface processing device 34 performs X
The polygon parameter address of the address is read (step S43).

【0174】続いて、ステップS44にて、そのXアド
レスにポリゴンが存在するか否か判断され、ポリゴンが
存在しない場合には、ステップS50へ進み、ポリゴン
が存在する場合には、ステップS45に進む。ステップ
45でパラメータ演算装置にてパラメータを算出し、ス
テップS46に進む。ステップS46では隠面処理装置
34より与えられたXアドレスに対応するポリゴンパラ
メータアドレスに従ってポリゴンパラメータメモリ40
よりポリゴンパラメータを読み出し、ステップS47へ
進む。
Subsequently, in step S44, it is determined whether or not a polygon exists at the X address. If there is no polygon, the process proceeds to step S50. If there is a polygon, the process proceeds to step S45. . In step 45, parameters are calculated by the parameter calculation device, and the process proceeds to step S46. In step S46, the polygon parameter memory 40 is set in accordance with the polygon parameter address corresponding to the X address given by the hidden surface processing device 34.
Then, the polygon parameters are read out, and the process proceeds to step S47.

【0175】ステップS47において、水平補間演算装
置33にてポリゴンパラメータメモリ40より読み出さ
れたパラメータに従って、マッピングパターンメモリ7
のアドレス(MX,MY)を算出し、ステップS48に
進む。
In step S47, the mapping pattern memory 7 is read according to the parameters read from the polygon parameter memory 40 by the horizontal interpolation computing device 33.
Address (MX, MY) is calculated, and the process proceeds to step S48.

【0176】ステップS48において、算出されたアド
レスに従ってマッピングパターンメモリ7をアクセス
し、マッピングパターンメモリ7からR,G,B又はL
UT値等の色情報を読み出し、ステップS49に進む。
In step S48, the mapping pattern memory 7 is accessed according to the calculated address, and R, G, B or L is read from the mapping pattern memory 7.
Color information such as the UT value is read, and the process proceeds to step S49.

【0177】ステップS49において、色情報をフレー
ムメモリ8に書き込み、ステップS50に進む。ステッ
プS50にて、Xアドレスを一つインクリメントし、ス
テップS51へ進む。
In step S49, the color information is written in the frame memory 8, and the process proceeds to step S50. In step S50, the X address is incremented by 1, and the process proceeds to step S51.

【0178】ステップS51において、Xアドレスと水
平解像度が比較され、Xアドレスが水平解像度より小さ
い時には、ステップS43に戻り前述の動作を繰り返
す。Xアドレスが水平解像度より大きくなるとステップ
S52に進み、ステップS52にて、隠面処理装置34
を初期化し、ステップS53に進む。
In step S51, the X address is compared with the horizontal resolution. If the X address is smaller than the horizontal resolution, the process returns to step S43 and the above-described operation is repeated. When the X address becomes larger than the horizontal resolution, the process proceeds to step S52, and in step S52, the hidden surface processing device 34
Is initialized and the process proceeds to step S53.

【0179】ステップS53にて、Yアドレスを一つイ
ンクリメントし、ステップS54に進み、ステップS5
4にてYアドレスと垂直解像度が比較される。Yアドレ
スが垂直解像度より小さい場合には、ステップS42に
戻り、前述の動作を繰り返し、Yアドレスが垂直解像度
より大きくなると、ポリゴン内部処理動作が終了する。
At step S53, the Y address is incremented by one, and the process proceeds to step S54 and step S5.
At 4, the Y address and vertical resolution are compared. If the Y address is smaller than the vertical resolution, the process returns to step S42, and the above-described operation is repeated. When the Y address becomes larger than the vertical resolution, the polygon internal processing operation ends.

【0180】次に、内挿マッピング演算装置33bの動
作につき、図24のフローチャートに従い説明する。
Next, the operation of the interpolation mapping arithmetic unit 33b will be described with reference to the flowchart of FIG.

【0181】幾何変換装置2より、法線ベクトル方向に
従いマッピング方向がX−Z,Y−Z,X−Yに対応す
るフラグをポリゴンパラメータメモリ40は与えられて
いる。この実施例では、フラグが“0”の時には、マッ
ピング方向がX−Z方向、フラグが“1”の時には、マ
ッピング方向がY−Z方向、フラグが“2”の時には、
マッピング方向がX−Y方向である。
From the geometrical transformation device 2, the polygon parameter memory 40 is provided with flags corresponding to the mapping directions XZ, YZ, and XY in accordance with the normal vector direction. In this embodiment, when the flag is "0", the mapping direction is the XZ direction, when the flag is "1", the mapping direction is the YZ direction, and when the flag is "2",
The mapping direction is the XY direction.

【0182】まず、ステップS80でポリゴンパラメー
タメモリ40から読み出されたフラグ(FL)を判断
し、FL=0の時には、ステップS82に進み、マッピ
ング方向がX−Zの時の内挿マッピング演算が行われ
る。FL=0でない場合には、ステップS81に進み、
FL=1であるか否か判断され、FL=1の時には、ス
テップS85に進み、マッピング方向がY−Zの時の内
挿マッピング演算が行われる。また、ステップS81に
て、FL=1でないと判断されると、ステップS87へ
進み、マッピング方向がX−Yの時の内挿マッピング演
算が行われる。
First, in step S80, the flag (FL) read from the polygon parameter memory 40 is determined. When FL = 0, the process proceeds to step S82, and the interpolation mapping operation is performed when the mapping direction is XZ. Done. If FL = 0 is not satisfied, the process proceeds to step S81,
It is determined whether or not FL = 1. When FL = 1, the process proceeds to step S85, and interpolation mapping calculation is performed when the mapping direction is YZ. If it is determined in step S81 that FL = 1 is not satisfied, the process proceeds to step S87, and interpolation mapping calculation is performed when the mapping direction is XY.

【0183】ステップS82では、 aX=EX−EX1, aZ=EZ−EZ1 bX=EX−EX2, bZ=EZ−EZ2 cX=EX−EX3, cZ=EZ−EZ3 の演算を行い、ステップS83へ進む。In step S82, aX = EX-EX1, aZ = EZ-EZ1 bX = EX-EX2, bZ = EZ-EZ2 cX = EX-EX3, cZ = EZ-EZ3 are calculated, and the process proceeds to step S83.

【0184】ステップS83では、 W1K=bZ×cX, W2K=bX×cZ W1L=cZ×aX, W2L=cX×aZ W1M=aZ×bX, W2M=aX×bZ の演算を行い、ステップS84へ進む。In step S83, W1K = bZ × cX, W2K = bX × cZ W1L = cZ × aX, W2L = cX × aZ W1M = aZ × bX, W2M = aX × bZ are calculated, and the process proceeds to step S84.

【0185】マッピング方向がY−Zの時には、ステッ
プS85にて、Y−Zの内挿マッピング演算が行われ
る。
When the mapping direction is YZ, the YZ interpolation mapping operation is performed in step S85.

【0186】ステップS85では、 aY=EY−EY1, aZ=EZ−EZ1 bY=EY−EY2, bZ=EZ−EZ2 cY=EY−EY3, cZ=EZ−EZ3 の演算を行い、ステップS86へ進む。In step S85, aY = EY-EY1, aZ = EZ-EZ1 bY = EY-EY2, bZ = EZ-EZ2 cY = EY-EY3, cZ = EZ-EZ3 are calculated, and the process proceeds to step S86.

【0187】ステップS86では、 W1K=bY×cX, W2K=bX×cY W1L=cY×aX, W2L=cX×aY W1M=aY×bX, W2M=aX×bY の演算を行い、ステップS84へ進む。In step S86, W1K = bY × cX, W2K = bX × cY W1L = cY × aX, W2L = cX × aY W1M = aY × bX, W2M = aX × bY are calculated, and the flow advances to step S84.

【0188】マッピング方向がX−Yの時には、ステッ
プS87にて、X−Yの内挿マッピング演算が行われ
る。
When the mapping direction is XY, in step S87, XY interpolation mapping calculation is performed.

【0189】ステップS87では、 aX=EX−EX1, aY=EY−EY1 aY=EY−EY2, bX=EX−EX2 cY=EX−EX3, cY=EY−EY3 の演算を行い、ステップS88へ進む。At step S87, aX = EX-EX1, aY = EY-EY1 aY = EY-EY2, bX = EX-EX2 cY = EX-EX3, cY = EY-EY3 are calculated, and the routine proceeds to step S88.

【0190】ステップS88では、 W1K=bX×cY, W2K=bY×cX W1L=cX×aY, W2L=cY×aX W1M=aX×bY, W2M=aY×bX の演算を行い、ステップS84へ進む。In step S88, W1K = bX × cY, W2K = bY × cX W1L = cX × aY, W2L = cY × aX W1M = aX × bY, W2M = aY × bX are calculated, and the flow advances to step S84.

【0191】ステップS84では、重み係数K,L,M
を算出するため、 K=W1K−W2K,L=W1L−W2L,M=W1M
−W2M の演算を行い、ステップS89へ進む。
In step S84, the weighting factors K, L, M
To calculate K = W1K-W2K, L = W1L-W2L, M = W1M
-W2M is calculated, and the process proceeds to step S89.

【0192】ステップS89では、X方向のマッピング
に関する重み係数を算出するため、 WK=K×MX1,WL=L×MX2,WM=M×MX
3 の演算を行い、ステップS90に進む。
In step S89, in order to calculate the weighting coefficient for the mapping in the X direction, WK = K × MX1, WL = L × MX2, WM = M × MX
3 is calculated and the process proceeds to step S90.

【0193】ステップS90では、重み係数を考慮した
X方向のマッピングアドレスを求めるため、WX=(W
K+WL+WM)×1/abの演算を行い、ステップS
91へ進む。
In step S90, the WX = (WX = (W
K + WL + WM) × 1 / ab is calculated, and step S
Proceed to 91.

【0194】ステップS91では、Y方向のマッピング
に関する重み係数を算出するため、 WK=K×MY1,WL=L×MY2,WM=M×MY
3 の演算を行い、ステップS92に進む。
In step S91, the weighting coefficient for the mapping in the Y direction is calculated. Therefore, WK = K × MY1, WL = L × MY2, WM = M × MY
3 is calculated and the process proceeds to step S92.

【0195】ステップS92では、重み係数を考慮した
Y方向のマッピングアドレスを求めるためWY=(WK
+WL+WM)×1/abの演算を行って、この動作を
終了する。
In step S92, WY = (WK in order to obtain the mapping address in the Y direction in consideration of the weight coefficient.
+ WL + WM) × 1 / ab is calculated, and this operation ends.

【0196】[0196]

【発明の効果】以上説明したように、この発明によれ
ば、視野座標上の3次元ポリゴンの法線ベクトルの方向
から、マッピングの投影方向がX−Z、またはY−Z、
或いはX−Yのいずれかであるかを判断する。その中か
ら1つを選択し、2次元要素のみから2次元のマッピン
グパターン座標を求める内挿マッピング処理を行う。こ
の結果、ハードウェア量を大きく必要とする平方根の演
算をはぶくことにより、演算処理が大幅に省略されロー
コストに簡易なパーススペクティブテクチャ・マッピン
グをリアルタイムに処理することができる。
As described above, according to the present invention, the projection direction of mapping is XZ or YZ from the direction of the normal vector of the three-dimensional polygon on the visual field coordinates.
Alternatively, it is determined whether it is XY. One of them is selected, and interpolation mapping processing for obtaining the two-dimensional mapping pattern coordinates from only the two-dimensional element is performed. As a result, by performing a square root calculation that requires a large amount of hardware, the calculation process can be largely omitted, and simple perspective texture mapping can be processed in real time at low cost.

【0197】また、この発明によれば、各ポリゴンの奥
行き状態を示す奥行き情報を備え、その奥行き情報をポ
リゴンの外形に対応して変化させて補間して算出し、そ
して、Zバッファ法を使用した隠面処理により、比較し
た画素位置における一番手前に位置するポリゴンを内挿
マッピング演算によりマッピングパターンアドレスを算
出する。この算出したマッピングパターンメモリアドレ
スに従いマッピングパターンメモリをアクセスすること
により、マッピングパターンメモリに格納されたデータ
に基づき、各画素のR,G,B又は輝度(LUT)値を
順次読み出すことで、高速でマッピングを施した画像を
表示装置に表示することができる。
Further, according to the present invention, the depth information indicating the depth state of each polygon is provided, the depth information is changed in accordance with the outer shape of the polygon, the interpolation is performed, and the Z buffer method is used. By the hidden surface processing described above, the mapping pattern address of the polygon located at the forefront at the compared pixel position is calculated by interpolation mapping calculation. By accessing the mapping pattern memory in accordance with the calculated mapping pattern memory address, the R, G, B or luminance (LUT) values of each pixel are sequentially read out based on the data stored in the mapping pattern memory, thereby achieving high speed. The mapped image can be displayed on the display device.

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

【図1】この発明の立体画像表示装置の構成を示すブロ
ック図である。
FIG. 1 is a block diagram showing a configuration of a stereoscopic image display device of the present invention.

【図2】この発明に用いられるポリゴン外形処理装置の
構成を示すブロック図である。
FIG. 2 is a block diagram showing a configuration of a polygon outline shape processing device used in the present invention.

【図3】上記ポリゴン外形処理装置におけるXパラメー
タ演算装置の構成を示すブロック図である。
FIG. 3 is a block diagram showing a configuration of an X parameter calculation device in the polygon outer shape processing device.

【図4】上記ポリゴン外形処理装置におけるZパラメー
タ演算装置の構成を示すブロック図である。
FIG. 4 is a block diagram showing a configuration of a Z parameter calculation device in the polygon outer shape processing device.

【図5】上記ポリゴン外形処理装置におけるX垂直補間
装置の構成を示すブロック図である。
FIG. 5 is a block diagram showing a configuration of an X vertical interpolation device in the polygon outline shape processing device.

【図6】上記ポリゴン外形処理装置におけるZ垂直補間
装置の構成を示すブロック図である。
FIG. 6 is a block diagram showing a configuration of a Z vertical interpolation device in the polygon outline shape processing device.

【図7】この発明に用いられるポリゴン内部処理装置の
パラメータ演算装置の構成を示すブロック図である。
FIG. 7 is a block diagram showing a configuration of a parameter calculation device of the polygon internal processing device used in the present invention.

【図8】上記パラメータ演算装置の隠面処理パラメータ
演算装置の具体的構成を示すブロック図である。
FIG. 8 is a block diagram showing a specific configuration of a hidden surface processing parameter calculation device of the parameter calculation device.

【図9】上記パラメータ演算装置の隠面処理装置の構成
を示すブロック図である。
FIG. 9 is a block diagram showing a configuration of a hidden surface processing device of the parameter calculation device.

【図10】上記隠面処理装置を構成するスキャンライン
隠面処理装置の構成を示すブロック図である。
FIG. 10 is a block diagram showing a configuration of a scan line hidden surface processing apparatus which constitutes the hidden surface processing apparatus.

【図11】上記スキャンライン隠面処理装置を構成する
水平ドット隠面処理装置の具体的構成例を示すブロック
図である。
FIG. 11 is a block diagram showing a specific configuration example of a horizontal dot hidden surface processing apparatus which constitutes the scan line hidden surface processing apparatus.

【図12】上記水平ドット隠面処理装置へのデータの転
送状態を示すタイミングチャートである。
FIG. 12 is a timing chart showing a data transfer state to the horizontal dot hidden surface processing apparatus.

【図13】上記スキャンライン隠面処理装置の処理タイ
ミングを示す模式図である。
FIG. 13 is a schematic diagram showing processing timing of the scan line hidden surface processing apparatus.

【図14】この発明に用いられる内部描画処理装置の水
平補間演算装置の構成例を示すブロック図である。
FIG. 14 is a block diagram showing a configuration example of a horizontal interpolation calculation device of an internal drawing processing device used in the present invention.

【図15】上記水平補間演算装置の内挿マッピング演算
装置の具体的実施例を示すブロック図である。
FIG. 15 is a block diagram showing a specific example of an interpolation mapping calculation device of the horizontal interpolation calculation device.

【図16】上記内挿マッピング演算装置の視野座標X,
Y,Z値生成装置の具体的実施例を示すブロック図であ
る。
FIG. 16 is a visual field coordinate X of the interpolation mapping calculation device,
It is a block diagram which shows the specific Example of a Y, Z value generator.

【図17】上記内挿マッピング演算装置の視野座標Z値
生成装置の具体的実施例を示すブロック図である。
FIG. 17 is a block diagram showing a specific example of a visual field coordinate Z value generation device of the interpolation mapping calculation device.

【図18】上記内挿マッピング演算装置の視野座標X,
Y値生成装置の具体的実施例を示すブロック図である。
FIG. 18 is a visual field coordinate X of the interpolation mapping calculation device,
It is a block diagram which shows the specific Example of a Y value production | generation apparatus.

【図19】上記内挿マッピング演算装置の具体的実施例
を示すブロック図である。
FIG. 19 is a block diagram showing a specific example of the interpolation mapping calculation device.

【図20】この発明のポリゴン外形処理装置の動作を示
すフローチャートである。
FIG. 20 is a flowchart showing the operation of the polygon outline shape processing device of the present invention.

【図21】この発明のポリゴン内部処理装置の動作を示
すフローチャートである。
FIG. 21 is a flowchart showing the operation of the polygon internal processing device of the present invention.

【図22】この発明のポリゴン内部処理装置の動作を示
すフローチャートである。
FIG. 22 is a flowchart showing the operation of the polygon internal processing device of the present invention.

【図23】この発明のポリゴン内部処理装置の隠面処理
動作を示すフローチャートである。
FIG. 23 is a flowchart showing the hidden surface processing operation of the polygon internal processing device of the present invention.

【図24】この発明のポリゴン内部処理装置の内挿マッ
ピング処理動作を示すフローチャートである。
FIG. 24 is a flowchart showing an interpolation mapping processing operation of the polygon internal processing device of the present invention.

【図25】この発明に用いられるスクリーンメモリを示
す模式図である。
FIG. 25 is a schematic diagram showing a screen memory used in the present invention.

【図26】この発明に用いられるポリゴンパラメータメ
モリを示す模式図である。
FIG. 26 is a schematic diagram showing a polygon parameter memory used in the present invention.

【図27】この発明に用いられるポリゴンエッジメモリ
を示す模式図である。
FIG. 27 is a schematic diagram showing a polygon edge memory used in the present invention.

【図28】ポリゴンの辺ベクトル方向の関係を示す図で
ある。
[Fig. 28] Fig. 28 is a diagram illustrating a relationship in a side vector direction of a polygon.

【図29】ポリゴンの方向ベクトルと辺との関係を示す
図である。
FIG. 29 is a diagram showing a relationship between a direction vector of a polygon and a side.

【図30】マッピングパターンメモリの一例を示す模式
図である。
FIG. 30 is a schematic diagram showing an example of a mapping pattern memory.

【図31】従来の内挿マッピング処理方法を説明する説
明図である。
FIG. 31 is an explanatory diagram illustrating a conventional interpolation mapping processing method.

【図32】従来の内挿マッピング処理方法を説明する説
明図である。
FIG. 32 is an explanatory diagram illustrating a conventional interpolation mapping processing method.

【図33】従来の内挿マッピング処理方法の演算を示す
フローチャートである。
FIG. 33 is a flowchart showing the operation of a conventional interpolation mapping processing method.

【符号の説明】[Explanation of symbols]

1 ワールドメモリ 2 幾何変換装置 5 スクリーンメモリ 7 マッピングパターンメモリ 8 フレームメモリ 9 CRT 20 ポリゴン外形処理装置 30 ポリゴン内部処理装置 40 ポリゴンパラメータメモリ 1 world memory 2 geometric conversion device 5 screen memory 7 mapping pattern memory 8 frame memory 9 CRT 20 polygon outer shape processing device 30 polygon internal processing device 40 polygon parameter memory

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 三角形状のポリゴンを構成する端点情報
とテクスチャ画像を格納するマッピングパターンメモリ
の端点情報とポリゴンの奥行き情報を格納する記憶手段
と、上記記憶手段からの各端点情報を座標変換し、スク
リーン端点情報に変換すると共に、ポリゴン視野座標上
の法線ベクトルの方向によりマッピングポリゴンの投影
する方向を選択する変換手段と、マッピングポリゴンの
投影方向に基づきポリゴンの2辺のベクトルの外積値の
逆数を算出する手段と、上記ポリゴンの端点の視野座標
値、マッピングパターンメモリの端点情報とマッピング
ポリゴンの投影する方向と2辺のベクトルの外積値の逆
数を格納するポリゴンパラメータ記憶手段と、上記変換
手段からのスクリーン端点情報とポリゴンの奥行き情報
と上記ポリゴンパラメータ記憶手段のアドレス値を格納
するスクリーン記憶手段と、上記変換手段からのスクリ
ーン端点情報に基づいてポリゴン外形のアドレス情報及
びポリゴンの奥行き情報並びにポリゴンパラメータ記憶
手段のアドレス値をスキャンラインごとにポリゴンの外
形部分の情報にそれぞれ変換する外形処理手段と、上記
外形処理手段にて算出された対向する2辺間の情報を演
算し、Xアドレスの変位と奥行き情報の変位を算出する
手段と、スキャンラインの各画素に対応する画素位置が
ポリゴンの範囲内に存在するか否か判別する手段と、一
番手前に存在する画素の奥行き情報とその画素位置のポ
リゴンの奥行き情報を比較すると共に比較する対象の奥
行き情報を常に一番手前に存在するポリゴンの奥行き情
報に書き換える手段と、ポリゴンの奥行き情報に上記奥
行き情報の変位を加算し隣接する画素位置の奥行き情報
を算出する手段と、比較した画素位置における一番手前
に存在するポリゴンの対向する2辺間の少なくとも一方
のXアドレスとポリゴンパラメータ記憶手段のアドレス
値を算出する手段と、算出されたポリゴンパラメータ記
憶手段のアドレス値によりアクセスして読み出されたポ
リゴンパラメータ記憶手段の情報に基づいてポリゴンの
3頂点の重み係数を算出し、マッピングパターンメモリ
のアドレス値を算出する手段と、上記算出されたマッピ
ングパターンアドレスに基づき上記マッピングパターン
メモリをアクセスし、画像データを表示手段に転送する
手段と、を備えてなる立体画像処理装置。
1. A storage means for storing the end point information of a triangular pattern, the end point information of a mapping pattern memory for storing a texture image, and the depth information of the polygon, and coordinate conversion of each end point information from the storage means. , Conversion means for converting the screen end point information and selecting the projection direction of the mapping polygon according to the direction of the normal vector on the polygon visual field coordinates, and the cross product value of the vectors of the two sides of the polygon based on the projection direction of the mapping polygon. A means for calculating the reciprocal, a polygonal parameter storage means for storing the reciprocal of the visual field coordinate value of the end point of the polygon, the end point information of the mapping pattern memory, the projection direction of the mapping polygon and the cross product of the vectors of the two sides, and the conversion Screen end point information from the means, polygon depth information and the above polygon parameters. Screen storage means for storing the address value of the meter storage means, and address information of the polygon outer shape and polygon depth information based on the screen end point information from the conversion means, and the address value of the polygon parameter storage means for each scan line A contour line processing unit for converting into contour information, a unit for computing the information between the two opposite sides calculated by the contour processing unit, and calculating the displacement of the X address and the displacement of the depth information, and the scan line. Means for determining whether or not the pixel position corresponding to each pixel in the polygon exists within the range of the polygon, and the depth information of the foremost pixel and the depth information of the polygon at the pixel position are compared and compared. And the depth of the polygon that always rewrites the depth information of the Means for calculating the depth information of the adjacent pixel position by adding the displacement of the depth information to the pixel information, and at least one X address between two opposing sides of the polygon existing at the front at the compared pixel position and the polygon. A means for calculating an address value of the parameter storage means and a weighting coefficient of three vertices of the polygon based on the information of the polygon parameter storage means read out by accessing the calculated address value of the polygon parameter storage means, A stereoscopic image processing apparatus comprising: means for calculating an address value of a mapping pattern memory; and means for accessing the mapping pattern memory based on the calculated mapping pattern address and transferring image data to a display means.
【請求項2】 ポリゴン視野座標上の法線ベクトルのス
カラー量の大きさによりマッピングポリゴンの投影する
方向を選択することを特徴とする請求項1に記載の立体
画像処理装置。
2. The stereoscopic image processing apparatus according to claim 1, wherein the projection direction of the mapping polygon is selected according to the magnitude of the scalar quantity of the normal vector on the polygon visual field coordinates.
JP6221807A 1994-09-16 1994-09-16 Stereoscopic image processing device Pending JPH0887606A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6221807A JPH0887606A (en) 1994-09-16 1994-09-16 Stereoscopic image processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6221807A JPH0887606A (en) 1994-09-16 1994-09-16 Stereoscopic image processing device

Publications (1)

Publication Number Publication Date
JPH0887606A true JPH0887606A (en) 1996-04-02

Family

ID=16772511

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6221807A Pending JPH0887606A (en) 1994-09-16 1994-09-16 Stereoscopic image processing device

Country Status (1)

Country Link
JP (1) JPH0887606A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100658669B1 (en) * 2002-04-10 2006-12-15 삼성에스디아이 주식회사 Stereoscopic image display system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100658669B1 (en) * 2002-04-10 2006-12-15 삼성에스디아이 주식회사 Stereoscopic image display system

Similar Documents

Publication Publication Date Title
JPH0916806A (en) Stereoscopic image processing device
US5877769A (en) Image processing apparatus and method
JP3759971B2 (en) How to shade a 3D image
JP4122573B2 (en) Image processing method and recording medium recording image processing program
JP3332165B2 (en) Image processing device
KR20050030569A (en) Image processing apparatus and method thereof
WO2017114729A1 (en) System and methodologies for super-sampling to enhance anti-aliasing in high resolution meshes
EP1026636B1 (en) Image processing
JPH03500697A (en) Quadratic interpolation for shadow image generation
JP3089792B2 (en) Hidden surface discrimination method for image data
JP2957511B2 (en) Graphic processing unit
US5892516A (en) Perspective texture mapping circuit having pixel color interpolation mode and method thereof
JPH07105404A (en) Stereoscopic image processing apparatus and processing method thereof
JP3344675B2 (en) Stereoscopic image processing device
JP2001283254A (en) Three-dimensional graphics drawing apparatus and method
KR100313846B1 (en) Method and Apparatus for Calculating Detail (LOD) in Bilinear Mip Mapping
JPH0223473A (en) Variable density adding method and device for three-dimensional form model
JPH11185052A (en) Apparatus and method for calculating texture mapping coordinates of three-dimensional computer graphics
JP3278828B2 (en) Translucent stereoscopic image processing device
JP3587105B2 (en) Graphic data processing device
US7454320B1 (en) System and method for calculating partial differential equations in a hardware graphics pipeline
JP3722593B2 (en) Stereoscopic image rendering processing device
JP3271825B2 (en) Stereoscopic image processing device
JP3311905B2 (en) Image processing device
JP4106719B2 (en) Image processing device