JP2976945B2 - Image drawing device - Google Patents

Image drawing device

Info

Publication number
JP2976945B2
JP2976945B2 JP9247073A JP24707397A JP2976945B2 JP 2976945 B2 JP2976945 B2 JP 2976945B2 JP 9247073 A JP9247073 A JP 9247073A JP 24707397 A JP24707397 A JP 24707397A JP 2976945 B2 JP2976945 B2 JP 2976945B2
Authority
JP
Japan
Prior art keywords
buffer
dimensional
circuit
data
frame buffer
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.)
Expired - Fee Related
Application number
JP9247073A
Other languages
Japanese (ja)
Other versions
JPH1186029A (en
Inventor
秀憲 田中
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
Nippon Electric 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP9247073A priority Critical patent/JP2976945B2/en
Priority to TW087112010A priority patent/TW407306B/en
Priority to TW087115049A priority patent/TW389857B/en
Priority to US09/150,252 priority patent/US6275241B1/en
Priority to KR1019980037476A priority patent/KR100281949B1/en
Priority to EP98307388A priority patent/EP0902413A3/en
Publication of JPH1186029A publication Critical patent/JPH1186029A/en
Application granted granted Critical
Publication of JP2976945B2 publication Critical patent/JP2976945B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/40Hidden part removal
    • G06T15/405Hidden part removal using Z-buffer
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/393Arrangements for updating the contents of the bit-mapped memory
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/12Frame memory handling
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、表示装置の表示画
面上に三次元描画を行うことができる画像描画装置に関
する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an image drawing device capable of performing three-dimensional drawing on a display screen of a display device.

【0002】[0002]

【従来の技術】図12は、従来の画像描画装置の構成例
を示すブロック図である。この画像描画装置は、画像表
示を行うCRT10と、CRT10の表示画面に対応す
る表示用データを格納するフレームバッファ12と、フ
レームバッファ12に対して所望の矩形画像の描画等を
行う二次元描画回路14と、フレームバッファ12に対
して三次元描画を行うための奥行きデータ(Z値)を格
納するZバッファ16と、Zバッファ16に格納された
奥行きデータに基づいてフレームバッファ12に三次元
描画を行う三次元直線描画回路18と、Zバッファ16
に対して所望の矩形領域のデータ設定等を行うZバッフ
ァ設定回路20と、本画像描画装置の全体的な制御を行
うプロセッサ22と、プロセッサ22の制御プログラム
やワークエリアを提供するメインメモリ24とを有す
る。以上のような構成において、まず、プロセッサ22
は、メインメモリ24上に二次元描画データを作成す
る。この二次元描画データは、例えば線分(直線)の集
まりとして構成され、これをフレームバッファ12に書
き込むことにより、CRT10に画像が表示される。
2. Description of the Related Art FIG. 12 is a block diagram showing a configuration example of a conventional image drawing apparatus. The image drawing apparatus includes a CRT 10 for displaying an image, a frame buffer 12 for storing display data corresponding to a display screen of the CRT 10, and a two-dimensional drawing circuit for drawing a desired rectangular image on the frame buffer 12. 14, a Z buffer 16 for storing depth data (Z value) for performing three-dimensional rendering on the frame buffer 12, and a three-dimensional rendering on the frame buffer 12 based on the depth data stored on the Z buffer 16. A three-dimensional line drawing circuit 18 and a Z buffer 16
A Z-buffer setting circuit 20 for setting data of a desired rectangular area, a processor 22 for performing overall control of the image drawing apparatus, and a main memory 24 for providing a control program and a work area for the processor 22. Having. In the above configuration, first, the processor 22
Creates two-dimensional drawing data on the main memory 24. The two-dimensional drawing data is formed, for example, as a set of line segments (straight lines). By writing this into the frame buffer 12, an image is displayed on the CRT 10.

【0003】また、二次元描画回路14は、特定の二次
元画像をフレームバッファ12に高速に書き込む専用の
回路であり、具体的には二次元直線を描画する専用回
路、二次元矩形領域を塗りつぶす専用回路、次元矩形領
域を他の位置に転送する専用回路等が存在する。この二
次元描画回路14では、上述のような二次元画像の形状
や位置を特定するためのアドレス等を設定するととも
に、描画する色データ等を設定することにより、描画す
る二次元画像の属性に応じた規則的な座標演算動作によ
って高速の描画を実現するものである。
The two-dimensional drawing circuit 14 is a circuit dedicated to writing a specific two-dimensional image into the frame buffer 12 at high speed, and specifically, a dedicated circuit for drawing a two-dimensional straight line, and a two-dimensional rectangular area is painted. There are a dedicated circuit, a dedicated circuit for transferring a dimensional rectangular area to another position, and the like. The two-dimensional drawing circuit 14 sets the address and the like for specifying the shape and the position of the two-dimensional image as described above, and sets the color data and the like to be drawn so that the attribute of the two-dimensional image to be drawn is High-speed drawing is realized by a corresponding regular coordinate calculation operation.

【0004】次に、三次元描画には、Zバッファ16お
よび三次元直線描画回路18とを用いて行う。Zバッフ
ァ16は、フレームバッファ12に描画してある各画素
(XY座標)に対し、各画素がもっている奥行きデータ
(Z値)を格納したものである。三次元直線描画回路1
8は、プロセッサ22より入力された三次元直線のXY
座標における各点の奥行きデータ(ソースZ値)と、Z
バッファ16に予め格納されている奥行きデータ(ディ
スティネーションZ値)とを比較し、奥行きの小さい方
のデータを選択してフレームバッファ12上のデータを
書き換える処理を行うものである。これにより、三次元
物体を二次元画像として描く場合に、手前の物体によっ
て後ろの物体が隠されるような、自然な画像を描くこと
ができる。
Next, three-dimensional drawing is performed using the Z buffer 16 and the three-dimensional straight line drawing circuit 18. The Z buffer 16 stores depth data (Z value) of each pixel (XY coordinate) drawn in the frame buffer 12. 3D straight line drawing circuit 1
8 is a three-dimensional straight line XY input from the processor 22.
Depth data (source Z value) of each point in coordinates, and Z
This processing compares the depth data (destination Z value) stored in the buffer 16 in advance, selects the data having the smaller depth, and rewrites the data in the frame buffer 12. Thus, when a three-dimensional object is drawn as a two-dimensional image, a natural image can be drawn in which a back object is hidden by a front object.

【0005】図13は、三次元直線描画回路18の構成
を示すブロック図である。この三次元直線描画回路18
は、プロセッサ22より入力されたソースZ値を格納す
るレジスタ102と、このレジスタ102に格納された
ソースZ値とZバッファ16に格納されているディステ
ィネーションZ値とを比較する比較器104と、描画時
にAND、OR、XOR等の論理回路によってソース値
と元々フレームバッファ12上に存在しているデータと
の論理演算を行い、その結果を描画データに反映させる
ためのROP(Raster Operation Processor)回路10
6と、描画する直線の始点と終点の座標パラメータを与
えることにより、フレームバッファ12上に直線を描画
する直線演算回路108と、比較器104の演算結果に
基づいてZバッファ16を書き換える転送回路110
と、フレームバッファ12にアクセスするためのアドレ
スを生成、制御するフレームバッファアドレス演算部1
12と、Zバッファ16にアクセスするためのアドレス
を生成、制御するZバッファアドレス演算部114とを
有する。
FIG. 13 is a block diagram showing a configuration of the three-dimensional straight line drawing circuit 18. As shown in FIG. This three-dimensional straight line drawing circuit 18
A register 102 for storing a source Z value input from the processor 22, a comparator 104 for comparing the source Z value stored in the register 102 with a destination Z value stored in the Z buffer 16, A ROP (Raster Operation Processor) circuit for performing a logical operation on a source value and data originally present on the frame buffer 12 by a logical circuit such as AND, OR, XOR or the like at the time of drawing, and reflecting the result on the drawing data 10
6, a straight line operation circuit 108 for drawing a straight line on the frame buffer 12 by giving coordinate parameters of a start point and an end point of a straight line to be drawn, and a transfer circuit 110 for rewriting the Z buffer 16 based on the operation result of the comparator 104
And a frame buffer address operation unit 1 for generating and controlling an address for accessing the frame buffer 12
12 and a Z-buffer address operation unit 114 for generating and controlling an address for accessing the Z-buffer 16.

【0006】図14は、任意のベクトル(直線)を描画
する場合のZ値の演算処理を説明する説明図である。座
標(Xs,Ys)から座標(Xe,Ye)に直線をひく
とき、直線を構成する各画素に対して座標とZ値を算出
する。Z値の演算は、プロセッサ22により与えられ
る、始点座標(Xs,Ys)における値(Zs=初期
値)と各画素間の増分(Zi)に基づいて、直線を構成
する各画素毎に終点座標(Xe,Ye)まで行う。そし
て、このように演算したZ値と、その座標に元からある
画素のZ値とを比較器104によって比較し、新たに演
算したZ値が小なら、この演算結果をZバッファ16に
書き込み、またフレームバッファ12ヘの画素の書き込
みを許し、新しい描画による画素を書き込む。また、新
たに演算したZ値が大なら、Zバッファ16もフレーム
メモリ12もそのままにする(すなわち元からある画素
が残る)。なお、このような制御を三次元直線描画回路
18としてハードウェアで行う代わりに、ソフトウエア
によって実行するシステムもある。
FIG. 14 is an explanatory diagram for explaining the calculation process of the Z value when an arbitrary vector (straight line) is drawn. When a straight line is drawn from the coordinates (Xs, Ys) to the coordinates (Xe, Ye), the coordinates and the Z value are calculated for each pixel constituting the straight line. The calculation of the Z value is based on the value (Zs = initial value) at the start point coordinates (Xs, Ys) and the increment (Zi) between each pixel, which are provided by the processor 22. (Xe, Ye). Then, the Z value calculated in this manner is compared with the Z value of the pixel originally existing at the coordinates by the comparator 104. If the newly calculated Z value is small, the calculation result is written to the Z buffer 16, Also, writing of pixels to the frame buffer 12 is permitted, and pixels by new drawing are written. If the newly calculated Z value is large, both the Z buffer 16 and the frame memory 12 are left as they are (that is, the original pixel remains). Note that there is a system in which such control is performed by software instead of being performed by hardware as the three-dimensional straight line drawing circuit 18.

【0007】また、このような画像描画装置において、
Zバッファ16の値を設定する方法としては、以下のよ
うなものがる。 プロセッサ22によってZバッファ16を直接アクセ
スし、Z値を設定するアドレスをプロセッサ22で算出
することにより、Z値を1つ1つ設定していく方法。 上述のような三次元直線描画回路18を使用してZバ
ッファ16にZ値を設定して行く方法。 Zバッファ設定回路20を使つてZ値を設定する方
法。 このうち、プロセッサ22によって直接Z値を設定する
方法では、設定する領域の各点において、Z値を1つ1
つ設定していくものであるため、高速な処理が困難であ
るとともに、システム全体を制御するプロセッサ22の
負担も大きくなる。
In such an image drawing apparatus,
A method for setting the value of the Z buffer 16 is as follows. A method in which the Z buffer 16 is directly accessed by the processor 22 and an address for setting the Z value is calculated by the processor 22 so that the Z values are set one by one. A method of setting a Z value in the Z buffer 16 using the three-dimensional line drawing circuit 18 as described above. A method of setting a Z value using the Z buffer setting circuit 20. Among them, in the method of directly setting the Z value by the processor 22, the Z value is set one by one at each point of the set area.
Therefore, high-speed processing is difficult and the load on the processor 22 that controls the entire system increases.

【0008】また、三次元直線描画回路18を使用して
Zバッファ16にZ値を設定して行く方法では、設定す
る領域のスキャンラインを構成する各線分を、上述のよ
うな始点と終点を指定して、1本ずつ描画していくこと
により、所望の領域の設定を行うことができ、特に比較
的単純形状の図形については、上述したプロセッサ22
で直接設定する方法に比べて高速な処理を行える。しか
し、この方法は、多数の線分を指定して描画処理を行う
ものであり、また、各点のZ値を比較する処理が含まれ
るため、Zバッファ設定回路20を使う方法に比べれば
低速である。
In the method of setting the Z value in the Z buffer 16 by using the three-dimensional straight line drawing circuit 18, each line segment forming the scan line of the area to be set is set to the above-mentioned start point and end point. By designating and drawing one by one, a desired area can be set. Particularly, for a graphic having a relatively simple shape, the processor 22 described above is used.
The processing can be performed at a higher speed as compared with the method of directly setting by using However, this method performs a drawing process by specifying a large number of line segments, and includes a process of comparing the Z values of each point. Therefore, the method is slower than the method using the Z buffer setting circuit 20. It is.

【0009】次に、Zバッファ設定回路20を使つてZ
値を設定する方法は、三次元直線描画回路18よりもさ
らに高速なZ値の設定が可能である。すなわち、Zバッ
ファ設定回路20は、特定の二次元画像をZバッファ1
6に高速に書き込む専用の回路であり、Zバッファ16
内の二次元領域を指定するとともに、設定するZ値を指
定することにより、Z値を設定する二次元領域の属性に
応じた規則的な座標演算動作によって高速の設定を実現
するものである。また、このようなZバッファ設定回路
20によって、Zバッファ16内の特定領域を他の領域
に転送する動作を高速に行うこともできる。
Next, using the Z buffer setting circuit 20, Z
As a method of setting the value, it is possible to set the Z value even faster than in the three-dimensional straight line drawing circuit 18. That is, the Z buffer setting circuit 20 stores the specific two-dimensional image in the Z buffer 1
6 is a circuit dedicated to high-speed writing into the Z buffer 16
By designating the two-dimensional area within the area and specifying the Z value to be set, high-speed setting is realized by a regular coordinate calculation operation according to the attribute of the two-dimensional area for setting the Z value. Further, by such a Z buffer setting circuit 20, an operation of transferring a specific area in the Z buffer 16 to another area can be performed at a high speed.

【0010】[0010]

【発明が解決しようとする課題】しかしながら、上記従
来の画像描画装置において、Zバッファ16に対する高
速な設定や転送を行うためには、専用のZバッファ設定
回路20を設けなければならず、高価な構成となる問題
がある。ところで、上述した二次元描画回路14とZバ
ッファ設定回路20とは、特定領域の座標演算を行う部
分は類似する構成を有しているが、それぞれアクセスの
対象となるフレームバッファ12とZバッファ16の属
性に対応して構成されているため、互いに流用すること
が困難である。これは、フレームバッファ12とZバッ
ファ16とで1画素あたりのバイト数が異なっているこ
とに起因している。つまり、フレームバッファ12にお
ける1画素あたりのバイト数は、このフレームバッファ
12に格納される色データの階調度に応じて決定され、
例えば、各色成分に255の階調度をもたせる場合に
は、各色成分毎に1画素あたり1バイトのデータが必要
となり、4つの色成分では、1画素あたりのバイト数が
4バイト(32ビット)となる。一方、Zバッファ16
における1画素あたりのバイト数は、Z値データによる
奥行きの解像度によって決定され、1画素あたりのバイ
ト数を大きくすれば、それだけ奥行き方向に複雑な立体
画像を描画できることになる。例えば1画素あたり2バ
イトのZ値データが用いられる。そして、以上のような
フレームバッファ12に格納される色データの階調度
と、Zバッファ16に格納されるZ値データの解像度と
は、通常は互いに異なっているため、これに対応して各
バッファの構成も異なっている。
However, in the above-described conventional image drawing apparatus, a dedicated Z-buffer setting circuit 20 must be provided in order to perform high-speed setting and transfer to the Z-buffer 16, which is expensive. There is a configuration problem. The two-dimensional drawing circuit 14 and the Z-buffer setting circuit 20 described above have a similar configuration in a portion for performing a coordinate calculation of a specific area. However, the frame buffer 12 and the Z-buffer 16 to be accessed are respectively. , It is difficult to divert each other. This is due to the difference in the number of bytes per pixel between the frame buffer 12 and the Z buffer 16. That is, the number of bytes per pixel in the frame buffer 12 is determined according to the gradient of the color data stored in the frame buffer 12,
For example, when each color component has a gradient of 255, one byte of data is required for each pixel for each color component, and the number of bytes per pixel is 4 bytes (32 bits) for four color components. Become. On the other hand, the Z buffer 16
The number of bytes per pixel in is determined by the depth resolution based on the Z value data. If the number of bytes per pixel is increased, a complicated stereoscopic image can be drawn in the depth direction. For example, two-byte Z value data per pixel is used. The gradient of the color data stored in the frame buffer 12 and the resolution of the Z value data stored in the Z buffer 16 are usually different from each other. Is also different.

【0011】このため、図12に示す構成のように、各
バッファ12、16への処理を高速に行うためには、フ
レームバッファ12用の二次元描画回路14とZバッフ
ァ16用のZバッファ設定回路20とを、それぞれ個別
に設ける必要があり、コスト低減を図る上で障害とな
る。また、上述のようなZバッファ16を用いた装置で
は、一般的に、価格が高くても高速なシステム構成にす
ることが多く、メモリ構成もフレームバッファとZバッ
ファとを別メモリとし、プロセッサ22および三次元直
線描画回路18等とのバスインターフェースも、それぞ
れ別に設けていたため、この点からも二次元描画回路1
4とZバッファ設定回路20との兼用は困難であり、こ
の結果、コスト低減を図ることは困難であった。そこで
本発明の目的は、フレームバッファ用の二次元描画回路
をZバッファ用の設定回路に流用でき、Zバッファの高
速設定処理とコスト低減とを両立することができる画像
描画装置を提供することにある。
Therefore, as shown in FIG. 12, the two-dimensional drawing circuit 14 for the frame buffer 12 and the Z-buffer setting for the Z-buffer 16 must be set in order to process the buffers 12 and 16 at high speed. It is necessary to provide the circuit 20 and the circuit 20 individually, which is an obstacle to cost reduction. In addition, in an apparatus using the Z buffer 16 as described above, a high-speed system configuration is often used even if the price is high. The bus interface with the three-dimensional linear drawing circuit 18 and the like is also provided separately.
It is difficult to use the circuit 4 and the Z buffer setting circuit 20 at the same time. As a result, it is difficult to reduce the cost. SUMMARY OF THE INVENTION It is an object of the present invention to provide an image drawing apparatus in which a two-dimensional drawing circuit for a frame buffer can be used as a setting circuit for a Z buffer, and both high-speed setting processing of the Z buffer and cost reduction can be achieved. is there.

【0012】[0012]

【課題を解決するための手段】本発明は前記目的を達成
するため、表示装置の表示画面に対応する表示用データ
を格納するフレームバッファと、前記フレームバッファ
に特定の二次元画像を描画するための座標演算を行う二
次元描画回路と、前記フレームバッファに対して三次元
描画を行うための奥行きデータを格納するZバッファ
と、前記Zバッファに格納された奥行きデータに基づい
て前記フレームバッファに三次元描画を行う三次元直線
描画回路とを有する画像描画装置において、前記フレー
ムバッファおよびZバッファの各領域を同一物理メモリ
上に設定するとともに、各バッファへのアクセスを制御
するメモリ制御回路と、前記二次元描画回路の座標演算
における1画素あたりのビット数を前記フレームバッフ
ァの描画データに対応するビット数または前記Zバッフ
ァの奥行きデータに対応するビット数に変更するビット
数変更手段とを設け、前記二次元描画回路の座標演算に
おける1画素あたりのビット数を前記ビット数変更手段
で変更することにより、前記フレームバッファへの描画
と前記Zバッファへの奥行きデータの設定とを前記二次
元描画回路の座標演算によって選択的に行うようにした
ことを特徴とする。
According to the present invention, there is provided a frame buffer for storing display data corresponding to a display screen of a display device, and a specific two-dimensional image is drawn on the frame buffer. A two-dimensional drawing circuit that performs coordinate calculation of: a Z buffer that stores depth data for performing three-dimensional drawing with respect to the frame buffer; and a tertiary image that is stored in the frame buffer based on the depth data stored in the Z buffer. An image drawing apparatus having a three-dimensional line drawing circuit for performing original drawing, a memory control circuit for setting each area of the frame buffer and the Z buffer on the same physical memory, and controlling access to each buffer; The number of bits per pixel in the coordinate calculation of the two-dimensional drawing circuit is related to the drawing data of the frame buffer. Means for changing the number of bits to be performed or the number of bits corresponding to the depth data of the Z buffer, wherein the number of bits per pixel in the coordinate calculation of the two-dimensional drawing circuit is changed by the number of bits changing means. Thereby, the drawing in the frame buffer and the setting of the depth data in the Z buffer are selectively performed by the coordinate calculation of the two-dimensional drawing circuit.

【0013】本発明の画像描画装置では、メモリ制御回
路によって、フレームバッファおよびZバッファの各領
域を同一物理メモリ上に適宜設定するとともに、二次元
描画回路より2つのバッファ領域に選択的アクセスす
る。そして、二次元描画回路からフレームバッファへア
クセスする場合には、ビット数変更手段により二次元描
画回路の座標演算における1画素あたりのビット数をフ
レームバッファの描画データに対応するビット数に変更
してアクセスする。また、二次元描画回路からZバッフ
ァへアクセスする場合には、ビット数変更手段により二
次元描画回路の座標演算における1画素あたりのビット
数をZバッファの奥行きデータに対応するビット数に変
更してアクセスする。これにより、共通の二次元描画回
路によって、フレームバッファに対する特定画像の描画
や転送と、Zバッファに対する特定領域の設定や転送を
高速に行うことができる。また、メモリ制御回路によっ
て、Zバッファをフレームバッファと同様の構成とする
ことにより、物理メモリ上に1画素あたりのビット数と
大きさの等しい2つのフレームバッファを設定し、ビッ
ト数変更手段によるビット数の変更を行うことなく各フ
レームバッファへの描画を交互に行うことにより、各フ
レームバッファをアニメーション用のダブルバッファと
して用いるようなシステムも構築可能である。
In the image drawing apparatus of the present invention, the memory control circuit appropriately sets each area of the frame buffer and the Z buffer on the same physical memory, and selectively accesses two buffer areas from the two-dimensional drawing circuit. When accessing the frame buffer from the two-dimensional drawing circuit, the number of bits per pixel in the coordinate calculation of the two-dimensional drawing circuit is changed to the number of bits corresponding to the drawing data of the frame buffer by the bit number changing means. to access. When the two-dimensional drawing circuit accesses the Z buffer, the number of bits per pixel in the coordinate calculation of the two-dimensional drawing circuit is changed to the number of bits corresponding to the depth data of the Z buffer by the bit number changing means. to access. Thereby, the drawing and transfer of the specific image to the frame buffer and the setting and transfer of the specific area to the Z buffer can be performed at high speed by the common two-dimensional drawing circuit. Further, by making the Z buffer have the same configuration as the frame buffer by the memory control circuit, two frame buffers having the same size as the number of bits per pixel are set on the physical memory, By alternately performing drawing in each frame buffer without changing the number, a system in which each frame buffer is used as a double buffer for animation can be constructed.

【0014】[0014]

【発明の実施の形態】以下、本発明による画像描画装置
の実施の形態例について説明する。図1は、本発明の第
1の形態例による画像描画装置の構成を示すブロック図
である。この画像描画装置は、画像表示を行うCRT2
10と、CRT210の表示用のフレームバッファ22
0および三次元描画用のZバッファ230を備えるバッ
ファメモリ240と、バッファメモリ240の所望の矩
形領域の描画および設定等を行う二次元描画回路200
と、バッファメモリ240に対する各バッファ領域の設
定とアクセスを制御するメモリ制御回路250と、Zバ
ッファ230に格納されたZ値データに基づいてフレー
ムバッファ220に三次元描画を行う三次元直線描画回
路260と、本画像描画装置の全体的な制御を行うプロ
セッサ270と、プロセッサ270の制御プログラムや
ワークエリアを提供するメインメモリ280とを有す
る。三次元直線描画回路260は、図13に示す三次元
直線描画回路18と同様に、図14に示した原理でフレ
ームバッファ220に三次元直線の描画を行うものであ
り、プロセッサ270は、三次元直線描画回路260に
上述したソースZ値を供給する。三次元直線描画回路2
60は、プロセッサ270からのソースZ値とZバッフ
ァ230に格納されているディスティネーションZ値と
を比較し、この比較結果に基づいて、フレームバッファ
220に三次元直線の描画を行う。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of an image drawing apparatus according to the present invention will be described below. FIG. 1 is a block diagram illustrating a configuration of an image drawing apparatus according to a first embodiment of the present invention. This image drawing device is a CRT 2 for displaying images.
10 and a frame buffer 22 for display on the CRT 210
A buffer memory 240 having a Z buffer 230 for zero and three-dimensional drawing, and a two-dimensional drawing circuit 200 for drawing and setting a desired rectangular area in the buffer memory 240
A memory control circuit 250 for controlling the setting and access of each buffer area to the buffer memory 240; and a three-dimensional linear drawing circuit 260 for performing three-dimensional drawing in the frame buffer 220 based on the Z value data stored in the Z buffer 230. And a main memory 280 that provides a control program and a work area for the processor 270 to control the entire image drawing apparatus. The three-dimensional line drawing circuit 260 draws a three-dimensional line in the frame buffer 220 based on the principle shown in FIG. 14 similarly to the three-dimensional line drawing circuit 18 shown in FIG. The above-mentioned source Z value is supplied to the straight line drawing circuit 260. 3D straight line drawing circuit 2
The 60 compares the source Z value from the processor 270 with the destination Z value stored in the Z buffer 230, and draws a three-dimensional straight line in the frame buffer 220 based on the comparison result.

【0015】本例の画像描画装置では、同一物理メモリ
であるバッファメモリ240上に、フレームバッファ2
20とZバッファ230を設け、メモリ制御回路250
により、二次元描画回路200が両方のバッファ22
0、230に自在にアクセスできるようにしたものであ
る。なお、本例において、フレームバッファ220は、
640×480ピクセル(画素)の大きさを有し、1ピ
クセルあたり8ビット、16ビットまたは32ビットの
色データを記憶するものである。上述のようにフレーム
バッファ220における1ピクセルあたりのビット数は
色データの階調度によって決定される。また、色データ
の階調度は、オペレータによるキーボード(図示せず)
等からの入力やアプリケーションソフトによって決定さ
れる。また、フレームバッファ220の先頭アドレス
は、3000000hであるものとする。なお、末尾の
hは、16進数であることを示している。
In the image drawing apparatus of this embodiment, the frame buffer 2 is stored in the buffer memory 240 which is the same physical memory.
20 and a Z buffer 230, and a memory control circuit 250
As a result, the two-dimensional drawing circuit 200
0 and 230 can be freely accessed. Note that, in this example, the frame buffer 220
It has a size of 640 × 480 pixels (pixels) and stores 8-bit, 16-bit or 32-bit color data per pixel. As described above, the number of bits per pixel in the frame buffer 220 is determined by the gradation of the color data. The gradation of the color data is determined by a keyboard (not shown) by an operator.
Is determined by an input from an application or the like or application software. It is also assumed that the start address of the frame buffer 220 is 300000h. Note that the h at the end indicates that it is a hexadecimal number.

【0016】また、Zバッファ230は、640×48
0ピクセルの大きさを有し、1ピクセルあたり16ビッ
トまたは32ビットのZ値により奥行きを表すようにな
っている。上述のようにZバッファ230における1ピ
クセルあたりのビット数は、Z値データによる奥行きの
解像度によって決定される。また、Z値データによる奥
行きの解像度は、オペレータによるキーボード等からの
入力やアプリケーションソフトによって決定される。ま
た、Zバッファ230の先頭アドレスは、3004B0
0hであるものとする。また、本例における二次元描画
回路200は、矩形領域の塗りつぶし処理を行う専用回
路として構成されている。そして、フレームバッファ2
20に対しては、所望の矩形領域を所望の色で塗りつぶ
す処理を行う。また、Zバッファ230に対しては所望
の矩形領域にZ値を設定して、例えば初期設定等の処理
を行うものである。
The Z buffer 230 is 640 × 48
It has a size of 0 pixels, and the depth is represented by a Z value of 16 bits or 32 bits per pixel. As described above, the number of bits per pixel in the Z buffer 230 is determined by the depth resolution based on the Z value data. Further, the depth resolution based on the Z value data is determined by an input from a keyboard or the like by an operator or application software. The head address of the Z buffer 230 is 3004B0
0h. Further, the two-dimensional drawing circuit 200 in the present example is configured as a dedicated circuit for performing a filling process of a rectangular area. And the frame buffer 2
For 20, a process of painting a desired rectangular area with a desired color is performed. The Z value is set in a desired rectangular area for the Z buffer 230, and processing such as initial setting is performed.

【0017】図2は、二次元描画回路200の構成を示
すブロック図である。図示のように、この二次元描画回
路200は、矩形領域の塗りつぶし処理を行うための各
種パラメータを設定するレジスタ部300と、このレジ
スタ部300に設定されたパラメータに基づいて、フレ
ームバッファ220およびZバッファ230に対するア
ドレス演算を行うメモリアドレス演算部330とを有す
る。レジスタ部300は、描画用ピクセルバイト数設定
レジスタ302と、描画用先頭アドレス設定レジスタ3
04と、始点設定レジスタ306と、幅・高さレジスタ
308と、描画モード設定レジスタ310と、開始設定
レジスタ312と、色設定レジスタ314とを有する。
このようなレジスタ部300に対する各パラメータの設
定は、オペレータによるキーボード等からの入力やアプ
リケーションソフトに基づいて、フレームバッファ22
0またはZバッファ230へのアクセスに先立ち、プロ
セッサ270によって行われる。プロセッサ270は、
フレームバッファ220への矩形描画時とZバッファ2
30への矩形描画時(Zデータ設定時)とで、描画用先
頭アドレスや描画用ピクセルバイト数を変更した設定を
行う。二次元描画回路200は、上述のようなレジスタ
部300への各パラメータの設定に基づいて、メモリア
ドレス演算部330において矩形領域の描画ピクセルの
アドレスを演算し、このアドレスをメモリ制御回路25
0に出力する。メモリ制御回路250は、メモリアドレ
ス演算部330からのアドレスに基づいて、フレームバ
ッファ220またはZバッファ230にアクセスし、色
設定レスジタ314に格納される色データまたはZ値デ
ータを書き込んでいく。この際、描画用先頭アドレス設
定レジスタ304に設定された描画用先頭アドレスに基
づいて、フレームバッファ220にアクセスするか、Z
バッファ230にアクセスするかが決定される。また、
描画用ピクセルバイト数設定レジスタ302に設定され
たバイト数によって、フレームバッファ220にアクセ
スする場合にはフレームバッファ220に対応したバイ
ト数によるデータの書き込みが行われ、Zバッファ23
0にアクセスする場合にはZバッファ230に対応した
バイト数によるデータの書き込みが行われる。また、始
点設定レジスタ306、幅・高さレジスタ308、描画
モード設定レジスタ310、および開始設定レジスタ3
12に設定される各パラメータの機能については、フレ
ームバッファ220にアクセスする場合とZバッファ2
30にアクセスする場合とで共通である。なお、メモリ
アドレス演算部330におけるアドレス演算は、例えば
メモリ制御回路250からの同期信号に基づいて、メモ
リ制御回路250におけるデータの書き込み動作に同期
しながら行われる。以下、二次元描画回路200の詳細
について説明する。
FIG. 2 is a block diagram showing the configuration of the two-dimensional drawing circuit 200. As illustrated, the two-dimensional drawing circuit 200 includes a register unit 300 for setting various parameters for performing a filling process of a rectangular area, and a frame buffer 220 and a Z buffer based on the parameters set in the register unit 300. A memory address operation unit 330 that performs an address operation on the buffer 230. The register unit 300 includes a drawing pixel byte number setting register 302 and a drawing head address setting register 3.
04, a start point setting register 306, a width / height register 308, a drawing mode setting register 310, a start setting register 312, and a color setting register 314.
The setting of each parameter in the register unit 300 is performed by the frame buffer 22 based on an input from a keyboard or the like by an operator or application software.
Prior to accessing the 0 or Z buffer 230, it is performed by the processor 270. Processor 270 includes:
When drawing a rectangle in the frame buffer 220 and the Z buffer 2
At the time of drawing a rectangle on the H.30 (when setting Z data), settings are made by changing the drawing start address and the drawing pixel byte number. The two-dimensional drawing circuit 200 calculates the address of the drawing pixel in the rectangular area in the memory address calculation unit 330 based on the setting of each parameter in the register unit 300 as described above, and stores this address in the memory control circuit 25.
Output to 0. The memory control circuit 250 accesses the frame buffer 220 or the Z buffer 230 based on the address from the memory address operation unit 330, and writes the color data or the Z value data stored in the color setting register 314. At this time, the frame buffer 220 is accessed based on the drawing start address set in the drawing start address setting register 304, or Z
It is determined whether to access the buffer 230. Also,
When accessing the frame buffer 220 based on the number of bytes set in the drawing pixel byte number setting register 302, data is written in the number of bytes corresponding to the frame buffer 220, and the Z buffer 23
When accessing 0, data is written in the number of bytes corresponding to the Z buffer 230. Also, a start point setting register 306, a width / height register 308, a drawing mode setting register 310, and a start setting register 3
The function of each parameter set in the buffer 12 is to access the frame buffer 220 or to the Z buffer 2.
This is common to the case where the user accesses the 30. The address calculation in the memory address calculation unit 330 is performed in synchronization with the data writing operation in the memory control circuit 250 based on, for example, a synchronization signal from the memory control circuit 250. Hereinafter, the details of the two-dimensional drawing circuit 200 will be described.

【0018】図3は、本例におけるレジスタ部300の
各設定レジスタに対するメモリアドレスとフォーマット
の関係の具体例を示す説明図である。本例のレジスタ部
300は32ビットの幅を有し、レジスタ部300の先
頭アドレスは2000000hであるものとする。描画
用ピクセルバイト数設定レジスタ302は、ビット数変
更手段を構成するものであり、アクセス対象のバッファ
220または230に対応して、矩形のアドレスを計算
する場合の1ピクセルあたりのビット数をバイト単位で
設定するレジスタであり、1ピクセルあたりのビット数
が8であれば0h、16であれば1h、32であれば2
hを設定する。
FIG. 3 is an explanatory diagram showing a specific example of a relationship between a memory address and a format for each setting register of the register section 300 in the present embodiment. It is assumed that the register section 300 of this example has a width of 32 bits, and the start address of the register section 300 is 200000h. The drawing pixel byte number setting register 302 constitutes a bit number changing unit, and corresponds to the buffer 220 or 230 to be accessed, and calculates the number of bits per pixel when calculating a rectangular address in byte units. This is a register set by 0. If the number of bits per pixel is 8, 0h, 16 if 1h, 32 if 2
Set h.

【0019】描画用先頭アドレス設定レジスタ304
は、アクセス対象のバッファ220または230に対応
して、描画する矩形を指定する座標系の原点(0,0)
のメモリアドレスを設定するものである。始点設定レジ
スタ306は、塗りつぶす矩形の左上の点のピクセル座
標を設定するレジスタであり、上位16ビットによって
Y座標、下位16ビットによってX座標を表すものとす
る。幅・高さレジスタ308は、塗りつぶす矩形の幅・
高さを表すデータを設定するものであり、上位16ビッ
トによって高さ、下位16ビットによって幅を表すもの
とする。なお、本例では、矩形の左上の点と矩形の幅・
高さとで矩形を指定したが、この代わりに、矩形の左上
の点と右下の点で矩形を指定しもよい。
Drawing start address setting register 304
Is the origin (0,0) of the coordinate system that specifies the rectangle to be drawn, corresponding to the buffer 220 or 230 to be accessed.
Is set. The start point setting register 306 is a register for setting the pixel coordinates of the upper left point of the rectangle to be filled, and the upper 16 bits represent the Y coordinate and the lower 16 bits represent the X coordinate. The width / height register 308 stores the width / width of the rectangle to be filled.
Data indicating the height is set. The upper 16 bits indicate the height, and the lower 16 bits indicate the width. In this example, the upper left point of the rectangle and the width of the rectangle
Although the rectangle is designated by the height, the rectangle may be designated by the upper left point and the lower right point of the rectangle instead.

【0020】描画モード設定レジスタ310は、直線描
画と短形描画を選択するためのレジスタであり、矩形塗
りつぶし時には1hを設定する。開始設定レジスタ31
2は、描画の開始を指示するためのレジスタであり、こ
のレジスタ312に1を設定することで、描画を起動す
る。色設定レジスタ314は、矩形を塗りつぶす色、ま
たは矩形のZ値を設定するレジスタであり、描画用ピク
セルバイト数設定レジスタ302の設定値に応じて、8
ビット(1バイト)なら、8ビットによる色データを設
定し、16ビット(2バイト)なら、16ビットによる
色データまたはZ値を設定し、32ビット(4バイト)
なら、32ビットによる色データまたはZ値を設定す
る。また、Zバッファ230のクリア時には、色設定レ
ジスタ314に0hをセットして、各点に0クリアデー
タを書き込む。Zバッファ230を用いた三次元描画で
は、Zバッファ230のクリアがしばしば必要となる
が、以上のような二次元描画回路200によって、矩形
をZバッファ230に書き込むことにより、Zバッファ
230のクリアが高速に行える。このクリアには大量な
メモリアクセスが必要となるため、二次元描画回路20
0を使用することで処理の高速化が実現できる。
The drawing mode setting register 310 is a register for selecting a straight line drawing or a rectangular drawing, and sets 1h when painting a rectangle. Start setting register 31
Reference numeral 2 denotes a register for instructing start of drawing, and drawing is activated by setting 1 to this register 312. The color setting register 314 is a register for setting a color for painting a rectangle or a Z value of the rectangle.
If it is a bit (1 byte), set color data by 8 bits. If it is 16 bits (2 bytes), set color data or Z value by 16 bits, and set 32 bits (4 bytes).
Then, color data or Z value by 32 bits is set. When clearing the Z buffer 230, 0h is set in the color setting register 314, and 0 clear data is written to each point. In the three-dimensional drawing using the Z buffer 230, it is often necessary to clear the Z buffer 230. By writing a rectangle into the Z buffer 230 by the two-dimensional drawing circuit 200 as described above, the Z buffer 230 can be cleared. Can be done at high speed. Since this clearing requires a large amount of memory access, the two-dimensional drawing circuit 20
By using 0, the processing can be speeded up.

【0021】図4(A)は、Zバッファ230の全領域
に対応する0hの矩形データにより、Zバッファ230
全体を0クリアした様子を示している。一方、図4
(B)に示すように、CRT210の画面に表示された
ウインドウを0クリアすることもできる。また、フレー
ムバッファ220とZバッファ230とで、1ピクセル
あたりのデータビット数(バイト数)が違う場合には、
矩形の始点・幅高さ情報から物理アドレスを計算するた
めの計算式を変えなければならないが、描画用ピクセル
バイト数設定レジスタ302を設けることで、フレーム
バッファ220上の塗りつぶしではフレームバッファ2
20の座標指定方法(x,y)で矩形を指定でき、Zバ
ッファ230上の塗りつぶしでは、Zバッファ230上
の座標系(x,y)で矩形を指定できる。すなわち、こ
のレジスタ302を用いることで、フレームバッファ2
20とZバッファ230のピクセルバイト数が異なって
いても、共通の二次元描画回路200を使用することが
できる。また、メモリアドレス演算部330は、以上の
ようなレジスタ部300の設定パラメータに基づいて、
描画する各ピクセルの1点1点のアドレスを算出してい
くものである。
FIG. 4A shows the Z buffer 230 based on rectangular data of 0h corresponding to the entire area of the Z buffer 230.
This shows a state in which the whole is cleared to zero. On the other hand, FIG.
As shown in (B), the window displayed on the screen of the CRT 210 can be cleared to zero. If the number of data bits (the number of bytes) per pixel is different between the frame buffer 220 and the Z buffer 230,
The calculation formula for calculating the physical address from the starting point / width / height information of the rectangle must be changed. However, by providing the drawing pixel byte number setting register 302, the frame buffer 220 can be painted over on the frame buffer 220.
A rectangle can be designated by the coordinate designation method (x, y) of No. 20 and the rectangle can be designated by the coordinate system (x, y) on the Z buffer 230 in the filling on the Z buffer 230. That is, by using this register 302, the frame buffer 2
A common two-dimensional drawing circuit 200 can be used even if the number of pixels of the Z buffer 230 differs from that of the Z buffer 230. In addition, the memory address calculation unit 330, based on the setting parameters of the register unit 300 as described above,
The address of each point of each pixel to be drawn is calculated.

【0022】図5は、フレームバッファ220とZバッ
ファ230の同じ矩形に対する色設定レジスタ314の
設定例を示す説明図である。図5(A)はフレームバッ
ファ220に対する描画データの例を示しており、色設
定レジスタ314には、塗りつぶす色を指定する「AL
PHA」「RED」「GREEN」「BLUE」のデー
タが設定されている。また、図5(B)はZバッファ2
30に対するZ値の例を示しており、Z値データとして
の「Z」が設定されている。また、始点設定レジスタ3
06と幅・高さレジスタ308には、同じ値が設定され
ている。
FIG. 5 is an explanatory diagram showing a setting example of the color setting register 314 for the same rectangle of the frame buffer 220 and the Z buffer 230. FIG. 5A shows an example of drawing data for the frame buffer 220. The color setting register 314 specifies "AL
Data of PHA, “RED”, “GREEN”, and “BLUE” are set. FIG. 5B shows the Z buffer 2.
The example of the Z value with respect to 30 is shown, and “Z” is set as the Z value data. Also, start point setting register 3
06 and the width / height register 308 are set to the same value.

【0023】図6は、図5(A)に示すレジスタの設定
によってフレームバッファ220に矩形領域を塗りつぶ
した様子と、図5(B)に示すレジスタの設定によって
Zバッファ230の矩領域にZ値を設定した様子を示し
ている。なお、図6において、レジスタ1.は描画用先頭
アドレス設定レジスタ304、レジスタ2.は描画用ピク
セルバイト数設定レジスタ302、レジスタ3.は始点設
定レジスタ306、レジスタ4.は幅・高さレジスタ30
8、レジスタ5.は色設定レジスタ314である。なお、
二次元描画回路200は、通常はフレームバッファ22
0によって表示データを格納する状態に保持しておき、
Zバッファ230への設定を行う場合にだけ、一時的に
Zバッファ230への設定用のデータに書き換え、Zバ
ッファ230への設定が終了した後、自動的にフレーム
バッファ220用のデータに書き換えるようにする。例
えば、Zバッファ230が1ピクセルあたり32ビット
で、フレームバッファ220が1ピクセルあたり32ビ
ット以外である場合に、二次元描画回路200の描画用
ピクセルバイト数設定レジスタ302を一時的に32ビ
ットに設定し、Zバッファ230への設定を行った後、
描画用ピクセルバイト数設定レジスタ302をフレーム
バッファ220に適合する値に変更しておく。
FIG. 6 shows a state in which a rectangular area is filled in the frame buffer 220 by setting the register shown in FIG. 5A, and a Z value is stored in the rectangular area of the Z buffer 230 by setting the register shown in FIG. Is set. 6, register 1 is a drawing start address setting register 304, register 2 is a drawing pixel byte number setting register 302, register 3 is a starting point setting register 306, and register 4 is a width / height register 30.
8, register 5. is a color setting register 314. In addition,
The two-dimensional drawing circuit 200 usually includes the frame buffer 22
The display data is stored in a state of storing by 0,
Only when the setting to the Z buffer 230 is performed, the data is temporarily rewritten to the data for setting the Z buffer 230, and after the setting to the Z buffer 230 is completed, the data is automatically rewritten to the data for the frame buffer 220. To For example, when the Z buffer 230 has 32 bits per pixel and the frame buffer 220 has other than 32 bits per pixel, the drawing pixel byte number setting register 302 of the two-dimensional drawing circuit 200 is temporarily set to 32 bits. After setting the Z buffer 230,
The drawing pixel byte number setting register 302 is changed to a value suitable for the frame buffer 220.

【0024】次に、本例におけるZバッファ230の全
領域をクリアする場合の手順について説明する。図7
は、このZバッファ230のクリア時の動作手順を示す
フローチャートである。まず、プロセッサ270より、
レジスタ部300の設定を行う。最初は描画モード設定
レジスタ310に、矩形塗りつぶしモードを指定する1
hを設定する(ステップS2)。次に、描画用先頭アド
レス設定レジスタ304に3004B00hに設定する
(ステップS4)。次に、描画用ピクセルバイト数設定
レジスタ302に32bpp=2hを設定する(ステッ
プS6)。なお、bppは1ピクセルあたりのビット数
(bitper pixel)を示している。次に、始
点設定レジスタ306に(0,0)=0hを設定する
(ステップS8)。次いで、幅・高さレジスタ308に
(幅640,高さ480)を設定する(ステップS1
0)。すなわち、ここではZバッファ230の全領域を
クリアするため、Zバッファ230の全領域を指定して
いる。さらに、色設定レジスタ314を0h(Z値=
0)に設定する(ステップS12)。そして、開始設定
レジスタ312に1hを設定する(ステップS14)こ
とにより、クリア処理が起動される。
Next, a procedure for clearing the entire area of the Z buffer 230 in this embodiment will be described. FIG.
Is a flowchart showing an operation procedure when the Z buffer 230 is cleared. First, from the processor 270,
The setting of the register unit 300 is performed. At first, the drawing mode setting register 310 specifies the rectangle filling mode 1
h is set (step S2). Next, 3004B00h is set in the drawing start address setting register 304 (step S4). Next, 32 bpp = 2h is set in the drawing pixel byte number setting register 302 (step S6). Note that bpp indicates the number of bits per pixel (bitper pixel). Next, (0, 0) = 0h is set in the start point setting register 306 (step S8). Next, (width 640, height 480) is set in the width / height register 308 (step S1).
0). That is, here, the entire area of the Z buffer 230 is designated in order to clear the entire area of the Z buffer 230. Further, the color setting register 314 is set to 0h (Z value =
0) (step S12). Then, by setting 1h in the start setting register 312 (step S14), the clearing process is started.

【0025】まず、クリア処理が起動されると、二次元
描画回路200のメモリアドレス演算部330で以下の
数式より描画点のアドレスを計算し、メモリ制御回路2
50に送る(ステップS16)。 描画点アドレス=先頭アドレス+X座標×描画用ピクセ
ルバイト数+Y座標×描画用ピクセルバイト数×1スキ
ャンラインのピクセル数 メモリ制御回路250は、二次元描画回路200から送
られてきた上記アドレス上に色設定レジスタ314の値
を書き込む(ステップS18)。そして、1回の書き込
みが終わると、二次元描画回路200のメモリアドレス
演算部330は、次の描画点を計算し(ステップS1
6)、描画用ピクセルバイト数を参考にして、アドレス
を1ピクセル分のバイト数だけ進ませて、次の描画点上
に色設定レジスタ314の値を書き込む(ステップS1
8)。また、矩形領域の右端まで描画したときは、(ス
キャンラインバイト数−矩形の幅バイト数)だけアドレ
スを進め、次のスキャンライン上の描画点の値を書き込
んでいく。以上のような動作を、矩形領域の全てのピク
セルについて実行されたか判定し(ステップS20)、
終了しない場合はステップS16に戻ってステップS1
6、S18の処理を実行する。このように、本例の画像
描画装置では、フレームバッファ220用の二次元描画
回路200を用いてZバッファ230のクリアや書き換
え等を行うことができ、安価な構成で、Zバッファ23
0の高速設定を実現できる。
First, when the clearing process is started, the address of the drawing point is calculated by the memory address calculation unit 330 of the two-dimensional drawing circuit 200 from the following formula, and the memory control circuit 2
50 (step S16). Drawing point address = head address + X coordinate × number of pixel bytes for drawing + Y coordinate × number of pixel bytes for drawing × number of pixels of one scan line The memory control circuit 250 sends a color on the address sent from the two-dimensional drawing circuit 200. The value of the setting register 314 is written (Step S18). When one writing operation is completed, the memory address calculation unit 330 of the two-dimensional drawing circuit 200 calculates the next drawing point (step S1).
6) With reference to the drawing pixel byte number, the address is advanced by one pixel byte number, and the value of the color setting register 314 is written on the next drawing point (step S1).
8). When drawing is performed to the right end of the rectangular area, the address is advanced by (the number of scan line bytes−the number of rectangular bytes), and the value of the drawing point on the next scan line is written. It is determined whether the above operation has been performed for all the pixels in the rectangular area (step S20).
If not, the process returns to step S16 and returns to step S1.
6. The processing of S18 is executed. As described above, in the image drawing apparatus of the present example, the Z buffer 230 can be cleared or rewritten using the two-dimensional drawing circuit 200 for the frame buffer 220, and the Z buffer
A high-speed setting of 0 can be realized.

【0026】次に、本発明の第2の形態例について説明
する。上述した例では、二次元描画回路200として矩
形塗りつぶし回路を採用した場合について説明したが、
本例では、同様の二次元描画回路200として矩形転送
回路を採用した場合について説明する。ウインドウ型の
OS(Operating System)では、アプ
リケーションウインドウの移動が頻繁に生じる。このた
め、Zバッファを使用したシステムでは、フレームバッ
ファ上のデータ移動だけではなく、そのウインドウの矩
形に対応するZバッファ上のデータの移動も必要にな
る。図8は、このようなウインドウのCRT画面上での
移動に伴って、フレームバッファ220の描画データと
Zバッファ230のZ値データとが移動する状態を示し
ている。この図において、(A)は、CRT画面上の左
右の三次元アプリレーションウインドウが右下に移動し
た場合を表わし、(B)は、フレームバッファ220上
で矩形領域の色値データが移動した場合を表わし、また
(C)は、Zバッファ230上で矩形領域のZ値データ
が移動した場合を表わしている。本例では、二次元描画
回路200を用いてZバッファ上の矩形データの移動を
高速に行うものである。
Next, a second embodiment of the present invention will be described. In the example described above, the case where a rectangular filling circuit is adopted as the two-dimensional drawing circuit 200 has been described.
In this example, a case where a rectangular transfer circuit is employed as the similar two-dimensional drawing circuit 200 will be described. In a window-type OS (Operating System), application windows frequently move. For this reason, in a system using a Z buffer, it is necessary to move not only data on the frame buffer but also data on the Z buffer corresponding to the rectangle of the window. FIG. 8 shows a state in which the drawing data in the frame buffer 220 and the Z value data in the Z buffer 230 move as the window moves on the CRT screen. In this figure, (A) shows the case where the left and right three-dimensional application windows on the CRT screen have moved to the lower right, and (B) shows the case where the color value data of the rectangular area has moved on the frame buffer 220. (C) shows the case where the Z value data of the rectangular area has moved on the Z buffer 230. In this example, the two-dimensional drawing circuit 200 is used to move the rectangular data on the Z buffer at high speed.

【0027】図9は、本例の二次元描画回路200の構
成を示すブロック図である。図示のように、この二次元
描画回路200は、図2に示す構成に対してレジスタ部
300の一部を変更したものである。すなわち、本例の
二次元描画回路200では、転送元の矩形始点アドレス
を格納する転送元矩形始点位置設定レジスタ320と、
転送先の矩形始点アドレスを格納する転送先矩形始点位
置設定レジスタ322とを有する。また、本例において
も、描画用ピクセルバイト数設定レジスタ302、描画
用先頭アドレス設定レジスタ304、幅・高さレジスタ
308、描画モード設定レジスタ310、開始設定レジ
スタ312および色設定レジスタ314が設けられてお
り、これらは上述の図2に示す例と同様の機能を有して
いる。
FIG. 9 is a block diagram showing the configuration of the two-dimensional drawing circuit 200 of this embodiment. As shown, the two-dimensional drawing circuit 200 is obtained by changing a part of the register section 300 in the configuration shown in FIG. That is, in the two-dimensional drawing circuit 200 of the present example, a transfer source rectangle start point position setting register 320 that stores a transfer source rectangle start address,
A destination rectangular start point position register 322 for storing a destination rectangular start address of the destination. Also in this example, a drawing pixel byte number setting register 302, a drawing head address setting register 304, a width / height register 308, a drawing mode setting register 310, a start setting register 312, and a color setting register 314 are provided. These have the same function as the example shown in FIG. 2 described above.

【0028】図10は、本例におけるレジスタ部300
の各設定レジスタに対するメモリアドレスとフォーマッ
トの関係の具体例を示す説明図である。転送元矩形始点
位置設定レジスタ320は、転送元矩形領域の左上の点
のピクセル座標を格納するものであり、上位16ビット
にY座標、下位16ビットにX座標を格納する。転送先
矩形始点位置設定レジスタ322は、転送先矩形領域の
左上の点のピクセル座標を格納するものであり、上位1
6ビットにY座標、下位16ビットにX座標を格納す
る。また、本例では、転送元矩形位置を(10,7
0)、転送矩形幅、高さを(210,50)、転送先矩
形位置を(130,200)として説明する。また、本
例の色設定レジスタ314は、転送元の矩形領域を転送
によってクリアした後の領域に設定するZ値を格納する
ものであり、本例では0hを格納するものとする。
FIG. 10 shows the register section 300 in this embodiment.
FIG. 4 is an explanatory diagram showing a specific example of a relationship between a memory address and a format for each setting register. The transfer source rectangle start position setting register 320 stores the pixel coordinates of the upper left point of the transfer source rectangular area, and stores the Y coordinate in the upper 16 bits and the X coordinate in the lower 16 bits. The transfer destination rectangle start point position register 322 stores the pixel coordinates of the upper left point of the transfer destination rectangular area.
The Y coordinate is stored in 6 bits, and the X coordinate is stored in the lower 16 bits. In this example, the transfer source rectangular position is set to (10, 7).
0), the transfer rectangle width and height are (210, 50), and the transfer destination rectangle position is (130, 200). Further, the color setting register 314 of this example stores a Z value to be set in an area after the transfer source rectangular area is cleared by transfer, and stores 0h in this example.

【0029】次に、本例におけるZバッファ230の矩
形領域を転送する場合の手順について説明する。図11
は、このZバッファ230の転送時の動作手順を示すフ
ローチャートである。まず、プロセッサ270より、レ
ジスタ部300の設定を行う。最初に描画モード設定レ
ジスタ310に、矩形転送モードを指定する2hを設定
する(ステップS32)。次に、描画用先頭アドレス設
定レジスタ304に3004B00hに設定する(ステ
ップS34)。次いで、描画用ピクセルバイト数設定レ
ジスタ302に32bpp=2hを設定する(ステップ
S36)。次に、転送元矩形始点位置設定レジスタ32
0に(10,70)を設定する(ステップS38)。次
いで、転送先矩形始点位置設定レジスタ322に(13
0,200)を設定する(ステップS40)。次に、幅
・高さレジスタ308に(幅210,高さ50)を設定
する(ステップS42)。さらに、色設定レジスタ31
4を0h(Z値=0)に設定する(ステップS44)。
そして、開始設定レジスタ312に1hを設定する(ス
テップS46)ことにより、クリア処理が起動される。
Next, a procedure for transferring a rectangular area of the Z buffer 230 in this embodiment will be described. FIG.
9 is a flowchart showing an operation procedure at the time of transfer of the Z buffer 230. First, the processor 270 sets the register section 300. First, 2h for designating the rectangular transfer mode is set in the drawing mode setting register 310 (step S32). Next, 3004B00h is set in the drawing start address setting register 304 (step S34). Next, 32 bpp = 2h is set in the drawing pixel byte number setting register 302 (step S36). Next, the transfer source rectangle start point position setting register 32
(10, 70) is set to 0 (step S38). Next, (13) is set in the transfer destination rectangle start point position register 322.
(0, 200) (step S40). Next, (width 210, height 50) is set in the width / height register 308 (step S42). Further, the color setting register 31
4 is set to 0h (Z value = 0) (step S44).
Then, by setting 1h in the start setting register 312 (step S46), the clearing process is started.

【0030】クリア処理が起動されると、まず、二次元
描画回路200のメモリアドレス演算部330で以下の
数式より転送元矩形領域における描画点のアドレスを計
算し、メモリ制御回路250に送る(ステップS4
8)。 描画点アドレス=先頭アドレス+X座標×描画用ピクセ
ルバイト数+Y座標×描画用ピクセルバイト数×1スキ
ャンラインのピクセル数 メモリ制御回路250は、二次元描画回路200から送
られてきたアドレスに対応するZバッファ230のZ値
を読み取って、図示しない転送用レジスタに格納する
(ステップS50)。そして、上記アドレス上に色設定
レジスタ314の値(0h)を書き込む(ステップS5
2)。次に、ステップS48で用いたのと同様の式によ
り、転送先矩形領域における描画点のアドレスを計算
し、メモリ制御回路250に送る(ステップS54)。
メモリ制御回路250は、二次元描画回路200から送
られてきたアドレス上に上述した転送用レジスタに格納
したZ値を書き込む(ステップS56)。そして、1回
の転送が終わると、ステップS48に戻って次の描画点
の転送を行う。以上のような動作を、矩形領域の全ての
ピクセルについて実行する(ステップS58)。このよ
うに、本例の画像描画装置では、フレームバッファ22
0用の二次元描画回路200を用いてZバッファ230
の矩形領域の転送を行うことができ、安価な構成で、Z
バッファ230の高速な書き換えを実現できる。
When the clearing process is started, first, the memory address calculating section 330 of the two-dimensional drawing circuit 200 calculates the address of the drawing point in the transfer source rectangular area from the following formula and sends it to the memory control circuit 250 (step). S4
8). Drawing point address = head address + X coordinate × number of pixel bytes for drawing + Y coordinate × number of pixel bytes for drawing × number of pixels of one scan line The memory control circuit 250 determines the Z corresponding to the address sent from the two-dimensional drawing circuit 200. The Z value of the buffer 230 is read and stored in a transfer register (not shown) (step S50). Then, the value (0h) of the color setting register 314 is written on the address (step S5).
2). Next, the address of the drawing point in the transfer destination rectangular area is calculated by the same formula as used in step S48, and is sent to the memory control circuit 250 (step S54).
The memory control circuit 250 writes the Z value stored in the transfer register on the address sent from the two-dimensional drawing circuit 200 (step S56). When one transfer is completed, the process returns to step S48 to transfer the next drawing point. The above operation is performed for all pixels in the rectangular area (step S58). As described above, in the image drawing device of the present embodiment, the frame buffer 22
0 using the two-dimensional drawing circuit 200 for the Z buffer 230
Transfer of a rectangular area of
High-speed rewriting of the buffer 230 can be realized.

【0031】次に、本発明の第3の形態例について説明
する。この実施の形態における画像描画装置では、Zバ
ッファ230をフレームバッファ220と同じ大きさ
で、1ピクセルあたりのビット数を共通とすることによ
り、フレームバッファを2枚もったダブルバッファシス
テムを構築する。このダブルバッファシステムは、アニ
メーションで使用される表示システムであり、一方のフ
レームバッファに格納したアニメーションの1つの画面
(コマ)の表示中に、次に表示される画面(コマ)を他
方のフレームバッファに描画し、各フレームバッファを
ハードウェアで切り換えることにより、アニメーション
を高速化し、描画作業時の画面の乱れを防ぐようにした
システムである。上述した画像描画装置では、描画用先
頭アドレス設定レジスタ304の機能によって、バッフ
ァメモリ240上に2枚のフレームバッファを構成する
とともに、メモリ制御回路250によって、各フレーム
バッファを交互に選択してアニメーション描画を行い、
これと同期して、CRT210の画面に表示する各フレ
ームバッファを交互に切り換えることにより、ダブルバ
ッファシステムとして機能できる。
Next, a third embodiment of the present invention will be described. In the image drawing apparatus of this embodiment, a double buffer system having two frame buffers is constructed by using the same size of the Z buffer 230 as the frame buffer 220 and using the same number of bits per pixel. This double-buffer system is a display system used in animation, in which one screen (frame) of an animation stored in one frame buffer is displayed while the next screen (frame) is displayed in the other frame buffer. In this system, animation is accelerated by switching each frame buffer by hardware, and the screen is prevented from being disturbed during the drawing operation. In the above-described image drawing apparatus, two frame buffers are configured on the buffer memory 240 by the function of the drawing start address setting register 304, and each frame buffer is alternately selected by the memory control circuit 250 to perform animation drawing. Do
In synchronization with this, by alternately switching each frame buffer displayed on the screen of the CRT 210, it is possible to function as a double buffer system.

【0032】このようなダブルバッファシステムの機能
を、上述した三次元画像の描画機能やウインドウ表示シ
ステムと組み合わせることにより、バッファメモリ24
0を各種の用途に幅広く応用することができ、特にマル
チメディア対応型の有益な装置を提供できる。また、以
上の各例では、二次元矩形を描画したり転送する二次元
描画回路を設けた場合について説明したが、本発明は、
二次元直線を描画する二次元描画回路を設けた場合にも
同様に適用し得るものである。
By combining the function of such a double buffer system with the above-described three-dimensional image drawing function and window display system, the buffer memory 24
0 can be widely applied to various uses, and particularly useful multimedia-compatible devices can be provided. Further, in each of the above examples, a case has been described in which a two-dimensional drawing circuit that draws or transfers a two-dimensional rectangle is provided.
The present invention can be similarly applied to a case where a two-dimensional drawing circuit for drawing a two-dimensional straight line is provided.

【0033】[0033]

【発明の効果】以上説明したように本発明の画像描画装
置では、フレームバッファおよびZバッファの各領域を
同一物理メモリ上に設定するとともに、二次元描画回路
の座標演算における1画素あたりのビット数を変更する
ことにより、フレームバッファへの描画とZバッファへ
の奥行きデータの設定とを二次元描画回路の座標演算に
よって選択的に行えるようにした。これにより、フレー
ムバッファ用の二次元描画回路をZバッファ用の設定回
路に流用でき、Zバッファの専用の設定回路を設けるこ
となく、Zバッファへの奥行きデータの設定を高速化す
ることができるので、Zバッファの高速設定処理とコス
ト低減とを両立することができる。
As described above, in the image drawing apparatus of the present invention, each area of the frame buffer and the Z buffer is set on the same physical memory, and the number of bits per pixel in the coordinate calculation of the two-dimensional drawing circuit is set. Is changed, the drawing in the frame buffer and the setting of the depth data in the Z buffer can be selectively performed by the coordinate calculation of the two-dimensional drawing circuit. As a result, the two-dimensional drawing circuit for the frame buffer can be used as the setting circuit for the Z buffer, and the setting of depth data in the Z buffer can be speeded up without providing a dedicated setting circuit for the Z buffer. , Z-buffer high-speed setting processing and cost reduction.

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

【図1】本発明の第1の形態例による画像描画装置の構
成を示すブロック図である。
FIG. 1 is a block diagram illustrating a configuration of an image drawing apparatus according to a first embodiment of the present invention.

【図2】図1に示す画像描画装置に設けられる二次元描
画回路の構成を示すブロック図である。
FIG. 2 is a block diagram showing a configuration of a two-dimensional drawing circuit provided in the image drawing apparatus shown in FIG.

【図3】図2に示す二次元描画回路に設けられるレジス
タ部の具体例を示す説明図である。
FIG. 3 is an explanatory diagram showing a specific example of a register unit provided in the two-dimensional drawing circuit shown in FIG. 2;

【図4】図1に示す画像描画装置においてZバッファの
矩形領域をクリアする様子を示す説明図である。
FIG. 4 is an explanatory diagram showing a manner of clearing a rectangular area of a Z buffer in the image drawing apparatus shown in FIG. 1;

【図5】図1に示す画像描画装置においてフレームバッ
ファとZバッファの同じ矩形に対する色設定レジスタの
設定例を示す説明図である。
5 is an explanatory diagram showing a setting example of a color setting register for the same rectangle of a frame buffer and a Z buffer in the image drawing apparatus shown in FIG. 1;

【図6】図5に示すレジスタの設定によってフレームバ
ッファに矩形領域を塗りつぶした様子と、Zバッファの
矩領域にZ値を設定した様子を示す説明図である。
6 is an explanatory diagram showing a state in which a rectangular area is filled in a frame buffer by setting a register shown in FIG. 5, and a state in which a Z value is set in a rectangular area of a Z buffer.

【図7】図1に示す画像描画装置においてZバッファを
クリアする場合の動作を示すフローチャートである。
FIG. 7 is a flowchart showing an operation when the Z buffer is cleared in the image drawing apparatus shown in FIG. 1;

【図8】ウインドウ表示システムにおいて、ウインドウ
のCRT画面上での移動に伴って、フレームバッファの
描画データとZバッファのZ値データとが移動する状態
を示す説明図である。
FIG. 8 is an explanatory diagram showing a state in which the drawing data in the frame buffer and the Z value data in the Z buffer move as the window moves on the CRT screen in the window display system.

【図9】本発明の第2の形態例による画像描画装置の二
次元描画回路の構成を示すブロック図である。
FIG. 9 is a block diagram showing a configuration of a two-dimensional drawing circuit of an image drawing device according to a second embodiment of the present invention.

【図10】図9に示す二次元描画回路に設けられるレジ
スタ部の具体例を示す説明図である。
FIG. 10 is an explanatory diagram showing a specific example of a register unit provided in the two-dimensional drawing circuit shown in FIG. 9;

【図11】図1に示す画像描画装置においてZバッファ
の矩形領域の転送動作を示すフローチャートである。
11 is a flowchart showing a transfer operation of a rectangular area of a Z buffer in the image drawing apparatus shown in FIG. 1;

【図12】従来の画像描画装置の構成例を示すブロック
図である。
FIG. 12 is a block diagram illustrating a configuration example of a conventional image drawing apparatus.

【図13】図12に示す画像描画装置における三次元直
線描画回路の構成を示すブロック図である。
13 is a block diagram showing a configuration of a three-dimensional straight line drawing circuit in the image drawing device shown in FIG.

【図14】図13に示す三次元直線描画回路を用いて任
意のベクトル(直線)を描画する場合のZ値の演算処理
を説明する説明図である。
FIG. 14 is an explanatory diagram illustrating a calculation process of a Z value when an arbitrary vector (straight line) is drawn using the three-dimensional straight line drawing circuit illustrated in FIG. 13;

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

200……二次元描画回路、210……CRT、220
……フレームバッファ、230……Zバッファ、240
……バッファメモリ、250……メモリ制御回路、26
0……三次元直線描画回路、270……プロセッサ、2
80……メインメモリ、300……レジスタ部、302
……描画用ピクセルバイト数設定レジスタ、304……
描画用先頭アドレス設定レジスタ、306……始点設定
レジスタ、308……幅・高さレジスタ、310……描
画モード設定レジスタ、312……開始設定レジスタ、
314……色設定レジスタ、320……転送元矩形始点
位置設定レジスタ、322……転送先矩形始点位置設定
レジスタ、330……メモリアドレス演算部。
200: two-dimensional drawing circuit, 210: CRT, 220
…… Frame buffer, 230 …… Z buffer, 240
...... Buffer memory, 250 ... Memory control circuit, 26
0: three-dimensional line drawing circuit, 270: processor, 2
80: main memory, 300: register unit, 302
…… Drawing pixel byte number setting register, 304…
Drawing start address setting register, 306... Start point setting register, 308... Width / height register, 310... Drawing mode setting register, 312.
314: a color setting register, 320: a transfer source rectangular start point position setting register, 322, a transfer destination rectangular start point position register, 330: a memory address calculation unit.

Claims (10)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 表示装置の表示画面に対応する表示用
データを格納するフレームバッファと、 前記フレームバッファに特定の二次元画像を描画するた
めの座標演算を行う二次元描画回路と、 前記フレームバッファに対して三次元描画を行うための
奥行きデータを格納するZバッファと、 前記Zバッファに格納された奥行きデータに基づいて前
記フレームバッファに三次元描画を行う三次元直線描画
回路とを有する画像描画装置において、 前記フレームバッファおよびZバッファの各領域を同一
物理メモリ上に設定するとともに、各バッファへのアク
セスを制御するメモリ制御回路と、 前記二次元描画回路の座標演算における1画素あたりの
ビット数を前記フレームバッファの描画データに対応す
るビット数または前記Zバッファの奥行きデータに対応
するビット数に変更するビット数変更手段とを設け、 前記二次元描画回路の座標演算における1画素あたりの
ビット数を前記ビット数変更手段で変更することによ
り、前記フレームバッファへの描画と前記Zバッファへ
の奥行きデータの設定とを前記二次元描画回路の座標演
算によって選択的に行うようにした、 ことを特徴とする画像描画装置。
A frame buffer for storing display data corresponding to a display screen of a display device; a two-dimensional drawing circuit for performing a coordinate calculation for drawing a specific two-dimensional image in the frame buffer; Image drawing comprising: a Z-buffer for storing depth data for performing three-dimensional drawing on the image data; and a three-dimensional line drawing circuit for performing three-dimensional drawing in the frame buffer based on the depth data stored in the Z buffer. In the apparatus, a memory control circuit for setting each area of the frame buffer and the Z buffer on the same physical memory and controlling access to each buffer; and a number of bits per pixel in a coordinate calculation of the two-dimensional drawing circuit. Is the number of bits corresponding to the drawing data of the frame buffer or the depth data of the Z buffer. Bit number changing means for changing the number of bits corresponding to the number of bits in the frame buffer by changing the number of bits per pixel in the coordinate calculation of the two-dimensional drawing circuit by the bit number changing means. And setting of depth data in the Z buffer is selectively performed by coordinate calculation of the two-dimensional drawing circuit.
【請求項2】 前記ビット数変更手段は、1画素あた
りのビット数をバイト単位で変更するものである請求項
1記載の画像描画装置。
2. The image drawing apparatus according to claim 1, wherein said bit number changing means changes the number of bits per pixel in byte units.
【請求項3】 前記ビット数変更手段は、前記二次元
描画回路内に設けた1画素あたりのビット数を設定する
ビット数設定部に前記フレームバッファまたは前記Zバ
ッファに対応するビット数を設定するように構成される
請求項1記載の画像描画装置。
3. The bit number changing unit sets a bit number corresponding to the frame buffer or the Z buffer in a bit number setting unit provided in the two-dimensional drawing circuit and configured to set a bit number per pixel. The image drawing apparatus according to claim 1, configured as described above.
【請求項4】 前記二次元描画回路は、特定図形の描
画領域を設定する領域設定部を有し、 前記領域設定部に設定する描画領域のアドレスに基づい
て、前記フレームバッファまたは前記Zバッファに選択
的にアクセスするようにした請求項1記載の画像描画装
置。
4. The two-dimensional drawing circuit has a region setting unit for setting a drawing region of a specific figure, and stores the drawing buffer in the frame buffer or the Z buffer based on an address of a drawing region set in the region setting unit. 2. The image drawing device according to claim 1, wherein the image drawing device is selectively accessed.
【請求項5】 前記二次元描画回路は、1画素あたり
のビット数を設定するビット数設定部、前記特定図形内
に書き込むデータを設定するデータ設定部とを有し、 前記フレームバッファへの描画時には、前記ビット数設
定部に前記フレームバッファに対応するビット数を格納
するとともに、前記データ設定部に色データを格納し、 前記Zバッファへの設定時には、前記ビット数設定部に
前記Zバッファに対応するビット数を格納するととも
に、前記データ設定部に奥行きデータを格納するように
した請求項1記載の画像描画装置。
5. The two-dimensional drawing circuit has a bit number setting unit for setting the number of bits per pixel, and a data setting unit for setting data to be written in the specific graphic, and draws the image on the frame buffer. Sometimes, the number of bits corresponding to the frame buffer is stored in the number of bits setting unit, and the color data is stored in the data setting unit. When the number of bits is set in the Z buffer, the number of bits is set in the Z buffer. 2. The image drawing apparatus according to claim 1, wherein a corresponding bit number is stored, and depth data is stored in the data setting unit.
【請求項6】 前記二次元描画回路は、二次元直線を
描画する回路である請求項1記載の画像描画装置。
6. The image drawing apparatus according to claim 1, wherein the two-dimensional drawing circuit is a circuit for drawing a two-dimensional straight line.
【請求項7】 前記二次元描画回路は、二次元矩形領
域を塗りつぶす回路である請求項1記載の画像描画装
置。
7. The image drawing apparatus according to claim 1, wherein the two-dimensional drawing circuit is a circuit for painting a two-dimensional rectangular area.
【請求項8】 前記二次元描画回路は、二次元矩形画
像を他の位置を転送する回路である請求項1記載の画像
描画装置。
8. The image drawing apparatus according to claim 1, wherein the two-dimensional drawing circuit is a circuit for transferring a two-dimensional rectangular image to another position.
【請求項9】 前記三次元直線描画回路は、入力され
た三次元直線上の各点における奥行きデータと、前記Z
バッファに予め格納されている奥行きデータとを比較
し、奥行きの小さい方のデータを選択して前記フレーム
バッファ上のデータを書き換える処理を行う請求項1記
載の画像描画装置。
9. The three-dimensional straight line drawing circuit, wherein the depth data at each point on the input three-dimensional straight line,
2. The image drawing apparatus according to claim 1, wherein a process of comparing the depth data stored in the buffer in advance and selecting data having a smaller depth to rewrite the data in the frame buffer is performed.
【請求項10】 前記物理メモリ上に、1画素あたり
のビット数と大きさの等しい2つのフレームバッファを
設定し、前記ビット数変更手段によるビット数の変更を
行うことなく前記各フレームバッファへの描画を交互に
行うことにより、前記各フレームバッファをアニメーシ
ョン用のダブルバッファとして用いるようにした請求項
1記載の画像描画装置。
10. Two frame buffers having the same size as the number of bits per pixel are set on the physical memory, and the number of bits for each frame buffer is changed without changing the number of bits by the bit number changing means. 2. The image drawing apparatus according to claim 1, wherein each frame buffer is used as a double buffer for animation by performing drawing alternately.
JP9247073A 1997-09-11 1997-09-11 Image drawing device Expired - Fee Related JP2976945B2 (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP9247073A JP2976945B2 (en) 1997-09-11 1997-09-11 Image drawing device
TW087112010A TW407306B (en) 1997-09-11 1998-07-22 CCD solid state imaging device having double-structured charge transfer electrodes
TW087115049A TW389857B (en) 1997-09-11 1998-09-09 Image drawing apparatus
US09/150,252 US6275241B1 (en) 1997-09-11 1998-09-10 High speed image drawing apparatus for displaying three dimensional images
KR1019980037476A KR100281949B1 (en) 1997-09-11 1998-09-11 Video drawing device
EP98307388A EP0902413A3 (en) 1997-09-11 1998-09-11 Image drawing apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9247073A JP2976945B2 (en) 1997-09-11 1997-09-11 Image drawing device

Publications (2)

Publication Number Publication Date
JPH1186029A JPH1186029A (en) 1999-03-30
JP2976945B2 true JP2976945B2 (en) 1999-11-10

Family

ID=17158036

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9247073A Expired - Fee Related JP2976945B2 (en) 1997-09-11 1997-09-11 Image drawing device

Country Status (5)

Country Link
US (1) US6275241B1 (en)
EP (1) EP0902413A3 (en)
JP (1) JP2976945B2 (en)
KR (1) KR100281949B1 (en)
TW (2) TW407306B (en)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2352380B (en) * 1999-03-01 2003-04-09 Canon Kk Memory Control
US6452600B1 (en) * 1999-10-28 2002-09-17 Nintendo Co., Ltd. Graphics system interface
JP4519290B2 (en) * 2000-08-04 2010-08-04 株式会社バンダイナムコゲームス GAME DEVICE, IMAGE GENERATION METHOD, AND RECORDING MEDIUM
JP2004145456A (en) * 2002-10-22 2004-05-20 Canon Inc Information output device
FR2864318B1 (en) * 2003-12-23 2007-03-16 Alexis Vartanian DEVICE FOR ORGANIZING DATA IN THE FRAME MEMORY OF A GRAPHIC PROCESSOR
US7382368B1 (en) * 2004-06-28 2008-06-03 Nvidia Corporation Planar z representation for z compression
US20060012602A1 (en) * 2004-07-15 2006-01-19 George Lyons System and method for efficiently performing automatic partial transfers of image data
US20060017737A1 (en) * 2004-07-22 2006-01-26 Juraj Bystricky System and method for efficiently performing automatic frame transfers of image data
US20060017738A1 (en) * 2004-07-23 2006-01-26 Juraj Bystricky System and method for detecting memory writes to initiate image data transfers
US20060028477A1 (en) * 2004-08-06 2006-02-09 Juraj Bystricky System and method for efficiently performing manual partial transfers of image data
JP4692956B2 (en) * 2004-11-22 2011-06-01 株式会社ソニー・コンピュータエンタテインメント Drawing processing apparatus and drawing processing method
US7804499B1 (en) 2006-08-28 2010-09-28 Nvidia Corporation Variable performance rasterization with constant effort
US7898553B2 (en) * 2006-10-19 2011-03-01 Delorme Publishing Co. Pick packet for web browser display
JP2009171994A (en) * 2008-01-21 2009-08-06 Sammy Corp Image generating apparatus, game machine and program
CN108182656B (en) * 2017-12-28 2021-04-30 深圳市创梦天地科技有限公司 Image processing method and terminal

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5029105A (en) * 1987-08-18 1991-07-02 Hewlett-Packard Programmable pipeline for formatting RGB pixel data into fields of selected size
CA1316271C (en) * 1988-10-07 1993-04-13 William Joy Apparatus for rapidly clearing the output display of a computer system
US5621866A (en) * 1992-07-24 1997-04-15 Fujitsu Limited Image processing apparatus having improved frame buffer with Z buffer and SAM port
JPH0689090A (en) 1992-09-09 1994-03-29 Fujitsu Ltd Three-dimensional graphics display device
US5497453A (en) * 1993-01-05 1996-03-05 International Business Machines Corporation Method and apparatus for detecting and visualizing interferences between solids
KR100243179B1 (en) * 1994-06-30 2000-02-01 윤종용 Method and apparatus for processing signal of graphic system
JPH08129647A (en) * 1994-10-28 1996-05-21 Yamaha Corp Graphics device
JPH08221593A (en) * 1995-02-14 1996-08-30 Hitachi Ltd Graphic display device
US5748946A (en) * 1995-02-17 1998-05-05 International Business Machines Corporation Method and apparatus for improved graphics picking using auxiliary buffer information
US6052129A (en) * 1997-10-01 2000-04-18 International Business Machines Corporation Method and apparatus for deferred clipping of polygons
US6078336A (en) * 1998-05-12 2000-06-20 Hewlett-Packard Company Graphics memory system that utilizes look-ahead paging for reducing paging overhead

Also Published As

Publication number Publication date
US6275241B1 (en) 2001-08-14
EP0902413A3 (en) 2000-06-28
EP0902413A2 (en) 1999-03-17
KR19990029709A (en) 1999-04-26
TW407306B (en) 2000-10-01
KR100281949B1 (en) 2001-03-02
TW389857B (en) 2000-05-11
JPH1186029A (en) 1999-03-30

Similar Documents

Publication Publication Date Title
US5295235A (en) Polygon engine for updating computer graphic display employing compressed bit map data
JP2976945B2 (en) Image drawing device
US5524197A (en) Workstation for displaying dynamic image with real-time special effects
JP3262508B2 (en) Graphics display subsystem and method
US4924415A (en) Apparatus for modifying data stored in a random access memory
JP2618101B2 (en) Image layout processing method
JPH0695273B2 (en) Display control device
JP4707782B2 (en) Image processing apparatus and method
JPH03138783A (en) Hidden-surface eliminating circuit
JP3547250B2 (en) Drawing method
JPH01131976A (en) Device and method for texture mapping
US5777631A (en) Method and apparatus for displaying a video window in a computer graphics display
JPH05249953A (en) Image display device
JPH06223199A (en) Image composing device
JP2002258827A (en) Image display device
JPH10187124A (en) Plotting device and plotting method
JP3324580B2 (en) Image processing device
JP3400175B2 (en) Display device
JPH0588838A (en) Multi window display device
JPH0350686A (en) Graphic processing system
JP2980079B2 (en) Three-dimensional image processing apparatus and method
JP4372924B2 (en) Moving image material generation method and apparatus
JP3311905B2 (en) Image processing device
JP3264941B2 (en) Image display control method and apparatus
JP2619087B2 (en) Bitmap display control device

Legal Events

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19990810

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080910

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080910

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090910

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090910

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100910

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100910

Year of fee payment: 11

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100910

Year of fee payment: 11

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110910

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110910

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120910

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120910

Year of fee payment: 13

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130910

Year of fee payment: 14

LAPS Cancellation because of no payment of annual fees